Deltarune (Chapter 3) script viewer

← back to main script listing

gml_GlobalScript_scr_lines_intersect

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

function
scr_lines_intersect()
{ var ua = 0; var ux = argument[2] - argument[0]; var uy = argument[3] - argument[1]; var vx = argument[6] - argument[4]; var vy = argument[7] - argument[5]; var wx = argument[0] - argument[4]; var wy = argument[1] - argument[5]; var ud = (vy * ux) - (vx * uy); if (ud != 0) { ua = ((vx * wy) - (vy * wx)) / ud; if (argument[8]) { var ub = ((ux * wy) - (uy * wx)) / ud; if (ua < 0 || ua > 1 || ub < 0 || ub > 1) ua = 0; } } return ua; }
()
2
{
3
    var ua = 0;
4
    var ux = argument[2] - argument[0];
5
    var uy = argument[3] - argument[1];
6
    var vx = argument[6] - argument[4];
7
    var vy = argument[7] - argument[5];
8
    var wx = argument[0] - argument[4];
9
    var wy = argument[1] - argument[5];
10
    var ud = (vy * ux) - (vx * uy);
11
    if (ud != 0)
12
    {
13
        ua = ((vx * wy) - (vy * wx)) / ud;
14
        if (argument[8])
15
        {
16
            var ub = ((ux * wy) - (uy * wx)) / ud;
17
            if (ua < 0 || ua > 1 || ub < 0 || ub > 1)
18
                ua = 0;
19
        }
20
    }
21
    return ua;
22
}