Deltarune (Chapter 4) 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()
{ var _start = 0; var _end = 3; if (
scr_debug())
{ if (keyboard_check(ord("1"))) { _start = 0; _end = 1; } else if (keyboard_check(ord("2"))) { _start = 1; _end = 2; } else if (keyboard_check(ord("3"))) { _start = 2; _end = 3; } } with (obj_dmgwriter) { if (delaytimer >= 1) killactive = 1; } for (i = _start; i < _end; i++) { if (global.char[i] == 0) continue; var _hltarget = global.char[i]; var _curhp = global.hp[_hltarget]; var _healpower; if (_curhp <= 0) _healpower = -_curhp + round(global.maxhp[_hltarget] / 4); else _healpower = 10;
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 = _start; i < _end; i++) { with (global.charinstance[i]) tu--; } }
()
2
{
3
    var _start = 0;
4
    var _end = 3;
5
    if (
scr_debug
scr_debug

function
scr_debug()
{ if (global.debug == 1) return 1; }
())
6
    {
7
        if (keyboard_check(ord("1")))
8
        {
9
            _start = 0;
10
            _end = 1;
11
        }
12
        else if (keyboard_check(ord("2")))
13
        {
14
            _start = 1;
15
            _end = 2;
16
        }
17
        else if (keyboard_check(ord("3")))
18
        {
19
            _start = 2;
20
            _end = 3;
21
        }
22
    }
23
    with (obj_dmgwriter)
24
    {
25
        if (delaytimer >= 1)
26
            killactive = 1;
27
    }
28
    for (i = _start; i < _end; i++)
29
    {
30
        if (global.char[i] == 0)
31
            continue;
32
        var _hltarget = global.char[i];
33
        var _curhp = global.hp[_hltarget];
34
        var _healpower;
35
        if (_curhp <= 0)
36
            _healpower = -_curhp + round(global.maxhp[_hltarget] / 4);
37
        else
38
            _healpower = 10;
39
        
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);
40
        with (global.charinstance[i])
41
        {
42
            ha = instance_create(x, y, obj_healanim);
43
            ha.target = id;
44
            dmgwr = 
scr_dmgwriter_selfchar
scr_dmgwriter_selfchar

function
scr_dmgwriter_selfchar()
{ return instance_create(x, (y + myheight) - 24 - (tu * 20), obj_dmgwriter); }
();
45
            with (dmgwr)
46
            {
47
                delay = 8;
48
                type = 3;
49
                damage = _healpower;
50
            }
51
            if (global.hp[global.char[myself]] >= global.maxhp[global.char[myself]])
52
            {
53
                with (dmgwr)
54
                    specialmessage = 3;
55
            }
56
            tu += 1;
57
        }
58
    }
59
    for (i = _start; i < _end; i++)
60
    {
61
        with (global.charinstance[i])
62
            tu--;
63
    }
64
}