부대 번호를 부대장 ID로 변경
This commit is contained in:
@@ -74,8 +74,8 @@ class che_집합 extends Command\GeneralCommand{
|
||||
$cityName = $this->city['name'];
|
||||
$josaRo = JosaUtil::pick($cityName, '로');
|
||||
|
||||
$troopID = $general->getVar('troop');
|
||||
$troopName = $db->queryFirstField('SELECT name FROM troop WHERE troop = %i', $troopID);
|
||||
$troopID = $general->getID();
|
||||
$troopName = $db->queryFirstField('SELECT name FROM troop WHERE troop_leader = %i', $troopID);
|
||||
|
||||
$logger = $general->getLogger();
|
||||
|
||||
@@ -88,7 +88,6 @@ class che_집합 extends Command\GeneralCommand{
|
||||
], 'no IN %li', $generalList);
|
||||
}
|
||||
foreach($generalList as $targetGeneralID){
|
||||
$targetGeneral = General::createGeneralObjFromDB($targetGeneralID, [], 1);
|
||||
$targetLogger = new ActionLogger($targetGeneralID, $general->getNationID(), $env['year'], $env['month']);
|
||||
$targetLogger->pushGeneralActionLog("{$troopName}의 부대원들은 <G><b>{$cityName}</b></>{$josaRo} 집합되었습니다.", ActionLogger::PLAIN);
|
||||
$targetLogger->flush();
|
||||
|
||||
@@ -24,11 +24,7 @@ class MustBeTroopLeader extends Constraint{
|
||||
$this->checkInputValues();
|
||||
$this->tested = true;
|
||||
|
||||
//XXX: 부대장인지 알 수가 없음
|
||||
$db = DB::db();
|
||||
$troopLeader = $db->queryFirstField('SELECT no FROM troop WHERE troop = %i', $this->general['troop']);
|
||||
|
||||
if($troopLeader == $this->general['no']){
|
||||
if($this->general['no'] == $this->general['troop']){
|
||||
return true;
|
||||
}
|
||||
|
||||
|
||||
@@ -25,7 +25,7 @@ class ReqTroopMembers extends Constraint{
|
||||
|
||||
$db = DB::db();
|
||||
//NOTE:이 경우에 DB를 사용하지 않을 수 있는가?
|
||||
$troopMember = $db->queryFirstField('SELECT no FROM troop WHERE troop = %i AND no != %i LIMIT 1', $this->general['troop'], $this->general['no']);
|
||||
$troopMember = $db->queryFirstField('SELECT no FROM general WHERE troop = %i AND no != %i LIMIT 1', $this->general['troop'], $this->general['troop']);
|
||||
|
||||
if($troopMember !== null){
|
||||
return true;
|
||||
|
||||
@@ -92,13 +92,7 @@ class Personnel{
|
||||
return [$result, $reason];
|
||||
}
|
||||
|
||||
$isTroopLeader = false;
|
||||
if($general['troop']){
|
||||
$troopLeader = $db->queryFirstField('SELECT `no` FROM troop WHERE troop = %i', $general['troop']);
|
||||
if($troopLeader == $generalID){
|
||||
$isTroopLeader = true;
|
||||
}
|
||||
}
|
||||
$isTroopLeader = ($generalID == $general['troop']);
|
||||
|
||||
$joinedNations = Json::decode($general['nations']);
|
||||
$joinedNations[] = $this->nation['nation'];
|
||||
@@ -183,9 +177,9 @@ class Personnel{
|
||||
// 모두 탈퇴
|
||||
$db->update('general', [
|
||||
'troop'=>0,
|
||||
], 'troop=%i', $general['troop']);
|
||||
], 'troop_leader=%i', $generalID);
|
||||
// 부대 삭제
|
||||
$db->delete('troop', 'troop=%i', $general['troop']);
|
||||
$db->delete('troop', 'troop_leader=%i', $generalID);
|
||||
}
|
||||
|
||||
return [ScoutMessage::ACCEPTED, ''];
|
||||
|
||||
@@ -265,17 +265,15 @@ class General implements iAction{
|
||||
], 'gen3=%i', $generalID);
|
||||
|
||||
// 부대 처리
|
||||
$troopID = $this->getVar('troop');
|
||||
$troopLeaderID = $db->queryFirstField('SELECT `no` FROM troop WHERE troop=%i', $troopID);
|
||||
$troopLeaderID = $this->getVar('troop');
|
||||
if($troopLeaderID == $generalID){
|
||||
//부대장일 경우
|
||||
// 모두 탈퇴
|
||||
$db->update('general', [
|
||||
'troop'=>0
|
||||
], 'troop=%i', $troopID);
|
||||
|
||||
], 'troop_leader=%i', $troopLeaderID);
|
||||
// 부대 삭제
|
||||
$db->delete('troop', 'troop=%i', $troopID);
|
||||
$db->delete('troop', 'troop_leader=%i', $troopLeaderID);
|
||||
}
|
||||
|
||||
$dyingMessage = new TextDecoration\DyingMessage($this->getName(), $this->getVar('npc'));
|
||||
|
||||
Reference in New Issue
Block a user