diff --git a/hwe/sammo/API/Nation/SetBlockScout.php b/hwe/sammo/API/Nation/SetBlockScout.php index 4b8967d3..72024556 100644 --- a/hwe/sammo/API/Nation/SetBlockScout.php +++ b/hwe/sammo/API/Nation/SetBlockScout.php @@ -47,6 +47,11 @@ class SetBlockScout extends \sammo\BaseAPI return "권한이 부족합니다."; } + $gameStor = new KVStorage($db, 'game_env'); + $blockChangeScout = $gameStor->getValue('block_change_scout')??false; + if ($blockChangeScout){ + return "임관 설정을 바꿀 수 없도록 설정되어 있습니다."; + } $nationID = $me['nation']; diff --git a/hwe/sammo/Event/Action/BlockScoutAction.php b/hwe/sammo/Event/Action/BlockScoutAction.php new file mode 100644 index 00000000..4504f0f5 --- /dev/null +++ b/hwe/sammo/Event/Action/BlockScoutAction.php @@ -0,0 +1,25 @@ +update('nation', [ + 'scout'=>1 + ], true); + if($this->blockChangeScout !== null){ + $gameStor = new KVStorage($db, 'game_env'); + $gameStor->setValue('block_change_scout', $this->blockChangeScout); + } + + return [__CLASS__, $db->affectedRows()]; + } + +} \ No newline at end of file diff --git a/hwe/sammo/Event/Action/RaiseInvader.php b/hwe/sammo/Event/Action/RaiseInvader.php index 6e48412b..c7252f0c 100644 --- a/hwe/sammo/Event/Action/RaiseInvader.php +++ b/hwe/sammo/Event/Action/RaiseInvader.php @@ -252,6 +252,8 @@ class RaiseInvader extends \sammo\Event\Action $logger->pushGlobalHistoryLog("【이벤트】이민족의 기세는 그 누구도 막을 수 없을듯 합니다!"); $logger->flush(); + $gameStor->setValue('block_change_scout', false); + $db->update('plock', [ 'plock' => 0 ], true); diff --git a/hwe/sammo/Event/Action/UnblockScoutAction.php b/hwe/sammo/Event/Action/UnblockScoutAction.php new file mode 100644 index 00000000..8d78bd49 --- /dev/null +++ b/hwe/sammo/Event/Action/UnblockScoutAction.php @@ -0,0 +1,26 @@ +update('nation', [ + 'scout'=>0 + ]); + + if($this->blockChangeScout !== null){ + $gameStor = new KVStorage($db, 'game_env'); + $gameStor->setValue('block_change_scout', $this->blockChangeScout); + } + + return [__CLASS__, $db->affectedRows()]; + } + +} \ No newline at end of file