diff 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
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/tcollision.cc	Mon Dec 13 04:56:23 2010 +0900
@@ -0,0 +1,65 @@
+#include <stdio.h>
+#include <stdlib.h>
+#include <SDL.h>
+#include "SDL_opengl.h"
+#include "object.h"
+#include "Character.h"
+#include "Character_state.h"
+#include "tokuten.h"
+#include "collision.h"
+#include "bom.h"
+#include "count2.h"
+#include "sgoex.h"
+#include "TaskManager.h"
+#include "Func.h"
+#include "task_dandy.h"
+
+extern SpriteTable sptable[DEFOBJ];
+
+CHARACTER * atari(CHARACTER *p)
+{
+    int w, h, charno;
+
+    charno = p->charano;
+    w = sptable[charno].w;
+    h = sptable[charno].h;
+
+    HTaskPtr collision = tmanager->create_task(Atari);
+    collision->set_param(0,(memaddr)w);
+    collision->set_param(1,(memaddr)h);
+    collision->set_param(2,(memaddr)enemycount);
+    collision->set_param(3,(memaddr)bomend);
+    collision->set_param(4,(memaddr)tama_lv1_end);
+    collision->set_param(5,(memaddr)tama_lv2_end);
+    collision->set_param(6,(memaddr)laser_lv1_end);
+    collision->set_param(7,(memaddr)infg_level);
+    
+    collision->add_inData(&jiki, sizeof(player));
+    collision->add_inData(tama_lv1, sizeof(tama1)*tama_lv1_end);
+    collision->add_inData(tama_lv2, sizeof(tama2)*tama_lv2_end);
+    collision->add_inData(&tlv3[0], sizeof(tama1));
+    collision->add_inData(laser_lv1, sizeof(laser)*laser_lv1_end);
+    collision->add_inData(&laser_lv2[0], sizeof(laser));
+    collision->add_inData(laser_lv3, sizeof(laser)*128);
+    collision->add_inData(&bchar[0], sizeof(bomchar));
+    collision->add_inData(&p, sizeof(CHARACTER));
+    collision->add_inData(&lg, sizeof(stge));
+    collision->add_inData(&infg, sizeof(stge));
+
+    collision->add_outData(&jiki, sizeof(player));
+    collision->add_outData(tama_lv1, sizeof(tama1)*tama_lv1_end);
+    collision->add_outData(tama_lv2, sizeof(tama2)*tama_lv2_end);
+    collision->add_outData(&tlv3[0], sizeof(tama1));
+    collision->add_outData(laser_lv1, sizeof(laser)*laser_lv1_end);
+    collision->add_outData(&laser_lv2[0], sizeof(laser));
+    collision->add_outData(laser_lv3, sizeof(laser)*128);
+    collision->add_outData(&bchar[0], sizeof(bomchar));
+    collision->add_outData(&p, sizeof(CHARACTER));
+    collision->add_outData(&lg, sizeof(stge));
+    collision->add_outData(&infg, sizeof(stge));
+
+    collision->set_cpu(SPE_ANY);
+    collision->spawn();
+
+    return p;
+}