procedure start;
procedure look_at_p_proc;
procedure map_enter_p_proc;
procedure critter_p_proc;
procedure pickup_p_proc;
procedure damage_p_proc;
procedure destroy_p_proc;
procedure talk_p_proc;
procedure Node001;
procedure Node002;
procedure Node003;
procedure Node004;
procedure Node005;
procedure Node006;
procedure Node007;
procedure Node008;
procedure Node009;
procedure Node010;
procedure Node011;
procedure Node012;
procedure Node013;
procedure Node014;
procedure Node015;
procedure Node016;
procedure Node017;
procedure Node018;
procedure Node019;
procedure Node020;
procedure Node021;
procedure Node022;
procedure Node023;
procedure Node024;
procedure Node024a;
procedure Node025;
procedure Node026;
procedure Node027;
procedure Node029;
procedure Node030;
procedure Node030a;
procedure Node031;
procedure Node032;
procedure Node033;
procedure Node034;
procedure Node035;
procedure Node036;
procedure Node036a;
procedure Node037;
procedure Node038;
procedure Node039;
procedure Node040;
procedure Node041;
procedure Node042;
procedure Node043;
procedure Node044;
procedure Node045;
procedure Node046;
procedure Node047;
procedure Node048;
procedure Node049;
procedure Node050;
procedure Node051;
procedure Node052;
procedure Node053;
procedure Node054;
procedure Node055;
procedure Node056;
procedure Node057;
procedure Node058;
procedure Node059;
procedure Node060;
procedure Node061;
procedure Node062;
procedure Node063;
procedure Node064;
procedure Node065;
procedure Node066;
procedure Node067;
procedure Node068;
procedure Node069;
procedure Node070;
procedure Node070a;
procedure Node071;
procedure Node072;
procedure Node073;
procedure Node074;
procedure Node075;
procedure Node076;
procedure Node077;
procedure Node078;
procedure Node079;
procedure Node080;
procedure Node081;
procedure Node082;
procedure Node083;
procedure Node084;
procedure Node085;
procedure Node086;
procedure Node087;
procedure Node088;
procedure Node089;
procedure Node090;
procedure Node091;
procedure Node092;
procedure Node093;
procedure Node094;
procedure Node095;
procedure Node998;
procedure Node999;
procedure Hostile;
procedure Travel;
procedure Declined;
procedure NotAccepted;
procedure Refuses;
procedure TakeHike;
procedure Annoyed;
procedure GoToDecker;
variable TravelFlag;
import variable Kane_ptr;
import variable Decker_ptr;
#include ".\HEADERS\COMMAND.H"
#include ".\HEADERS\DEFINE.H"
#include ".\HEADERS\MODREACT.H"
#include ".\HEADERS\HUBDWNTN.H"
#define NAME SCRIPT_KANE
#define LVAR_TALKED_TO_KANE (4)
#define LVAR_PERSONAL_ENEMY (5)
#define LVAR_ARMED_BEFORE (6)
#define LVAR_PAYMENT_STATUS (7)
#define LVAR_JOB_HEREBEFORE (8)
#define LVAR_WARNED_BY_KANE (9)
/*
MVAR_DECKER_JOB_STATUS
1st: 1 (refused); 2 (accepted); 3 (done - to Decker); 4 (done - no Decker)
2nd: 5 (refused); 6 (accepted); 7 (done - to Decker); 8 (done - no Decker)
*/
procedure start begin
end
procedure look_at_p_proc begin
script_overrides;
display_msg(mstr(100));
end
procedure map_enter_p_proc begin
if (map_first_run) then begin
critter_add_trait(self_obj, TRAIT_OBJECT, OBJECT_TEAM_NUM, TEAM_HUB_UNDERGROUND);
critter_add_trait(self_obj, TRAIT_OBJECT, OBJECT_AI_PACKET, AI_KANE);
end
Kane_ptr := self_obj;
// set_global_var(GVAR_DECKER_KNOWN, 1);
// set_local_var(LVAR_TALKED_TO_KANE, 1);
// set_local_var(LVAR_PAYMENT_STATUS, 1);
// set_map_var(MVAR_KANE_MEET_DECKER, 1);
// set_map_var(MVAR_DECKER_JOB_STATUS, 1);
// set_global_var(GVAR_KILL_MERCHANT, 2);
// set_global_var(GVAR_KILL_JAIN, 2);
// set_map_var(MVAR_UNDERGROUND_NO_DEAL, 1);
end
procedure critter_p_proc begin
if (map_var(MVAR_UNDERGROUND_HOSTILE) == 2) or (local_var(LVAR_PERSONAL_ENEMY) > 0) then begin
if (obj_can_see_obj(self_obj, local_var(LVAR_PERSONAL_ENEMY))) then begin
attack(local_var(LVAR_PERSONAL_ENEMY));
end
else begin
set_local_var(LVAR_PERSONAL_ENEMY, dude_obj);
end
end
else begin
if (TravelFlag == 1) then begin
TravelFlag := 0;
call GoToDecker;
end
else begin
if (map_var(MVAR_PLAYER_TRIED_KANE_DOOR) == 1) then begin
dialogue_system_enter;
end
end
end
end
procedure pickup_p_proc begin
set_local_var(LVAR_PERSONAL_ENEMY, source_obj);
end
procedure damage_p_proc begin
if (party_is_source) then begin
set_local_var(LVAR_PERSONAL_ENEMY, source_obj);
set_map_var(MVAR_UNDERGROUND_HOSTILE, 2);
end
end
procedure destroy_p_proc begin
set_map_var(MVAR_KANE_DEAD, 1);
if (map_var(MVAR_KANE_DEAD) == 1) and (map_var(MVAR_DECKER_DEAD) == 1) then begin
set_global_var(GVAR_UNDERGROUND_STATUS, 1);
end
end
procedure talk_p_proc begin
if (map_var(MVAR_PLAYER_TRIED_KANE_DOOR) == 1) then begin
set_map_var(MVAR_PLAYER_TRIED_KANE_DOOR, 0);
call Node063;
end
else begin
if (map_var(MVAR_UNDERGROUND_NO_DEAL) == 1) and (map_var(MVAR_KANE_MEET_DECKER) == 1) then begin
if (global_var(GVAR_KILL_MERCHANT) == 2) or (global_var(GVAR_KILL_JAIN) == 2) then begin
set_map_var(MVAR_UNDERGROUND_NO_DEAL, 0);
end
end
if (map_var(MVAR_UNDERGROUND_HOSTILE) == 1) or (map_var(MVAR_UNDERGROUND_NO_DEAL) == 1) then begin
call Node012;
end
else begin
if (dude_is_armed) then begin
call Node050;
end
else begin
if (map_var(MVAR_KANE_MEET_DECKER) != 1) then begin
if (global_var(GVAR_KILL_MERCHANT) == 2) or (global_var(GVAR_KILL_JAIN) == 2) then begin
set_map_var(MVAR_KANE_MEET_DECKER, 0);
set_local_var(LVAR_TALKED_TO_KANE, 2);
end
end
dialogue_start(-1, -1, -1)
if (local_var(LVAR_TALKED_TO_KANE) == 0) then begin
set_local_var(LVAR_TALKED_TO_KANE, 1);
call Node001;
end
else begin
if (map_var(MVAR_KANE_MEET_DECKER) == 1) then begin
if (map_var(MVAR_DECKER_JOB_STATUS) == 4) or (map_var(MVAR_DECKER_JOB_STATUS) == 8) then begin
call Node086;
end
else begin
if (map_var(MVAR_DECKER_JOB_STATUS) > 4) and (map_var(MVAR_DECKER_JOB_STATUS) < 8) then begin
if (map_var(MVAR_DECKER_JOB_STATUS) == 5) then begin
call Node059;
end
else begin
if (global_var(GVAR_KILL_JAIN) == 1) then begin
call Node067;
end
else begin
call Node068;
end
end
end
else begin
if (map_var(MVAR_DECKER_JOB_STATUS) == 1) and (global_var(GVAR_KILL_MERCHANT) == 2) then begin
if (random(1, 10) < dude_luck) then begin
call Node054;
end
else begin
call Node058;
end
end
else begin
if (global_var(GVAR_KILL_MERCHANT) == 5) then begin
call Node093;
end
else begin
if (global_var(GVAR_KILL_MERCHANT) == 1) then begin
call Node064;
end
else begin
if (global_var(GVAR_KILL_JAIN) == 2) then begin
call Node059;
end
else begin
call Node065;
end
end
end
end
end
end
end
else begin
if (map_var(MVAR_KANE_MEET_DECKER) == 2) then begin
call Node070;
end
else begin
if (map_var(MVAR_KANE_MEET_DECKER) == 5) then begin
call Node077;
end
else begin
if (map_var(MVAR_KANE_MEET_DECKER) == 4) then begin
call Node083;
end
else begin
if (local_var(LVAR_TALKED_TO_KANE) == 1) then begin
call Node049;
end
else begin
if (global_var(GVAR_KILL_MERCHANT) == 2) then begin
call Node051;
end
else begin
if (global_var(GVAR_KILL_JAIN) == 2) then begin
call Node059;
end
end
end
end
end
end
end
end
dialogue_end
end
end
end
end
procedure Node001 begin
if (global_var(GVAR_KILLIAN_DEAD) == 0) and (global_var(GVAR_GIZMO_DEAD) == 0) then begin
if (global_var(GVAR_BERSERKER_REPUTATION) == 1) then begin
if (dude_is_male) then begin
Reply(200);
end
else begin
Reply(201);
end
call Node002;
end
else begin
if (global_var(GVAR_CHAMPION_REPUTATION) == 1) then begin
Reply(202);
end
else begin
Reply(203);
end
call Node013;
end
end
else begin
if (global_var(GVAR_KILLIAN_DEAD) == 1) and (global_var(GVAR_GIZMO_DEAD) == 0) then begin
Reply(204);
end
else begin
if (global_var(GVAR_KILLIAN_DEAD) == 0) and (global_var(GVAR_GIZMO_DEAD) == 1) then begin
Reply(205);
end
else begin
if (dude_is_female) then begin
Reply(206);
end
else begin
Reply(207);
end
end
end
call Node002;
end
end
procedure Node002 begin
NOption(4, 210, Node004);
BOption(4, 211, Node006);
// BOption(4, 212, Node999);
NOption(4, 213, Node009);
NOption(4, 214, Declined);
NOption(-3, 215, Node003);
end
procedure Node003 begin
NMessage(216);
call Refuses;
end
procedure Node004 begin
Reply(220);
NOption(4, 221, Node005);
NOption(4, 222, Node008);
NOption(6, 223, Node011);
NOption(4, 224, Node010);
end
procedure Node005 begin
NMessage(225);
call Travel;
end
procedure Node006 begin
Reply(230);
NOption(4, 231, Node004);
BOption(4, 232, Node007);
end
procedure Node007 begin
if (dude_is_male) then begin
Reply(240);
end
else begin
Reply(241);
end
BOption(4, 242, Hostile);
NOption(4, 243, Node004);
NOption(4, 244, NotAccepted);
end
procedure Node008 begin
NMessage(245);
call NotAccepted;
end
procedure Node009 begin
NMessage(246);
call NotAccepted;
end
procedure Node010 begin
Reply(250);
NOption(4, 251, Node005);
NOption(4, 252, Declined);
NOption(4, 253, Node008);
end
procedure Node011 begin
Reply(260);
NOption(4, 261, Travel);
NOption(4, 262, Declined);
NOption(4, 263, Node008);
end
procedure Node012 begin
if (local_var(LVAR_WARNED_BY_KANE) < 3) then begin
inc_local_var(LVAR_WARNED_BY_KANE);
self_float_msg(random(270, 273), 2);
end
else begin
self_float_msg(274, 2);
call Node998;
end
end
procedure Node013 begin
if (global_var(GVAR_FIND_WATER_CHIP) != 2) then begin
NOption(4, 280, Node014);
end
if (global_var(GVAR_DECKER_KNOWN) == 1) and (map_var(MVAR_DECKER_JOB_STATUS) == 0) then begin
NOption(4, 281, Node024);
end
else begin
NOption(4, 282, Node020);
end
// NOption(4, 283, Node999);
// NOption(4, 284, Node999);
// NOption(4, 285, Node999);
NOption(4, 286, Node017);
NOption(4, 287, Node999);
NOption(-3, 299, Node003);
end
procedure Node014 begin
Reply(290);
NOption(6, 291, Node015);
NOption(4, 292, Node016);
NOption(4, 293, Node049);
NOption(4, 294, NotAccepted);
end
procedure Node015 begin
Reply(295);
call Node013;
end
procedure Node016 begin
Reply(296);
call Node013;
end
procedure Node017 begin
Reply(300);
NOption(4, 301, Node048);
NOption(4, 302, Node019);
NOption(4, 303, Node018);
end
procedure Node018 begin
Reply(304);
call Node013;
end
procedure Node019 begin
BMessage(305);
end
procedure Node020 begin
Reply(310);
BOption(4, 311, Node021);
NOption(4, 312, Node023);
end
procedure Node021 begin
Reply(320);
BOption(4, 321, Node022);
NOption(4, 322, Node023);
end
procedure Node022 begin
BMessage(323);
call Hostile;
end
procedure Node023 begin
Reply(324);
call Node013;
end
procedure Node024 begin
Reply(330);
NOption(4, 331, Node030);
NOption(4, 332, Node027);
NOption(4, 333, Node024a);
end
procedure Node024a begin
if (dude_skill_success(SKILL_CONVERSANT, -15)) then begin
call Node025;
end
else begin
call Node026;
end
end
procedure Node025 begin
if (dude_is_male) then begin
NMessage(334);
end
else begin
NMessage(335);
end
call Travel;
end
procedure Node026 begin
BMessage(336);
call TakeHike;
end
procedure Node027 begin
Reply(340);
NOption(4, 341, Node030);
NOption(4, 342, Node029);
end
procedure Node029 begin
NMessage(343);
call TakeHike;
end
procedure Node030 begin
Reply(350);
if (map_var(MVAR_BETH_STATUS) == 1) then begin
NOption(4, 351, Node031);
end
if (map_var(MVAR_LORENZO_STATUS) == 1) then begin
NOption(4, 352, Node030a);
end
if (global_var(GVAR_LOXLEY_KNOWN) == 1) then begin
NOption(4, 353, Node036);
end
NOption(4, 354, Node034);
NOption(4, 355, Node033);
end
procedure Node030a begin
if (map_var(MVAR_LORENZO_INVITE) == 1) then begin
call Node046;
end
else begin
if (dude_skill_success(SKILL_CONVERSANT, -15)) then begin
call Node046;
end
else begin
call Node047;
end
end
end
procedure Node031 begin
Reply(360);
NOption(4, 361, Node032);
NOption(4, 362, Node035);
end
procedure Node032 begin
BMessage(363);
call Annoyed;
end
procedure Node033 begin
BMessage(364);
call Annoyed;
end
procedure Node034 begin
BMessage(365);
call Hostile;
end
procedure Node035 begin
NMessage(366);
call Annoyed;
end
procedure Node036 begin
Reply(370);
NOption(4, 371, Node036a);
NOption(4, 372, Node038);
BOption(4, 373, Refuses);
NOption(4, 374, Node037);
end
procedure Node036a begin
if (dude_skill_success(SKILL_CONVERSANT, 0)) then begin
call Node039;
end
else begin
call Node042;
end
end
procedure Node037 begin
BMessage(375);
call Refuses;
end
procedure Node038 begin
NMessage(376);
call Travel;
end
procedure Node039 begin
Reply(380);
NOption(4, 381, Node040);
NOption(4, 382, Node041);
end
procedure Node040 begin
BMessage(383);
call Refuses;
end
procedure Node041 begin
NMessage(384);
call Travel;
end
procedure Node042 begin
Reply(390);
NOption(4, 391, Node044);
NOption(4, 392, Node043);
NOption(4, 393, Node045);
NOption(4, 394, Node043);
end
procedure Node043 begin
NMessage(400);
call Annoyed;
end
procedure Node044 begin
NMessage(401);
call Annoyed;
end
procedure Node045 begin
NMessage(402);
call Travel;
end
procedure Node046 begin
NMessage(403);
call Travel;
end
procedure Node047 begin
BMessage(404);
call Refuses;
end
procedure Node048 begin
if (dude_is_male) then begin
NMessage(405);
end
else begin
NMessage(406);
end
end
procedure Node049 begin
Reply(410);
call Node013;
end
procedure Node050 begin
inc_local_var(LVAR_ARMED_BEFORE);
if (local_var(LVAR_ARMED_BEFORE) == 1) then begin
self_float_msg(407, 2);
end
else begin
if (local_var(LVAR_ARMED_BEFORE) == 2) then begin
self_float_msg(408, 2);
end
else begin
if (local_var(LVAR_ARMED_BEFORE) == 3) then begin
self_float_msg(409, 2);
end
else begin
call Hostile;
end
end
end
end
procedure Node051 begin
Reply(420);
BOption(4, 421, Node052);
BOption(4, 422, Node053);
BOption(-3, 423, Node057);
end
procedure Node052 begin
BMessage(424);
call Hostile;
end
procedure Node053 begin
BMessage(425);
call Hostile;
end
procedure Node054 begin
set_local_var(LVAR_TALKED_TO_KANE, 2);
set_local_var(LVAR_PAYMENT_STATUS, 2);
set_map_var(MVAR_DECKER_JOB_STATUS, 4);
dude_caps_adjust(1500);
give_exp_points(300);
display_msg(mstr(110) + 300 + mstr(111));
Reply(430);
NOption(4, 431, Hostile);
NOption(5, 432, Node055);
BOption(4, 433, Node056);
BOption(-3, 434, Node057);
end
procedure Node055 begin
NMessage(435);
call Travel;
end
procedure Node056 begin
BMessage(436);
call Hostile;
end
procedure Node057 begin
BMessage(437);
call Hostile;
end
procedure Node058 begin
BMessage(438);
call Hostile;
end
procedure Node059 begin
if (map_var(MVAR_DECKER_JOB_STATUS) < 2) or (map_var(MVAR_DECKER_JOB_STATUS) == 5) then begin
dude_caps_adjust(1000);
give_exp_points(350);
display_msg(mstr(110) + 350 + mstr(111));
Reply(440);
end
else begin
if (local_var(LVAR_PAYMENT_STATUS) == 1) then begin
dude_caps_adjust(3500);
Reply(441);
end
else begin
dude_caps_adjust(4000);
Reply(442);
end
give_exp_points(950);
display_msg(mstr(110) + 950 + mstr(111));
end
BOption(4, 443, Node060);
BOption(4, 444, Node061);
BOption(-3, 445, Node062);
end
procedure Node060 begin
BMessage(446);
call Hostile;
end
procedure Node061 begin
BMessage(447);
call Hostile;
end
procedure Node062 begin
BMessage(448);
call Hostile;
end
procedure Node063 begin
self_float_msg(450, 2);
end
procedure Node064 begin
inc_local_var(LVAR_JOB_HEREBEFORE);
if (local_var(LVAR_JOB_HEREBEFORE) == 1) then begin
set_global_var(GVAR_MARK_HUB_HEIGHTS, 1);
set_local_var(LVAR_PAYMENT_STATUS, 1);
dude_caps_adjust(500);
Reply(460);
end
if (local_var(LVAR_JOB_HEREBEFORE) == 2) then begin
Reply(461);
end
if (local_var(LVAR_JOB_HEREBEFORE) == 3) then begin
Reply(462);
end
if (local_var(LVAR_JOB_HEREBEFORE) == 4) then begin
Reply(463);
end
NOption(4, 464, Node087);
NOption(4, 465, Node999);
NOption(-3, 466, Node078);
end
procedure Node065 begin
if (local_var(LVAR_TALKED_TO_KANE) == 1) then begin
set_local_var(LVAR_TALKED_TO_KANE, 2);
set_local_var(LVAR_JOB_HEREBEFORE, 0);
set_map_var(MVAR_DECKER_JOB_STATUS, 3);
Reply(470);
NOption(4, 471, Node066);
NOption(4, 472, Travel);
NOption(-3, 473, Node066);
end
else begin
call Node066;
end
end
procedure Node066 begin
if (local_var(LVAR_PAYMENT_STATUS) == 1) then begin
dude_caps_adjust(2500);
NMessage(474);
end
else begin
dude_caps_adjust(3000);
NMessage(475);
end
give_exp_points(600);
display_msg(mstr(110) + 600 + mstr(111));
set_local_var(LVAR_PAYMENT_STATUS, 2);
set_map_var(MVAR_DECKER_JOB_STATUS, 4);
end
procedure Node067 begin
inc_local_var(LVAR_JOB_HEREBEFORE);
if (local_var(LVAR_JOB_HEREBEFORE) == 1) then begin
if (local_var(LVAR_PAYMENT_STATUS) == 2) then begin
dude_caps_adjust(1000);
Reply(480);
end
else begin
if (local_var(LVAR_PAYMENT_STATUS) == 1) then begin
Reply(481);
dude_caps_adjust(3500);
end
else begin
Reply(482);
dude_caps_adjust(4000);
end
display_msg(mstr(110) + 600 + mstr(111));
end
set_global_var(GVAR_MARK_HUB_WATER_MERCHANTS, 1);
set_local_var(LVAR_PAYMENT_STATUS, 3);
end
if (local_var(LVAR_JOB_HEREBEFORE) == 2) then begin
Reply(483);
end
if (local_var(LVAR_JOB_HEREBEFORE) == 3) then begin
Reply(484);
end
if (local_var(LVAR_JOB_HEREBEFORE) == 4) then begin
Reply(485);
end
NOption(4, 486, Node087);
NOption(4, 487, Node999);
NOption(-3, 488, Node999);
end
procedure Node068 begin
if (local_var(LVAR_TALKED_TO_KANE) == 2) then begin
set_local_var(LVAR_TALKED_TO_KANE, 3);
set_local_var(LVAR_JOB_HEREBEFORE, 0);
set_map_var(MVAR_DECKER_JOB_STATUS, 7);
Reply(490);
NOption(4, 491, Node069);
NOption(4, 492, Travel);
NOption(-3, 493, Node069);
end
else begin
call Node069;
end
end
procedure Node069 begin
variable ExperiencePoints;
if (local_var(LVAR_PAYMENT_STATUS) == 3) then begin
dude_caps_adjust(4000);
ExperiencePoints := 700;
NMessage(494);
end
else begin
if (local_var(LVAR_PAYMENT_STATUS) == 2) then begin
dude_caps_adjust(5000);
ExperiencePoints := 700;
NMessage(495);
end
else begin
if (local_var(LVAR_PAYMENT_STATUS) == 1) then begin
dude_caps_adjust(7500);
ExperiencePoints := 1300;
NMessage(496);
end
else begin
dude_caps_adjust(8000);
ExperiencePoints := 1300;
NMessage(497);
end
end
end
give_exp_points(ExperiencePoints);
display_msg(mstr(110) + ExperiencePoints + mstr(111));
set_map_var(MVAR_DECKER_JOB_STATUS, 8);
end
procedure Node070 begin
Reply(500);
NOption(4, 501, Node072);
BOption(4, 502, Node089);
NOption(4, 503, Node070a);
BOption(4, 504, Node090);
NOption(-3, 505, Node071);
end
procedure Node070a begin
if (dude_skill_success(SKILL_CONVERSANT, 0)) then begin
call Node091;
end
else begin
call Node092;
end
end
procedure Node071 begin
NMessage(506);
call TakeHike;
end
procedure Node072 begin
Reply(510);
BOption(4, 511, Node075);
BOption(4, 512, Node076);
BOption(4, 513, Node074);
BOption(4, 514, Node075);
if (map_var(MVAR_BETH_TALKED_ABOUT_FRIEND) == 1) then begin
BOption(4, 515, Node073);
end
end
procedure Node073 begin
BMessage(516);
call Hostile;
end
procedure Node074 begin
BMessage(517);
call Annoyed;
end
procedure Node075 begin
BMessage(518);
call TakeHike;
end
procedure Node076 begin
BMessage(519);
call Hostile;
end
procedure Node077 begin
Reply(520);
BOption(4, 521, Node080);
NOption(4, 522, Node079);
BOption(4, 523, Node081);
NOption(4, 524, Node082);
NOption(-3, 525, Node078);
end
procedure Node078 begin
NMessage(530);
end
procedure Node079 begin
NMessage(531);
call Travel;
end
procedure Node080 begin
BMessage(532);
call Hostile;
end
procedure Node081 begin
BMessage(533);
call Hostile;
end
procedure Node082 begin
BMessage(534);
call Hostile;
end
procedure Node083 begin
Reply(540);
// NOption(4, 541, Node999);
if (map_var(MVAR_LORENZO_INVITE) == 1) then begin
NOption(4, 542, Node046);
end
else begin
NOption(4, 543, Node085);
end
NOption(4, 544, Node999);
NOption(-3, 545, Node078);
end
procedure Node084 begin
NMessage(random(550, 554));
call Travel;
end
procedure Node085 begin
NMessage(555);
call TakeHike;
end
procedure Node086 begin
Reply(560);
if (map_var(MVAR_DECKER_JOB_STATUS) < 5) then begin
NOption(4, 561, Node084);
end
NOption(4, 562, Node999);
NOption(-3, 563, Node078);
end
procedure Node087 begin
Reply(580);
NOption(4, 581, Node088);
NOption(4, 582, Hostile);
end
procedure Node088 begin
NMessage(583);
end
procedure Node089 begin
BMessage(584);
call Hostile;
end
procedure Node090 begin
BMessage(585);
call Hostile;
end
procedure Node091 begin
NMessage(586);
call Travel;
end
procedure Node092 begin
NMessage(587);
call TakeHike;
end
procedure Node093 begin
Reply(590);
NOption(4, 591, Node094);
NOption(-3, 592, Node094);
end
procedure Node094 begin
Reply(593);
NOption(4, 594, Node095);
NOption(-3, 595, Node095);
end
procedure Node095 begin
BMessage(596);
call Hostile;
end
procedure Node998 begin
set_map_var(MVAR_UNDERGROUND_HOSTILE, 2);
set_local_var(LVAR_PERSONAL_ENEMY, dude_obj);
end
procedure Node999 begin
end
procedure Hostile begin
set_map_var(MVAR_UNDERGROUND_NO_DEAL, 1);
set_map_var(MVAR_UNDERGROUND_HOSTILE, 1);
end
procedure Travel begin
set_map_var(MVAR_KANE_MEET_DECKER, 1);
TravelFlag := 1;
end
procedure Declined begin
set_map_var(MVAR_KANE_MEET_DECKER, 2);
end
procedure NotAccepted begin
set_map_var(MVAR_KANE_MEET_DECKER, 3);
end
procedure Refuses begin
set_map_var(MVAR_KANE_MEET_DECKER, 4);
end
procedure TakeHike begin
set_map_var(MVAR_KANE_MEET_DECKER, 5);
end
procedure Annoyed begin
set_map_var(MVAR_KANE_MEET_DECKER, 6);
end
procedure GoToDecker begin
fadeout(1000);
move_to(self_obj, 22526, 1);
move_to(dude_obj, 23722, 1);
anim(self_obj, 1000, rotation_to_tile(self_tile, tile_num(Decker_ptr)));
anim(dude_obj, 1000, rotation_to_tile(dude_tile, tile_num(Decker_ptr)));
fadein(1000);
end