From 03b458c1b239c171194adb0af7af3354fcd58548 Mon Sep 17 00:00:00 2001 From: Hide_D Date: Tue, 12 Apr 2022 21:42:54 +0900 Subject: [PATCH] =?UTF-8?q?game:=20=EA=B6=81=EB=B3=91=EC=97=90=20'?= =?UTF-8?q?=EC=84=A0=EC=A0=9C=20=EC=82=AC=EA=B2=A9'=20=EC=B6=94=EA=B0=80?= =?UTF-8?q?=20-=20=EA=B3=B5=EA=B2=A9=20=EC=8B=9C,=20=EC=83=81=EB=8C=80?= =?UTF-8?q?=EC=9D=98=20=EA=B3=B5=EA=B2=A9=EB=A0=A5=EC=9D=84=201/2=EB=A1=9C?= =?UTF-8?q?=20=EC=95=BD=ED=99=94=20-=20=EC=88=98=EB=B9=84=20=EC=8B=9C,=20'?= =?UTF-8?q?=EC=84=A0=EC=A0=9C=20=EA=B3=B5=EA=B2=A9'=20=EC=88=98=ED=96=89?= =?UTF-8?q?=20=20=20=20-=20=ED=95=84=EC=82=B4,=20=EA=B3=84=EB=9E=B5?= =?UTF-8?q?=EC=9D=B4=20=EC=97=86=EB=8A=94=20=EC=9D=BC=EB=B0=98=20=ED=8F=89?= =?UTF-8?q?=ED=83=80=20=EA=B3=B5=EA=B2=A9=20=20=20=20-=20=EA=B3=B5?= =?UTF-8?q?=EA=B2=A9=EC=9E=90=EC=9D=98=20=EC=B4=9D=20=ED=8E=98=EC=9D=B4?= =?UTF-8?q?=EC=A6=88=EB=8A=94=20=EC=9C=A0=EC=A7=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- hwe/sammo/GameUnitConstBase.php | 12 ++--- hwe/sammo/WarUnitTrigger/che_궁병선제사격.php | 52 +++++++++++++++++++ 2 files changed, 58 insertions(+), 6 deletions(-) create mode 100644 hwe/sammo/WarUnitTrigger/che_궁병선제사격.php diff --git a/hwe/sammo/GameUnitConstBase.php b/hwe/sammo/GameUnitConstBase.php index 652fc721..91298311 100644 --- a/hwe/sammo/GameUnitConstBase.php +++ b/hwe/sammo/GameUnitConstBase.php @@ -114,8 +114,8 @@ class GameUnitConstBase{ 0, null, null, 0, [self::T_CAVALRY=>1.2, self::T_FOOTMAN=>0.8, self::T_SIEGE=>1.2], [self::T_CAVALRY=>0.8, self::T_FOOTMAN=>1.2, self::T_SIEGE=>0.8], - ['표준적인 궁병입니다.','궁병은 회피특화입니다.'], - null, null + ['표준적인 궁병입니다.','궁병은 선제사격을 하는 회피특화 병종입니다.'], + null, ['che_궁병선제사격'] ], [ 1201, self::T_ARCHER, '궁기병', @@ -124,7 +124,7 @@ class GameUnitConstBase{ [self::T_CAVALRY=>1.2, self::T_FOOTMAN=>0.8, self::T_SIEGE=>1.2], [self::T_CAVALRY=>0.8, self::T_FOOTMAN=>1.2, self::T_SIEGE=>0.8], ['말을 타고 잘 피합니다.'], - null, null + null, ['che_궁병선제사격'] ], [ 1202, self::T_ARCHER, '연노병', @@ -133,7 +133,7 @@ class GameUnitConstBase{ [self::T_CAVALRY=>1.2, self::T_FOOTMAN=>0.8, self::T_SIEGE=>1.2], [self::T_CAVALRY=>0.8, self::T_FOOTMAN=>1.2, self::T_SIEGE=>0.8], ['화살을 연사합니다.'], - null, null + null, ['che_궁병선제사격'] ], [ 1203, self::T_ARCHER, '강궁병', @@ -142,7 +142,7 @@ class GameUnitConstBase{ [self::T_CAVALRY=>1.2, self::T_FOOTMAN=>0.8, self::T_SIEGE=>1.2], [self::T_CAVALRY=>0.8, self::T_FOOTMAN=>1.2, self::T_SIEGE=>0.8], ['강건한 궁병입니다.'], - null, null + null, ['che_궁병선제사격'] ], [ 1204, self::T_ARCHER, '석궁병', @@ -151,7 +151,7 @@ class GameUnitConstBase{ [self::T_CAVALRY=>1.2, self::T_FOOTMAN=>0.8, self::T_SIEGE=>1.2], [self::T_CAVALRY=>0.8, self::T_FOOTMAN=>1.2, self::T_SIEGE=>0.8], ['강력한 화살을 쏩니다.'], - null, null + null, ['che_궁병선제사격'] ], [ diff --git a/hwe/sammo/WarUnitTrigger/che_궁병선제사격.php b/hwe/sammo/WarUnitTrigger/che_궁병선제사격.php new file mode 100644 index 00000000..a5ac8892 --- /dev/null +++ b/hwe/sammo/WarUnitTrigger/che_궁병선제사격.php @@ -0,0 +1,52 @@ +getPhase() !== 0 && $oppose->getPhase() !== 0) { + return true; + } + if ($self->hasActivatedSkill('선제')) { + return true; + } + if ($self->hasActivatedSkillOnLog('선제')) { + return true; + } + + $self->activateSkill('특수', '선제'); + if (!$self->isAttacker()) { + $self->addPhase(-1); + $oppose->addPhase(-1); + if ($oppose->getCrewType()->armType == GameUnitConst::T_ARCHER) { + $oppose->multiplyWarPowerMultiply(0.5); + } else { + $oppose->multiplyWarPowerMultiply(0); + $self->activateSkill('회피불가', '필살불가', '계략불가'); + $oppose->activateSkill('회피불가', '계략불가'); + } + } else { + $oppose->multiplyWarPowerMultiply(0.5); + } + + $oppose->getLogger()->pushGeneralBattleDetailLog('상대에게 선제 사격을 받았다!', ActionLogger::PLAIN); + $self->getLogger()->pushGeneralBattleDetailLog('상대에게 선제 사격을 했다!', ActionLogger::PLAIN); + + return true; + } +}