Starsector API
Loading...
Searching...
No Matches
MissionTrigger.java
Go to the documentation of this file.
1package com.fs.starfarer.api.impl.campaign.missions.hub;
2
3import java.util.ArrayList;
4import java.util.LinkedHashMap;
5import java.util.LinkedHashSet;
6import java.util.List;
7import java.util.Map;
8
9import org.lwjgl.util.vector.Vector2f;
10
11import com.fs.starfarer.api.campaign.CampaignFleetAPI;
12import com.fs.starfarer.api.campaign.LocationAPI;
13import com.fs.starfarer.api.campaign.PlanetAPI;
14import com.fs.starfarer.api.campaign.SectorEntityToken;
15import com.fs.starfarer.api.campaign.StarSystemAPI;
16import com.fs.starfarer.api.campaign.econ.MarketAPI;
17import com.fs.starfarer.api.characters.PersonAPI;
18import com.fs.starfarer.api.impl.campaign.missions.hub.BaseHubMission.ConditionChecker;
19
20public class MissionTrigger {
21
22 public static class TriggerActionContext {
23 public HubMission mission;
24 public CampaignFleetAPI fleet;
25 public SectorEntityToken entity;
26 public SectorEntityToken token;
27 public PersonAPI person;
28 public MarketAPI market;
29 public PlanetAPI planet;
30 public StarSystemAPI system;
31 public int counter;
32
33 public LocationAPI containingLocation;
34 public Vector2f coordinates;
35 public SectorEntityToken jumpPoint;
36
37 public Map<String, Object> custom = new LinkedHashMap<String, Object>();
38 public Object custom1;
39 public Object custom2;
40 public Object custom3;
41
42 public String patrolText;
43 public String travelText;
44
45 public boolean makeAllFleetFlagsPermanent = false;
46
47 public List<CampaignFleetAPI> allFleets = new ArrayList<CampaignFleetAPI>();
48
49 public TriggerActionContext(HubMission mission) {
50 this.mission = mission;
51 }
52
53 }
54
55 public static interface TriggerAction {
56 void doAction(TriggerActionContext context);
57 }
58
59
66 protected String id = null;
67 protected ConditionChecker condition;
68 protected LinkedHashSet<Object> stages = new LinkedHashSet<Object>();
69 protected List<TriggerAction> actions = new ArrayList<TriggerAction>();
70
71 public ConditionChecker getCondition() {
72 return condition;
73 }
74 public void setCondition(ConditionChecker condition) {
75 this.condition = condition;
76 }
77 public LinkedHashSet<Object> getStages() {
78 return stages;
79 }
80 public List<TriggerAction> getActions() {
81 return actions;
82 }
83 public String getId() {
84 return id;
85 }
86 public void setId(String id) {
87 this.id = id;
88 }
89}