Undertale Yellow script viewer

← back to main script listing

gml_Object_obj_tablenpc_snowdin_14b_Step_0

(view raw script w/o annotations or w/e)
1
event_inherited();
2
var current_song = obj_rodney_snowdin_14b_overworld_yellow.song;
3
var fav_song = 145;
4
var message_repeating;
5
message_repeating[0] = "* (You got the band merch pin.)";
6
message_repeating[1] = "* That one's super rare, so don't#  you lose it!";
7
message_repeating[2] = "* Only was sold at the concert#  they did at the dump that one#  time!";
8
message_repeating[3] = "* Man, that was so grungy...";
9
if (interact == 1 && waiter == 0)
10
{
11
    scr_text
scr_text

function scr_text() { if (!instance_exists(obj_dialogue)) msg = instance_create(x, y, obj_dialogue); }
();
12
    is_talking = 1;
13
    waiter = 1;
14
}
15
if (waiter == 1 && !instance_exists(obj_dialogue))
16
    waiter = 0;
17
if (waiter == 1)
18
{
19
    with (msg)
20
    {
21
        portrait = false;
22
        switch (other.npc_flag)
23
        {
24
            case 0:
25
                message[0] = "* Are you enjoying the tunes as#  much as I am?";
26
                message[1] = "* Actually. Don't answer that.#  You're not.";
27
                message[2] = "* I used to be one of those#  superfans you hear about.";
28
                message[3] = "* Followed the band around from#  place to place,";
29
                message[4] = "* Learned all the aliases they#  used in hotels,";
30
                message[5] = "* Watched them buy their favorite#  brands of cereal.";
31
                message[6] = "* I'm reformed now though.";
32
                message[7] = "* Now I'm content to sit and#  listen.";
33
                if (!global.dialogue_open)
34
                    other.npc_flag += 1;
35
                break;
36
            case 1:
37
                message[0] = "* Nothing could beat this...";
38
                message[1] = "* Actually. That's a lie.";
39
                message[2] = "* If they were playing my#  favorite song,";
40
                message[3] = "* That would beat this easy.";
41
                message[4] = "* Mind asking them to play it for#  me?";
42
                message[5] = "* I'll make it worth your while.";
43
                if (!global.dialogue_open)
44
                    other.npc_flag += 1;
45
                break;
46
            case 2:
47
                if (current_song != fav_song)
48
                {
49
                    message[0] = "* Hmm, nice tune.";
50
                    message[1] = "* Boy, do I remember the first#  time I heard this song.";
51
                    message[2] = "* Not my favorite though.";
52
                }
53
                else
54
                {
55
                    message[0] = "* My gosh, I haven't heard this#  song in forever!";
56
                    message[1] = "* Definitely my favorite! Hands#  down!";
57
                    message[2] = "* Thank you so so so much!";
58
                    message[3] = "* What can I give you...";
59
                    message[4] = "* I know! Here! You can put it on#  your hat!";
60
                    if (other.item_got == false && scr_item
scr_item

function scr_item(arg0) { nm = arg0; for (var i = 1; i <= 8; i++) { if (global.item_slot[i] == "Nothing") { global.item_slot[i] = nm; return true; break; } else if (i == 8) { return false; } } }
("Band Merch Pin"))
61
                    {
62
                        message[5] = message_repeating[0];
63
                        message[6] = message_repeating[1];
64
                        message[7] = message_repeating[2];
65
                        message[8] = message_repeating[3];
66
                        other.item_got = true;
67
                    }
68
                    else if (other.item_got == true)
69
                    {
70
                        if (message_current == 5 && other.is_talking == true)
71
                        {
72
                            other.is_talking = false;
73
                            audio_play_sound(snd_success, 20, 0);
74
                        }
75
                        else if (message_current > 5)
76
                        {
77
                            other.is_talking = true;
78
                        }
79
                        if (!global.dialogue_open)
80
                            other.npc_flag = 4;
81
                    }
82
                    else
83
                    {
84
                        message[5] = "  (Inventory Full)";
85
                        message[6] = "* Wait... are you telling me you#  have too much stuff to take#  this?";
86
                        message[7] = "* You think the boring stuff you#  have can possibly compare to#  this?!";
87
                        message[8] = "* This is a concert exclusive#  piece of memorabilia!";
88
                        message[9] = "* Come back when you can#  appreciate that, okay bozo?";
89
                        if (message_current == 5 && other.is_talking == true)
90
                        {
91
                            audio_play_sound(snd_fail, 20, 0);
92
                            other.waiter = 0;
93
                            other.npc_flag = 3;
94
                        }
95
                    }
96
                }
97
                break;
98
            case 3:
99
                if (other.item_got == false && scr_item
scr_item

function scr_item(arg0) { nm = arg0; for (var i = 1; i <= 8; i++) { if (global.item_slot[i] == "Nothing") { global.item_slot[i] = nm; return true; break; } else if (i == 8) { return false; } } }
("Band Merch Pin"))
100
                {
101
                    message[0] = "* Oh, have you come to your#  senses?";
102
                    message[1] = "* Fine, the pin is yours.";
103
                    message[2] = "* You better be thankful for that,#  you got that?";
104
                    message[3] = message_repeating[0];
105
                    message[4] = message_repeating[1];
106
                    message[5] = message_repeating[2];
107
                    message[6] = message_repeating[3];
108
                    other.item_got = true;
109
                }
110
                else if (other.item_got == true)
111
                {
112
                    if (message_current == 3 && other.is_talking == true)
113
                    {
114
                        other.is_talking = false;
115
                        audio_play_sound(snd_success, 20, 0);
116
                    }
117
                    else if (message_current > 3)
118
                    {
119
                        other.is_talking = true;
120
                    }
121
                    if (!global.dialogue_open)
122
                        other.npc_flag = 4;
123
                }
124
                else
125
                {
126
                    message[0] = "* Still no space?";
127
                    message[1] = "* This is a concert exclusive#  piece of memorabilia!";
128
                    message[2] = "* Come back when you can#  appreciate that, okay bozo?";
129
                }
130
                break;
131
            case 4:
132
                message[0] = "* This day is the best.";
133
                message[1] = "* I wish I could go to their next#  concert too...";
134
                message[2] = "* Actually. No. That's how you#  get addicted.";
135
                message[3] = "* Guess I'll just have to be#  content here.";
136
                break;
137
        }
138
    }
139
}