annotate tcollision.cc @ 1:b4c797eee72a

task dandy base
author koba <koba@cr.ie.u-ryukyu.ac.jp>
date Mon, 13 Dec 2010 04:56:23 +0900
parents
children 6382d8f6a973
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
1
b4c797eee72a task dandy base
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
1 #include <stdio.h>
b4c797eee72a task dandy base
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
2 #include <stdlib.h>
b4c797eee72a task dandy base
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
3 #include <SDL.h>
b4c797eee72a task dandy base
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
4 #include "SDL_opengl.h"
b4c797eee72a task dandy base
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
5 #include "object.h"
b4c797eee72a task dandy base
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
6 #include "Character.h"
b4c797eee72a task dandy base
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
7 #include "Character_state.h"
b4c797eee72a task dandy base
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
8 #include "tokuten.h"
b4c797eee72a task dandy base
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
9 #include "collision.h"
b4c797eee72a task dandy base
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
10 #include "bom.h"
b4c797eee72a task dandy base
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
11 #include "count2.h"
b4c797eee72a task dandy base
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
12 #include "sgoex.h"
b4c797eee72a task dandy base
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
13 #include "TaskManager.h"
b4c797eee72a task dandy base
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
14 #include "Func.h"
b4c797eee72a task dandy base
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
15 #include "task_dandy.h"
b4c797eee72a task dandy base
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
16
b4c797eee72a task dandy base
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
17 extern SpriteTable sptable[DEFOBJ];
b4c797eee72a task dandy base
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
18
b4c797eee72a task dandy base
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
19 CHARACTER * atari(CHARACTER *p)
b4c797eee72a task dandy base
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
20 {
b4c797eee72a task dandy base
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
21 int w, h, charno;
b4c797eee72a task dandy base
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
22
b4c797eee72a task dandy base
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
23 charno = p->charano;
b4c797eee72a task dandy base
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
24 w = sptable[charno].w;
b4c797eee72a task dandy base
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
25 h = sptable[charno].h;
b4c797eee72a task dandy base
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
26
b4c797eee72a task dandy base
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
27 HTaskPtr collision = tmanager->create_task(Atari);
b4c797eee72a task dandy base
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
28 collision->set_param(0,(memaddr)w);
b4c797eee72a task dandy base
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
29 collision->set_param(1,(memaddr)h);
b4c797eee72a task dandy base
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
30 collision->set_param(2,(memaddr)enemycount);
b4c797eee72a task dandy base
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
31 collision->set_param(3,(memaddr)bomend);
b4c797eee72a task dandy base
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
32 collision->set_param(4,(memaddr)tama_lv1_end);
b4c797eee72a task dandy base
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
33 collision->set_param(5,(memaddr)tama_lv2_end);
b4c797eee72a task dandy base
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
34 collision->set_param(6,(memaddr)laser_lv1_end);
b4c797eee72a task dandy base
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
35 collision->set_param(7,(memaddr)infg_level);
b4c797eee72a task dandy base
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
36
b4c797eee72a task dandy base
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
37 collision->add_inData(&jiki, sizeof(player));
b4c797eee72a task dandy base
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
38 collision->add_inData(tama_lv1, sizeof(tama1)*tama_lv1_end);
b4c797eee72a task dandy base
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
39 collision->add_inData(tama_lv2, sizeof(tama2)*tama_lv2_end);
b4c797eee72a task dandy base
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
40 collision->add_inData(&tlv3[0], sizeof(tama1));
b4c797eee72a task dandy base
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
41 collision->add_inData(laser_lv1, sizeof(laser)*laser_lv1_end);
b4c797eee72a task dandy base
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
42 collision->add_inData(&laser_lv2[0], sizeof(laser));
b4c797eee72a task dandy base
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
43 collision->add_inData(laser_lv3, sizeof(laser)*128);
b4c797eee72a task dandy base
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
44 collision->add_inData(&bchar[0], sizeof(bomchar));
b4c797eee72a task dandy base
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
45 collision->add_inData(&p, sizeof(CHARACTER));
b4c797eee72a task dandy base
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
46 collision->add_inData(&lg, sizeof(stge));
b4c797eee72a task dandy base
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
47 collision->add_inData(&infg, sizeof(stge));
b4c797eee72a task dandy base
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
48
b4c797eee72a task dandy base
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
49 collision->add_outData(&jiki, sizeof(player));
b4c797eee72a task dandy base
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
50 collision->add_outData(tama_lv1, sizeof(tama1)*tama_lv1_end);
b4c797eee72a task dandy base
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
51 collision->add_outData(tama_lv2, sizeof(tama2)*tama_lv2_end);
b4c797eee72a task dandy base
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
52 collision->add_outData(&tlv3[0], sizeof(tama1));
b4c797eee72a task dandy base
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
53 collision->add_outData(laser_lv1, sizeof(laser)*laser_lv1_end);
b4c797eee72a task dandy base
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
54 collision->add_outData(&laser_lv2[0], sizeof(laser));
b4c797eee72a task dandy base
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
55 collision->add_outData(laser_lv3, sizeof(laser)*128);
b4c797eee72a task dandy base
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
56 collision->add_outData(&bchar[0], sizeof(bomchar));
b4c797eee72a task dandy base
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
57 collision->add_outData(&p, sizeof(CHARACTER));
b4c797eee72a task dandy base
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
58 collision->add_outData(&lg, sizeof(stge));
b4c797eee72a task dandy base
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
59 collision->add_outData(&infg, sizeof(stge));
b4c797eee72a task dandy base
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
60
b4c797eee72a task dandy base
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
61 collision->set_cpu(SPE_ANY);
b4c797eee72a task dandy base
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
62 collision->spawn();
b4c797eee72a task dandy base
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
63
b4c797eee72a task dandy base
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
64 return p;
b4c797eee72a task dandy base
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
65 }