1package com.fs.starfarer.api.impl.campaign.ghosts.types;
3import java.util.Random;
5import org.lwjgl.util.vector.Vector2f;
7import com.fs.starfarer.api.Global;
8import com.fs.starfarer.api.campaign.CampaignFleetAPI;
9import com.fs.starfarer.api.campaign.FleetAssignment;
10import com.fs.starfarer.api.campaign.SectorEntityToken;
11import com.fs.starfarer.api.impl.campaign.ghosts.BaseSensorGhost;
12import com.fs.starfarer.api.impl.campaign.ghosts.GBCircle;
13import com.fs.starfarer.api.impl.campaign.ghosts.GBITowardsEntity;
14import com.fs.starfarer.api.impl.campaign.ghosts.GBIntercept;
15import com.fs.starfarer.api.impl.campaign.ghosts.GBLeadPlayerTo;
16import com.fs.starfarer.api.impl.campaign.ghosts.SensorGhostManager;
21 super(
manager, guideToTarget ? 40 : 20);
25 float circleRadius =
genFloat(300f, 400f);
35 e, 10f + 20f * random.nextFloat(),
"investigating anomalous readings");
43 entity, 10f + 20f * random.nextFloat(),
"investigating sensor ghost");
static SectorAPI getSector()
void addBehavior(GhostBehavior b)
float genFloat(float min, float max)
float genLargeSensorProfile()
float genDelay(float base)
void setDespawnRange(float despawnRange)
void placeNearEntity(SectorEntityToken entity, float minDist, float maxDist)
void initEntity(float sensorProfile, float radius)
void addInterrupt(GhostBehaviorInterrupt interrupt)
SensorGhostManager manager
CustomCampaignEntityAPI entity
EncounterTricksterGhost(SensorGhostManager manager, CampaignFleetAPI other, boolean guideToTarget)
LocationAPI getContainingLocation()
FleetDataAPI getFleetData()
void addAssignment(FleetAssignment assignment, SectorEntityToken target, float maxDurationInDays)
SectorEntityToken createToken(float x, float y)
CampaignFleetAPI getPlayerFleet()