Starsector API
Loading...
Searching...
No Matches
MissionFleetStopPursuingPlayer.java
Go to the documentation of this file.
1package com.fs.starfarer.api.impl.campaign.missions.hub;
2
3import java.util.HashSet;
4import java.util.List;
5import java.util.Set;
6
7import com.fs.starfarer.api.EveryFrameScript;
8import com.fs.starfarer.api.Global;
9import com.fs.starfarer.api.campaign.CampaignFleetAPI;
10import com.fs.starfarer.api.campaign.FleetAssignment;
11import com.fs.starfarer.api.campaign.ai.FleetAssignmentDataAPI;
12import com.fs.starfarer.api.campaign.ai.ModularFleetAIAPI;
13import com.fs.starfarer.api.impl.campaign.ids.MemFlags;
14import com.fs.starfarer.api.util.Misc;
15
17
20 protected Set<Object> stages = new HashSet<Object>();
21 protected boolean done = false;
22
23
25 this.mission = mission;
26 this.fleet = fleet;
27 this.stages.addAll(stages);
28 }
29
30 public void advance(float amount) {
31 if (done) return;
32 Object stage = mission.getCurrentStage();
33
34 if (!stages.contains(stage)) {
35 if (fleet.getAI() instanceof ModularFleetAIAPI) {
37 if (ai.getAssignmentModule() != null) {
39 if (curr != null && curr.getTarget() == Global.getSector().getPlayerFleet() &&
43 }
44 }
45 }
46 if (fleet.getAI() != null && fleet.getAI().getAssignmentsCopy().isEmpty()) {
48 }
50 mission.getReason(), false, -1f);
51 done = true;
52 }
53
54 }
55
56 public boolean isDone() {
57 return done;
58 }
59
60 public boolean runWhilePaused() {
61 return false;
62 }
63
64
65}
66
67
68
69
70
71
72
73
74
75
static SectorAPI getSector()
Definition Global.java:65
MissionFleetStopPursuingPlayer(CampaignFleetAPI fleet, BaseHubMission mission, List< Object > stages)
static void giveStandardReturnToSourceAssignments(CampaignFleetAPI fleet)
Definition Misc.java:3836
static boolean setFlagWithReason(MemoryAPI memory, String flagKey, String reason, boolean value, float expire)
Definition Misc.java:1439
List< FleetAssignmentDataAPI > getAssignmentsCopy()