Mercurial > hg > Members > koba > t_dandy
changeset 5:c9e9b605f08e
rename tcollision.cc
author | koba <koba@cr.ie.u-ryukyu.ac.jp> |
---|---|
date | Tue, 14 Dec 2010 15:29:13 +0900 |
parents | a87dd72ce1b3 |
children | 9a92435eaee6 |
files | Makefile collision_task.cc tcollision.cc |
diffstat | 3 files changed, 107 insertions(+), 107 deletions(-) [+] |
line wrap: on
line diff
--- a/Makefile Tue Dec 14 04:36:05 2010 +0900 +++ b/Makefile Tue Dec 14 15:29:13 2010 +0900 @@ -28,12 +28,12 @@ dandy: $(OBJS) Dandy.o collision.o $(CC) $(ABI) -o $@ $(OBJS) Dandy.o collision.o $(LIBS) -t_dandy: $(OBJS) $(TASK_OBJS) tcollision.o Dandy.o - $(CC) $(ABI) -o $@ $(OBJS) $(TASK_OBJS) tcollision.o Dandy.o $(LIBS) +t_dandy: $(OBJS) $(TASK_OBJS) collision_task.o Dandy.o + $(CC) $(ABI) -o $@ $(OBJS) $(TASK_OBJS) collision_task.o Dandy.o $(LIBS) clean: - rm -f $(TARGET) $(OBJS) - rm -f Dandy.o collision.o sgoex.o tcollision.o main.o ppe/Atari.o ppe/task_init.o ppe/Bom.o + rm -f $(TARGET) $(OBJS) $(TASK_OBJS) + rm -f Dandy.o collision.o sgoex.o collision_task.o main.o .c.o: $(CC) $(CFLAGS) $(INCLUDES) -c $<
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/collision_task.cc Tue Dec 14 15:29:13 2010 +0900 @@ -0,0 +1,103 @@ +#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 "property.h" + +extern SpriteTable sptable[DEFOBJ]; +extern TaskManager *tmanager; + +CollisionPropertyPtr +get_property(CHARACTER *p) +{ + CollisionPropertyPtr property = new(CollisionProperty); + + property->infg_level = infg_level; + property->enemycount = 0; + + property->jiki = jiki; + property->p = *p; + property->tlv3 = tlv3[0]; + property->lg = lg; + property->infg = infg; + + + memcpy(property->tama_lv1, &tama_lv1, sizeof(tama1)*20); + memcpy(property->tama_lv2, &tama_lv2, sizeof(tama2)*20); + memcpy(property->laser_lv1, &laser_lv1, sizeof(laser)*20); + memcpy(property->laser_lv2, &laser_lv2, sizeof(laser)*20); + memcpy(property->laser_lv3, &laser_lv3, sizeof(laser)*128); + memcpy(property->bchar, &bchar, sizeof(bomchar)*100); + + return property; +} + +void +free_property(SchedTask *s, void *prop, void *chara) +{ + CollisionPropertyPtr property = (CollisionPropertyPtr)prop; + CHARACTER *character = (CHARACTER *)chara; + + if(infg_level <= property->infg_level||infg_level != 0) { + infg_level--; + } + if(lg.stg <= property->lg.stg) { + lg.stg -= 26; + } + enemycount += property->enemycount; + + jiki = property->jiki; + *character = property->p; + tlv3[0] = property->tlv3; + infg = property->infg; + + memcpy(tama_lv1, property->tama_lv1, sizeof(tama1)*20); + memcpy(tama_lv2, property->tama_lv2, sizeof(tama2)*20); + memcpy(laser_lv1, property->laser_lv1, sizeof(laser)*20); + memcpy(laser_lv2, property->laser_lv2, sizeof(laser)*20); + memcpy(laser_lv3, property->laser_lv3, sizeof(laser)*128); + memcpy(bchar, property->bchar, sizeof(bomchar)*100); + + delete property; +} + + +CHARACTER * atari(CHARACTER *p) +{ + int w, h, charno; + CollisionPropertyPtr property = get_property(p); + + charno = p->charano; + w = sptable[charno].w; + h = sptable[charno].h; + + HTaskPtr collision_task = tmanager->create_task(ATARI); + + collision_task->set_param(0,(memaddr)w); + collision_task->set_param(1,(memaddr)h); + collision_task->set_param(2,(memaddr)enemycount); + collision_task->set_param(3,(memaddr)bomend); + collision_task->set_param(4,(memaddr)tama_lv1_end); + collision_task->set_param(5,(memaddr)tama_lv2_end); + collision_task->set_param(6,(memaddr)laser_lv1_end); + collision_task->set_param(7,(memaddr)infg_level); + + collision_task->add_inData(property, sizeof(CollisionProperty)); + collision_task->add_outData(property, sizeof(CollisionProperty)); + collision_task->set_post(free_property, property, p); + + collision_task->set_cpu(SPE_ANY); + collision_task->spawn(); + + return p; +}
--- a/tcollision.cc Tue Dec 14 04:36:05 2010 +0900 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,103 +0,0 @@ -#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 "property.h" - -extern SpriteTable sptable[DEFOBJ]; -extern TaskManager *tmanager; - -CollisionPropertyPtr -get_property(CHARACTER *p) -{ - CollisionPropertyPtr property = new(CollisionProperty); - - property->infg_level = infg_level; - property->enemycount = 0; - - property->jiki = jiki; - property->p = *p; - property->tlv3 = tlv3[0]; - property->lg = lg; - property->infg = infg; - - - memcpy(property->tama_lv1, &tama_lv1, sizeof(tama1)*20); - memcpy(property->tama_lv2, &tama_lv2, sizeof(tama2)*20); - memcpy(property->laser_lv1, &laser_lv1, sizeof(laser)*20); - memcpy(property->laser_lv2, &laser_lv2, sizeof(laser)*20); - memcpy(property->laser_lv3, &laser_lv3, sizeof(laser)*128); - memcpy(property->bchar, &bchar, sizeof(bomchar)*100); - - return property; -} - -void -free_property(SchedTask *s, void *prop, void *chara) -{ - CollisionPropertyPtr property = (CollisionPropertyPtr)prop; - CHARACTER *character = (CHARACTER *)chara; - - if(infg_level <= property->infg_level||infg_level != 0) { - infg_level--; - } - if(lg.stg <= property->lg.stg) { - lg.stg -= 26; - } - enemycount += property->enemycount; - - jiki = property->jiki; - *character = property->p; - tlv3[0] = property->tlv3; - infg = property->infg; - - memcpy(tama_lv1, property->tama_lv1, sizeof(tama1)*20); - memcpy(tama_lv2, property->tama_lv2, sizeof(tama2)*20); - memcpy(laser_lv1, property->laser_lv1, sizeof(laser)*20); - memcpy(laser_lv2, property->laser_lv2, sizeof(laser)*20); - memcpy(laser_lv3, property->laser_lv3, sizeof(laser)*128); - memcpy(bchar, property->bchar, sizeof(bomchar)*100); - - delete property; -} - - -CHARACTER * atari(CHARACTER *p) -{ - int w, h, charno; - CollisionPropertyPtr property = get_property(p); - - charno = p->charano; - w = sptable[charno].w; - h = sptable[charno].h; - - HTaskPtr collision_task = tmanager->create_task(ATARI); - - collision_task->set_param(0,(memaddr)w); - collision_task->set_param(1,(memaddr)h); - collision_task->set_param(2,(memaddr)enemycount); - collision_task->set_param(3,(memaddr)bomend); - collision_task->set_param(4,(memaddr)tama_lv1_end); - collision_task->set_param(5,(memaddr)tama_lv2_end); - collision_task->set_param(6,(memaddr)laser_lv1_end); - collision_task->set_param(7,(memaddr)infg_level); - - collision_task->add_inData(property, sizeof(CollisionProperty)); - collision_task->add_outData(property, sizeof(CollisionProperty)); - collision_task->set_post(free_property, property, p); - - collision_task->set_cpu(SPE_ANY); - collision_task->spawn(); - - return p; -}