Starsector API
Loading...
Searching...
No Matches
SDFLeague.java
Go to the documentation of this file.
1package com.fs.starfarer.api.impl.campaign.fleets;
2
3import org.lwjgl.util.vector.Vector2f;
4
5import com.fs.starfarer.api.Global;
6import com.fs.starfarer.api.campaign.CampaignFleetAPI;
7import com.fs.starfarer.api.campaign.econ.MarketAPI;
8import com.fs.starfarer.api.fleet.FleetMemberAPI;
9import com.fs.starfarer.api.impl.campaign.events.OfficerManagerEvent.SkillPickPreference;
10import com.fs.starfarer.api.impl.campaign.ids.Factions;
11import com.fs.starfarer.api.impl.campaign.ids.FleetTypes;
12import com.fs.starfarer.api.impl.campaign.ids.MemFlags;
13import com.fs.starfarer.api.impl.campaign.ids.Skills;
14import com.fs.starfarer.api.impl.campaign.missions.FleetCreatorMission;
15import com.fs.starfarer.api.impl.campaign.missions.hub.HubMissionWithTriggers.FleetQuality;
16import com.fs.starfarer.api.impl.campaign.missions.hub.HubMissionWithTriggers.FleetSize;
17import com.fs.starfarer.api.impl.campaign.missions.hub.HubMissionWithTriggers.OfficerNum;
18import com.fs.starfarer.api.impl.campaign.missions.hub.HubMissionWithTriggers.OfficerQuality;
19import com.fs.starfarer.api.impl.campaign.missions.hub.MissionFleetAutoDespawn;
20import com.fs.starfarer.api.util.WeightedRandomPicker;
21
22public class SDFLeague extends SDFBase {
23
24 public SDFLeague() {
25 }
26
27 @Override
28 protected String getFactionId() {
29 return Factions.PERSEAN;
30 }
31
32 protected SkillPickPreference getCommanderShipSkillPreference() {
33 return SkillPickPreference.NO_ENERGY_YES_BALLISTIC_YES_MISSILE_YES_DEFENSE;
34 }
35
36 @Override
38 return Global.getSector().getEconomy().getMarket("kazeron");
39 }
40
41 @Override
42 protected String getDefeatTriggerToUse() {
43 return "SDFLeagueDefeated";
44 }
45
46
47 @Override
49
51 capitalShipNames.add("Pride of Hannan");
52 capitalShipNames.add("Pride of Kato");
53 capitalShipNames.add("Pride of Yaribay");
54 capitalShipNames.add("Reynard's Gift");
55 capitalShipNames.add("Fortuna's Gift");
56 capitalShipNames.add("Mairaath Remembered");
57 capitalShipNames.add("Navarch Arnulf Hannan");
58 capitalShipNames.add("Navarch Mars Kato");
59 capitalShipNames.add("Navarch Leandro Tethys");
60 capitalShipNames.add("Navarch Herman Zhou");
61
62 MarketAPI kazeron = getSourceMarket();
63
65 m.beginFleet();
66
67 Vector2f loc = kazeron.getLocationInHyperspace();
68
69 m.triggerCreateFleet(FleetSize.MAXIMUM, FleetQuality.SMOD_2, getFactionId(), FleetTypes.PATROL_LARGE, loc);
70
72
73 m.triggerSetFleetOfficers( OfficerNum.MORE, OfficerQuality.HIGHER);
76
81
84 //m.triggerFleetSetNoFactionInName();
85 m.triggerFleetSetName("All-League Aegis"); // Defense Fleet");
87 //m.triggerFleetSetPatrolActionText("patrolling");
89
94 fleet.setFacing((float) random.nextFloat() * 360f);
95
97 if (member.isCapital()) {
98 String name = capitalShipNames.pickAndRemove();
99 if (name != null) {
100 member.setShipName(name);
101 }
102 }
103 }
104
105 return fleet;
106 }
107}
108
109
110
111
static SectorAPI getSector()
Definition Global.java:65
void triggerSetFleetDoctrineComp(int warships, int carriers, int phaseShips)
void triggerCreateFleet(FleetSize size, FleetQuality quality, String factionId, String type, StarSystemAPI roughlyWhere)
List< FleetMemberAPI > getMembersListCopy()
void addEntity(SectorEntityToken entity)