mirror of
https://github.com/SWG-Source/dsrc.git
synced 2026-07-31 00:15:54 -04:00
3340 lines
98 KiB
Plaintext
3340 lines
98 KiB
Plaintext
// ======================================================================
|
|
//
|
|
// npe_job_pointer.script
|
|
//
|
|
//
|
|
//
|
|
// Created with SwgConversationEditor 1.36 - DO NOT EDIT THIS AUTO-GENERATED FILE!
|
|
//
|
|
// ======================================================================
|
|
|
|
// ======================================================================
|
|
// Library Includes
|
|
// ======================================================================
|
|
|
|
include library.ai_lib;
|
|
include library.chat;
|
|
include library.groundquests;
|
|
include library.space_quest;
|
|
include library.utils;
|
|
|
|
// ======================================================================
|
|
// Script Constants
|
|
// ======================================================================
|
|
|
|
string c_stringFile = "conversation/npe_job_pointer";
|
|
|
|
// ======================================================================
|
|
// Script Conditions
|
|
// ======================================================================
|
|
|
|
boolean npe_job_pointer_condition__defaultCondition (obj_id player, obj_id npc)
|
|
{
|
|
return true;
|
|
}
|
|
|
|
// ----------------------------------------------------------------------
|
|
|
|
boolean npe_job_pointer_condition_finishedAllStation (obj_id player, obj_id npc)
|
|
{
|
|
return (groundquests.isQuestActiveOrComplete(player, "npe_side_smuggle") &&
|
|
groundquests.isQuestActiveOrComplete(player, "npe_side4") &&
|
|
groundquests.isQuestActiveOrComplete(player, "npe_brawler_4a") &&
|
|
groundquests.isQuestActiveOrComplete(player, "npe_side_hutt_slicers") &&
|
|
groundquests.isQuestActiveOrComplete(player, "npe_scout_1") &&
|
|
groundquests.isQuestActiveOrComplete(player, "npe_side3") &&
|
|
groundquests.isQuestActiveOrComplete(player, "npe_side5") &&
|
|
groundquests.isQuestActiveOrComplete(player, "npe_pilot_easy_4") &&
|
|
groundquests.isQuestActiveOrComplete(player, "npe_pilot_medium_4") &&
|
|
groundquests.isQuestActiveOrComplete(player, "npe_pilot_hard_3") &&
|
|
groundquests.isQuestActiveOrComplete(player, "npe_side2") &&
|
|
groundquests.isQuestActiveOrComplete(player, "npe_side_jolka") &&
|
|
groundquests.isQuestActiveOrComplete(player, "npe_inaldra_quest"));
|
|
}
|
|
|
|
// ----------------------------------------------------------------------
|
|
|
|
boolean npe_job_pointer_condition_needsAnvar (obj_id player, obj_id npc)
|
|
{
|
|
return groundquests.isQuestActiveOrComplete(player, "npe_entertainer_1");
|
|
}
|
|
|
|
// ----------------------------------------------------------------------
|
|
|
|
boolean npe_job_pointer_condition_finishedBartender (obj_id player, obj_id npc)
|
|
{
|
|
return groundquests.isQuestActiveOrComplete(player, "npe_new_artisan_quest");
|
|
}
|
|
|
|
// ----------------------------------------------------------------------
|
|
|
|
boolean npe_job_pointer_condition_needsLoche (obj_id player, obj_id npc)
|
|
{
|
|
return (groundquests.isQuestActiveOrComplete(player, "npe_marksman") &&
|
|
groundquests.isQuestActiveOrComplete(player, "npe_side_hutt_slicers"));
|
|
}
|
|
|
|
// ----------------------------------------------------------------------
|
|
|
|
boolean npe_job_pointer_condition_needsRydel (obj_id player, obj_id npc)
|
|
{
|
|
return (groundquests.isQuestActiveOrComplete(player, "npe_brawler_1") &&
|
|
groundquests.isQuestActiveOrComplete(player, "npe_brawler_2") &&
|
|
groundquests.isQuestActiveOrComplete(player, "npe_brawler_4a"));
|
|
}
|
|
|
|
// ----------------------------------------------------------------------
|
|
|
|
boolean npe_job_pointer_condition_needsLaetin (obj_id player, obj_id npc)
|
|
{
|
|
return (groundquests.isQuestActiveOrComplete(player, "npe_pilot_easy_1") &&
|
|
groundquests.isQuestActiveOrComplete(player, "npe_pilot_easy_2") &&
|
|
groundquests.isQuestActiveOrComplete(player, "npe_pilot_easy_3") &&
|
|
groundquests.isQuestActiveOrComplete(player, "npe_pilot_easy_4"));
|
|
}
|
|
|
|
// ----------------------------------------------------------------------
|
|
|
|
boolean npe_job_pointer_condition_needsDartas (obj_id player, obj_id npc)
|
|
{
|
|
return (groundquests.isQuestActiveOrComplete(player, "npe_pilot_hard_1") &&
|
|
groundquests.isQuestActiveOrComplete(player, "npe_pilot_hard_2") &&
|
|
groundquests.isQuestActiveOrComplete(player, "npe_pilot_hard_3"));
|
|
}
|
|
|
|
// ----------------------------------------------------------------------
|
|
|
|
boolean npe_job_pointer_condition_needsAleas (obj_id player, obj_id npc)
|
|
{
|
|
return (groundquests.isQuestActiveOrComplete(player, "npe_pilot_medium_1") &&
|
|
groundquests.isQuestActiveOrComplete(player, "npe_pilot_medium_2") &&
|
|
groundquests.isQuestActiveOrComplete(player, "npe_pilot_medium_3") &&
|
|
groundquests.isQuestActiveOrComplete(player, "npe_pilot_medium_4"));
|
|
}
|
|
|
|
// ----------------------------------------------------------------------
|
|
|
|
boolean npe_job_pointer_condition_needsRaylen (obj_id player, obj_id npc)
|
|
{
|
|
return groundquests.isQuestActiveOrComplete(player, "npe_scout_1");
|
|
}
|
|
|
|
// ----------------------------------------------------------------------
|
|
|
|
boolean npe_job_pointer_condition_needsTarand (obj_id player, obj_id npc)
|
|
{
|
|
return groundquests.isQuestActiveOrComplete(player, "npe_side_smuggle");
|
|
}
|
|
|
|
// ----------------------------------------------------------------------
|
|
|
|
boolean npe_job_pointer_condition_needsWyle (obj_id player, obj_id npc)
|
|
{
|
|
return groundquests.isQuestActiveOrComplete(player, "npe_side4");
|
|
}
|
|
|
|
// ----------------------------------------------------------------------
|
|
|
|
boolean npe_job_pointer_condition_needsDaevyn (obj_id player, obj_id npc)
|
|
{
|
|
return groundquests.isQuestActiveOrComplete(player, "npe_side2");
|
|
}
|
|
|
|
// ----------------------------------------------------------------------
|
|
|
|
boolean npe_job_pointer_condition_needsDroidEngineer (obj_id player, obj_id npc)
|
|
{
|
|
return (groundquests.hasCompletedQuest(player, "npe_marksman") &&
|
|
!groundquests.isQuestActiveOrComplete(player, "npe_side3"));
|
|
}
|
|
|
|
// ----------------------------------------------------------------------
|
|
|
|
boolean npe_job_pointer_condition_needsSecurityDirector (obj_id player, obj_id npc)
|
|
{
|
|
return groundquests.isQuestActiveOrComplete(player, "npe_side5");
|
|
}
|
|
|
|
// ----------------------------------------------------------------------
|
|
|
|
boolean npe_job_pointer_condition_hasTemplate (obj_id player, obj_id npc)
|
|
{
|
|
return hasObjVar(player, "npe.finishedTemplate");
|
|
}
|
|
|
|
// ----------------------------------------------------------------------
|
|
|
|
boolean npe_job_pointer_condition_needsFalrey (obj_id player, obj_id npc)
|
|
{
|
|
return groundquests.isQuestActiveOrComplete(player, "npe_imperial_1")||
|
|
groundquests.isQuestActiveOrComplete(player, "npe_rebel_1");
|
|
}
|
|
|
|
// ----------------------------------------------------------------------
|
|
|
|
boolean npe_job_pointer_condition_needsYsanna (obj_id player, obj_id npc)
|
|
{
|
|
return groundquests.isQuestActiveOrComplete(player, "npe_side_dungeon_soldier");
|
|
}
|
|
|
|
// ----------------------------------------------------------------------
|
|
|
|
boolean npe_job_pointer_condition_finishedCantina (obj_id player, obj_id npc)
|
|
{
|
|
return (groundquests.isQuestActiveOrComplete(player, "npe_side_smuggle") &&
|
|
groundquests.isQuestActiveOrComplete(player, "npe_side4"));
|
|
}
|
|
|
|
// ----------------------------------------------------------------------
|
|
|
|
boolean npe_job_pointer_condition_needsSerissu (obj_id player, obj_id npc)
|
|
{
|
|
return (groundquests.isQuestActiveOrComplete(player, "npe_pilot_first_mission_no_ground") &&
|
|
groundquests.isQuestActiveOrComplete(player, "npe_pilot_training_2") &&
|
|
groundquests.isQuestActiveOrComplete(player, "npe_pilot_training_3"));
|
|
}
|
|
|
|
// ----------------------------------------------------------------------
|
|
|
|
boolean npe_job_pointer_condition_finishedHangar1 (obj_id player, obj_id npc)
|
|
{
|
|
return (groundquests.isQuestActiveOrComplete(player, "npe_pilot_easy_4") &&
|
|
groundquests.isQuestActiveOrComplete(player, "npe_pilot_medium_4") &&
|
|
groundquests.isQuestActiveOrComplete(player, "npe_pilot_hard_4") &&
|
|
groundquests.isQuestActiveOrComplete(player, "npe_side2"));
|
|
}
|
|
|
|
// ----------------------------------------------------------------------
|
|
|
|
boolean npe_job_pointer_condition_finishedCombatTraining (obj_id player, obj_id npc)
|
|
{
|
|
return (groundquests.isQuestActiveOrComplete(player, "npe_brawler_4a") &&
|
|
groundquests.isQuestActiveOrComplete(player, "npe_side_hutt_slicers") &&
|
|
groundquests.isQuestActiveOrComplete(player, "npe_scout_1") &&
|
|
groundquests.isQuestActiveOrComplete(player, "npe_side3") &&
|
|
groundquests.isQuestActiveOrComplete(player, "npe_side5"));
|
|
}
|
|
|
|
// ----------------------------------------------------------------------
|
|
|
|
boolean npe_job_pointer_condition_needsAja (obj_id player, obj_id npc)
|
|
{
|
|
return groundquests.isQuestActiveOrComplete(player, "npe_side_dungeon_dna");
|
|
}
|
|
|
|
// ----------------------------------------------------------------------
|
|
|
|
boolean npe_job_pointer_condition_needsFrelka (obj_id player, obj_id npc)
|
|
{
|
|
return ( groundquests.isQuestActiveOrComplete(player, "npe_frelka_transition") ||
|
|
groundquests.isQuestActiveOrComplete(player, "npe_frelka_transition_2") ||
|
|
groundquests.isQuestActiveOrComplete(player, "npe_frelka_quest") );
|
|
}
|
|
|
|
// ----------------------------------------------------------------------
|
|
|
|
boolean npe_job_pointer_condition_finishedHan (obj_id player, obj_id npc)
|
|
{
|
|
return groundquests.isQuestActiveOrComplete(player, "npe_new_main_quest");
|
|
}
|
|
|
|
// ----------------------------------------------------------------------
|
|
|
|
boolean npe_job_pointer_condition_needsJolka (obj_id player, obj_id npc)
|
|
{
|
|
return groundquests.isQuestActiveOrComplete(player, "npe_side_jolka");
|
|
}
|
|
|
|
// ----------------------------------------------------------------------
|
|
|
|
boolean npe_job_pointer_condition_finishedHangar2 (obj_id player, obj_id npc)
|
|
{
|
|
return groundquests.isQuestActiveOrComplete(player, "npe_side_jolka");
|
|
}
|
|
|
|
// ----------------------------------------------------------------------
|
|
|
|
boolean npe_job_pointer_condition_needsInaldra (obj_id player, obj_id npc)
|
|
{
|
|
return groundquests.isQuestActiveOrComplete(player, "npe_inaldra_quest");
|
|
}
|
|
|
|
// ----------------------------------------------------------------------
|
|
|
|
boolean npe_job_pointer_condition_needsGarek (obj_id player, obj_id npc)
|
|
{
|
|
return ((groundquests.isQuestActiveOrComplete(player, "npe_rebel_2") || groundquests.isQuestActiveOrComplete(player, "npe_rebel_2")) ||
|
|
groundquests.isQuestActiveOrComplete(player, "npe_imperial_1"));
|
|
}
|
|
|
|
// ----------------------------------------------------------------------
|
|
|
|
boolean npe_job_pointer_condition_finishedStationMasterOffice (obj_id player, obj_id npc)
|
|
{
|
|
return (groundquests.isQuestActiveOrComplete(player, "npe_inaldra_quest") ||
|
|
!groundquests.hasCompletedQuest(player, "npe_new_main_quest"));
|
|
}
|
|
|
|
// ----------------------------------------------------------------------
|
|
|
|
boolean npe_job_pointer_condition_anAssignmentActive (obj_id player, obj_id npc)
|
|
{
|
|
return groundquests.isQuestActive(player, "npe_job_pointer_aja") ||
|
|
groundquests.isQuestActive(player, "npe_job_pointer_aleas") ||
|
|
groundquests.isQuestActive(player, "npe_job_pointer_anvar") ||
|
|
groundquests.isQuestActive(player, "npe_job_pointer_bartender") ||
|
|
groundquests.isQuestActive(player, "npe_job_pointer_deavyn") ||
|
|
groundquests.isQuestActive(player, "npe_job_pointer_dartas") ||
|
|
groundquests.isQuestActive(player, "npe_job_pointer_droid_engineer") ||
|
|
groundquests.isQuestActive(player, "npe_job_pointer_falrey") ||
|
|
groundquests.isQuestActive(player, "npe_job_pointer_han") ||
|
|
groundquests.isQuestActive(player, "npe_job_pointer_inaldra") ||
|
|
groundquests.isQuestActive(player, "npe_job_pointer_jolka") ||
|
|
groundquests.isQuestActive(player, "npe_job_pointer_laetin") ||
|
|
groundquests.isQuestActive(player, "npe_job_pointer_loche") ||
|
|
groundquests.isQuestActive(player, "npe_job_pointer_raylen") ||
|
|
groundquests.isQuestActive(player, "npe_job_pointer_rydel") ||
|
|
groundquests.isQuestActive(player, "npe_job_pointer_security_director") ||
|
|
groundquests.isQuestActive(player, "npe_job_pointer_serissu") ||
|
|
groundquests.isQuestActive(player, "npe_job_pointer_tarand") ||
|
|
groundquests.isQuestActive(player, "npe_job_pointer_wyle") ||
|
|
groundquests.isQuestActive(player, "npe_job_pointer_ysanna");
|
|
}
|
|
|
|
// ----------------------------------------------------------------------
|
|
|
|
boolean npe_job_pointer_condition_isBH (obj_id player, obj_id npc)
|
|
{
|
|
return utils.isProfession(player, utils.BOUNTY_HUNTER);
|
|
}
|
|
|
|
// ----------------------------------------------------------------------
|
|
|
|
boolean npe_job_pointer_condition_finishedAllGamma (obj_id player, obj_id npc)
|
|
{
|
|
return ( groundquests.isQuestActiveOrComplete(player, "npe_side_dungeon_soldier") &&
|
|
groundquests.isQuestActiveOrComplete(player, "npe_side_dungeon_dna") &&
|
|
groundquests.isQuestActiveOrComplete(player, "npe_frelka_transition") &&
|
|
(groundquests.isQuestActiveOrComplete(player, "npe_imperial_1") || groundquests.isQuestActiveOrComplete(player, "npe_rebel_2")) );
|
|
|
|
}
|
|
|
|
// ======================================================================
|
|
// Script Actions
|
|
// ======================================================================
|
|
|
|
void npe_job_pointer_action_giveJobPointerAja (obj_id player, obj_id npc)
|
|
{
|
|
groundquests.grantQuest(player, "npe_job_pointer_aja");
|
|
}
|
|
|
|
// ----------------------------------------------------------------------
|
|
|
|
void npe_job_pointer_action_facePlayer (obj_id player, obj_id npc)
|
|
{
|
|
faceTo(npc, player);
|
|
}
|
|
|
|
// ----------------------------------------------------------------------
|
|
|
|
void npe_job_pointer_action_giveJobPointerBartender (obj_id player, obj_id npc)
|
|
{
|
|
groundquests.grantQuest(player, "npe_job_pointer_bartender");
|
|
}
|
|
|
|
// ----------------------------------------------------------------------
|
|
|
|
void npe_job_pointer_action_giveJobPointerAnvar (obj_id player, obj_id npc)
|
|
{
|
|
groundquests.grantQuest(player, "npe_job_pointer_anvar");
|
|
}
|
|
|
|
// ----------------------------------------------------------------------
|
|
|
|
void npe_job_pointer_action_giveJobPointerTarand (obj_id player, obj_id npc)
|
|
{
|
|
groundquests.grantQuest(player, "npe_job_pointer_tarand");
|
|
}
|
|
|
|
// ----------------------------------------------------------------------
|
|
|
|
void npe_job_pointer_action_giveJobPointerWyle (obj_id player, obj_id npc)
|
|
{
|
|
groundquests.grantQuest(player, "npe_job_pointer_wyle");
|
|
}
|
|
|
|
// ----------------------------------------------------------------------
|
|
|
|
void npe_job_pointer_action_giveJobPointerFalrey (obj_id player, obj_id npc)
|
|
{
|
|
groundquests.grantQuest(player, "npe_job_pointer_falrey");
|
|
}
|
|
|
|
// ----------------------------------------------------------------------
|
|
|
|
void npe_job_pointer_action_giveJobPointerYsanna (obj_id player, obj_id npc)
|
|
{
|
|
groundquests.grantQuest(player, "npe_job_pointer_ysanna");
|
|
}
|
|
|
|
// ----------------------------------------------------------------------
|
|
|
|
void npe_job_pointer_action_giveJobPointerSerissu (obj_id player, obj_id npc)
|
|
{
|
|
groundquests.grantQuest(player, "npe_job_pointer_serissu");
|
|
}
|
|
|
|
// ----------------------------------------------------------------------
|
|
|
|
void npe_job_pointer_action_giveJobPointerLaetin (obj_id player, obj_id npc)
|
|
{
|
|
groundquests.grantQuest(player, "npe_job_pointer_laetin");
|
|
}
|
|
|
|
// ----------------------------------------------------------------------
|
|
|
|
void npe_job_pointer_action_giveJobPointerDartas (obj_id player, obj_id npc)
|
|
{
|
|
groundquests.grantQuest(player, "npe_job_pointer_dartas");
|
|
}
|
|
|
|
// ----------------------------------------------------------------------
|
|
|
|
void npe_job_pointer_action_giveJobPointerAleas (obj_id player, obj_id npc)
|
|
{
|
|
groundquests.grantQuest(player, "npe_job_pointer_aleas");
|
|
}
|
|
|
|
// ----------------------------------------------------------------------
|
|
|
|
void npe_job_pointer_action_giveJobPointerDaevyn (obj_id player, obj_id npc)
|
|
{
|
|
groundquests.grantQuest(player, "npe_job_pointer_deavyn");
|
|
}
|
|
|
|
// ----------------------------------------------------------------------
|
|
|
|
void npe_job_pointer_action_giveJobPointerSecurityDirector (obj_id player, obj_id npc)
|
|
{
|
|
groundquests.grantQuest(player, "npe_job_pointer_security_director");
|
|
}
|
|
|
|
// ----------------------------------------------------------------------
|
|
|
|
void npe_job_pointer_action_giveJobPointerDroidEngineer (obj_id player, obj_id npc)
|
|
{
|
|
groundquests.grantQuest(player, "npe_job_pointer_droid_engineer");
|
|
}
|
|
|
|
// ----------------------------------------------------------------------
|
|
|
|
void npe_job_pointer_action_giveJobPointerRaylen (obj_id player, obj_id npc)
|
|
{
|
|
groundquests.grantQuest(player, "npe_job_pointer_raylen");
|
|
}
|
|
|
|
// ----------------------------------------------------------------------
|
|
|
|
void npe_job_pointer_action_giveJobPointerLoche (obj_id player, obj_id npc)
|
|
{
|
|
groundquests.grantQuest(player, "npe_job_pointer_loche");
|
|
}
|
|
|
|
// ----------------------------------------------------------------------
|
|
|
|
void npe_job_pointer_action_giveJobPointerRydel (obj_id player, obj_id npc)
|
|
{
|
|
groundquests.grantQuest(player, "npe_job_pointer_rydel");
|
|
}
|
|
|
|
// ----------------------------------------------------------------------
|
|
|
|
void npe_job_pointer_action_giveJobPointerHan (obj_id player, obj_id npc)
|
|
{
|
|
groundquests.grantQuest(player, "npe_job_pointer_han");
|
|
}
|
|
|
|
// ----------------------------------------------------------------------
|
|
|
|
void npe_job_pointer_action_giveJobPointerJolka (obj_id player, obj_id npc)
|
|
{
|
|
groundquests.grantQuest(player, "npe_job_pointer_jolka");
|
|
}
|
|
|
|
// ----------------------------------------------------------------------
|
|
|
|
void npe_job_pointer_action_giveJobPointerInaldra (obj_id player, obj_id npc)
|
|
{
|
|
groundquests.grantQuest(player, "npe_job_pointer_inaldra");
|
|
}
|
|
|
|
// ----------------------------------------------------------------------
|
|
|
|
void npe_job_pointer_action_signalMyPointer (obj_id player, obj_id npc)
|
|
{
|
|
groundquests.sendSignal(player, "talked_to_secretary");
|
|
}
|
|
|
|
// ----------------------------------------------------------------------
|
|
|
|
void npe_job_pointer_action_giveJobPointerGarek (obj_id player, obj_id npc)
|
|
{
|
|
groundquests.grantQuest(player, "npe_job_pointer_garek");
|
|
}
|
|
|
|
// ----------------------------------------------------------------------
|
|
|
|
void npe_job_pointer_action_giveBobaPointer (obj_id player, obj_id npc)
|
|
{
|
|
groundquests.grantQuest(player, "npe_pointer_boba");
|
|
}
|
|
|
|
// ----------------------------------------------------------------------
|
|
|
|
void npe_job_pointer_action_givePointerFrelka (obj_id player, obj_id npc)
|
|
{
|
|
groundquests.requestGrantQuest(player, "npe_pointer_gamma");
|
|
}
|
|
|
|
// ======================================================================
|
|
// Script %TO Tokens
|
|
// ======================================================================
|
|
|
|
// ======================================================================
|
|
// Script %DI Tokens
|
|
// ======================================================================
|
|
|
|
// ======================================================================
|
|
// Script %DF Tokens
|
|
// ======================================================================
|
|
|
|
// ======================================================================
|
|
// handleBranch<n> Functions
|
|
// ======================================================================
|
|
|
|
int npe_job_pointer_handleBranch2 (obj_id player, obj_id npc, string_id response)
|
|
{
|
|
//-- [BRANCH NOTE]
|
|
//-- NPC: You look like you're looking for work. Can I help you with that?
|
|
|
|
//-- [RESPONSE NOTE]
|
|
//-- PLAYER: Yes, I want to find some more adventure and excitement.
|
|
if (response == "s_123")
|
|
{
|
|
//-- [NOTE]
|
|
if (!npe_job_pointer_condition_hasTemplate (player, npc))
|
|
{
|
|
//-- NPC: All of my task requisitions require experience. Please finish with your trainer before requesting a job.
|
|
string_id message = new string_id (c_stringFile, "s_125");
|
|
utils.removeScriptVar (player, "conversation.npe_job_pointer.branchId");
|
|
|
|
npcEndConversationWithMessage (player, message);
|
|
|
|
return SCRIPT_CONTINUE;
|
|
}
|
|
|
|
//-- [NOTE]
|
|
if (npe_job_pointer_condition_finishedAllGamma (player, npc))
|
|
{
|
|
//-- NPC: It seems you have completed all the open tasks for Station Gamma.
|
|
string_id message = new string_id (c_stringFile, "s_132");
|
|
utils.removeScriptVar (player, "conversation.npe_job_pointer.branchId");
|
|
|
|
npcEndConversationWithMessage (player, message);
|
|
|
|
return SCRIPT_CONTINUE;
|
|
}
|
|
|
|
//-- [NOTE]
|
|
if (npe_job_pointer_condition__defaultCondition (player, npc))
|
|
{
|
|
//-- NPC: Ah, yes. Well there are several people who need help with tasks at Station Gamma. What would you like to do?
|
|
string_id message = new string_id (c_stringFile, "s_130");
|
|
int numberOfResponses = 0;
|
|
|
|
boolean hasResponse = false;
|
|
|
|
//-- PLAYER: Frelka got hurt treasure hunting?
|
|
boolean hasResponse0 = false;
|
|
if (!npe_job_pointer_condition_needsFrelka (player, npc))
|
|
{
|
|
++numberOfResponses;
|
|
hasResponse = true;
|
|
hasResponse0 = true;
|
|
}
|
|
|
|
//-- PLAYER: Agent Falrey looks mysterious. I want to check that out.
|
|
boolean hasResponse1 = false;
|
|
if (!npe_job_pointer_condition_needsFalrey (player, npc))
|
|
{
|
|
++numberOfResponses;
|
|
hasResponse = true;
|
|
hasResponse1 = true;
|
|
}
|
|
|
|
//-- PLAYER: Ysanna needs help finding someone in Station Gamma. I'll provide it.
|
|
boolean hasResponse2 = false;
|
|
if (!npe_job_pointer_condition_needsYsanna (player, npc))
|
|
{
|
|
++numberOfResponses;
|
|
hasResponse = true;
|
|
hasResponse2 = true;
|
|
}
|
|
|
|
//-- PLAYER: It's always good to have a doctor like Aja Sen around. I'll help her.
|
|
boolean hasResponse3 = false;
|
|
if (!npe_job_pointer_condition_needsAja (player, npc))
|
|
{
|
|
++numberOfResponses;
|
|
hasResponse = true;
|
|
hasResponse3 = true;
|
|
}
|
|
|
|
//-- PLAYER: Garek needs a courier? Sounds interesting.
|
|
boolean hasResponse4 = false;
|
|
if (!npe_job_pointer_condition_needsGarek (player, npc))
|
|
{
|
|
++numberOfResponses;
|
|
hasResponse = true;
|
|
hasResponse4 = true;
|
|
}
|
|
|
|
if (hasResponse)
|
|
{
|
|
int responseIndex = 0;
|
|
string_id responses [] = new string_id [numberOfResponses];
|
|
|
|
if (hasResponse0)
|
|
responses [responseIndex++] = new string_id (c_stringFile, "s_103");
|
|
|
|
if (hasResponse1)
|
|
responses [responseIndex++] = new string_id (c_stringFile, "s_137");
|
|
|
|
if (hasResponse2)
|
|
responses [responseIndex++] = new string_id (c_stringFile, "s_141");
|
|
|
|
if (hasResponse3)
|
|
responses [responseIndex++] = new string_id (c_stringFile, "s_145");
|
|
|
|
if (hasResponse4)
|
|
responses [responseIndex++] = new string_id (c_stringFile, "s_149");
|
|
|
|
utils.setScriptVar (player, "conversation.npe_job_pointer.branchId", 5);
|
|
|
|
npcSpeak (player, message);
|
|
npcSetConversationResponses (player, responses);
|
|
}
|
|
else
|
|
{
|
|
utils.removeScriptVar (player, "conversation.npe_job_pointer.branchId");
|
|
|
|
npcEndConversationWithMessage (player, message);
|
|
}
|
|
|
|
return SCRIPT_CONTINUE;
|
|
}
|
|
|
|
}
|
|
|
|
//-- [RESPONSE NOTE]
|
|
//-- PLAYER: Yes! I want a way to make money.
|
|
if (response == "s_23")
|
|
{
|
|
//-- [NOTE]
|
|
if (!npe_job_pointer_condition_hasTemplate (player, npc))
|
|
{
|
|
//-- NPC: All of my task requisitions require experience. Please finish with your trainer before requesting a job.
|
|
string_id message = new string_id (c_stringFile, "s_127");
|
|
int numberOfResponses = 0;
|
|
|
|
boolean hasResponse = false;
|
|
|
|
//-- PLAYER: Thank you. I'll come back.
|
|
boolean hasResponse0 = false;
|
|
if (npe_job_pointer_condition__defaultCondition (player, npc))
|
|
{
|
|
++numberOfResponses;
|
|
hasResponse = true;
|
|
hasResponse0 = true;
|
|
}
|
|
|
|
if (hasResponse)
|
|
{
|
|
int responseIndex = 0;
|
|
string_id responses [] = new string_id [numberOfResponses];
|
|
|
|
if (hasResponse0)
|
|
responses [responseIndex++] = new string_id (c_stringFile, "s_128");
|
|
|
|
utils.setScriptVar (player, "conversation.npe_job_pointer.branchId", 12);
|
|
|
|
npcSpeak (player, message);
|
|
npcSetConversationResponses (player, responses);
|
|
}
|
|
else
|
|
{
|
|
utils.removeScriptVar (player, "conversation.npe_job_pointer.branchId");
|
|
|
|
npcEndConversationWithMessage (player, message);
|
|
}
|
|
|
|
return SCRIPT_CONTINUE;
|
|
}
|
|
|
|
//-- [NOTE]
|
|
if (npe_job_pointer_condition_finishedAllStation (player, npc))
|
|
{
|
|
npe_job_pointer_action_signalMyPointer (player, npc);
|
|
|
|
//-- NPC: I'm sorry. You seem to have finished all open requisitions for Tansarii Point Station for the moment.
|
|
string_id message = new string_id (c_stringFile, "s_126");
|
|
utils.removeScriptVar (player, "conversation.npe_job_pointer.branchId");
|
|
|
|
npcEndConversationWithMessage (player, message);
|
|
|
|
return SCRIPT_CONTINUE;
|
|
}
|
|
|
|
//-- [NOTE]
|
|
if (npe_job_pointer_condition__defaultCondition (player, npc))
|
|
{
|
|
//-- NPC: Excellent. I have several requests. I can point you to them, but help me narrow down where you want to work.
|
|
string_id message = new string_id (c_stringFile, "s_29");
|
|
int numberOfResponses = 0;
|
|
|
|
boolean hasResponse = false;
|
|
|
|
//-- PLAYER: Who's looking for help in the Cantina?
|
|
boolean hasResponse0 = false;
|
|
if (!npe_job_pointer_condition_finishedCantina (player, npc))
|
|
{
|
|
++numberOfResponses;
|
|
hasResponse = true;
|
|
hasResponse0 = true;
|
|
}
|
|
|
|
//-- PLAYER: Who has some work for me in Hangar Bay 1?
|
|
boolean hasResponse1 = false;
|
|
if (!npe_job_pointer_condition_finishedHangar1 (player, npc))
|
|
{
|
|
++numberOfResponses;
|
|
hasResponse = true;
|
|
hasResponse1 = true;
|
|
}
|
|
|
|
//-- PLAYER: Who can put me to work in the Combat Training rooms?
|
|
boolean hasResponse2 = false;
|
|
if (!npe_job_pointer_condition_finishedCombatTraining (player, npc))
|
|
{
|
|
++numberOfResponses;
|
|
hasResponse = true;
|
|
hasResponse2 = true;
|
|
}
|
|
|
|
//-- PLAYER: Who's needs some help in Hangar Bay 2?
|
|
boolean hasResponse3 = false;
|
|
if (!npe_job_pointer_condition_finishedHangar2 (player, npc))
|
|
{
|
|
++numberOfResponses;
|
|
hasResponse = true;
|
|
hasResponse3 = true;
|
|
}
|
|
|
|
//-- PLAYER: Who needs assistance around here?
|
|
boolean hasResponse4 = false;
|
|
if (!npe_job_pointer_condition_finishedStationMasterOffice (player, npc))
|
|
{
|
|
++numberOfResponses;
|
|
hasResponse = true;
|
|
hasResponse4 = true;
|
|
}
|
|
|
|
if (hasResponse)
|
|
{
|
|
int responseIndex = 0;
|
|
string_id responses [] = new string_id [numberOfResponses];
|
|
|
|
if (hasResponse0)
|
|
responses [responseIndex++] = new string_id (c_stringFile, "s_31");
|
|
|
|
if (hasResponse1)
|
|
responses [responseIndex++] = new string_id (c_stringFile, "s_43");
|
|
|
|
if (hasResponse2)
|
|
responses [responseIndex++] = new string_id (c_stringFile, "s_70");
|
|
|
|
if (hasResponse3)
|
|
responses [responseIndex++] = new string_id (c_stringFile, "s_98");
|
|
|
|
if (hasResponse4)
|
|
responses [responseIndex++] = new string_id (c_stringFile, "s_110");
|
|
|
|
utils.setScriptVar (player, "conversation.npe_job_pointer.branchId", 15);
|
|
|
|
npcSpeak (player, message);
|
|
npcSetConversationResponses (player, responses);
|
|
}
|
|
else
|
|
{
|
|
utils.removeScriptVar (player, "conversation.npe_job_pointer.branchId");
|
|
|
|
npcEndConversationWithMessage (player, message);
|
|
}
|
|
|
|
return SCRIPT_CONTINUE;
|
|
}
|
|
|
|
}
|
|
|
|
//-- [RESPONSE NOTE]
|
|
//-- PLAYER: I just want to get off this station, and explore the galaxy.
|
|
if (response == "s_115")
|
|
{
|
|
//-- [NOTE]
|
|
if (npe_job_pointer_condition_isBH (player, npc))
|
|
{
|
|
npe_job_pointer_action_giveBobaPointer (player, npc);
|
|
|
|
//-- NPC: You should talk to Boba Fett. I think he has a task that will take you off this station.
|
|
string_id message = new string_id (c_stringFile, "s_119");
|
|
utils.removeScriptVar (player, "conversation.npe_job_pointer.branchId");
|
|
|
|
npcEndConversationWithMessage (player, message);
|
|
|
|
return SCRIPT_CONTINUE;
|
|
}
|
|
|
|
//-- [NOTE]
|
|
if (npe_job_pointer_condition__defaultCondition (player, npc))
|
|
{
|
|
npe_job_pointer_action_giveJobPointerHan (player, npc);
|
|
|
|
//-- NPC: How did you arrive? You should talk to the pilot who brought you here.
|
|
string_id message = new string_id (c_stringFile, "s_121");
|
|
utils.removeScriptVar (player, "conversation.npe_job_pointer.branchId");
|
|
|
|
npcEndConversationWithMessage (player, message);
|
|
|
|
return SCRIPT_CONTINUE;
|
|
}
|
|
|
|
}
|
|
|
|
//-- [RESPONSE NOTE]
|
|
//-- PLAYER: No thanks. I'm just looking around.
|
|
if (response == "s_131")
|
|
{
|
|
//-- [NOTE]
|
|
if (npe_job_pointer_condition__defaultCondition (player, npc))
|
|
{
|
|
//-- NPC: Very well. If you want work, come back and talk to me.
|
|
string_id message = new string_id (c_stringFile, "s_134");
|
|
utils.removeScriptVar (player, "conversation.npe_job_pointer.branchId");
|
|
|
|
npcEndConversationWithMessage (player, message);
|
|
|
|
return SCRIPT_CONTINUE;
|
|
}
|
|
|
|
}
|
|
|
|
return SCRIPT_DEFAULT;
|
|
}
|
|
|
|
// ----------------------------------------------------------------------
|
|
|
|
int npe_job_pointer_handleBranch5 (obj_id player, obj_id npc, string_id response)
|
|
{
|
|
//-- [BRANCH NOTE]
|
|
//-- NPC: Ah, yes. Well there are several people who need help with tasks at Station Gamma. What would you like to do?
|
|
|
|
//-- [RESPONSE NOTE]
|
|
//-- PLAYER: Frelka got hurt treasure hunting?
|
|
if (response == "s_103")
|
|
{
|
|
//-- [NOTE]
|
|
if (npe_job_pointer_condition__defaultCondition (player, npc))
|
|
{
|
|
npe_job_pointer_action_givePointerFrelka (player, npc);
|
|
|
|
//-- NPC: He is an angry fellow, right now. Here's his location.
|
|
string_id message = new string_id (c_stringFile, "s_104");
|
|
utils.removeScriptVar (player, "conversation.npe_job_pointer.branchId");
|
|
|
|
npcEndConversationWithMessage (player, message);
|
|
|
|
return SCRIPT_CONTINUE;
|
|
}
|
|
|
|
}
|
|
|
|
//-- [RESPONSE NOTE]
|
|
//-- PLAYER: Agent Falrey looks mysterious. I want to check that out.
|
|
if (response == "s_137")
|
|
{
|
|
//-- [NOTE]
|
|
if (npe_job_pointer_condition__defaultCondition (player, npc))
|
|
{
|
|
npe_job_pointer_action_giveJobPointerFalrey (player, npc);
|
|
|
|
//-- NPC: He's a little odd. Here's his location. Careful there.
|
|
string_id message = new string_id (c_stringFile, "s_139");
|
|
utils.removeScriptVar (player, "conversation.npe_job_pointer.branchId");
|
|
|
|
npcEndConversationWithMessage (player, message);
|
|
|
|
return SCRIPT_CONTINUE;
|
|
}
|
|
|
|
}
|
|
|
|
//-- [RESPONSE NOTE]
|
|
//-- PLAYER: Ysanna needs help finding someone in Station Gamma. I'll provide it.
|
|
if (response == "s_141")
|
|
{
|
|
//-- [NOTE]
|
|
if (npe_job_pointer_condition__defaultCondition (player, npc))
|
|
{
|
|
npe_job_pointer_action_giveJobPointerYsanna (player, npc);
|
|
|
|
//-- NPC: Excellent. She's been distressed. I'll put her location in your datapad.
|
|
string_id message = new string_id (c_stringFile, "s_143");
|
|
utils.removeScriptVar (player, "conversation.npe_job_pointer.branchId");
|
|
|
|
npcEndConversationWithMessage (player, message);
|
|
|
|
return SCRIPT_CONTINUE;
|
|
}
|
|
|
|
}
|
|
|
|
//-- [RESPONSE NOTE]
|
|
//-- PLAYER: It's always good to have a doctor like Aja Sen around. I'll help her.
|
|
if (response == "s_145")
|
|
{
|
|
//-- [NOTE]
|
|
if (npe_job_pointer_condition__defaultCondition (player, npc))
|
|
{
|
|
npe_job_pointer_action_giveJobPointerAja (player, npc);
|
|
|
|
//-- NPC: That's an excellent plan. Here is the location.
|
|
string_id message = new string_id (c_stringFile, "s_147");
|
|
utils.removeScriptVar (player, "conversation.npe_job_pointer.branchId");
|
|
|
|
npcEndConversationWithMessage (player, message);
|
|
|
|
return SCRIPT_CONTINUE;
|
|
}
|
|
|
|
}
|
|
|
|
//-- [RESPONSE NOTE]
|
|
//-- PLAYER: Garek needs a courier? Sounds interesting.
|
|
if (response == "s_149")
|
|
{
|
|
//-- [NOTE]
|
|
if (npe_job_pointer_condition__defaultCondition (player, npc))
|
|
{
|
|
//-- NPC: He's just behind the screen there. Please keep his location to yourself. He's not welcome in more...civilized company, if you get my meaning.
|
|
string_id message = new string_id (c_stringFile, "s_151");
|
|
int numberOfResponses = 0;
|
|
|
|
boolean hasResponse = false;
|
|
|
|
//-- PLAYER: I think I might.
|
|
boolean hasResponse0 = false;
|
|
if (npe_job_pointer_condition__defaultCondition (player, npc))
|
|
{
|
|
++numberOfResponses;
|
|
hasResponse = true;
|
|
hasResponse0 = true;
|
|
}
|
|
|
|
if (hasResponse)
|
|
{
|
|
int responseIndex = 0;
|
|
string_id responses [] = new string_id [numberOfResponses];
|
|
|
|
if (hasResponse0)
|
|
responses [responseIndex++] = new string_id (c_stringFile, "s_153");
|
|
|
|
utils.setScriptVar (player, "conversation.npe_job_pointer.branchId", 10);
|
|
|
|
npcSpeak (player, message);
|
|
npcSetConversationResponses (player, responses);
|
|
}
|
|
else
|
|
{
|
|
utils.removeScriptVar (player, "conversation.npe_job_pointer.branchId");
|
|
|
|
npcEndConversationWithMessage (player, message);
|
|
}
|
|
|
|
return SCRIPT_CONTINUE;
|
|
}
|
|
|
|
}
|
|
|
|
return SCRIPT_DEFAULT;
|
|
}
|
|
|
|
// ----------------------------------------------------------------------
|
|
|
|
int npe_job_pointer_handleBranch10 (obj_id player, obj_id npc, string_id response)
|
|
{
|
|
//-- [BRANCH NOTE]
|
|
//-- NPC: He's just behind the screen there. Please keep his location to yourself. He's not welcome in more...civilized company, if you get my meaning.
|
|
|
|
//-- [RESPONSE NOTE]
|
|
//-- PLAYER: I think I might.
|
|
if (response == "s_153")
|
|
{
|
|
//-- [NOTE]
|
|
if (npe_job_pointer_condition__defaultCondition (player, npc))
|
|
{
|
|
npe_job_pointer_action_giveJobPointerGarek (player, npc);
|
|
|
|
//-- NPC: Good.
|
|
string_id message = new string_id (c_stringFile, "s_155");
|
|
utils.removeScriptVar (player, "conversation.npe_job_pointer.branchId");
|
|
|
|
npcEndConversationWithMessage (player, message);
|
|
|
|
return SCRIPT_CONTINUE;
|
|
}
|
|
|
|
}
|
|
|
|
return SCRIPT_DEFAULT;
|
|
}
|
|
|
|
// ----------------------------------------------------------------------
|
|
|
|
int npe_job_pointer_handleBranch12 (obj_id player, obj_id npc, string_id response)
|
|
{
|
|
//-- [BRANCH NOTE]
|
|
//-- NPC: All of my task requisitions require experience. Please finish with your trainer before requesting a job.
|
|
|
|
//-- [RESPONSE NOTE]
|
|
//-- PLAYER: Thank you. I'll come back.
|
|
if (response == "s_128")
|
|
{
|
|
//-- [NOTE]
|
|
if (npe_job_pointer_condition__defaultCondition (player, npc))
|
|
{
|
|
//-- NPC: I'm sure that I will still have work for you.
|
|
string_id message = new string_id (c_stringFile, "s_129");
|
|
utils.removeScriptVar (player, "conversation.npe_job_pointer.branchId");
|
|
|
|
npcEndConversationWithMessage (player, message);
|
|
|
|
return SCRIPT_CONTINUE;
|
|
}
|
|
|
|
}
|
|
|
|
return SCRIPT_DEFAULT;
|
|
}
|
|
|
|
// ----------------------------------------------------------------------
|
|
|
|
int npe_job_pointer_handleBranch15 (obj_id player, obj_id npc, string_id response)
|
|
{
|
|
//-- [BRANCH NOTE]
|
|
//-- NPC: Excellent. I have several requests. I can point you to them, but help me narrow down where you want to work.
|
|
|
|
//-- [RESPONSE NOTE]
|
|
//-- PLAYER: Who's looking for help in the Cantina?
|
|
if (response == "s_31")
|
|
{
|
|
//-- [NOTE]
|
|
if (npe_job_pointer_condition__defaultCondition (player, npc))
|
|
{
|
|
//-- NPC: All right, here's the list. Who do you want to talk to?
|
|
string_id message = new string_id (c_stringFile, "s_33");
|
|
int numberOfResponses = 0;
|
|
|
|
boolean hasResponse = false;
|
|
|
|
//-- PLAYER: Tarand Crowe needs a messenger? I can do that.
|
|
boolean hasResponse0 = false;
|
|
if (!npe_job_pointer_condition_needsTarand (player, npc))
|
|
{
|
|
++numberOfResponses;
|
|
hasResponse = true;
|
|
hasResponse0 = true;
|
|
}
|
|
|
|
//-- PLAYER: I'll help Wyle do some hunting.
|
|
boolean hasResponse1 = false;
|
|
if (!npe_job_pointer_condition_needsWyle (player, npc))
|
|
{
|
|
++numberOfResponses;
|
|
hasResponse = true;
|
|
hasResponse1 = true;
|
|
}
|
|
|
|
if (hasResponse)
|
|
{
|
|
int responseIndex = 0;
|
|
string_id responses [] = new string_id [numberOfResponses];
|
|
|
|
if (hasResponse0)
|
|
responses [responseIndex++] = new string_id (c_stringFile, "s_35");
|
|
|
|
if (hasResponse1)
|
|
responses [responseIndex++] = new string_id (c_stringFile, "s_39");
|
|
|
|
utils.setScriptVar (player, "conversation.npe_job_pointer.branchId", 16);
|
|
|
|
npcSpeak (player, message);
|
|
npcSetConversationResponses (player, responses);
|
|
}
|
|
else
|
|
{
|
|
utils.removeScriptVar (player, "conversation.npe_job_pointer.branchId");
|
|
|
|
npcEndConversationWithMessage (player, message);
|
|
}
|
|
|
|
return SCRIPT_CONTINUE;
|
|
}
|
|
|
|
}
|
|
|
|
//-- [RESPONSE NOTE]
|
|
//-- PLAYER: Who has some work for me in Hangar Bay 1?
|
|
if (response == "s_43")
|
|
{
|
|
//-- [NOTE]
|
|
if (npe_job_pointer_condition__defaultCondition (player, npc))
|
|
{
|
|
//-- NPC: Several people. Mostly pilots, though I know that some of them are looking for a certain amount of pilot experience before they'll work with you. We'll sort out who you're ready for as necessary.
|
|
string_id message = new string_id (c_stringFile, "s_45");
|
|
int numberOfResponses = 0;
|
|
|
|
boolean hasResponse = false;
|
|
|
|
//-- PLAYER: I'm new to piloting, I want to talk to Serissu.
|
|
boolean hasResponse0 = false;
|
|
if (!npe_job_pointer_condition_needsSerissu (player, npc))
|
|
{
|
|
++numberOfResponses;
|
|
hasResponse = true;
|
|
hasResponse0 = true;
|
|
}
|
|
|
|
//-- PLAYER: I'd like to fly for Laetin A'shera. His missions look pretty easy.
|
|
boolean hasResponse1 = false;
|
|
if (!npe_job_pointer_condition_needsLaetin (player, npc))
|
|
{
|
|
++numberOfResponses;
|
|
hasResponse = true;
|
|
hasResponse1 = true;
|
|
}
|
|
|
|
//-- PLAYER: I'm ready to fly for Aleas. I know I'm good enough.
|
|
boolean hasResponse2 = false;
|
|
if (!npe_job_pointer_condition_needsAleas (player, npc))
|
|
{
|
|
++numberOfResponses;
|
|
hasResponse = true;
|
|
hasResponse2 = true;
|
|
}
|
|
|
|
//-- PLAYER: Point me to Dartas! I'm going to be the best pilot out there!
|
|
boolean hasResponse3 = false;
|
|
if (!npe_job_pointer_condition_needsDartas (player, npc))
|
|
{
|
|
++numberOfResponses;
|
|
hasResponse = true;
|
|
hasResponse3 = true;
|
|
}
|
|
|
|
//-- PLAYER: Actually, this one doesn't involve flying. I'd like to talk to Deavyn.
|
|
boolean hasResponse4 = false;
|
|
if (!npe_job_pointer_condition_needsDaevyn (player, npc))
|
|
{
|
|
++numberOfResponses;
|
|
hasResponse = true;
|
|
hasResponse4 = true;
|
|
}
|
|
|
|
if (hasResponse)
|
|
{
|
|
int responseIndex = 0;
|
|
string_id responses [] = new string_id [numberOfResponses];
|
|
|
|
if (hasResponse0)
|
|
responses [responseIndex++] = new string_id (c_stringFile, "s_47");
|
|
|
|
if (hasResponse1)
|
|
responses [responseIndex++] = new string_id (c_stringFile, "s_51");
|
|
|
|
if (hasResponse2)
|
|
responses [responseIndex++] = new string_id (c_stringFile, "s_58");
|
|
|
|
if (hasResponse3)
|
|
responses [responseIndex++] = new string_id (c_stringFile, "s_61");
|
|
|
|
if (hasResponse4)
|
|
responses [responseIndex++] = new string_id (c_stringFile, "s_66");
|
|
|
|
utils.setScriptVar (player, "conversation.npe_job_pointer.branchId", 19);
|
|
|
|
npcSpeak (player, message);
|
|
npcSetConversationResponses (player, responses);
|
|
}
|
|
else
|
|
{
|
|
utils.removeScriptVar (player, "conversation.npe_job_pointer.branchId");
|
|
|
|
npcEndConversationWithMessage (player, message);
|
|
}
|
|
|
|
return SCRIPT_CONTINUE;
|
|
}
|
|
|
|
}
|
|
|
|
//-- [RESPONSE NOTE]
|
|
//-- PLAYER: Who can put me to work in the Combat Training rooms?
|
|
if (response == "s_70")
|
|
{
|
|
//-- [NOTE]
|
|
if (npe_job_pointer_condition__defaultCondition (player, npc))
|
|
{
|
|
//-- NPC: Ah yes, the combat specialists. Well, most of them are, at least. Here's a list.
|
|
string_id message = new string_id (c_stringFile, "s_72");
|
|
int numberOfResponses = 0;
|
|
|
|
boolean hasResponse = false;
|
|
|
|
//-- PLAYER: Ah, the brawling master. I'd like to talk to Rydel.
|
|
boolean hasResponse0 = false;
|
|
if (!npe_job_pointer_condition_needsRydel (player, npc))
|
|
{
|
|
++numberOfResponses;
|
|
hasResponse = true;
|
|
hasResponse0 = true;
|
|
}
|
|
|
|
//-- PLAYER: A marksman! I'd like to talk to Loche.
|
|
boolean hasResponse1 = false;
|
|
if (!npe_job_pointer_condition_needsLoche (player, npc))
|
|
{
|
|
++numberOfResponses;
|
|
hasResponse = true;
|
|
hasResponse1 = true;
|
|
}
|
|
|
|
//-- PLAYER: Raylen's my speed. I love hunting animals.
|
|
boolean hasResponse2 = false;
|
|
if (!npe_job_pointer_condition_needsRaylen (player, npc))
|
|
{
|
|
++numberOfResponses;
|
|
hasResponse = true;
|
|
hasResponse2 = true;
|
|
}
|
|
|
|
//-- PLAYER: How about this Droid Engineer? I can help him.
|
|
boolean hasResponse3 = false;
|
|
if (npe_job_pointer_condition_needsDroidEngineer (player, npc))
|
|
{
|
|
++numberOfResponses;
|
|
hasResponse = true;
|
|
hasResponse3 = true;
|
|
}
|
|
|
|
//-- PLAYER: Oh, looks like the Security Director needs help with thugs.
|
|
boolean hasResponse4 = false;
|
|
if (!npe_job_pointer_condition_needsSecurityDirector (player, npc))
|
|
{
|
|
++numberOfResponses;
|
|
hasResponse = true;
|
|
hasResponse4 = true;
|
|
}
|
|
|
|
if (hasResponse)
|
|
{
|
|
int responseIndex = 0;
|
|
string_id responses [] = new string_id [numberOfResponses];
|
|
|
|
if (hasResponse0)
|
|
responses [responseIndex++] = new string_id (c_stringFile, "s_74");
|
|
|
|
if (hasResponse1)
|
|
responses [responseIndex++] = new string_id (c_stringFile, "s_78");
|
|
|
|
if (hasResponse2)
|
|
responses [responseIndex++] = new string_id (c_stringFile, "s_82");
|
|
|
|
if (hasResponse3)
|
|
responses [responseIndex++] = new string_id (c_stringFile, "s_86");
|
|
|
|
if (hasResponse4)
|
|
responses [responseIndex++] = new string_id (c_stringFile, "s_90");
|
|
|
|
utils.setScriptVar (player, "conversation.npe_job_pointer.branchId", 28);
|
|
|
|
npcSpeak (player, message);
|
|
npcSetConversationResponses (player, responses);
|
|
}
|
|
else
|
|
{
|
|
utils.removeScriptVar (player, "conversation.npe_job_pointer.branchId");
|
|
|
|
npcEndConversationWithMessage (player, message);
|
|
}
|
|
|
|
return SCRIPT_CONTINUE;
|
|
}
|
|
|
|
}
|
|
|
|
//-- [RESPONSE NOTE]
|
|
//-- PLAYER: Who's needs some help in Hangar Bay 2?
|
|
if (response == "s_98")
|
|
{
|
|
//-- [NOTE]
|
|
if (npe_job_pointer_condition__defaultCondition (player, npc))
|
|
{
|
|
//-- NPC: That's our visitors' hangar. Only one person there now. Here's what is available there.
|
|
string_id message = new string_id (c_stringFile, "s_100");
|
|
int numberOfResponses = 0;
|
|
|
|
boolean hasResponse = false;
|
|
|
|
//-- PLAYER: Jolka's fixing a droid? I'll help him.
|
|
boolean hasResponse0 = false;
|
|
if (!npe_job_pointer_condition_needsJolka (player, npc))
|
|
{
|
|
++numberOfResponses;
|
|
hasResponse = true;
|
|
hasResponse0 = true;
|
|
}
|
|
|
|
if (hasResponse)
|
|
{
|
|
int responseIndex = 0;
|
|
string_id responses [] = new string_id [numberOfResponses];
|
|
|
|
if (hasResponse0)
|
|
responses [responseIndex++] = new string_id (c_stringFile, "s_106");
|
|
|
|
utils.setScriptVar (player, "conversation.npe_job_pointer.branchId", 34);
|
|
|
|
npcSpeak (player, message);
|
|
npcSetConversationResponses (player, responses);
|
|
}
|
|
else
|
|
{
|
|
utils.removeScriptVar (player, "conversation.npe_job_pointer.branchId");
|
|
|
|
npcEndConversationWithMessage (player, message);
|
|
}
|
|
|
|
return SCRIPT_CONTINUE;
|
|
}
|
|
|
|
}
|
|
|
|
//-- [RESPONSE NOTE]
|
|
//-- PLAYER: Who needs assistance around here?
|
|
if (response == "s_110")
|
|
{
|
|
//-- [NOTE]
|
|
if (npe_job_pointer_condition__defaultCondition (player, npc))
|
|
{
|
|
//-- NPC: In this office? Only Inaldra needs work done around here.
|
|
string_id message = new string_id (c_stringFile, "s_112");
|
|
int numberOfResponses = 0;
|
|
|
|
boolean hasResponse = false;
|
|
|
|
//-- PLAYER: I'd love to help Inaldra!
|
|
boolean hasResponse0 = false;
|
|
if (!npe_job_pointer_condition_needsInaldra (player, npc))
|
|
{
|
|
++numberOfResponses;
|
|
hasResponse = true;
|
|
hasResponse0 = true;
|
|
}
|
|
|
|
if (hasResponse)
|
|
{
|
|
int responseIndex = 0;
|
|
string_id responses [] = new string_id [numberOfResponses];
|
|
|
|
if (hasResponse0)
|
|
responses [responseIndex++] = new string_id (c_stringFile, "s_114");
|
|
|
|
utils.setScriptVar (player, "conversation.npe_job_pointer.branchId", 36);
|
|
|
|
npcSpeak (player, message);
|
|
npcSetConversationResponses (player, responses);
|
|
}
|
|
else
|
|
{
|
|
utils.removeScriptVar (player, "conversation.npe_job_pointer.branchId");
|
|
|
|
npcEndConversationWithMessage (player, message);
|
|
}
|
|
|
|
return SCRIPT_CONTINUE;
|
|
}
|
|
|
|
}
|
|
|
|
return SCRIPT_DEFAULT;
|
|
}
|
|
|
|
// ----------------------------------------------------------------------
|
|
|
|
int npe_job_pointer_handleBranch16 (obj_id player, obj_id npc, string_id response)
|
|
{
|
|
//-- [BRANCH NOTE]
|
|
//-- NPC: All right, here's the list. Who do you want to talk to?
|
|
|
|
//-- [RESPONSE NOTE]
|
|
//-- PLAYER: Tarand Crowe needs a messenger? I can do that.
|
|
if (response == "s_35")
|
|
{
|
|
//-- [NOTE]
|
|
if (npe_job_pointer_condition__defaultCondition (player, npc))
|
|
{
|
|
npe_job_pointer_action_giveJobPointerTarand (player, npc);
|
|
|
|
//-- NPC: Here's the location.
|
|
string_id message = new string_id (c_stringFile, "s_37");
|
|
utils.removeScriptVar (player, "conversation.npe_job_pointer.branchId");
|
|
|
|
npcEndConversationWithMessage (player, message);
|
|
|
|
return SCRIPT_CONTINUE;
|
|
}
|
|
|
|
}
|
|
|
|
//-- [RESPONSE NOTE]
|
|
//-- PLAYER: I'll help Wyle do some hunting.
|
|
if (response == "s_39")
|
|
{
|
|
//-- [NOTE]
|
|
if (npe_job_pointer_condition__defaultCondition (player, npc))
|
|
{
|
|
npe_job_pointer_action_giveJobPointerWyle (player, npc);
|
|
|
|
//-- NPC: Ah, yes. Enjoy that one. He claims to be the proud owner of a krayt dragon skull from Tatooine. I don't know if I believe him. Those things are gigantic! Here's his location.
|
|
string_id message = new string_id (c_stringFile, "s_41");
|
|
utils.removeScriptVar (player, "conversation.npe_job_pointer.branchId");
|
|
|
|
npcEndConversationWithMessage (player, message);
|
|
|
|
return SCRIPT_CONTINUE;
|
|
}
|
|
|
|
}
|
|
|
|
return SCRIPT_DEFAULT;
|
|
}
|
|
|
|
// ----------------------------------------------------------------------
|
|
|
|
int npe_job_pointer_handleBranch19 (obj_id player, obj_id npc, string_id response)
|
|
{
|
|
//-- [BRANCH NOTE]
|
|
//-- NPC: Several people. Mostly pilots, though I know that some of them are looking for a certain amount of pilot experience before they'll work with you. We'll sort out who you're ready for as necessary.
|
|
|
|
//-- [RESPONSE NOTE]
|
|
//-- PLAYER: I'm new to piloting, I want to talk to Serissu.
|
|
if (response == "s_47")
|
|
{
|
|
//-- [NOTE]
|
|
if (npe_job_pointer_condition__defaultCondition (player, npc))
|
|
{
|
|
npe_job_pointer_action_giveJobPointerSerissu (player, npc);
|
|
|
|
//-- NPC: Good luck with that. I'm sure you will do fine.
|
|
string_id message = new string_id (c_stringFile, "s_49");
|
|
utils.removeScriptVar (player, "conversation.npe_job_pointer.branchId");
|
|
|
|
npcEndConversationWithMessage (player, message);
|
|
|
|
return SCRIPT_CONTINUE;
|
|
}
|
|
|
|
}
|
|
|
|
//-- [RESPONSE NOTE]
|
|
//-- PLAYER: I'd like to fly for Laetin A'shera. His missions look pretty easy.
|
|
if (response == "s_51")
|
|
{
|
|
//-- [NOTE]
|
|
if (npe_job_pointer_condition_needsSerissu (player, npc))
|
|
{
|
|
npe_job_pointer_action_giveJobPointerLaetin (player, npc);
|
|
|
|
//-- NPC: Easy is entirely relative. Good luck out there.
|
|
string_id message = new string_id (c_stringFile, "s_53");
|
|
utils.removeScriptVar (player, "conversation.npe_job_pointer.branchId");
|
|
|
|
npcEndConversationWithMessage (player, message);
|
|
|
|
return SCRIPT_CONTINUE;
|
|
}
|
|
|
|
//-- [NOTE]
|
|
if (npe_job_pointer_condition__defaultCondition (player, npc))
|
|
{
|
|
//-- NPC: You need to finish working with Serissu before Laetin will offer you anything.
|
|
string_id message = new string_id (c_stringFile, "s_109");
|
|
int numberOfResponses = 0;
|
|
|
|
boolean hasResponse = false;
|
|
|
|
//-- PLAYER: I'm new to piloting, I want to talk to Serissu.
|
|
boolean hasResponse0 = false;
|
|
if (!npe_job_pointer_condition_needsSerissu (player, npc))
|
|
{
|
|
++numberOfResponses;
|
|
hasResponse = true;
|
|
hasResponse0 = true;
|
|
}
|
|
|
|
//-- PLAYER: I'd like to fly for Laetin A'shera. His missions look pretty easy.
|
|
boolean hasResponse1 = false;
|
|
if (!npe_job_pointer_condition_needsLaetin (player, npc))
|
|
{
|
|
++numberOfResponses;
|
|
hasResponse = true;
|
|
hasResponse1 = true;
|
|
}
|
|
|
|
//-- PLAYER: I'm ready to fly for Aleas. I know I'm good enough.
|
|
boolean hasResponse2 = false;
|
|
if (!npe_job_pointer_condition_needsAleas (player, npc))
|
|
{
|
|
++numberOfResponses;
|
|
hasResponse = true;
|
|
hasResponse2 = true;
|
|
}
|
|
|
|
//-- PLAYER: Point me to Dartas! I'm going to be the best pilot out there!
|
|
boolean hasResponse3 = false;
|
|
if (!npe_job_pointer_condition_needsDartas (player, npc))
|
|
{
|
|
++numberOfResponses;
|
|
hasResponse = true;
|
|
hasResponse3 = true;
|
|
}
|
|
|
|
//-- PLAYER: Actually, this one doesn't involve flying. I'd like to talk to Deavyn.
|
|
boolean hasResponse4 = false;
|
|
if (!npe_job_pointer_condition_needsDaevyn (player, npc))
|
|
{
|
|
++numberOfResponses;
|
|
hasResponse = true;
|
|
hasResponse4 = true;
|
|
}
|
|
|
|
if (hasResponse)
|
|
{
|
|
int responseIndex = 0;
|
|
string_id responses [] = new string_id [numberOfResponses];
|
|
|
|
if (hasResponse0)
|
|
responses [responseIndex++] = new string_id (c_stringFile, "s_47");
|
|
|
|
if (hasResponse1)
|
|
responses [responseIndex++] = new string_id (c_stringFile, "s_51");
|
|
|
|
if (hasResponse2)
|
|
responses [responseIndex++] = new string_id (c_stringFile, "s_58");
|
|
|
|
if (hasResponse3)
|
|
responses [responseIndex++] = new string_id (c_stringFile, "s_61");
|
|
|
|
if (hasResponse4)
|
|
responses [responseIndex++] = new string_id (c_stringFile, "s_66");
|
|
|
|
utils.setScriptVar (player, "conversation.npe_job_pointer.branchId", 19);
|
|
|
|
npcSpeak (player, message);
|
|
npcSetConversationResponses (player, responses);
|
|
}
|
|
else
|
|
{
|
|
utils.removeScriptVar (player, "conversation.npe_job_pointer.branchId");
|
|
|
|
npcEndConversationWithMessage (player, message);
|
|
}
|
|
|
|
return SCRIPT_CONTINUE;
|
|
}
|
|
|
|
}
|
|
|
|
//-- [RESPONSE NOTE]
|
|
//-- PLAYER: I'm ready to fly for Aleas. I know I'm good enough.
|
|
if (response == "s_58")
|
|
{
|
|
//-- [NOTE]
|
|
if (npe_job_pointer_condition_needsLaetin (player, npc))
|
|
{
|
|
npe_job_pointer_action_giveJobPointerAleas (player, npc);
|
|
|
|
//-- NPC: Good for you! I hope you can understand her better than I can. Here's her location.
|
|
string_id message = new string_id (c_stringFile, "s_60");
|
|
utils.removeScriptVar (player, "conversation.npe_job_pointer.branchId");
|
|
|
|
npcEndConversationWithMessage (player, message);
|
|
|
|
return SCRIPT_CONTINUE;
|
|
}
|
|
|
|
//-- [NOTE]
|
|
if (npe_job_pointer_condition__defaultCondition (player, npc))
|
|
{
|
|
//-- NPC: Before speaking with Aleas, you'll need to have proven yourself by finishing Laetin's missions.
|
|
string_id message = new string_id (c_stringFile, "s_111");
|
|
int numberOfResponses = 0;
|
|
|
|
boolean hasResponse = false;
|
|
|
|
//-- PLAYER: I'm new to piloting, I want to talk to Serissu.
|
|
boolean hasResponse0 = false;
|
|
if (!npe_job_pointer_condition_needsSerissu (player, npc))
|
|
{
|
|
++numberOfResponses;
|
|
hasResponse = true;
|
|
hasResponse0 = true;
|
|
}
|
|
|
|
//-- PLAYER: I'd like to fly for Laetin A'shera. His missions look pretty easy.
|
|
boolean hasResponse1 = false;
|
|
if (!npe_job_pointer_condition_needsLaetin (player, npc))
|
|
{
|
|
++numberOfResponses;
|
|
hasResponse = true;
|
|
hasResponse1 = true;
|
|
}
|
|
|
|
//-- PLAYER: I'm ready to fly for Aleas. I know I'm good enough.
|
|
boolean hasResponse2 = false;
|
|
if (!npe_job_pointer_condition_needsAleas (player, npc))
|
|
{
|
|
++numberOfResponses;
|
|
hasResponse = true;
|
|
hasResponse2 = true;
|
|
}
|
|
|
|
//-- PLAYER: Point me to Dartas! I'm going to be the best pilot out there!
|
|
boolean hasResponse3 = false;
|
|
if (!npe_job_pointer_condition_needsDartas (player, npc))
|
|
{
|
|
++numberOfResponses;
|
|
hasResponse = true;
|
|
hasResponse3 = true;
|
|
}
|
|
|
|
//-- PLAYER: Actually, this one doesn't involve flying. I'd like to talk to Deavyn.
|
|
boolean hasResponse4 = false;
|
|
if (!npe_job_pointer_condition_needsDaevyn (player, npc))
|
|
{
|
|
++numberOfResponses;
|
|
hasResponse = true;
|
|
hasResponse4 = true;
|
|
}
|
|
|
|
if (hasResponse)
|
|
{
|
|
int responseIndex = 0;
|
|
string_id responses [] = new string_id [numberOfResponses];
|
|
|
|
if (hasResponse0)
|
|
responses [responseIndex++] = new string_id (c_stringFile, "s_47");
|
|
|
|
if (hasResponse1)
|
|
responses [responseIndex++] = new string_id (c_stringFile, "s_51");
|
|
|
|
if (hasResponse2)
|
|
responses [responseIndex++] = new string_id (c_stringFile, "s_58");
|
|
|
|
if (hasResponse3)
|
|
responses [responseIndex++] = new string_id (c_stringFile, "s_61");
|
|
|
|
if (hasResponse4)
|
|
responses [responseIndex++] = new string_id (c_stringFile, "s_66");
|
|
|
|
utils.setScriptVar (player, "conversation.npe_job_pointer.branchId", 19);
|
|
|
|
npcSpeak (player, message);
|
|
npcSetConversationResponses (player, responses);
|
|
}
|
|
else
|
|
{
|
|
utils.removeScriptVar (player, "conversation.npe_job_pointer.branchId");
|
|
|
|
npcEndConversationWithMessage (player, message);
|
|
}
|
|
|
|
return SCRIPT_CONTINUE;
|
|
}
|
|
|
|
}
|
|
|
|
//-- [RESPONSE NOTE]
|
|
//-- PLAYER: Point me to Dartas! I'm going to be the best pilot out there!
|
|
if (response == "s_61")
|
|
{
|
|
//-- [NOTE]
|
|
if (npe_job_pointer_condition_needsAleas (player, npc))
|
|
{
|
|
npe_job_pointer_action_giveJobPointerDartas (player, npc);
|
|
|
|
//-- NPC: I'm sure you are. You know he flew with the Corellian Security Forces, right? He is a bonafide ace! Here's his location. Be safe out there.
|
|
string_id message = new string_id (c_stringFile, "s_63");
|
|
utils.removeScriptVar (player, "conversation.npe_job_pointer.branchId");
|
|
|
|
npcEndConversationWithMessage (player, message);
|
|
|
|
return SCRIPT_CONTINUE;
|
|
}
|
|
|
|
//-- [NOTE]
|
|
if (npe_job_pointer_condition__defaultCondition (player, npc))
|
|
{
|
|
//-- NPC: Dartas is picky about who he sends into battle. Unless Aleas signs off on your piloting abilities, he won't use you.
|
|
string_id message = new string_id (c_stringFile, "s_113");
|
|
int numberOfResponses = 0;
|
|
|
|
boolean hasResponse = false;
|
|
|
|
//-- PLAYER: I'm new to piloting, I want to talk to Serissu.
|
|
boolean hasResponse0 = false;
|
|
if (!npe_job_pointer_condition_needsSerissu (player, npc))
|
|
{
|
|
++numberOfResponses;
|
|
hasResponse = true;
|
|
hasResponse0 = true;
|
|
}
|
|
|
|
//-- PLAYER: I'd like to fly for Laetin A'shera. His missions look pretty easy.
|
|
boolean hasResponse1 = false;
|
|
if (!npe_job_pointer_condition_needsLaetin (player, npc))
|
|
{
|
|
++numberOfResponses;
|
|
hasResponse = true;
|
|
hasResponse1 = true;
|
|
}
|
|
|
|
//-- PLAYER: I'm ready to fly for Aleas. I know I'm good enough.
|
|
boolean hasResponse2 = false;
|
|
if (!npe_job_pointer_condition_needsAleas (player, npc))
|
|
{
|
|
++numberOfResponses;
|
|
hasResponse = true;
|
|
hasResponse2 = true;
|
|
}
|
|
|
|
//-- PLAYER: Point me to Dartas! I'm going to be the best pilot out there!
|
|
boolean hasResponse3 = false;
|
|
if (!npe_job_pointer_condition_needsDartas (player, npc))
|
|
{
|
|
++numberOfResponses;
|
|
hasResponse = true;
|
|
hasResponse3 = true;
|
|
}
|
|
|
|
//-- PLAYER: Actually, this one doesn't involve flying. I'd like to talk to Deavyn.
|
|
boolean hasResponse4 = false;
|
|
if (!npe_job_pointer_condition_needsDaevyn (player, npc))
|
|
{
|
|
++numberOfResponses;
|
|
hasResponse = true;
|
|
hasResponse4 = true;
|
|
}
|
|
|
|
if (hasResponse)
|
|
{
|
|
int responseIndex = 0;
|
|
string_id responses [] = new string_id [numberOfResponses];
|
|
|
|
if (hasResponse0)
|
|
responses [responseIndex++] = new string_id (c_stringFile, "s_47");
|
|
|
|
if (hasResponse1)
|
|
responses [responseIndex++] = new string_id (c_stringFile, "s_51");
|
|
|
|
if (hasResponse2)
|
|
responses [responseIndex++] = new string_id (c_stringFile, "s_58");
|
|
|
|
if (hasResponse3)
|
|
responses [responseIndex++] = new string_id (c_stringFile, "s_61");
|
|
|
|
if (hasResponse4)
|
|
responses [responseIndex++] = new string_id (c_stringFile, "s_66");
|
|
|
|
utils.setScriptVar (player, "conversation.npe_job_pointer.branchId", 19);
|
|
|
|
npcSpeak (player, message);
|
|
npcSetConversationResponses (player, responses);
|
|
}
|
|
else
|
|
{
|
|
utils.removeScriptVar (player, "conversation.npe_job_pointer.branchId");
|
|
|
|
npcEndConversationWithMessage (player, message);
|
|
}
|
|
|
|
return SCRIPT_CONTINUE;
|
|
}
|
|
|
|
}
|
|
|
|
//-- [RESPONSE NOTE]
|
|
//-- PLAYER: Actually, this one doesn't involve flying. I'd like to talk to Deavyn.
|
|
if (response == "s_66")
|
|
{
|
|
//-- [NOTE]
|
|
if (npe_job_pointer_condition__defaultCondition (player, npc))
|
|
{
|
|
npe_job_pointer_action_giveJobPointerDaevyn (player, npc);
|
|
|
|
//-- NPC: I get a little spacesick myself. Here's his location.
|
|
string_id message = new string_id (c_stringFile, "s_68");
|
|
utils.removeScriptVar (player, "conversation.npe_job_pointer.branchId");
|
|
|
|
npcEndConversationWithMessage (player, message);
|
|
|
|
return SCRIPT_CONTINUE;
|
|
}
|
|
|
|
}
|
|
|
|
return SCRIPT_DEFAULT;
|
|
}
|
|
|
|
// ----------------------------------------------------------------------
|
|
|
|
int npe_job_pointer_handleBranch22 (obj_id player, obj_id npc, string_id response)
|
|
{
|
|
//-- [BRANCH NOTE]
|
|
//-- NPC: You need to finish working with Serissu before Laetin will offer you anything.
|
|
|
|
//-- [RESPONSE NOTE]
|
|
//-- PLAYER: I'm new to piloting, I want to talk to Serissu.
|
|
if (response == "s_47")
|
|
{
|
|
//-- [NOTE]
|
|
if (npe_job_pointer_condition__defaultCondition (player, npc))
|
|
{
|
|
npe_job_pointer_action_giveJobPointerSerissu (player, npc);
|
|
|
|
//-- NPC: Good luck with that. I'm sure you will do fine.
|
|
string_id message = new string_id (c_stringFile, "s_49");
|
|
utils.removeScriptVar (player, "conversation.npe_job_pointer.branchId");
|
|
|
|
npcEndConversationWithMessage (player, message);
|
|
|
|
return SCRIPT_CONTINUE;
|
|
}
|
|
|
|
}
|
|
|
|
//-- [RESPONSE NOTE]
|
|
//-- PLAYER: I'd like to fly for Laetin A'shera. His missions look pretty easy.
|
|
if (response == "s_51")
|
|
{
|
|
//-- [NOTE]
|
|
if (npe_job_pointer_condition_needsSerissu (player, npc))
|
|
{
|
|
npe_job_pointer_action_giveJobPointerLaetin (player, npc);
|
|
|
|
//-- NPC: Easy is entirely relative. Good luck out there.
|
|
string_id message = new string_id (c_stringFile, "s_53");
|
|
utils.removeScriptVar (player, "conversation.npe_job_pointer.branchId");
|
|
|
|
npcEndConversationWithMessage (player, message);
|
|
|
|
return SCRIPT_CONTINUE;
|
|
}
|
|
|
|
//-- [NOTE]
|
|
if (npe_job_pointer_condition__defaultCondition (player, npc))
|
|
{
|
|
//-- NPC: You need to finish working with Serissu before Laetin will offer you anything.
|
|
string_id message = new string_id (c_stringFile, "s_109");
|
|
int numberOfResponses = 0;
|
|
|
|
boolean hasResponse = false;
|
|
|
|
//-- PLAYER: I'm new to piloting, I want to talk to Serissu.
|
|
boolean hasResponse0 = false;
|
|
if (!npe_job_pointer_condition_needsSerissu (player, npc))
|
|
{
|
|
++numberOfResponses;
|
|
hasResponse = true;
|
|
hasResponse0 = true;
|
|
}
|
|
|
|
//-- PLAYER: I'd like to fly for Laetin A'shera. His missions look pretty easy.
|
|
boolean hasResponse1 = false;
|
|
if (!npe_job_pointer_condition_needsLaetin (player, npc))
|
|
{
|
|
++numberOfResponses;
|
|
hasResponse = true;
|
|
hasResponse1 = true;
|
|
}
|
|
|
|
//-- PLAYER: I'm ready to fly for Aleas. I know I'm good enough.
|
|
boolean hasResponse2 = false;
|
|
if (!npe_job_pointer_condition_needsAleas (player, npc))
|
|
{
|
|
++numberOfResponses;
|
|
hasResponse = true;
|
|
hasResponse2 = true;
|
|
}
|
|
|
|
//-- PLAYER: Point me to Dartas! I'm going to be the best pilot out there!
|
|
boolean hasResponse3 = false;
|
|
if (!npe_job_pointer_condition_needsDartas (player, npc))
|
|
{
|
|
++numberOfResponses;
|
|
hasResponse = true;
|
|
hasResponse3 = true;
|
|
}
|
|
|
|
//-- PLAYER: Actually, this one doesn't involve flying. I'd like to talk to Deavyn.
|
|
boolean hasResponse4 = false;
|
|
if (!npe_job_pointer_condition_needsDaevyn (player, npc))
|
|
{
|
|
++numberOfResponses;
|
|
hasResponse = true;
|
|
hasResponse4 = true;
|
|
}
|
|
|
|
if (hasResponse)
|
|
{
|
|
int responseIndex = 0;
|
|
string_id responses [] = new string_id [numberOfResponses];
|
|
|
|
if (hasResponse0)
|
|
responses [responseIndex++] = new string_id (c_stringFile, "s_47");
|
|
|
|
if (hasResponse1)
|
|
responses [responseIndex++] = new string_id (c_stringFile, "s_51");
|
|
|
|
if (hasResponse2)
|
|
responses [responseIndex++] = new string_id (c_stringFile, "s_58");
|
|
|
|
if (hasResponse3)
|
|
responses [responseIndex++] = new string_id (c_stringFile, "s_61");
|
|
|
|
if (hasResponse4)
|
|
responses [responseIndex++] = new string_id (c_stringFile, "s_66");
|
|
|
|
utils.setScriptVar (player, "conversation.npe_job_pointer.branchId", 19);
|
|
|
|
npcSpeak (player, message);
|
|
npcSetConversationResponses (player, responses);
|
|
}
|
|
else
|
|
{
|
|
utils.removeScriptVar (player, "conversation.npe_job_pointer.branchId");
|
|
|
|
npcEndConversationWithMessage (player, message);
|
|
}
|
|
|
|
return SCRIPT_CONTINUE;
|
|
}
|
|
|
|
}
|
|
|
|
//-- [RESPONSE NOTE]
|
|
//-- PLAYER: I'm ready to fly for Aleas. I know I'm good enough.
|
|
if (response == "s_58")
|
|
{
|
|
//-- [NOTE]
|
|
if (npe_job_pointer_condition_needsLaetin (player, npc))
|
|
{
|
|
npe_job_pointer_action_giveJobPointerAleas (player, npc);
|
|
|
|
//-- NPC: Good for you! I hope you can understand her better than I can. Here's her location.
|
|
string_id message = new string_id (c_stringFile, "s_60");
|
|
utils.removeScriptVar (player, "conversation.npe_job_pointer.branchId");
|
|
|
|
npcEndConversationWithMessage (player, message);
|
|
|
|
return SCRIPT_CONTINUE;
|
|
}
|
|
|
|
//-- [NOTE]
|
|
if (npe_job_pointer_condition__defaultCondition (player, npc))
|
|
{
|
|
//-- NPC: Before speaking with Aleas, you'll need to have proven yourself by finishing Laetin's missions.
|
|
string_id message = new string_id (c_stringFile, "s_111");
|
|
int numberOfResponses = 0;
|
|
|
|
boolean hasResponse = false;
|
|
|
|
//-- PLAYER: I'm new to piloting, I want to talk to Serissu.
|
|
boolean hasResponse0 = false;
|
|
if (!npe_job_pointer_condition_needsSerissu (player, npc))
|
|
{
|
|
++numberOfResponses;
|
|
hasResponse = true;
|
|
hasResponse0 = true;
|
|
}
|
|
|
|
//-- PLAYER: I'd like to fly for Laetin A'shera. His missions look pretty easy.
|
|
boolean hasResponse1 = false;
|
|
if (!npe_job_pointer_condition_needsLaetin (player, npc))
|
|
{
|
|
++numberOfResponses;
|
|
hasResponse = true;
|
|
hasResponse1 = true;
|
|
}
|
|
|
|
//-- PLAYER: I'm ready to fly for Aleas. I know I'm good enough.
|
|
boolean hasResponse2 = false;
|
|
if (!npe_job_pointer_condition_needsAleas (player, npc))
|
|
{
|
|
++numberOfResponses;
|
|
hasResponse = true;
|
|
hasResponse2 = true;
|
|
}
|
|
|
|
//-- PLAYER: Point me to Dartas! I'm going to be the best pilot out there!
|
|
boolean hasResponse3 = false;
|
|
if (!npe_job_pointer_condition_needsDartas (player, npc))
|
|
{
|
|
++numberOfResponses;
|
|
hasResponse = true;
|
|
hasResponse3 = true;
|
|
}
|
|
|
|
//-- PLAYER: Actually, this one doesn't involve flying. I'd like to talk to Deavyn.
|
|
boolean hasResponse4 = false;
|
|
if (!npe_job_pointer_condition_needsDaevyn (player, npc))
|
|
{
|
|
++numberOfResponses;
|
|
hasResponse = true;
|
|
hasResponse4 = true;
|
|
}
|
|
|
|
if (hasResponse)
|
|
{
|
|
int responseIndex = 0;
|
|
string_id responses [] = new string_id [numberOfResponses];
|
|
|
|
if (hasResponse0)
|
|
responses [responseIndex++] = new string_id (c_stringFile, "s_47");
|
|
|
|
if (hasResponse1)
|
|
responses [responseIndex++] = new string_id (c_stringFile, "s_51");
|
|
|
|
if (hasResponse2)
|
|
responses [responseIndex++] = new string_id (c_stringFile, "s_58");
|
|
|
|
if (hasResponse3)
|
|
responses [responseIndex++] = new string_id (c_stringFile, "s_61");
|
|
|
|
if (hasResponse4)
|
|
responses [responseIndex++] = new string_id (c_stringFile, "s_66");
|
|
|
|
utils.setScriptVar (player, "conversation.npe_job_pointer.branchId", 19);
|
|
|
|
npcSpeak (player, message);
|
|
npcSetConversationResponses (player, responses);
|
|
}
|
|
else
|
|
{
|
|
utils.removeScriptVar (player, "conversation.npe_job_pointer.branchId");
|
|
|
|
npcEndConversationWithMessage (player, message);
|
|
}
|
|
|
|
return SCRIPT_CONTINUE;
|
|
}
|
|
|
|
}
|
|
|
|
//-- [RESPONSE NOTE]
|
|
//-- PLAYER: Point me to Dartas! I'm going to be the best pilot out there!
|
|
if (response == "s_61")
|
|
{
|
|
//-- [NOTE]
|
|
if (npe_job_pointer_condition_needsAleas (player, npc))
|
|
{
|
|
npe_job_pointer_action_giveJobPointerDartas (player, npc);
|
|
|
|
//-- NPC: I'm sure you are. You know he flew with the Corellian Security Forces, right? He is a bonafide ace! Here's his location. Be safe out there.
|
|
string_id message = new string_id (c_stringFile, "s_63");
|
|
utils.removeScriptVar (player, "conversation.npe_job_pointer.branchId");
|
|
|
|
npcEndConversationWithMessage (player, message);
|
|
|
|
return SCRIPT_CONTINUE;
|
|
}
|
|
|
|
//-- [NOTE]
|
|
if (npe_job_pointer_condition__defaultCondition (player, npc))
|
|
{
|
|
//-- NPC: Dartas is picky about who he sends into battle. Unless Aleas signs off on your piloting abilities, he won't use you.
|
|
string_id message = new string_id (c_stringFile, "s_113");
|
|
int numberOfResponses = 0;
|
|
|
|
boolean hasResponse = false;
|
|
|
|
//-- PLAYER: I'm new to piloting, I want to talk to Serissu.
|
|
boolean hasResponse0 = false;
|
|
if (!npe_job_pointer_condition_needsSerissu (player, npc))
|
|
{
|
|
++numberOfResponses;
|
|
hasResponse = true;
|
|
hasResponse0 = true;
|
|
}
|
|
|
|
//-- PLAYER: I'd like to fly for Laetin A'shera. His missions look pretty easy.
|
|
boolean hasResponse1 = false;
|
|
if (!npe_job_pointer_condition_needsLaetin (player, npc))
|
|
{
|
|
++numberOfResponses;
|
|
hasResponse = true;
|
|
hasResponse1 = true;
|
|
}
|
|
|
|
//-- PLAYER: I'm ready to fly for Aleas. I know I'm good enough.
|
|
boolean hasResponse2 = false;
|
|
if (!npe_job_pointer_condition_needsAleas (player, npc))
|
|
{
|
|
++numberOfResponses;
|
|
hasResponse = true;
|
|
hasResponse2 = true;
|
|
}
|
|
|
|
//-- PLAYER: Point me to Dartas! I'm going to be the best pilot out there!
|
|
boolean hasResponse3 = false;
|
|
if (!npe_job_pointer_condition_needsDartas (player, npc))
|
|
{
|
|
++numberOfResponses;
|
|
hasResponse = true;
|
|
hasResponse3 = true;
|
|
}
|
|
|
|
//-- PLAYER: Actually, this one doesn't involve flying. I'd like to talk to Deavyn.
|
|
boolean hasResponse4 = false;
|
|
if (!npe_job_pointer_condition_needsDaevyn (player, npc))
|
|
{
|
|
++numberOfResponses;
|
|
hasResponse = true;
|
|
hasResponse4 = true;
|
|
}
|
|
|
|
if (hasResponse)
|
|
{
|
|
int responseIndex = 0;
|
|
string_id responses [] = new string_id [numberOfResponses];
|
|
|
|
if (hasResponse0)
|
|
responses [responseIndex++] = new string_id (c_stringFile, "s_47");
|
|
|
|
if (hasResponse1)
|
|
responses [responseIndex++] = new string_id (c_stringFile, "s_51");
|
|
|
|
if (hasResponse2)
|
|
responses [responseIndex++] = new string_id (c_stringFile, "s_58");
|
|
|
|
if (hasResponse3)
|
|
responses [responseIndex++] = new string_id (c_stringFile, "s_61");
|
|
|
|
if (hasResponse4)
|
|
responses [responseIndex++] = new string_id (c_stringFile, "s_66");
|
|
|
|
utils.setScriptVar (player, "conversation.npe_job_pointer.branchId", 19);
|
|
|
|
npcSpeak (player, message);
|
|
npcSetConversationResponses (player, responses);
|
|
}
|
|
else
|
|
{
|
|
utils.removeScriptVar (player, "conversation.npe_job_pointer.branchId");
|
|
|
|
npcEndConversationWithMessage (player, message);
|
|
}
|
|
|
|
return SCRIPT_CONTINUE;
|
|
}
|
|
|
|
}
|
|
|
|
//-- [RESPONSE NOTE]
|
|
//-- PLAYER: Actually, this one doesn't involve flying. I'd like to talk to Deavyn.
|
|
if (response == "s_66")
|
|
{
|
|
//-- [NOTE]
|
|
if (npe_job_pointer_condition__defaultCondition (player, npc))
|
|
{
|
|
npe_job_pointer_action_giveJobPointerDaevyn (player, npc);
|
|
|
|
//-- NPC: I get a little spacesick myself. Here's his location.
|
|
string_id message = new string_id (c_stringFile, "s_68");
|
|
utils.removeScriptVar (player, "conversation.npe_job_pointer.branchId");
|
|
|
|
npcEndConversationWithMessage (player, message);
|
|
|
|
return SCRIPT_CONTINUE;
|
|
}
|
|
|
|
}
|
|
|
|
return SCRIPT_DEFAULT;
|
|
}
|
|
|
|
// ----------------------------------------------------------------------
|
|
|
|
int npe_job_pointer_handleBranch24 (obj_id player, obj_id npc, string_id response)
|
|
{
|
|
//-- [BRANCH NOTE]
|
|
//-- NPC: Before speaking with Aleas, you'll need to have proven yourself by finishing Laetin's missions.
|
|
|
|
//-- [RESPONSE NOTE]
|
|
//-- PLAYER: I'm new to piloting, I want to talk to Serissu.
|
|
if (response == "s_47")
|
|
{
|
|
//-- [NOTE]
|
|
if (npe_job_pointer_condition__defaultCondition (player, npc))
|
|
{
|
|
npe_job_pointer_action_giveJobPointerSerissu (player, npc);
|
|
|
|
//-- NPC: Good luck with that. I'm sure you will do fine.
|
|
string_id message = new string_id (c_stringFile, "s_49");
|
|
utils.removeScriptVar (player, "conversation.npe_job_pointer.branchId");
|
|
|
|
npcEndConversationWithMessage (player, message);
|
|
|
|
return SCRIPT_CONTINUE;
|
|
}
|
|
|
|
}
|
|
|
|
//-- [RESPONSE NOTE]
|
|
//-- PLAYER: I'd like to fly for Laetin A'shera. His missions look pretty easy.
|
|
if (response == "s_51")
|
|
{
|
|
//-- [NOTE]
|
|
if (npe_job_pointer_condition_needsSerissu (player, npc))
|
|
{
|
|
npe_job_pointer_action_giveJobPointerLaetin (player, npc);
|
|
|
|
//-- NPC: Easy is entirely relative. Good luck out there.
|
|
string_id message = new string_id (c_stringFile, "s_53");
|
|
utils.removeScriptVar (player, "conversation.npe_job_pointer.branchId");
|
|
|
|
npcEndConversationWithMessage (player, message);
|
|
|
|
return SCRIPT_CONTINUE;
|
|
}
|
|
|
|
//-- [NOTE]
|
|
if (npe_job_pointer_condition__defaultCondition (player, npc))
|
|
{
|
|
//-- NPC: You need to finish working with Serissu before Laetin will offer you anything.
|
|
string_id message = new string_id (c_stringFile, "s_109");
|
|
int numberOfResponses = 0;
|
|
|
|
boolean hasResponse = false;
|
|
|
|
//-- PLAYER: I'm new to piloting, I want to talk to Serissu.
|
|
boolean hasResponse0 = false;
|
|
if (!npe_job_pointer_condition_needsSerissu (player, npc))
|
|
{
|
|
++numberOfResponses;
|
|
hasResponse = true;
|
|
hasResponse0 = true;
|
|
}
|
|
|
|
//-- PLAYER: I'd like to fly for Laetin A'shera. His missions look pretty easy.
|
|
boolean hasResponse1 = false;
|
|
if (!npe_job_pointer_condition_needsLaetin (player, npc))
|
|
{
|
|
++numberOfResponses;
|
|
hasResponse = true;
|
|
hasResponse1 = true;
|
|
}
|
|
|
|
//-- PLAYER: I'm ready to fly for Aleas. I know I'm good enough.
|
|
boolean hasResponse2 = false;
|
|
if (!npe_job_pointer_condition_needsAleas (player, npc))
|
|
{
|
|
++numberOfResponses;
|
|
hasResponse = true;
|
|
hasResponse2 = true;
|
|
}
|
|
|
|
//-- PLAYER: Point me to Dartas! I'm going to be the best pilot out there!
|
|
boolean hasResponse3 = false;
|
|
if (!npe_job_pointer_condition_needsDartas (player, npc))
|
|
{
|
|
++numberOfResponses;
|
|
hasResponse = true;
|
|
hasResponse3 = true;
|
|
}
|
|
|
|
//-- PLAYER: Actually, this one doesn't involve flying. I'd like to talk to Deavyn.
|
|
boolean hasResponse4 = false;
|
|
if (!npe_job_pointer_condition_needsDaevyn (player, npc))
|
|
{
|
|
++numberOfResponses;
|
|
hasResponse = true;
|
|
hasResponse4 = true;
|
|
}
|
|
|
|
if (hasResponse)
|
|
{
|
|
int responseIndex = 0;
|
|
string_id responses [] = new string_id [numberOfResponses];
|
|
|
|
if (hasResponse0)
|
|
responses [responseIndex++] = new string_id (c_stringFile, "s_47");
|
|
|
|
if (hasResponse1)
|
|
responses [responseIndex++] = new string_id (c_stringFile, "s_51");
|
|
|
|
if (hasResponse2)
|
|
responses [responseIndex++] = new string_id (c_stringFile, "s_58");
|
|
|
|
if (hasResponse3)
|
|
responses [responseIndex++] = new string_id (c_stringFile, "s_61");
|
|
|
|
if (hasResponse4)
|
|
responses [responseIndex++] = new string_id (c_stringFile, "s_66");
|
|
|
|
utils.setScriptVar (player, "conversation.npe_job_pointer.branchId", 19);
|
|
|
|
npcSpeak (player, message);
|
|
npcSetConversationResponses (player, responses);
|
|
}
|
|
else
|
|
{
|
|
utils.removeScriptVar (player, "conversation.npe_job_pointer.branchId");
|
|
|
|
npcEndConversationWithMessage (player, message);
|
|
}
|
|
|
|
return SCRIPT_CONTINUE;
|
|
}
|
|
|
|
}
|
|
|
|
//-- [RESPONSE NOTE]
|
|
//-- PLAYER: I'm ready to fly for Aleas. I know I'm good enough.
|
|
if (response == "s_58")
|
|
{
|
|
//-- [NOTE]
|
|
if (npe_job_pointer_condition_needsLaetin (player, npc))
|
|
{
|
|
npe_job_pointer_action_giveJobPointerAleas (player, npc);
|
|
|
|
//-- NPC: Good for you! I hope you can understand her better than I can. Here's her location.
|
|
string_id message = new string_id (c_stringFile, "s_60");
|
|
utils.removeScriptVar (player, "conversation.npe_job_pointer.branchId");
|
|
|
|
npcEndConversationWithMessage (player, message);
|
|
|
|
return SCRIPT_CONTINUE;
|
|
}
|
|
|
|
//-- [NOTE]
|
|
if (npe_job_pointer_condition__defaultCondition (player, npc))
|
|
{
|
|
//-- NPC: Before speaking with Aleas, you'll need to have proven yourself by finishing Laetin's missions.
|
|
string_id message = new string_id (c_stringFile, "s_111");
|
|
int numberOfResponses = 0;
|
|
|
|
boolean hasResponse = false;
|
|
|
|
//-- PLAYER: I'm new to piloting, I want to talk to Serissu.
|
|
boolean hasResponse0 = false;
|
|
if (!npe_job_pointer_condition_needsSerissu (player, npc))
|
|
{
|
|
++numberOfResponses;
|
|
hasResponse = true;
|
|
hasResponse0 = true;
|
|
}
|
|
|
|
//-- PLAYER: I'd like to fly for Laetin A'shera. His missions look pretty easy.
|
|
boolean hasResponse1 = false;
|
|
if (!npe_job_pointer_condition_needsLaetin (player, npc))
|
|
{
|
|
++numberOfResponses;
|
|
hasResponse = true;
|
|
hasResponse1 = true;
|
|
}
|
|
|
|
//-- PLAYER: I'm ready to fly for Aleas. I know I'm good enough.
|
|
boolean hasResponse2 = false;
|
|
if (!npe_job_pointer_condition_needsAleas (player, npc))
|
|
{
|
|
++numberOfResponses;
|
|
hasResponse = true;
|
|
hasResponse2 = true;
|
|
}
|
|
|
|
//-- PLAYER: Point me to Dartas! I'm going to be the best pilot out there!
|
|
boolean hasResponse3 = false;
|
|
if (!npe_job_pointer_condition_needsDartas (player, npc))
|
|
{
|
|
++numberOfResponses;
|
|
hasResponse = true;
|
|
hasResponse3 = true;
|
|
}
|
|
|
|
//-- PLAYER: Actually, this one doesn't involve flying. I'd like to talk to Deavyn.
|
|
boolean hasResponse4 = false;
|
|
if (!npe_job_pointer_condition_needsDaevyn (player, npc))
|
|
{
|
|
++numberOfResponses;
|
|
hasResponse = true;
|
|
hasResponse4 = true;
|
|
}
|
|
|
|
if (hasResponse)
|
|
{
|
|
int responseIndex = 0;
|
|
string_id responses [] = new string_id [numberOfResponses];
|
|
|
|
if (hasResponse0)
|
|
responses [responseIndex++] = new string_id (c_stringFile, "s_47");
|
|
|
|
if (hasResponse1)
|
|
responses [responseIndex++] = new string_id (c_stringFile, "s_51");
|
|
|
|
if (hasResponse2)
|
|
responses [responseIndex++] = new string_id (c_stringFile, "s_58");
|
|
|
|
if (hasResponse3)
|
|
responses [responseIndex++] = new string_id (c_stringFile, "s_61");
|
|
|
|
if (hasResponse4)
|
|
responses [responseIndex++] = new string_id (c_stringFile, "s_66");
|
|
|
|
utils.setScriptVar (player, "conversation.npe_job_pointer.branchId", 19);
|
|
|
|
npcSpeak (player, message);
|
|
npcSetConversationResponses (player, responses);
|
|
}
|
|
else
|
|
{
|
|
utils.removeScriptVar (player, "conversation.npe_job_pointer.branchId");
|
|
|
|
npcEndConversationWithMessage (player, message);
|
|
}
|
|
|
|
return SCRIPT_CONTINUE;
|
|
}
|
|
|
|
}
|
|
|
|
//-- [RESPONSE NOTE]
|
|
//-- PLAYER: Point me to Dartas! I'm going to be the best pilot out there!
|
|
if (response == "s_61")
|
|
{
|
|
//-- [NOTE]
|
|
if (npe_job_pointer_condition_needsAleas (player, npc))
|
|
{
|
|
npe_job_pointer_action_giveJobPointerDartas (player, npc);
|
|
|
|
//-- NPC: I'm sure you are. You know he flew with the Corellian Security Forces, right? He is a bonafide ace! Here's his location. Be safe out there.
|
|
string_id message = new string_id (c_stringFile, "s_63");
|
|
utils.removeScriptVar (player, "conversation.npe_job_pointer.branchId");
|
|
|
|
npcEndConversationWithMessage (player, message);
|
|
|
|
return SCRIPT_CONTINUE;
|
|
}
|
|
|
|
//-- [NOTE]
|
|
if (npe_job_pointer_condition__defaultCondition (player, npc))
|
|
{
|
|
//-- NPC: Dartas is picky about who he sends into battle. Unless Aleas signs off on your piloting abilities, he won't use you.
|
|
string_id message = new string_id (c_stringFile, "s_113");
|
|
int numberOfResponses = 0;
|
|
|
|
boolean hasResponse = false;
|
|
|
|
//-- PLAYER: I'm new to piloting, I want to talk to Serissu.
|
|
boolean hasResponse0 = false;
|
|
if (!npe_job_pointer_condition_needsSerissu (player, npc))
|
|
{
|
|
++numberOfResponses;
|
|
hasResponse = true;
|
|
hasResponse0 = true;
|
|
}
|
|
|
|
//-- PLAYER: I'd like to fly for Laetin A'shera. His missions look pretty easy.
|
|
boolean hasResponse1 = false;
|
|
if (!npe_job_pointer_condition_needsLaetin (player, npc))
|
|
{
|
|
++numberOfResponses;
|
|
hasResponse = true;
|
|
hasResponse1 = true;
|
|
}
|
|
|
|
//-- PLAYER: I'm ready to fly for Aleas. I know I'm good enough.
|
|
boolean hasResponse2 = false;
|
|
if (!npe_job_pointer_condition_needsAleas (player, npc))
|
|
{
|
|
++numberOfResponses;
|
|
hasResponse = true;
|
|
hasResponse2 = true;
|
|
}
|
|
|
|
//-- PLAYER: Point me to Dartas! I'm going to be the best pilot out there!
|
|
boolean hasResponse3 = false;
|
|
if (!npe_job_pointer_condition_needsDartas (player, npc))
|
|
{
|
|
++numberOfResponses;
|
|
hasResponse = true;
|
|
hasResponse3 = true;
|
|
}
|
|
|
|
//-- PLAYER: Actually, this one doesn't involve flying. I'd like to talk to Deavyn.
|
|
boolean hasResponse4 = false;
|
|
if (!npe_job_pointer_condition_needsDaevyn (player, npc))
|
|
{
|
|
++numberOfResponses;
|
|
hasResponse = true;
|
|
hasResponse4 = true;
|
|
}
|
|
|
|
if (hasResponse)
|
|
{
|
|
int responseIndex = 0;
|
|
string_id responses [] = new string_id [numberOfResponses];
|
|
|
|
if (hasResponse0)
|
|
responses [responseIndex++] = new string_id (c_stringFile, "s_47");
|
|
|
|
if (hasResponse1)
|
|
responses [responseIndex++] = new string_id (c_stringFile, "s_51");
|
|
|
|
if (hasResponse2)
|
|
responses [responseIndex++] = new string_id (c_stringFile, "s_58");
|
|
|
|
if (hasResponse3)
|
|
responses [responseIndex++] = new string_id (c_stringFile, "s_61");
|
|
|
|
if (hasResponse4)
|
|
responses [responseIndex++] = new string_id (c_stringFile, "s_66");
|
|
|
|
utils.setScriptVar (player, "conversation.npe_job_pointer.branchId", 19);
|
|
|
|
npcSpeak (player, message);
|
|
npcSetConversationResponses (player, responses);
|
|
}
|
|
else
|
|
{
|
|
utils.removeScriptVar (player, "conversation.npe_job_pointer.branchId");
|
|
|
|
npcEndConversationWithMessage (player, message);
|
|
}
|
|
|
|
return SCRIPT_CONTINUE;
|
|
}
|
|
|
|
}
|
|
|
|
//-- [RESPONSE NOTE]
|
|
//-- PLAYER: Actually, this one doesn't involve flying. I'd like to talk to Deavyn.
|
|
if (response == "s_66")
|
|
{
|
|
//-- [NOTE]
|
|
if (npe_job_pointer_condition__defaultCondition (player, npc))
|
|
{
|
|
npe_job_pointer_action_giveJobPointerDaevyn (player, npc);
|
|
|
|
//-- NPC: I get a little spacesick myself. Here's his location.
|
|
string_id message = new string_id (c_stringFile, "s_68");
|
|
utils.removeScriptVar (player, "conversation.npe_job_pointer.branchId");
|
|
|
|
npcEndConversationWithMessage (player, message);
|
|
|
|
return SCRIPT_CONTINUE;
|
|
}
|
|
|
|
}
|
|
|
|
return SCRIPT_DEFAULT;
|
|
}
|
|
|
|
// ----------------------------------------------------------------------
|
|
|
|
int npe_job_pointer_handleBranch26 (obj_id player, obj_id npc, string_id response)
|
|
{
|
|
//-- [BRANCH NOTE]
|
|
//-- NPC: Dartas is picky about who he sends into battle. Unless Aleas signs off on your piloting abilities, he won't use you.
|
|
|
|
//-- [RESPONSE NOTE]
|
|
//-- PLAYER: I'm new to piloting, I want to talk to Serissu.
|
|
if (response == "s_47")
|
|
{
|
|
//-- [NOTE]
|
|
if (npe_job_pointer_condition__defaultCondition (player, npc))
|
|
{
|
|
npe_job_pointer_action_giveJobPointerSerissu (player, npc);
|
|
|
|
//-- NPC: Good luck with that. I'm sure you will do fine.
|
|
string_id message = new string_id (c_stringFile, "s_49");
|
|
utils.removeScriptVar (player, "conversation.npe_job_pointer.branchId");
|
|
|
|
npcEndConversationWithMessage (player, message);
|
|
|
|
return SCRIPT_CONTINUE;
|
|
}
|
|
|
|
}
|
|
|
|
//-- [RESPONSE NOTE]
|
|
//-- PLAYER: I'd like to fly for Laetin A'shera. His missions look pretty easy.
|
|
if (response == "s_51")
|
|
{
|
|
//-- [NOTE]
|
|
if (npe_job_pointer_condition_needsSerissu (player, npc))
|
|
{
|
|
npe_job_pointer_action_giveJobPointerLaetin (player, npc);
|
|
|
|
//-- NPC: Easy is entirely relative. Good luck out there.
|
|
string_id message = new string_id (c_stringFile, "s_53");
|
|
utils.removeScriptVar (player, "conversation.npe_job_pointer.branchId");
|
|
|
|
npcEndConversationWithMessage (player, message);
|
|
|
|
return SCRIPT_CONTINUE;
|
|
}
|
|
|
|
//-- [NOTE]
|
|
if (npe_job_pointer_condition__defaultCondition (player, npc))
|
|
{
|
|
//-- NPC: You need to finish working with Serissu before Laetin will offer you anything.
|
|
string_id message = new string_id (c_stringFile, "s_109");
|
|
int numberOfResponses = 0;
|
|
|
|
boolean hasResponse = false;
|
|
|
|
//-- PLAYER: I'm new to piloting, I want to talk to Serissu.
|
|
boolean hasResponse0 = false;
|
|
if (!npe_job_pointer_condition_needsSerissu (player, npc))
|
|
{
|
|
++numberOfResponses;
|
|
hasResponse = true;
|
|
hasResponse0 = true;
|
|
}
|
|
|
|
//-- PLAYER: I'd like to fly for Laetin A'shera. His missions look pretty easy.
|
|
boolean hasResponse1 = false;
|
|
if (!npe_job_pointer_condition_needsLaetin (player, npc))
|
|
{
|
|
++numberOfResponses;
|
|
hasResponse = true;
|
|
hasResponse1 = true;
|
|
}
|
|
|
|
//-- PLAYER: I'm ready to fly for Aleas. I know I'm good enough.
|
|
boolean hasResponse2 = false;
|
|
if (!npe_job_pointer_condition_needsAleas (player, npc))
|
|
{
|
|
++numberOfResponses;
|
|
hasResponse = true;
|
|
hasResponse2 = true;
|
|
}
|
|
|
|
//-- PLAYER: Point me to Dartas! I'm going to be the best pilot out there!
|
|
boolean hasResponse3 = false;
|
|
if (!npe_job_pointer_condition_needsDartas (player, npc))
|
|
{
|
|
++numberOfResponses;
|
|
hasResponse = true;
|
|
hasResponse3 = true;
|
|
}
|
|
|
|
//-- PLAYER: Actually, this one doesn't involve flying. I'd like to talk to Deavyn.
|
|
boolean hasResponse4 = false;
|
|
if (!npe_job_pointer_condition_needsDaevyn (player, npc))
|
|
{
|
|
++numberOfResponses;
|
|
hasResponse = true;
|
|
hasResponse4 = true;
|
|
}
|
|
|
|
if (hasResponse)
|
|
{
|
|
int responseIndex = 0;
|
|
string_id responses [] = new string_id [numberOfResponses];
|
|
|
|
if (hasResponse0)
|
|
responses [responseIndex++] = new string_id (c_stringFile, "s_47");
|
|
|
|
if (hasResponse1)
|
|
responses [responseIndex++] = new string_id (c_stringFile, "s_51");
|
|
|
|
if (hasResponse2)
|
|
responses [responseIndex++] = new string_id (c_stringFile, "s_58");
|
|
|
|
if (hasResponse3)
|
|
responses [responseIndex++] = new string_id (c_stringFile, "s_61");
|
|
|
|
if (hasResponse4)
|
|
responses [responseIndex++] = new string_id (c_stringFile, "s_66");
|
|
|
|
utils.setScriptVar (player, "conversation.npe_job_pointer.branchId", 19);
|
|
|
|
npcSpeak (player, message);
|
|
npcSetConversationResponses (player, responses);
|
|
}
|
|
else
|
|
{
|
|
utils.removeScriptVar (player, "conversation.npe_job_pointer.branchId");
|
|
|
|
npcEndConversationWithMessage (player, message);
|
|
}
|
|
|
|
return SCRIPT_CONTINUE;
|
|
}
|
|
|
|
}
|
|
|
|
//-- [RESPONSE NOTE]
|
|
//-- PLAYER: I'm ready to fly for Aleas. I know I'm good enough.
|
|
if (response == "s_58")
|
|
{
|
|
//-- [NOTE]
|
|
if (npe_job_pointer_condition_needsLaetin (player, npc))
|
|
{
|
|
npe_job_pointer_action_giveJobPointerAleas (player, npc);
|
|
|
|
//-- NPC: Good for you! I hope you can understand her better than I can. Here's her location.
|
|
string_id message = new string_id (c_stringFile, "s_60");
|
|
utils.removeScriptVar (player, "conversation.npe_job_pointer.branchId");
|
|
|
|
npcEndConversationWithMessage (player, message);
|
|
|
|
return SCRIPT_CONTINUE;
|
|
}
|
|
|
|
//-- [NOTE]
|
|
if (npe_job_pointer_condition__defaultCondition (player, npc))
|
|
{
|
|
//-- NPC: Before speaking with Aleas, you'll need to have proven yourself by finishing Laetin's missions.
|
|
string_id message = new string_id (c_stringFile, "s_111");
|
|
int numberOfResponses = 0;
|
|
|
|
boolean hasResponse = false;
|
|
|
|
//-- PLAYER: I'm new to piloting, I want to talk to Serissu.
|
|
boolean hasResponse0 = false;
|
|
if (!npe_job_pointer_condition_needsSerissu (player, npc))
|
|
{
|
|
++numberOfResponses;
|
|
hasResponse = true;
|
|
hasResponse0 = true;
|
|
}
|
|
|
|
//-- PLAYER: I'd like to fly for Laetin A'shera. His missions look pretty easy.
|
|
boolean hasResponse1 = false;
|
|
if (!npe_job_pointer_condition_needsLaetin (player, npc))
|
|
{
|
|
++numberOfResponses;
|
|
hasResponse = true;
|
|
hasResponse1 = true;
|
|
}
|
|
|
|
//-- PLAYER: I'm ready to fly for Aleas. I know I'm good enough.
|
|
boolean hasResponse2 = false;
|
|
if (!npe_job_pointer_condition_needsAleas (player, npc))
|
|
{
|
|
++numberOfResponses;
|
|
hasResponse = true;
|
|
hasResponse2 = true;
|
|
}
|
|
|
|
//-- PLAYER: Point me to Dartas! I'm going to be the best pilot out there!
|
|
boolean hasResponse3 = false;
|
|
if (!npe_job_pointer_condition_needsDartas (player, npc))
|
|
{
|
|
++numberOfResponses;
|
|
hasResponse = true;
|
|
hasResponse3 = true;
|
|
}
|
|
|
|
//-- PLAYER: Actually, this one doesn't involve flying. I'd like to talk to Deavyn.
|
|
boolean hasResponse4 = false;
|
|
if (!npe_job_pointer_condition_needsDaevyn (player, npc))
|
|
{
|
|
++numberOfResponses;
|
|
hasResponse = true;
|
|
hasResponse4 = true;
|
|
}
|
|
|
|
if (hasResponse)
|
|
{
|
|
int responseIndex = 0;
|
|
string_id responses [] = new string_id [numberOfResponses];
|
|
|
|
if (hasResponse0)
|
|
responses [responseIndex++] = new string_id (c_stringFile, "s_47");
|
|
|
|
if (hasResponse1)
|
|
responses [responseIndex++] = new string_id (c_stringFile, "s_51");
|
|
|
|
if (hasResponse2)
|
|
responses [responseIndex++] = new string_id (c_stringFile, "s_58");
|
|
|
|
if (hasResponse3)
|
|
responses [responseIndex++] = new string_id (c_stringFile, "s_61");
|
|
|
|
if (hasResponse4)
|
|
responses [responseIndex++] = new string_id (c_stringFile, "s_66");
|
|
|
|
utils.setScriptVar (player, "conversation.npe_job_pointer.branchId", 19);
|
|
|
|
npcSpeak (player, message);
|
|
npcSetConversationResponses (player, responses);
|
|
}
|
|
else
|
|
{
|
|
utils.removeScriptVar (player, "conversation.npe_job_pointer.branchId");
|
|
|
|
npcEndConversationWithMessage (player, message);
|
|
}
|
|
|
|
return SCRIPT_CONTINUE;
|
|
}
|
|
|
|
}
|
|
|
|
//-- [RESPONSE NOTE]
|
|
//-- PLAYER: Point me to Dartas! I'm going to be the best pilot out there!
|
|
if (response == "s_61")
|
|
{
|
|
//-- [NOTE]
|
|
if (npe_job_pointer_condition_needsAleas (player, npc))
|
|
{
|
|
npe_job_pointer_action_giveJobPointerDartas (player, npc);
|
|
|
|
//-- NPC: I'm sure you are. You know he flew with the Corellian Security Forces, right? He is a bonafide ace! Here's his location. Be safe out there.
|
|
string_id message = new string_id (c_stringFile, "s_63");
|
|
utils.removeScriptVar (player, "conversation.npe_job_pointer.branchId");
|
|
|
|
npcEndConversationWithMessage (player, message);
|
|
|
|
return SCRIPT_CONTINUE;
|
|
}
|
|
|
|
//-- [NOTE]
|
|
if (npe_job_pointer_condition__defaultCondition (player, npc))
|
|
{
|
|
//-- NPC: Dartas is picky about who he sends into battle. Unless Aleas signs off on your piloting abilities, he won't use you.
|
|
string_id message = new string_id (c_stringFile, "s_113");
|
|
int numberOfResponses = 0;
|
|
|
|
boolean hasResponse = false;
|
|
|
|
//-- PLAYER: I'm new to piloting, I want to talk to Serissu.
|
|
boolean hasResponse0 = false;
|
|
if (!npe_job_pointer_condition_needsSerissu (player, npc))
|
|
{
|
|
++numberOfResponses;
|
|
hasResponse = true;
|
|
hasResponse0 = true;
|
|
}
|
|
|
|
//-- PLAYER: I'd like to fly for Laetin A'shera. His missions look pretty easy.
|
|
boolean hasResponse1 = false;
|
|
if (!npe_job_pointer_condition_needsLaetin (player, npc))
|
|
{
|
|
++numberOfResponses;
|
|
hasResponse = true;
|
|
hasResponse1 = true;
|
|
}
|
|
|
|
//-- PLAYER: I'm ready to fly for Aleas. I know I'm good enough.
|
|
boolean hasResponse2 = false;
|
|
if (!npe_job_pointer_condition_needsAleas (player, npc))
|
|
{
|
|
++numberOfResponses;
|
|
hasResponse = true;
|
|
hasResponse2 = true;
|
|
}
|
|
|
|
//-- PLAYER: Point me to Dartas! I'm going to be the best pilot out there!
|
|
boolean hasResponse3 = false;
|
|
if (!npe_job_pointer_condition_needsDartas (player, npc))
|
|
{
|
|
++numberOfResponses;
|
|
hasResponse = true;
|
|
hasResponse3 = true;
|
|
}
|
|
|
|
//-- PLAYER: Actually, this one doesn't involve flying. I'd like to talk to Deavyn.
|
|
boolean hasResponse4 = false;
|
|
if (!npe_job_pointer_condition_needsDaevyn (player, npc))
|
|
{
|
|
++numberOfResponses;
|
|
hasResponse = true;
|
|
hasResponse4 = true;
|
|
}
|
|
|
|
if (hasResponse)
|
|
{
|
|
int responseIndex = 0;
|
|
string_id responses [] = new string_id [numberOfResponses];
|
|
|
|
if (hasResponse0)
|
|
responses [responseIndex++] = new string_id (c_stringFile, "s_47");
|
|
|
|
if (hasResponse1)
|
|
responses [responseIndex++] = new string_id (c_stringFile, "s_51");
|
|
|
|
if (hasResponse2)
|
|
responses [responseIndex++] = new string_id (c_stringFile, "s_58");
|
|
|
|
if (hasResponse3)
|
|
responses [responseIndex++] = new string_id (c_stringFile, "s_61");
|
|
|
|
if (hasResponse4)
|
|
responses [responseIndex++] = new string_id (c_stringFile, "s_66");
|
|
|
|
utils.setScriptVar (player, "conversation.npe_job_pointer.branchId", 19);
|
|
|
|
npcSpeak (player, message);
|
|
npcSetConversationResponses (player, responses);
|
|
}
|
|
else
|
|
{
|
|
utils.removeScriptVar (player, "conversation.npe_job_pointer.branchId");
|
|
|
|
npcEndConversationWithMessage (player, message);
|
|
}
|
|
|
|
return SCRIPT_CONTINUE;
|
|
}
|
|
|
|
}
|
|
|
|
//-- [RESPONSE NOTE]
|
|
//-- PLAYER: Actually, this one doesn't involve flying. I'd like to talk to Deavyn.
|
|
if (response == "s_66")
|
|
{
|
|
//-- [NOTE]
|
|
if (npe_job_pointer_condition__defaultCondition (player, npc))
|
|
{
|
|
npe_job_pointer_action_giveJobPointerDaevyn (player, npc);
|
|
|
|
//-- NPC: I get a little spacesick myself. Here's his location.
|
|
string_id message = new string_id (c_stringFile, "s_68");
|
|
utils.removeScriptVar (player, "conversation.npe_job_pointer.branchId");
|
|
|
|
npcEndConversationWithMessage (player, message);
|
|
|
|
return SCRIPT_CONTINUE;
|
|
}
|
|
|
|
}
|
|
|
|
return SCRIPT_DEFAULT;
|
|
}
|
|
|
|
// ----------------------------------------------------------------------
|
|
|
|
int npe_job_pointer_handleBranch28 (obj_id player, obj_id npc, string_id response)
|
|
{
|
|
//-- [BRANCH NOTE]
|
|
//-- NPC: Ah yes, the combat specialists. Well, most of them are, at least. Here's a list.
|
|
|
|
//-- [RESPONSE NOTE]
|
|
//-- PLAYER: Ah, the brawling master. I'd like to talk to Rydel.
|
|
if (response == "s_74")
|
|
{
|
|
//-- [NOTE]
|
|
if (npe_job_pointer_condition__defaultCondition (player, npc))
|
|
{
|
|
npe_job_pointer_action_giveJobPointerRydel (player, npc);
|
|
|
|
//-- NPC: Good. I like Rydel...he's so calm. I hear that he used to work for Nym on Lok. Here's his location.
|
|
string_id message = new string_id (c_stringFile, "s_76");
|
|
utils.removeScriptVar (player, "conversation.npe_job_pointer.branchId");
|
|
|
|
npcEndConversationWithMessage (player, message);
|
|
|
|
return SCRIPT_CONTINUE;
|
|
}
|
|
|
|
}
|
|
|
|
//-- [RESPONSE NOTE]
|
|
//-- PLAYER: A marksman! I'd like to talk to Loche.
|
|
if (response == "s_78")
|
|
{
|
|
//-- [NOTE]
|
|
if (npe_job_pointer_condition__defaultCondition (player, npc))
|
|
{
|
|
npe_job_pointer_action_giveJobPointerLoche (player, npc);
|
|
|
|
//-- NPC: Very good. He's tracking down some serious problems here.
|
|
string_id message = new string_id (c_stringFile, "s_80");
|
|
utils.removeScriptVar (player, "conversation.npe_job_pointer.branchId");
|
|
|
|
npcEndConversationWithMessage (player, message);
|
|
|
|
return SCRIPT_CONTINUE;
|
|
}
|
|
|
|
}
|
|
|
|
//-- [RESPONSE NOTE]
|
|
//-- PLAYER: Raylen's my speed. I love hunting animals.
|
|
if (response == "s_82")
|
|
{
|
|
//-- [NOTE]
|
|
if (npe_job_pointer_condition__defaultCondition (player, npc))
|
|
{
|
|
npe_job_pointer_action_giveJobPointerRaylen (player, npc);
|
|
|
|
//-- NPC: Ah, Raylen. He doesn't like space much. Just returned from Endor...mentioned some small furry creatures. Here's his location.
|
|
string_id message = new string_id (c_stringFile, "s_84");
|
|
utils.removeScriptVar (player, "conversation.npe_job_pointer.branchId");
|
|
|
|
npcEndConversationWithMessage (player, message);
|
|
|
|
return SCRIPT_CONTINUE;
|
|
}
|
|
|
|
}
|
|
|
|
//-- [RESPONSE NOTE]
|
|
//-- PLAYER: How about this Droid Engineer? I can help him.
|
|
if (response == "s_86")
|
|
{
|
|
//-- [NOTE]
|
|
if (npe_job_pointer_condition__defaultCondition (player, npc))
|
|
{
|
|
npe_job_pointer_action_giveJobPointerDroidEngineer (player, npc);
|
|
|
|
//-- NPC: Indeed. Don't mind his manner...he's not a people person.
|
|
string_id message = new string_id (c_stringFile, "s_88");
|
|
utils.removeScriptVar (player, "conversation.npe_job_pointer.branchId");
|
|
|
|
npcEndConversationWithMessage (player, message);
|
|
|
|
return SCRIPT_CONTINUE;
|
|
}
|
|
|
|
}
|
|
|
|
//-- [RESPONSE NOTE]
|
|
//-- PLAYER: Oh, looks like the Security Director needs help with thugs.
|
|
if (response == "s_90")
|
|
{
|
|
//-- [NOTE]
|
|
if (npe_job_pointer_condition__defaultCondition (player, npc))
|
|
{
|
|
npe_job_pointer_action_giveJobPointerSecurityDirector (player, npc);
|
|
|
|
//-- NPC: Good. Help him keep the station safe!
|
|
string_id message = new string_id (c_stringFile, "s_92");
|
|
utils.removeScriptVar (player, "conversation.npe_job_pointer.branchId");
|
|
|
|
npcEndConversationWithMessage (player, message);
|
|
|
|
return SCRIPT_CONTINUE;
|
|
}
|
|
|
|
}
|
|
|
|
return SCRIPT_DEFAULT;
|
|
}
|
|
|
|
// ----------------------------------------------------------------------
|
|
|
|
int npe_job_pointer_handleBranch34 (obj_id player, obj_id npc, string_id response)
|
|
{
|
|
//-- [BRANCH NOTE]
|
|
//-- NPC: That's our visitors' hangar. Only one person there now. Here's what is available there.
|
|
|
|
//-- [RESPONSE NOTE]
|
|
//-- PLAYER: Jolka's fixing a droid? I'll help him.
|
|
if (response == "s_106")
|
|
{
|
|
//-- [NOTE]
|
|
if (npe_job_pointer_condition__defaultCondition (player, npc))
|
|
{
|
|
npe_job_pointer_action_giveJobPointerJolka (player, npc);
|
|
|
|
//-- NPC: Very well. He is one of our top mechanics. I think Chewbacca makes him nervous. Here's his location for you.
|
|
string_id message = new string_id (c_stringFile, "s_108");
|
|
utils.removeScriptVar (player, "conversation.npe_job_pointer.branchId");
|
|
|
|
npcEndConversationWithMessage (player, message);
|
|
|
|
return SCRIPT_CONTINUE;
|
|
}
|
|
|
|
}
|
|
|
|
return SCRIPT_DEFAULT;
|
|
}
|
|
|
|
// ----------------------------------------------------------------------
|
|
|
|
int npe_job_pointer_handleBranch36 (obj_id player, obj_id npc, string_id response)
|
|
{
|
|
//-- [BRANCH NOTE]
|
|
//-- NPC: In this office? Only Inaldra needs work done around here.
|
|
|
|
//-- [RESPONSE NOTE]
|
|
//-- PLAYER: I'd love to help Inaldra!
|
|
if (response == "s_114")
|
|
{
|
|
//-- [NOTE]
|
|
if (npe_job_pointer_condition__defaultCondition (player, npc))
|
|
{
|
|
npe_job_pointer_action_giveJobPointerInaldra (player, npc);
|
|
|
|
//-- NPC: I'm sure she will appreciate it. Ever since she took control of the station, she has been up to her lekku in trouble. She's right around the corner there.
|
|
string_id message = new string_id (c_stringFile, "s_116");
|
|
utils.removeScriptVar (player, "conversation.npe_job_pointer.branchId");
|
|
|
|
npcEndConversationWithMessage (player, message);
|
|
|
|
return SCRIPT_CONTINUE;
|
|
}
|
|
|
|
}
|
|
|
|
return SCRIPT_DEFAULT;
|
|
}
|
|
|
|
// ----------------------------------------------------------------------
|
|
|
|
// ======================================================================
|
|
// User Script Triggers
|
|
// ======================================================================
|
|
|
|
trigger OnInitialize ()
|
|
{
|
|
if ((!isMob (self)) || (isPlayer (self)))
|
|
detachScript(self, "conversation.npe_job_pointer");
|
|
|
|
setCondition (self, CONDITION_CONVERSABLE);
|
|
//setCondition (self, CONDITION_INTERESTING);
|
|
setInvulnerable (self, true);
|
|
setName (self, "Inaldra's Lieutenant (Job Requisitions)");
|
|
ai_lib.setDefaultCalmBehavior( self, ai_lib.BEHAVIOR_SENTINEL );
|
|
setAnimationMood(self, "npc_sitting_chair");
|
|
|
|
return SCRIPT_CONTINUE;
|
|
}
|
|
|
|
trigger OnAttach ()
|
|
{
|
|
setCondition (self, CONDITION_CONVERSABLE);
|
|
//setCondition (self, CONDITION_INTERESTING);
|
|
setInvulnerable (self, true);
|
|
setName (self, "Inaldra's Lieutenant (Job Requisitions)");
|
|
ai_lib.setDefaultCalmBehavior( self, ai_lib.BEHAVIOR_SENTINEL );
|
|
setAnimationMood(self, "npc_sitting_chair");
|
|
|
|
return SCRIPT_CONTINUE;
|
|
}
|
|
|
|
trigger OnObjectMenuRequest (obj_id player, menu_info menuInfo)
|
|
{
|
|
int menu = menuInfo.addRootMenu (menu_info_types.CONVERSE_START, null);
|
|
menu_info_data menuInfoData = menuInfo.getMenuItemById (menu);
|
|
menuInfoData.setServerNotify (false);
|
|
setCondition (self, CONDITION_CONVERSABLE);
|
|
|
|
return SCRIPT_CONTINUE;
|
|
}
|
|
|
|
trigger OnIncapacitated (obj_id killer)
|
|
{
|
|
clearCondition (self, CONDITION_CONVERSABLE);
|
|
detachScript (self, "conversation.npe_job_pointer");
|
|
|
|
return SCRIPT_CONTINUE;
|
|
}
|
|
|
|
// ======================================================================
|
|
// Script Triggers
|
|
// ======================================================================
|
|
|
|
//-- This function should move to base_class.java
|
|
boolean npcStartConversation(obj_id player, obj_id npc, string convoName, string_id greetingId, prose_package greetingProse, string_id[] responses)
|
|
{
|
|
Object[] objects = new Object[responses.length];
|
|
System.arraycopy(responses, 0, objects, 0, responses.length);
|
|
return npcStartConversation(player, npc, convoName, greetingId, greetingProse, objects);
|
|
}
|
|
|
|
// ----------------------------------------------------------------------
|
|
|
|
trigger OnStartNpcConversation (obj_id player)
|
|
{
|
|
obj_id npc = self;
|
|
|
|
if (ai_lib.isInCombat (npc) || ai_lib.isInCombat (player))
|
|
return SCRIPT_OVERRIDE;
|
|
|
|
//-- [NOTE]
|
|
if (npe_job_pointer_condition_anAssignmentActive (player, npc))
|
|
{
|
|
//-- NPC: You appear to already have an assignment from me. Please come back when it's completed.
|
|
string_id message = new string_id (c_stringFile, "s_133");
|
|
chat.chat (npc, player, message);
|
|
|
|
return SCRIPT_CONTINUE;
|
|
}
|
|
|
|
//-- [NOTE]
|
|
if (npe_job_pointer_condition__defaultCondition (player, npc))
|
|
{
|
|
//-- NPC: You look like you're looking for work. Can I help you with that?
|
|
string_id message = new string_id (c_stringFile, "s_5");
|
|
int numberOfResponses = 0;
|
|
|
|
boolean hasResponse = false;
|
|
|
|
//-- PLAYER: Yes, I want to find some more adventure and excitement.
|
|
boolean hasResponse0 = false;
|
|
if (!npe_job_pointer_condition_finishedAllGamma (player, npc))
|
|
{
|
|
++numberOfResponses;
|
|
hasResponse = true;
|
|
hasResponse0 = true;
|
|
}
|
|
|
|
//-- PLAYER: Yes! I want a way to make money.
|
|
boolean hasResponse1 = false;
|
|
if (!npe_job_pointer_condition_finishedAllStation (player, npc))
|
|
{
|
|
++numberOfResponses;
|
|
hasResponse = true;
|
|
hasResponse1 = true;
|
|
}
|
|
|
|
//-- PLAYER: I just want to get off this station, and explore the galaxy.
|
|
boolean hasResponse2 = false;
|
|
if (npe_job_pointer_condition_hasTemplate (player, npc))
|
|
{
|
|
++numberOfResponses;
|
|
hasResponse = true;
|
|
hasResponse2 = true;
|
|
}
|
|
|
|
//-- PLAYER: No thanks. I'm just looking around.
|
|
boolean hasResponse3 = false;
|
|
if (npe_job_pointer_condition__defaultCondition (player, npc))
|
|
{
|
|
++numberOfResponses;
|
|
hasResponse = true;
|
|
hasResponse3 = true;
|
|
}
|
|
|
|
if (hasResponse)
|
|
{
|
|
int responseIndex = 0;
|
|
string_id responses [] = new string_id [numberOfResponses];
|
|
|
|
if (hasResponse0)
|
|
responses [responseIndex++] = new string_id (c_stringFile, "s_123");
|
|
|
|
if (hasResponse1)
|
|
responses [responseIndex++] = new string_id (c_stringFile, "s_23");
|
|
|
|
if (hasResponse2)
|
|
responses [responseIndex++] = new string_id (c_stringFile, "s_115");
|
|
|
|
if (hasResponse3)
|
|
responses [responseIndex++] = new string_id (c_stringFile, "s_131");
|
|
|
|
utils.setScriptVar (player, "conversation.npe_job_pointer.branchId", 2);
|
|
|
|
npcStartConversation (player, npc, "npe_job_pointer", message, responses);
|
|
}
|
|
else
|
|
{
|
|
chat.chat (npc, player, message);
|
|
}
|
|
|
|
return SCRIPT_CONTINUE;
|
|
}
|
|
|
|
chat.chat (npc, "Error: All conditions for OnStartNpcConversation were false.");
|
|
|
|
return SCRIPT_CONTINUE;
|
|
}
|
|
|
|
// ----------------------------------------------------------------------
|
|
|
|
trigger OnNpcConversationResponse (string conversationId, obj_id player, string_id response)
|
|
{
|
|
if (conversationId != "npe_job_pointer")
|
|
return SCRIPT_CONTINUE;
|
|
|
|
obj_id npc = self;
|
|
|
|
int branchId = utils.getIntScriptVar (player, "conversation.npe_job_pointer.branchId");
|
|
|
|
if (branchId == 2 && npe_job_pointer_handleBranch2 (player, npc, response) == SCRIPT_CONTINUE)
|
|
return SCRIPT_CONTINUE;
|
|
|
|
if (branchId == 5 && npe_job_pointer_handleBranch5 (player, npc, response) == SCRIPT_CONTINUE)
|
|
return SCRIPT_CONTINUE;
|
|
|
|
if (branchId == 10 && npe_job_pointer_handleBranch10 (player, npc, response) == SCRIPT_CONTINUE)
|
|
return SCRIPT_CONTINUE;
|
|
|
|
if (branchId == 12 && npe_job_pointer_handleBranch12 (player, npc, response) == SCRIPT_CONTINUE)
|
|
return SCRIPT_CONTINUE;
|
|
|
|
if (branchId == 15 && npe_job_pointer_handleBranch15 (player, npc, response) == SCRIPT_CONTINUE)
|
|
return SCRIPT_CONTINUE;
|
|
|
|
if (branchId == 16 && npe_job_pointer_handleBranch16 (player, npc, response) == SCRIPT_CONTINUE)
|
|
return SCRIPT_CONTINUE;
|
|
|
|
if (branchId == 19 && npe_job_pointer_handleBranch19 (player, npc, response) == SCRIPT_CONTINUE)
|
|
return SCRIPT_CONTINUE;
|
|
|
|
if (branchId == 22 && npe_job_pointer_handleBranch22 (player, npc, response) == SCRIPT_CONTINUE)
|
|
return SCRIPT_CONTINUE;
|
|
|
|
if (branchId == 24 && npe_job_pointer_handleBranch24 (player, npc, response) == SCRIPT_CONTINUE)
|
|
return SCRIPT_CONTINUE;
|
|
|
|
if (branchId == 26 && npe_job_pointer_handleBranch26 (player, npc, response) == SCRIPT_CONTINUE)
|
|
return SCRIPT_CONTINUE;
|
|
|
|
if (branchId == 28 && npe_job_pointer_handleBranch28 (player, npc, response) == SCRIPT_CONTINUE)
|
|
return SCRIPT_CONTINUE;
|
|
|
|
if (branchId == 34 && npe_job_pointer_handleBranch34 (player, npc, response) == SCRIPT_CONTINUE)
|
|
return SCRIPT_CONTINUE;
|
|
|
|
if (branchId == 36 && npe_job_pointer_handleBranch36 (player, npc, response) == SCRIPT_CONTINUE)
|
|
return SCRIPT_CONTINUE;
|
|
|
|
chat.chat (npc, "Error: Fell through all branches and responses for OnNpcConversationResponse.");
|
|
|
|
utils.removeScriptVar (player, "conversation.npe_job_pointer.branchId");
|
|
|
|
return SCRIPT_CONTINUE;
|
|
}
|
|
|
|
// ======================================================================
|
|
|