Mercurial > hg > Members > koba > t_dandy
comparison spe/chara_state33.cc @ 49:f4140672ef9f
fix.
author | koba <koba@cr.ie.u-ryukyu.ac.jp> |
---|---|
date | Fri, 21 Jan 2011 22:18:28 +0900 |
parents | c330ded6d728 |
children | cfd42ee2ad28 |
comparison
equal
deleted
inserted
replaced
45:e01948ce859a | 49:f4140672ef9f |
---|---|
1 #include "chara_state33.h" | 1 #include "task_base.h" |
2 #include "tobject.h" | 2 #include "task_object.h" |
3 | 3 |
4 SchedDefineTask(STATE33); | 4 SchedDefineTask1(State33, state33); |
5 | 5 |
6 static int | 6 static int |
7 run(SchedTask *smanager, void *rbuf, void *wbuf) | 7 state33(SchedTask *smanager, void *rbuf, void *wbuf) |
8 { | 8 { |
9 int enemystate_11 = (int)smanager->get_param(4); | |
10 int enemystate_19 = (int)smanager->get_param(5); | |
11 | |
12 int length; | |
9 CHARACTER *p = (CHARACTER*)smanager->get_input(rbuf, 0); | 13 CHARACTER *p = (CHARACTER*)smanager->get_input(rbuf, 0); |
14 CHARACTER *kyeenemyno = (CHARACTER*)smanager->get_input(rbuf, 1); | |
15 int rinkf1 = *(int*)smanager->get_input(rbuf, 3); | |
16 CHARACTER *q = (CHARACTER*)smanager->get_output(wbuf, 0); | |
10 | 17 |
11 if (kyeenemyno->f == FALSE) | 18 if (kyeenemyno->f == FALSE) |
12 { | 19 { |
13 Bom(p->x, p->y); | 20 length = 1; |
21 smanager->set_outputSize(2, sizeof(ObjContainer)+sizeof(ObjData)*(length-1)); | |
22 smanager->setup_outputData(); | |
23 CHARACTER *q = (CHARACTER*)smanager->get_output(wbuf, 0); | |
24 ObjContainerPtr sprite = (ObjContainerPtr)smanager->get_output(wbuf, 2); | |
25 sprite->flag = true; | |
26 sprite->length = length; | |
27 | |
28 Bom(p->x, p->y, &sprite->data[0]); | |
14 p->f = FALSE; | 29 p->f = FALSE; |
15 p->state = delete_chara; | 30 p->task = DELETE_CHARA; |
16 p->collision = noaction; | 31 |
32 *q = *p; | |
17 return 0; | 33 return 0; |
18 } | 34 } |
19 p->x = kyeenemyno->x + 32; | 35 p->x = kyeenemyno->x + 32; |
20 p->y = kyeenemyno->y; | 36 p->y = kyeenemyno->y; |
21 if (rinkf1 == 5) | 37 if (rinkf1 == 5) |
22 { | 38 { |
23 p->x = kyeenemyno->x + 32 - 4; | 39 p->x = kyeenemyno->x + 32 - 4; |
24 p->y = kyeenemyno->y; | 40 p->y = kyeenemyno->y; |
25 p->charano = enemystate[19].charano; | 41 p->charano = enemystate_19; |
26 } | 42 } |
27 if (rinkf1 == 6) | 43 if (rinkf1 == 6) |
28 { | 44 { |
29 p->charano = enemystate[11].charano; | 45 p->charano = enemystate_11; |
30 } | 46 } |
47 *q = *p; | |
31 return 0; | 48 return 0; |
32 } | 49 } |