부대 번호를 부대장 ID로 변경

This commit is contained in:
2019-04-28 20:50:25 +09:00
parent e21fbaff83
commit 6423c22cf8
12 changed files with 49 additions and 77 deletions
+2 -3
View File
@@ -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();
+1 -5
View File
@@ -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;
}
+1 -1
View File
@@ -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;
+3 -9
View File
@@ -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, ''];
+3 -5
View File
@@ -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'));