public void transmitterActivated() {
if (data.fleetId != null) {
SectorEntityToken found = Global.getSector().getEntityById(data.fleetId);
if (found instanceof CampaignFleetAPI) {
CampaignFleetAPI fleet = (CampaignFleetAPI) found;
boolean makeAggressive = fleet.getFlagship().getVariant().hasHullMod(HullMods.AUTOMATED);
makeFleetInterceptPlayer(fleet, makeAggressive, 30f);
return;
}
}
if (data.useAllFleetsInRange != null && data.useAllFleetsInRange) {
boolean foundSomeFleets = false;
for (CampaignFleetAPI fleet : entity.getContainingLocation().getFleets()) {
if (data.nearbyFleetFaction != null &&
!data.nearbyFleetFaction.equals(fleet.getFaction().getId())) {
continue;
}
if (fleet.isStationMode()) continue;
if (fleet.getMemoryWithoutUpdate().is(MemFlags.MEMORY_KEY_TRADE_FLEET, true)) continue;
float dist = Misc.getDistance(fleet.getLocation(), entity.getLocation());
if (dist < data.maxRange) {
boolean makeAggressive = fleet.getFlagship().getVariant().hasHullMod(HullMods.AUTOMATED); /*** <--- LINE 127 ***************************************************/
makeFleetInterceptPlayer(fleet, makeAggressive, 30f);
foundSomeFleets = true;
}
}
if (foundSomeFleets) return;
}
if (data.useClosestFleetInRange != null && data.useClosestFleetInRange) {
CampaignFleetAPI closest = null;
float minDist = Float.MAX_VALUE;
for (CampaignFleetAPI fleet : entity.getContainingLocation().getFleets()) {
if (data.nearbyFleetFaction != null &&
!data.nearbyFleetFaction.equals(fleet.getFaction().getId())) {
continue;
}
if (fleet.isStationMode()) continue;
if (fleet.getMemoryWithoutUpdate().is(MemFlags.MEMORY_KEY_TRADE_FLEET, true)) continue;
float dist = Misc.getDistance(fleet.getLocation(), entity.getLocation());
if (dist < data.maxRange && dist < minDist) {
closest = fleet;
minDist = dist;
}
}
if (closest != null) {
boolean makeAggressive = closest.getFlagship().getVariant().hasHullMod(HullMods.AUTOMATED);
makeFleetInterceptPlayer(closest, makeAggressive, 30f);
return;
}
}
if (data.params != null) {
CampaignFleetAPI fleet = FleetFactoryV2.createFleet(data.params);
if (fleet == null) return;
if (Factions.REMNANTS.equals(fleet.getFaction().getId())) {
RemnantSeededFleetManager.initRemnantFleetProperties(null, fleet, false);
} else {
fleet.setTransponderOn(false);
fleet.getMemoryWithoutUpdate().set(MemFlags.MEMORY_KEY_PIRATE, true);
}
float range = data.minRange + random.nextFloat() * (data.maxRange - data.minRange);
Vector2f loc = Misc.getPointAtRadius(entity.getLocation(), range);
entity.getContainingLocation().addEntity(fleet);
fleet.setLocation(loc.x, loc.y);
boolean makeAggressive = fleet.getFlagship().getVariant().hasHullMod(HullMods.AUTOMATED);
makeFleetInterceptPlayer(fleet, makeAggressive, 30f);
SectorEntityToken despawnLoc = entity.getContainingLocation().createToken(20000, 0);
fleet.addAssignment(FleetAssignment.GO_TO_LOCATION_AND_DESPAWN, despawnLoc, 10000f);
return;
}
}