51 protected boolean create(MarketAPI createdAt,
boolean barEvent) {
53 if (!setGlobalReference(
"$gaRR_ref")) {
56 if (getGlobalMemory().contains(
"$gaRR_playerOwes")) {
64 setIconName(
"campaignMissions",
"prisoner_pirate");
67 setIconName(
"campaignMissions",
"prisoner_luddic");
73 requireMarketFaction(Factions.PIRATES);
75 requireMarketFaction(Factions.LUDDIC_CHURCH);
77 requireMarketNotHidden();
78 requireMarketNotInHyperspace();
79 requireMarketLocationNot(
"galatia");
80 preferMarketInDirectionOfOtherMissions();
93 contact = findOrCreatePerson(Factions.LUDDIC_CHURCH,
market,
true,
94 Ranks.KNIGHT_CAPTAIN, Ranks.POST_GENERIC_MILITARY);
100 setStartingStage(Stage.GO_TO_MARKET);
101 addSuccessStages(Stage.COMPLETED);
102 addFailureStages(Stage.FAILED);
103 addNoPenaltyFailureStages(Stage.FAILED_DECIV);
106 makeImportant(
contact,
"$gaRR_contact", Stage.GO_TO_MARKET);
107 makeImportant(getPerson(),
"$gaRR_returnHere", Stage.RETURN_TO_ACADEMY);
109 connectWithGlobalFlag(Stage.GO_TO_MARKET, Stage.RETURN_TO_ACADEMY,
"$gaRR_needToReturn");
110 setStageOnGlobalFlag(Stage.COMPLETED,
"$gaRR_completed");
111 setStageOnGlobalFlag(Stage.FAILED,
"$gaRR_failed");
112 connectWithMarketDecivilized(Stage.GO_TO_MARKET, Stage.FAILED_DECIV,
market);
115 setTimeLimit(Stage.FAILED,
MISSION_DAYS,
market.getStarSystem(), Stage.RETURN_TO_ACADEMY);
118 setCreditReward(CreditReward.AVERAGE);
122 costHigh = genRoundNumber(90000, 100000);
129 beginStageTrigger(Stage.FAILED, Stage.FAILED_DECIV);
130 triggerSetGlobalMemoryValuePermanent(
"$gaRR_playerOwes",
true);
131 triggerSetGlobalMemoryValuePermanent(
"$gaRR_failedCredits", Misc.getWithDGS(
costNormal));
169 Color h = Misc.getHighlightColor();
170 if (currentStage == Stage.GO_TO_MARKET) {
171 String adjective =
"kidnapped";
172 if (
variation == Variation.CHURCH) adjective =
"imprisoned";
173 info.addPara(getGoToMarketText(
market) +
174 ", and ransom the " + adjective +
" researcher from " +
contact.getNameString() +
".", opad);
176 }
else if (currentStage == Stage.RETURN_TO_ACADEMY) {
177 info.addPara(getReturnText(
"the Galatia Academy") +
".", opad);
183 Color h = Misc.getHighlightColor();
184 if (currentStage == Stage.GO_TO_MARKET) {
185 info.addPara(getGoToMarketText(
market), tc, pad);
187 }
else if (currentStage == Stage.RETURN_TO_ACADEMY) {
188 info.addPara(getReturnTextShort(
"the Galatia Academy"), tc, pad);