157 public void addStageDesc(TooltipMakerAPI info, Object stageId,
float initPad,
boolean forTooltip) {
159 Color h = Misc.getHighlightColor();
162 Color tt = faction.getBaseUIColor();
164 if (stageId == Stage.START) {
165 LabelAPI label = info.addPara(
"The %s needs to be convinced that continued investment in "
166 +
"acting against your interests is unprofitable in the long term. If you are "
167 +
"able to send this message without becoming openly hostile - or smooth any ruffled feathers "
168 +
"afterwards - this may even "
169 +
"mark you as someone whose understanding of business realities makes them worth working with.",
170 initPad, tt, faction.getDisplayNameLong());
171 label.setHighlight(faction.getDisplayNameLong(),
"worth working with");
172 label.setHighlightColors(tt,
173 Misc.getPositiveHighlightColor());
174 }
else if (stageId == Stage.SUCCESS) {
175 info.addPara(
"You've convinced the %s to stop attacking your interests.", initPad,
176 tt, faction.getDisplayNameLong());
177 }
else if (stageId == Stage.SEND_MERC) {
178 info.addPara(
"Several bounty hunters were recently hired to eliminate you. You are likely "
179 +
"to encounter them in the coming months. Resolving the matter with Tri-Tachyon before then "
180 +
"is unlikely to make a difference in this; a contract is a contract.", initPad);
299 Random r = Misc.getRandom(
random.nextLong(), 7);
300 DelayedFleetEncounter e =
new DelayedFleetEncounter(r,
"TTCRBountyHunterWolfpack");
301 e.setDelayVeryShort();
303 e.setDoNotAbortWhenPlayerFleetTooStrong();
304 e.setLocationOuterSector(
true, Factions.INDEPENDENT);
306 e.triggerCreateFleet(FleetSize.LARGE, FleetQuality.SMOD_3, Factions.MERCENARY, FleetTypes.MERC_BOUNTY_HUNTER,
new Vector2f());
307 e.triggerSetFleetMaxShipSize(1);
308 e.triggerSetFleetDoctrineOther(5, 4);
311 WeightedRandomPicker<String> picker =
new WeightedRandomPicker<String>(r);
312 picker.add(
"tempest_Attack", 10);
313 picker.add(
"tempest_Attack", 10);
314 picker.add(
"tempest_Attack", 10);
315 picker.add(
"scarab_Experimental", 10);
316 picker.add(
"scarab_Experimental", 10);
317 picker.add(
"scarab_Experimental", 10);
318 picker.add(
"hyperion_Attack", 10);
319 picker.add(
"hyperion_Strike", 10);
320 picker.add(
"omen_PD", 5);
321 picker.add(
"omen_PD", 5);
322 picker.add(
"monitor_Escort", 5);
323 picker.add(
"monitor_Escort", 5);
324 picker.add(
"shade_Assault", 5);
325 picker.add(
"shade_Assault", 5);
326 picker.add(
"afflictor_Strike", 5);
327 picker.add(
"afflictor_Strike", 5);
342 while (!picker.isEmpty() && add > 0) {
343 e.triggerAddShips(picker.pickAndRemove());
349 e.triggerSetFleetMaxNumShips(14);
350 e.triggerSetFleetDoctrineComp(5, 0, 0);
352 e.triggerFleetAddCommanderSkill(Skills.COORDINATED_MANEUVERS, 1);
353 e.triggerFleetAddCommanderSkill(Skills.WOLFPACK_TACTICS, 1);
354 e.triggerFleetAddCommanderSkill(Skills.ELECTRONIC_WARFARE, 1);
355 e.triggerFleetAddCommanderSkill(Skills.FLUX_REGULATION, 1);
356 e.triggerFleetAddCommanderSkill(Skills.TACTICAL_DRILLS, 1);
357 e.triggerSetFleetOfficers(OfficerNum.MORE, OfficerQuality.UNUSUALLY_HIGH);
359 e.triggerFleetMakeFaster(
true, 0,
true);
361 e.triggerSetFleetFaction(Factions.INDEPENDENT);
362 e.triggerMakeNoRepImpact();
363 e.triggerSetStandardAggroInterceptFlags();
364 e.triggerMakeFleetIgnoreOtherFleets();
365 e.triggerSetFleetGenericHailPermanent(
"TTCRBountyHunterHail");
366 e.triggerSetFleetFlagPermanent(
"$ttcr_wolfpack");
372 Random r = Misc.getRandom(
random.nextLong(), 3);
373 DelayedFleetEncounter e =
new DelayedFleetEncounter(r,
"TTCRBountyHunterPhase");
374 e.setDelayVeryShort();
376 e.setLocationInnerSector(
true, Factions.INDEPENDENT);
378 e.triggerCreateFleet(FleetSize.LARGE, FleetQuality.SMOD_3, Factions.MERCENARY, FleetTypes.MERC_BOUNTY_HUNTER,
new Vector2f());
380 e.triggerSetFleetDoctrineComp(0, 0, 5);
382 e.triggerFleetAddCommanderSkill(Skills.COORDINATED_MANEUVERS, 1);
383 e.triggerFleetAddCommanderSkill(Skills.PHASE_CORPS, 1);
384 e.triggerFleetAddCommanderSkill(Skills.ELECTRONIC_WARFARE, 1);
385 e.triggerFleetAddCommanderSkill(Skills.FLUX_REGULATION, 1);
386 e.triggerFleetAddCommanderSkill(Skills.TACTICAL_DRILLS, 1);
387 e.triggerSetFleetOfficers(OfficerNum.MORE, OfficerQuality.HIGHER);
389 e.triggerFleetMakeFaster(
true, 0,
true);
391 e.triggerSetFleetFaction(Factions.INDEPENDENT);
392 e.triggerMakeNoRepImpact();
393 e.triggerSetStandardAggroInterceptFlags();
394 e.triggerMakeFleetIgnoreOtherFleets();
395 e.triggerSetFleetGenericHailPermanent(
"TTCRBountyHunterHail");
396 e.triggerSetFleetFlagPermanent(
"$ttcr_phase");
403 Random r = Misc.getRandom(
random.nextLong(), 11);
404 DelayedFleetEncounter e =
new DelayedFleetEncounter(r,
"TTCRBountyHunterDerelict");
405 e.setDelayVeryShort();
408 e.setLocationCoreOnly(
true, Factions.INDEPENDENT);
410 e.triggerCreateFleet(FleetSize.HUGE, FleetQuality.VERY_LOW, Factions.LUDDIC_CHURCH, FleetTypes.MERC_BOUNTY_HUNTER,
new Vector2f());
413 e.triggerSetFleetDoctrineOther(5, 5);
415 e.triggerFleetAddCommanderSkill(Skills.DERELICT_CONTINGENT, 1);
416 e.triggerFleetAddCommanderSkill(Skills.SUPPORT_DOCTRINE, 1);
417 e.triggerFleetAddCommanderSkill(Skills.COORDINATED_MANEUVERS, 1);
418 e.triggerSetFleetOfficers(OfficerNum.MORE, OfficerQuality.LOWER);
420 e.triggerFleetMakeFaster(
true, 2,
true);
422 e.triggerSetFleetFaction(Factions.INDEPENDENT);
423 e.triggerMakeNoRepImpact();
424 e.triggerSetStandardAggroInterceptFlags();
425 e.triggerMakeFleetIgnoreOtherFleets();
426 e.triggerSetFleetGenericHailPermanent(
"TTCRBountyHunterHail");
427 e.triggerSetFleetFlagPermanent(
"$ttcr_derelict");