Deltarune (Chapter 3) script viewer

← back to main script listing

gml_Object_obj_dw_ch3_teevie_quiz_controller_Step_0

(view raw script w/o annotations or w/e)
1
if (con < 0)
2
    exit;
3
if (con == 0 && global.interact == 0 && abs((quiz_screen.x + 220) - obj_mainchara.x) < 20 && obj_mainchara.y >= quiz_screen.y && obj_mainchara.y < (quiz_screen.y + 320))
4
{
5
    con = 1;
6
    global.interact = 1;
7
    
scr_flag_set
scr_flag_set

function
scr_flag_set(arg0, arg1)
{ global.flag[arg0] = arg1; }
(7, 1);
8
    cutscene_master = 
scr_cutscene_make
scr_cutscene_make

function
scr_cutscene_make()
{ _cutscene_master = instance_create(0, 0, obj_cutscene_master); _cutscene_master.master_object = id; return _cutscene_master; }
();
9
    
scr_maincharacters_actors
scr_maincharacters_actors

function
scr_maincharacters_actors()
{ actor_count = 0; kr = 0; kr_actor = instance_create(obj_mainchara.x, obj_mainchara.y, obj_actor);
scr_actor_setup(kr, kr_actor, "kris");
kr_actor.sprite_index = obj_mainchara.sprite_index; kr_actor.depth = obj_mainchara.depth; with (obj_mainchara) visible = 0; for (__jj = 0; __jj < array_length_1d(global.cinstance); __jj++) { if (i_ex(global.cinstance[__jj])) { if (global.cinstance[__jj].name == "susie") { actor_count++; su = __jj + 1; su_actor = instance_create(global.cinstance[__jj].x, global.cinstance[__jj].y, obj_actor);
scr_actor_setup(su, su_actor, "susie");
su_actor.sprite_index = global.cinstance[__jj].sprite_index; su_actor.depth = global.cinstance[__jj].depth; with (global.cinstance[__jj]) visible = 0; } if (global.cinstance[__jj].name == "ralsei") { actor_count++; ra = __jj + 1; ra_actor = instance_create(global.cinstance[__jj].x, global.cinstance[__jj].y, obj_actor);
scr_actor_setup(ra, ra_actor, "ralsei");
ra_actor.sprite_index = global.cinstance[__jj].sprite_index; ra_actor.depth = global.cinstance[__jj].depth; with (global.cinstance[__jj]) visible = 0; } if (global.cinstance[__jj].name == "noelle") { actor_count++; no = __jj + 1; no_actor = instance_create(global.cinstance[__jj].x, global.cinstance[__jj].y, obj_actor);
scr_actor_setup(no, no_actor, "noelle");
no_actor.sprite_index = global.cinstance[__jj].sprite_index; no_actor.depth = global.cinstance[__jj].depth; with (global.cinstance[__jj]) visible = 0; } } } }
();
10
    
c_sel
c_sel

function
c_sel(arg0)
{
c_cmd("select", arg0, 0, 0, 0);
}
(kr);
11
    
c_facing
c_facing

function
c_facing(arg0)
{
c_cmd("facing", arg0, 0, 0, 0);
}
("u");
12
    
c_sel
c_sel

function
c_sel(arg0)
{
c_cmd("select", arg0, 0, 0, 0);
}
(su);
13
    
c_facing
c_facing

function
c_facing(arg0)
{
c_cmd("facing", arg0, 0, 0, 0);
}
("u");
14
    
c_sel
c_sel

function
c_sel(arg0)
{
c_cmd("select", arg0, 0, 0, 0);
}
(ra);
15
    
c_facing
c_facing

function
c_facing(arg0)
{
c_cmd("facing", arg0, 0, 0, 0);
}
("u");
16
    
c_pannable
c_pannable

function
c_pannable(arg0)
{
c_cmd("pannable", arg0, 0, 0, 0);
}
(1);
17
    
c_pan
c_pan

function
c_pan(arg0, arg1, arg2)
{
c_cmd("pan", arg0, arg1, arg2, 0);
}
(quiz_screen.x - 80, quiz_screen.y - 40, 8);
18
    
c_var_instance
c_var_instance

function
c_var_instance(arg0, arg1, arg2)
{
c_cmd_x("var", arg0, arg1, arg2, 0, 0, 0);
}
(id, "quiz_start", true);
19
    
c_wait
c_wait

function
c_wait(arg0)
{
c_cmd("wait", arg0, 0, 0, 0);
}
(30);
20
    
c_var_instance
c_var_instance

function
c_var_instance(arg0, arg1, arg2)
{
c_cmd_x("var", arg0, arg1, arg2, 0, 0, 0);
}
(id, "quiz_display", true);
21
    c_snd_play(snd_jump);
22
    
c_sel
c_sel

function
c_sel(arg0)
{
c_cmd("select", arg0, 0, 0, 0);
}
(kr);
23
    
c_autowalk
c_autowalk

function
c_autowalk(arg0)
{
c_cmd("autowalk", arg0, 0, 0, 0);
}
(0);
24
    
c_jump_sprite
c_jump_sprite

function
c_jump_sprite(arg0, arg1, arg2, arg3, arg4, arg5)
{
c_cmd_x("jumpsprite", arg0, arg1, arg2, arg3, arg4, arg5);
}
(base_x_pos + 220, base_y_pos + 232, 20, 15, spr_kris_jump_ball, spr_krisu_dark);
25
    
c_sel
c_sel

function
c_sel(arg0)
{
c_cmd("select", arg0, 0, 0, 0);
}
(su);
26
    
c_autowalk
c_autowalk

function
c_autowalk(arg0)
{
c_cmd("autowalk", arg0, 0, 0, 0);
}
(0);
27
    
c_jump_sprite
c_jump_sprite

function
c_jump_sprite(arg0, arg1, arg2, arg3, arg4, arg5)
{
c_cmd_x("jumpsprite", arg0, arg1, arg2, arg3, arg4, arg5);
}
(base_x_pos + 15, base_y_pos + 215, 20, 15, spr_susie_dw_jump_ball, spr_susie_walk_up_dw);
28
    
c_sel
c_sel

function
c_sel(arg0)
{
c_cmd("select", arg0, 0, 0, 0);
}
(ra);
29
    
c_autowalk
c_autowalk

function
c_autowalk(arg0)
{
c_cmd("autowalk", arg0, 0, 0, 0);
}
(0);
30
    
c_jump_sprite
c_jump_sprite

function
c_jump_sprite(arg0, arg1, arg2, arg3, arg4, arg5)
{
c_cmd_x("jumpsprite", arg0, arg1, arg2, arg3, arg4, arg5);
}
(base_x_pos + 420, base_y_pos + 220, 20, 15, spr_ralsei_jump_ball, spr_ralsei_walk_up);
31
    
c_wait
c_wait

function
c_wait(arg0)
{
c_cmd("wait", arg0, 0, 0, 0);
}
(20);
32
    
c_var_instance
c_var_instance

function
c_var_instance(arg0, arg1, arg2)
{
c_cmd_x("var", arg0, arg1, arg2, 0, 0, 0);
}
(id, "show_spikes", true);
33
    
c_var_instance
c_var_instance

function
c_var_instance(arg0, arg1, arg2)
{
c_cmd_x("var", arg0, arg1, arg2, 0, 0, 0);
}
(id, "show_buttons", true);
34
    
c_wait
c_wait

function
c_wait(arg0)
{
c_cmd("wait", arg0, 0, 0, 0);
}
(20);
35
    
c_wait_if
c_wait_if

function
c_wait_if(arg0, arg1, arg2, arg3)
{
c_cmd("waitif", arg0, arg1, arg2, arg3);
}
(quiz_screen, "quiz_display", "=", true);
36
    
c_var_instance
c_var_instance

function
c_var_instance(arg0, arg1, arg2)
{
c_cmd_x("var", arg0, arg1, arg2, 0, 0, 0);
}
(id, "regain_control", true);
37
    
c_waitcustom
c_waitcustom

function
c_waitcustom()
{
c_cmd("waitcustom", 0, 0, 0, 0);
}
();
38
}
39
if (correct_answer && customcon == 1)
40
{
41
    correct_answer = false;
42
    customcon = 0;
43
    
c_waitcustom_end
c_waitcustom_end

function
c_waitcustom_end()
{ with (obj_cutscene_master) { cs_wait_custom = 0; waiting = 0; } }
();
44
    
c_wait
c_wait

function
c_wait(arg0)
{
c_cmd("wait", arg0, 0, 0, 0);
}
(60);
45
    c_snd_play(snd_won);
46
    
c_sel
c_sel

function
c_sel(arg0)
{
c_cmd("select", arg0, 0, 0, 0);
}
(kr);
47
    
c_sprite
c_sprite

function
c_sprite(arg0)
{
c_cmd("sprite", arg0, 0, 0, 0);
}
(spr_kris_pose);
48
    
c_sel
c_sel

function
c_sel(arg0)
{
c_cmd("select", arg0, 0, 0, 0);
}
(su);
49
    
c_sprite
c_sprite

function
c_sprite(arg0)
{
c_cmd("sprite", arg0, 0, 0, 0);
}
(spr_susie_pose);
50
    
c_sel
c_sel

function
c_sel(arg0)
{
c_cmd("select", arg0, 0, 0, 0);
}
(ra);
51
    
c_sprite
c_sprite

function
c_sprite(arg0)
{
c_cmd("sprite", arg0, 0, 0, 0);
}
(spr_ralsei_pose);
52
    
c_wait
c_wait

function
c_wait(arg0)
{
c_cmd("wait", arg0, 0, 0, 0);
}
(30);
53
    c_snd_play(snd_wing);
54
    
c_sel
c_sel

function
c_sel(arg0)
{
c_cmd("select", arg0, 0, 0, 0);
}
(kr);
55
    
c_autowalk
c_autowalk

function
c_autowalk(arg0)
{
c_cmd("autowalk", arg0, 0, 0, 0);
}
(0);
56
    
c_facing
c_facing

function
c_facing(arg0)
{
c_cmd("facing", arg0, 0, 0, 0);
}
("u");
57
    c_var_lerp_to_instance(kr_actor, "x", base_x_pos + 220, 10, 3, "out");
58
    c_var_lerp_to_instance(kr_actor, "y", base_y_pos + 232, 10, 3, "out");
59
    
c_sel
c_sel

function
c_sel(arg0)
{
c_cmd("select", arg0, 0, 0, 0);
}
(su);
60
    
c_autowalk
c_autowalk

function
c_autowalk(arg0)
{
c_cmd("autowalk", arg0, 0, 0, 0);
}
(0);
61
    
c_facing
c_facing

function
c_facing(arg0)
{
c_cmd("facing", arg0, 0, 0, 0);
}
("u");
62
    c_var_lerp_to_instance(su_actor, "x", base_x_pos + 15, 10, 3, "out");
63
    c_var_lerp_to_instance(su_actor, "y", base_y_pos + 215, 10, 3, "out");
64
    
c_sel
c_sel

function
c_sel(arg0)
{
c_cmd("select", arg0, 0, 0, 0);
}
(ra);
65
    
c_autowalk
c_autowalk

function
c_autowalk(arg0)
{
c_cmd("autowalk", arg0, 0, 0, 0);
}
(0);
66
    
c_facing
c_facing

function
c_facing(arg0)
{
c_cmd("facing", arg0, 0, 0, 0);
}
("u");
67
    c_var_lerp_to_instance(ra_actor, "x", base_x_pos + 420, 10, 3, "out");
68
    c_var_lerp_to_instance(ra_actor, "y", base_y_pos + 220, 10, 3, "out");
69
    if (room == room_dw_teevie_maze_quiz)
70
        
c_wait
c_wait

function
c_wait(arg0)
{
c_cmd("wait", arg0, 0, 0, 0);
}
(15);
71
    else
72
        
c_wait
c_wait

function
c_wait(arg0)
{
c_cmd("wait", arg0, 0, 0, 0);
}
(30);
73
    if (quiz_screen.can_continue_quiz())
74
    {
75
        
c_var_instance
c_var_instance

function
c_var_instance(arg0, arg1, arg2)
{
c_cmd_x("var", arg0, arg1, arg2, 0, 0, 0);
}
(id, "quiz_static_show", true);
76
        
c_wait
c_wait

function
c_wait(arg0)
{
c_cmd("wait", arg0, 0, 0, 0);
}
(15);
77
        
c_var_instance
c_var_instance

function
c_var_instance(arg0, arg1, arg2)
{
c_cmd_x("var", arg0, arg1, arg2, 0, 0, 0);
}
(id, "quiz_static_hide", true);
78
        
c_var_instance
c_var_instance

function
c_var_instance(arg0, arg1, arg2)
{
c_cmd_x("var", arg0, arg1, arg2, 0, 0, 0);
}
(id, "quiz_display", true);
79
        
c_var_instance
c_var_instance

function
c_var_instance(arg0, arg1, arg2)
{
c_cmd_x("var", arg0, arg1, arg2, 0, 0, 0);
}
(id, "regain_control", true);
80
    }
81
    else
82
    {
83
        
c_var_instance
c_var_instance

function
c_var_instance(arg0, arg1, arg2)
{
c_cmd_x("var", arg0, arg1, arg2, 0, 0, 0);
}
(id, "quiz_static_show", true);
84
        
c_wait
c_wait

function
c_wait(arg0)
{
c_cmd("wait", arg0, 0, 0, 0);
}
(15);
85
        
c_var_instance
c_var_instance

function
c_var_instance(arg0, arg1, arg2)
{
c_cmd_x("var", arg0, arg1, arg2, 0, 0, 0);
}
(id, "quiz_complete", true);
86
    }
87
    
c_waitcustom
c_waitcustom

function
c_waitcustom()
{
c_cmd("waitcustom", 0, 0, 0, 0);
}
();
88
}
89
if (wrong_answer && customcon == 1)
90
{
91
    wrong_answer = false;
92
    customcon = 0;
93
    
c_waitcustom_end
c_waitcustom_end

function
c_waitcustom_end()
{ with (obj_cutscene_master) { cs_wait_custom = 0; waiting = 0; } }
();
94
    c_snd_play(snd_error);
95
    
c_sel
c_sel

function
c_sel(arg0)
{
c_cmd("select", arg0, 0, 0, 0);
}
(su);
96
    
c_sprite
c_sprite

function
c_sprite(arg0)
{
c_cmd("sprite", arg0, 0, 0, 0);
}
(spr_susie_shock_r);
97
    
c_sel
c_sel

function
c_sel(arg0)
{
c_cmd("select", arg0, 0, 0, 0);
}
(ra);
98
    
c_sprite
c_sprite

function
c_sprite(arg0)
{
c_cmd("sprite", arg0, 0, 0, 0);
}
(spr_ralsei_shocked_left);
99
    if (room == room_dw_teevie_maze_quiz)
100
        
c_wait
c_wait

function
c_wait(arg0)
{
c_cmd("wait", arg0, 0, 0, 0);
}
(15);
101
    else
102
        
c_wait
c_wait

function
c_wait(arg0)
{
c_cmd("wait", arg0, 0, 0, 0);
}
(45);
103
    if (abs(abs(kr_actor.x) - abs(base_x_pos + 220)) > 10)
104
        c_snd_play(snd_wing);
105
    
c_sel
c_sel

function
c_sel(arg0)
{
c_cmd("select", arg0, 0, 0, 0);
}
(kr);
106
    
c_autowalk
c_autowalk

function
c_autowalk(arg0)
{
c_cmd("autowalk", arg0, 0, 0, 0);
}
(0);
107
    
c_facing
c_facing

function
c_facing(arg0)
{
c_cmd("facing", arg0, 0, 0, 0);
}
("u");
108
    c_var_lerp_to_instance(kr_actor, "x", base_x_pos + 220, 10, 3, "out");
109
    c_var_lerp_to_instance(kr_actor, "y", base_y_pos + 232, 10, 3, "out");
110
    
c_sel
c_sel

function
c_sel(arg0)
{
c_cmd("select", arg0, 0, 0, 0);
}
(su);
111
    
c_autowalk
c_autowalk

function
c_autowalk(arg0)
{
c_cmd("autowalk", arg0, 0, 0, 0);
}
(0);
112
    
c_facing
c_facing

function
c_facing(arg0)
{
c_cmd("facing", arg0, 0, 0, 0);
}
("u");
113
    c_var_lerp_to_instance(su_actor, "x", base_x_pos + 15, 10, 3, "out");
114
    c_var_lerp_to_instance(su_actor, "y", base_y_pos + 215, 10, 3, "out");
115
    
c_sel
c_sel

function
c_sel(arg0)
{
c_cmd("select", arg0, 0, 0, 0);
}
(ra);
116
    
c_autowalk
c_autowalk

function
c_autowalk(arg0)
{
c_cmd("autowalk", arg0, 0, 0, 0);
}
(0);
117
    
c_facing
c_facing

function
c_facing(arg0)
{
c_cmd("facing", arg0, 0, 0, 0);
}
("u");
118
    c_var_lerp_to_instance(ra_actor, "x", base_x_pos + 420, 10, 3, "out");
119
    c_var_lerp_to_instance(ra_actor, "y", base_y_pos + 220, 10, 3, "out");
120
    
c_wait
c_wait

function
c_wait(arg0)
{
c_cmd("wait", arg0, 0, 0, 0);
}
(10);
121
    
c_var_instance
c_var_instance

function
c_var_instance(arg0, arg1, arg2)
{
c_cmd_x("var", arg0, arg1, arg2, 0, 0, 0);
}
(id, "quiz_bullets", true);
122
    
c_waitcustom
c_waitcustom

function
c_waitcustom()
{
c_cmd("waitcustom", 0, 0, 0, 0);
}
();
123
}
124
if (quiz_bullets)
125
{
126
    if (customcon == 1)
127
    {
128
        customcon = 0;
129
        hide_kris_actor();
130
        with (quiz_screen)
131
            start_bullets();
132
    }
133
    else if (quiz_screen.is_bullet_finished())
134
    {
135
        if (quiz_bullets_con == 0)
136
        {
137
            global.interact = 1;
138
            quiz_bullets_con = 1;
139
            quiz_static_show = true;
140
            show_kris_actor();
141
            scr_lerp_instance_var(kr_actor, "x", kr_actor.x, base_x_pos + 220, 10, 3, "out");
142
            scr_lerp_instance_var(kr_actor, "y", kr_actor.y, base_y_pos + 232, 10, 3, "out");
143
            
scr_var_delay
scr_var_delay

function
scr_var_delay(arg0, arg1, arg2)
{
scr_script_delayed(scr_var, arg2, arg0, arg1);
} function scr_var_delayed(arg0, arg1, arg2) {
scr_script_delayed(scr_var, arg2, arg0, arg1);
} function scr_delay_var(arg0, arg1, arg2) {
scr_script_delayed(scr_var, arg2, arg0, arg1);
}
("quiz_bullets_con", 2, 16);
144
        }
145
        if (quiz_bullets_con == 2)
146
        {
147
            quiz_bullets_con = 0;
148
            quiz_bullets = false;
149
            customcon = 1;
150
            quiz_static_hide = true;
151
            if (quiz_screen.can_continue_quiz())
152
            {
153
                quiz_display = true;
154
                regain_control = true;
155
            }
156
            else
157
            {
158
                show_kris_actor();
159
                quiz_complete = true;
160
            }
161
        }
162
    }
163
}
164
if (quiz_complete && customcon == 1)
165
{
166
    quiz_complete = false;
167
    customcon = 0;
168
    con = 99;
169
    global.facing = 0;
170
    
c_waitcustom_end
c_waitcustom_end

function
c_waitcustom_end()
{ with (obj_cutscene_master) { cs_wait_custom = 0; waiting = 0; } }
();
171
    
c_var_instance
c_var_instance

function
c_var_instance(arg0, arg1, arg2)
{
c_cmd_x("var", arg0, arg1, arg2, 0, 0, 0);
}
(id, "hide_spikes", true);
172
    
c_var_instance
c_var_instance

function
c_var_instance(arg0, arg1, arg2)
{
c_cmd_x("var", arg0, arg1, arg2, 0, 0, 0);
}
(id, "hide_buttons", true);
173
    
c_var_instance
c_var_instance

function
c_var_instance(arg0, arg1, arg2)
{
c_cmd_x("var", arg0, arg1, arg2, 0, 0, 0);
}
(id, "hide_overlay", true);
174
    c_snd_play(snd_jump);
175
    
c_sel
c_sel

function
c_sel(arg0)
{
c_cmd("select", arg0, 0, 0, 0);
}
(kr);
176
    
c_autowalk
c_autowalk

function
c_autowalk(arg0)
{
c_cmd("autowalk", arg0, 0, 0, 0);
}
(0);
177
    
c_facing
c_facing

function
c_facing(arg0)
{
c_cmd("facing", arg0, 0, 0, 0);
}
("u");
178
    
c_sel
c_sel

function
c_sel(arg0)
{
c_cmd("select", arg0, 0, 0, 0);
}
(su);
179
    
c_autowalk
c_autowalk

function
c_autowalk(arg0)
{
c_cmd("autowalk", arg0, 0, 0, 0);
}
(0);
180
    
c_facing
c_facing

function
c_facing(arg0)
{
c_cmd("facing", arg0, 0, 0, 0);
}
("u");
181
    
c_sel
c_sel

function
c_sel(arg0)
{
c_cmd("select", arg0, 0, 0, 0);
}
(ra);
182
    
c_autowalk
c_autowalk

function
c_autowalk(arg0)
{
c_cmd("autowalk", arg0, 0, 0, 0);
}
(0);
183
    
c_facing
c_facing

function
c_facing(arg0)
{
c_cmd("facing", arg0, 0, 0, 0);
}
("u");
184
    
c_sel
c_sel

function
c_sel(arg0)
{
c_cmd("select", arg0, 0, 0, 0);
}
(kr);
185
    
c_jump_sprite
c_jump_sprite

function
c_jump_sprite(arg0, arg1, arg2, arg3, arg4, arg5)
{
c_cmd_x("jumpsprite", arg0, arg1, arg2, arg3, arg4, arg5);
}
(base_x_pos + 271, base_y_pos + 232, 20, 15, spr_kris_jump_ball, spr_krisu_dark);
186
    
c_sel
c_sel

function
c_sel(arg0)
{
c_cmd("select", arg0, 0, 0, 0);
}
(su);
187
    
c_jump_sprite
c_jump_sprite

function
c_jump_sprite(arg0, arg1, arg2, arg3, arg4, arg5)
{
c_cmd_x("jumpsprite", arg0, arg1, arg2, arg3, arg4, arg5);
}
(base_x_pos + 210, base_y_pos + 215, 20, 15, spr_susie_dw_jump_ball, spr_susie_walk_up_dw);
188
    
c_sel
c_sel

function
c_sel(arg0)
{
c_cmd("select", arg0, 0, 0, 0);
}
(ra);
189
    
c_jump_sprite
c_jump_sprite

function
c_jump_sprite(arg0, arg1, arg2, arg3, arg4, arg5)
{
c_cmd_x("jumpsprite", arg0, arg1, arg2, arg3, arg4, arg5);
}
(base_x_pos + 167, base_y_pos + 220, 20, 15, spr_ralsei_jump_ball, spr_ralsei_walk_up);
190
    
c_wait
c_wait

function
c_wait(arg0)
{
c_cmd("wait", arg0, 0, 0, 0);
}
(20);
191
    
c_var_instance
c_var_instance

function
c_var_instance(arg0, arg1, arg2)
{
c_cmd_x("var", arg0, arg1, arg2, 0, 0, 0);
}
(id, "quiz_finish", true);
192
    
c_pannable
c_pannable

function
c_pannable(arg0)
{
c_cmd("pannable", arg0, 0, 0, 0);
}
(1);
193
    
c_panobj
c_panobj

function
c_panobj(arg0, arg1)
{
c_cmd("panobj", arg0, arg1, 0, 0);
}
(kr_actor, 15);
194
    
c_wait
c_wait

function
c_wait(arg0)
{
c_cmd("wait", arg0, 0, 0, 0);
}
(15);
195
    
c_pannable
c_pannable

function
c_pannable(arg0)
{
c_cmd("pannable", arg0, 0, 0, 0);
}
(0);
196
    
c_sel
c_sel

function
c_sel(arg0)
{
c_cmd("select", arg0, 0, 0, 0);
}
(kr);
197
    
c_facing
c_facing

function
c_facing(arg0)
{
c_cmd("facing", arg0, 0, 0, 0);
}
("d");
198
    
c_actortokris
c_actortokris

function
c_actortokris()
{
c_cmd("actortokris", 0, 0, 0, 0);
}
();
199
    
c_actortocaterpillar
c_actortocaterpillar

function
c_actortocaterpillar()
{
c_cmd("actortocaterpillar", 0, 0, 0, 0);
}
();
200
    
c_terminatekillactors
c_terminatekillactors

function
c_terminatekillactors()
{
c_cmd("terminatekillactors", 0, 0, 0, 0);
}
();
201
}
202
if (con == 99 && !i_ex(obj_cutscene_master))
203
{
204
    con = -1;
205
    global.interact = 0;
206
    global.facing = 0;
207
    
scr_flag_set
scr_flag_set

function
scr_flag_set(arg0, arg1)
{ global.flag[arg0] = arg1; }
(7, 0);
208
    with (obj_caterpillarchara)
209
        
scr_caterpillar_interpolate
scr_caterpillar_interpolate

function
scr_caterpillar_interpolate()
{ _newfacing =
scr_facing_letter_to_number(
scr_get_cardinal_direction(point_direction(x, y, obj_mainchara.x, obj_mainchara.y)));
remx[0] = obj_mainchara.x; remy[0] = obj_mainchara.y; facing[0] = _newfacing; for (_iaia = target; _iaia > 0; _iaia -= 1) { remx[_iaia] = lerp(obj_mainchara.x, x, _iaia / target); if (global.darkzone == 1) remy[_iaia] = lerp(obj_mainchara.y, y + 16, _iaia / target); else remy[_iaia] = lerp(obj_mainchara.y, y + 6, _iaia / target); facing[_iaia] = _newfacing; } }
();
210
}
211
if (quiz_start)
212
{
213
    quiz_start = false;
214
    var _id = quiz_id;
215
    with (quiz_screen)
216
        init_quiz(_id);
217
}
218
if (quiz_ready)
219
{
220
    quiz_ready = false;
221
    with (quiz_screen)
222
        quiz_ready = true;
223
}
224
if (quiz_display)
225
{
226
    quiz_display = false;
227
    reset_button_tiles();
228
    with (quiz_screen)
229
        display_next_question();
230
}
231
if (quiz_static_show)
232
{
233
    quiz_static_show = false;
234
    with (quiz_screen)
235
        show_static();
236
}
237
if (quiz_static_hide)
238
{
239
    quiz_static_hide = false;
240
    with (quiz_screen)
241
        hide_static();
242
}
243
if (quiz_finish)
244
{
245
    quiz_finish = false;
246
    
scr_flag_set
scr_flag_set

function
scr_flag_set(arg0, arg1)
{ global.flag[arg0] = arg1; }
(quiz_flag, 1);
247
    with (quiz_screen)
248
        end_quiz();
249
}
250
if (regain_control)
251
{
252
    if (quiz_screen.quiz_display)
253
    {
254
        regain_control = false;
255
        press_wait = true;
256
        hide_kris_actor();
257
    }
258
}
259
if (press_wait)
260
{
261
    var time_up = quiz_screen.countdown_timer <= 0;
262
    if (time_up)
263
    {
264
        press_wait = false;
265
        show_kris_actor();
266
        scr_delay_var("wrong_answer", true, 30);
267
    }
268
    else
269
    {
270
        var _is_pressed = false;
271
        var _selected_char = -1;
272
        for (var i = 0; i < array_length_1d(button_tiles_player); i++)
273
        {
274
            _is_pressed = button_tiles_player[i].is_pressed;
275
            if (_is_pressed)
276
            {
277
                _selected_char = button_tiles_player[i].char_string;
278
                break;
279
            }
280
        }
281
        if (_is_pressed)
282
        {
283
            press_wait = false;
284
            show_kris_actor();
285
            var _susie_delay = 6;
286
            var _ralsei_delay = 2;
287
            caterpillar_press_button(su_actor, _selected_char, _susie_delay);
288
            caterpillar_press_button(ra_actor, _selected_char, _ralsei_delay);
289
            with (quiz_screen)
290
            {
291
                select_char(_selected_char);
292
                scr_delay_var("susie_select", true, _susie_delay);
293
                scr_delay_var("ralsei_select", true, _ralsei_delay);
294
            }
295
            if (_selected_char == quiz_screen.answer_correct)
296
                correct_answer = true;
297
            else
298
                scr_delay_var("wrong_answer", true, 60);
299
        }
300
    }
301
}
302
if (show_spikes)
303
{
304
    show_spikes = false;
305
    for (var i = 0; i < array_length_1d(spikes); i++)
306
    {
307
        with (spikes[i])
308
            show_tiles();
309
    }
310
}
311
if (hide_spikes)
312
{
313
    hide_spikes = false;
314
    for (var i = 0; i < array_length_1d(spikes); i++)
315
    {
316
        with (spikes[i])
317
            hide_tiles();
318
    }
319
}
320
if (show_buttons)
321
{
322
    show_buttons = false;
323
    show_button_tiles();
324
}
325
if (hide_buttons)
326
{
327
    hide_buttons = false;
328
    hide_button_tiles();
329
}