Deltarune (Chapter 2) script viewer

← back to main script listing

gml_Object_o_coaster_hero_sneo_Draw_0

(view raw script w/o annotations or w/e)
1
var kriscoaster_x = obj_ch2_sceneex2.coaster_kris.x + obj_ch2_sceneex2.coaster_kris.sinerx + obj_ch2_sceneex2.coaster_kris.coaster_offset_x + obj_ch2_sceneex2.coaster_kris.target_x_end;
2
var kriscoaster_y = obj_ch2_sceneex2.coaster_kris.y + obj_ch2_sceneex2.coaster_kris.sinery + obj_ch2_sceneex2.coaster_kris.coaster_offset_y;
3
var susiecoaster_x = obj_ch2_sceneex2.coaster_susie.x + obj_ch2_sceneex2.coaster_susie.sinerx + obj_ch2_sceneex2.coaster_susie.coaster_offset_x + obj_ch2_sceneex2.coaster_susie.target_x_end;
4
var susiecoaster_y = obj_ch2_sceneex2.coaster_susie.y + obj_ch2_sceneex2.coaster_susie.sinery + obj_ch2_sceneex2.coaster_susie.coaster_offset_y;
5
var ralseicoaster_x = obj_ch2_sceneex2.coaster_ralsei.x + obj_ch2_sceneex2.coaster_ralsei.sinerx + obj_ch2_sceneex2.coaster_ralsei.coaster_offset_x + obj_ch2_sceneex2.coaster_ralsei.target_x_end;
6
var ralseicoaster_y = obj_ch2_sceneex2.coaster_ralsei.y + obj_ch2_sceneex2.coaster_ralsei.sinery + obj_ch2_sceneex2.coaster_ralsei.coaster_offset_y;
7
if (lerpstate == 0)
8
{
9
    if (lerptimer < 10)
10
        lerptimer++;
11
    if (HeroID == 0)
12
    {
13
        x = lerp(kriscoaster_x, 1705, lerptimer / 10);
14
        y = lerp(kriscoaster_y, 101, lerptimer / 10);
15
    }
16
    else if (HeroID == 1)
17
    {
18
        x = lerp(susiecoaster_x, 1715, lerptimer / 10);
19
        y = lerp(susiecoaster_y, 182, lerptimer / 10);
20
    }
21
    else if (HeroID == 2)
22
    {
23
        x = lerp(ralseicoaster_x, 1710, lerptimer / 10);
24
        y = lerp(ralseicoaster_y, 260, lerptimer / 10);
25
    }
26
    if (lerptimer > 9 && instance_exists(obj_herokris))
27
    {
28
        lerptimer = 0;
29
        lerpstate = 1;
30
    }
31
}
32
if (lerpstate == 1)
33
{
34
    if (HeroID == 0 && instance_exists(obj_herokris))
35
        x = obj_herokris.x - 15;
36
    else if (HeroID == 1 && instance_exists(obj_herosusie))
37
        x = obj_herosusie.x - 5;
38
    else if (HeroID == 2 && instance_exists(obj_heroralsei))
39
        x = obj_heroralsei.x - 10;
40
}
41
if (lerpstate == 2)
42
{
43
    lerptimer += 1;
44
    if (HeroID == 0)
45
    {
46
        x = lerp(1705, kriscoaster_x, lerptimer / 5);
47
        y = lerp(101, kriscoaster_y, lerptimer / 5);
48
        if (instance_exists(obj_herokris))
49
            obj_herokris.x = lerp(1710, obj_ch2_sceneex2.coaster_kris.x + obj_ch2_sceneex2.coaster_kris.sinerx + obj_ch2_sceneex2.coaster_kris.character_offset_x + obj_ch2_sceneex2.coaster_kris.target_x_end, lerptimer / 5);
50
    }
51
    if (HeroID == 1)
52
    {
53
        x = lerp(1715, susiecoaster_x, lerptimer / 5);
54
        y = lerp(182, susiecoaster_y, lerptimer / 5);
55
        if (instance_exists(obj_herosusie))
56
            obj_herosusie.x = lerp(1717, obj_ch2_sceneex2.coaster_susie.x + obj_ch2_sceneex2.coaster_susie.sinerx + obj_ch2_sceneex2.coaster_susie.character_offset_x + obj_ch2_sceneex2.coaster_susie.target_x_end, lerptimer / 5);
57
    }
58
    if (HeroID == 2)
59
    {
60
        x = lerp(1710, ralseicoaster_x, lerptimer / 5);
61
        y = lerp(260, ralseicoaster_y, lerptimer / 5);
62
        if (instance_exists(obj_heroralsei))
63
            obj_heroralsei.x = lerp(1712, obj_ch2_sceneex2.coaster_ralsei.x + obj_ch2_sceneex2.coaster_ralsei.sinerx + obj_ch2_sceneex2.coaster_ralsei.character_offset_x + obj_ch2_sceneex2.coaster_ralsei.target_x_end, lerptimer / 5);
64
        if (instance_exists(obj_heroralsei))
65
            obj_heroralsei.y += 0.5;
66
    }
67
    if (lerptimer == 4)
68
    {
69
        with (obj_coaster)
70
            visible = 1;
71
    }
72
    if (lerptimer > 4)
73
    {
74
        with (obj_coaster)
75
            visible = 1;
76
        with (obj_heroparent)
77
            instance_destroy();
78
        with (o_coaster_hero_sneo)
79
            instance_destroy();
80
        with (o_coaster_hero_back_sneo)
81
            instance_destroy();
82
        with (o_coaster_controller_sneo)
83
            instance_destroy();
84
        exit;
85
    }
86
}
87
back.x = x + 1;
88
back.y = y;
89
draw_sprite_ext(sprite_index, image_index, x, y, image_xscale, image_yscale, 0, c_white, image_alpha);