From 7ce1e64ee8dee99faf3942ebbdceec036b236331 Mon Sep 17 00:00:00 2001 From: hide_d Date: Mon, 13 May 2019 00:49:44 +0900 Subject: [PATCH] =?UTF-8?q?WarUnitTrigger=20=EA=B0=9C=ED=8E=B8,=20?= =?UTF-8?q?=EB=B3=91=EC=A2=85=20Trigger=20=EA=B0=9C=EB=85=90=20=EC=B6=94?= =?UTF-8?q?=EA=B0=80,=20=EC=A0=80=EC=A7=80,=20=EC=84=B1=EB=B2=BD=EB=B6=80?= =?UTF-8?q?=EC=83=81=EB=AC=B4=ED=9A=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- hwe/func_converter.php | 21 +++ hwe/sammo/GameUnitActionBase.php | 18 --- hwe/sammo/GameUnitConstBase.php | 108 +++++++++----- hwe/sammo/GameUnitDetail.php | 53 ++++++- hwe/sammo/GameUnitInitTriggerBase.php | 10 -- hwe/sammo/GameUnitPhaseTriggerBase.php | 10 -- hwe/sammo/WarUnitTrigger/che_성벽부상무효.php | 23 +++ hwe/sammo/WarUnitTrigger/che_저격시도.php | 1 + hwe/sammo/WarUnitTrigger/che_저지발동.php | 35 +++++ hwe/sammo/WarUnitTrigger/che_저지시도.php | 32 ++++ hwe/scenario/unit/basic.php | 24 ++- hwe/scenario/unit/ludo_rathowm.php | 138 ++++++++++++------ hwe/scenario/unit/siegetank.php | 30 ++-- 13 files changed, 364 insertions(+), 139 deletions(-) delete mode 100644 hwe/sammo/GameUnitActionBase.php delete mode 100644 hwe/sammo/GameUnitInitTriggerBase.php delete mode 100644 hwe/sammo/GameUnitPhaseTriggerBase.php create mode 100644 hwe/sammo/WarUnitTrigger/che_성벽부상무효.php create mode 100644 hwe/sammo/WarUnitTrigger/che_저지발동.php create mode 100644 hwe/sammo/WarUnitTrigger/che_저지시도.php diff --git a/hwe/func_converter.php b/hwe/func_converter.php index 4982e0c3..16b78056 100644 --- a/hwe/func_converter.php +++ b/hwe/func_converter.php @@ -389,6 +389,27 @@ function buildNationCommandClass(?string $type, General $generalObj, array $env, return new $class($generalObj, $env, $lastTurn, $arg); } +function getWarUnitTriggerClass(string $type){ + static $basePath = __NAMESPACE__.'\\WarUnitTrigger\\'; + $classPath = ($basePath.$type); + + if(class_exists($classPath)){ + return $classPath; + } + + throw new \InvalidArgumentException("{$type}은 WarUnitTrigger가 아님"); +} + +function buildWarUnitTriggerClass(?string $type, WarUnit $unit, ?array $args = null):BaseWarUnitTrigger{ + $classPath = getNationCommandClass($type); + if(!$args){ + return new $classPath($unit); + } + + $class = new \ReflectionClass($classPath); + return $class->newInstanceArgs(array_merge([$unit], $args)); +} + function getLevel($level, $nlevel=8) { if($level >= 0 && $level <= 4) { $nlevel = 0; } $code = $nlevel * 100 + $level; diff --git a/hwe/sammo/GameUnitActionBase.php b/hwe/sammo/GameUnitActionBase.php deleted file mode 100644 index 8e58eb3d..00000000 --- a/hwe/sammo/GameUnitActionBase.php +++ /dev/null @@ -1,18 +0,0 @@ -1.2], - ['성벽입니다.','생성할 수 없습니다.'] + ['성벽입니다.','생성할 수 없습니다.'], + null, null ], [ @@ -48,7 +49,8 @@ class GameUnitConstBase{ 0, null, null, 0, [self::T_ARCHER=>1.2, self::T_CAVALRY=>0.8, self::T_SIEGE=>1.2], [self::T_ARCHER=>0.8, self::T_CAVALRY=>1.2, self::T_SIEGE=>0.8], - ['표준적인 보병입니다.','보병은 방어특화이며, 상대가 회피하기 어렵습니다.'] + ['표준적인 보병입니다.','보병은 방어특화이며, 상대가 회피하기 어렵습니다.'], + null, null ], [ 1, self::T_FOOTMAN, '청주병', @@ -56,7 +58,8 @@ class GameUnitConstBase{ 1000, null, ['중원'], 0, [self::T_ARCHER=>1.2, self::T_CAVALRY=>0.8, self::T_SIEGE=>1.2], [self::T_ARCHER=>0.8, self::T_CAVALRY=>1.2, self::T_SIEGE=>0.8], - ['저렴하고 튼튼합니다.'] + ['저렴하고 튼튼합니다.'], + null, null ], [ 2, self::T_FOOTMAN, '수병', @@ -64,7 +67,8 @@ class GameUnitConstBase{ 1000, null, ['오월'], 0, [self::T_ARCHER=>1.2, self::T_CAVALRY=>0.8, self::T_SIEGE=>1.2], [self::T_ARCHER=>0.8, self::T_CAVALRY=>1.2, self::T_SIEGE=>0.8], - ['저렴하고 강력합니다.'] + ['저렴하고 강력합니다.'], + null, null ], [ 3, self::T_FOOTMAN, '자객병', @@ -72,7 +76,8 @@ class GameUnitConstBase{ 2000, ['저'], null, 0, [self::T_ARCHER=>1.2, self::T_CAVALRY=>0.8, self::T_SIEGE=>1.2], [self::T_ARCHER=>0.8, self::T_CAVALRY=>1.2, self::T_SIEGE=>0.8], - ['은밀하고 날쌥니다.'] + ['은밀하고 날쌥니다.'], + null, null ], [ 4, self::T_FOOTMAN, '근위병', @@ -80,7 +85,8 @@ class GameUnitConstBase{ 3000, ['낙양'], null, 0, [self::T_ARCHER=>1.2, self::T_CAVALRY=>0.8, self::T_SIEGE=>1.2], [self::T_ARCHER=>0.8, self::T_CAVALRY=>1.2, self::T_SIEGE=>0.8], - ['최강의 보병입니다.'] + ['최강의 보병입니다.'], + null, null ], [ 5, self::T_FOOTMAN, '등갑병', @@ -88,7 +94,8 @@ class GameUnitConstBase{ 1000, null, ['남중'], 0, [self::T_ARCHER=>1.2, self::T_CAVALRY=>0.8, self::T_SIEGE=>1.2], [self::T_ARCHER=>0.8, self::T_CAVALRY=>1.2, self::T_SIEGE=>0.8], - ['등갑을 두른 보병입니다.'] + ['등갑을 두른 보병입니다.'], + null, null ], [ @@ -97,7 +104,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 ], [ 11, self::T_ARCHER, '궁기병', @@ -105,7 +113,8 @@ class GameUnitConstBase{ 1000, 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 ], [ 12, self::T_ARCHER, '연노병', @@ -113,7 +122,8 @@ class GameUnitConstBase{ 1000, 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 ], [ 13, self::T_ARCHER, '강궁병', @@ -121,7 +131,8 @@ class GameUnitConstBase{ 3000, ['양양'], 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 ], [ 14, self::T_ARCHER, '석궁병', @@ -129,7 +140,8 @@ class GameUnitConstBase{ 3000, ['건업'], 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 ], [ @@ -138,7 +150,8 @@ class GameUnitConstBase{ 0, null, null, 0, [self::T_FOOTMAN=>1.2, self::T_ARCHER=>0.8, self::T_SIEGE=>1.2], [self::T_FOOTMAN=>0.8, self::T_ARCHER=>1.2, self::T_SIEGE=>0.8], - ['표준적인 기병입니다.','기병은 공격특화입니다.'] + ['표준적인 기병입니다.','기병은 공격특화입니다.'], + null, null ], [ 21, self::T_CAVALRY, '백마병', @@ -146,7 +159,8 @@ class GameUnitConstBase{ 1000, null, ['하북'], 0, [self::T_FOOTMAN=>1.2, self::T_ARCHER=>0.8, self::T_SIEGE=>1.2], [self::T_FOOTMAN=>0.8, self::T_ARCHER=>1.2, self::T_SIEGE=>0.8], - ['백마의 위용을 보여줍니다.'] + ['백마의 위용을 보여줍니다.'], + null, null ], [ 22, self::T_CAVALRY, '중장기병', @@ -154,7 +168,8 @@ class GameUnitConstBase{ 1000, null, ['서북'], 0, [self::T_FOOTMAN=>1.2, self::T_ARCHER=>0.8, self::T_SIEGE=>1.2], [self::T_FOOTMAN=>0.8, self::T_ARCHER=>1.2, self::T_SIEGE=>0.8], - ['갑주를 두른 기병입니다.'] + ['갑주를 두른 기병입니다.'], + null, null ], [ 23, self::T_CAVALRY, '돌격기병', @@ -162,7 +177,8 @@ class GameUnitConstBase{ 2000, ['흉노'], null, 0, [self::T_FOOTMAN=>1.2, self::T_ARCHER=>0.8, self::T_SIEGE=>1.2], [self::T_FOOTMAN=>0.8, self::T_ARCHER=>1.2, self::T_SIEGE=>0.8], - ['저돌적으로 공격합니다.'] + ['저돌적으로 공격합니다.'], + null, null ], [ 24, self::T_CAVALRY, '철기병', @@ -170,14 +186,17 @@ class GameUnitConstBase{ 2000, ['강'], null, 0, [self::T_FOOTMAN=>1.2, self::T_ARCHER=>0.8, self::T_SIEGE=>1.2], [self::T_FOOTMAN=>0.8, self::T_ARCHER=>1.2, self::T_SIEGE=>0.8], - ['철갑을 두른 기병입니다.']], + ['철갑을 두른 기병입니다.'], + null, null + ], [ 25, self::T_CAVALRY, '수렵기병', 150, 100, 8, 15, 0, 12, 12, 2000, ['산월'], null, 0, [self::T_FOOTMAN=>1.2, self::T_ARCHER=>0.8, self::T_SIEGE=>1.2], [self::T_FOOTMAN=>0.8, self::T_ARCHER=>1.2, self::T_SIEGE=>0.8], - ['날쎄고 빠른 기병입니다.'] + ['날쎄고 빠른 기병입니다.'], + null, null ], [ 26, self::T_CAVALRY, '맹수병', @@ -185,7 +204,8 @@ class GameUnitConstBase{ 2000, ['남만'], null, 0, [self::T_FOOTMAN=>1.2, self::T_ARCHER=>0.8, self::T_SIEGE=>1.2], [self::T_FOOTMAN=>0.8, self::T_ARCHER=>1.2, self::T_SIEGE=>0.8], - ['어느 누구보다 강력합니다.'] + ['어느 누구보다 강력합니다.'], + null, null ], [ 27, self::T_CAVALRY, '호표기병', @@ -193,7 +213,8 @@ class GameUnitConstBase{ 3000, ['허창'], null, 0, [self::T_FOOTMAN=>1.2, self::T_ARCHER=>0.8, self::T_SIEGE=>1.2], [self::T_FOOTMAN=>0.8, self::T_ARCHER=>1.2, self::T_SIEGE=>0.8], - ['정예 기병입니다.'] + ['정예 기병입니다.'], + null, null ], [ @@ -202,7 +223,8 @@ class GameUnitConstBase{ 0, null, null, 0, [self::T_SIEGE=>1.2], [self::T_SIEGE=>0.8], - ['계략을 사용하는 병종입니다.'] + ['계략을 사용하는 병종입니다.'], + null, null ], [ 31, self::T_WIZARD, '신귀병', @@ -210,7 +232,8 @@ class GameUnitConstBase{ 1000, null, ['초'], 0, [self::T_SIEGE=>1.2], [self::T_SIEGE=>0.8], - ['신출귀몰한 귀병입니다.'] + ['신출귀몰한 귀병입니다.'], + null, null ], [ 32, self::T_WIZARD, '백귀병', @@ -218,7 +241,8 @@ class GameUnitConstBase{ 2000, ['오환'], null, 0, [self::T_SIEGE=>1.2], [self::T_SIEGE=>0.8], - ['저렴하고 튼튼합니다.'] + ['저렴하고 튼튼합니다.'], + null, null ], [ 33, self::T_WIZARD, '흑귀병', @@ -226,7 +250,8 @@ class GameUnitConstBase{ 2000, ['왜'], null, 0, [self::T_SIEGE=>1.2], [self::T_SIEGE=>0.8], - ['저렴하고 강력합니다.'] + ['저렴하고 강력합니다.'], + null, null ], [ 34, self::T_WIZARD, '악귀병', @@ -234,7 +259,8 @@ class GameUnitConstBase{ 3000, ['장안'], null, 0, [self::T_SIEGE=>1.2], [self::T_SIEGE=>0.8], - ['백병전에도 능숙합니다.'] + ['백병전에도 능숙합니다.'], + null, null ], [ 35, self::T_WIZARD, '남귀병', @@ -242,7 +268,8 @@ class GameUnitConstBase{ 1000, null, null, 0, [self::T_SIEGE=>1.2], [self::T_SIEGE=>0.8], - ['전투를 포기하고 계략에 몰두합니다.'] + ['전투를 포기하고 계략에 몰두합니다.'], + null, null ], [ 36, self::T_WIZARD, '황귀병', @@ -250,7 +277,8 @@ class GameUnitConstBase{ 3000, ['낙양'], null, 0, [self::T_SIEGE=>1.2], [self::T_SIEGE=>0.8], - ['고도로 훈련된 귀병입니다.'] + ['고도로 훈련된 귀병입니다.'], + null, null ], [ 37, self::T_WIZARD, '천귀병', @@ -258,7 +286,8 @@ class GameUnitConstBase{ 3000, ['성도'], null, 0, [self::T_SIEGE=>1.2], [self::T_SIEGE=>0.8], - ['갑주를 두른 귀병입니다.'] + ['갑주를 두른 귀병입니다.'], + null, null ], [ 38, self::T_WIZARD, '마귀병', @@ -266,7 +295,8 @@ class GameUnitConstBase{ 3000, ['업'], null, 0, [self::T_SIEGE=>1.2], [self::T_SIEGE=>0.8], - ['날카로운 무기를 가진 귀병입니다.'] + ['날카로운 무기를 가진 귀병입니다.'], + null, null ], [ @@ -275,7 +305,8 @@ class GameUnitConstBase{ 0, null, null, 3, [self::T_FOOTMAN=>0.8, self::T_ARCHER=>0.8, self::T_CAVALRY=>0.8, self::T_WIZARD=>0.8, self::T_CASTLE=>1.8], [self::T_FOOTMAN=>1.2, self::T_ARCHER=>1.2, self::T_CAVALRY=>1.2, self::T_WIZARD=>1.2], - ['높은 구조물 위에서 공격합니다.'] + ['높은 구조물 위에서 공격합니다.'], + ['che_성벽부상무효'], null ], [ 41, self::T_SIEGE, '충차', @@ -283,7 +314,8 @@ class GameUnitConstBase{ 1000, null, null, 3, [self::T_FOOTMAN=>0.8, self::T_ARCHER=>0.8, self::T_CAVALRY=>0.8, self::T_WIZARD=>0.8, self::T_CASTLE=>2.4], [self::T_FOOTMAN=>1.2, self::T_ARCHER=>1.2, self::T_CAVALRY=>1.2, self::T_WIZARD=>1.2], - ['엄청난 위력으로 성벽을 부수어버립니다.'] + ['엄청난 위력으로 성벽을 부수어버립니다.'], + ['che_성벽부상무효'], null ], [ 42, self::T_SIEGE, '벽력거', @@ -291,7 +323,8 @@ class GameUnitConstBase{ 3000, ['업'], null, 0, [self::T_FOOTMAN=>0.8, self::T_ARCHER=>0.8, self::T_CAVALRY=>0.8, self::T_WIZARD=>0.8, self::T_CASTLE=>1.8], [self::T_FOOTMAN=>1.2, self::T_ARCHER=>1.2, self::T_CAVALRY=>1.2, self::T_WIZARD=>1.2], - ['상대에게 돌덩이를 날립니다.'] + ['상대에게 돌덩이를 날립니다.'], + ['che_성벽부상무효'], null ], [ 43, self::T_SIEGE, '목우', @@ -299,7 +332,8 @@ class GameUnitConstBase{ 3000, ['성도'], null, 0, [self::T_FOOTMAN=>0.8, self::T_ARCHER=>0.8, self::T_CAVALRY=>0.8, self::T_WIZARD=>0.8], [self::T_FOOTMAN=>1.2, self::T_ARCHER=>1.2, self::T_CAVALRY=>1.2, self::T_WIZARD=>1.2], - ['상대를 저지하는 특수병기입니다.'] + ['상대를 저지하는 특수병기입니다.'], + ['che_성벽부상무효'], ['che_저지시도', 'che_저지발동'] ] ]; @@ -416,7 +450,9 @@ class GameUnitConstBase{ $reqYear, $attackCoef, $defenceCoef, - $info + $info, + $initSkillTrigger, + $phaseSkillTrigger, ] = $rawUnit; if($reqYear > 0){ @@ -458,7 +494,9 @@ class GameUnitConstBase{ $reqYear, $attackCoef, $defenceCoef, - $info + $info, + $initSkillTrigger, + $phaseSkillTrigger ); $constID[$id] = $unit; diff --git a/hwe/sammo/GameUnitDetail.php b/hwe/sammo/GameUnitDetail.php index 229972c2..d9e26549 100644 --- a/hwe/sammo/GameUnitDetail.php +++ b/hwe/sammo/GameUnitDetail.php @@ -1,7 +1,8 @@ id = $id; $this->name = $name; @@ -57,6 +62,9 @@ class GameUnitDetail extends GameUnitActionBase{ $this->attackCoef = $attackCoef; $this->defenceCoef = $defenceCoef; $this->info = $info; + $this->initSkillTrigger = $initSkillTrigger; + $this->phaseSkillTrigger = $phaseSkillTrigger; + } public function getShortName():string{ @@ -199,4 +207,45 @@ class GameUnitDetail extends GameUnitActionBase{ return true; } + + //iAction + public function getBattleInitSkillTriggerList(WarUnit $unit):?WarUnitTriggerCaller{ + if(!$this->initSkillTrigger){ + return null; + } + $triggerList = []; + foreach($this->initSkillTrigger as $triggerArgs){ + if(is_string($triggerArgs)){ + $typeName = $triggerArgs; + $triggerList[] = buildWarUnitTriggerClass($typeName, $unit); + } + else{ + $typeName = $triggerArgs[0]; + //WarUnit 다음 인자는 $raiseType이며, 0이어야할 것이다 + $triggerArgs[0] = 0; + $triggerList[] = buildWarUnitTriggerClass($typeName, $unit, $triggerArgs); + } + } + return new WarUnitTriggerCaller($triggerList); + } + public function getBattlePhaseSkillTriggerList(WarUnit $unit):?WarUnitTriggerCaller{ + if(!$this->phaseSkillTrigger){ + return null; + } + $triggerList = []; + foreach($this->phaseSkillTrigger as $triggerArgs){ + if(is_string($triggerArgs)){ + $typeName = $triggerArgs; + $triggerList[] = buildWarUnitTriggerClass($typeName, $unit); + } + else{ + $typeName = $triggerArgs[0]; + //WarUnit 다음 인자는 $raiseType이며, 0이어야할 것이다 + $triggerArgs[0] = 0; + $triggerList[] = buildWarUnitTriggerClass($typeName, $unit, $triggerArgs); + } + } + return new WarUnitTriggerCaller($triggerList); + + } } \ No newline at end of file diff --git a/hwe/sammo/GameUnitInitTriggerBase.php b/hwe/sammo/GameUnitInitTriggerBase.php deleted file mode 100644 index af4525fa..00000000 --- a/hwe/sammo/GameUnitInitTriggerBase.php +++ /dev/null @@ -1,10 +0,0 @@ -activateSkill('부상무효'); + + return true; + } +} \ No newline at end of file diff --git a/hwe/sammo/WarUnitTrigger/che_저격시도.php b/hwe/sammo/WarUnitTrigger/che_저격시도.php index a9474cbf..6781199e 100644 --- a/hwe/sammo/WarUnitTrigger/che_저격시도.php +++ b/hwe/sammo/WarUnitTrigger/che_저격시도.php @@ -5,6 +5,7 @@ use sammo\WarUnitGeneral; use sammo\WarUnitCity; use sammo\WarUnit; use sammo\GameUnitDetail; +use sammo\ObjectTrigger; class che_저격시도 extends BaseWarUnitTrigger{ static protected $priority = ObjectTrigger::PRIORITY_PRE + 100; diff --git a/hwe/sammo/WarUnitTrigger/che_저지발동.php b/hwe/sammo/WarUnitTrigger/che_저지발동.php new file mode 100644 index 00000000..55070fc7 --- /dev/null +++ b/hwe/sammo/WarUnitTrigger/che_저지발동.php @@ -0,0 +1,35 @@ +hasActivatedSkill('저지')){ + return true; + } + + if($selfEnv['저지발동']??false){ + return true; + } + $selfEnv['저지발동'] = true; + + $self->getLogger()->pushGeneralBattleDetailLog("상대를 저지했다!", ActionLogger::PLAIN); + $oppose->getLogger()->pushGeneralBattleDetailLog("저지당했다!", ActionLogger::PLAIN); + + $self->addDex($oppose->getCrewType(), $oppose->getWarPower() * 0.9); + $self->addDex($self->getCrewType(), $self->getWarPower() * 0.9); + + $self->setWarPowerMultiply(0); + $oppose->setWarPowerMultiply(0); + + return false; //저지는 모든 특수 이벤트를 중지시킨다. + } +} \ No newline at end of file diff --git a/hwe/sammo/WarUnitTrigger/che_저지시도.php b/hwe/sammo/WarUnitTrigger/che_저지시도.php new file mode 100644 index 00000000..332820a3 --- /dev/null +++ b/hwe/sammo/WarUnitTrigger/che_저지시도.php @@ -0,0 +1,32 @@ +isAttacker()){ + return true; + } + if($self->hasActivatedSkill('특수')){ + return true; + } + if($self->hasActivatedSkill('저지불가')){ + return true; + } + + $ratio = $self->getComputedAtmos() + $self->getComputedTrain(); + if(Util::randBool($ratio / 400)){ + $self->activateSkill('특수', '저지'); + } + + return true; + } +} \ No newline at end of file diff --git a/hwe/scenario/unit/basic.php b/hwe/scenario/unit/basic.php index 0f2159e9..c7c3e61e 100644 --- a/hwe/scenario/unit/basic.php +++ b/hwe/scenario/unit/basic.php @@ -12,7 +12,8 @@ class GameUnitConst extends GameUnitConstBase 999999, null, null, 999999, [],//성벽은 공격할 수 없다. [self::T_FOOTMAN=>1.2], - ['성벽입니다.','생성할 수 없습니다.'] + ['성벽입니다.','생성할 수 없습니다.'], + null, null ], [ @@ -21,7 +22,8 @@ class GameUnitConst extends GameUnitConstBase 0, null, null, 0, [self::T_ARCHER=>1.2, self::T_CAVALRY=>0.8, self::T_SIEGE=>1.2], [self::T_ARCHER=>0.8, self::T_CAVALRY=>1.2, self::T_SIEGE=>0.8], - ['표준적인 보병입니다.','보병은 방어특화이며, 상대가 회피하기 어렵습니다.'] + ['표준적인 보병입니다.','보병은 방어특화이며, 상대가 회피하기 어렵습니다.'], + null, null ], [ @@ -30,7 +32,8 @@ class GameUnitConst extends 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 ], [ @@ -39,7 +42,8 @@ class GameUnitConst extends GameUnitConstBase 0, null, null, 0, [self::T_FOOTMAN=>1.2, self::T_ARCHER=>0.8, self::T_SIEGE=>1.2], [self::T_FOOTMAN=>0.8, self::T_ARCHER=>1.2, self::T_SIEGE=>0.8], - ['표준적인 기병입니다.','기병은 공격특화입니다.'] + ['표준적인 기병입니다.','기병은 공격특화입니다.'], + null, null ], [ @@ -48,7 +52,8 @@ class GameUnitConst extends GameUnitConstBase 0, null, null, 0, [self::T_SIEGE=>1.2], [self::T_SIEGE=>0.8], - ['계략을 사용하는 병종입니다.'] + ['계략을 사용하는 병종입니다.'], + null, null ], [ 35, self::T_WIZARD, '남귀병', @@ -56,7 +61,8 @@ class GameUnitConst extends GameUnitConstBase 1000, null, null, 0, [self::T_SIEGE=>1.2], [self::T_SIEGE=>0.8], - ['전투를 포기하고 계략에 몰두합니다.'] + ['전투를 포기하고 계략에 몰두합니다.'], + null, null ], [ @@ -65,7 +71,8 @@ class GameUnitConst extends GameUnitConstBase 0, null, null, 3, [self::T_FOOTMAN=>0.8, self::T_ARCHER=>0.8, self::T_CAVALRY=>0.8, self::T_WIZARD=>0.8, self::T_CASTLE=>1.8], [self::T_FOOTMAN=>1.2, self::T_ARCHER=>1.2, self::T_CAVALRY=>1.2, self::T_WIZARD=>1.2], - ['높은 구조물 위에서 공격합니다.'] + ['높은 구조물 위에서 공격합니다.'], + ['che_성벽부상무효'], null ], [ 41, self::T_SIEGE, '충차', @@ -73,7 +80,8 @@ class GameUnitConst extends GameUnitConstBase 1000, null, null, 3, [self::T_FOOTMAN=>0.8, self::T_ARCHER=>0.8, self::T_CAVALRY=>0.8, self::T_WIZARD=>0.8, self::T_CASTLE=>2.4], [self::T_FOOTMAN=>1.2, self::T_ARCHER=>1.2, self::T_CAVALRY=>1.2, self::T_WIZARD=>1.2], - ['엄청난 위력으로 성벽을 부수어버립니다.'] + ['엄청난 위력으로 성벽을 부수어버립니다.'], + ['che_성벽부상무효'], null ] ]; } \ No newline at end of file diff --git a/hwe/scenario/unit/ludo_rathowm.php b/hwe/scenario/unit/ludo_rathowm.php index 4306fc03..bb4e26c3 100644 --- a/hwe/scenario/unit/ludo_rathowm.php +++ b/hwe/scenario/unit/ludo_rathowm.php @@ -20,7 +20,8 @@ class GameUnitConst extends GameUnitConstBase 999999, null, null, 999999, [],//성벽은 공격할 수 없다. [self::T_FOOTMAN=>1.2], - ['성벽입니다.','생성할 수 없습니다.'] + ['성벽입니다.','생성할 수 없습니다.'], + null, null ], [ @@ -29,7 +30,8 @@ class GameUnitConst extends GameUnitConstBase 0, null, null, 0, [self::T_ARCHER=>1.2, self::T_CAVALRY=>0.8, self::T_SIEGE=>1.2], [self::T_ARCHER=>0.8, self::T_CAVALRY=>1.2, self::T_SIEGE=>0.8], - ["표준적인 보병입니다. 보병은 방어특화입니다."], + ["표준적인 보병입니다. 보병은 방어특화입니다."], + null, null ], [ 217002, self::T_FOOTMAN, '마물병', @@ -37,7 +39,8 @@ class GameUnitConst extends GameUnitConstBase 0, null, ["호넷 마인령","케이브리스 마인령"], 0, [self::T_ARCHER=>1.2, self::T_CAVALRY=>0.8, self::T_SIEGE=>1.2], [self::T_ARCHER=>0.8, self::T_CAVALRY=>1.2, self::T_SIEGE=>0.8], - ["마군 지역 기본병종입니다. 조금더 강하지만 쌀을 많이 소비합니다."], + ["마군 지역 기본병종입니다. 조금더 강하지만 쌀을 많이 소비합니다."], + null, null ], [ 217003, self::T_FOOTMAN, '중장보병', @@ -45,7 +48,8 @@ class GameUnitConst extends GameUnitConstBase 1000, null, ["헬만 동부"], 0, [self::T_ARCHER=>1.2, self::T_CAVALRY=>0.8, self::T_SIEGE=>1.2], [self::T_ARCHER=>0.8, self::T_CAVALRY=>1.2, self::T_SIEGE=>0.8], - ["헬만 특유의 견고한 보병입니다."], + ["헬만 특유의 견고한 보병입니다."], + null, null ], [ 217004, self::T_FOOTMAN, '흑의 군 보병', @@ -53,7 +57,8 @@ class GameUnitConst extends GameUnitConstBase 1000, null, ["리자스 남부","리자스 북부"], 0, [self::T_ARCHER=>1.2, self::T_CAVALRY=>0.8, self::T_SIEGE=>1.2], [self::T_ARCHER=>0.8, self::T_CAVALRY=>1.2, self::T_SIEGE=>0.8], - ["흑의 군 전통의 체계적인 훈련으로 공격력을 보완했습니다."], + ["흑의 군 전통의 체계적인 훈련으로 공격력을 보완했습니다."], + null, null ], [ 217005, self::T_FOOTMAN, '용병', @@ -61,7 +66,8 @@ class GameUnitConst extends GameUnitConstBase 1000, null, ["자유도시 동부"], 0, [self::T_ARCHER=>1.2, self::T_CAVALRY=>0.8, self::T_SIEGE=>1.2], [self::T_ARCHER=>0.8, self::T_CAVALRY=>1.2, self::T_SIEGE=>0.8], - ["일반 보병보다 비싸지만 받은 만큼은 일해줍니다."], + ["일반 보병보다 비싸지만 받은 만큼은 일해줍니다."], + null, null ], [ 217006, self::T_FOOTMAN, '사메라이', @@ -69,7 +75,8 @@ class GameUnitConst extends GameUnitConstBase 1000, null, ["제스 남부"], 0, [self::T_ARCHER=>1.2, self::T_CAVALRY=>0.8, self::T_SIEGE=>1.2], [self::T_ARCHER=>0.8, self::T_CAVALRY=>1.2, self::T_SIEGE=>0.8], - ["검으로 난무를 가하는 몬스터 보병입니다."], + ["검으로 난무를 가하는 몬스터 보병입니다."], + null, null ], [ 217007, self::T_FOOTMAN, '템플나이트병', @@ -77,7 +84,8 @@ class GameUnitConst extends GameUnitConstBase 1000, null, ["AL교"], 0, [self::T_ARCHER=>1.2, self::T_CAVALRY=>0.8, self::T_SIEGE=>1.2], [self::T_ARCHER=>0.8, self::T_CAVALRY=>1.2, self::T_SIEGE=>0.8], - ["공격을 포기하고 오직 방어에만 집중합니다."], + ["공격을 포기하고 오직 방어에만 집중합니다."], + null ], [ 217008, self::T_FOOTMAN, '메이드병', @@ -85,7 +93,8 @@ class GameUnitConst extends GameUnitConstBase 2000, ["메이드의 묘지"], null, 0, [self::T_ARCHER=>1.2, self::T_CAVALRY=>0.8, self::T_SIEGE=>1.2], [self::T_ARCHER=>0.8, self::T_CAVALRY=>1.2, self::T_SIEGE=>0.8], - ["켓셀링크 휘하의 날렵한 전투메이드입니다."], + ["켓셀링크 휘하의 날렵한 전투메이드입니다."], + null, null ], [ 217009, self::T_FOOTMAN, '요괴병', @@ -93,7 +102,8 @@ class GameUnitConst extends GameUnitConstBase 2000, ["오슈"], null, 0, [self::T_ARCHER=>1.2, self::T_CAVALRY=>0.8, self::T_SIEGE=>1.2], [self::T_ARCHER=>0.8, self::T_CAVALRY=>1.2, self::T_SIEGE=>0.8], - ["단단한 육체를 믿고 적진을 돌파합니다."], + ["단단한 육체를 믿고 적진을 돌파합니다."], + null, null ], [ 217010, self::T_FOOTMAN, '리자스 친위병', @@ -101,7 +111,8 @@ class GameUnitConst extends GameUnitConstBase 3000, ["리자스성"], null, 0, [self::T_ARCHER=>1.2, self::T_CAVALRY=>0.8, self::T_SIEGE=>1.2], [self::T_ARCHER=>0.8, self::T_CAVALRY=>1.2, self::T_SIEGE=>0.8], - ["여왕을 수호하는 리자스 최강의 보병 정예보병입니다."], + ["여왕을 수호하는 리자스 최강의 보병 정예보병입니다."], + null, null ], [ 217011, self::T_FOOTMAN, '케이브리스 마물병', @@ -109,7 +120,8 @@ class GameUnitConst extends GameUnitConstBase 3000, ["케이브리스의 성"], null, 0, [self::T_ARCHER=>1.2, self::T_CAVALRY=>0.8, self::T_SIEGE=>1.2], [self::T_ARCHER=>0.8, self::T_CAVALRY=>1.2, self::T_SIEGE=>0.8], - ["케이브리스 직속의 마물 정예 전투보병입니다."], + ["케이브리스 직속의 마물 정예 전투보병입니다."], + null, null ], [ 217012, self::T_FOOTMAN, '투신', @@ -117,7 +129,8 @@ class GameUnitConst extends GameUnitConstBase 5000, ["투신도시"], null, 0, [self::T_ARCHER=>1.2, self::T_CAVALRY=>0.8, self::T_SIEGE=>1.2], [self::T_ARCHER=>0.8, self::T_CAVALRY=>1.2, self::T_SIEGE=>0.8], - ["성마교단 유적에서 발굴된 사상 최강의 보병입니다."], + ["성마교단 유적에서 발굴된 사상 최강의 보병입니다."], + null, null ], [ @@ -126,7 +139,8 @@ class GameUnitConst extends GameUnitConstBase 0, null, null, 0, [ self::T_FOOTMAN=>0.8, self::T_CAVALRY=>1.2, self::T_SIEGE=>1.2], [ self::T_FOOTMAN=>1.2, self::T_CAVALRY=>0.8, self::T_SIEGE=>0.8], - ["표준적인 궁병입니다. 궁병은 회피특화입니다."], + ["표준적인 궁병입니다. 궁병은 회피특화입니다."], + null, null ], [ 217102, self::T_ARCHER, '투척마물병', @@ -134,7 +148,8 @@ class GameUnitConst extends GameUnitConstBase 1000, null, ["호넷 마인령"], 0, [ self::T_FOOTMAN=>0.8, self::T_CAVALRY=>1.2, self::T_SIEGE=>1.2], [ self::T_FOOTMAN=>1.2, self::T_CAVALRY=>0.8, self::T_SIEGE=>0.8], - ["날렵함을 포기하고 도끼를 투척합니다."], + ["날렵함을 포기하고 도끼를 투척합니다."], + null, null ], [ 217103, self::T_ARCHER, '백의 군 궁병', @@ -142,7 +157,8 @@ class GameUnitConst extends GameUnitConstBase 1000, null, ["리자스 남부"], 0, [ self::T_FOOTMAN=>0.8, self::T_CAVALRY=>1.2, self::T_SIEGE=>1.2], [ self::T_FOOTMAN=>1.2, self::T_CAVALRY=>0.8, self::T_SIEGE=>0.8], - ["전략을 활용하여 치고 빠지기에 능합니다."], + ["전략을 활용하여 치고 빠지기에 능합니다."], + null, null ], [ 217104, self::T_ARCHER, '벌레술사병', @@ -150,7 +166,8 @@ class GameUnitConst extends GameUnitConstBase 2000, ["호박성"], null, 0, [ self::T_FOOTMAN=>0.8, self::T_CAVALRY=>1.2, self::T_SIEGE=>1.2], [ self::T_FOOTMAN=>1.2, self::T_CAVALRY=>0.8, self::T_SIEGE=>0.8], - ["벌레들을 부려 몸을 보호하는 궁병입니다."], + ["벌레들을 부려 몸을 보호하는 궁병입니다."], + null, null ], [ 217105, self::T_ARCHER, '저격암살병', @@ -158,7 +175,8 @@ class GameUnitConst extends GameUnitConstBase 2000, ["블라디보스토크"], null, 0, [ self::T_FOOTMAN=>0.8, self::T_CAVALRY=>1.2, self::T_SIEGE=>1.2], [ self::T_FOOTMAN=>1.2, self::T_CAVALRY=>0.8, self::T_SIEGE=>0.8], - ["독을 바른 탄환으로 적의 목숨을 앗아갑니다."], + ["독을 바른 탄환으로 적의 목숨을 앗아갑니다."], + null, null ], [ 217106, self::T_ARCHER, '호루스병', @@ -166,7 +184,8 @@ class GameUnitConst extends GameUnitConstBase 2000, ["거대전함"], null, 0, [ self::T_FOOTMAN=>0.8, self::T_CAVALRY=>1.2, self::T_SIEGE=>1.2], [ self::T_FOOTMAN=>1.2, self::T_CAVALRY=>0.8, self::T_SIEGE=>0.8], - ["민첩하게 파고드는 호루스족 궁병입니다."], + ["민첩하게 파고드는 호루스족 궁병입니다."], + null, null ], [ 217107, self::T_ARCHER, '튤립병', @@ -174,7 +193,8 @@ class GameUnitConst extends GameUnitConstBase 3000, ["커스텀"], null, 0, [ self::T_FOOTMAN=>0.8, self::T_CAVALRY=>1.2, self::T_SIEGE=>1.2], [ self::T_FOOTMAN=>1.2, self::T_CAVALRY=>0.8, self::T_SIEGE=>0.8], - ["최첨단병기 튤립으로 적을 폭격합니다."], + ["최첨단병기 튤립으로 적을 폭격합니다."], + null, null ], [ 217108, self::T_ARCHER, '아이스플레임 궁병', @@ -182,7 +202,8 @@ class GameUnitConst extends GameUnitConstBase 3000, ["라그나로크 아크"], null, 0, [ self::T_FOOTMAN=>0.8, self::T_CAVALRY=>1.2, self::T_SIEGE=>1.2], [ self::T_FOOTMAN=>1.2, self::T_CAVALRY=>0.8, self::T_SIEGE=>0.8], - ["혁명을 성공으로 이끈 정예 게릴라 궁병입니다."], + ["혁명을 성공으로 이끈 정예 게릴라 궁병입니다."], + null, null ], [ 217109, self::T_ARCHER, '카라 궁병', @@ -190,7 +211,8 @@ class GameUnitConst extends GameUnitConstBase 5000, ["펜실 카우"], null, 0, [ self::T_FOOTMAN=>0.8, self::T_CAVALRY=>1.2, self::T_SIEGE=>1.2], [ self::T_FOOTMAN=>1.2, self::T_CAVALRY=>0.8, self::T_SIEGE=>0.8], - ["선조의 힘을 이어받은 최강의 카라 정예 궁병입니다."], + ["선조의 힘을 이어받은 최강의 카라 정예 궁병입니다."], + null, null ], [ @@ -199,7 +221,8 @@ class GameUnitConst extends GameUnitConstBase 0, null, null, 0, [ self::T_FOOTMAN=>1.2, self::T_ARCHER=>0.8, self::T_SIEGE=>1.2], [ self::T_FOOTMAN=>0.8, self::T_ARCHER=>1.2, self::T_SIEGE=>0.8], - ["표준적인 기동병입니다. 기동병은 공격특화입니다."], + ["표준적인 기동병입니다. 기동병은 공격특화입니다."], + null, null ], [ 217202, self::T_CAVALRY, '하치온나', @@ -207,7 +230,8 @@ class GameUnitConst extends GameUnitConstBase 1000, null, ["자유도시 서부"], 0, [ self::T_FOOTMAN=>1.2, self::T_ARCHER=>0.8, self::T_SIEGE=>1.2], [ self::T_FOOTMAN=>0.8, self::T_ARCHER=>1.2, self::T_SIEGE=>0.8], - ["작은 몸으로 회피하며 따끔한 일격을 먹이는 몬스터 기동병입니다."], + ["작은 몸으로 회피하며 따끔한 일격을 먹이는 몬스터 기동병입니다."], + null, null ], [ 217203, self::T_CAVALRY, '적의 군 기동병', @@ -215,7 +239,8 @@ class GameUnitConst extends GameUnitConstBase 1000, null, ["리자스 북부"], 0, [ self::T_FOOTMAN=>1.2, self::T_ARCHER=>0.8, self::T_SIEGE=>1.2], [ self::T_FOOTMAN=>0.8, self::T_ARCHER=>1.2, self::T_SIEGE=>0.8], - ["리자스군의 자랑인 기동부대입니다."], + ["리자스군의 자랑인 기동부대입니다."], + null, null ], [ 217204, self::T_CAVALRY, '안드로이드 기동병', @@ -223,7 +248,8 @@ class GameUnitConst extends GameUnitConstBase 2000, ["악의 탑"], null, 0, [ self::T_FOOTMAN=>1.2, self::T_ARCHER=>0.8, self::T_SIEGE=>1.2], [ self::T_FOOTMAN=>0.8, self::T_ARCHER=>1.2, self::T_SIEGE=>0.8], - ["파이아르가 개발한 최첨단 안드로이드 기동병입니다."], + ["파이아르가 개발한 최첨단 안드로이드 기동병입니다."], + null, null ], [ 217205, self::T_CAVALRY, '파란쵸 기동병', @@ -231,7 +257,8 @@ class GameUnitConst extends GameUnitConstBase 2000, ["파란쵸 왕국"], null, 0, [ self::T_FOOTMAN=>1.2, self::T_ARCHER=>0.8, self::T_SIEGE=>1.2], [ self::T_FOOTMAN=>0.8, self::T_ARCHER=>1.2, self::T_SIEGE=>0.8], - ["적진을 일점돌파하는 파란쵸왕국의 돌격 기동병입니다. "], + ["적진을 일점돌파하는 파란쵸왕국의 돌격 기동병입니다. "], + null, null ], [ 217206, self::T_CAVALRY, '비행마물병', @@ -239,7 +266,8 @@ class GameUnitConst extends GameUnitConstBase 2000, ["죽음의 대지"], null, 0, [ self::T_FOOTMAN=>1.2, self::T_ARCHER=>0.8, self::T_SIEGE=>1.2], [ self::T_FOOTMAN=>0.8, self::T_ARCHER=>1.2, self::T_SIEGE=>0.8], - ["비행마물에 올라탄 기동마물병입니다."], + ["비행마물에 올라탄 기동마물병입니다."], + null, null ], [ 217207, self::T_CAVALRY, '마물조련사병', @@ -247,7 +275,8 @@ class GameUnitConst extends GameUnitConstBase 3000, ["랑그바우"], null, 0, [ self::T_FOOTMAN=>1.2, self::T_ARCHER=>0.8, self::T_SIEGE=>1.2], [ self::T_FOOTMAN=>0.8, self::T_ARCHER=>1.2, self::T_SIEGE=>0.8], - ["무시무시한 몬스터에 올라타서 싸우는 극강의 기동병입니다."], + ["무시무시한 몬스터에 올라타서 싸우는 극강의 기동병입니다."], + null, null ], [ 217208, self::T_CAVALRY, '기마병', @@ -255,7 +284,8 @@ class GameUnitConst extends GameUnitConstBase 3000, ["오와리"], null, 0, [ self::T_FOOTMAN=>1.2, self::T_ARCHER=>0.8, self::T_SIEGE=>1.2], [ self::T_FOOTMAN=>0.8, self::T_ARCHER=>1.2, self::T_SIEGE=>0.8], - ["JAPAN 특유의 기마에 올라타 적을 짓밟는 기동병입니다."], + ["JAPAN 특유의 기마에 올라타 적을 짓밟는 기동병입니다."], + null, null ], [ 217209, self::T_CAVALRY, '엔젤나이트', @@ -263,7 +293,8 @@ class GameUnitConst extends GameUnitConstBase 5000, ["떨어진 궁도"], null, 0, [ self::T_FOOTMAN=>1.2, self::T_ARCHER=>0.8, self::T_SIEGE=>1.2], [ self::T_FOOTMAN=>0.8, self::T_ARCHER=>1.2, self::T_SIEGE=>0.8], - ["신의 명령으로 파멸을 내리기 위해 강림했습니다."], + ["신의 명령으로 파멸을 내리기 위해 강림했습니다."], + null, null ], [ @@ -272,7 +303,8 @@ class GameUnitConst extends GameUnitConstBase 0, null, null, 0, [self::T_SIEGE=>1.2], [self::T_SIEGE=>0.8], - ["마법을 사용하는 병종입니다."], + ["마법을 사용하는 병종입니다."], + null, null ], [ 217302, self::T_WIZARD, '마물 마법병', @@ -280,7 +312,8 @@ class GameUnitConst extends GameUnitConstBase 0, null, ["호넷 마인령","케이브리스 마인령"], 0, [self::T_SIEGE=>1.2], [self::T_SIEGE=>0.8], - ["마군 지역 기본병종입니다. 조금더 강하지만 금을 많이 소비합니다."], + ["마군 지역 기본병종입니다. 조금더 강하지만 금을 많이 소비합니다."], + null, null ], [ 217303, self::T_WIZARD, '카라 마법병', @@ -288,7 +321,8 @@ class GameUnitConst extends GameUnitConstBase 1000, null, ["카라의 숲"], 0, [self::T_SIEGE=>1.2], [self::T_SIEGE=>0.8], - ["신속히 움직이며 카라의 저주로 적을 공격합니다."], + ["신속히 움직이며 카라의 저주로 적을 공격합니다."], + null, null ], [ 217304, self::T_WIZARD, '제스 마법병', @@ -296,7 +330,8 @@ class GameUnitConst extends GameUnitConstBase 1000, null, ["제스 북부"], 0, [self::T_SIEGE=>1.2], [self::T_SIEGE=>0.8], - ["마법국가 제스의 전통있는 마법병입니다."], + ["마법국가 제스의 전통있는 마법병입니다."], + null, null ], [ 217305, self::T_WIZARD, '무녀', @@ -304,7 +339,8 @@ class GameUnitConst extends GameUnitConstBase 1000, null, ["JAPAN"], 0, [self::T_SIEGE=>1.2], [self::T_SIEGE=>0.8], - ["신마법과 함께 신통한 춤으로 활력을 불어넣는 마법병입니다."], + ["신마법과 함께 신통한 춤으로 활력을 불어넣는 마법병입니다."], + null, null ], [ 217306, self::T_WIZARD, '프로즌', @@ -312,7 +348,8 @@ class GameUnitConst extends GameUnitConstBase 1000, null, ["헬만 서부"], 0, [self::T_SIEGE=>1.2], [self::T_SIEGE=>0.8], - ["백병전에 불리한 연약한 몸으로 마법 사용에 집중하는 몬스터입니다."], + ["백병전에 불리한 연약한 몸으로 마법 사용에 집중하는 몬스터입니다."], + null, null ], [ 217307, self::T_WIZARD, '마소한 마법병', @@ -320,7 +357,8 @@ class GameUnitConst extends GameUnitConstBase 1000, null, ["케이브리스 마인령"], 0, [self::T_SIEGE=>1.2], [self::T_SIEGE=>0.8], - ["로브를 여러겹 둘러입은 마물마법병입니다. 직접 전투보단 마법에 집중합니다."], + ["로브를 여러겹 둘러입은 마물마법병입니다. 직접 전투보단 마법에 집중합니다."], + null, null ], [ 217308, self::T_WIZARD, '신관병', @@ -328,7 +366,8 @@ class GameUnitConst extends GameUnitConstBase 2000, ["카이즈"], null, 0, [self::T_SIEGE=>1.2], [self::T_SIEGE=>0.8], - ["AL교의 전투신관입니다. 몸을 보호하는 성스러운 마법을 사용합니다."], + ["AL교의 전투신관입니다. 몸을 보호하는 성스러운 마법을 사용합니다."], + null, null ], [ 217309, self::T_WIZARD, '중장마법병', @@ -336,7 +375,8 @@ class GameUnitConst extends GameUnitConstBase 3000, ["로제스그라드"], null, 0, [self::T_SIEGE=>1.2], [self::T_SIEGE=>0.8], - ["두터운 로브를 입고 불길한 주문을 읊습니다."], + ["두터운 로브를 입고 불길한 주문을 읊습니다."], + null, null ], [ 217310, self::T_WIZARD, '악마병', @@ -344,7 +384,8 @@ class GameUnitConst extends GameUnitConstBase 3000, ["올드제스"], null, 0, [self::T_SIEGE=>1.2], [self::T_SIEGE=>0.8], - ["고대 제스 왕가의 계약에 따라 소환된 흑마법병입니다."], + ["고대 제스 왕가의 계약에 따라 소환된 흑마법병입니다."], + null, null ], [ 217311, self::T_WIZARD, '호넷 마물병', @@ -352,7 +393,8 @@ class GameUnitConst extends GameUnitConstBase 3000, ["구 마왕성"], null, 0, [self::T_SIEGE=>1.2], [self::T_SIEGE=>0.8], - ["호넷 직속의 최강 마물 마법병입니다."], + ["호넷 직속의 최강 마물 마법병입니다."], + null, null ], [ 217312, self::T_WIZARD, 'Z가디언', @@ -360,7 +402,8 @@ class GameUnitConst extends GameUnitConstBase 5000, ["라그나로크 아크"], null, 0, [self::T_SIEGE=>1.2], [self::T_SIEGE=>0.8], - ["제스의 기술력이 집약된 최고의 마법병기입니다."], + ["제스의 기술력이 집약된 최고의 마법병기입니다."], + null, null ], [ @@ -369,7 +412,8 @@ class GameUnitConst extends GameUnitConstBase 0, null, null, 3, [ self::T_FOOTMAN=>0.8, self::T_ARCHER=>0.8, self::T_CAVALRY=>0.8, self::T_WIZARD=>0.8, self::T_CASTLE=>1.8], [ self::T_FOOTMAN=>1.2, self::T_ARCHER=>1.2, self::T_CAVALRY=>1.2, self::T_WIZARD=>1.2], - ["높은 구조물 위에서 공격합니다."], + ["높은 구조물 위에서 공격합니다."], + ['che_성벽부상무효'], null ], [ 217402, self::T_SIEGE, '충차', @@ -377,7 +421,8 @@ class GameUnitConst extends GameUnitConstBase 1000, null, null, 3, [ self::T_FOOTMAN=>0.8, self::T_ARCHER=>0.8, self::T_CAVALRY=>0.8, self::T_WIZARD=>0.8, self::T_CASTLE=>2.4], [ self::T_FOOTMAN=>1.2, self::T_ARCHER=>1.2, self::T_CAVALRY=>1.2, self::T_WIZARD=>1.2], - ["엄청난 위력으로 성벽을 부수어버립니다."], + ["엄청난 위력으로 성벽을 부수어버립니다."], + ['che_성벽부상무효'], null ], [ 217403, self::T_SIEGE, '튤립3호', @@ -385,7 +430,8 @@ class GameUnitConst extends GameUnitConstBase 5000, ["커스텀"], null, 0, [ ], [ ], - ["파괴적인 위력과 정말 파괴적인 비용을 자랑하는 전차입니다. "], + ["파괴적인 위력과 정말 파괴적인 비용을 자랑하는 전차입니다. "], + ['che_성벽부상무효'], null ], diff --git a/hwe/scenario/unit/siegetank.php b/hwe/scenario/unit/siegetank.php index da191770..cb9bfb33 100644 --- a/hwe/scenario/unit/siegetank.php +++ b/hwe/scenario/unit/siegetank.php @@ -12,7 +12,8 @@ class GameUnitConst extends GameUnitConstBase 999999, null, null, 999999, [],//성벽은 공격할 수 없다. [self::T_FOOTMAN=>1.2], - ['성벽입니다.','생성할 수 없습니다.'] + ['성벽입니다.','생성할 수 없습니다.'], + null, null ], [ 0, self::T_FOOTMAN, '보병', @@ -20,7 +21,8 @@ class GameUnitConst extends GameUnitConstBase 0, null, null, 0, [self::T_ARCHER=>1.2, self::T_CAVALRY=>0.8], [self::T_ARCHER=>0.8, self::T_CAVALRY=>1.2], - ['표준적인 보병입니다.','보병은 방어특화이며, 상대가 회피하기 어렵습니다.'] + ['표준적인 보병입니다.','보병은 방어특화이며, 상대가 회피하기 어렵습니다.'], + null, null ], [ @@ -29,7 +31,8 @@ class GameUnitConst extends GameUnitConstBase 0, null, null, 0, [self::T_CAVALRY=>1.2, self::T_FOOTMAN=>0.8], [self::T_CAVALRY=>0.8, self::T_FOOTMAN=>1.2], - ['표준적인 궁병입니다.','궁병은 회피특화입니다.'] + ['표준적인 궁병입니다.','궁병은 회피특화입니다.'], + null, null ], [ @@ -38,7 +41,8 @@ class GameUnitConst extends GameUnitConstBase 0, null, null, 0, [self::T_FOOTMAN=>1.2, self::T_ARCHER=>0.8], [self::T_FOOTMAN=>0.8, self::T_ARCHER=>1.2], - ['표준적인 기병입니다.','기병은 공격특화입니다.'] + ['표준적인 기병입니다.','기병은 공격특화입니다.'], + null, null ], [ @@ -47,7 +51,8 @@ class GameUnitConst extends GameUnitConstBase 0, null, null, 0, [], [], - ['계략을 사용하는 병종입니다.'] + ['계략을 사용하는 병종입니다.'], + null, null ], [ 35, self::T_WIZARD, '남귀병', @@ -55,7 +60,8 @@ class GameUnitConst extends GameUnitConstBase 1000, null, null, 0, [], [], - ['전투를 포기하고 계략에 몰두합니다.'] + ['전투를 포기하고 계략에 몰두합니다.'], + null, null ], [ @@ -64,7 +70,8 @@ class GameUnitConst extends GameUnitConstBase 0, null, null, 0, [self::T_CASTLE=>1.8], [], - ['높은 구조물 위에서 공격합니다.'] + ['높은 구조물 위에서 공격합니다.'], + ['che_성벽부상무효'], null ], [ 41, self::T_SIEGE, '충차', @@ -72,7 +79,8 @@ class GameUnitConst extends GameUnitConstBase 1000, null, null, 3, [self::T_CASTLE=>2.4], [], - ['엄청난 위력으로 성벽을 부수어버립니다.'] + ['엄청난 위력으로 성벽을 부수어버립니다.'], + ['che_성벽부상무효'], null ], [ 42, self::T_SIEGE, '벽력거', @@ -80,7 +88,8 @@ class GameUnitConst extends GameUnitConstBase 3000, ['업'], null, 0, [self::T_CASTLE=>1.8], [], - ['상대에게 돌덩이를 날립니다.'] + ['상대에게 돌덩이를 날립니다.'], + ['che_성벽부상무효'], null ], [ 43, self::T_SIEGE, '목우', @@ -88,7 +97,8 @@ class GameUnitConst extends GameUnitConstBase 3000, ['성도'], null, 0, [], [], - ['상대를 저지하는 특수병기입니다.'] + ['상대를 저지하는 특수병기입니다.'], + ['che_성벽부상무효'], null ] ]; } \ No newline at end of file