Starsector API
Loading...
Searching...
No Matches
GuideGhost.java
Go to the documentation of this file.
1package com.fs.starfarer.api.impl.campaign.ghosts.types;
2
3import com.fs.starfarer.api.Global;
4import com.fs.starfarer.api.campaign.CampaignFleetAPI;
5import com.fs.starfarer.api.campaign.SectorEntityToken;
6import com.fs.starfarer.api.impl.campaign.ghosts.BaseSensorGhost;
7import com.fs.starfarer.api.impl.campaign.ghosts.GBCircle;
8import com.fs.starfarer.api.impl.campaign.ghosts.GBITowardsEntity;
9import com.fs.starfarer.api.impl.campaign.ghosts.GBIntercept;
10import com.fs.starfarer.api.impl.campaign.ghosts.GBLeadPlayerTo;
11import com.fs.starfarer.api.impl.campaign.ghosts.SensorGhostManager;
12
13public class GuideGhost extends BaseSensorGhost {
14
15 public GuideGhost(SensorGhostManager manager, SectorEntityToken target) {
16 super(manager, 40);
17
18 CampaignFleetAPI pf = Global.getSector().getPlayerFleet();
19
20 float circleRadius = genFloat(300f, 400f);
21
23 if (!placeNearPlayer()) {
25 return;
26 }
27
28 addBehavior(new GBIntercept(pf, 10f, 40, circleRadius + 500f, true));
29 addBehavior(new GBCircle(pf, genDelay(2f), 40, circleRadius, -1f));
30 addInterrupt(new GBITowardsEntity(genDelay(1.5f), pf, target));
31 addBehavior(new GBLeadPlayerTo(20f, target, genFloat(500f, 600f), 25));
32 }
33}
static SectorAPI getSector()
Definition Global.java:59
void addInterrupt(GhostBehaviorInterrupt interrupt)
GuideGhost(SensorGhostManager manager, SectorEntityToken target)