Undertale Yellow script viewer

← back to main script listing

gml_GlobalScript_d3d_model_cone

(view raw script w/o annotations or w/e)
1
function d3d_model_cone(arg0, arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9, arg10)
2
{
3
    var __ind = arg0;
4
    var __x1 = arg1;
5
    var __y1 = arg2;
6
    var __z1 = arg3;
7
    var __x2 = arg4;
8
    var __y2 = arg5;
9
    var __z2 = arg6;
10
    var __hrepeat = arg7;
11
    var __vrepeat = arg8;
12
    var __closed = arg9;
13
    var __steps = arg10;
14
    if (__steps < 3)
15
        __steps = 3;
16
    if (__steps > 128)
17
        __steps = 128;
18
    var __cc;
19
    __cc[__steps] = 0;
20
    var __ss;
21
    __ss[__steps] = 0;
22
    for (var __i = 0; __i <= __steps; __i++)
23
    {
24
        var __rad = (__i * 2 * pi) / __steps;
25
        __cc[__i] = cos(__rad);
26
        __ss[__i] = sin(__rad);
27
    }
28
    var __mx = (__x2 + __x1) / 2;
29
    var __my = (__y2 + __y1) / 2;
30
    var __rx = (__x2 - __x1) / 2;
31
    var __ry = (__y2 - __y1) / 2;
32
    d3d_model_primitive_begin(__ind, 5);
33
    for (var __i = 0; __i <= __steps; __i++)
34
    {
35
        d3d_model_vertex_normal_texture(__ind, __mx, __my, __z2, 0, 0, 1, (__hrepeat * __i) / __steps, __vrepeat);
36
        d3d_model_vertex_normal_texture(__ind, __mx + (__cc[__i] * __rx), __my + (__ss[__i] * __ry), __z1, __cc[__i], __ss[__i], 0, (__hrepeat * __i) / __steps, 0);
37
    }
38
    d3d_model_primitive_end(__ind);
39
    if (__closed == true)
40
    {
41
        d3d_model_primitive_begin(__ind, 6);
42
        d3d_model_vertex_normal_texture(__ind, __mx, __my, __z1, 0, 0, -1, 0, 0);
43
        for (var __i = __steps; __i >= 0; __i--)
44
            d3d_model_vertex_normal_texture(__ind, __mx + (__cc[__i] * __rx), __my + (__ss[__i] * __ry), __z1, 0, 0, -1, 0, 0);
45
        d3d_model_primitive_end(__ind);
46
    }
47
}