Deltarune (Chapter 3) script viewer

← back to main script listing

gml_Object_obj_ch3_gachapon_Draw_0

(view raw script w/o annotations or w/e)
1
draw_self();
2
var xx = x + (sprite_width / 2);
3
var yy = y + (sprite_height / 2);
4
var superChance = 5;
5
if (i_ex(obj_numberentry))
6
    betPoints = obj_numberentry.num;
7
var remainingSuperPrize = 5 - (global.flag[1177 got_tenna_tie] + global.flag[1178 got_execbuffet] + global.flag[1179 got_tensionmax] + global.flag[1180 got_revivemint] + global.flag[1181 got_blue_ribbon]);
8
var baseSuperChanceRate = 0.1 + (remainingSuperPrize / 50);
9
var superChanceOldBetBonus = (global.flag[1182 gacha_lastbet] * baseSuperChanceRate * 2) / 100;
10
superChance = max(5, 5 + ((betPoints - 100) * (baseSuperChanceRate + superChanceOldBetBonus)));
11
if (remainingSuperPrize <= 0)
12
    superChance = 0;
13
superChanceBonusDrawAmount = superChance;
14
if (
scr_debug
scr_debug

function
scr_debug()
{ if (global.debug == 1) return 1; }
())
15
{
16
}
17
if (dispense == 1 && !d_ex())
18
{
19
    xstart = x;
20
    ystart = y;
21
    global.interact = 1;
22
    con = 1;
23
    timer = 0;
24
    dispense = 0;
25
}
26
if (con == 1)
27
{
28
    global.interact = 1;
29
    timer++;
30
    if ((timer % 2) == 0)
31
    {
32
        x = xstart + random_range(-4, 4);
33
        y = ystart + random_range(-4, 4);
34
        snd_play_x(snd_noise, 0.6, 0.6 + random(0.4));
35
    }
36
    if (timer >= 30)
37
    {
38
        x = xstart;
39
        y = ystart;
40
        timer = 0;
41
        con = 2;
42
        snd_play_x(snd_closet_impact, 0.6, 1.5);
43
        snd_play_x(snd_locker, 0.6, 0.5);
44
        
scr_shakescreen
scr_shakescreen

function
scr_shakescreen()
{ instance_create(x, y, obj_shake); }
();
45
        gachaBallX = 0;
46
        gachaBallY = 140;
47
        gachaBallXScale = 0;
48
        gachaBallYScale = 0;
49
        gachaAngle = 180;
50
        gachaBallSeparation = 0;
51
        drawGachaBall = 1;
52
        var _t = 15;
53
        
scr_lerpvar
scr_lerpvar

function
scr_lerpvar()
{ if (argument_count < 6) ___lerpvar =
scr_lerpvar_instance(id, argument[0], argument[1], argument[2], argument[3]);
else ___lerpvar =
scr_lerpvar_instance(id, argument[0], argument[1], argument[2], argument[3], argument[4], argument[5]);
return ___lerpvar; } function scr_lerpvar_respect() { if (argument_count < 6) ___lerpvar =
scr_lerpvar_instance(id, argument[0], argument[1], argument[2], argument[3]);
else ___lerpvar =
scr_lerpvar_instance(id, argument[0], argument[1], argument[2], argument[3], argument[4], argument[5]);
___lerpvar.respectglobalinteract = true; return ___lerpvar; }
("gachaAngle", gachaAngle, 0, _t, -1, "out");
54
        
scr_lerpvar
scr_lerpvar

function
scr_lerpvar()
{ if (argument_count < 6) ___lerpvar =
scr_lerpvar_instance(id, argument[0], argument[1], argument[2], argument[3]);
else ___lerpvar =
scr_lerpvar_instance(id, argument[0], argument[1], argument[2], argument[3], argument[4], argument[5]);
return ___lerpvar; } function scr_lerpvar_respect() { if (argument_count < 6) ___lerpvar =
scr_lerpvar_instance(id, argument[0], argument[1], argument[2], argument[3]);
else ___lerpvar =
scr_lerpvar_instance(id, argument[0], argument[1], argument[2], argument[3], argument[4], argument[5]);
___lerpvar.respectglobalinteract = true; return ___lerpvar; }
("gachaBallXScale", 0, 2, _t, -1, "out");
55
        
scr_lerpvar
scr_lerpvar

function
scr_lerpvar()
{ if (argument_count < 6) ___lerpvar =
scr_lerpvar_instance(id, argument[0], argument[1], argument[2], argument[3]);
else ___lerpvar =
scr_lerpvar_instance(id, argument[0], argument[1], argument[2], argument[3], argument[4], argument[5]);
return ___lerpvar; } function scr_lerpvar_respect() { if (argument_count < 6) ___lerpvar =
scr_lerpvar_instance(id, argument[0], argument[1], argument[2], argument[3]);
else ___lerpvar =
scr_lerpvar_instance(id, argument[0], argument[1], argument[2], argument[3], argument[4], argument[5]);
___lerpvar.respectglobalinteract = true; return ___lerpvar; }
("gachaBallYScale", 0, 2, _t, -1, "out");
56
        
scr_lerpvar
scr_lerpvar

function
scr_lerpvar()
{ if (argument_count < 6) ___lerpvar =
scr_lerpvar_instance(id, argument[0], argument[1], argument[2], argument[3]);
else ___lerpvar =
scr_lerpvar_instance(id, argument[0], argument[1], argument[2], argument[3], argument[4], argument[5]);
return ___lerpvar; } function scr_lerpvar_respect() { if (argument_count < 6) ___lerpvar =
scr_lerpvar_instance(id, argument[0], argument[1], argument[2], argument[3]);
else ___lerpvar =
scr_lerpvar_instance(id, argument[0], argument[1], argument[2], argument[3], argument[4], argument[5]);
___lerpvar.respectglobalinteract = true; return ___lerpvar; }
("gachaBallY", gachaBallY, 0, _t, 2, "out");
57
        var myPrize = 25;
58
        selectedPrize = 25;
59
        var doSuperPrize = 0;
60
        var superPrizeCheck = round(random(100));
61
        if (superPrizeCheck <= superChanceBonusDrawAmount)
62
            doSuperPrize = 1;
63
        if (doSuperPrize)
64
        {
65
            for (var i = 0; i < 100; i++)
66
            {
67
                myPrize = irandom_range(20, 24);
68
                if (prizeavailable[myPrize] == 1)
69
                {
70
                    selectedPrize = myPrize;
71
                    break;
72
                }
73
            }
74
            if (prizeavailable[selectedPrize] == 0)
75
                selectedPrize = 25;
76
            snd_play_x(snd_sparkle_gem, 1, 1);
77
            var haveroom = true;
78
            switch (prizeitemtype[myPrize])
79
            {
80
                case "armor":
81
                    haveroom = scr_getarmorspace();
82
                    break;
83
                case "weapon":
84
                    haveroom = scr_getweaponspace();
85
                    break;
86
                case "item":
87
                    haveroom = scr_getinventoryspace() + scr_getpocketspace();
88
                    break;
89
            }
90
            if (haveroom)
91
            {
92
                show_debug_message_concat("global.flag[1182 gacha_lastbet] before reset: ", global.flag[1182 gacha_lastbet]);
93
                global.flag[1182 gacha_lastbet] = 0;
94
                show_debug_message_concat("global.flag[1182 gacha_lastbet] after reset: ", global.flag[1182 gacha_lastbet]);
95
            }
96
        }
97
        else
98
        {
99
            for (var i = 0; i < 100; i++)
100
            {
101
                myPrize = choose(0, 1, 2, 3, 3, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12);
102
                if (prizeavailable[myPrize] == 1)
103
                {
104
                    selectedPrize = myPrize;
105
                    break;
106
                }
107
            }
108
            if (prizeavailable[selectedPrize] == 0)
109
                selectedPrize = 25;
110
            global.flag[1182 gacha_lastbet] += betPoints;
111
        }
112
        
scr_speaker
scr_speaker

function
scr_speaker(arg0)
{ _speaker = arg0; global.typer = 5; if (global.darkzone == 1) global.typer = 6; if (global.fighting == 1) global.typer = 4; global.fc = 0; global.fe = 0; if (_speaker == "silent" && global.darkzone == 0) global.typer = 2; if (_speaker == "silent" && global.darkzone == 1) global.typer = 36; if (_speaker == "balloon" || _speaker == "enemy") global.typer = 50; if (_speaker == "sans") { global.typer = 14; global.fc = 6; } if (_speaker == "undyne" || _speaker == "und") { global.typer = 17; global.fc = 9; } if (_speaker == "temmie" || _speaker == "tem") global.typer = 21; if (_speaker == "jevil") global.typer = 35; if (_speaker == "catti") global.fc = 13; if (_speaker == "jockington" || _speaker == "joc") global.fc = 14; if (_speaker == "catty" || _speaker == "caddy") global.fc = 16; if (_speaker == "bratty" || _speaker == "bra") global.fc = 17; if (_speaker == "rouxls" || _speaker == "rou") global.fc = 18; if (_speaker == "burgerpants" || _speaker == "bur") global.fc = 19; if (_speaker == "spamton") { if (global.fighting == 0) global.typer = 66; else global.typer = 68; } if (_speaker == "sneo") global.typer = 67; if (_speaker == "tenna") { global.typer = 80; if (global.fighting == 1) global.typer = 81; } if (_speaker == "susie" || _speaker == "sus") { global.fc = 1; global.typer = 10; if (global.darkzone == 1) { global.typer = 30; if (global.fighting == 1) global.typer = 47; } } if (_speaker == "ralsei" || _speaker == "ral") { global.fc = 2; global.typer = 31; if (global.fighting == 1) global.typer = 45; if (global.flag[30 ralsei_hat_state] == 1) global.typer = 6; } if (_speaker == "noelle" || _speaker == "noe") { global.fc = 3; if (global.darkzone == 0) global.typer = 12; else global.typer = 56; if (global.fighting == 1) global.typer = 59; } if (_speaker == "toriel" || _speaker == "tor") { global.fc = 4; global.typer = 7; } if (_speaker == "asgore" || _speaker == "asg") { global.fc = 10; global.typer = 18; } if (_speaker == "king" || _speaker == "kin") { global.fc = 20; global.typer = 33; ...
("noone");
113
        var mystring;
114
        if (prizeitemtype[selectedPrize] != "none")
115
        {
116
            mystring = 
scr_itemget_anytype_text
scr_itemget_anytype_text

function
scr_itemget_anytype_text()
{ noroom = 0;
scr_itemget_anytype(argument[0], argument[1]);
var itemgetstring = ""; itemname = "NULL"; itemtypename = "NULL"; var _itemtype = argument1; var _itemid = argument0; if (_itemtype == "armor") {
scr_armorinfo(_itemid);
itemname = armornametemp; itemtypename = stringsetloc(
ARMORs
"ARMORs", "scr_itemget_anytype_text_slash_scr_itemget_anytype_text_gml_22_0"
);
} else if (_itemtype == "weapon") {
scr_weaponinfo(_itemid);
itemname = weaponnametemp; itemtypename = stringsetloc(
WEAPONs
"WEAPONs", "scr_itemget_anytype_text_slash_scr_itemget_anytype_text_gml_29_0"
);
} if (_itemtype == "item") {
scr_iteminfo(_itemid);
itemname = itemnameb; itemtypename = stringsetloc(
ITEMs
"ITEMs", "scr_itemget_anytype_text_slash_scr_itemget_anytype_text_gml_36_0"
);
if (_pocketed) itemtypename = stringsetloc(
STORAGE
"STORAGE", "scr_itemget_anytype_text_slash_scr_itemget_anytype_text_gml_38_0"
);
} if (_itemtype == "key") {
scr_keyiteminfo(_itemid);
itemname = tempkeyitemname; itemtypename = stringsetloc(
KEY ITEMs
"KEY ITEMs", "scr_itemget_anytype_text_slash_scr_itemget_anytype_text_gml_44_0"
);
} if (_itemtype == "money") { noroom = 0; global.gold += _itemid; itemtypename = stringsetloc(
MONEY HOLE
"MONEY HOLE", "scr_itemget_anytype_text_slash_scr_itemget_anytype_text_gml_51_0"
);
itemname = string(_itemid) + stringsetloc(
Dark Dollars
" Dark Dollars", "scr_itemget_anytype_text_slash_scr_itemget_anytype_text_gml_52_0"
);
} if (_itemtype == "points") { noroom = 0; global.flag[1044 points] += _itemid; if (global.flag[1044 points] > 9999) global.flag[1044 points] = 9999; itemtypename = stringsetloc(
SCORE
"SCORE", "scr_itemget_anytype_text_slash_scr_itemget_anytype_text_gml_63_0"
);
itemname = string(_itemid) + stringsetloc(
POINTs
" POINTs", "scr_itemget_anytype_text_slash_scr_itemget_anytype_text_gml_64_0"
);
} if (noroom == 0) itemgetstring = stringsetsubloc("* (\\cY~1\\cW was added to your \\cY~2\\cW.)", itemname, itemtypename, "obj_treasure_room_slash_Other_10_gml_76_0"); else itemgetstring = stringsetsubloc("* (You have too many \\cY~2\\cW to take \\cY~1\\c0.)", itemname, itemtypename, "obj_treasure_room_slash_Other_10_gml_83_0"); if (argument_count >= 3) itemgetstring += argument[2]; else itemgetstring += "/%"; return itemgetstring; }
(prizeitemid[selectedPrize], prizeitemtype[selectedPrize]);
117
        }
118
        else
119
        {
120
            mystring = "";
121
            noroom = 0;
122
        }
123
        if (noroom == 0)
124
        {
125
            if (prizeflag[selectedPrize] > 0)
126
                global.flag[prizeflag[selectedPrize]] = 1;
127
            prizeavailable[selectedPrize] = 0;
128
            if (prizespecialmessage[selectedPrize] > 0)
129
            {
130
                if (prizespecialmessage[selectedPrize] == 1)
131
                {
132
                    snd_play_x(snd_reverse_splat, 1, 1);
133
                    
scr_speaker
scr_speaker

function
scr_speaker(arg0)
{ _speaker = arg0; global.typer = 5; if (global.darkzone == 1) global.typer = 6; if (global.fighting == 1) global.typer = 4; global.fc = 0; global.fe = 0; if (_speaker == "silent" && global.darkzone == 0) global.typer = 2; if (_speaker == "silent" && global.darkzone == 1) global.typer = 36; if (_speaker == "balloon" || _speaker == "enemy") global.typer = 50; if (_speaker == "sans") { global.typer = 14; global.fc = 6; } if (_speaker == "undyne" || _speaker == "und") { global.typer = 17; global.fc = 9; } if (_speaker == "temmie" || _speaker == "tem") global.typer = 21; if (_speaker == "jevil") global.typer = 35; if (_speaker == "catti") global.fc = 13; if (_speaker == "jockington" || _speaker == "joc") global.fc = 14; if (_speaker == "catty" || _speaker == "caddy") global.fc = 16; if (_speaker == "bratty" || _speaker == "bra") global.fc = 17; if (_speaker == "rouxls" || _speaker == "rou") global.fc = 18; if (_speaker == "burgerpants" || _speaker == "bur") global.fc = 19; if (_speaker == "spamton") { if (global.fighting == 0) global.typer = 66; else global.typer = 68; } if (_speaker == "sneo") global.typer = 67; if (_speaker == "tenna") { global.typer = 80; if (global.fighting == 1) global.typer = 81; } if (_speaker == "susie" || _speaker == "sus") { global.fc = 1; global.typer = 10; if (global.darkzone == 1) { global.typer = 30; if (global.fighting == 1) global.typer = 47; } } if (_speaker == "ralsei" || _speaker == "ral") { global.fc = 2; global.typer = 31; if (global.fighting == 1) global.typer = 45; if (global.flag[30 ralsei_hat_state] == 1) global.typer = 6; } if (_speaker == "noelle" || _speaker == "noe") { global.fc = 3; if (global.darkzone == 0) global.typer = 12; else global.typer = 56; if (global.fighting == 1) global.typer = 59; } if (_speaker == "toriel" || _speaker == "tor") { global.fc = 4; global.typer = 7; } if (_speaker == "asgore" || _speaker == "asg") { global.fc = 10; global.typer = 18; } if (_speaker == "king" || _speaker == "kin") { global.fc = 20; global.typer = 33; ...
("lancer");
134
                    global.fe = 0;
135
                    msgsetloc(0, 
* Ho ho ho,Delay 11 I'm an item!Wait for input
"* Ho ho ho^1, I'm an item!/", "obj_ch3_gachapon_slash_Draw_0_gml_226_0"
);
136
                    msgnext(mystring + "/%");
137
                }
138
                if (prizespecialmessage[selectedPrize] == 2)
139
                {
140
                    snd_play_x(snd_lancerwhistle, 1, 1);
141
                    msgsetloc(0, 
* You received a FORTUNE...Wait for input
"* You received a FORTUNE.../", "obj_ch3_gachapon_slash_Draw_0_gml_233_0"
);
142
                    fortunecheck = floor(random(12));
143
                    var fortunestring = stringsetloc(
* ... but it was blank!Wait for inputClose Message
"* ... but it was blank!/%", "obj_ch3_gachapon_slash_Draw_0_gml_237_0"
);
144
                    switch (fortunecheck)
145
                    {
146
                        case 0:
147
                            msgnextloc(
* (Looks like a dog slobbered on it)Wait for inputClose Message
"* (Looks like a dog slobbered on it)/%", "obj_ch3_gachapon_slash_Draw_0_gml_242_0"
);
148
                            break;
149
                        case 1:
150
                            msgnextloc(
* (You'll croak before you can find the X!Delay 11 Signed,Delay 11 the Mad Croaker.)Wait for inputClose Message
"* (You'll croak before you can find the X^1! Signed^1, the Mad Croaker.)/%", "obj_ch3_gachapon_slash_Draw_0_gml_245_0"
);
151
                            break;
152
                        case 2:
153
                            msgnextloc(
* (Mumble...Delay 11 mumble...Delay 11 Two puzzles are connected...)Wait for inputClose Message
"* (Mumble..^1. mumble..^1. Two puzzles are connected...)/%", "obj_ch3_gachapon_slash_Draw_0_gml_248_0"
);
154
                            break;
155
                        case 3:
156
                            msgnextloc(
* (It's good you're spending points on this. They are good for anything else.)Wait for inputClose Message
"* (It's good you're spending points on this. They are good for anything else.)/%", "obj_ch3_gachapon_slash_Draw_0_gml_251_0"
);
157
                            break;
158
                        case 4:
159
                            msgnextloc(
* (The aqua spirits trapped in the coolers are beautiful,Delay 11 and best of all,Delay 11 recyclable.)Wait for inputClose Message
"* (The aqua spirits trapped in the coolers are beautiful^1, and best of all^1, recyclable.)/%", "obj_ch3_gachapon_slash_Draw_0_gml_254_0"
);
160
                            break;
161
                        case 5:
162
                            msgnextloc(
* (Don't let your guard down. That chair is going to kick your ass!)Wait for inputClose Message
"* (Don't let your guard down. That chair is going to kick your ass!)/%", "obj_ch3_gachapon_slash_Draw_0_gml_257_0"
);
163
                            break;
164
                        case 6:
165
                            msgnextloc(
* (Sometimes you should take the spotlight if it heads your way. Don't be a coward!)Wait for inputClose Message
"* (Sometimes you should take the spotlight if it heads your way. Don't be a coward!)/%", "obj_ch3_gachapon_slash_Draw_0_gml_260_0"
);
166
                            break;
167
                        case 7:
168
                            msgnextloc(
* (These are the ranks,Delay 11 from lowest to highest...)Wait for input
"* (These are the ranks^1, from lowest to highest...)/", "obj_ch3_gachapon_slash_Draw_0_gml_263_0"
);
169
                            msgnextloc(
* (C,Delay 11B,Delay 11A,Delay 11 S,Delay 11 and of course T,Delay 11 for TV.)Wait for input
"* (C^1,B^1,A^1, S^1, and of course T^1, for TV.)/", "obj_ch3_gachapon_slash_Draw_0_gml_264_0"
);
170
                            msgnextloc(
* (T is just for bragging rights,Delay 11 so don't sweat it.)Wait for input
"* (T is just for bragging rights^1, so don't sweat it.)/", "obj_ch3_gachapon_slash_Draw_0_gml_265_0"
);
171
                            msgnextloc(
* (Anything lower than "C" is just asking for it...!)Wait for inputClose Message
"* (Anything lower than \"C\" is just asking for it...!)/%", "obj_ch3_gachapon_slash_Draw_0_gml_266_0"
);
172
                            break;
173
                        case 8:
174
                            msgnextloc(
* (There are no weapons in the GAME. Kids and Adults can enjoy a like!)Wait for inputClose Message
"* (There are no weapons in the GAME. Kids and Adults can enjoy a like!)/%", "obj_ch3_gachapon_slash_Draw_0_gml_269_0"
);
175
                            break;
176
                        case 9:
177
                            msgnextloc(
* (Kris felt a feeling of deja vu.)Wait for input
"* (Kris felt a feeling of deja vu.)/", "obj_ch3_gachapon_slash_Draw_0_gml_272_0"
);
178
                            msgnextloc(
* (...Delay 11 however,Delay 11 the handwriting was illegible!)Wait for input
"* (..^1. however^1, the handwriting was illegible!)/", "obj_ch3_gachapon_slash_Draw_0_gml_273_0"
);
179
                            msgnextloc(
* (Kris felt a feeling of deja vu.)Wait for inputClose Message
"* (Kris felt a feeling of deja vu.)/%", "obj_ch3_gachapon_slash_Draw_0_gml_274_0"
);
180
                            break;
181
                        case 10:
182
                            msgnextloc(
* (A musical island postcard from the FLYING ACES.)Wait for input
"* (A musical island postcard from the FLYING ACES.)/", "obj_ch3_gachapon_slash_Draw_0_gml_277_0"
);
183
                            msgnextloc(
* (It's encouraging you to visit...Delay 11 but the music gets old fast.)Wait for inputClose Message
"* (It's encouraging you to visit..^1. but the music gets old fast.)/%", "obj_ch3_gachapon_slash_Draw_0_gml_278_0"
);
184
                            break;
185
                        case 11:
186
                            msgnextloc(
* (...Delay 11 huh? There was some sort of triangle inside...)Wait for input
"* (..^1. huh? There was some sort of triangle inside...)/", "obj_ch3_gachapon_slash_Draw_0_gml_281_0"
);
187
                            msgnextloc(
* (Kris returned it to the machine.)Wait for inputClose Message
"* (Kris returned it to the machine.)/%", "obj_ch3_gachapon_slash_Draw_0_gml_282_0"
);
188
                            break;
189
                        default:
190
                            msgnextloc(
* ... but it was blank!Wait for inputClose Message
"* ... but it was blank!/%", "obj_ch3_gachapon_slash_Draw_0_gml_285_0"
);
191
                            break;
192
                    }
193
                }
194
                if (prizespecialmessage[selectedPrize] == 3)
195
                {
196
                    
scr_speaker
scr_speaker

function
scr_speaker(arg0)
{ _speaker = arg0; global.typer = 5; if (global.darkzone == 1) global.typer = 6; if (global.fighting == 1) global.typer = 4; global.fc = 0; global.fe = 0; if (_speaker == "silent" && global.darkzone == 0) global.typer = 2; if (_speaker == "silent" && global.darkzone == 1) global.typer = 36; if (_speaker == "balloon" || _speaker == "enemy") global.typer = 50; if (_speaker == "sans") { global.typer = 14; global.fc = 6; } if (_speaker == "undyne" || _speaker == "und") { global.typer = 17; global.fc = 9; } if (_speaker == "temmie" || _speaker == "tem") global.typer = 21; if (_speaker == "jevil") global.typer = 35; if (_speaker == "catti") global.fc = 13; if (_speaker == "jockington" || _speaker == "joc") global.fc = 14; if (_speaker == "catty" || _speaker == "caddy") global.fc = 16; if (_speaker == "bratty" || _speaker == "bra") global.fc = 17; if (_speaker == "rouxls" || _speaker == "rou") global.fc = 18; if (_speaker == "burgerpants" || _speaker == "bur") global.fc = 19; if (_speaker == "spamton") { if (global.fighting == 0) global.typer = 66; else global.typer = 68; } if (_speaker == "sneo") global.typer = 67; if (_speaker == "tenna") { global.typer = 80; if (global.fighting == 1) global.typer = 81; } if (_speaker == "susie" || _speaker == "sus") { global.fc = 1; global.typer = 10; if (global.darkzone == 1) { global.typer = 30; if (global.fighting == 1) global.typer = 47; } } if (_speaker == "ralsei" || _speaker == "ral") { global.fc = 2; global.typer = 31; if (global.fighting == 1) global.typer = 45; if (global.flag[30 ralsei_hat_state] == 1) global.typer = 6; } if (_speaker == "noelle" || _speaker == "noe") { global.fc = 3; if (global.darkzone == 0) global.typer = 12; else global.typer = 56; if (global.fighting == 1) global.typer = 59; } if (_speaker == "toriel" || _speaker == "tor") { global.fc = 4; global.typer = 7; } if (_speaker == "asgore" || _speaker == "asg") { global.fc = 10; global.typer = 18; } if (_speaker == "king" || _speaker == "kin") { global.fc = 20; global.typer = 33; ...
("no_name");
197
                    msgsetloc(0, 
* (You got a GOLDEN TENNA STATUE!)Wait for input
"* (You got a GOLDEN TENNA STATUE!)/", "obj_ch3_gachapon_slash_Draw_0_gml_293_0"
);
198
                    
scr_anyface_next
scr_anyface_next

function
scr_anyface_next(arg0, arg1)
{ global.msgno++;
scr_anyface(arg0, global.msgno, arg1);
}
("susie", 0);
199
                    msgnextloc(
Face 2* Heh,Delay 11 anyone call dibs?Wait for input
"\\E2* Heh^1, anyone call dibs?/", "obj_ch3_gachapon_slash_Draw_0_gml_295_0"
);
200
                    
scr_anyface_next
scr_anyface_next

function
scr_anyface_next(arg0, arg1)
{ global.msgno++;
scr_anyface(arg0, global.msgno, arg1);
}
("ralsei", 0);
201
                    msgnextloc(
Face J* Um...Wait for input
"\\EJ* Um.../", "obj_ch3_gachapon_slash_Draw_0_gml_297_0"
);
202
                    
scr_anyface_next
scr_anyface_next

function
scr_anyface_next(arg0, arg1)
{ global.msgno++;
scr_anyface(arg0, global.msgno, arg1);
}
("no_name", 0);
203
                    msgnextloc(
* (Guess it can go in your room...?)Wait for inputClose Message
"* (Guess it can go in your room...?)/%", "obj_ch3_gachapon_slash_Draw_0_gml_299_0"
);
204
                }
205
                if (prizespecialmessage[selectedPrize] == 4)
206
                {
207
                    
scr_speaker
scr_speaker

function
scr_speaker(arg0)
{ _speaker = arg0; global.typer = 5; if (global.darkzone == 1) global.typer = 6; if (global.fighting == 1) global.typer = 4; global.fc = 0; global.fe = 0; if (_speaker == "silent" && global.darkzone == 0) global.typer = 2; if (_speaker == "silent" && global.darkzone == 1) global.typer = 36; if (_speaker == "balloon" || _speaker == "enemy") global.typer = 50; if (_speaker == "sans") { global.typer = 14; global.fc = 6; } if (_speaker == "undyne" || _speaker == "und") { global.typer = 17; global.fc = 9; } if (_speaker == "temmie" || _speaker == "tem") global.typer = 21; if (_speaker == "jevil") global.typer = 35; if (_speaker == "catti") global.fc = 13; if (_speaker == "jockington" || _speaker == "joc") global.fc = 14; if (_speaker == "catty" || _speaker == "caddy") global.fc = 16; if (_speaker == "bratty" || _speaker == "bra") global.fc = 17; if (_speaker == "rouxls" || _speaker == "rou") global.fc = 18; if (_speaker == "burgerpants" || _speaker == "bur") global.fc = 19; if (_speaker == "spamton") { if (global.fighting == 0) global.typer = 66; else global.typer = 68; } if (_speaker == "sneo") global.typer = 67; if (_speaker == "tenna") { global.typer = 80; if (global.fighting == 1) global.typer = 81; } if (_speaker == "susie" || _speaker == "sus") { global.fc = 1; global.typer = 10; if (global.darkzone == 1) { global.typer = 30; if (global.fighting == 1) global.typer = 47; } } if (_speaker == "ralsei" || _speaker == "ral") { global.fc = 2; global.typer = 31; if (global.fighting == 1) global.typer = 45; if (global.flag[30 ralsei_hat_state] == 1) global.typer = 6; } if (_speaker == "noelle" || _speaker == "noe") { global.fc = 3; if (global.darkzone == 0) global.typer = 12; else global.typer = 56; if (global.fighting == 1) global.typer = 59; } if (_speaker == "toriel" || _speaker == "tor") { global.fc = 4; global.typer = 7; } if (_speaker == "asgore" || _speaker == "asg") { global.fc = 10; global.typer = 18; } if (_speaker == "king" || _speaker == "kin") { global.fc = 20; global.typer = 33; ...
("no_name");
208
                    msgsetloc(0, 
* (There's something in this white capsule!)Wait for input
"* (There's something in this white capsule!)/", "obj_ch3_gachapon_slash_Draw_0_gml_305_0"
);
209
                    msgnextloc(
* (It's fuzzy...)Wait for input
"* (It's fuzzy...)/", "obj_ch3_gachapon_slash_Draw_0_gml_306_0"
);
210
                    msgnextloc(
* (It's fluffy...)Wait for input
"* (It's fluffy...)/", "obj_ch3_gachapon_slash_Draw_0_gml_307_0"
);
211
                    msgnextloc(
* (...Delay 11 did you get an item or not?)Wait for inputClose Message
"* (..^1. did you get an item or not?)/%", "obj_ch3_gachapon_slash_Draw_0_gml_308_0"
);
212
                }
213
            }
214
            else
215
            {
216
                snd_play(snd_item);
217
                snd_play(snd_equip);
218
                msgset(0, mystring + "/%");
219
            }
220
        }
221
        else
222
        {
223
            global.flag[1182 gacha_lastbet] -= betPoints;
224
            if (global.flag[1182 gacha_lastbet] < 0)
225
                global.flag[1182 gacha_lastbet] = 0;
226
            global.flag[1044 points] += 100;
227
            if (global.flag[1044 points] > 9999)
228
                global.flag[1044 points] = 9999;
229
            mystring = 
scr_itemget_anytype_text
scr_itemget_anytype_text

function
scr_itemget_anytype_text()
{ noroom = 0;
scr_itemget_anytype(argument[0], argument[1]);
var itemgetstring = ""; itemname = "NULL"; itemtypename = "NULL"; var _itemtype = argument1; var _itemid = argument0; if (_itemtype == "armor") {
scr_armorinfo(_itemid);
itemname = armornametemp; itemtypename = stringsetloc(
ARMORs
"ARMORs", "scr_itemget_anytype_text_slash_scr_itemget_anytype_text_gml_22_0"
);
} else if (_itemtype == "weapon") {
scr_weaponinfo(_itemid);
itemname = weaponnametemp; itemtypename = stringsetloc(
WEAPONs
"WEAPONs", "scr_itemget_anytype_text_slash_scr_itemget_anytype_text_gml_29_0"
);
} if (_itemtype == "item") {
scr_iteminfo(_itemid);
itemname = itemnameb; itemtypename = stringsetloc(
ITEMs
"ITEMs", "scr_itemget_anytype_text_slash_scr_itemget_anytype_text_gml_36_0"
);
if (_pocketed) itemtypename = stringsetloc(
STORAGE
"STORAGE", "scr_itemget_anytype_text_slash_scr_itemget_anytype_text_gml_38_0"
);
} if (_itemtype == "key") {
scr_keyiteminfo(_itemid);
itemname = tempkeyitemname; itemtypename = stringsetloc(
KEY ITEMs
"KEY ITEMs", "scr_itemget_anytype_text_slash_scr_itemget_anytype_text_gml_44_0"
);
} if (_itemtype == "money") { noroom = 0; global.gold += _itemid; itemtypename = stringsetloc(
MONEY HOLE
"MONEY HOLE", "scr_itemget_anytype_text_slash_scr_itemget_anytype_text_gml_51_0"
);
itemname = string(_itemid) + stringsetloc(
Dark Dollars
" Dark Dollars", "scr_itemget_anytype_text_slash_scr_itemget_anytype_text_gml_52_0"
);
} if (_itemtype == "points") { noroom = 0; global.flag[1044 points] += _itemid; if (global.flag[1044 points] > 9999) global.flag[1044 points] = 9999; itemtypename = stringsetloc(
SCORE
"SCORE", "scr_itemget_anytype_text_slash_scr_itemget_anytype_text_gml_63_0"
);
itemname = string(_itemid) + stringsetloc(
POINTs
" POINTs", "scr_itemget_anytype_text_slash_scr_itemget_anytype_text_gml_64_0"
);
} if (noroom == 0) itemgetstring = stringsetsubloc("* (\\cY~1\\cW was added to your \\cY~2\\cW.)", itemname, itemtypename, "obj_treasure_room_slash_Other_10_gml_76_0"); else itemgetstring = stringsetsubloc("* (You have too many \\cY~2\\cW to take \\cY~1\\c0.)", itemname, itemtypename, "obj_treasure_room_slash_Other_10_gml_83_0"); if (argument_count >= 3) itemgetstring += argument[2]; else itemgetstring += "/%"; return itemgetstring; }
(prizeitemid[selectedPrize], prizeitemtype[selectedPrize], "/");
230
            msgset(0, mystring);
231
            msgnextloc(
* (As a consolation,Delay 11 you received 100 POINTs.)Wait for inputClose Message
"* (As a consolation^1, you received 100 POINTs.)/%", "obj_ch3_gachapon_slash_Draw_0_gml_327_0"
);
232
        }
233
    }
234
}
235
if (con == 2)
236
{
237
    timer++;
238
    if (timer == 15)
239
    {
240
        with (obj_lerpvar)
241
            instance_destroy();
242
        gachaBallX = 0;
243
        gachaBallY = 0;
244
        gachaBallXScale = 2;
245
        gachaBallYScale = 2;
246
        gachaAngle = 0;
247
    }
248
    if ((timer >= 16 && timer < 60 && button1_p()) || button2_p())
249
        timer = 60;
250
    if (timer == 60)
251
    {
252
        snd_play_x(snd_punchweak, 1, 0.8);
253
        snd_play_x(snd_punchheavythunder, 0.4, 1.3);
254
        if (prizeballcolor[selectedPrize] == c_blue)
255
            snd_play_x(snd_splat, 1, 0.8);
256
        if (prizeballcolor[selectedPrize] == c_yellow)
257
        {
258
            snd_play_x(snd_punchheavythunder, 1, 0.7);
259
            snd_play_x(snd_sparkle_glock, 1, 0.4);
260
        }
261
        if (prizeballcolor[selectedPrize] == c_green)
262
            snd_play_x(snd_pacify, 1, 0.7);
263
        timer = 0;
264
        
scr_lerpvar
scr_lerpvar

function
scr_lerpvar()
{ if (argument_count < 6) ___lerpvar =
scr_lerpvar_instance(id, argument[0], argument[1], argument[2], argument[3]);
else ___lerpvar =
scr_lerpvar_instance(id, argument[0], argument[1], argument[2], argument[3], argument[4], argument[5]);
return ___lerpvar; } function scr_lerpvar_respect() { if (argument_count < 6) ___lerpvar =
scr_lerpvar_instance(id, argument[0], argument[1], argument[2], argument[3]);
else ___lerpvar =
scr_lerpvar_instance(id, argument[0], argument[1], argument[2], argument[3], argument[4], argument[5]);
___lerpvar.respectglobalinteract = true; return ___lerpvar; }
("gachaBallSeparation", 0, 1, 20, 2, "out");
265
        con = 3;
266
    }
267
}
268
if (con == 3)
269
{
270
    timer++;
271
    if (timer >= 20 && !d_ex())
272
    {
273
        d = d_make();
274
        d.side = 1;
275
        d.stay = 10;
276
        con = 4;
277
    }
278
}
279
if (con == 4 && !d_ex())
280
{
281
    
scr_lerpvar
scr_lerpvar

function
scr_lerpvar()
{ if (argument_count < 6) ___lerpvar =
scr_lerpvar_instance(id, argument[0], argument[1], argument[2], argument[3]);
else ___lerpvar =
scr_lerpvar_instance(id, argument[0], argument[1], argument[2], argument[3], argument[4], argument[5]);
return ___lerpvar; } function scr_lerpvar_respect() { if (argument_count < 6) ___lerpvar =
scr_lerpvar_instance(id, argument[0], argument[1], argument[2], argument[3]);
else ___lerpvar =
scr_lerpvar_instance(id, argument[0], argument[1], argument[2], argument[3], argument[4], argument[5]);
___lerpvar.respectglobalinteract = true; return ___lerpvar; }
("gachaBallYScale", 2, 6, 10, 2, "in");
282
    
scr_lerpvar
scr_lerpvar

function
scr_lerpvar()
{ if (argument_count < 6) ___lerpvar =
scr_lerpvar_instance(id, argument[0], argument[1], argument[2], argument[3]);
else ___lerpvar =
scr_lerpvar_instance(id, argument[0], argument[1], argument[2], argument[3], argument[4], argument[5]);
return ___lerpvar; } function scr_lerpvar_respect() { if (argument_count < 6) ___lerpvar =
scr_lerpvar_instance(id, argument[0], argument[1], argument[2], argument[3]);
else ___lerpvar =
scr_lerpvar_instance(id, argument[0], argument[1], argument[2], argument[3], argument[4], argument[5]);
___lerpvar.respectglobalinteract = true; return ___lerpvar; }
("gachaBallXScale", 2, 0, 10, 2, "in");
283
    
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);
}
("drawGachaBall", 0, 11);
284
    con = 0;
285
    if (room == room_dw_ranking_b)
286
    {
287
        if (global.flag[1044 points] >= 100)
288
        {
289
            with (obj_room_ranking_b)
290
                show_vending_prompt();
291
        }
292
        else
293
        {
294
            with (obj_room_ranking_b)
295
                finish_gacha_event();
296
        }
297
    }
298
    else
299
    {
300
        global.interact = 0;
301
        global.facing = 0;
302
    }
303
}
304
if (drawGachaBall)
305
{
306
    siner++;
307
    var prizeBlend = merge_color(c_black, c_white, gachaBallSeparation);
308
    var ballAlpha = lerp(1, 0, gachaBallSeparation);
309
    var floaty = sin(siner / 8) * 4;
310
    var bx = gachaBallX + xx;
311
    var by = gachaBallY + yy + floaty;
312
    var ballsep = lerp(0, 80, gachaBallSeparation);
313
    myballcolor = prizeballcolor[selectedPrize];
314
    if (myballcolor == c_yellow)
315
        myballcolor = make_color_hsv(110 + (sin(siner / 3) * 8), 255, 255);
316
    draw_sprite_ext(prizesprite[selectedPrize], prizeimage[selectedPrize], bx, by, gachaBallXScale, gachaBallYScale, gachaAngle, prizeBlend, 1);
317
    draw_set_blend_mode(bm_add);
318
    draw_sprite_ext(spr_dw_tv_gachaball_colorless, 1, bx + ballsep, by + ballsep, gachaBallXScale, gachaBallYScale, gachaAngle, myballcolor, ballAlpha);
319
    draw_sprite_ext(spr_dw_tv_gachaball_colorless, 0, bx - ballsep, by - ballsep, gachaBallXScale, gachaBallYScale, gachaAngle, image_blend, ballAlpha);
320
    draw_set_blend_mode(bm_normal);
321
    if (gachaBallSeparation >= 1)
322
    {
323
        if ((siner % 4) == 0)
324
        {
325
            var sparklemarker = 
scr_marker
scr_marker

function
scr_marker(arg0, arg1, arg2)
{ thismarker = instance_create(arg0, arg1, obj_marker); with (thismarker) { sprite_index = arg2; image_speed = 0; } return thismarker; }
(bx + random_range(-30, 30), by + random_range(-30, 30), spr_board_sparkle);
326
            sparklemarker.gravity = 0.2;
327
            sparklemarker.image_speed = 0.1 + random(0.15);
328
            
scr_lerpvar_instance
scr_lerpvar_instance

function
scr_lerpvar_instance()
{ __lerpvar = instance_create(0, 0, obj_lerpvar); __lerpvar.target = argument[0]; __lerpvar.varname = argument[1]; __lerpvar.pointa = argument[2]; __lerpvar.pointb = argument[3]; __lerpvar.maxtime = argument[4]; if (argument_count >= 6) __lerpvar.easetype = argument[5]; if (argument_count >= 7) __lerpvar.easeinout = argument[6]; return __lerpvar; } function scr_lerp_var_instance() { if (argument_count >= 6)
scr_lerpvar_instance(argument0, argument1, argument2, argument3, argument4, argument5);
else if (argument_count >= 7)
scr_lerpvar_instance(argument0, argument1, argument2, argument3, argument4, argument5, argument6);
else
scr_lerpvar_instance(argument0, argument1, argument2, argument3, argument4);
} function scr_lerp_instance_var() { if (argument_count >= 6)
scr_lerpvar_instance(argument0, argument1, argument2, argument3, argument4, argument5);
else if (argument_count >= 7)
scr_lerpvar_instance(argument0, argument1, argument2, argument3, argument4, argument5, argument6);
else
scr_lerpvar_instance(argument0, argument1, argument2, argument3, argument4);
}
(sparklemarker, "image_alpha", 3, 0, 30, 2, "out");
329
            
scr_doom
scr_doom

function
scr_doom(arg0, arg1)
{ with (instance_create_depth(0, 0, 0, obj_doom)) { alarm[0] target = arg0; } }
(sparklemarker, 30);
330
        }
331
    }
332
}