1 |
if (live_call()) |
2 |
return global.live_result; |
3 |
if (state == 0) |
4 |
{ |
5 |
if (image_alpha < 1) |
6 |
{ |
7 |
image_alpha += 0.1; |
8 |
if (image_alpha > 1) |
9 |
image_alpha = 1; |
10 |
} |
11 |
if (image_alpha == 1 && floor(obj_martlet_final_base.image_index) >= 3 && floor(obj_martlet_final_base.image_index) <= 4 && no_loop_alarm_fading_in == false) |
12 |
{ |
13 |
switch (sprite_index) |
14 |
{ |
15 |
case spr_battle_enemy_attack_martlet_wing_gust_junk_ball: |
16 |
case spr_battle_enemy_attack_martlet_wing_gust_junk_radio: |
17 |
alarm[0] = 8; |
18 |
break; |
19 |
case spr_battle_enemy_attack_martlet_wing_gust_junk_saw: |
20 |
case spr_battle_enemy_attack_martlet_wing_gust_junk_plank: |
21 |
alarm[0] = 15; |
22 |
break; |
23 |
default: |
24 |
alarm[0] = 2; |
25 |
} |
26 |
no_loop_alarm_fading_in = true; |
27 |
} |
28 |
} |
29 |
if (state == 1) |
30 |
{ |
31 |
if (fall_speed < fall_speed_max) |
32 |
fall_speed += 1; |
33 |
var fs_temp = fall_speed; |
34 |
if ((bbox_bottom + fs_temp) >= (obj_dialogue_box_battle_transformation_any.bbox_bottom - 4)) |
35 |
{ |
36 |
while ((bbox_bottom + sign(fs_temp)) < (obj_dialogue_box_battle_transformation_any.bbox_bottom - 4)) |
37 |
y += sign(fs_temp); |
38 |
fs_temp = 0; |
39 |
state = 2; |
40 |
switch (sound_type) |
41 |
{ |
42 |
case 1: |
43 |
audio_play_sound(snd_mart_impact_1, 20, 0); |
44 |
break; |
45 |
case 2: |
46 |
audio_play_sound(snd_mart_impact_2, 20, 0); |
47 |
break; |
48 |
case 3: |
49 |
audio_play_sound(snd_mart_impact_3, 20, 0); |
50 |
break; |
51 |
default: |
52 |
audio_play_sound(snd_mart_impact_2, 20, 0); |
53 |
} |
54 |
} |
55 |
y += fs_temp; |
56 |
} |
57 |
if (state == 2) |
58 |
{ |
59 |
if (sprite_index == spr_battle_enemy_attack_martlet_wing_gust_junk_can) |
60 |
{ |
61 |
if (landing_init == false) |
62 |
{ |
63 |
jump_speed = -12; |
64 |
grav = 2; |
65 |
angle_speed_sign = irandom_range(0, 1); |
66 |
if (angle_speed_sign == 0) |
67 |
angle_speed_sign = -1; |
68 |
move_speed = 4 * angle_speed_sign; |
69 |
angle_speed = 4 * (90 / (sprite_height / 2)) * -angle_speed_sign; |
70 |
landing_init = true; |
71 |
} |
72 |
y += jump_speed; |
73 |
jump_speed += grav; |
74 |
x += move_speed; |
75 |
image_angle += angle_speed; |
76 |
if ((y + (sprite_width / 2)) > __view_get(e__VW.HView, 0)) |
77 |
instance_destroy(); |
78 |
} |
79 |
else if (sprite_index == spr_battle_enemy_attack_martlet_wing_gust_junk_ball) |
80 |
{ |
81 |
if (landing_init == false) |
82 |
{ |
83 |
if (landing_count == 0) |
84 |
{ |
85 |
jump_speed = -8; |
86 |
grav = 2; |
87 |
rolling_speed_sign = irandom_range(0, 1); |
88 |
if (rolling_speed_sign == 0) |
89 |
rolling_speed_sign = -1; |
90 |
rolling_speed = 4 * rolling_speed_sign; |
91 |
rolling_speed_angle = (90 / (sprite_width / 2)) * -rolling_speed; |
92 |
} |
93 |
else if (landing_count == 1) |
94 |
{ |
95 |
jump_speed = -4; |
96 |
} |
97 |
landing_count += 1; |
98 |
landing_init = true; |
99 |
} |
100 |
if (sign(jump_speed) == 1 && (y + (sprite_height / 2) + jump_speed) >= (obj_dialogue_box_battle_transformation_any.bbox_bottom - 4) && x >= obj_dialogue_box_battle_transformation_any.bbox_left && x <= obj_dialogue_box_battle_transformation_any.bbox_right) |
101 |
{ |
102 |
while ((y + (sprite_height / 2) + sign(jump_speed)) < (obj_dialogue_box_battle_transformation_any.bbox_bottom - 4)) |
103 |
y += sign(jump_speed); |
104 |
jump_speed = 0; |
105 |
if (landing_count < 2) |
106 |
landing_init = false; |
107 |
} |
108 |
y += jump_speed; |
109 |
jump_speed += grav; |
110 |
x += rolling_speed; |
111 |
image_angle += rolling_speed_angle; |
112 |
if ((y + (sprite_height / 2)) > __view_get(e__VW.HView, 0)) |
113 |
instance_destroy(); |
114 |
} |
115 |
else if (sprite_index == spr_battle_enemy_attack_martlet_wing_gust_junk_radio) |
116 |
{ |
117 |
if (landing_init == false) |
118 |
{ |
119 |
jump_speed = -10; |
120 |
grav = 2; |
121 |
x_default = x; |
122 |
y_default = y; |
123 |
shake_x = 1; |
124 |
shake_y = 1; |
125 |
angle_speed_sign = irandom_range(0, 1); |
126 |
if (angle_speed_sign == 0) |
127 |
angle_speed_sign = -1; |
128 |
move_speed = 4 * angle_speed_sign; |
129 |
angle_speed = 2 * -angle_speed_sign; |
130 |
landing_init = true; |
131 |
} |
132 |
y_default += jump_speed; |
133 |
jump_speed += grav; |
134 |
x_default += move_speed; |
135 |
image_angle += angle_speed; |
136 |
x = x_default + (2 * irandom_range(-shake_x, shake_x)); |
137 |
y = y_default + (2 * irandom_range(-shake_y, shake_y)); |
138 |
if ((y + (sprite_width / 2)) > __view_get(e__VW.HView, 0)) |
139 |
instance_destroy(); |
140 |
} |
141 |
else if (sprite_index == spr_battle_enemy_attack_martlet_wing_gust_junk_globe) |
142 |
{ |
143 |
if (landing_init == false) |
144 |
{ |
145 |
jump_speed = -8; |
146 |
grav = 2; |
147 |
angle_speed_sign = irandom_range(0, 1); |
148 |
if (angle_speed_sign == 0) |
149 |
angle_speed_sign = -1; |
150 |
move_speed = 4 * angle_speed_sign; |
151 |
angle_speed = 2 * -angle_speed_sign; |
152 |
landing_init = true; |
153 |
} |
154 |
y += jump_speed; |
155 |
jump_speed += grav; |
156 |
x += move_speed; |
157 |
image_angle += angle_speed; |
158 |
if ((y + (sprite_width / 2)) > __view_get(e__VW.HView, 0)) |
159 |
instance_destroy(); |
160 |
} |
161 |
else if (sprite_index == spr_battle_enemy_attack_martlet_wing_gust_junk_shoe || sprite_index == spr_battle_enemy_attack_martlet_wing_gust_junk_mug || sprite_index == spr_battle_enemy_attack_martlet_wing_gust_junk_thingy || sprite_index == spr_battle_enemy_attack_martlet_wing_gust_junk_glass || sprite_index == spr_battle_enemy_attack_martlet_wing_gust_junk_saw || sprite_index == spr_battle_enemy_attack_martlet_wing_gust_junk_idk || sprite_index == spr_battle_enemy_attack_martlet_wing_gust_junk_plank) |
162 |
{ |
163 |
if (landing_init == false) |
164 |
{ |
165 |
jump_speed = -10; |
166 |
grav = 2; |
167 |
angle_speed_sign = irandom_range(0, 1); |
168 |
if (angle_speed_sign == 0) |
169 |
angle_speed_sign = -1; |
170 |
move_speed = 4 * angle_speed_sign; |
171 |
angle_speed = 2 * -angle_speed_sign; |
172 |
landing_init = true; |
173 |
} |
174 |
y += jump_speed; |
175 |
jump_speed += grav; |
176 |
x += move_speed; |
177 |
image_angle += angle_speed; |
178 |
if ((y + (sprite_width / 2)) > __view_get(e__VW.HView, 0)) |
179 |
instance_destroy(); |
180 |
} |
181 |
else |
182 |
{ |
183 |
can_fade_out = true; |
184 |
} |
185 |
if (image_alpha > 0 && can_fade_out == true) |
186 |
{ |
187 |
image_alpha -= 0.1; |
188 |
if (image_alpha < 0) |
189 |
image_alpha = 0; |
190 |
if (image_alpha == 0) |
191 |
instance_destroy(); |
192 |
} |
193 |
} |
194 |
|
195 |
enum e__VW |
196 |
{ |
197 |
XView, |
198 |
YView, |
199 |
WView, |
200 |
HView, |
201 |
Angle, |
202 |
HBorder, |
203 |
VBorder, |
204 |
HSpeed, |
205 |
VSpeed, |
206 |
Object, |
207 |
Visible, |
208 |
XPort, |
209 |
YPort, |
210 |
WPort, |
211 |
HPort, |
212 |
Camera, |
213 |
SurfaceID |
214 |
} |