diff --git a/hwe/sammo/ActionSpecialWar/che_궁병.php b/hwe/sammo/ActionSpecialWar/che_궁병.php index e772d275..1abece8e 100644 --- a/hwe/sammo/ActionSpecialWar/che_궁병.php +++ b/hwe/sammo/ActionSpecialWar/che_궁병.php @@ -15,7 +15,7 @@ class che_궁병 extends \sammo\BaseSpecial{ static $selectWeightType = SpecialityHelper::WEIGHT_NORM; static $selectWeight = 1; static $type = [ - SpecialityHelper::STAT_LEADERSHIP | SpecialityHelper::REQ_DEXTERITY | SpecialityHelper::ARMY_ARCHER, + SpecialityHelper::STAT_LEADERSHIP | SpecialityHelper::REQ_DEXTERITY | SpecialityHelper::ARMY_ARCHER | SpecialityHelper::STAT_NOT_INTEL, SpecialityHelper::STAT_STRENGTH | SpecialityHelper::REQ_DEXTERITY | SpecialityHelper::ARMY_ARCHER ]; diff --git a/hwe/sammo/ActionSpecialWar/che_귀병.php b/hwe/sammo/ActionSpecialWar/che_귀병.php index 1bcdb73c..1c4813fc 100644 --- a/hwe/sammo/ActionSpecialWar/che_귀병.php +++ b/hwe/sammo/ActionSpecialWar/che_귀병.php @@ -15,7 +15,7 @@ class che_귀병 extends \sammo\BaseSpecial{ static $selectWeightType = SpecialityHelper::WEIGHT_NORM; static $selectWeight = 1; static $type = [ - SpecialityHelper::STAT_INTEL | SpecialityHelper::ARMY_WIZARD | SpecialityHelper::REQ_DEXTERITY + SpecialityHelper::STAT_INTEL | SpecialityHelper::ARMY_WIZARD | SpecialityHelper::REQ_DEXTERITY | SpecialityHelper::STAT_NOT_STRENGTH ]; public function onCalcDomestic(string $turnType, string $varType, float $value, $aux=null):float{ diff --git a/hwe/sammo/ActionSpecialWar/che_기병.php b/hwe/sammo/ActionSpecialWar/che_기병.php index aadbad5a..7943224e 100644 --- a/hwe/sammo/ActionSpecialWar/che_기병.php +++ b/hwe/sammo/ActionSpecialWar/che_기병.php @@ -15,7 +15,7 @@ class che_기병 extends \sammo\BaseSpecial{ static $selectWeightType = SpecialityHelper::WEIGHT_NORM; static $selectWeight = 1; static $type = [ - SpecialityHelper::STAT_LEADERSHIP | SpecialityHelper::REQ_DEXTERITY | SpecialityHelper::ARMY_CAVALRY, + SpecialityHelper::STAT_LEADERSHIP | SpecialityHelper::REQ_DEXTERITY | SpecialityHelper::ARMY_CAVALRY | SpecialityHelper::STAT_NOT_INTEL, SpecialityHelper::STAT_STRENGTH | SpecialityHelper::REQ_DEXTERITY | SpecialityHelper::ARMY_CAVALRY ]; diff --git a/hwe/sammo/ActionSpecialWar/che_보병.php b/hwe/sammo/ActionSpecialWar/che_보병.php index f702b95a..b587cb0c 100644 --- a/hwe/sammo/ActionSpecialWar/che_보병.php +++ b/hwe/sammo/ActionSpecialWar/che_보병.php @@ -15,7 +15,7 @@ class che_보병 extends \sammo\BaseSpecial{ static $selectWeightType = SpecialityHelper::WEIGHT_NORM; static $selectWeight = 1; static $type = [ - SpecialityHelper::STAT_LEADERSHIP | SpecialityHelper::REQ_DEXTERITY | SpecialityHelper::ARMY_FOOTMAN, + SpecialityHelper::STAT_LEADERSHIP | SpecialityHelper::REQ_DEXTERITY | SpecialityHelper::ARMY_FOOTMAN | SpecialityHelper::STAT_NOT_INTEL, SpecialityHelper::STAT_STRENGTH | SpecialityHelper::REQ_DEXTERITY | SpecialityHelper::ARMY_FOOTMAN ]; diff --git a/hwe/sammo/SpecialityHelper.php b/hwe/sammo/SpecialityHelper.php index fdd4c428..e1930c81 100644 --- a/hwe/sammo/SpecialityHelper.php +++ b/hwe/sammo/SpecialityHelper.php @@ -9,6 +9,10 @@ class SpecialityHelper{ const STAT_STRENGTH = 0x4; const STAT_INTEL = 0x8; + const STAT_NOT_LEADERSHIP = 0x20; + const STAT_NOT_STRENGTH = 0x40; + const STAT_NOT_INTEL = 0x80; + const ARMY_FOOTMAN = 0x100; const ARMY_ARCHER = 0x200; const ARMY_CAVALRY = 0x400; @@ -82,14 +86,23 @@ class SpecialityHelper{ if($leadership > GameConst::$chiefStatMin){ $myCond |= self::STAT_LEADERSHIP; } + if($leadership < GameConst::$chiefStatMin){ + $myCond |= self::STAT_NOT_LEADERSHIP; + } if($strength >= $intel * 0.95 && $strength > GameConst::$chiefStatMin){ $myCond |= self::STAT_STRENGTH; } + if($strength < GameConst::$chiefStatMin){ + $myCond |= self::STAT_NOT_STRENGTH; + } if($intel >= $strength * 0.95 && $intel > GameConst::$chiefStatMin){ $myCond |= self::STAT_INTEL; } + if($intel < GameConst::$chiefStatMin){ + $myCond |= self::STAT_NOT_INTEL; + } if($myCond === 0){ if ($leadership * 0.9 > $strength && $leadership * 0.9 > $intel) {