디버그 코드 추가, 버그 수정

This commit is contained in:
2020-04-20 03:08:08 +09:00
parent 7b46a1b9ff
commit 6526653540
5 changed files with 34 additions and 10 deletions
+3
View File
@@ -186,6 +186,9 @@ foreach($db->query(
}
foreach($db->queryAllLists('SELECT general_id, `type`, `value` FROM rank_data') as [$generalID, $typeKey, $value]){
if(!key_exists($generalID, $generals)){
continue;
}
$generals[$generalID][$typeKey] = $value;
}
+5 -5
View File
@@ -36,14 +36,14 @@ if(!$availableDieImmediately){
}
if(!$db->query('DELETE FROM general WHERE owner=%i AND npc=0', $userID)){
$generalObj = General::createGeneralObjFromDB($general['no']);
if($generalObj instanceof DummyGeneral){
trigger_error("올바르지 않은 삭제 프로세스 $userID", E_USER_WARNING);
}
$generalName = $general['name'];
$generalName = $generalObj->getName();
$josaYi = JosaUtil::pick($generalName, '이');
pushGeneralPublicRecord(["<C>●</>{$gameStor->month}월:<Y>{$generalName}</>{$josaYi} 이 홀연히 모습을 <R>감추었습니다</>"], $gameStor->year, $gameStor->month);
$generalObj->kill($db, true, "<Y>{$generalName}</>{$josaYi} 이 홀연히 모습을 <R>감추었습니다</>");
$session->logoutGame();
header('location:..');
+14 -3
View File
@@ -509,7 +509,7 @@ class General implements iAction{
/**
* @param \MeekroDB $db
*/
function kill($db){
function kill($db, bool $sendDyingMessage=true, ?string $dyingMessage=null){
$generalID = $this->getID();
$logger = $this->getLogger();
@@ -533,11 +533,22 @@ class General implements iAction{
$db->delete('troop', 'troop_leader=%i', $troopLeaderID);
}
$dyingMessage = new TextDecoration\DyingMessage($this);
$logger->pushGlobalActionLog($dyingMessage->getText());
if($sendDyingMessage){
if($dyingMessage){
$logger->pushGlobalActionLog($dyingMessage);
}
else{
$dyingMessageObj = new TextDecoration\DyingMessage($this);
$logger->pushGlobalActionLog($dyingMessageObj->getText());
}
$logger->flush();
}
$db->delete('general', 'no=%i', $generalID);
$db->delete('general_turn', 'general_id=%i', $generalID);
$db->delete('rank_data', 'general_id=%i', $generalID);
$this->updatedVar = [];
$db->update('nation', [
+11 -2
View File
@@ -2932,6 +2932,7 @@ class GeneralAI
}
if(!($reservedCommand instanceof Command\Nation\휴식) && $reservedCommand->isRunnable()){
$reservedCommand->reason = 'reserved';
return $reservedCommand;
}
@@ -2945,10 +2946,13 @@ class GeneralAI
/** @var ?NationCommand */
$result = $this->{'do'.$actionName}($lastTurn);
if($result !== null){
$reservedCommand->reason = 'do'.$actionName;
return $result;
}
}
return buildNationCommandClass(null, $this->general, $this->env, $this->general->getLastTurn());
$cmd = buildNationCommandClass(null, $this->general, $this->env, $this->general->getLastTurn());
$cmd->reason = 'neutral';
return $cmd;
}
public function chooseInstantNationTurn(NationCommand $reservedCommand): ?NationCommand{
@@ -3092,7 +3096,9 @@ class GeneralAI
return $this->devRate;
}
$devRate = [];
$devRate = [
'all'=>0,
];
foreach($this->supplyCities as $city){
@@ -3100,6 +3106,9 @@ class GeneralAI
if($develKey == 'trust'){
continue;
}
if(!key_exists($develKey, $devRate)){
$devRate[$develKey] = 0;
}
$devRate[$develKey] += $devScore;
$devRate['all'] += $devScore;
}
+1
View File
@@ -266,6 +266,7 @@ WHERE turntime < %s ORDER BY turntime ASC, `no` ASC',
$ai = new GeneralAI($turnObj->getGeneral());
if($hasNationTurn){
$nationCommandObj = $ai->chooseNationTurn($nationCommandObj);
LogText("NationTurn", "General, {$general->getName()}, {$general->getID()}, {$general->getStaticNation()['name']}, {$nationCommandObj->getBrief()}, {$nationCommandObj->reason}, ");
}
$generalCommandObj = $ai->chooseGeneralTurn($generalCommandObj); // npc AI 처리