전투태세, 첩보 추가, 기존 코드 일부 정리
This commit is contained in:
@@ -0,0 +1,37 @@
|
||||
<?php
|
||||
|
||||
namespace sammo\Constraint;
|
||||
|
||||
class NotOccupiedDestCity extends Constraint{
|
||||
const REQ_VALUES = Constraint::REQ_GENERAL|Constraint::REQ_DEST_CITY;
|
||||
|
||||
public function checkInputValues(bool $throwExeception=true){
|
||||
if(!parent::checkInputValues($throwExeception) && !$throwException){
|
||||
return false;
|
||||
}
|
||||
|
||||
if(!key_exists('nation', $this->general)){
|
||||
if(!$throwExeception){return false; }
|
||||
throw new \InvalidArgumentException("require nation in general");
|
||||
}
|
||||
|
||||
if(!key_exists('nation', $this->destCity)){
|
||||
if(!$throwExeception){return false; }
|
||||
throw new \InvalidArgumentException("require nation in city");
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
public function test():bool{
|
||||
$this->checkInputValues();
|
||||
$this->tested = true;
|
||||
|
||||
if($this->destCity['nation'] == $this->general['nation']){
|
||||
return true;
|
||||
}
|
||||
|
||||
$this->reason = "아국입니다.";
|
||||
return false;
|
||||
}
|
||||
}
|
||||
@@ -2,7 +2,7 @@
|
||||
|
||||
namespace sammo\Constraint;
|
||||
|
||||
class NearCity extends Constraint{
|
||||
class NotSameDestCity extends Constraint{
|
||||
const REQ_VALUES = Constraint::REQ_GENERAL|Constraint::REQ_DEST_CITY;
|
||||
|
||||
public function checkInputValues(bool $throwExeception=true){
|
||||
@@ -0,0 +1,32 @@
|
||||
<?php
|
||||
|
||||
namespace sammo\Constraint;
|
||||
|
||||
class ReqCityTrader extends Constraint{
|
||||
const REQ_VALUES = Constraint::REQ_CITY;
|
||||
|
||||
public function checkInputValues(bool $throwExeception=true){
|
||||
if(!parent::checkInputValues($throwExeception) && !$throwException){
|
||||
return false;
|
||||
}
|
||||
|
||||
if(!key_exists('trade', $this->city)){
|
||||
if(!$throwExeception){return false; }
|
||||
throw new \InvalidArgumentException("require trade in city");
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
public function test():bool{
|
||||
$this->checkInputValues();
|
||||
$this->tested = true;
|
||||
|
||||
if($this->city['trade'] !== null){
|
||||
return true;
|
||||
}
|
||||
|
||||
$this->reason = "도시에 상인이 없습니다.";
|
||||
return false;
|
||||
}
|
||||
}
|
||||
@@ -4,7 +4,7 @@ namespace sammo\Constraint;
|
||||
use sammo\GameConst;
|
||||
|
||||
class ReqGeneralAtmosMargin extends Constraint{
|
||||
const REQ_VALUES = Constraint::REQ_GENERAL;
|
||||
const REQ_VALUES = Constraint::REQ_GENERAL|Constraint::REQ_INT_ARG;
|
||||
|
||||
public function checkInputValues(bool $throwExeception=true){
|
||||
if(!parent::checkInputValues($throwExeception) && !$throwException){
|
||||
@@ -23,7 +23,7 @@ class ReqGeneralAtmosMargin extends Constraint{
|
||||
$this->checkInputValues();
|
||||
$this->tested = true;
|
||||
|
||||
if($this->general['atmos'] < GameConst::$maxAtmosByCommand){
|
||||
if($this->general['atmos'] < $this->arg){
|
||||
return true;
|
||||
}
|
||||
|
||||
|
||||
@@ -4,7 +4,7 @@ namespace sammo\Constraint;
|
||||
use sammo\GameConst;
|
||||
|
||||
class ReqGeneralTrainMargin extends Constraint{
|
||||
const REQ_VALUES = Constraint::REQ_GENERAL;
|
||||
const REQ_VALUES = Constraint::REQ_GENERAL|Constraint::REQ_INT_ARG;
|
||||
|
||||
public function checkInputValues(bool $throwExeception=true){
|
||||
if(!parent::checkInputValues($throwExeception) && !$throwException){
|
||||
@@ -23,7 +23,7 @@ class ReqGeneralTrainMargin extends Constraint{
|
||||
$this->checkInputValues();
|
||||
$this->tested = true;
|
||||
|
||||
if($this->general['train'] < GameConst::$maxTrainByCommand){
|
||||
if($this->general['train'] < $this->arg){
|
||||
return true;
|
||||
}
|
||||
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
|
||||
namespace sammo\Constraint;
|
||||
|
||||
class NoWanderingNation extends Constraint{
|
||||
class SuppliedCity extends Constraint{
|
||||
const REQ_VALUES = Constraint::REQ_CITY;
|
||||
|
||||
public function checkInputValues(bool $throwExeception=true){
|
||||
|
||||
Reference in New Issue
Block a user