Deltarune (Chapter 3) script viewer

← back to main script listing

gml_GlobalScript_scr_raise_party

(view raw script w/o annotations or w/e)
1
function 
scr_raise_party
scr_raise_party

function
scr_raise_party()
{ with (obj_dmgwriter) { if (delaytimer >= 1) killactive = 1; } for (i = 0; i < 3; i++) { if (global.char[i] == 0) continue; var _hltarget = global.char[i]; var _curhp = global.hp[_hltarget]; var _healpower; if (_curhp <= 0) _healpower = -_curhp + 5; else _healpower = 1;
scr_heal(i, _healpower);
with (global.charinstance[i]) { ha = instance_create(x, y, obj_healanim); ha.target = id; dmgwr =
scr_dmgwriter_selfchar();
with (dmgwr) { delay = 8; type = 3; damage = _healpower; } if (global.hp[global.char[myself]] >= global.maxhp[global.char[myself]]) { with (dmgwr) specialmessage = 3; } tu += 1; } } for (i = 0; i < 3; i++) { with (global.charinstance[i]) tu--; } }
()
2
{
3
    with (obj_dmgwriter)
4
    {
5
        if (delaytimer >= 1)
6
            killactive = 1;
7
    }
8
    for (i = 0; i < 3; i++)
9
    {
10
        if (global.char[i] == 0)
11
            continue;
12
        var _hltarget = global.char[i];
13
        var _curhp = global.hp[_hltarget];
14
        var _healpower;
15
        if (_curhp <= 0)
16
            _healpower = -_curhp + 5;
17
        else
18
            _healpower = 1;
19
        
scr_heal
scr_heal

function
scr_heal(arg0, arg1)
{ abovemaxhp = 0; belowzero = 0; hltarget = global.char[arg0]; _curhp = global.hp[hltarget]; if (global.hp[hltarget] <= 0) belowzero = 1; if (global.hp[hltarget] > global.maxhp[hltarget]) abovemaxhp = 1; if (abovemaxhp == 0) { global.hp[hltarget] += arg1; if (global.hp[hltarget] > global.maxhp[hltarget]) global.hp[hltarget] = global.maxhp[hltarget]; } if (belowzero == 1 && global.hp[hltarget] >= 0) { if (global.hp[hltarget] < ceil(global.maxhp[hltarget] / 6)) global.hp[hltarget] = ceil(global.maxhp[hltarget] / 6);
scr_revive(arg0);
} snd_stop(snd_power); snd_play(snd_power); return global.hp[hltarget] - _curhp; }
(i, _healpower);
20
        with (global.charinstance[i])
21
        {
22
            ha = instance_create(x, y, obj_healanim);
23
            ha.target = id;
24
            dmgwr = 
scr_dmgwriter_selfchar
scr_dmgwriter_selfchar

function
scr_dmgwriter_selfchar()
{ return instance_create(x, (y + myheight) - 24 - (tu * 20), obj_dmgwriter); }
();
25
            with (dmgwr)
26
            {
27
                delay = 8;
28
                type = 3;
29
                damage = _healpower;
30
            }
31
            if (global.hp[global.char[myself]] >= global.maxhp[global.char[myself]])
32
            {
33
                with (dmgwr)
34
                    specialmessage = 3;
35
            }
36
            tu += 1;
37
        }
38
    }
39
    for (i = 0; i < 3; i++)
40
    {
41
        with (global.charinstance[i])
42
            tu--;
43
    }
44
}