fix: 궁병이 아닌 경우에도 '맞 선제'가 정상 작동하도록 수정
- 궁병선제사격을 선제사격시도, 선제사격발동으로 분리 - 맞선제의 기준을 궁병이 아니라 '선제'의 활성화 여부로 구분
This commit is contained in:
@@ -0,0 +1,36 @@
|
||||
<?php
|
||||
|
||||
namespace sammo\WarUnitTrigger;
|
||||
|
||||
use sammo\ActionLogger;
|
||||
use sammo\BaseWarUnitTrigger;
|
||||
use sammo\GameUnitConst;
|
||||
use sammo\WarUnitGeneral;
|
||||
use sammo\WarUnitCity;
|
||||
use sammo\WarUnit;
|
||||
use sammo\GameUnitDetail;
|
||||
use sammo\Util;
|
||||
use sammo\ObjectTrigger;
|
||||
|
||||
class che_선제사격시도 extends BaseWarUnitTrigger
|
||||
{
|
||||
protected $priority = ObjectTrigger::PRIORITY_BEGIN + 50;
|
||||
|
||||
protected function actionWar(WarUnit $self, WarUnit $oppose, array &$selfEnv, array &$opposeEnv): bool
|
||||
{
|
||||
assert($self instanceof WarUnitGeneral, 'General만 발동 가능');
|
||||
if ($self->getPhase() !== 0 && $oppose->getPhase() !== 0) {
|
||||
return true;
|
||||
}
|
||||
if ($self->hasActivatedSkill('선제')) {
|
||||
return true;
|
||||
}
|
||||
if ($self->hasActivatedSkillOnLog('선제')) {
|
||||
return true;
|
||||
}
|
||||
|
||||
$self->activateSkill('특수', '선제');
|
||||
return true;
|
||||
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user