Starsector API
Loading...
Searching...
No Matches
AbortWait.java
Go to the documentation of this file.
1package com.fs.starfarer.api.impl.campaign.rulecmd;
2
3import java.util.List;
4import java.util.Map;
5
6import com.fs.starfarer.api.Global;
7import com.fs.starfarer.api.campaign.InteractionDialogAPI;
8import com.fs.starfarer.api.campaign.rules.MemoryAPI;
9import com.fs.starfarer.api.util.Misc.Token;
10import com.fs.starfarer.api.util.Misc.VarAndMemory;
11
16public class AbortWait extends BaseCommandPlugin {
17
18 public boolean execute(String ruleId, InteractionDialogAPI dialog, List<Token> params, Map<String, MemoryAPI> memoryMap) {
19 VarAndMemory handle = params.get(0).getVarNameAndMemory(memoryMap);
20
21 if (handle.memory.contains(handle.name)) {
22 Wait wait = (Wait) handle.memory.get(handle.name);
23
24 Global.getSector().removeScript(wait.getWaitScript());
25 Global.getSector().removeScript(wait.getLeashScript());
26 wait.getIndicator().getContainingLocation().removeEntity(wait.getIndicator());
27
28 wait.getFinished().memory.unset(wait.getFinished().name);
29 wait.getInterrupted().memory.unset(wait.getInterrupted().name);
30 wait.getInProgress().memory.unset(wait.getInProgress().name);
31
32 handle.memory.unset(handle.name);
33 }
34
35 return true;
36 }
37
38}
static SectorAPI getSector()
Definition Global.java:59
boolean execute(String ruleId, InteractionDialogAPI dialog, List< Token > params, Map< String, MemoryAPI > memoryMap)
CampaignProgressIndicatorAPI getIndicator()
Definition Wait.java:172