// ====================================================================== // // npe_job_pointer.script // Copyright 2004, Sony Online Entertainment // All Rights Reserved. // // 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 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; } // ======================================================================