1package com.fs.starfarer.api.impl.campaign.intel.events;
3import java.util.ArrayList;
4import java.util.Iterator;
6import java.util.Random;
10import com.fs.starfarer.api.Global;
11import com.fs.starfarer.api.campaign.CampaignFleetAPI;
12import com.fs.starfarer.api.campaign.StarSystemAPI;
13import com.fs.starfarer.api.campaign.comm.IntelInfoPlugin.ListInfoMode;
14import com.fs.starfarer.api.campaign.econ.Industry;
15import com.fs.starfarer.api.campaign.econ.MarketAPI;
16import com.fs.starfarer.api.impl.campaign.ids.Industries;
17import com.fs.starfarer.api.impl.campaign.intel.events.BaseEventIntel.EventStageData;
18import com.fs.starfarer.api.impl.campaign.intel.events.HostileActivityEventIntel.HAERandomEventData;
19import com.fs.starfarer.api.ui.Alignment;
20import com.fs.starfarer.api.ui.TooltipMakerAPI;
21import com.fs.starfarer.api.ui.TooltipMakerAPI.TooltipCreator;
22import com.fs.starfarer.api.ui.TooltipMakerAPI.TooltipLocation;
23import com.fs.starfarer.api.util.Misc;
32@SuppressWarnings(
"unused")
36 protected List<HostileActivityCause2> causes =
new ArrayList<HostileActivityCause2>();
48 total += cause.getProgress();
56 if (!cause.shouldShow())
continue;
58 String desc = cause.getDesc();
61 Alignment.
RMID, cause.getProgressColor(intel), cause.getProgressStr());
67 cause.addExtraRows(info, intel);
72 return getClass().getSimpleName();
79 return getEffectMagnitude(system);
106 mag += cause.getMagnitudeContribution(system);
127 @SuppressWarnings(
"rawtypes")
128 public
void removeCauseOfClass(Class c) {
129 Iterator<HostileActivityCause2> iter = causes.iterator();
130 while (iter.hasNext()) {
131 HostileActivityCause2 curr = iter.next();
132 if (curr.getClass() == c) {
138 @SuppressWarnings(
"rawtypes")
140 Iterator<HostileActivityCause2> iter = causes.iterator();
141 while (iter.hasNext()) {
142 HostileActivityCause2 curr = iter.next();
143 if (curr.getClass() == c) {
155 return getDesc(intel);
159 return getDescColor(intel);
171 ListInfoMode mode,
boolean isUpdate, Color tc,
float initPad) {
190 public void createTooltip(
TooltipMakerAPI tooltip,
boolean expanded, Object tooltipParam) {
192 stage.endResetReqList(tooltip,
true,
"crisis",
199 HAERandomEventData data = (HAERandomEventData) stage.rollData;
201 stage.rollData =
null;
205 ListInfoMode mode,
boolean isUpdate, Color tc,
float initPad) {
225 return new Random(seed);
229 return "colony_threat";
234 if (market.getFactionId().equals(factionId)) {
237 if (b !=
null || !requireMilitary) {
static SectorAPI getSector()
static final String HIGHCOMMAND
static final String MILITARYBASE
void sendUpdateIfPlayerHasIntel(Object listInfoParam, TextPanelAPI textPanel)
void addBulletPointForEventReset(HostileActivityEventIntel intel, EventStageData stage, TooltipMakerAPI info, ListInfoMode mode, boolean isUpdate, Color tc, float initPad)
int getMaxNumFleets(StarSystemAPI system)
float getSpawnInHyperProbability(StarSystemAPI system)
Random getRandomizedStageRandom(int level)
float getSpawnFrequency(StarSystemAPI system)
boolean fireEvent(HostileActivityEventIntel intel, EventStageData stage)
static boolean checkFactionExists(String factionId, boolean requireMilitary)
String getNameForThreatList(boolean first)
String getEventStageSound(HAERandomEventData data)
float getStayInHyperProbability(StarSystemAPI system)
float getEffectMagnitude(StarSystemAPI system)
CampaignFleetAPI createFleet(StarSystemAPI system, Random random)
Random getRandomizedStageRandom()
List< HostileActivityCause2 > getCauses()
void setRandomizedStageSeed(long seed)
String getEventStageIcon(HostileActivityEventIntel intel, EventStageData stage)
Color getNameColorForThreatList()
float getEventFrequency(HostileActivityEventIntel intel, EventStageData stage)
void addBulletPointForEvent(HostileActivityEventIntel intel, EventStageData stage, TooltipMakerAPI info, ListInfoMode mode, boolean isUpdate, Color tc, float initPad)
BaseHostileActivityFactor(HostileActivityEventIntel intel)
void addExtraRows(TooltipMakerAPI info, BaseEventIntel intel)
void addStageDescriptionForEvent(HostileActivityEventIntel intel, EventStageData stage, TooltipMakerAPI info)
void rollEvent(HostileActivityEventIntel intel, EventStageData stage)
void addCause(HostileActivityCause2 cause)
void resetEvent(HostileActivityEventIntel intel, EventStageData stage)
TooltipCreator getStageTooltipImpl(HostileActivityEventIntel intel, EventStageData stage)
TooltipCreator getDefaultEventTooltip(final String title, final HostileActivityEventIntel intel, final EventStageData stage)
long getRandomizedStageSeed()
HostileActivityEventIntel intel
int getProgress(BaseEventIntel intel)
static Random getRandom(long seed, int level)
List< MarketAPI > getMarketsCopy()