View difference between Paste ID: bkKdQq20 and 8mKWc2aa
SHOW: | | - or go back to the newest paste.
1
Information about object: objStage4Blocks
2
Sprite: sprWoodBlocks
3
Solid: false
4
Visible: true
5
Depth: 0
6
Persistent: false
7
Parent: 
8
Children: 
9
Mask: 
10
11
No Physics Object
12
Create Event:
13
14
execute code:
15
16
x = 0;
17
y = 0
18
surf = noone; //surface_create(room_width,room_height);
19-
image_xscale = 0.5;
19+
image_xscale = room_width / sprite_get_width(sprite_index);
20-
image_yscale = 0.5;
20+
image_yscale = room_height / sprite_get_height(sprite_index);
21
22
SpikeImg = sprWoodSpike;
23
24
with objSpikeUp
25
{
26
    if sprite_index = sprSpikeUp
27
    {
28
    
29
    var OrigX = sprite_get_width(sprite_index);
30
    var XScale = round((OrigX * (round(image_xscale * 10) / 10)) / 16);
31
    var OrigY = sprite_get_height(sprite_index);
32
    var YScale = round((OrigY * (round(image_yscale * 10) / 10)) / 16);
33
34
    sprite_index = other.SpikeImg;
35
36
    image_index = 0;
37
    image_speed = 0;
38
    image_xscale = XScale / round(sprite_get_width(sprite_index) / 16);
39
    image_yscale = YScale / round(sprite_get_height(sprite_index) / 16);
40
    }
41
}
42
with objSpikeRight
43
{
44
    if sprite_index = sprSpikeRight
45
    {
46
    
47
    var OrigX = sprite_get_width(sprite_index);
48
    var XScale = round((OrigX * (round(image_xscale * 10) / 10)) / 16);
49
    var OrigY = sprite_get_height(sprite_index);
50
    var YScale = round((OrigY * (round(image_yscale * 10) / 10)) / 16);
51
    sprite_index = other.SpikeImg;
52
    image_index = 1;
53
    image_speed = 0;
54
    image_xscale = XScale / round(sprite_get_width(sprite_index) / 16);
55
    image_yscale = YScale / round(sprite_get_height(sprite_index) / 16);
56
    }
57
}
58
with objSpikeDown
59
{
60
    if sprite_index = sprSpikeDown
61
    {
62
    var OrigX = sprite_get_width(sprite_index);
63
    var XScale = round((OrigX * (round(image_xscale * 10) / 10)) / 16);
64
    var OrigY = sprite_get_height(sprite_index);
65
    var YScale = round((OrigY * (round(image_yscale * 10) / 10)) / 16);
66
    sprite_index = other.SpikeImg;
67
    image_index = 2;
68
    image_speed = 0;
69
    image_xscale = XScale / round(sprite_get_width(sprite_index) / 16);
70
    image_yscale = YScale / round(sprite_get_height(sprite_index) / 16);
71
    }
72
}
73
with objSpikeLeft
74
{
75
    if sprite_index = sprSpikeLeft
76
    {
77
    var OrigX = sprite_get_width(sprite_index);
78
    var XScale = round((OrigX * (round(image_xscale * 10) / 10)) / 16);
79
    var OrigY = sprite_get_height(sprite_index);
80
    var YScale = round((OrigY * (round(image_yscale * 10) / 10)) / 16);
81
    sprite_index = other.SpikeImg;
82
    image_index = 3;
83
    image_speed = 0;
84
    image_xscale = XScale / round(sprite_get_width(sprite_index) / 16);
85
    image_yscale = YScale / round(sprite_get_height(sprite_index) / 16);
86
87
    }
88
}
89
90
Other Event: Room End:
91
92
execute code:
93
94
if surface_exists(surf){
95
    surface_free(surf);
96
}
97
98
Draw Event:
99
100
execute code:
101
102
if !surface_exists(surf){
103
    surf=surface_create(room_width,room_height);
104
105
106
surface_set_target(surf);
107
draw_clear_alpha(c_black,0);
108
109
110
    with objBlock
111
    {
112
        draw_rectangle_color(x,y,x+ 32 * image_xscale - 1,y+ 32 * image_yscale - 1,c_black,c_black,c_black,c_black,false);
113
        
114
        var a;
115
        for (a = 0; a < image_xscale; a += 0.5)
116
        {
117
            if not (position_meeting(x + a * 32, y - 1, objBlock) or position_meeting(x + (a + 0.5) * 32 - 1, y - 1, objBlock)) // above
118
            {
119
                draw_rectangle_color(x + a * 32,y,x+(a + 0.5) * 32 - 1,y+1,c_dkgray,c_dkgray,c_dkgray,c_dkgray,false);
120
            }
121
            if not (position_meeting(x + a * 32, y +32 * image_yscale, objBlock) or position_meeting(x + (a + 0.5) * 32 - 1, y + 32 * image_yscale, objBlock)) // below
122
            {
123
                draw_rectangle_color(x + a * 32,y + 32 * image_yscale - 2,x+(a + 0.5) * 32 - 1,y+32 * image_yscale - 1,c_dkgray,c_dkgray,c_dkgray,c_dkgray,false);
124
            }
125
        }
126
        for (a = 0; a < image_yscale; a += 0.5)
127
        {
128
            if not (position_meeting(x -1, y + a * 32, objBlock) or position_meeting(x -1, y + (a + 0.5) * 32 - 1, objBlock)) // left
129
            {
130
                draw_rectangle_color(x ,y + a * 32,x+1,y+(a + 0.5) * 32 - 1,c_dkgray,c_dkgray,c_dkgray,c_dkgray,false);
131
            }
132
            if not (position_meeting(x +32 * image_xscale, y + a * 32, objBlock) or position_meeting(x + 32 * image_xscale, y + (a + 0.5) * 32 - 1, objBlock)) // right
133
            {
134
                draw_rectangle_color(x + 32 * image_xscale - 2,y + a * 32,x+ 32 * image_xscale - 1,y+(a + 0.5) * 32 - 1,c_dkgray,c_dkgray,c_dkgray,c_dkgray,false);
135
            }
136
        }
137
        
138
        
139
    }
140
141
    
142
143
        draw_set_blend_mode_ext(bm_dest_alpha, bm_one);
144
        draw_self();
145
        draw_set_blend_mode( bm_normal );
146
       
147
        surface_reset_target();
148
}
149
150
151
        if surface_exists(surf)
152
        {
153
            draw_surface(surf,0,0);
154
        }