game: 전투순위보정에서 동일병종이면 더 잘 나오도록
This commit is contained in:
@@ -14,7 +14,7 @@ class g65_전투순위보정 implements iAction
|
|||||||
{
|
{
|
||||||
//방어자 입장에서 coef가 높다면 전투순위를 높인다.
|
//방어자 입장에서 coef가 높다면 전투순위를 높인다.
|
||||||
if ($statName == 'battleOrder') {
|
if ($statName == 'battleOrder') {
|
||||||
if($aux === null) throw new \RuntimeException('전투순위보정에 필요한 aux가 없습니다.');
|
if ($aux === null) throw new \RuntimeException('전투순위보정에 필요한 aux가 없습니다.');
|
||||||
/** @var General */
|
/** @var General */
|
||||||
$attacker = $aux['attacker'];
|
$attacker = $aux['attacker'];
|
||||||
$defenderCrewType = $defender->getCrewTypeObj();
|
$defenderCrewType = $defender->getCrewTypeObj();
|
||||||
@@ -23,10 +23,12 @@ class g65_전투순위보정 implements iAction
|
|||||||
$attackerCoef = $attackerCrewType->getAttackCoef($defenderCrewType) * $defenderCrewType->getDefenceCoef($attackerCrewType);
|
$attackerCoef = $attackerCrewType->getAttackCoef($defenderCrewType) * $defenderCrewType->getDefenceCoef($attackerCrewType);
|
||||||
$defenderCoef = $defenderCrewType->getAttackCoef($attackerCrewType) * $attackerCrewType->getDefenceCoef($defenderCrewType);
|
$defenderCoef = $defenderCrewType->getAttackCoef($attackerCrewType) * $attackerCrewType->getDefenceCoef($defenderCrewType);
|
||||||
|
|
||||||
if($attackerCoef > $defenderCoef){
|
if ($attackerCoef > $defenderCoef) {
|
||||||
return $value * 3;
|
return $value * 4;
|
||||||
} else if($attackerCoef < $defenderCoef){
|
} else if ($attackerCoef < $defenderCoef) {
|
||||||
return $value / 3;
|
return $value / 2;
|
||||||
|
} else if ($attackerCrewType->armType == $defenderCrewType->armType) {
|
||||||
|
return $value * 2;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return $value;
|
return $value;
|
||||||
@@ -36,7 +38,7 @@ class g65_전투순위보정 implements iAction
|
|||||||
{
|
{
|
||||||
//공격자 입장에서 coef가 높다면 전투순위를 높인다.
|
//공격자 입장에서 coef가 높다면 전투순위를 높인다.
|
||||||
if ($statName == 'battleOrder') {
|
if ($statName == 'battleOrder') {
|
||||||
if($aux === null) throw new \RuntimeException('전투순위보정에 필요한 aux가 없습니다.');
|
if ($aux === null) throw new \RuntimeException('전투순위보정에 필요한 aux가 없습니다.');
|
||||||
/** @var General */
|
/** @var General */
|
||||||
$attacker = $aux['attacker'];
|
$attacker = $aux['attacker'];
|
||||||
$defenderCrewType = $defender->getCrewTypeObj();
|
$defenderCrewType = $defender->getCrewTypeObj();
|
||||||
@@ -45,10 +47,12 @@ class g65_전투순위보정 implements iAction
|
|||||||
$attackerCoef = $attackerCrewType->getAttackCoef($defenderCrewType) * $defenderCrewType->getDefenceCoef($attackerCrewType);
|
$attackerCoef = $attackerCrewType->getAttackCoef($defenderCrewType) * $defenderCrewType->getDefenceCoef($attackerCrewType);
|
||||||
$defenderCoef = $defenderCrewType->getAttackCoef($attackerCrewType) * $attackerCrewType->getDefenceCoef($defenderCrewType);
|
$defenderCoef = $defenderCrewType->getAttackCoef($attackerCrewType) * $attackerCrewType->getDefenceCoef($defenderCrewType);
|
||||||
|
|
||||||
if($attackerCoef < $defenderCoef){
|
if ($attackerCoef < $defenderCoef) {
|
||||||
return $value * 3;
|
return $value * 4;
|
||||||
} else if($attackerCoef > $defenderCoef){
|
} else if ($attackerCoef > $defenderCoef) {
|
||||||
return $value / 3;
|
return $value / 2;
|
||||||
|
} else if ($attackerCrewType->armType == $defenderCrewType->armType) {
|
||||||
|
return $value * 2;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return $value;
|
return $value;
|
||||||
|
|||||||
Reference in New Issue
Block a user