1package com.fs.starfarer.api.impl.campaign.intel.bar.events;
3import java.util.Random;
5import org.lwjgl.util.vector.Vector2f;
7import com.fs.starfarer.api.EveryFrameScript;
8import com.fs.starfarer.api.Global;
9import com.fs.starfarer.api.campaign.BattleAPI;
10import com.fs.starfarer.api.campaign.CampaignEventListener.FleetDespawnReason;
11import com.fs.starfarer.api.campaign.CampaignFleetAPI;
12import com.fs.starfarer.api.campaign.FleetAssignment;
13import com.fs.starfarer.api.campaign.StarSystemAPI;
14import com.fs.starfarer.api.campaign.ai.CampaignFleetAIAPI.EncounterOption;
15import com.fs.starfarer.api.campaign.listeners.FleetEventListener;
16import com.fs.starfarer.api.campaign.rules.MemoryAPI;
17import com.fs.starfarer.api.characters.AbilityPlugin;
18import com.fs.starfarer.api.characters.FullName.Gender;
19import com.fs.starfarer.api.impl.campaign.DebugFlags;
20import com.fs.starfarer.api.impl.campaign.fleets.AutoDespawnScript;
21import com.fs.starfarer.api.impl.campaign.fleets.FleetFactoryV3;
22import com.fs.starfarer.api.impl.campaign.fleets.FleetParamsV3;
23import com.fs.starfarer.api.impl.campaign.ids.Abilities;
24import com.fs.starfarer.api.impl.campaign.ids.Factions;
25import com.fs.starfarer.api.impl.campaign.ids.FleetTypes;
26import com.fs.starfarer.api.impl.campaign.ids.MemFlags;
27import com.fs.starfarer.api.util.Misc;
50 delayDays = 100f + (float) Math.random() * 200f;
108 Random random =
new Random(
seed);
112 pts *= 0.8f + 0.4f * random.nextFloat();
113 if (pts < 30) pts = 30;
114 if (pts > 150) pts = 150;
116 float qMod =
reward / 100000f;
118 String hunter =
"bounty hunter";
120 if (random.nextFloat() < 0.5f) {
140 params.random = random;
143 if (fleet.
isEmpty()) fleet =
null;
147 if (option == EncounterOption.DISENGAGE) {
164 String hisOrHer =
"his";
165 String himOrHer =
"him";
166 if (
gender == Gender.FEMALE) {
170 memory.
set(
"$dmi_bountyHunter",
true);
171 memory.
set(
"$dmi_hisOrHer", hisOrHer);
172 memory.
set(
"$dmi_himOrHer", himOrHer);
175 memory.
set(
"$dmi_hunter", hunter);
static SettingsAPI getSettings()
static SectorAPI getSector()
static CampaignFleetAPI createFleet(FleetParamsV3 params)
static final String EMERGENCY_BURN
static final String PIRATES
static final String INDEPENDENT
static final String MERC_BOUNTY_HUNTER
static final String MEMORY_KEY_MAKE_HOSTILE
static final String MEMORY_KEY_MAKE_AGGRESSIVE
static final String MEMORY_KEY_ALLOW_LONG_PURSUIT
void reportFleetDespawnedToListener(CampaignFleetAPI fleet, FleetDespawnReason reason, Object param)
CampaignFleetAPI createBountyHunter()
static float DAYS_IN_SYSTEM
void advance(float amount)
DeliveryFailureConsequences(DeliveryMissionIntel intel)
static float RADIUS_FROM_CORE
void reportBattleOccurred(CampaignFleetAPI fleet, CampaignFleetAPI primaryWinner, BattleAPI battle)
StarSystemAPI systemPlayerIsIn
DeliveryBarEvent getEvent()
static void giveStandardReturnToSourceAssignments(CampaignFleetAPI fleet)
static float getDistance(SectorEntityToken from, SectorEntityToken to)
static float getDays(float amount)
static long genRandomSeed()
static Vector2f getPointAtRadius(Vector2f from, float r)
static void makeLowRepImpact(CampaignFleetAPI fleet, String reason)
CommoditySpecAPI getCommoditySpec(String commodityId)
LocationAPI getContainingLocation()
CampaignFleetAIAPI getAI()
void setLocation(float x, float y)
void addEventListener(FleetEventListener listener)
void addEntity(SectorEntityToken entity)
CampaignFleetAPI getPlayerFleet()
LocationAPI getHyperspace()
void addScript(EveryFrameScript script)
Vector2f getLocationInHyperspace()
MemoryAPI getMemoryWithoutUpdate()
AbilityPlugin getAbility(String id)
EncounterOption pickEncounterOption(FleetEncounterContextPlugin context, CampaignFleetAPI otherFleet)
void addAssignmentAtStart(FleetAssignment assignment, SectorEntityToken target, float maxDurationInDays, Script onCompletion)
String getLowerCaseName()
void set(String key, Object value)