Starsector API
Loading...
Searching...
No Matches
SDFHegemony.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;
20
21public class SDFHegemony extends SDFBase {
22
23 public SDFHegemony() {
24 }
25
26 @Override
27 protected String getFactionId() {
28 return Factions.HEGEMONY;
29 }
30
31 protected SkillPickPreference getCommanderShipSkillPreference() {
32 return SkillPickPreference.NO_ENERGY_YES_BALLISTIC_YES_MISSILE_YES_DEFENSE;
33 }
34
35 @Override
37 return Global.getSector().getEconomy().getMarket("coatl");
38 }
39
40 @Override
41 protected String getDefeatTriggerToUse() {
42 return "SDFHegemonyDefeated";
43 }
44
45
46 @Override
48
49 MarketAPI coatl = getSourceMarket();
50
52 m.beginFleet();
53
54 Vector2f loc = coatl.getLocationInHyperspace();
55
56 m.triggerCreateFleet(FleetSize.MAXIMUM, FleetQuality.SMOD_1, getFactionId(), FleetTypes.PATROL_LARGE, loc);
57
59
60 m.triggerSetFleetOfficers( OfficerNum.ALL_SHIPS, OfficerQuality.HIGHER);
63
69
72 //m.triggerFleetSetNoFactionInName();
73 m.triggerFleetSetName("Core Worlds Armada");
75 //m.triggerFleetSetPatrolActionText("patrolling");
77
82 fleet.setFacing((float) random.nextFloat() * 360f);
83
85 if (member.getHullId().equals("legion")) {
86 member.setVariant(getVariant("legion_xiv_Elite"), false, false);
87 } else if (member.getHullId().equals("onslaught")) {
88 member.setVariant(getVariant("onslaught_xiv_Elite"), false, false);
89 } else if (member.getHullId().equals("eagle")) {
90 member.setVariant(getVariant("eagle_xiv_Elite"), false, false);
91 } else if (member.getHullId().equals("falcon")) {
92 if (random.nextFloat() < 0.5f) {
93 member.setVariant(getVariant("falcon_xiv_Elite"), false, false);
94 } else {
95 member.setVariant(getVariant("falcon_xiv_Escort"), false, false);
96 }
97 } else if (member.getHullId().equals("dominator")) {
98 member.setVariant(getVariant("dominator_XIV_Elite"), false, false);
99 } else if (member.getHullId().equals("enforcer")) {
100 member.setVariant(getVariant("enforcer_XIV_Elite"), false, false);
101 }
102
103// member.setVariant(member.getVariant().clone(), false, false);
104// member.getVariant().setSource(VariantSource.REFIT);
105// member.getVariant().addTag(Tags.TAG_NO_AUTOFIT);
106// member.getVariant().addTag(Tags.VARIANT_CONSISTENT_WEAPON_DROPS);
107 }
108
109 return fleet;
110 }
111}
112
113
114
115
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)