×
Create a new article
Write your page title here:
We currently have 78,524 articles on Fallout Wiki. Type your article name above or click on one of the titles below and start writing!



Fallout Wiki
78,524Articles
FO76 ui roleplay team.pngThis is the transcript of a script file, which runs certain tasks in the game upon execution.
Details
Type Decompiled script
SCRIPTS.LST Comment teacher for the Followers
MSG file AMBER.MSG
Transcript.png

procedure start;
procedure critter_p_proc;
procedure destroy_p_proc;
procedure look_at_p_proc;
procedure talk_p_proc;
procedure Amber0;
procedure Amber1;
procedure Amber2;
procedure Amber3;
procedure Amber3a;
procedure Amber4;
procedure Amber5;
procedure Amber6;
procedure Amber7;
procedure Amber8;
procedure Amber9;
procedure Amber10;
procedure Amber11;
procedure Amber12;
procedure Amber13;
procedure Amber14;
procedure Amber15;
procedure Amber16;
procedure Amber17;
procedure Amber18;
procedure AmberEnd;
variable initialized;
procedure start
begin
        if (not(initialized)) then begin
                critter_add_trait(self_obj, 1, 6, 46);
                initialized := 1;
        end
        else begin
                if (script_action == 12) then begin
                        call critter_p_proc;
                end
                else begin
                        if (script_action == 18) then begin
                                call destroy_p_proc;
                        end
                        else begin
                                if (script_action == 21) then begin
                                        call look_at_p_proc;
                                end
                                else begin
                                        if (script_action == 11) then begin
                                                call talk_p_proc;
                                        end
                                end
                        end
                end
        end
end
procedure critter_p_proc
begin
        if (global_var(129) == 2) then begin
                kill_critter(self_obj, 59);
        end
end
procedure destroy_p_proc
begin
        if (source_obj == dude_obj) then begin
                if (((global_var(160) + global_var(159)) >= 25) and ((global_var(159) > (2 * global_var(160))) or (global_var(156) == 1))) then begin
                        set_global_var(156, 1);
                        set_global_var(157, 0);
                end
                if (((global_var(160) + global_var(159)) >= 25) and ((global_var(160) > (3 * global_var(159))) or (global_var(157) == 1))) then begin
                        set_global_var(157, 1);
                        set_global_var(156, 0);
                end
                set_global_var(159, global_var(159) + 1);
                if ((global_var(159) % 2) == 0) then begin
                        set_global_var(155, global_var(155) - 1);
                end
        end
end
procedure look_at_p_proc
begin
        script_overrides;
        display_msg(message_str(272, 100));
end
procedure talk_p_proc
begin
        script_overrides;
        if (global_var(132) == 1) then begin
                call Amber18;
        end
        else begin
                if ((game_time_hour >= 700) and (game_time_hour < 1800)) then begin
                        call Amber0;
                end
                else begin
                        set_local_var(0, local_var(0) + 1);
                        start_gdialog(272, self_obj, 4, -1, -1);
                        gsay_start;
                        call Amber1;
                        gsay_end;
                        end_dialogue;
                end
        end
end
procedure Amber0
begin
        float_msg(self_obj, message_str(272, 101), 0);
end
procedure Amber1
begin
        gsay_reply(272, 102);
        giq_option(4, 272, 103, Amber2, 50);
        giq_option(4, 272, 104, Amber3, 50);
        giq_option(7, 272, 105, Amber17, 50);
end
procedure Amber2
begin
        gsay_message(272, 106, 50);
end
procedure Amber3
begin
        gsay_reply(272, 107);
        if (not(local_var(1))) then begin
                giq_option(4, 272, 108, Amber4, 50);
        end
        giq_option(4, 272, 109, AmberEnd, 50);
        if (local_var(2) == 0) then begin
                giq_option(4, 272, 110, Amber3a, 50);
        end
        giq_option(5, 272, 111, Amber16, 50);
end
procedure Amber3a
begin
        if (local_var(0) < 6) then begin
                call Amber9;
        end
        else begin
                if (local_var(0) == 6) then begin
                        call Amber10;
                end
                else begin
                        call Amber15;
                end
        end
end
procedure Amber4
begin
        gsay_reply(272, 112);
        giq_option(4, 272, 113, Amber5, 50);
        giq_option(4, 272, 114, Amber8, 50);
        giq_option(5, 272, 115, AmberEnd, 50);
end
procedure Amber5
begin
        gsay_reply(272, 116);
        giq_option(4, 272, 117, Amber6, 50);
        giq_option(4, 272, 118, Amber7, 50);
end
procedure Amber6
begin
        variable LVar0 := 0;
        set_local_var(1, local_var(1) + 1);
        gsay_message(272, 119, 50);
        gfade_out(800);
        gfade_in(800);
        LVar0 := 3600 * 9;
        game_time_advance(game_ticks(LVar0));
        critter_mod_skill(dude_obj, 17, 15);
        gsay_message(272, 120, 50);
end
procedure Amber7
begin
        gsay_message(272, 121, 50);
end
procedure Amber8
begin
        variable LVar0 := 0;
        set_local_var(1, local_var(1) + 1);
        gsay_message(272, 122, 50);
        gfade_out(800);
        gfade_in(800);
        LVar0 := 3600 * 7;
        game_time_advance(game_ticks(LVar0));
        critter_mod_skill(dude_obj, 17, 15);
        gsay_message(272, 123, 50);
end
procedure Amber9
begin
        gsay_message(272, 124, 50);
end
procedure Amber10
begin
        set_local_var(2, local_var(2) + 1);
        gsay_reply(272, 125);
        giq_option(4, 272, 126, Amber11, 50);
        giq_option(4, 272, 127, Amber12, 50);
        giq_option(4, 272, 128, Amber13, 50);
        giq_option(4, 272, 129, Amber14, 50);
end
procedure Amber11
begin
        variable LVar0 := 0;
        gsay_message(272, 130, 50);
        LVar0 := 3600 * 10;
        gfade_out(800);
        gfade_in(800);
        game_time_advance(game_ticks(LVar0));
        critter_mod_skill(dude_obj, 8, 12);
        critter_mod_skill(dude_obj, 9, 10);
        critter_mod_skill(dude_obj, 10, 8);
        critter_mod_skill(dude_obj, 11, 8);
        gsay_message(272, 131, 50);
end
procedure Amber12
begin
        variable LVar0 := 0;
        gsay_message(272, 132, 50);
        LVar0 := 3600 * 10;
        gfade_out(800);
        gfade_in(800);
        game_time_advance(game_ticks(LVar0));
        critter_mod_skill(dude_obj, 3, 10);
        critter_mod_skill(dude_obj, 0, 8);
        critter_mod_skill(dude_obj, 5, 8);
        critter_mod_skill(dude_obj, 4, 6);
        gsay_message(272, 133, 50);
end
procedure Amber13
begin
        variable LVar0 := 0;
        gsay_message(272, 134, 50);
        LVar0 := 3600 * 10;
        gfade_out(800);
        gfade_in(800);
        game_time_advance(game_ticks(LVar0));
        critter_mod_skill(dude_obj, 17, 10);
        critter_mod_skill(dude_obj, 8, 8);
        critter_mod_skill(dude_obj, 5, 8);
        critter_mod_skill(dude_obj, 11, 6);
        gsay_message(272, 135, 50);
end
procedure Amber14
begin
        variable LVar0 := 0;
        gsay_message(272, 136, 50);
        LVar0 := 3600 * 10;
        gfade_out(800);
        gfade_in(800);
        game_time_advance(game_ticks(LVar0));
        critter_mod_skill(dude_obj, 15, 10);
        critter_mod_skill(dude_obj, 14, 8);
        critter_mod_skill(dude_obj, 16, 8);
        critter_mod_skill(dude_obj, 4, 6);
        gsay_message(272, 137, 50);
end
procedure Amber15
begin
        gsay_message(272, 138, 50);
end
procedure Amber16
begin
        gsay_message(272, 139, 50);
end
procedure Amber17
begin
        gsay_reply(272, 140);
        if (local_var(2) == 0) then begin
                giq_option(7, 272, 141, Amber10, 50);
        end
        giq_option(7, 272, 142, AmberEnd, 50);
        if (not(local_var(1))) then begin
                giq_option(6, 272, 143, Amber4, 50);
        end
end
procedure Amber18
begin
        float_msg(self_obj, message_str(272, 144), 0);
end
procedure AmberEnd
begin
end