Skip to content

Commit cfd3e92

Browse files
author
isturdy
committed
Refactor hullmod checking
1 parent f276e15 commit cfd3e92

File tree

1 file changed

+11
-25
lines changed

1 file changed

+11
-25
lines changed

src/main/kotlin/AutomaticOrdersCombatPlugin.kt

Lines changed: 11 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -65,36 +65,22 @@ class AutomaticOrdersCombatPlugin : BaseEveryFrameCombatPlugin() {
6565
val ship = fleetManager.getShipFor(member)
6666
if (!ship.isAlive) continue
6767

68-
val needsInitialOrders = shipsGivenInitialOrders.add(ship.id)
69-
val needsInitialAiOrders = ship.shipAI == null && shipsGivenInitialAiOrders.add(ship.id)
70-
var directRetreat = false
71-
var retreatNoMissiles = false
72-
for (hullMod in ship.variant.hullMods) {
73-
if (needsInitialOrders) {
74-
when (hullMod) {
75-
EscortLight().id -> orderEscort(ship, CombatAssignmentType.LIGHT_ESCORT)
76-
EscortMedium().id -> orderEscort(ship, CombatAssignmentType.LIGHT_ESCORT)
77-
EscortHeavy().id -> orderEscort(ship, CombatAssignmentType.LIGHT_ESCORT)
78-
}
79-
}
80-
if (needsInitialAiOrders && hullMod == OrderSearchAndDestroy.ID) {
81-
orderSearchAndDestroy(ship)
82-
}
68+
val hullMods = ship.variant.hullMods
8369

84-
if (ship.shipAI == null) continue
85-
when(hullMod) {
86-
RetreatNoMissiles.ID -> {
87-
retreatNoMissiles = true
88-
}
89-
DirectRetreat.ID -> {
90-
directRetreat = true
91-
}
92-
}
70+
if (shipsGivenInitialOrders.add(ship.id)) {
71+
if (EscortLight().id in hullMods) orderEscort(ship, CombatAssignmentType.LIGHT_ESCORT)
72+
if (EscortMedium().id in hullMods) orderEscort(ship, CombatAssignmentType.MEDIUM_ESCORT)
73+
if (EscortHeavy().id in hullMods) orderEscort(ship, CombatAssignmentType.HEAVY_ESCORT)
9374
}
9475

9576
if (ship.shipAI == null) continue
9677

97-
if (retreatNoMissiles && outOfMissiles(ship)) {
78+
if (shipsGivenInitialAiOrders.add(ship.id)) {
79+
if (OrderSearchAndDestroy.ID in hullMods) orderSearchAndDestroy(ship)
80+
}
81+
82+
val directRetreat = DirectRetreat.ID in hullMods
83+
if (RetreatNoMissiles.ID in hullMods && outOfMissiles(ship)) {
9884
orderRetreat(ship, RetreatReason.MISSILES, CR_COLOR, directRetreat)
9985
}
10086

0 commit comments

Comments
 (0)