6
|
1 function state_update()
|
|
2 {
|
|
3 for(var i = 0; Boolean(active_chara_list.enemy[i]) ; i++)
|
|
4 {
|
|
5 var p = active_chara_list.enemy[i];
|
7
|
6 if(p.flag == true)
|
6
|
7 {
|
|
8 p = p.state(p);
|
|
9 }
|
|
10 }
|
|
11 }
|
7
|
12
|
|
13 noaction = function no_action(p)
|
|
14 {
|
|
15 p.state = noaction;
|
|
16 return p;
|
|
17 }
|
|
18
|
|
19 delete_chara = function delete_character( p )
|
|
20 {
|
|
21 p.state = noaction;
|
|
22 p.flag = false;
|
|
23 return p;
|
4
|
24 }
|
6
|
25
|
|
26 chara_state0 = function character_state0( p )
|
|
27 {
|
|
28 p.x += p.vx;
|
|
29 p.y += p.vy;
|
|
30 p.state = chara_state0;
|
|
31 return p;
|
|
32 }
|
|
33
|
|
34 chara_state1 = function character_state1( p )
|
|
35 {
|
|
36 p.x -= p.vx;
|
|
37 p.y -= p.vy;
|
|
38 p.state = chara_state1;
|
|
39 return p;
|
|
40 }
|
|
41
|
|
42 chara_state2 = function character_state2( p )
|
|
43 {
|
|
44 p.x -= 0.25;
|
|
45 p.y += p.vy;
|
|
46 p.state = chara_state2;
|
|
47 return p;
|
|
48 }
|
|
49
|
11
|
50 chara_state3 = function character_state3( p )
|
|
51 {
|
|
52 p.x += p.vx;
|
|
53 p.y += p.vy;
|
|
54 if((p.dt1 == 60) ||
|
|
55 (p.dt1 == 90) ||
|
|
56 (p.dt1 == 30))
|
|
57 {
|
|
58 Puttama(0, p.x, p.y);
|
|
59 }
|
|
60 p.dt1++;
|
|
61 p.state = chara_state3;
|
|
62 return p;
|
|
63 }
|
|
64
|
|
65
|
|
66
|
7
|
67 chara_state8 = function character_state8( p )
|
|
68 {
|
9
|
69 if(p.y > 0)
|
7
|
70 {
|
9
|
71 p.y -= p.vy;
|
|
72 /*
|
|
73 tekino0 = p;
|
7
|
74 kyeenmyno = p;
|
|
75 count++;
|
|
76 DefSpriteEx(p.charano, 16*4, 32*4);
|
|
77 PutSpriteEx(p.charano, (p.x * 4), (p.y * 4), 0.2, 0.2, 1);
|
9
|
78 */
|
7
|
79 p.dt1 = 512;
|
|
80 p.s = 0.125;
|
|
81 p.state = chara_state8;
|
|
82 return p;
|
|
83 }
|
|
84 p.state = chara_state9;
|
|
85 return p;
|
|
86 }
|
|
87
|
|
88 chara_state9 = function character_state9( p )
|
4
|
89 {
|
9
|
90
|
7
|
91 if(p.s <= 2)
|
|
92 {
|
|
93 p.s += 0.05
|
9
|
94 p.y += 0.12;
|
|
95 count++;
|
|
96 // DefSpriteEx(54, 16*4, 32*4);
|
|
97 // PutSpriteEx(54, (p.x * 4), (p.y * 4), p.x, p.x, 1);
|
7
|
98 p.state = chara_state9;
|
|
99 return p;
|
|
100 }
|
|
101 count++;
|
|
102 rinkx = p.x;
|
|
103 rinky = p.y;
|
9
|
104 // DefSpriteEx(54, 16,32);
|
|
105 // PutSpriteEx(54, p.x, p.y, p.s, p.s, 1);
|
|
106 // Putenemy(5, rinkx - 16, rinky -16, 1, 0, chara_state10);
|
|
107 // Putenemy(5, rinkx - 16, rinky -16, -1, 0, chara_state10);
|
|
108 PutBoss(2, rinkx - 16, rinky -16, 1, 0, chara_state10);
|
|
109 PutBoss(2, rinkx - 16, rinky -16, -1, 0, chara_state10);
|
|
110
|
7
|
111 p.state = chara_state11;
|
|
112 p.dt1 = 8192;
|
9
|
113
|
7
|
114 return p;
|
|
115 }
|
|
116
|
|
117 chara_state10 = function character_state10( p )
|
|
118 {
|
|
119 if(p.dt1 < 48)
|
|
120 {
|
|
121 p.x += p.vx;
|
|
122 p.y += p.vy;
|
|
123 p.dt1++;
|
|
124 p.state = chara_state10;
|
|
125 return p;
|
|
126 }
|
|
127 rinkf1 = 1;
|
|
128 p.dt1 = rinkx;
|
|
129 p.dt2 = rinky;
|
|
130 p.state = chara_state13;
|
|
131 return p;
|
|
132 }
|
|
133
|
|
134 chara_state11 = function character_state11( p )
|
|
135 {
|
|
136 if(rinkf1 == 0)
|
|
137 {
|
|
138 count++;
|
9
|
139 // DefSpriteEx(54, 16, 32);
|
|
140 // PutSpriteEx(54, p.x, p.y, p.s, p.s, 1);
|
7
|
141 p.state = chara_state11;
|
|
142 return p;
|
|
143 }
|
|
144 p.dt1 = 0;
|
|
145 p.dt2 = 0;
|
|
146 p.state = chara_state12;
|
|
147 return p;
|
4
|
148 }
|
6
|
149
|
7
|
150 chara_state12 = function character_state12( p )
|
6
|
151 {
|
7
|
152 if(fastebos > 60+60)
|
|
153 {
|
9
|
154 if(p.y > 70+boss[1].h)
|
7
|
155 {
|
|
156 p.state = delete_chara;
|
|
157 }
|
9
|
158 p.y += 0.3;
|
|
159 rinky += 0.3;
|
7
|
160 count++;
|
9
|
161 // DefSpriteEx(54, 16, 32);
|
|
162 // PutSpriteEx(54, p.x, p.y, 2, 2, 1);
|
|
163 p.state = chara_state12;
|
7
|
164 return p;
|
|
165 }
|
|
166 if(p.dt1 <= 60)
|
6
|
167 {
|
7
|
168 if(jiki.x + 15 -rinkx < -5)
|
|
169 {
|
|
170 p.vx = -0.3;
|
|
171 }
|
|
172 else if(jiki.x + 15 - rinkx > 5)
|
|
173 {
|
|
174 p.vx = +0.8;
|
|
175 }
|
|
176 else p.vx = 0;
|
|
177 rinkx = p.x;
|
|
178 rinky = p.y;
|
6
|
179 }
|
7
|
180 if((p.dt1 > 60) && (p.dt1 <= 70))
|
|
181 {
|
|
182 if(p.dt1 % 2 == 1)
|
|
183 {
|
9
|
184 // Puttama(0, rinkx - 16, rinky);
|
|
185 // Puttama(0, rinkx, rinky);
|
|
186 // Puttama(0, rinkx + 16, rinky);
|
7
|
187 }
|
|
188 }
|
|
189 if((p.dt1 > 180) && (p.dt1 <= 240))
|
|
190 {
|
|
191 if(p.dt1 % 2 == 1)
|
|
192 {
|
|
193 rinkf2 = 1;
|
9
|
194 // Puttama(2, rinkx - 16, p.y -32);
|
|
195 // Puttama(3, rinkx + 32 - 16, p.y - 32);
|
7
|
196 }
|
|
197 else
|
|
198 {
|
|
199 rinkf2 = 2;
|
|
200 }
|
|
201 }
|
|
202 if(p.df1 > 240)
|
|
203 {
|
|
204 rinkf2 = 2;
|
|
205 }
|
|
206 if((p.dt1 > 240) && (p.dt1 <= 400))
|
6
|
207 {
|
7
|
208 count++;
|
9
|
209 // PutSprite(count, rinkx - 16, rinky + 32, 58 + p.dt1 %4)
|
6
|
210 }
|
7
|
211 if((p.dt1 > 300) && (p.dt1 <= 400))
|
|
212 {
|
|
213 rinkf2 = 3;
|
|
214 if(jiki.x + 15 - rinkx < -5)
|
|
215 {
|
|
216 p.vx = -1;
|
|
217 }
|
|
218 else if(jiki.x + 15 - rinkx > 5)
|
|
219 {
|
|
220 p.vx = +1;
|
|
221 }
|
|
222 else p.vx = 0;
|
9
|
223 p.x += p.vx;
|
7
|
224 rinkx = p.x;
|
|
225 rinky = p.y;
|
9
|
226 // Puttama(4, rinkx - 8, rinky + 16);
|
7
|
227 }
|
|
228 if((p.dt1 > 400) && (p.dt1 <= 500))
|
6
|
229 {
|
7
|
230 rinkf2 = 4;
|
|
231 if(jiki.x + 15 - rinkx > 5)
|
|
232 {
|
|
233 p.vx = -1;
|
|
234 }
|
|
235 else if(jiki.x + 15 - rinkx >5)
|
|
236 {
|
|
237 p.vx = +1;
|
|
238 }
|
|
239 else p.vx = 0;
|
|
240 p.x += p.vx;
|
|
241 rinkx = p.x;
|
|
242 rinky = p.y;
|
6
|
243 }
|
7
|
244 if(p.dt1 > 500)
|
6
|
245 {
|
7
|
246 rinkf2 = 5;
|
|
247 if(jiki.x + 15 - rinkx < -5)
|
|
248 {
|
|
249 p.vx = -1;
|
|
250 }
|
|
251 else if(jiki.x + 15 - rinkx > 5)
|
|
252 {
|
|
253 p.vx = +1;
|
|
254 }
|
|
255 else p.vx = 0;
|
|
256 p.x += p.vx;
|
|
257 rinkx = p.x;
|
|
258 rinky = p.y;
|
6
|
259 }
|
7
|
260 if(p.dt1 > 600)
|
|
261 {
|
|
262 rinkf2 = 0;
|
|
263 p.dt1 = 0;
|
|
264 }
|
|
265 fastebos++;
|
|
266 p.dt1++;
|
|
267 count++;
|
9
|
268 // DefSpriteEx(54, 16, 32);
|
|
269 // PutSpriteEx(54, p.x, p.y, 2, 2, 1);
|
|
270 p.state = chara_state12;
|
7
|
271 return p;
|
|
272
|
6
|
273 }
|
|
274
|
7
|
275 chara_state13 = function character_state13(p)
|
|
276 {
|
|
277 if(tekino0.flag == false)
|
|
278 {
|
9
|
279 // Bom(p.x, p.y);
|
7
|
280 p.flag = false;
|
|
281 p.state = delete_chara;
|
|
282 p.collision = noaction;
|
|
283 return p;
|
|
284 }
|
|
285 p.x += rinkx - p.dt1;
|
|
286 p.y += rinky -p.dt2;
|
|
287 p.dt1 = rinkx;
|
|
288 p.dt2 = rinky;
|
|
289 if(rinkf2 == 1)
|
|
290 {
|
|
291 if(p.x > rinkx)
|
|
292 {
|
|
293 Puttama(2, p.x + 32, p.y);
|
|
294 }
|
|
295 }
|
|
296 if(rinkf2 == 4)
|
|
297 {
|
|
298 count++;
|
9
|
299 // PutSprite(count, p.x, p.y + 56, 58+filpcount % 4);
|
7
|
300 }
|
|
301 if(rinkf2 == 5)
|
|
302 {
|
|
303 if(p.x > rinkx)
|
|
304 {
|
9
|
305 // Puttama(5, p.x + 8, p.y + 24);
|
7
|
306 }
|
|
307 if(p.x < rinkx)
|
|
308 {
|
9
|
309 // Puttama(5, p.x + 8, p.y + 24);
|
7
|
310 }
|
|
311 }
|
|
312 return p;
|
|
313 }
|