155 system.getEntityById(
"ancyra").setCircularOrbitAngle(55f);
156 system.getEntityById(
"ancyra_relay").setCircularOrbitAngle(55 - 60);;
158 system.getEntityById(
"pontus").setCircularOrbitAngle(230);
159 system.getEntityById(
"pontus_L4").setCircularOrbitAngle(230 + 60);
160 system.getEntityById(
"pontus_L5").setCircularOrbitAngle(230 - 60);
161 system.getEntityById(
"galatia_probe").setCircularOrbitAngle(230);
162 system.getEntityById(
"galatia_jump_point_alpha").setCircularOrbitAngle(230 + 180f);
164 system.getEntityById(
"tetra").setCircularOrbitAngle(340);
165 system.getEntityById(
"derinkuyu_station").setCircularOrbitAngle(135);
166 system.getEntityById(
"galatia_jump_point_fringe").setCircularOrbitAngle(160);;
172 if (amount == 0)
return;
175 if (playerFleet ==
null)
return;
177 HintPanelAPI hints =
Global.
getSector().getCampaignUI().getHintPanel();
178 if (hints ==
null)
return;
188 if (
stage == CampaignTutorialStage.SHOW_WELCOME_DIALOG &&
elapsed > 1f) {
191 stage = CampaignTutorialStage.SHOW_DEBRIS_HINT;
196 if (
stage == CampaignTutorialStage.SHOW_DEBRIS_HINT) {
198 hints.setHint(1,
"- Move up into the debris field");
199 hints.setHint(0,
"- Press %s to start scavenging",
false, Misc.getHighlightColor(), control);
201 stage = CampaignTutorialStage.HEADING_TO_DEBRIS;
205 if (
stage == CampaignTutorialStage.HEADING_TO_DEBRIS) {
206 if (
debrisField.getPlugin().containsEntity(playerFleet)) {
207 stage = CampaignTutorialStage.REACHED_DEBRIS;
208 hints.fadeOutHint(1);
211 hints.setHint(0,
"- Press %s to start scavenging",
true, Misc.getHighlightColor(), control);
216 if (
stage == CampaignTutorialStage.REACHED_DEBRIS) {
217 AbilityPlugin scavenge = playerFleet.getAbility(Abilities.SCAVENGE);
218 if (scavenge !=
null && scavenge.isOnCooldown()) {
219 stage = CampaignTutorialStage.SAVE_NAG_1;
227 if (
quickSaveNag(CampaignTutorialStage.SAVE_NAG_1, CampaignTutorialStage.SHOW_PIRATE_DIALOG, 0)) {
231 if (
stage == CampaignTutorialStage.SHOW_PIRATE_DIALOG &&
elapsed >= 1f) {
233 stage = CampaignTutorialStage.SHOW_PIRATE_HINT;
238 if (
stage == CampaignTutorialStage.SHOW_PIRATE_HINT) {
241 hints.setHint(0,
"- Wait for the pirates to approach, then engage and defeat them!");
242 stage = CampaignTutorialStage.PIRATE_APPROACHES;
246 if (
stage == CampaignTutorialStage.PIRATE_APPROACHES) {
249 stage = CampaignTutorialStage.SAVE_NAG_2;
262 if (
quickSaveNag(CampaignTutorialStage.SAVE_NAG_2, CampaignTutorialStage.SHOW_LEVELUP_DIALOG, 0)) {
266 if (
stage == CampaignTutorialStage.SHOW_LEVELUP_DIALOG &&
elapsed >= 1f) {
268 stage = CampaignTutorialStage.SHOW_LEVELUP_HINT;
273 if (
stage == CampaignTutorialStage.SHOW_LEVELUP_HINT) {
275 hints.setHint(0,
"- Press %s to open the character tab and consider your options",
true, Misc.getHighlightColor(), character);
276 stage = CampaignTutorialStage.WAIT_CHAR_TAB;
280 if (
stage == CampaignTutorialStage.WAIT_CHAR_TAB) {
281 CoreUITabId tab =
Global.
getSector().getCampaignUI().getCurrentCoreTab();
282 if (tab == CoreUITabId.CHARACTER) {
286 stage = CampaignTutorialStage.SHOW_LAY_IN_COURSE_DIALOG;
292 if (
stage == CampaignTutorialStage.SHOW_LAY_IN_COURSE_DIALOG &&
elapsed >= 1f) {
296 stage = CampaignTutorialStage.SHOW_LAY_IN_COURSE_HINT;
302 if (
stage == CampaignTutorialStage.SHOW_LAY_IN_COURSE_HINT) {
307 hints.setHint(2,
"- Press %s to open the intel tab, and select the mission",
false, Misc.getHighlightColor(),
intel);
308 hints.setHint(1,
"- Press %s to open the map on the mission target",
false, Misc.getHighlightColor(), openMap);
309 hints.setHint(0,
"- Click on " +
ancyra.getName() +
" and select " +
310 "%s, then press %s to close the map",
false, Misc.getHighlightColor(),
"\"Lay in Course\"", map);
311 stage = CampaignTutorialStage.WAITING_TO_LAY_IN_COURSE;
320 if (
stage == CampaignTutorialStage.WAITING_TO_LAY_IN_COURSE) {
321 float dist = Misc.getDistance(playerFleet.getLocation(),
ancyra.getLocation());
323 if (closedIn || (playerFleet.getInteractionTarget() !=
null &&
324 playerFleet.getInteractionTarget().getMarket() ==
ancyra.getMarket())) {
327 stage = CampaignTutorialStage.SHOW_SUSTAINED_BURN_DIALOG;
334 if (
stage == CampaignTutorialStage.SHOW_SUSTAINED_BURN_DIALOG &&
elapsed > 5f) {
336 stage = CampaignTutorialStage.SHOW_SUSTAINED_BURN_HINT;
341 if (
stage == CampaignTutorialStage.SHOW_SUSTAINED_BURN_HINT) {
343 hints.setHint(0,
"- Press %s to engage sustained burn",
true, Misc.getHighlightColor(), control);
344 stage = CampaignTutorialStage.WAIT_SUSTAINED_BURN_USE;
349 if (
stage == CampaignTutorialStage.WAIT_SUSTAINED_BURN_USE) {
350 AbilityPlugin sb = playerFleet.getAbility(Abilities.SUSTAINED_BURN);
351 float dist = Misc.getDistance(playerFleet.getLocation(),
ancyra.getLocation());
353 if ((sb !=
null && sb.isActive() &&
elapsed > 5f) || closedIn) {
356 stage = CampaignTutorialStage.SHOW_GO_SLOW_DIALOG;
363 if (
stage == CampaignTutorialStage.SHOW_GO_SLOW_DIALOG &&
366 stage = CampaignTutorialStage.SHOW_GO_SLOW_HINT;
371 if (
stage == CampaignTutorialStage.SHOW_GO_SLOW_HINT) {
374 hints.setHint(0,
"- Press and hold %s to move slowly through the asteroid belt",
true, Misc.getHighlightColor(), control);
375 stage = CampaignTutorialStage.WAITING_TO_GO_SLOW;
381 if (
stage == CampaignTutorialStage.WAITING_TO_GO_SLOW &&
383 float dist = Misc.getDistance(playerFleet.getLocation(),
ancyra.getLocation());
385 if (closedIn || (playerFleet.getInteractionTarget() !=
null &&
386 playerFleet.getInteractionTarget().getMarket() ==
ancyra.getMarket())) {
389 stage = CampaignTutorialStage.SHOW_TRANSPONDER_DIALOG;
396 if (
stage == CampaignTutorialStage.SHOW_TRANSPONDER_DIALOG) {
397 float dist = Misc.getDistance(playerFleet.getLocation(),
ancyra.getLocation());
400 stage = CampaignTutorialStage.SHOW_TRANSPONDER_HINT;
406 if (
stage == CampaignTutorialStage.SHOW_TRANSPONDER_HINT) {
408 hints.setHint(0,
"- Press %s twice to turn on the transponder",
true, Misc.getHighlightColor(), control);
409 stage = CampaignTutorialStage.WAIT_TRANSPONDER_USE;
414 if (
stage == CampaignTutorialStage.WAIT_TRANSPONDER_USE) {
415 AbilityPlugin transponder = playerFleet.getAbility(Abilities.TRANSPONDER);
416 if ((transponder !=
null && transponder.isActive())) {
418 stage = CampaignTutorialStage.DONE;