1package com.fs.starfarer.api.impl.campaign.missions;
5import com.fs.starfarer.api.Global;
6import com.fs.starfarer.api.campaign.PersonImportance;
7import com.fs.starfarer.api.campaign.SectorEntityToken;
8import com.fs.starfarer.api.campaign.StarSystemAPI;
9import com.fs.starfarer.api.campaign.econ.CommodityOnMarketAPI;
10import com.fs.starfarer.api.campaign.econ.MarketAPI;
11import com.fs.starfarer.api.characters.PersonAPI;
12import com.fs.starfarer.api.impl.campaign.ids.Factions;
13import com.fs.starfarer.api.impl.campaign.ids.Ranks;
14import com.fs.starfarer.api.impl.campaign.ids.Tags;
15import com.fs.starfarer.api.impl.campaign.missions.academy.GACelestialObject.Variation;
16import com.fs.starfarer.api.impl.campaign.missions.askonia.TheUsurpers.Stage;
17import com.fs.starfarer.api.impl.campaign.missions.hub.HubMissionWithBarEvent;
18import com.fs.starfarer.api.impl.campaign.missions.hub.ReqMode;
19import com.fs.starfarer.api.ui.TooltipMakerAPI;
20import com.fs.starfarer.api.util.Misc;
30 public static enum Stage {
36 public static enum Variation {
50 protected boolean create(MarketAPI createdAt,
boolean barEvent) {
52 if (!setGlobalReference(
"$lpt_ref",
"$lpt_inProgress")) {
83 value *= 0.9f + genRandom.nextFloat() * 0.2f;
84 setCreditReward((
int)(value * 0.5f), (
int)(value * 0.7f));
90 setGiverRank(Ranks.CITIZEN);
91 setGiverPost(Ranks.POST_PILGRIM);
93 setGiverImportance(PersonImportance.VERY_LOW);
94 setGiverFaction(Factions.LUDDIC_CHURCH);
95 findOrCreateGiver(createdAt,
false,
false);
98 PersonAPI person = getPerson();
99 if (person ==
null)
return false;
102 if (!setPersonMissionRef(person,
"$lpt_ref")) {
106 setRepFactionChangesNone();
107 setIconName(
"campaignMissions",
"luddic_pilgrim_transport");
117 if (!
destination_entity.getMarket().getFactionId().equals(Factions.LUDDIC_CHURCH))
return false;
122 for (SectorEntityToken beholder_station :
destination_system.getEntitiesWithTag(Tags.LUDDIC_SHRINE)) {
134 setStartingStage(Stage.TRANSPORT);
135 setSuccessStage(Stage.COMPLETED);
136 setFailureStage(Stage.FAILED);
152 set(
"$lpt_barEvent", isBarEvent());
153 set(
"$lpt_reward", Misc.getWithDGS(getCreditsReward()));
155 set(
"$lpt_manOrWoman", getPerson().getManOrWoman());
156 set(
"$lpt_heOrShe", getPerson().getHeOrShe());
157 set(
"$lpt_hisOrHer", getPerson().getHisOrHer());
158 set(
"$lpt_himOrHer", getPerson().getHimOrHer());
159 set(
"$lpt_HeOrShe", getPerson().getHeOrShe().substring(0, 1).toUpperCase() + getPerson().getHeOrShe().substring(1));
160 set(
"$lpt_HisOrHer", getPerson().getHisOrHer().substring(0, 1).toUpperCase() + getPerson().getHisOrHer().substring(1));
161 set(
"$lpt_HimOrHer", getPerson().getHimOrHer().substring(0, 1).toUpperCase() + getPerson().getHimOrHer().substring(1));
164 set(
"$lpt_wealth",
"poor");
165 else set(
"$lpt_wealth",
"rich");
167 set(
"$lpt_personName", getPerson().getNameString());
181 Color h = Misc.getHighlightColor();
182 if (currentStage == Stage.TRANSPORT) {
183 info.addPara(
"Transport a small party of Luddic pilgrims to " +
destination_entity.getName() +
187 info.addPara(
"The pilgrims will expect to arrive at the shrine within " +
MISSION_DAYS +
" days.", opad);
193 Color h = Misc.getHighlightColor();
194 if (currentStage == Stage.TRANSPORT) {
195 info.addPara(
"Transport a small party of Luddic pilgrims to " +
destination_entity.getName() +
205 return "Luddic Pilgrim Transport";
static SectorAPI getSector()
boolean addNextStepText(TooltipMakerAPI info, Color tc, float pad)
static float MISSION_DAYS
SectorEntityToken destination_entity
void updateInteractionDataImpl()
void addDescriptionForNonEndStage(TooltipMakerAPI info, float width, float height)
StarSystemAPI destination_system
boolean create(MarketAPI createdAt, boolean barEvent)
String destination_shrine