Deltarune (Chapter 5) script viewer

← back to main script listing

gml_Object_obj_climb_watergenerator_Step_0

(view raw script w/o annotations or w/e)
1
if (global.interact == 0)
2
{
3
    timer++;
4
    var waterspawntype = 1;
5
    with (obj_dw_castle_church_climb)
6
    {
7
        waterspawntype = 2;
8
        other.timer = timber + other.waitoff;
9
        if (other.timer == 0 || timber == fulltime)
10
            other.timer = -1;
11
    }
12
    if (instance_exists(obj_dw_cliff_precipice))
13
    {
14
        if (!instance_exists(obj_climb_kris))
15
            timer--;
16
    }
17
    if (waterspawntype == 0)
18
    {
19
        if (timer >= waittime)
20
        {
21
            if ((timer % spawnrate) == 0)
22
            {
23
                var mywater = instance_create(x, y, obj_climb_water);
24
                with (mywater)
25
                {
26
                    movetimer = other.watermovetimer;
27
                    moverate = other.watermoverate;
28
                    tilelimit = other.watertilelimit;
29
                    fallingtimer = other.waterfallingtimer;
30
                    bad = other.waterbad;
31
                    damage = other.waterdmg;
32
                    falldir = other.waterdir;
33
                    spawnrate = other.spawnrate;
34
                    activetime = other.activetime;
35
                    watertype = 0;
36
                }
37
            }
38
        }
39
    }
40
    if (waterspawntype == 1)
41
    {
42
        if (timer == waittime)
43
        {
44
            var mywater = instance_create(x, y, obj_climb_water);
45
            with (mywater)
46
            {
47
                movetimer = other.watermovetimer;
48
                moverate = other.watermoverate;
49
                tilelimit = other.watertilelimit;
50
                fallingtimer = other.waterfallingtimer;
51
                bad = other.waterbad;
52
                damage = other.waterdmg;
53
                falldir = other.waterdir;
54
                spawnrate = other.spawnrate;
55
                activetime = other.activetime;
56
                watertype = 1;
57
            }
58
        }
59
    }
60
    if (waterspawntype == 2)
61
    {
62
        if ((timer % waittime) == 0)
63
        {
64
            var mywater = instance_create(x, y, obj_climb_water);
65
            with (mywater)
66
            {
67
                movetimer = other.watermovetimer;
68
                moverate = other.watermoverate;
69
                tilelimit = other.watertilelimit;
70
                fallingtimer = other.waterfallingtimer;
71
                bad = other.waterbad;
72
                damage = other.waterdmg;
73
                falldir = other.waterdir;
74
                spawnrate = other.spawnrate;
75
                activetime = other.activetime;
76
                watertype = 1;
77
            }
78
        }
79
    }
80
    if (timer >= (waittime + activetime))
81
        timer = 0;
82
}