Deltarune script viewer

← back to main script listing

gml_GlobalScript_scr_nexthero

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

function scr_nexthero() { moveswapped = 0; prevturn = global.charturn; if (global.charturn == 0) { moveswapped = 1; if (global.charmove[1] == 1 && scr_charcan(1)) global.charturn = 1; else if (global.charmove[2] == 1 && scr_charcan(2)) global.charturn = 2; else scr_endturn(); } if (global.charturn == 1 && moveswapped == 0) { moveswapped = 1; if (scr_charcan(2) && global.acting[1] == 0) global.charturn = 2; else scr_endturn(); } if (global.charturn == 2 && moveswapped == 0) scr_endturn(); if (moveswapped == 1) global.bmenuno = 0; if (global.charturn > 0) { global.temptension[global.charturn] = global.tension; for (i = 0; i < 12; i += 1) tempitem[i][global.charturn] = tempitem[i][prevturn]; } }
()
2
{
3
    moveswapped = 0;
4
    prevturn = global.charturn;
5
    if (global.charturn == 0)
6
    {
7
        moveswapped = 1;
8
        if (global.charmove[1] == 1 && scr_charcan
scr_charcan

function scr_charcan(arg0) { charcan = 1; if (global.hp[global.char[arg0]] <= 0) charcan = 0; if (global.acting[arg0] == 1) charcan = 0; if (global.char[arg0] == 0) charcan = 0; if (global.charmove[arg0] == 0) charcan = 0; if (global.charauto[global.char[arg0]] == 1) charcan = 0; return charcan; }
(1))
9
            global.charturn = 1;
10
        else if (global.charmove[2] == 1 && scr_charcan
scr_charcan

function scr_charcan(arg0) { charcan = 1; if (global.hp[global.char[arg0]] <= 0) charcan = 0; if (global.acting[arg0] == 1) charcan = 0; if (global.char[arg0] == 0) charcan = 0; if (global.charmove[arg0] == 0) charcan = 0; if (global.charauto[global.char[arg0]] == 1) charcan = 0; return charcan; }
(2))
11
            global.charturn = 2;
12
        else
13
            scr_endturn
scr_endturn

function scr_endturn() { for (i = 0; i < 12; i += 1) global.item[i] = tempitem[i][global.charturn]; for (i = 0; i < 12; i += 1) { for (j = 0; j < 3; j += 1) tempitem[i][j] = global.item[i]; } moveswapped = 0; with (obj_writer) instance_destroy(); with (obj_face) instance_destroy(); with (obj_smallface) instance_destroy(); global.attacking = 0; for (i = 0; i < 3; i += 1) { global.monsterattackname[i] = " "; if (global.charauto[global.char[i]] == 1 && global.hp[global.char[i]] > 0) { if (global.monster[2] == 1) global.chartarget[i] = 2; if (global.monster[1] == 1) global.chartarget[i] = 1; if (global.monster[0] == 1) global.chartarget[i] = 0; } if (global.charaction[i] == 1) global.attacking = 1; } __noactors = 1; if (global.acting[0] == 1) __noactors = 0; for (__noactorsi = 0; __noactorsi < 3; __noactorsi++) { if (global.actingsingle[__noactorsi] == 1) __noactors = 0; } if (__noactors == 1) { scr_attackphase(); } else { global.charturn = 3; global.myfight = 3; global.currentactingchar = 0; if (global.acting[0] == 0) scr_nextact(); if (global.chapter == 2 && instance_exists(obj_sweet_enemy) && global.actingsingle[0] == 1 && global.actingsingle[1] == 0 && global.actingsingle[2] == 0) obj_sweet_enemy.simultotal_funny = 1; if (global.acting[0] == 1 && global.actingsimul[0] == 1) scr_act_simul(); } with (obj_battlecontroller) { messagepriority = -1; attackpriority = -1; } }
();
14
    }
15
    if (global.charturn == 1 && moveswapped == 0)
16
    {
17
        moveswapped = 1;
18
        if (scr_charcan
scr_charcan

function scr_charcan(arg0) { charcan = 1; if (global.hp[global.char[arg0]] <= 0) charcan = 0; if (global.acting[arg0] == 1) charcan = 0; if (global.char[arg0] == 0) charcan = 0; if (global.charmove[arg0] == 0) charcan = 0; if (global.charauto[global.char[arg0]] == 1) charcan = 0; return charcan; }
(2) && global.acting[1] == 0)
19
            global.charturn = 2;
20
        else
21
            scr_endturn
scr_endturn

function scr_endturn() { for (i = 0; i < 12; i += 1) global.item[i] = tempitem[i][global.charturn]; for (i = 0; i < 12; i += 1) { for (j = 0; j < 3; j += 1) tempitem[i][j] = global.item[i]; } moveswapped = 0; with (obj_writer) instance_destroy(); with (obj_face) instance_destroy(); with (obj_smallface) instance_destroy(); global.attacking = 0; for (i = 0; i < 3; i += 1) { global.monsterattackname[i] = " "; if (global.charauto[global.char[i]] == 1 && global.hp[global.char[i]] > 0) { if (global.monster[2] == 1) global.chartarget[i] = 2; if (global.monster[1] == 1) global.chartarget[i] = 1; if (global.monster[0] == 1) global.chartarget[i] = 0; } if (global.charaction[i] == 1) global.attacking = 1; } __noactors = 1; if (global.acting[0] == 1) __noactors = 0; for (__noactorsi = 0; __noactorsi < 3; __noactorsi++) { if (global.actingsingle[__noactorsi] == 1) __noactors = 0; } if (__noactors == 1) { scr_attackphase(); } else { global.charturn = 3; global.myfight = 3; global.currentactingchar = 0; if (global.acting[0] == 0) scr_nextact(); if (global.chapter == 2 && instance_exists(obj_sweet_enemy) && global.actingsingle[0] == 1 && global.actingsingle[1] == 0 && global.actingsingle[2] == 0) obj_sweet_enemy.simultotal_funny = 1; if (global.acting[0] == 1 && global.actingsimul[0] == 1) scr_act_simul(); } with (obj_battlecontroller) { messagepriority = -1; attackpriority = -1; } }
();
22
    }
23
    if (global.charturn == 2 && moveswapped == 0)
24
        scr_endturn
scr_endturn

function scr_endturn() { for (i = 0; i < 12; i += 1) global.item[i] = tempitem[i][global.charturn]; for (i = 0; i < 12; i += 1) { for (j = 0; j < 3; j += 1) tempitem[i][j] = global.item[i]; } moveswapped = 0; with (obj_writer) instance_destroy(); with (obj_face) instance_destroy(); with (obj_smallface) instance_destroy(); global.attacking = 0; for (i = 0; i < 3; i += 1) { global.monsterattackname[i] = " "; if (global.charauto[global.char[i]] == 1 && global.hp[global.char[i]] > 0) { if (global.monster[2] == 1) global.chartarget[i] = 2; if (global.monster[1] == 1) global.chartarget[i] = 1; if (global.monster[0] == 1) global.chartarget[i] = 0; } if (global.charaction[i] == 1) global.attacking = 1; } __noactors = 1; if (global.acting[0] == 1) __noactors = 0; for (__noactorsi = 0; __noactorsi < 3; __noactorsi++) { if (global.actingsingle[__noactorsi] == 1) __noactors = 0; } if (__noactors == 1) { scr_attackphase(); } else { global.charturn = 3; global.myfight = 3; global.currentactingchar = 0; if (global.acting[0] == 0) scr_nextact(); if (global.chapter == 2 && instance_exists(obj_sweet_enemy) && global.actingsingle[0] == 1 && global.actingsingle[1] == 0 && global.actingsingle[2] == 0) obj_sweet_enemy.simultotal_funny = 1; if (global.acting[0] == 1 && global.actingsimul[0] == 1) scr_act_simul(); } with (obj_battlecontroller) { messagepriority = -1; attackpriority = -1; } }
();
25
    if (moveswapped == 1)
26
        global.bmenuno = 0;
27
    if (global.charturn > 0)
28
    {
29
        global.temptension[global.charturn] = global.tension;
30
        for (i = 0; i < 12; i += 1)
31
            tempitem[i][global.charturn] = tempitem[i][prevturn];
32
    }
33
}