Files
dsrc/sku.0/sys.server/compiled/game/script/conversation/hx_138.script
T

4204 lines
118 KiB
Plaintext

// ======================================================================
//
// hx_138.script
// Copyright 2004, Sony Online Entertainment
// All Rights Reserved.
//
// Created with SwgConversationEditor 1.37 - DO NOT EDIT THIS AUTO-GENERATED FILE!
//
// ======================================================================
// ======================================================================
// Library Includes
// ======================================================================
include library.ai_lib;
include library.chat;
include library.conversation;
include library.groundquests;
include library.utils;
// ======================================================================
// Script Constants
// ======================================================================
string c_stringFile = "conversation/hx_138";
// ======================================================================
// Script Conditions
// ======================================================================
boolean hx_138_condition__defaultCondition (obj_id player, obj_id npc)
{
return true;
}
// ----------------------------------------------------------------------
boolean hx_138_condition_firstMeeting (obj_id player, obj_id npc)
{
faceTo(npc, player);
return (groundquests.isTaskActive(player, "outbreak_quest_02_imperial", "findTroopers")
|| groundquests.isTaskActive(player, "outbreak_quest_02_rebel", "findTroopers")
|| groundquests.isTaskActive(player, "outbreak_quest_02_neutral", "findTroopers")
);
}
// ----------------------------------------------------------------------
boolean hx_138_condition_hasRescueQuestActive (obj_id player, obj_id npc)
{
faceTo(npc, player);
return (groundquests.isTaskActive(player, "outbreak_quest_rescue_01", "spawnSurvivor")
|| groundquests.isTaskActive(player, "outbreak_quest_rescue_01", "coaxingPleyer")
|| groundquests.isTaskActive(player, "outbreak_quest_rescue_02", "spawnSurvivor")
|| groundquests.isTaskActive(player, "outbreak_quest_rescue_02", "coaxingPleyer")
|| groundquests.isTaskActive(player, "outbreak_quest_rescue_03", "spawnSurvivor")
|| groundquests.isTaskActive(player, "outbreak_quest_rescue_03", "coaxingPleyer")
|| groundquests.isTaskActive(player, "outbreak_quest_rescue_04", "spawnSurvivor")
|| groundquests.isTaskActive(player, "outbreak_quest_rescue_04", "coaxingPleyer")
|| groundquests.isTaskActive(player, "outbreak_quest_rescue_05", "spawnSurvivor")
|| groundquests.isTaskActive(player, "outbreak_quest_rescue_05", "coaxingPleyer")
|| groundquests.isTaskActive(player, "outbreak_quest_rescue_06", "spawnSurvivor")
|| groundquests.isTaskActive(player, "outbreak_quest_rescue_06", "coaxingPleyer")
|| groundquests.isTaskActive(player, "outbreak_quest_rescue_07", "spawnSurvivor")
|| groundquests.isTaskActive(player, "outbreak_quest_rescue_07", "coaxingPleyer")
|| groundquests.isTaskActive(player, "outbreak_quest_rescue_08", "spawnSurvivor")
|| groundquests.isTaskActive(player, "outbreak_quest_rescue_08", "coaxingPleyer")
|| groundquests.isTaskActive(player, "outbreak_quest_rescue_09", "spawnSurvivor")
|| groundquests.isTaskActive(player, "outbreak_quest_rescue_09", "coaxingPleyer")
|| groundquests.isTaskActive(player, "outbreak_quest_rescue_010", "spawnSurvivor")
|| groundquests.isTaskActive(player, "outbreak_quest_rescue_010", "coaxingPleyer")
|| groundquests.isTaskActive(player, "outbreak_quest_rescue_011", "spawnSurvivor")
|| groundquests.isTaskActive(player, "outbreak_quest_rescue_012", "coaxingPleyer")
|| groundquests.isTaskActive(player, "outbreak_quest_rescue_013", "spawnSurvivor")
|| groundquests.isTaskActive(player, "outbreak_quest_rescue_013", "coaxingPleyer")
|| groundquests.isTaskActive(player, "outbreak_quest_rescue_014", "spawnSurvivor")
|| groundquests.isTaskActive(player, "outbreak_quest_rescue_014", "coaxingPleyer")
|| groundquests.isTaskActive(player, "outbreak_quest_rescue_015", "spawnSurvivor")
|| groundquests.isTaskActive(player, "outbreak_quest_rescue_015", "coaxingPleyer")
|| groundquests.isTaskActive(player, "outbreak_quest_rescue_016", "spawnSurvivor")
|| groundquests.isTaskActive(player, "outbreak_quest_rescue_016", "coaxingPleyer")
);
}
// ----------------------------------------------------------------------
boolean hx_138_condition_failedRescueOne (obj_id player, obj_id npc)
{
faceTo(npc, player);
return groundquests.isQuestActive(player, "outbreak_quest_rescue_01_fail");
}
// ----------------------------------------------------------------------
boolean hx_138_condition_failedRescueTwo (obj_id player, obj_id npc)
{
faceTo(npc, player);
return groundquests.isQuestActive(player, "outbreak_quest_rescue_02_fail");
}
// ----------------------------------------------------------------------
boolean hx_138_condition_failedRescueThree (obj_id player, obj_id npc)
{
faceTo(npc, player);
return groundquests.isQuestActive(player, "outbreak_quest_rescue_03_fail");
}
// ----------------------------------------------------------------------
boolean hx_138_condition_failedRescueFour (obj_id player, obj_id npc)
{
faceTo(npc, player);
return groundquests.isQuestActive(player, "outbreak_quest_rescue_04_fail");
}
// ----------------------------------------------------------------------
boolean hx_138_condition_successRescueOne (obj_id player, obj_id npc)
{
faceTo(npc, player);
return groundquests.isQuestActive(player, "outbreak_quest_rescue_01_success");
}
// ----------------------------------------------------------------------
boolean hx_138_condition_successRescueTwo (obj_id player, obj_id npc)
{
faceTo(npc, player);
return groundquests.isQuestActive(player, "outbreak_quest_rescue_02_success");
}
// ----------------------------------------------------------------------
boolean hx_138_condition_successRescueThree (obj_id player, obj_id npc)
{
faceTo(npc, player);
return groundquests.isQuestActive(player, "outbreak_quest_rescue_03_success");
}
// ----------------------------------------------------------------------
boolean hx_138_condition_successRescueFour (obj_id player, obj_id npc)
{
faceTo(npc, player);
return groundquests.isQuestActive(player, "outbreak_quest_rescue_04_success");
}
// ----------------------------------------------------------------------
boolean hx_138_condition_hasShuttlePartQuestActive (obj_id player, obj_id npc)
{
faceTo(npc, player);
return groundquests.isQuestActive(player, "outbreak_quest_shuttle_parts");
}
// ----------------------------------------------------------------------
boolean hx_138_condition_isStuckRescuing (obj_id player, obj_id npc)
{
faceTo(npc, player);
//the task name is misleading. If the player actually has this task active they are waiting for the
//npc to breach the trigger volumen. It may be that the NPC no longer exists and the player
//is stuck
return (groundquests.isTaskActive(player, "outbreak_quest_rescue_01", "rescueCompleted")
|| groundquests.isTaskActive(player, "outbreak_quest_rescue_02", "rescueCompleted")
|| groundquests.isTaskActive(player, "outbreak_quest_rescue_03", "rescueCompleted")
|| groundquests.isTaskActive(player, "outbreak_quest_rescue_04", "rescueCompleted")
|| groundquests.isTaskActive(player, "outbreak_quest_rescue_01", "speakSurvivor")
|| groundquests.isTaskActive(player, "outbreak_quest_rescue_02", "speakSurvivor")
|| groundquests.isTaskActive(player, "outbreak_quest_rescue_03", "speakSurvivor")
|| groundquests.isTaskActive(player, "outbreak_quest_rescue_04", "speakSurvivor")
|| groundquests.isTaskActive(player, "outbreak_quest_rescue_05", "rescueCompleted")
|| groundquests.isTaskActive(player, "outbreak_quest_rescue_06", "rescueCompleted")
|| groundquests.isTaskActive(player, "outbreak_quest_rescue_07", "rescueCompleted")
|| groundquests.isTaskActive(player, "outbreak_quest_rescue_08", "rescueCompleted")
|| groundquests.isTaskActive(player, "outbreak_quest_rescue_05", "speakSurvivor")
|| groundquests.isTaskActive(player, "outbreak_quest_rescue_06", "speakSurvivor")
|| groundquests.isTaskActive(player, "outbreak_quest_rescue_07", "speakSurvivor")
|| groundquests.isTaskActive(player, "outbreak_quest_rescue_08", "speakSurvivor")
|| groundquests.isTaskActive(player, "outbreak_quest_rescue_09", "rescueCompleted")
|| groundquests.isTaskActive(player, "outbreak_quest_rescue_010", "rescueCompleted")
|| groundquests.isTaskActive(player, "outbreak_quest_rescue_011", "rescueCompleted")
|| groundquests.isTaskActive(player, "outbreak_quest_rescue_012", "rescueCompleted")
|| groundquests.isTaskActive(player, "outbreak_quest_rescue_09", "speakSurvivor")
|| groundquests.isTaskActive(player, "outbreak_quest_rescue_010", "speakSurvivor")
|| groundquests.isTaskActive(player, "outbreak_quest_rescue_011", "speakSurvivor")
|| groundquests.isTaskActive(player, "outbreak_quest_rescue_012", "speakSurvivor")
|| groundquests.isTaskActive(player, "outbreak_quest_rescue_013", "rescueCompleted")
|| groundquests.isTaskActive(player, "outbreak_quest_rescue_014", "rescueCompleted")
|| groundquests.isTaskActive(player, "outbreak_quest_rescue_015", "rescueCompleted")
|| groundquests.isTaskActive(player, "outbreak_quest_rescue_016", "rescueCompleted")
|| groundquests.isTaskActive(player, "outbreak_quest_rescue_013", "speakSurvivor")
|| groundquests.isTaskActive(player, "outbreak_quest_rescue_014", "speakSurvivor")
|| groundquests.isTaskActive(player, "outbreak_quest_rescue_015", "speakSurvivor")
|| groundquests.isTaskActive(player, "outbreak_quest_rescue_016", "speakSurvivor")
);
}
// ----------------------------------------------------------------------
boolean hx_138_condition_finishedRescueCanceledShuttle (obj_id player, obj_id npc)
{
faceTo(npc, player);
return groundquests.hasCompletedQuest(player, "outbreak_quest_rescue_04_success")
&& !groundquests.isQuestActiveOrComplete(player, "outbreak_quest_shuttle_parts");
}
// ----------------------------------------------------------------------
boolean hx_138_condition_hasShuttlePartsNotMechanic (obj_id player, obj_id npc)
{
faceTo(npc, player);
return groundquests.isTaskActive(player, "outbreak_quest_shuttle_parts", "deliverMechanic");
}
// ----------------------------------------------------------------------
boolean hx_138_condition_isImperialQuestPlayer (obj_id player, obj_id npc)
{
faceTo(npc, player);
return groundquests.hasCompletedQuest(player, "outbreak_quest_02_imperial");
}
// ----------------------------------------------------------------------
boolean hx_138_condition_isRebelQuestPlayer (obj_id player, obj_id npc)
{
faceTo(npc, player);
return groundquests.hasCompletedQuest(player, "outbreak_quest_02_rebel");
}
// ----------------------------------------------------------------------
boolean hx_138_condition_isNeutralQuestPlayer (obj_id player, obj_id npc)
{
faceTo(npc, player);
return groundquests.hasCompletedQuest(player, "outbreak_quest_02_neutral");
}
// ----------------------------------------------------------------------
boolean hx_138_condition_hasGivenPartsMechanic (obj_id player, obj_id npc)
{
faceTo(npc, player);
return groundquests.isTaskActive(player, "outbreak_quest_shuttle_parts", "seeHX138");
}
// ----------------------------------------------------------------------
boolean hx_138_condition_readyFirstRescue (obj_id player, obj_id npc)
{
faceTo(npc, player);
return (groundquests.hasCompletedQuest(player, "outbreak_quest_02_imperial")
|| groundquests.hasCompletedQuest(player, "outbreak_quest_02_rebel")
|| groundquests.hasCompletedQuest(player, "outbreak_quest_02_neutral"))
&& !groundquests.isQuestActiveOrComplete(player, "outbreak_quest_rescue_01")
&& !groundquests.isQuestActiveOrComplete(player, "outbreak_quest_rescue_05")
&& !groundquests.isQuestActiveOrComplete(player, "outbreak_quest_rescue_06")
&& !groundquests.isQuestActiveOrComplete(player, "outbreak_quest_rescue_07");
}
// ----------------------------------------------------------------------
boolean hx_138_condition_hasFinishedShuttleParts (obj_id player, obj_id npc)
{
faceTo(npc, player);
return groundquests.hasCompletedQuest(player, "outbreak_quest_shuttle_parts");
}
// ----------------------------------------------------------------------
boolean hx_138_condition_isPlayerGodMode (obj_id player, obj_id npc)
{
faceTo(npc, player);
return isGod(player);
}
// ----------------------------------------------------------------------
boolean hx_138_condition_hasCompletedRescue3Del4 (obj_id player, obj_id npc)
{
return (groundquests.hasCompletedQuest(player, "outbreak_quest_rescue_03")
|| groundquests.hasCompletedQuest(player, "outbreak_quest_rescue_011")
|| groundquests.hasCompletedQuest(player, "outbreak_quest_rescue_012")
|| groundquests.hasCompletedQuest(player, "outbreak_quest_rescue_013"))
&& (!groundquests.isQuestActiveOrComplete(player, "outbreak_quest_rescue_04")
&& !groundquests.isQuestActiveOrComplete(player, "outbreak_quest_rescue_014")
&& !groundquests.isQuestActiveOrComplete(player, "outbreak_quest_rescue_015")
&& !groundquests.isQuestActiveOrComplete(player, "outbreak_quest_rescue_016"));
}
// ----------------------------------------------------------------------
boolean hx_138_condition_hasCompletedRescue2Del3 (obj_id player, obj_id npc)
{
return (groundquests.hasCompletedQuest(player, "outbreak_quest_rescue_02")
|| groundquests.hasCompletedQuest(player, "outbreak_quest_rescue_08")
|| groundquests.hasCompletedQuest(player, "outbreak_quest_rescue_09")
|| groundquests.hasCompletedQuest(player, "outbreak_quest_rescue_010"))
&& (!groundquests.isQuestActiveOrComplete(player, "outbreak_quest_rescue_03")
&& !groundquests.isQuestActiveOrComplete(player, "outbreak_quest_rescue_011")
&& !groundquests.isQuestActiveOrComplete(player, "outbreak_quest_rescue_012")
&& !groundquests.isQuestActiveOrComplete(player, "outbreak_quest_rescue_013"));
}
// ----------------------------------------------------------------------
boolean hx_138_condition_hasCompletedRescue1Del2 (obj_id player, obj_id npc)
{
return (groundquests.hasCompletedQuest(player, "outbreak_quest_rescue_01")
|| groundquests.hasCompletedQuest(player, "outbreak_quest_rescue_05")
|| groundquests.hasCompletedQuest(player, "outbreak_quest_rescue_06")
|| groundquests.hasCompletedQuest(player, "outbreak_quest_rescue_07"))
&& (!groundquests.isQuestActiveOrComplete(player, "outbreak_quest_rescue_02")
&& !groundquests.isQuestActiveOrComplete(player, "outbreak_quest_rescue_08")
&& !groundquests.isQuestActiveOrComplete(player, "outbreak_quest_rescue_09")
&& !groundquests.isQuestActiveOrComplete(player, "outbreak_quest_rescue_010"));
}
// ----------------------------------------------------------------------
boolean hx_138_condition_isOnDungeonMissions (obj_id player, obj_id npc)
{
string faction = "";
if(hx_138_condition_isImperialQuestPlayer(player,npc))
{
faction = "imperial";
}
else if(hx_138_condition_isRebelQuestPlayer(player,npc))
{
faction = "rebel";
}
else
{
faction = "neutral";
}
if(faction == null || faction.length() <= 0)
return false;
boolean hasAValidQuest = false;
for(int i = 1; i <= 5; i++)
{
if(!groundquests.isQuestActiveOrComplete(player, "outbreak_quest_administrative_building_" + faction + "_0" + i))
continue;
hasAValidQuest = true;
break;
}
return hasAValidQuest;
}
// ----------------------------------------------------------------------
boolean hx_138_condition_shuttleEscape (obj_id player, obj_id npc)
{
faceTo(npc, player);
return (groundquests.isTaskActive(player, "outbreak_quest_facility_05_imperial", "seeHX138")
|| groundquests.isTaskActive(player, "outbreak_quest_facility_05_rebel", "seeHX138")
|| groundquests.isTaskActive(player, "outbreak_quest_facility_05_neutral", "seeHX138"));
}
// ----------------------------------------------------------------------
boolean hx_138_condition_hasCompletedRescue4DelShuttle (obj_id player, obj_id npc)
{
return (groundquests.hasCompletedQuest(player, "outbreak_quest_rescue_04")
|| groundquests.isQuestActiveOrComplete(player, "outbreak_quest_rescue_014")
|| groundquests.isQuestActiveOrComplete(player, "outbreak_quest_rescue_015")
|| groundquests.isQuestActiveOrComplete(player, "outbreak_quest_rescue_016")
&& !groundquests.isQuestActiveOrComplete(player, "outbreak_quest_shuttle_parts"));
}
// ----------------------------------------------------------------------
boolean hx_138_condition_hasRadio (obj_id player, obj_id npc)
{
return groundquests.isTaskActive(player, "outbreak_radio_delivery_03", "findEpsilonContact");
}
// ======================================================================
// Script Actions
// ======================================================================
void hx_138_action_sendSignalMetHX138 (obj_id player, obj_id npc)
{
faceTo(npc, player);
groundquests.sendSignal(player, "playerFoundStormtroopers");
}
// ----------------------------------------------------------------------
void hx_138_action_resetRescueOne (obj_id player, obj_id npc)
{
faceTo(npc, player);
groundquests.clearQuest(player, "outbreak_quest_rescue_01_fail");
if(groundquests.isQuestActive(player, "outbreak_quest_rescue_01"))
groundquests.clearQuest(player, "outbreak_quest_rescue_01");
else if(groundquests.isQuestActive(player, "outbreak_quest_rescue_05"))
groundquests.clearQuest(player, "outbreak_quest_rescue_05");
else if(groundquests.isQuestActive(player, "outbreak_quest_rescue_06"))
groundquests.clearQuest(player, "outbreak_quest_rescue_06");
else if(groundquests.isQuestActive(player, "outbreak_quest_rescue_07"))
groundquests.clearQuest(player, "outbreak_quest_rescue_07");
hx_138_action_giveFirstSurvivorQuest(player,npc);
}
// ----------------------------------------------------------------------
void hx_138_action_giveSecondSurvivorQuest (obj_id player, obj_id npc)
{
faceTo(npc, player);
groundquests.clearQuest(player, "outbreak_quest_rescue_01_success");
int randNum = rand(1,4);
if(randNum <= 0 || randNum > 4)
{
return;
}
switch(randNum)
{
case 1:
groundquests.grantQuest(player, "outbreak_quest_rescue_02");
break;
case 2:
groundquests.grantQuest(player, "outbreak_quest_rescue_08");
break;
case 3:
groundquests.grantQuest(player, "outbreak_quest_rescue_09");
break;
case 4:
groundquests.grantQuest(player, "outbreak_quest_rescue_010");
break;
}
}
// ----------------------------------------------------------------------
void hx_138_action_giveThirdSurvivorQuest (obj_id player, obj_id npc)
{
faceTo(npc, player);
groundquests.clearQuest(player, "outbreak_quest_rescue_02_success");
int randNum = rand(1,4);
if(randNum <= 0 || randNum > 4)
{
return;
}
switch(randNum)
{
case 1:
groundquests.grantQuest(player, "outbreak_quest_rescue_03");
break;
case 2:
groundquests.grantQuest(player, "outbreak_quest_rescue_011");
break;
case 3:
groundquests.grantQuest(player, "outbreak_quest_rescue_012");
break;
case 4:
groundquests.grantQuest(player, "outbreak_quest_rescue_013");
break;
}
}
// ----------------------------------------------------------------------
void hx_138_action_giveFourthSurvivorQuest (obj_id player, obj_id npc)
{
faceTo(npc, player);
groundquests.clearQuest(player, "outbreak_quest_rescue_03_success");
int randNum = rand(1,4);
if(randNum <= 0 || randNum > 4)
{
return;
}
switch(randNum)
{
case 1:
groundquests.grantQuest(player, "outbreak_quest_rescue_04");
break;
case 2:
groundquests.grantQuest(player, "outbreak_quest_rescue_014");
break;
case 3:
groundquests.grantQuest(player, "outbreak_quest_rescue_015");
break;
case 4:
groundquests.grantQuest(player, "outbreak_quest_rescue_016");
break;
}
}
// ----------------------------------------------------------------------
void hx_138_action_resetRescueTwo (obj_id player, obj_id npc)
{
faceTo(npc, player);
groundquests.clearQuest(player, "outbreak_quest_rescue_02_fail");
if(groundquests.isQuestActive(player, "outbreak_quest_rescue_02"))
groundquests.clearQuest(player, "outbreak_quest_rescue_02");
else if(groundquests.isQuestActive(player, "outbreak_quest_rescue_08"))
groundquests.clearQuest(player, "outbreak_quest_rescue_08");
else if(groundquests.isQuestActive(player, "outbreak_quest_rescue_09"))
groundquests.clearQuest(player, "outbreak_quest_rescue_09");
else if(groundquests.isQuestActive(player, "outbreak_quest_rescue_010"))
groundquests.clearQuest(player, "outbreak_quest_rescue_010");
hx_138_action_giveSecondSurvivorQuest(player,npc);
}
// ----------------------------------------------------------------------
void hx_138_action_resetRescueThree (obj_id player, obj_id npc)
{
faceTo(npc, player);
groundquests.clearQuest(player, "outbreak_quest_rescue_03_fail");
if(groundquests.isQuestActive(player, "outbreak_quest_rescue_03"))
groundquests.clearQuest(player, "outbreak_quest_rescue_03");
else if(groundquests.isQuestActive(player, "outbreak_quest_rescue_011"))
groundquests.clearQuest(player, "outbreak_quest_rescue_011");
else if(groundquests.isQuestActive(player, "outbreak_quest_rescue_012"))
groundquests.clearQuest(player, "outbreak_quest_rescue_012");
else if(groundquests.isQuestActive(player, "outbreak_quest_rescue_013"))
groundquests.clearQuest(player, "outbreak_quest_rescue_013");
hx_138_action_giveThirdSurvivorQuest(player,npc);
}
// ----------------------------------------------------------------------
void hx_138_action_resetRescueFour (obj_id player, obj_id npc)
{
faceTo(npc, player);
groundquests.clearQuest(player, "outbreak_quest_rescue_04_fail");
if(groundquests.isQuestActive(player, "outbreak_quest_rescue_04"))
groundquests.clearQuest(player, "outbreak_quest_rescue_04");
else if(groundquests.isQuestActive(player, "outbreak_quest_rescue_014"))
groundquests.clearQuest(player, "outbreak_quest_rescue_014");
else if(groundquests.isQuestActive(player, "outbreak_quest_rescue_015"))
groundquests.clearQuest(player, "outbreak_quest_rescue_015");
else if(groundquests.isQuestActive(player, "outbreak_quest_rescue_016"))
groundquests.clearQuest(player, "outbreak_quest_rescue_016");
hx_138_action_giveFourthSurvivorQuest(player,npc);
}
// ----------------------------------------------------------------------
void hx_138_action_fixPlayerRescueQuest (obj_id player, obj_id npc)
{
faceTo(npc, player);
if(groundquests.isTaskActive(player, "outbreak_quest_rescue_01", "rescueCompleted"))
{
hx_138_action_resetRescueOne (player, npc);
}
else if(groundquests.isTaskActive(player, "outbreak_quest_rescue_02", "rescueCompleted"))
{
hx_138_action_resetRescueTwo (player, npc);
}
else if(groundquests.isTaskActive(player, "outbreak_quest_rescue_03", "rescueCompleted"))
{
hx_138_action_resetRescueThree (player, npc);
}
else
{
hx_138_action_resetRescueFour (player, npc);
}
}
// ----------------------------------------------------------------------
void hx_138_action_finishRescueGiveShuttleQuest (obj_id player, obj_id npc)
{
faceTo(npc, player);
groundquests.clearQuest(player, "outbreak_quest_rescue_04_success");
hx_138_action_giveShuttleQuest(player,npc);
}
// ----------------------------------------------------------------------
void hx_138_action_giveShuttleQuest (obj_id player, obj_id npc)
{
faceTo(npc, player);
groundquests.grantQuest(player, "outbreak_quest_shuttle_parts");
}
// ----------------------------------------------------------------------
void hx_138_action_finishShuttleParts (obj_id player, obj_id npc)
{
faceTo(npc, player);
groundquests.sendSignal(player, "deliveredShuttleSupplies");
}
// ----------------------------------------------------------------------
void hx_138_action_giveFirstSurvivorQuest (obj_id player, obj_id npc)
{
faceTo(npc, player);
int randNum = rand(1,4);
if(randNum <= 0 || randNum > 4)
{
return;
}
switch(randNum)
{
case 1:
groundquests.grantQuest(player, "outbreak_quest_rescue_01");
break;
case 2:
groundquests.grantQuest(player, "outbreak_quest_rescue_05");
break;
case 3:
groundquests.grantQuest(player, "outbreak_quest_rescue_06");
break;
case 4:
groundquests.grantQuest(player, "outbreak_quest_rescue_07");
break;
}
}
// ----------------------------------------------------------------------
void hx_138_action_giveRandomInquisitorQuest (obj_id player, obj_id npc)
{
faceTo(npc, player);
int randNumber = rand(1,5);
if(groundquests.hasCompletedQuest(player, "outbreak_quest_02_imperial"))
{
groundquests.grantQuest(player, "outbreak_quest_administrative_building_imperial_0"+randNumber);
}
else if(groundquests.hasCompletedQuest(player, "outbreak_quest_02_rebel"))
{
groundquests.grantQuest(player, "outbreak_quest_administrative_building_rebel_0"+randNumber);
}
else
{
groundquests.grantQuest(player, "outbreak_quest_administrative_building_neutral_0"+randNumber);
}
}
// ----------------------------------------------------------------------
void hx_138_action_giveInquisitorQuestOne (obj_id player, obj_id npc)
{
faceTo(npc, player);
if(groundquests.hasCompletedQuest(player, "outbreak_quest_02_imperial"))
{
groundquests.grantQuest(player, "outbreak_quest_administrative_building_imperial_01");
}
else if(groundquests.hasCompletedQuest(player, "outbreak_quest_02_rebel"))
{
groundquests.grantQuest(player, "outbreak_quest_administrative_building_rebel_01");
}
else
{
groundquests.grantQuest(player, "outbreak_quest_administrative_building_neutral_01");
}
}
// ----------------------------------------------------------------------
void hx_138_action_giveInquisitorQuestTwo (obj_id player, obj_id npc)
{
faceTo(npc, player);
if(groundquests.hasCompletedQuest(player, "outbreak_quest_02_imperial"))
{
groundquests.grantQuest(player, "outbreak_quest_administrative_building_imperial_02");
}
else if(groundquests.hasCompletedQuest(player, "outbreak_quest_02_rebel"))
{
groundquests.grantQuest(player, "outbreak_quest_administrative_building_rebel_02");
}
else
{
groundquests.grantQuest(player, "outbreak_quest_administrative_building_neutral_02");
}
}
// ----------------------------------------------------------------------
void hx_138_action_giveInquisitorQuestFive (obj_id player, obj_id npc)
{
faceTo(npc, player);
if(groundquests.hasCompletedQuest(player, "outbreak_quest_02_imperial"))
{
groundquests.grantQuest(player, "outbreak_quest_administrative_building_imperial_05");
}
else if(groundquests.hasCompletedQuest(player, "outbreak_quest_02_rebel"))
{
groundquests.grantQuest(player, "outbreak_quest_administrative_building_rebel_05");
}
else
{
groundquests.grantQuest(player, "outbreak_quest_administrative_building_neutral_05");
}
}
// ----------------------------------------------------------------------
void hx_138_action_giveInquisitorQuestFour (obj_id player, obj_id npc)
{
faceTo(npc, player);
if(groundquests.hasCompletedQuest(player, "outbreak_quest_02_imperial"))
{
groundquests.grantQuest(player, "outbreak_quest_administrative_building_imperial_04");
}
else if(groundquests.hasCompletedQuest(player, "outbreak_quest_02_rebel"))
{
groundquests.grantQuest(player, "outbreak_quest_administrative_building_rebel_04");
}
else
{
groundquests.grantQuest(player, "outbreak_quest_administrative_building_neutral_04");
}
}
// ----------------------------------------------------------------------
void hx_138_action_giveInquisitorQuestThree (obj_id player, obj_id npc)
{
faceTo(npc, player);
if(groundquests.hasCompletedQuest(player, "outbreak_quest_02_imperial"))
{
groundquests.grantQuest(player, "outbreak_quest_administrative_building_imperial_03");
}
else if(groundquests.hasCompletedQuest(player, "outbreak_quest_02_rebel"))
{
groundquests.grantQuest(player, "outbreak_quest_administrative_building_rebel_03");
}
else
{
groundquests.grantQuest(player, "outbreak_quest_administrative_building_neutral_03");
}
}
// ----------------------------------------------------------------------
void hx_138_action_fixRescueGates (obj_id player, obj_id npc)
{
faceTo(npc, player);
for(int i = 1; i <= 5; i++)
{
if(groundquests.isTaskActive(player, "outbreak_quest_rescue_0"+i, "rescueCompleted")
|| groundquests.isTaskActive(player, "outbreak_quest_rescue_0"+i, "speakSurvivor"))
{
groundquests.clearQuest(player, "outbreak_quest_rescue_0"+i);
groundquests.grantQuest(player, "outbreak_quest_rescue_0"+i);
return;
}
}
}
// ----------------------------------------------------------------------
void hx_138_action_godModeRescue01a (obj_id player, obj_id npc)
{
groundquests.grantQuest(player, "outbreak_quest_rescue_01");
}
// ----------------------------------------------------------------------
void hx_138_action_godModeRescue01d (obj_id player, obj_id npc)
{
groundquests.grantQuest(player, "outbreak_quest_rescue_07");
}
// ----------------------------------------------------------------------
void hx_138_action_godModeRescue01c (obj_id player, obj_id npc)
{
groundquests.grantQuest(player, "outbreak_quest_rescue_06");
}
// ----------------------------------------------------------------------
void hx_138_action_godModeRescue01b (obj_id player, obj_id npc)
{
groundquests.grantQuest(player, "outbreak_quest_rescue_05");
}
// ----------------------------------------------------------------------
void hx_138_action_godModeRescue02a (obj_id player, obj_id npc)
{
groundquests.grantQuest(player, "outbreak_quest_rescue_02");
}
// ----------------------------------------------------------------------
void hx_138_action_godModeRescue02d (obj_id player, obj_id npc)
{
groundquests.grantQuest(player, "outbreak_quest_rescue_010");
}
// ----------------------------------------------------------------------
void hx_138_action_godModeRescue02c (obj_id player, obj_id npc)
{
groundquests.grantQuest(player, "outbreak_quest_rescue_09");
}
// ----------------------------------------------------------------------
void hx_138_action_godModeRescue02b (obj_id player, obj_id npc)
{
groundquests.grantQuest(player, "outbreak_quest_rescue_08");
}
// ----------------------------------------------------------------------
void hx_138_action_godModeRescue03d (obj_id player, obj_id npc)
{
groundquests.grantQuest(player, "outbreak_quest_rescue_013");
}
// ----------------------------------------------------------------------
void hx_138_action_godModeRescue03c (obj_id player, obj_id npc)
{
groundquests.grantQuest(player, "outbreak_quest_rescue_012");
}
// ----------------------------------------------------------------------
void hx_138_action_godModeRescue03b (obj_id player, obj_id npc)
{
groundquests.grantQuest(player, "outbreak_quest_rescue_011");
}
// ----------------------------------------------------------------------
void hx_138_action_godModeRescue03a (obj_id player, obj_id npc)
{
groundquests.grantQuest(player, "outbreak_quest_rescue_03");
}
// ----------------------------------------------------------------------
void hx_138_action_godModeRescue04d (obj_id player, obj_id npc)
{
groundquests.grantQuest(player, "outbreak_quest_rescue_016");
}
// ----------------------------------------------------------------------
void hx_138_action_godModeRescue04c (obj_id player, obj_id npc)
{
groundquests.grantQuest(player, "outbreak_quest_rescue_015");
}
// ----------------------------------------------------------------------
void hx_138_action_godModeRescue04b (obj_id player, obj_id npc)
{
groundquests.grantQuest(player, "outbreak_quest_rescue_014");
}
// ----------------------------------------------------------------------
void hx_138_action_godModeRescue04a (obj_id player, obj_id npc)
{
groundquests.grantQuest(player, "outbreak_quest_rescue_04");
}
// ======================================================================
// Script %TO Tokens
// ======================================================================
// ======================================================================
// Script %DI Tokens
// ======================================================================
// ======================================================================
// Script %DF Tokens
// ======================================================================
// ======================================================================
// handleBranch<n> Functions
// ======================================================================
int hx_138_handleBranch3 (obj_id player, obj_id npc, string_id response)
{
//-- [BRANCH NOTE]
//-- NPC: I've already noticed a boost in morale as a result of your efforts, %TU. You are certainly our saviour.
//-- [RESPONSE NOTE]
//-- PLAYER: I'm no one special.
if (response == "s_122")
{
//-- [NOTE]
if (hx_138_condition__defaultCondition (player, npc))
{
doAnimationAction (npc, "shrug_shoulders");
//-- NPC: Mmmm...okay. Well, obviously you have your own mission. What is it exactly?
string_id message = new string_id (c_stringFile, "s_123");
int numberOfResponses = 0;
boolean hasResponse = false;
//-- PLAYER: I need to infiltrate the research facility.
boolean hasResponse0 = false;
if (hx_138_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_138");
utils.setScriptVar (player, "conversation.hx_138.branchId", 4);
npcSpeak (player, message);
npcSetConversationResponses (player, responses);
}
else
{
utils.removeScriptVar (player, "conversation.hx_138.branchId");
npcEndConversationWithMessage (player, message);
}
return SCRIPT_CONTINUE;
}
}
//-- [RESPONSE NOTE]
//-- PLAYER: GOD MODE ONLY INQUISITOR QUEST TESTING
if (response == "s_177")
{
//-- [NOTE]
if (hx_138_condition_isImperialQuestPlayer (player, npc))
{
//-- NPC: You are doing the Imp quest line, which Inquisitor quest would you like?
string_id message = new string_id (c_stringFile, "s_178");
int numberOfResponses = 0;
boolean hasResponse = false;
//-- PLAYER: Imperial Officer Body
boolean hasResponse0 = false;
if (hx_138_condition__defaultCondition (player, npc))
{
++numberOfResponses;
hasResponse = true;
hasResponse0 = true;
}
//-- PLAYER: Imperial Scientist Body
boolean hasResponse1 = false;
if (hx_138_condition__defaultCondition (player, npc))
{
++numberOfResponses;
hasResponse = true;
hasResponse1 = true;
}
//-- PLAYER: Imperial Stormtrooper Body
boolean hasResponse2 = false;
if (hx_138_condition__defaultCondition (player, npc))
{
++numberOfResponses;
hasResponse = true;
hasResponse2 = true;
}
//-- PLAYER: Imperial Scout Trooper Body
boolean hasResponse3 = false;
if (hx_138_condition__defaultCondition (player, npc))
{
++numberOfResponses;
hasResponse = true;
hasResponse3 = true;
}
//-- PLAYER: Imperial Inquisitor Body
boolean hasResponse4 = false;
if (hx_138_condition__defaultCondition (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_181");
if (hasResponse1)
responses [responseIndex++] = new string_id (c_stringFile, "s_182");
if (hasResponse2)
responses [responseIndex++] = new string_id (c_stringFile, "s_183");
if (hasResponse3)
responses [responseIndex++] = new string_id (c_stringFile, "s_184");
if (hasResponse4)
responses [responseIndex++] = new string_id (c_stringFile, "s_185");
utils.setScriptVar (player, "conversation.hx_138.branchId", 10);
npcSpeak (player, message);
npcSetConversationResponses (player, responses);
}
else
{
utils.removeScriptVar (player, "conversation.hx_138.branchId");
npcEndConversationWithMessage (player, message);
}
return SCRIPT_CONTINUE;
}
//-- [NOTE]
if (hx_138_condition_isRebelQuestPlayer (player, npc))
{
//-- NPC: You are doing the Reb quest line, which Inquisitor quest would you like?
string_id message = new string_id (c_stringFile, "s_179");
int numberOfResponses = 0;
boolean hasResponse = false;
//-- PLAYER: Imperial Officer Body
boolean hasResponse0 = false;
if (hx_138_condition__defaultCondition (player, npc))
{
++numberOfResponses;
hasResponse = true;
hasResponse0 = true;
}
//-- PLAYER: Imperial Scientist Body
boolean hasResponse1 = false;
if (hx_138_condition__defaultCondition (player, npc))
{
++numberOfResponses;
hasResponse = true;
hasResponse1 = true;
}
//-- PLAYER: Imperial Stormtrooper Body
boolean hasResponse2 = false;
if (hx_138_condition__defaultCondition (player, npc))
{
++numberOfResponses;
hasResponse = true;
hasResponse2 = true;
}
//-- PLAYER: Imperial Scout Trooper Body
boolean hasResponse3 = false;
if (hx_138_condition__defaultCondition (player, npc))
{
++numberOfResponses;
hasResponse = true;
hasResponse3 = true;
}
//-- PLAYER: Imperial Inquisitor Body
boolean hasResponse4 = false;
if (hx_138_condition__defaultCondition (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_191");
if (hasResponse1)
responses [responseIndex++] = new string_id (c_stringFile, "s_192");
if (hasResponse2)
responses [responseIndex++] = new string_id (c_stringFile, "s_193");
if (hasResponse3)
responses [responseIndex++] = new string_id (c_stringFile, "s_194");
if (hasResponse4)
responses [responseIndex++] = new string_id (c_stringFile, "s_195");
utils.setScriptVar (player, "conversation.hx_138.branchId", 16);
npcSpeak (player, message);
npcSetConversationResponses (player, responses);
}
else
{
utils.removeScriptVar (player, "conversation.hx_138.branchId");
npcEndConversationWithMessage (player, message);
}
return SCRIPT_CONTINUE;
}
//-- [NOTE]
if (hx_138_condition_isNeutralQuestPlayer (player, npc))
{
//-- NPC: You are doing the Neut quest line, which Inquisitor quest would you like?
string_id message = new string_id (c_stringFile, "s_180");
int numberOfResponses = 0;
boolean hasResponse = false;
//-- PLAYER: Imperial Officer Body
boolean hasResponse0 = false;
if (hx_138_condition__defaultCondition (player, npc))
{
++numberOfResponses;
hasResponse = true;
hasResponse0 = true;
}
//-- PLAYER: Imperial Scientist Body
boolean hasResponse1 = false;
if (hx_138_condition__defaultCondition (player, npc))
{
++numberOfResponses;
hasResponse = true;
hasResponse1 = true;
}
//-- PLAYER: Imperial Stormtrooper Body
boolean hasResponse2 = false;
if (hx_138_condition__defaultCondition (player, npc))
{
++numberOfResponses;
hasResponse = true;
hasResponse2 = true;
}
//-- PLAYER: Imperial Scout Trooper Body
boolean hasResponse3 = false;
if (hx_138_condition__defaultCondition (player, npc))
{
++numberOfResponses;
hasResponse = true;
hasResponse3 = true;
}
//-- PLAYER: Imperial Inquisitor Body
boolean hasResponse4 = false;
if (hx_138_condition__defaultCondition (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_196");
if (hasResponse1)
responses [responseIndex++] = new string_id (c_stringFile, "s_197");
if (hasResponse2)
responses [responseIndex++] = new string_id (c_stringFile, "s_198");
if (hasResponse3)
responses [responseIndex++] = new string_id (c_stringFile, "s_199");
if (hasResponse4)
responses [responseIndex++] = new string_id (c_stringFile, "s_200");
utils.setScriptVar (player, "conversation.hx_138.branchId", 22);
npcSpeak (player, message);
npcSetConversationResponses (player, responses);
}
else
{
utils.removeScriptVar (player, "conversation.hx_138.branchId");
npcEndConversationWithMessage (player, message);
}
return SCRIPT_CONTINUE;
}
}
return SCRIPT_DEFAULT;
}
// ----------------------------------------------------------------------
int hx_138_handleBranch4 (obj_id player, obj_id npc, string_id response)
{
//-- [BRANCH NOTE]
//-- NPC: Mmmm...okay. Well, obviously you have your own mission. What is it exactly?
//-- [RESPONSE NOTE]
//-- PLAYER: I need to infiltrate the research facility.
if (response == "s_138")
{
//-- [NOTE]
if (hx_138_condition__defaultCondition (player, npc))
{
doAnimationAction (npc, "laugh");
//-- NPC: Yeah right. Ha ha...seriously now.
string_id message = new string_id (c_stringFile, "s_139");
int numberOfResponses = 0;
boolean hasResponse = false;
//-- PLAYER: Uh, I need to infiltrate the research facility?
boolean hasResponse0 = false;
if (hx_138_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_140");
utils.setScriptVar (player, "conversation.hx_138.branchId", 5);
npcSpeak (player, message);
npcSetConversationResponses (player, responses);
}
else
{
utils.removeScriptVar (player, "conversation.hx_138.branchId");
npcEndConversationWithMessage (player, message);
}
return SCRIPT_CONTINUE;
}
}
return SCRIPT_DEFAULT;
}
// ----------------------------------------------------------------------
int hx_138_handleBranch5 (obj_id player, obj_id npc, string_id response)
{
//-- [BRANCH NOTE]
//-- NPC: Yeah right. Ha ha...seriously now.
//-- [RESPONSE NOTE]
//-- PLAYER: Uh, I need to infiltrate the research facility?
if (response == "s_140")
{
//-- [NOTE]
if (hx_138_condition__defaultCondition (player, npc))
{
//-- NPC: What? You were serious? Look, I can't ask these guys to help you. We've lost too many as it is.
string_id message = new string_id (c_stringFile, "s_141");
int numberOfResponses = 0;
boolean hasResponse = false;
//-- PLAYER: I don't need your men. All I need is a way to get in.
boolean hasResponse0 = false;
if (hx_138_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_142");
utils.setScriptVar (player, "conversation.hx_138.branchId", 6);
npcSpeak (player, message);
npcSetConversationResponses (player, responses);
}
else
{
utils.removeScriptVar (player, "conversation.hx_138.branchId");
npcEndConversationWithMessage (player, message);
}
return SCRIPT_CONTINUE;
}
}
return SCRIPT_DEFAULT;
}
// ----------------------------------------------------------------------
int hx_138_handleBranch6 (obj_id player, obj_id npc, string_id response)
{
//-- [BRANCH NOTE]
//-- NPC: What? You were serious? Look, I can't ask these guys to help you. We've lost too many as it is.
//-- [RESPONSE NOTE]
//-- PLAYER: I don't need your men. All I need is a way to get in.
if (response == "s_142")
{
//-- [NOTE]
if (hx_138_condition__defaultCondition (player, npc))
{
//-- NPC: That is suicide, but hey, you have made it this far.
string_id message = new string_id (c_stringFile, "s_143");
int numberOfResponses = 0;
boolean hasResponse = false;
//-- PLAYER: I gather the facility is sealed?
boolean hasResponse0 = false;
if (hx_138_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_144");
utils.setScriptVar (player, "conversation.hx_138.branchId", 7);
npcSpeak (player, message);
npcSetConversationResponses (player, responses);
}
else
{
utils.removeScriptVar (player, "conversation.hx_138.branchId");
npcEndConversationWithMessage (player, message);
}
return SCRIPT_CONTINUE;
}
}
return SCRIPT_DEFAULT;
}
// ----------------------------------------------------------------------
int hx_138_handleBranch7 (obj_id player, obj_id npc, string_id response)
{
//-- [BRANCH NOTE]
//-- NPC: That is suicide, but hey, you have made it this far.
//-- [RESPONSE NOTE]
//-- PLAYER: I gather the facility is sealed?
if (response == "s_144")
{
//-- [NOTE]
if (hx_138_condition__defaultCondition (player, npc))
{
//-- NPC: No, but I hear it is very large and hard to navigate. The best way to find out where everything is down there is to get an administrative access key. You will have to talk to the Inquisitor about this, I was always responsible for duties topside.
string_id message = new string_id (c_stringFile, "s_145");
int numberOfResponses = 0;
boolean hasResponse = false;
//-- PLAYER: I see. Well it's been a pleasure.
boolean hasResponse0 = false;
if (hx_138_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_146");
utils.setScriptVar (player, "conversation.hx_138.branchId", 8);
npcSpeak (player, message);
npcSetConversationResponses (player, responses);
}
else
{
utils.removeScriptVar (player, "conversation.hx_138.branchId");
npcEndConversationWithMessage (player, message);
}
return SCRIPT_CONTINUE;
}
}
return SCRIPT_DEFAULT;
}
// ----------------------------------------------------------------------
int hx_138_handleBranch8 (obj_id player, obj_id npc, string_id response)
{
//-- [BRANCH NOTE]
//-- NPC: No, but I hear it is very large and hard to navigate. The best way to find out where everything is down there is to get an administrative access key. You will have to talk to the Inquisitor about this, I was always responsible for duties topside.
//-- [RESPONSE NOTE]
//-- PLAYER: I see. Well it's been a pleasure.
if (response == "s_146")
{
//-- [NOTE]
if (hx_138_condition__defaultCondition (player, npc))
{
doAnimationAction (npc, "bow3");
hx_138_action_giveRandomInquisitorQuest (player, npc);
//-- NPC: The pleasure was all mine, %TU.
string_id message = new string_id (c_stringFile, "s_147");
utils.removeScriptVar (player, "conversation.hx_138.branchId");
prose_package pp = new prose_package ();
pp.stringId = message;
pp.actor.set (player);
pp.target.set (npc);
npcEndConversationWithMessage (player, pp);
return SCRIPT_CONTINUE;
}
}
return SCRIPT_DEFAULT;
}
// ----------------------------------------------------------------------
int hx_138_handleBranch10 (obj_id player, obj_id npc, string_id response)
{
//-- [BRANCH NOTE]
//-- NPC: You are doing the Imp quest line, which Inquisitor quest would you like?
//-- [RESPONSE NOTE]
//-- PLAYER: Imperial Officer Body
if (response == "s_181")
{
//-- [NOTE]
if (hx_138_condition__defaultCondition (player, npc))
{
hx_138_action_giveInquisitorQuestOne (player, npc);
//-- NPC: Done. If this quest wasn't received, make sure you haven't already received or completed it.
string_id message = new string_id (c_stringFile, "s_186");
utils.removeScriptVar (player, "conversation.hx_138.branchId");
npcEndConversationWithMessage (player, message);
return SCRIPT_CONTINUE;
}
}
//-- [RESPONSE NOTE]
//-- PLAYER: Imperial Scientist Body
if (response == "s_182")
{
//-- [NOTE]
if (hx_138_condition__defaultCondition (player, npc))
{
hx_138_action_giveInquisitorQuestTwo (player, npc);
//-- NPC: Done. If this quest wasn't received, make sure you haven't already received or completed it.
string_id message = new string_id (c_stringFile, "s_187");
utils.removeScriptVar (player, "conversation.hx_138.branchId");
npcEndConversationWithMessage (player, message);
return SCRIPT_CONTINUE;
}
}
//-- [RESPONSE NOTE]
//-- PLAYER: Imperial Stormtrooper Body
if (response == "s_183")
{
//-- [NOTE]
if (hx_138_condition__defaultCondition (player, npc))
{
hx_138_action_giveInquisitorQuestThree (player, npc);
//-- NPC: Done. If this quest wasn't received, make sure you haven't already received or completed it.
string_id message = new string_id (c_stringFile, "s_188");
utils.removeScriptVar (player, "conversation.hx_138.branchId");
npcEndConversationWithMessage (player, message);
return SCRIPT_CONTINUE;
}
}
//-- [RESPONSE NOTE]
//-- PLAYER: Imperial Scout Trooper Body
if (response == "s_184")
{
//-- [NOTE]
if (hx_138_condition__defaultCondition (player, npc))
{
hx_138_action_giveInquisitorQuestFour (player, npc);
//-- NPC: Done. If this quest wasn't received, make sure you haven't already received or completed it.
string_id message = new string_id (c_stringFile, "s_189");
utils.removeScriptVar (player, "conversation.hx_138.branchId");
npcEndConversationWithMessage (player, message);
return SCRIPT_CONTINUE;
}
}
//-- [RESPONSE NOTE]
//-- PLAYER: Imperial Inquisitor Body
if (response == "s_185")
{
//-- [NOTE]
if (hx_138_condition__defaultCondition (player, npc))
{
hx_138_action_giveInquisitorQuestFive (player, npc);
//-- NPC: Done. If this quest wasn't received, make sure you haven't already received or completed it.
string_id message = new string_id (c_stringFile, "s_190");
utils.removeScriptVar (player, "conversation.hx_138.branchId");
npcEndConversationWithMessage (player, message);
return SCRIPT_CONTINUE;
}
}
return SCRIPT_DEFAULT;
}
// ----------------------------------------------------------------------
int hx_138_handleBranch16 (obj_id player, obj_id npc, string_id response)
{
//-- [BRANCH NOTE]
//-- NPC: You are doing the Reb quest line, which Inquisitor quest would you like?
//-- [RESPONSE NOTE]
//-- PLAYER: Imperial Officer Body
if (response == "s_191")
{
//-- [NOTE]
if (hx_138_condition__defaultCondition (player, npc))
{
hx_138_action_giveInquisitorQuestOne (player, npc);
//-- NPC: Done. If this quest wasn't received, make sure you haven't already received or completed it.
string_id message = new string_id (c_stringFile, "s_201");
utils.removeScriptVar (player, "conversation.hx_138.branchId");
npcEndConversationWithMessage (player, message);
return SCRIPT_CONTINUE;
}
}
//-- [RESPONSE NOTE]
//-- PLAYER: Imperial Scientist Body
if (response == "s_192")
{
//-- [NOTE]
if (hx_138_condition__defaultCondition (player, npc))
{
hx_138_action_giveInquisitorQuestTwo (player, npc);
//-- NPC: Done. If this quest wasn't received, make sure you haven't already received or completed it.
string_id message = new string_id (c_stringFile, "s_202");
utils.removeScriptVar (player, "conversation.hx_138.branchId");
npcEndConversationWithMessage (player, message);
return SCRIPT_CONTINUE;
}
}
//-- [RESPONSE NOTE]
//-- PLAYER: Imperial Stormtrooper Body
if (response == "s_193")
{
//-- [NOTE]
if (hx_138_condition__defaultCondition (player, npc))
{
hx_138_action_giveInquisitorQuestThree (player, npc);
//-- NPC: Done. If this quest wasn't received, make sure you haven't already received or completed it.
string_id message = new string_id (c_stringFile, "s_203");
utils.removeScriptVar (player, "conversation.hx_138.branchId");
npcEndConversationWithMessage (player, message);
return SCRIPT_CONTINUE;
}
}
//-- [RESPONSE NOTE]
//-- PLAYER: Imperial Scout Trooper Body
if (response == "s_194")
{
//-- [NOTE]
if (hx_138_condition__defaultCondition (player, npc))
{
hx_138_action_giveInquisitorQuestFour (player, npc);
//-- NPC: Done. If this quest wasn't received, make sure you haven't already received or completed it.
string_id message = new string_id (c_stringFile, "s_204");
utils.removeScriptVar (player, "conversation.hx_138.branchId");
npcEndConversationWithMessage (player, message);
return SCRIPT_CONTINUE;
}
}
//-- [RESPONSE NOTE]
//-- PLAYER: Imperial Inquisitor Body
if (response == "s_195")
{
//-- [NOTE]
if (hx_138_condition__defaultCondition (player, npc))
{
hx_138_action_giveInquisitorQuestFive (player, npc);
//-- NPC: Done. If this quest wasn't received, make sure you haven't already received or completed it.
string_id message = new string_id (c_stringFile, "s_205");
utils.removeScriptVar (player, "conversation.hx_138.branchId");
npcEndConversationWithMessage (player, message);
return SCRIPT_CONTINUE;
}
}
return SCRIPT_DEFAULT;
}
// ----------------------------------------------------------------------
int hx_138_handleBranch22 (obj_id player, obj_id npc, string_id response)
{
//-- [BRANCH NOTE]
//-- NPC: You are doing the Neut quest line, which Inquisitor quest would you like?
//-- [RESPONSE NOTE]
//-- PLAYER: Imperial Officer Body
if (response == "s_196")
{
//-- [NOTE]
if (hx_138_condition__defaultCondition (player, npc))
{
hx_138_action_giveInquisitorQuestOne (player, npc);
//-- NPC: Done. If this quest wasn't received, make sure you haven't already received or completed it.
string_id message = new string_id (c_stringFile, "s_206");
utils.removeScriptVar (player, "conversation.hx_138.branchId");
npcEndConversationWithMessage (player, message);
return SCRIPT_CONTINUE;
}
}
//-- [RESPONSE NOTE]
//-- PLAYER: Imperial Scientist Body
if (response == "s_197")
{
//-- [NOTE]
if (hx_138_condition__defaultCondition (player, npc))
{
hx_138_action_giveInquisitorQuestTwo (player, npc);
//-- NPC: Done. If this quest wasn't received, make sure you haven't already received or completed it.
string_id message = new string_id (c_stringFile, "s_207");
utils.removeScriptVar (player, "conversation.hx_138.branchId");
npcEndConversationWithMessage (player, message);
return SCRIPT_CONTINUE;
}
}
//-- [RESPONSE NOTE]
//-- PLAYER: Imperial Stormtrooper Body
if (response == "s_198")
{
//-- [NOTE]
if (hx_138_condition__defaultCondition (player, npc))
{
hx_138_action_giveInquisitorQuestThree (player, npc);
//-- NPC: Done. If this quest wasn't received, make sure you haven't already received or completed it.
string_id message = new string_id (c_stringFile, "s_208");
utils.removeScriptVar (player, "conversation.hx_138.branchId");
npcEndConversationWithMessage (player, message);
return SCRIPT_CONTINUE;
}
}
//-- [RESPONSE NOTE]
//-- PLAYER: Imperial Scout Trooper Body
if (response == "s_199")
{
//-- [NOTE]
if (hx_138_condition__defaultCondition (player, npc))
{
hx_138_action_giveInquisitorQuestFour (player, npc);
//-- NPC: Done. If this quest wasn't received, make sure you haven't already received or completed it.
string_id message = new string_id (c_stringFile, "s_209");
utils.removeScriptVar (player, "conversation.hx_138.branchId");
npcEndConversationWithMessage (player, message);
return SCRIPT_CONTINUE;
}
}
//-- [RESPONSE NOTE]
//-- PLAYER: Imperial Inquisitor Body
if (response == "s_200")
{
//-- [NOTE]
if (hx_138_condition__defaultCondition (player, npc))
{
hx_138_action_giveInquisitorQuestFive (player, npc);
//-- NPC: Done. If this quest wasn't received, make sure you haven't already received or completed it.
string_id message = new string_id (c_stringFile, "s_210");
utils.removeScriptVar (player, "conversation.hx_138.branchId");
npcEndConversationWithMessage (player, message);
return SCRIPT_CONTINUE;
}
}
return SCRIPT_DEFAULT;
}
// ----------------------------------------------------------------------
int hx_138_handleBranch32 (obj_id player, obj_id npc, string_id response)
{
//-- [BRANCH NOTE]
//-- NPC: Hmmm....what happened? Do you need to redo the quest?
//-- [RESPONSE NOTE]
//-- PLAYER: Yes!
if (response == "s_104")
{
//-- [NOTE]
if (hx_138_condition__defaultCondition (player, npc))
{
hx_138_action_fixRescueGates (player, npc);
//-- NPC: Okay...lets fix this.
string_id message = new string_id (c_stringFile, "s_105");
utils.removeScriptVar (player, "conversation.hx_138.branchId");
npcEndConversationWithMessage (player, message);
return SCRIPT_CONTINUE;
}
}
return SCRIPT_DEFAULT;
}
// ----------------------------------------------------------------------
int hx_138_handleBranch34 (obj_id player, obj_id npc, string_id response)
{
//-- [BRANCH NOTE]
//-- NPC: You did it again, %TU. That was the last one. But we need you again.
//-- [RESPONSE NOTE]
//-- PLAYER: What is it this time?
if (response == "s_63")
{
//-- [NOTE]
if (hx_138_condition__defaultCondition (player, npc))
{
//-- NPC: The shuttle needs parts before we can start the evacuation.
string_id message = new string_id (c_stringFile, "s_65");
int numberOfResponses = 0;
boolean hasResponse = false;
//-- PLAYER: What parts are needed?
boolean hasResponse0 = false;
if (hx_138_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_67");
utils.setScriptVar (player, "conversation.hx_138.branchId", 35);
npcSpeak (player, message);
npcSetConversationResponses (player, responses);
}
else
{
utils.removeScriptVar (player, "conversation.hx_138.branchId");
npcEndConversationWithMessage (player, message);
}
return SCRIPT_CONTINUE;
}
}
return SCRIPT_DEFAULT;
}
// ----------------------------------------------------------------------
int hx_138_handleBranch35 (obj_id player, obj_id npc, string_id response)
{
//-- [BRANCH NOTE]
//-- NPC: The shuttle needs parts before we can start the evacuation.
//-- [RESPONSE NOTE]
//-- PLAYER: What parts are needed?
if (response == "s_67")
{
//-- [NOTE]
if (hx_138_condition__defaultCondition (player, npc))
{
//-- NPC: We need fuel cells for the retro-thrust engines for starters, but we also need a new spinal trunk. While we were trying to rewire the spinal trunk we managed to blow the computer core memory.
string_id message = new string_id (c_stringFile, "s_69");
int numberOfResponses = 0;
boolean hasResponse = false;
//-- PLAYER: Uh...wow. Anything else?
boolean hasResponse0 = false;
if (hx_138_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_71");
utils.setScriptVar (player, "conversation.hx_138.branchId", 36);
npcSpeak (player, message);
npcSetConversationResponses (player, responses);
}
else
{
utils.removeScriptVar (player, "conversation.hx_138.branchId");
npcEndConversationWithMessage (player, message);
}
return SCRIPT_CONTINUE;
}
}
return SCRIPT_DEFAULT;
}
// ----------------------------------------------------------------------
int hx_138_handleBranch36 (obj_id player, obj_id npc, string_id response)
{
//-- [BRANCH NOTE]
//-- NPC: We need fuel cells for the retro-thrust engines for starters, but we also need a new spinal trunk. While we were trying to rewire the spinal trunk we managed to blow the computer core memory.
//-- [RESPONSE NOTE]
//-- PLAYER: Uh...wow. Anything else?
if (response == "s_71")
{
//-- [NOTE]
if (hx_138_condition__defaultCondition (player, npc))
{
//-- NPC: Yeah, we need a few power converters.
string_id message = new string_id (c_stringFile, "s_73");
int numberOfResponses = 0;
boolean hasResponse = false;
//-- PLAYER: How will I find all of these?
boolean hasResponse0 = false;
if (hx_138_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_75");
utils.setScriptVar (player, "conversation.hx_138.branchId", 37);
npcSpeak (player, message);
npcSetConversationResponses (player, responses);
}
else
{
utils.removeScriptVar (player, "conversation.hx_138.branchId");
npcEndConversationWithMessage (player, message);
}
return SCRIPT_CONTINUE;
}
}
return SCRIPT_DEFAULT;
}
// ----------------------------------------------------------------------
int hx_138_handleBranch37 (obj_id player, obj_id npc, string_id response)
{
//-- [BRANCH NOTE]
//-- NPC: Yeah, we need a few power converters.
//-- [RESPONSE NOTE]
//-- PLAYER: How will I find all of these?
if (response == "s_75")
{
//-- [NOTE]
if (hx_138_condition__defaultCondition (player, npc))
{
//-- NPC: The onboard computer has located several downed shuttles within the area. Go to those locations and search the wreckage for the parts.
string_id message = new string_id (c_stringFile, "s_77");
int numberOfResponses = 0;
boolean hasResponse = false;
//-- PLAYER: Give me the coordinates.
boolean hasResponse0 = false;
if (hx_138_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_79");
utils.setScriptVar (player, "conversation.hx_138.branchId", 38);
npcSpeak (player, message);
npcSetConversationResponses (player, responses);
}
else
{
utils.removeScriptVar (player, "conversation.hx_138.branchId");
npcEndConversationWithMessage (player, message);
}
return SCRIPT_CONTINUE;
}
}
return SCRIPT_DEFAULT;
}
// ----------------------------------------------------------------------
int hx_138_handleBranch38 (obj_id player, obj_id npc, string_id response)
{
//-- [BRANCH NOTE]
//-- NPC: The onboard computer has located several downed shuttles within the area. Go to those locations and search the wreckage for the parts.
//-- [RESPONSE NOTE]
//-- PLAYER: Give me the coordinates.
if (response == "s_79")
{
//-- [NOTE]
if (hx_138_condition__defaultCondition (player, npc))
{
hx_138_action_finishRescueGiveShuttleQuest (player, npc);
//-- NPC: Uploaded to your datapad. Good luck. We are all relying on you.
string_id message = new string_id (c_stringFile, "s_81");
utils.removeScriptVar (player, "conversation.hx_138.branchId");
npcEndConversationWithMessage (player, message);
return SCRIPT_CONTINUE;
}
}
return SCRIPT_DEFAULT;
}
// ----------------------------------------------------------------------
int hx_138_handleBranch40 (obj_id player, obj_id npc, string_id response)
{
//-- [BRANCH NOTE]
//-- NPC: Yet another death. These survivors are depending on you, %TU! Luckily another survivor at that same location contacted us. Don't think, just do.
//-- [RESPONSE NOTE]
//-- PLAYER: Ok...okay, I'm ready.
if (response == "s_85")
{
//-- [NOTE]
if (hx_138_condition__defaultCondition (player, npc))
{
hx_138_action_resetRescueFour (player, npc);
//-- NPC: Bring him home, %TU!
string_id message = new string_id (c_stringFile, "s_87");
utils.removeScriptVar (player, "conversation.hx_138.branchId");
prose_package pp = new prose_package ();
pp.stringId = message;
pp.actor.set (player);
pp.target.set (npc);
npcEndConversationWithMessage (player, pp);
return SCRIPT_CONTINUE;
}
}
return SCRIPT_DEFAULT;
}
// ----------------------------------------------------------------------
int hx_138_handleBranch42 (obj_id player, obj_id npc, string_id response)
{
//-- [BRANCH NOTE]
//-- NPC: The Emperor will hear about you and all your fine work here, %TU. You are a true hero.
//-- [RESPONSE NOTE]
//-- PLAYER: Great. Tell him I miss Alderaan.
if (response == "s_91")
{
//-- [NOTE]
if (hx_138_condition__defaultCondition (player, npc))
{
//-- NPC: You can channel your rebellious anger into rescuing the next survivor, %TU.
string_id message = new string_id (c_stringFile, "s_93");
int numberOfResponses = 0;
boolean hasResponse = false;
//-- PLAYER: Consider it channeled.
boolean hasResponse0 = false;
if (hx_138_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_95");
utils.setScriptVar (player, "conversation.hx_138.branchId", 43);
prose_package pp = new prose_package ();
pp.stringId = message;
pp.actor.set (player);
pp.target.set (npc);
npcSpeak (player, pp);
npcSetConversationResponses (player, responses);
}
else
{
utils.removeScriptVar (player, "conversation.hx_138.branchId");
prose_package pp = new prose_package ();
pp.stringId = message;
pp.actor.set (player);
pp.target.set (npc);
npcEndConversationWithMessage (player, pp);
}
return SCRIPT_CONTINUE;
}
}
//-- [RESPONSE NOTE]
//-- PLAYER: I exist to serve.
if (response == "s_99")
{
//-- [NOTE]
if (hx_138_condition__defaultCondition (player, npc))
{
hx_138_action_giveFourthSurvivorQuest (player, npc);
//-- NPC: Bring this one back, just like the last one, %TU.
string_id message = new string_id (c_stringFile, "s_101");
utils.removeScriptVar (player, "conversation.hx_138.branchId");
prose_package pp = new prose_package ();
pp.stringId = message;
pp.actor.set (player);
pp.target.set (npc);
npcEndConversationWithMessage (player, pp);
return SCRIPT_CONTINUE;
}
}
//-- [RESPONSE NOTE]
//-- PLAYER: (Godmode) I want to test the 4 different rescue 4 quests.
if (response == "s_356")
{
//-- [NOTE]
if (hx_138_condition__defaultCondition (player, npc))
{
//-- NPC: Make sure you don't already have the quest, then select a choice below.
string_id message = new string_id (c_stringFile, "s_357");
int numberOfResponses = 0;
boolean hasResponse = false;
//-- PLAYER: outbreak_quest_rescue_04a
boolean hasResponse0 = false;
if (hx_138_condition__defaultCondition (player, npc))
{
++numberOfResponses;
hasResponse = true;
hasResponse0 = true;
}
//-- PLAYER: outbreak_quest_rescue_04b
boolean hasResponse1 = false;
if (hx_138_condition__defaultCondition (player, npc))
{
++numberOfResponses;
hasResponse = true;
hasResponse1 = true;
}
//-- PLAYER: outbreak_quest_rescue_04c
boolean hasResponse2 = false;
if (hx_138_condition__defaultCondition (player, npc))
{
++numberOfResponses;
hasResponse = true;
hasResponse2 = true;
}
//-- PLAYER: outbreak_quest_rescue_04d
boolean hasResponse3 = false;
if (hx_138_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_358");
if (hasResponse1)
responses [responseIndex++] = new string_id (c_stringFile, "s_359");
if (hasResponse2)
responses [responseIndex++] = new string_id (c_stringFile, "s_360");
if (hasResponse3)
responses [responseIndex++] = new string_id (c_stringFile, "s_361");
utils.setScriptVar (player, "conversation.hx_138.branchId", 46);
npcSpeak (player, message);
npcSetConversationResponses (player, responses);
}
else
{
utils.removeScriptVar (player, "conversation.hx_138.branchId");
npcEndConversationWithMessage (player, message);
}
return SCRIPT_CONTINUE;
}
}
return SCRIPT_DEFAULT;
}
// ----------------------------------------------------------------------
int hx_138_handleBranch43 (obj_id player, obj_id npc, string_id response)
{
//-- [BRANCH NOTE]
//-- NPC: You can channel your rebellious anger into rescuing the next survivor, %TU.
//-- [RESPONSE NOTE]
//-- PLAYER: Consider it channeled.
if (response == "s_95")
{
//-- [NOTE]
if (hx_138_condition__defaultCondition (player, npc))
{
hx_138_action_giveFourthSurvivorQuest (player, npc);
//-- NPC: Bring this one back, just like the last one, %TU.
string_id message = new string_id (c_stringFile, "s_97");
utils.removeScriptVar (player, "conversation.hx_138.branchId");
prose_package pp = new prose_package ();
pp.stringId = message;
pp.actor.set (player);
pp.target.set (npc);
npcEndConversationWithMessage (player, pp);
return SCRIPT_CONTINUE;
}
}
return SCRIPT_DEFAULT;
}
// ----------------------------------------------------------------------
int hx_138_handleBranch46 (obj_id player, obj_id npc, string_id response)
{
//-- [BRANCH NOTE]
//-- NPC: Make sure you don't already have the quest, then select a choice below.
//-- [RESPONSE NOTE]
//-- PLAYER: outbreak_quest_rescue_04a
if (response == "s_358")
{
//-- [NOTE]
if (hx_138_condition__defaultCondition (player, npc))
{
hx_138_action_godModeRescue04a (player, npc);
//-- NPC: Done
string_id message = new string_id (c_stringFile, "s_362");
utils.removeScriptVar (player, "conversation.hx_138.branchId");
npcEndConversationWithMessage (player, message);
return SCRIPT_CONTINUE;
}
}
//-- [RESPONSE NOTE]
//-- PLAYER: outbreak_quest_rescue_04b
if (response == "s_359")
{
//-- [NOTE]
if (hx_138_condition__defaultCondition (player, npc))
{
hx_138_action_godModeRescue04b (player, npc);
//-- NPC: Done
string_id message = new string_id (c_stringFile, "s_364");
utils.removeScriptVar (player, "conversation.hx_138.branchId");
npcEndConversationWithMessage (player, message);
return SCRIPT_CONTINUE;
}
}
//-- [RESPONSE NOTE]
//-- PLAYER: outbreak_quest_rescue_04c
if (response == "s_360")
{
//-- [NOTE]
if (hx_138_condition__defaultCondition (player, npc))
{
hx_138_action_godModeRescue04c (player, npc);
//-- NPC: Done
string_id message = new string_id (c_stringFile, "s_363");
utils.removeScriptVar (player, "conversation.hx_138.branchId");
npcEndConversationWithMessage (player, message);
return SCRIPT_CONTINUE;
}
}
//-- [RESPONSE NOTE]
//-- PLAYER: outbreak_quest_rescue_04d
if (response == "s_361")
{
//-- [NOTE]
if (hx_138_condition__defaultCondition (player, npc))
{
hx_138_action_godModeRescue04d (player, npc);
//-- NPC: Done
string_id message = new string_id (c_stringFile, "s_365");
utils.removeScriptVar (player, "conversation.hx_138.branchId");
npcEndConversationWithMessage (player, message);
return SCRIPT_CONTINUE;
}
}
return SCRIPT_DEFAULT;
}
// ----------------------------------------------------------------------
int hx_138_handleBranch51 (obj_id player, obj_id npc, string_id response)
{
//-- [BRANCH NOTE]
//-- NPC: We obviously can't save everyone. %TU, but we have to try. If you aren't the person for these missions please speak up.
//-- [RESPONSE NOTE]
//-- PLAYER: I can do it. Give me another chance.
if (response == "s_121")
{
//-- [NOTE]
if (hx_138_condition__defaultCondition (player, npc))
{
hx_138_action_resetRescueThree (player, npc);
//-- NPC: There is another survivor at that same location. Don't mess this one up!
string_id message = new string_id (c_stringFile, "s_125");
utils.removeScriptVar (player, "conversation.hx_138.branchId");
npcEndConversationWithMessage (player, message);
return SCRIPT_CONTINUE;
}
}
return SCRIPT_DEFAULT;
}
// ----------------------------------------------------------------------
int hx_138_handleBranch53 (obj_id player, obj_id npc, string_id response)
{
//-- [BRANCH NOTE]
//-- NPC: Another success. That survivor may live into old age because of you. Great work.
//-- [RESPONSE NOTE]
//-- PLAYER: We're done?
if (response == "s_129")
{
//-- [NOTE]
if (hx_138_condition__defaultCondition (player, npc))
{
//-- NPC: No. Another survivor is a little further out. Are you ready to attempt a rescue?
string_id message = new string_id (c_stringFile, "s_131");
int numberOfResponses = 0;
boolean hasResponse = false;
//-- PLAYER: I am ready.
boolean hasResponse0 = false;
if (hx_138_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_133");
utils.setScriptVar (player, "conversation.hx_138.branchId", 54);
npcSpeak (player, message);
npcSetConversationResponses (player, responses);
}
else
{
utils.removeScriptVar (player, "conversation.hx_138.branchId");
npcEndConversationWithMessage (player, message);
}
return SCRIPT_CONTINUE;
}
}
//-- [RESPONSE NOTE]
//-- PLAYER: (Godmode) I want to test the 4 different rescue 3 quests.
if (response == "s_345")
{
//-- [NOTE]
if (hx_138_condition__defaultCondition (player, npc))
{
//-- NPC: Make sure you don't already have the quest, then select a choice below.
string_id message = new string_id (c_stringFile, "s_346");
int numberOfResponses = 0;
boolean hasResponse = false;
//-- PLAYER: outbreak_quest_rescue_03a
boolean hasResponse0 = false;
if (hx_138_condition__defaultCondition (player, npc))
{
++numberOfResponses;
hasResponse = true;
hasResponse0 = true;
}
//-- PLAYER: outbreak_quest_rescue_03b
boolean hasResponse1 = false;
if (hx_138_condition__defaultCondition (player, npc))
{
++numberOfResponses;
hasResponse = true;
hasResponse1 = true;
}
//-- PLAYER: outbreak_quest_rescue_03c
boolean hasResponse2 = false;
if (hx_138_condition__defaultCondition (player, npc))
{
++numberOfResponses;
hasResponse = true;
hasResponse2 = true;
}
//-- PLAYER: outbreak_quest_rescue_03d
boolean hasResponse3 = false;
if (hx_138_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_347");
if (hasResponse1)
responses [responseIndex++] = new string_id (c_stringFile, "s_349");
if (hasResponse2)
responses [responseIndex++] = new string_id (c_stringFile, "s_350");
if (hasResponse3)
responses [responseIndex++] = new string_id (c_stringFile, "s_351");
utils.setScriptVar (player, "conversation.hx_138.branchId", 56);
npcSpeak (player, message);
npcSetConversationResponses (player, responses);
}
else
{
utils.removeScriptVar (player, "conversation.hx_138.branchId");
npcEndConversationWithMessage (player, message);
}
return SCRIPT_CONTINUE;
}
}
return SCRIPT_DEFAULT;
}
// ----------------------------------------------------------------------
int hx_138_handleBranch54 (obj_id player, obj_id npc, string_id response)
{
//-- [BRANCH NOTE]
//-- NPC: No. Another survivor is a little further out. Are you ready to attempt a rescue?
//-- [RESPONSE NOTE]
//-- PLAYER: I am ready.
if (response == "s_133")
{
//-- [NOTE]
if (hx_138_condition__defaultCondition (player, npc))
{
hx_138_action_giveThirdSurvivorQuest (player, npc);
//-- NPC: Find that survivor, %TU.
string_id message = new string_id (c_stringFile, "s_135");
utils.removeScriptVar (player, "conversation.hx_138.branchId");
prose_package pp = new prose_package ();
pp.stringId = message;
pp.actor.set (player);
pp.target.set (npc);
npcEndConversationWithMessage (player, pp);
return SCRIPT_CONTINUE;
}
}
return SCRIPT_DEFAULT;
}
// ----------------------------------------------------------------------
int hx_138_handleBranch56 (obj_id player, obj_id npc, string_id response)
{
//-- [BRANCH NOTE]
//-- NPC: Make sure you don't already have the quest, then select a choice below.
//-- [RESPONSE NOTE]
//-- PLAYER: outbreak_quest_rescue_03a
if (response == "s_347")
{
//-- [NOTE]
if (hx_138_condition__defaultCondition (player, npc))
{
hx_138_action_godModeRescue03a (player, npc);
//-- NPC: Done
string_id message = new string_id (c_stringFile, "s_348");
utils.removeScriptVar (player, "conversation.hx_138.branchId");
npcEndConversationWithMessage (player, message);
return SCRIPT_CONTINUE;
}
}
//-- [RESPONSE NOTE]
//-- PLAYER: outbreak_quest_rescue_03b
if (response == "s_349")
{
//-- [NOTE]
if (hx_138_condition__defaultCondition (player, npc))
{
hx_138_action_godModeRescue03b (player, npc);
//-- NPC: Done
string_id message = new string_id (c_stringFile, "s_352");
utils.removeScriptVar (player, "conversation.hx_138.branchId");
npcEndConversationWithMessage (player, message);
return SCRIPT_CONTINUE;
}
}
//-- [RESPONSE NOTE]
//-- PLAYER: outbreak_quest_rescue_03c
if (response == "s_350")
{
//-- [NOTE]
if (hx_138_condition__defaultCondition (player, npc))
{
hx_138_action_godModeRescue03c (player, npc);
//-- NPC: Done
string_id message = new string_id (c_stringFile, "s_353");
utils.removeScriptVar (player, "conversation.hx_138.branchId");
npcEndConversationWithMessage (player, message);
return SCRIPT_CONTINUE;
}
}
//-- [RESPONSE NOTE]
//-- PLAYER: outbreak_quest_rescue_03d
if (response == "s_351")
{
//-- [NOTE]
if (hx_138_condition__defaultCondition (player, npc))
{
hx_138_action_godModeRescue03d (player, npc);
//-- NPC: Done
string_id message = new string_id (c_stringFile, "s_354");
utils.removeScriptVar (player, "conversation.hx_138.branchId");
npcEndConversationWithMessage (player, message);
return SCRIPT_CONTINUE;
}
}
return SCRIPT_DEFAULT;
}
// ----------------------------------------------------------------------
int hx_138_handleBranch61 (obj_id player, obj_id npc, string_id response)
{
//-- [BRANCH NOTE]
//-- NPC: You've managed to save one survivor so I know you aren't completely incompetent. Stay alert! We have another survivor at that same location so you have a second chance.
//-- [RESPONSE NOTE]
//-- PLAYER: I'm ready.
if (response == "s_159")
{
//-- [NOTE]
if (hx_138_condition__defaultCondition (player, npc))
{
hx_138_action_resetRescueTwo (player, npc);
//-- NPC: Go be the hero we need.
string_id message = new string_id (c_stringFile, "s_161");
utils.removeScriptVar (player, "conversation.hx_138.branchId");
npcEndConversationWithMessage (player, message);
return SCRIPT_CONTINUE;
}
}
return SCRIPT_DEFAULT;
}
// ----------------------------------------------------------------------
int hx_138_handleBranch63 (obj_id player, obj_id npc, string_id response)
{
//-- [BRANCH NOTE]
//-- NPC: Great work bringing the survivor back. We have a few more to rescue. Are you ready for the next location?
//-- [RESPONSE NOTE]
//-- PLAYER: I am.
if (response == "s_165")
{
//-- [NOTE]
if (hx_138_condition__defaultCondition (player, npc))
{
hx_138_action_giveSecondSurvivorQuest (player, npc);
//-- NPC: Here is the second survivor
string_id message = new string_id (c_stringFile, "s_167");
utils.removeScriptVar (player, "conversation.hx_138.branchId");
npcEndConversationWithMessage (player, message);
return SCRIPT_CONTINUE;
}
}
//-- [RESPONSE NOTE]
//-- PLAYER: (Godmode) I want to test the 4 different rescue 2 quests.
if (response == "s_320")
{
//-- [NOTE]
if (hx_138_condition__defaultCondition (player, npc))
{
//-- NPC: Make sure you don't already have the quest, then select a choice below.
string_id message = new string_id (c_stringFile, "s_321");
int numberOfResponses = 0;
boolean hasResponse = false;
//-- PLAYER: outbreak_quest_rescue_02a
boolean hasResponse0 = false;
if (hx_138_condition__defaultCondition (player, npc))
{
++numberOfResponses;
hasResponse = true;
hasResponse0 = true;
}
//-- PLAYER: outbreak_quest_rescue_02b
boolean hasResponse1 = false;
if (hx_138_condition__defaultCondition (player, npc))
{
++numberOfResponses;
hasResponse = true;
hasResponse1 = true;
}
//-- PLAYER: outbreak_quest_rescue_02c
boolean hasResponse2 = false;
if (hx_138_condition__defaultCondition (player, npc))
{
++numberOfResponses;
hasResponse = true;
hasResponse2 = true;
}
//-- PLAYER: outbreak_quest_rescue_02d
boolean hasResponse3 = false;
if (hx_138_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_325");
if (hasResponse1)
responses [responseIndex++] = new string_id (c_stringFile, "s_334");
if (hasResponse2)
responses [responseIndex++] = new string_id (c_stringFile, "s_338");
if (hasResponse3)
responses [responseIndex++] = new string_id (c_stringFile, "s_342");
utils.setScriptVar (player, "conversation.hx_138.branchId", 65);
npcSpeak (player, message);
npcSetConversationResponses (player, responses);
}
else
{
utils.removeScriptVar (player, "conversation.hx_138.branchId");
npcEndConversationWithMessage (player, message);
}
return SCRIPT_CONTINUE;
}
}
return SCRIPT_DEFAULT;
}
// ----------------------------------------------------------------------
int hx_138_handleBranch65 (obj_id player, obj_id npc, string_id response)
{
//-- [BRANCH NOTE]
//-- NPC: Make sure you don't already have the quest, then select a choice below.
//-- [RESPONSE NOTE]
//-- PLAYER: outbreak_quest_rescue_02a
if (response == "s_325")
{
//-- [NOTE]
if (hx_138_condition__defaultCondition (player, npc))
{
hx_138_action_godModeRescue02a (player, npc);
//-- NPC: Done
string_id message = new string_id (c_stringFile, "s_326");
utils.removeScriptVar (player, "conversation.hx_138.branchId");
npcEndConversationWithMessage (player, message);
return SCRIPT_CONTINUE;
}
}
//-- [RESPONSE NOTE]
//-- PLAYER: outbreak_quest_rescue_02b
if (response == "s_334")
{
//-- [NOTE]
if (hx_138_condition__defaultCondition (player, npc))
{
hx_138_action_godModeRescue02b (player, npc);
//-- NPC: Done
string_id message = new string_id (c_stringFile, "s_336");
utils.removeScriptVar (player, "conversation.hx_138.branchId");
npcEndConversationWithMessage (player, message);
return SCRIPT_CONTINUE;
}
}
//-- [RESPONSE NOTE]
//-- PLAYER: outbreak_quest_rescue_02c
if (response == "s_338")
{
//-- [NOTE]
if (hx_138_condition__defaultCondition (player, npc))
{
hx_138_action_godModeRescue02c (player, npc);
//-- NPC: Done
string_id message = new string_id (c_stringFile, "s_340");
utils.removeScriptVar (player, "conversation.hx_138.branchId");
npcEndConversationWithMessage (player, message);
return SCRIPT_CONTINUE;
}
}
//-- [RESPONSE NOTE]
//-- PLAYER: outbreak_quest_rescue_02d
if (response == "s_342")
{
//-- [NOTE]
if (hx_138_condition__defaultCondition (player, npc))
{
hx_138_action_godModeRescue02d (player, npc);
//-- NPC: Done
string_id message = new string_id (c_stringFile, "s_344");
utils.removeScriptVar (player, "conversation.hx_138.branchId");
npcEndConversationWithMessage (player, message);
return SCRIPT_CONTINUE;
}
}
return SCRIPT_DEFAULT;
}
// ----------------------------------------------------------------------
int hx_138_handleBranch70 (obj_id player, obj_id npc, string_id response)
{
//-- [BRANCH NOTE]
//-- NPC: Look, I'm sure you feel horrible so I'll spare you any additional guilt. Luckily, another survivor at that same location contacted us so you have a second chance.
//-- [RESPONSE NOTE]
//-- PLAYER: I'm ready.
if (response == "s_216")
{
//-- [NOTE]
if (hx_138_condition__defaultCondition (player, npc))
{
doAnimationAction (npc, "shakefist");
hx_138_action_resetRescueOne (player, npc);
//-- NPC: Bring back the survivor alive this time!
string_id message = new string_id (c_stringFile, "s_218");
utils.removeScriptVar (player, "conversation.hx_138.branchId");
npcEndConversationWithMessage (player, message);
return SCRIPT_CONTINUE;
}
}
return SCRIPT_DEFAULT;
}
// ----------------------------------------------------------------------
int hx_138_handleBranch77 (obj_id player, obj_id npc, string_id response)
{
//-- [BRANCH NOTE]
//-- NPC: Are you ready to get to work? Alright. We have a situation. There are survivors spread out topside and I need someone to go and lead them back. The others are too weakened by the lack of supplies but you look fit to carry on the task. What do you say?
//-- [RESPONSE NOTE]
//-- PLAYER: If I agree will you help me with my mission?
if (response == "s_305")
{
//-- [NOTE]
if (hx_138_condition__defaultCondition (player, npc))
{
//-- NPC: Sure. We'll have time after you do a few tasks to find out exactly what that entails. Are you ready for the first location?
string_id message = new string_id (c_stringFile, "s_307");
int numberOfResponses = 0;
boolean hasResponse = false;
//-- PLAYER: Yes
boolean hasResponse0 = false;
if (hx_138_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_308");
utils.setScriptVar (player, "conversation.hx_138.branchId", 78);
npcSpeak (player, message);
npcSetConversationResponses (player, responses);
}
else
{
utils.removeScriptVar (player, "conversation.hx_138.branchId");
npcEndConversationWithMessage (player, message);
}
return SCRIPT_CONTINUE;
}
}
//-- [RESPONSE NOTE]
//-- PLAYER: (Godmode) I want to test the 4 different rescue 1 quests.
if (response == "s_310")
{
//-- [NOTE]
if (hx_138_condition__defaultCondition (player, npc))
{
//-- NPC: Make sure you don't already have the quest, then select a choice below.
string_id message = new string_id (c_stringFile, "s_311");
int numberOfResponses = 0;
boolean hasResponse = false;
//-- PLAYER: outbreak_quest_rescue_01a
boolean hasResponse0 = false;
if (hx_138_condition__defaultCondition (player, npc))
{
++numberOfResponses;
hasResponse = true;
hasResponse0 = true;
}
//-- PLAYER: outbreak_quest_rescue_01b
boolean hasResponse1 = false;
if (hx_138_condition__defaultCondition (player, npc))
{
++numberOfResponses;
hasResponse = true;
hasResponse1 = true;
}
//-- PLAYER: outbreak_quest_rescue_01c
boolean hasResponse2 = false;
if (hx_138_condition__defaultCondition (player, npc))
{
++numberOfResponses;
hasResponse = true;
hasResponse2 = true;
}
//-- PLAYER: outbreak_quest_rescue_01d
boolean hasResponse3 = false;
if (hx_138_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_312");
if (hasResponse1)
responses [responseIndex++] = new string_id (c_stringFile, "s_313");
if (hasResponse2)
responses [responseIndex++] = new string_id (c_stringFile, "s_314");
if (hasResponse3)
responses [responseIndex++] = new string_id (c_stringFile, "s_315");
utils.setScriptVar (player, "conversation.hx_138.branchId", 80);
npcSpeak (player, message);
npcSetConversationResponses (player, responses);
}
else
{
utils.removeScriptVar (player, "conversation.hx_138.branchId");
npcEndConversationWithMessage (player, message);
}
return SCRIPT_CONTINUE;
}
}
return SCRIPT_DEFAULT;
}
// ----------------------------------------------------------------------
int hx_138_handleBranch78 (obj_id player, obj_id npc, string_id response)
{
//-- [BRANCH NOTE]
//-- NPC: Sure. We'll have time after you do a few tasks to find out exactly what that entails. Are you ready for the first location?
//-- [RESPONSE NOTE]
//-- PLAYER: Yes
if (response == "s_308")
{
//-- [NOTE]
if (hx_138_condition__defaultCondition (player, npc))
{
hx_138_action_giveFirstSurvivorQuest (player, npc);
//-- NPC: Here is the first location.
string_id message = new string_id (c_stringFile, "s_309");
utils.removeScriptVar (player, "conversation.hx_138.branchId");
npcEndConversationWithMessage (player, message);
return SCRIPT_CONTINUE;
}
}
return SCRIPT_DEFAULT;
}
// ----------------------------------------------------------------------
int hx_138_handleBranch80 (obj_id player, obj_id npc, string_id response)
{
//-- [BRANCH NOTE]
//-- NPC: Make sure you don't already have the quest, then select a choice below.
//-- [RESPONSE NOTE]
//-- PLAYER: outbreak_quest_rescue_01a
if (response == "s_312")
{
//-- [NOTE]
if (hx_138_condition__defaultCondition (player, npc))
{
hx_138_action_godModeRescue01a (player, npc);
//-- NPC: Done
string_id message = new string_id (c_stringFile, "s_316");
utils.removeScriptVar (player, "conversation.hx_138.branchId");
npcEndConversationWithMessage (player, message);
return SCRIPT_CONTINUE;
}
}
//-- [RESPONSE NOTE]
//-- PLAYER: outbreak_quest_rescue_01b
if (response == "s_313")
{
//-- [NOTE]
if (hx_138_condition__defaultCondition (player, npc))
{
hx_138_action_godModeRescue01b (player, npc);
//-- NPC: Done
string_id message = new string_id (c_stringFile, "s_317");
utils.removeScriptVar (player, "conversation.hx_138.branchId");
npcEndConversationWithMessage (player, message);
return SCRIPT_CONTINUE;
}
}
//-- [RESPONSE NOTE]
//-- PLAYER: outbreak_quest_rescue_01c
if (response == "s_314")
{
//-- [NOTE]
if (hx_138_condition__defaultCondition (player, npc))
{
hx_138_action_godModeRescue01c (player, npc);
//-- NPC: Done
string_id message = new string_id (c_stringFile, "s_318");
utils.removeScriptVar (player, "conversation.hx_138.branchId");
npcEndConversationWithMessage (player, message);
return SCRIPT_CONTINUE;
}
}
//-- [RESPONSE NOTE]
//-- PLAYER: outbreak_quest_rescue_01d
if (response == "s_315")
{
//-- [NOTE]
if (hx_138_condition__defaultCondition (player, npc))
{
hx_138_action_godModeRescue01d (player, npc);
//-- NPC: Done
string_id message = new string_id (c_stringFile, "s_319");
utils.removeScriptVar (player, "conversation.hx_138.branchId");
npcEndConversationWithMessage (player, message);
return SCRIPT_CONTINUE;
}
}
return SCRIPT_DEFAULT;
}
// ----------------------------------------------------------------------
int hx_138_handleBranch85 (obj_id player, obj_id npc, string_id response)
{
//-- [BRANCH NOTE]
//-- NPC: Another of the living! Tell me you came here by shuttle.
//-- [RESPONSE NOTE]
//-- PLAYER: No. Shuttles are not allowed into the quarantine zone.
if (response == "s_244")
{
//-- [NOTE]
if (hx_138_condition__defaultCondition (player, npc))
{
hx_138_action_sendSignalMetHX138 (player, npc);
//-- NPC: As I suspected. How did you get here? Oh that isn't important. Go get some rest and when you are ready, come back. I need a volunteer.
string_id message = new string_id (c_stringFile, "s_249");
utils.removeScriptVar (player, "conversation.hx_138.branchId");
npcEndConversationWithMessage (player, message);
return SCRIPT_CONTINUE;
}
}
return SCRIPT_DEFAULT;
}
// ----------------------------------------------------------------------
// ======================================================================
// User Script Triggers
// ======================================================================
trigger OnInitialize ()
{
if ((!isTangible (self)) || (isPlayer (self)))
detachScript(self, "conversation.hx_138");
setCondition (self, CONDITION_CONVERSABLE);
return SCRIPT_CONTINUE;
}
trigger OnAttach ()
{
setCondition (self, CONDITION_CONVERSABLE);
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.hx_138");
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 (hx_138_condition_shuttleEscape (player, npc))
{
doAnimationAction (npc, "gesticulate_wildly");
//-- NPC: I ordered the shuttle to take off half an hour ago but they insisted on waiting for you. Get on that shuttle hero!
string_id message = new string_id (c_stringFile, "s_253");
chat.chat (npc, player, message);
return SCRIPT_CONTINUE;
}
//-- [NOTE]
if (hx_138_condition_isOnDungeonMissions (player, npc))
{
//-- NPC: Good luck with that mission of yours. We'll wait as long as we can for you, but don't expect us to wait too long.
string_id message = new string_id (c_stringFile, "s_251");
chat.chat (npc, player, message);
return SCRIPT_CONTINUE;
}
//-- [NOTE]
if (hx_138_condition_hasFinishedShuttleParts (player, npc))
{
//-- NPC: I've already noticed a boost in morale as a result of your efforts, %TU. You are certainly our saviour.
string_id message = new string_id (c_stringFile, "s_113");
int numberOfResponses = 0;
boolean hasResponse = false;
//-- PLAYER: I'm no one special.
boolean hasResponse0 = false;
if (hx_138_condition__defaultCondition (player, npc))
{
++numberOfResponses;
hasResponse = true;
hasResponse0 = true;
}
//-- PLAYER: GOD MODE ONLY INQUISITOR QUEST TESTING
boolean hasResponse1 = false;
if (hx_138_condition_isPlayerGodMode (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_122");
if (hasResponse1)
responses [responseIndex++] = new string_id (c_stringFile, "s_177");
utils.setScriptVar (player, "conversation.hx_138.branchId", 3);
prose_package pp = new prose_package ();
pp.stringId = message;
pp.actor.set (player);
pp.target.set (npc);
npcStartConversation (player, npc, "hx_138", null, pp, responses);
}
else
{
prose_package pp = new prose_package ();
pp.stringId = message;
pp.actor.set (player);
pp.target.set (npc);
chat.chat (npc, player, null, null, pp);
}
return SCRIPT_CONTINUE;
}
//-- [NOTE]
if (hx_138_condition_hasGivenPartsMechanic (player, npc))
{
doAnimationAction (npc, "celebrate");
hx_138_action_finishShuttleParts (player, npc);
//-- NPC: Fantastic work, %TU! Come back when you have gotten some rest. I can help you with your mission.
string_id message = new string_id (c_stringFile, "s_174");
prose_package pp = new prose_package ();
pp.stringId = message;
pp.actor.set (player);
pp.target.set (npc);
chat.chat (npc, player, null, null, pp);
return SCRIPT_CONTINUE;
}
//-- [NOTE]
if (hx_138_condition_hasShuttlePartsNotMechanic (player, npc))
{
//-- NPC: Looks like you have all the parts. Give them to the mechanic and come back...there is something else that has come up.
string_id message = new string_id (c_stringFile, "s_110");
chat.chat (npc, player, message);
return SCRIPT_CONTINUE;
}
//-- [NOTE]
if (hx_138_condition_finishedRescueCanceledShuttle (player, npc))
{
hx_138_action_giveShuttleQuest (player, npc);
//-- NPC: Looks like you lost the datapad information with the shuttle waypoints. Let me give that to you again.
string_id message = new string_id (c_stringFile, "s_109");
chat.chat (npc, player, message);
return SCRIPT_CONTINUE;
}
//-- [NOTE]
if (hx_138_condition_hasShuttlePartQuestActive (player, npc))
{
//-- NPC: Come back when you have the shuttle parts.
string_id message = new string_id (c_stringFile, "s_56");
chat.chat (npc, player, message);
return SCRIPT_CONTINUE;
}
//-- [NOTE]
if (hx_138_condition_isStuckRescuing (player, npc))
{
//-- NPC: Hmmm....what happened? Do you need to redo the quest?
string_id message = new string_id (c_stringFile, "s_103");
int numberOfResponses = 0;
boolean hasResponse = false;
//-- PLAYER: Yes!
boolean hasResponse0 = false;
if (hx_138_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_104");
utils.setScriptVar (player, "conversation.hx_138.branchId", 32);
npcStartConversation (player, npc, "hx_138", message, responses);
}
else
{
chat.chat (npc, player, message);
}
return SCRIPT_CONTINUE;
}
//-- [NOTE]
if (hx_138_condition_successRescueFour (player, npc))
{
//-- NPC: You did it again, %TU. That was the last one. But we need you again.
string_id message = new string_id (c_stringFile, "s_61");
int numberOfResponses = 0;
boolean hasResponse = false;
//-- PLAYER: What is it this time?
boolean hasResponse0 = false;
if (hx_138_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_63");
utils.setScriptVar (player, "conversation.hx_138.branchId", 34);
prose_package pp = new prose_package ();
pp.stringId = message;
pp.actor.set (player);
pp.target.set (npc);
npcStartConversation (player, npc, "hx_138", null, pp, responses);
}
else
{
prose_package pp = new prose_package ();
pp.stringId = message;
pp.actor.set (player);
pp.target.set (npc);
chat.chat (npc, player, null, null, pp);
}
return SCRIPT_CONTINUE;
}
//-- [NOTE]
if (hx_138_condition_failedRescueFour (player, npc))
{
//-- NPC: Yet another death. These survivors are depending on you, %TU! Luckily another survivor at that same location contacted us. Don't think, just do.
string_id message = new string_id (c_stringFile, "s_83");
int numberOfResponses = 0;
boolean hasResponse = false;
//-- PLAYER: Ok...okay, I'm ready.
boolean hasResponse0 = false;
if (hx_138_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_85");
utils.setScriptVar (player, "conversation.hx_138.branchId", 40);
prose_package pp = new prose_package ();
pp.stringId = message;
pp.actor.set (player);
pp.target.set (npc);
npcStartConversation (player, npc, "hx_138", null, pp, responses);
}
else
{
prose_package pp = new prose_package ();
pp.stringId = message;
pp.actor.set (player);
pp.target.set (npc);
chat.chat (npc, player, null, null, pp);
}
return SCRIPT_CONTINUE;
}
//-- [NOTE]
if (hx_138_condition_successRescueThree (player, npc))
{
//-- NPC: The Emperor will hear about you and all your fine work here, %TU. You are a true hero.
string_id message = new string_id (c_stringFile, "s_89");
int numberOfResponses = 0;
boolean hasResponse = false;
//-- PLAYER: Great. Tell him I miss Alderaan.
boolean hasResponse0 = false;
if (hx_138_condition__defaultCondition (player, npc))
{
++numberOfResponses;
hasResponse = true;
hasResponse0 = true;
}
//-- PLAYER: I exist to serve.
boolean hasResponse1 = false;
if (hx_138_condition__defaultCondition (player, npc))
{
++numberOfResponses;
hasResponse = true;
hasResponse1 = true;
}
//-- PLAYER: (Godmode) I want to test the 4 different rescue 4 quests.
boolean hasResponse2 = false;
if (hx_138_condition_isPlayerGodMode (player, npc))
{
++numberOfResponses;
hasResponse = true;
hasResponse2 = true;
}
if (hasResponse)
{
int responseIndex = 0;
string_id responses [] = new string_id [numberOfResponses];
if (hasResponse0)
responses [responseIndex++] = new string_id (c_stringFile, "s_91");
if (hasResponse1)
responses [responseIndex++] = new string_id (c_stringFile, "s_99");
if (hasResponse2)
responses [responseIndex++] = new string_id (c_stringFile, "s_356");
utils.setScriptVar (player, "conversation.hx_138.branchId", 42);
prose_package pp = new prose_package ();
pp.stringId = message;
pp.actor.set (player);
pp.target.set (npc);
npcStartConversation (player, npc, "hx_138", null, pp, responses);
}
else
{
prose_package pp = new prose_package ();
pp.stringId = message;
pp.actor.set (player);
pp.target.set (npc);
chat.chat (npc, player, null, null, pp);
}
return SCRIPT_CONTINUE;
}
//-- [NOTE]
if (hx_138_condition_failedRescueThree (player, npc))
{
//-- NPC: We obviously can't save everyone. %TU, but we have to try. If you aren't the person for these missions please speak up.
string_id message = new string_id (c_stringFile, "s_119");
int numberOfResponses = 0;
boolean hasResponse = false;
//-- PLAYER: I can do it. Give me another chance.
boolean hasResponse0 = false;
if (hx_138_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_121");
utils.setScriptVar (player, "conversation.hx_138.branchId", 51);
prose_package pp = new prose_package ();
pp.stringId = message;
pp.actor.set (player);
pp.target.set (npc);
npcStartConversation (player, npc, "hx_138", null, pp, responses);
}
else
{
prose_package pp = new prose_package ();
pp.stringId = message;
pp.actor.set (player);
pp.target.set (npc);
chat.chat (npc, player, null, null, pp);
}
return SCRIPT_CONTINUE;
}
//-- [NOTE]
if (hx_138_condition_successRescueTwo (player, npc))
{
//-- NPC: Another success. That survivor may live into old age because of you. Great work.
string_id message = new string_id (c_stringFile, "s_127");
int numberOfResponses = 0;
boolean hasResponse = false;
//-- PLAYER: We're done?
boolean hasResponse0 = false;
if (hx_138_condition__defaultCondition (player, npc))
{
++numberOfResponses;
hasResponse = true;
hasResponse0 = true;
}
//-- PLAYER: (Godmode) I want to test the 4 different rescue 3 quests.
boolean hasResponse1 = false;
if (hx_138_condition_isPlayerGodMode (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_129");
if (hasResponse1)
responses [responseIndex++] = new string_id (c_stringFile, "s_345");
utils.setScriptVar (player, "conversation.hx_138.branchId", 53);
npcStartConversation (player, npc, "hx_138", message, responses);
}
else
{
chat.chat (npc, player, message);
}
return SCRIPT_CONTINUE;
}
//-- [NOTE]
if (hx_138_condition_failedRescueTwo (player, npc))
{
//-- NPC: You've managed to save one survivor so I know you aren't completely incompetent. Stay alert! We have another survivor at that same location so you have a second chance.
string_id message = new string_id (c_stringFile, "s_157");
int numberOfResponses = 0;
boolean hasResponse = false;
//-- PLAYER: I'm ready.
boolean hasResponse0 = false;
if (hx_138_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_159");
utils.setScriptVar (player, "conversation.hx_138.branchId", 61);
npcStartConversation (player, npc, "hx_138", message, responses);
}
else
{
chat.chat (npc, player, message);
}
return SCRIPT_CONTINUE;
}
//-- [NOTE]
if (hx_138_condition_successRescueOne (player, npc))
{
//-- NPC: Great work bringing the survivor back. We have a few more to rescue. Are you ready for the next location?
string_id message = new string_id (c_stringFile, "s_163");
int numberOfResponses = 0;
boolean hasResponse = false;
//-- PLAYER: I am.
boolean hasResponse0 = false;
if (hx_138_condition__defaultCondition (player, npc))
{
++numberOfResponses;
hasResponse = true;
hasResponse0 = true;
}
//-- PLAYER: (Godmode) I want to test the 4 different rescue 2 quests.
boolean hasResponse1 = false;
if (hx_138_condition_isPlayerGodMode (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_165");
if (hasResponse1)
responses [responseIndex++] = new string_id (c_stringFile, "s_320");
utils.setScriptVar (player, "conversation.hx_138.branchId", 63);
npcStartConversation (player, npc, "hx_138", message, responses);
}
else
{
chat.chat (npc, player, message);
}
return SCRIPT_CONTINUE;
}
//-- [NOTE]
if (hx_138_condition_failedRescueOne (player, npc))
{
//-- NPC: Look, I'm sure you feel horrible so I'll spare you any additional guilt. Luckily, another survivor at that same location contacted us so you have a second chance.
string_id message = new string_id (c_stringFile, "s_214");
int numberOfResponses = 0;
boolean hasResponse = false;
//-- PLAYER: I'm ready.
boolean hasResponse0 = false;
if (hx_138_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_216");
utils.setScriptVar (player, "conversation.hx_138.branchId", 70);
npcStartConversation (player, npc, "hx_138", message, responses);
}
else
{
chat.chat (npc, player, message);
}
return SCRIPT_CONTINUE;
}
//-- [NOTE]
if (hx_138_condition_hasRescueQuestActive (player, npc))
{
doAnimationAction (npc, "shrug_shoulders");
//-- NPC: Where is the survivor? There is no time for resting. Find that survivor and bring him back alive!
string_id message = new string_id (c_stringFile, "s_220");
chat.chat (npc, player, message);
return SCRIPT_CONTINUE;
}
//-- [NOTE]
if (hx_138_condition_hasCompletedRescue4DelShuttle (player, npc))
{
hx_138_action_giveShuttleQuest (player, npc);
//-- NPC: Looks like you took a break. Are you ready to go get those shuttle parts?
string_id message = new string_id (c_stringFile, "s_255");
chat.chat (npc, player, message);
return SCRIPT_CONTINUE;
}
//-- [NOTE]
if (hx_138_condition_hasCompletedRescue3Del4 (player, npc))
{
hx_138_action_giveFourthSurvivorQuest (player, npc);
//-- NPC: Looks like you took a break. Hope you are ready to get started on the rescuing the last survivor.
string_id message = new string_id (c_stringFile, "s_245");
chat.chat (npc, player, message);
return SCRIPT_CONTINUE;
}
//-- [NOTE]
if (hx_138_condition_hasCompletedRescue2Del3 (player, npc))
{
hx_138_action_giveThirdSurvivorQuest (player, npc);
//-- NPC: Looks like you took a break. Hope you are ready to get started on the rescuing the next survivor.
string_id message = new string_id (c_stringFile, "s_246");
chat.chat (npc, player, message);
return SCRIPT_CONTINUE;
}
//-- [NOTE]
if (hx_138_condition_hasCompletedRescue1Del2 (player, npc))
{
hx_138_action_giveSecondSurvivorQuest (player, npc);
//-- NPC: Looks like you took a break. Hope you are ready to get started on the rescuing a survivor.
string_id message = new string_id (c_stringFile, "s_247");
chat.chat (npc, player, message);
return SCRIPT_CONTINUE;
}
//-- [NOTE]
if (hx_138_condition_readyFirstRescue (player, npc))
{
//-- NPC: Are you ready to get to work? Alright. We have a situation. There are survivors spread out topside and I need someone to go and lead them back. The others are too weakened by the lack of supplies but you look fit to carry on the task. What do you say?
string_id message = new string_id (c_stringFile, "s_226");
int numberOfResponses = 0;
boolean hasResponse = false;
//-- PLAYER: If I agree will you help me with my mission?
boolean hasResponse0 = false;
if (hx_138_condition__defaultCondition (player, npc))
{
++numberOfResponses;
hasResponse = true;
hasResponse0 = true;
}
//-- PLAYER: (Godmode) I want to test the 4 different rescue 1 quests.
boolean hasResponse1 = false;
if (hx_138_condition_isPlayerGodMode (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_305");
if (hasResponse1)
responses [responseIndex++] = new string_id (c_stringFile, "s_310");
utils.setScriptVar (player, "conversation.hx_138.branchId", 77);
npcStartConversation (player, npc, "hx_138", message, responses);
}
else
{
chat.chat (npc, player, message);
}
return SCRIPT_CONTINUE;
}
//-- [NOTE]
if (hx_138_condition_firstMeeting (player, npc))
{
doAnimationAction (npc, "nod");
//-- NPC: Another of the living! Tell me you came here by shuttle.
string_id message = new string_id (c_stringFile, "s_242");
int numberOfResponses = 0;
boolean hasResponse = false;
//-- PLAYER: No. Shuttles are not allowed into the quarantine zone.
boolean hasResponse0 = false;
if (hx_138_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_244");
utils.setScriptVar (player, "conversation.hx_138.branchId", 85);
npcStartConversation (player, npc, "hx_138", message, responses);
}
else
{
chat.chat (npc, player, message);
}
return SCRIPT_CONTINUE;
}
//-- [NOTE]
if (hx_138_condition_hasRadio (player, npc))
{
//-- NPC: Hello there...deliver that radio to Sogan Varga. He'll be able to put it to use.
string_id message = new string_id (c_stringFile, "s_257");
chat.chat (npc, player, message);
return SCRIPT_CONTINUE;
}
//-- [NOTE]
if (hx_138_condition__defaultCondition (player, npc))
{
//-- NPC: I don't know who you are but you can stay with us. We'll get you out of here sooner or later.
string_id message = new string_id (c_stringFile, "s_258");
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 != "hx_138")
return SCRIPT_CONTINUE;
obj_id npc = self;
int branchId = utils.getIntScriptVar (player, "conversation.hx_138.branchId");
if (branchId == 3 && hx_138_handleBranch3 (player, npc, response) == SCRIPT_CONTINUE)
return SCRIPT_CONTINUE;
if (branchId == 4 && hx_138_handleBranch4 (player, npc, response) == SCRIPT_CONTINUE)
return SCRIPT_CONTINUE;
if (branchId == 5 && hx_138_handleBranch5 (player, npc, response) == SCRIPT_CONTINUE)
return SCRIPT_CONTINUE;
if (branchId == 6 && hx_138_handleBranch6 (player, npc, response) == SCRIPT_CONTINUE)
return SCRIPT_CONTINUE;
if (branchId == 7 && hx_138_handleBranch7 (player, npc, response) == SCRIPT_CONTINUE)
return SCRIPT_CONTINUE;
if (branchId == 8 && hx_138_handleBranch8 (player, npc, response) == SCRIPT_CONTINUE)
return SCRIPT_CONTINUE;
if (branchId == 10 && hx_138_handleBranch10 (player, npc, response) == SCRIPT_CONTINUE)
return SCRIPT_CONTINUE;
if (branchId == 16 && hx_138_handleBranch16 (player, npc, response) == SCRIPT_CONTINUE)
return SCRIPT_CONTINUE;
if (branchId == 22 && hx_138_handleBranch22 (player, npc, response) == SCRIPT_CONTINUE)
return SCRIPT_CONTINUE;
if (branchId == 32 && hx_138_handleBranch32 (player, npc, response) == SCRIPT_CONTINUE)
return SCRIPT_CONTINUE;
if (branchId == 34 && hx_138_handleBranch34 (player, npc, response) == SCRIPT_CONTINUE)
return SCRIPT_CONTINUE;
if (branchId == 35 && hx_138_handleBranch35 (player, npc, response) == SCRIPT_CONTINUE)
return SCRIPT_CONTINUE;
if (branchId == 36 && hx_138_handleBranch36 (player, npc, response) == SCRIPT_CONTINUE)
return SCRIPT_CONTINUE;
if (branchId == 37 && hx_138_handleBranch37 (player, npc, response) == SCRIPT_CONTINUE)
return SCRIPT_CONTINUE;
if (branchId == 38 && hx_138_handleBranch38 (player, npc, response) == SCRIPT_CONTINUE)
return SCRIPT_CONTINUE;
if (branchId == 40 && hx_138_handleBranch40 (player, npc, response) == SCRIPT_CONTINUE)
return SCRIPT_CONTINUE;
if (branchId == 42 && hx_138_handleBranch42 (player, npc, response) == SCRIPT_CONTINUE)
return SCRIPT_CONTINUE;
if (branchId == 43 && hx_138_handleBranch43 (player, npc, response) == SCRIPT_CONTINUE)
return SCRIPT_CONTINUE;
if (branchId == 46 && hx_138_handleBranch46 (player, npc, response) == SCRIPT_CONTINUE)
return SCRIPT_CONTINUE;
if (branchId == 51 && hx_138_handleBranch51 (player, npc, response) == SCRIPT_CONTINUE)
return SCRIPT_CONTINUE;
if (branchId == 53 && hx_138_handleBranch53 (player, npc, response) == SCRIPT_CONTINUE)
return SCRIPT_CONTINUE;
if (branchId == 54 && hx_138_handleBranch54 (player, npc, response) == SCRIPT_CONTINUE)
return SCRIPT_CONTINUE;
if (branchId == 56 && hx_138_handleBranch56 (player, npc, response) == SCRIPT_CONTINUE)
return SCRIPT_CONTINUE;
if (branchId == 61 && hx_138_handleBranch61 (player, npc, response) == SCRIPT_CONTINUE)
return SCRIPT_CONTINUE;
if (branchId == 63 && hx_138_handleBranch63 (player, npc, response) == SCRIPT_CONTINUE)
return SCRIPT_CONTINUE;
if (branchId == 65 && hx_138_handleBranch65 (player, npc, response) == SCRIPT_CONTINUE)
return SCRIPT_CONTINUE;
if (branchId == 70 && hx_138_handleBranch70 (player, npc, response) == SCRIPT_CONTINUE)
return SCRIPT_CONTINUE;
if (branchId == 77 && hx_138_handleBranch77 (player, npc, response) == SCRIPT_CONTINUE)
return SCRIPT_CONTINUE;
if (branchId == 78 && hx_138_handleBranch78 (player, npc, response) == SCRIPT_CONTINUE)
return SCRIPT_CONTINUE;
if (branchId == 80 && hx_138_handleBranch80 (player, npc, response) == SCRIPT_CONTINUE)
return SCRIPT_CONTINUE;
if (branchId == 85 && hx_138_handleBranch85 (player, npc, response) == SCRIPT_CONTINUE)
return SCRIPT_CONTINUE;
chat.chat (npc, "Error: Fell through all branches and responses for OnNpcConversationResponse.");
utils.removeScriptVar (player, "conversation.hx_138.branchId");
return SCRIPT_CONTINUE;
}
// ======================================================================