Deltarune (Chapter 4) script viewer

← back to main script listing

gml_GlobalScript_scr_raise

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

function
scr_raise(arg0, arg1 = 0.25, arg2 = 10)
{ with (obj_dmgwriter) { if (delaytimer >= 1) killactive = 1; } if (global.char[arg0] == 0) exit; var _hltarget = global.char[arg0]; var _curhp = global.hp[_hltarget]; var _healpower; if (_curhp <= 0) _healpower = -_curhp + (global.maxhp[global.char[myself]] * arg1); else _healpower = arg2;
scr_heal(arg0, _healpower);
with (global.charinstance[arg0]) { 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; } with (global.charinstance[arg0]) tu--; }
(arg0, arg1 = 0.25, arg2 = 10)
2
{
3
    with (obj_dmgwriter)
4
    {
5
        if (delaytimer >= 1)
6
            killactive = 1;
7
    }
8
    if (global.char[arg0] == 0)
9
        exit;
10
    var _hltarget = global.char[arg0];
11
    var _curhp = global.hp[_hltarget];
12
    var _healpower;
13
    if (_curhp <= 0)
14
        _healpower = -_curhp + (global.maxhp[global.char[myself]] * arg1);
15
    else
16
        _healpower = arg2;
17
    
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; }
(arg0, _healpower);
18
    with (global.charinstance[arg0])
19
    {
20
        ha = instance_create(x, y, obj_healanim);
21
        ha.target = id;
22
        dmgwr = 
scr_dmgwriter_selfchar
scr_dmgwriter_selfchar

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