1 |
depth = -999 |
2 |
interact = 0 |
3 |
if (keyboard_multicheck_pressed(0) && scr_interactscr_interactfunction scr_interact() //gml_Script_scr_interact
{
if (distance_to_object(obj_pl) < 20 && obj_pl.state == gml_Script_scr_normal_state)
{
var pl_dir = obj_pl.direction
var pl_x = 0
var pl_y = 0
var check_distance_x = 0
var check_distance_y = 0
switch pl_dir
{
case 0:
pl_x = obj_pl.bbox_right
pl_y = obj_pl.bbox_top + 1
check_distance_x = 20
break
case 180:
pl_x = obj_pl.bbox_left
pl_y = obj_pl.bbox_top + 1
check_distance_x = -20
break
case 90:
pl_x = obj_pl.x
pl_y = obj_pl.bbox_top
check_distance_y = -20
break
case 270:
pl_x = obj_pl.x
pl_y = obj_pl.bbox_bottom
check_distance_y = 20
break
}
if collision_line_first(pl_x, pl_y, (pl_x + check_distance_x), (pl_y + check_distance_y), id, false, false)
return true;
}
} () == true) |
4 |
interact = 1 |
5 |
if (instance_exists(obj_dialogue) && is_talking == true) |
6 |
{ |
7 |
if (obj_dialogue.cutoff == string_length(obj_dialogue.message[obj_dialogue.message_current])) |
8 |
{ |
9 |
if (sprite_index != spr_npc_searby) |
10 |
{ |
11 |
image_index = 0 |
12 |
sprite_index = spr_npc_searby |
13 |
} |
14 |
} |
15 |
else if (sprite_index != spr_npc_searby_talk) |
16 |
{ |
17 |
image_index = 0 |
18 |
sprite_index = spr_npc_searby_talk |
19 |
} |
20 |
} |
21 |
else |
22 |
is_talking = false |
23 |
if (ds_map_find_value(global.npc_map, npc_id) != npc_flag) |
24 |
ds_map_replace(global.npc_map, npc_id, npc_flag) |
25 |
if interact |
26 |
{ |
27 |
scr_textscr_textfunction scr_text() //gml_Script_scr_text
{
if (!instance_exists(obj_dialogue))
msg = instance_create(x, y, obj_dialogue)
} () |
28 |
is_talking = 1 |
29 |
switch npc_flag |
30 |
{ |
31 |
case 0: |
32 |
with (msg) |
33 |
{ |
34 |
message[0] = "* What an introduction, right?" |
35 |
message[1] = "* Hope ya didn't have any stage# fright!" |
36 |
message[2] = "* Stages can be scary! All...# wooden, occasionally making# faces at you..." |
37 |
} |
38 |
npc_flag = 1 |
39 |
break |
40 |
case 1: |
41 |
with (msg) |
42 |
{ |
43 |
message[0] = "* I'm from out of town like# yourself." |
44 |
message[1] = "* Got some folks I'm close to# back west." |
45 |
message[2] = "* I really gotta get 'em over# here soon! They'd love the# atmosphere!" |
46 |
} |
47 |
npc_flag = 2 |
48 |
break |
49 |
case 2: |
50 |
with (msg) |
51 |
message[0] = "* Good luck out there, human!" |
52 |
break |
53 |
} |
54 |
|
55 |
} |