1package com.fs.starfarer.api.impl.campaign.events.nearby;
3import java.util.ArrayList;
6import com.fs.starfarer.api.Global;
7import com.fs.starfarer.api.campaign.CampaignFleetAPI;
8import com.fs.starfarer.api.campaign.CustomCampaignEntityAPI;
9import com.fs.starfarer.api.campaign.FleetAssignment;
10import com.fs.starfarer.api.campaign.SectorEntityToken;
11import com.fs.starfarer.api.campaign.StarSystemAPI;
12import com.fs.starfarer.api.campaign.SectorEntityToken.VisibilityLevel;
13import com.fs.starfarer.api.campaign.rules.MemoryAPI;
14import com.fs.starfarer.api.fleet.FleetMemberAPI;
15import com.fs.starfarer.api.impl.campaign.CargoPodsEntityPlugin;
16import com.fs.starfarer.api.impl.campaign.ids.MemFlags;
17import com.fs.starfarer.api.impl.campaign.procgen.themes.BaseAssignmentAI;
18import com.fs.starfarer.api.impl.campaign.rulecmd.salvage.CargoPods;
19import com.fs.starfarer.api.util.Misc;
27 protected float dur = 30f + (float) Math.random() * 20f;
51 super.advance(amount);
73 boolean seesPlayer =
false;
76 seesPlayer |= level == VisibilityLevel.COMPOSITION_DETAILS;
77 seesPlayer |= level == VisibilityLevel.COMPOSITION_AND_FACTION_DETAILS;
89 if (level != VisibilityLevel.NONE &&
90 level != VisibilityLevel.SENSOR_CONTACT) {
112 memory.
unset(
"$distress");
117 "distress",
false, 1000f);
122 float scuttledCrewRoom = 0;
123 for (
int i = members.size() - 1; i >= 0 && scuttledCrewRoom < crewFreed; i--) {
static SectorAPI getSector()
void setExtraDays(float extraDays)
void advance(float amount)
void giveInitialAssignments()
SectorEntityToken jumpPoint
static void undistress(SectorEntityToken fleet)
static void scuttleShips(CampaignFleetAPI fleet, int crewFreed)
DistressCallNormalAssignmentAI(CampaignFleetAPI fleet, StarSystemAPI system, SectorEntityToken jumpPoint)
static void leaveCrewInPods(CampaignFleetAPI fleet, int crew)
static final String ENTITY_MISSION_IMPORTANT
static final String MEMORY_KEY_NO_JUMP
static void stabilizeOrbit(SectorEntityToken entity, boolean makeDiscovered)
static CustomCampaignEntityAPI addCargoPods(LocationAPI where, Vector2f loc)
static void giveStandardReturnToSourceAssignments(CampaignFleetAPI fleet)
static float getDistanceToPlayerLY(Vector2f locInHyper)
static boolean setFlagWithReason(MemoryAPI memory, String flagKey, String reason, boolean value, float expire)
float convertToDays(float realSeconds)
LocationAPI getContainingLocation()
void removeFleetMemberWithDestructionFlash(FleetMemberAPI member)
FleetDataAPI getFleetData()
void addAssignment(FleetAssignment assignment, SectorEntityToken target, float maxDurationInDays)
boolean isInCurrentLocation()
void addCrew(int quantity)
List< FleetMemberAPI > getMembersListCopy()
CampaignFleetAPI getPlayerFleet()
CampaignClockAPI getClock()
CustomCampaignEntityPlugin getCustomPlugin()
void removeScript(EveryFrameScript script)
VisibilityLevel getVisibilityLevelOfPlayerFleet()
MemoryAPI getMemoryWithoutUpdate()
boolean contains(String key)