# HG changeset patch # User koba # Date 1287337972 -32400 # Node ID fd9deaa67de926f76bcf4234ff44dc5b68556eab # Parent ec540ce4519dfb221b885d5dc5793b356dfeb38c debug done. diff -r ec540ce4519d -r fd9deaa67de9 Func.h --- a/Func.h Mon Sep 20 20:56:31 2010 +0900 +++ b/Func.h Mon Oct 18 02:52:52 2010 +0900 @@ -1,6 +1,8 @@ enum { #include "SysTasks.h" +#include "RenderingTasks.h" TITLE_MOVE, + CRAB_MOVE, TITLE_COLL, MOVE_00, MOVE_01, @@ -47,4 +49,3 @@ ASTEROID, }; - diff -r ec540ce4519d -r fd9deaa67de9 dandy.h --- a/dandy.h Mon Sep 20 20:56:31 2010 +0900 +++ b/dandy.h Mon Oct 18 02:52:52 2010 +0900 @@ -9,7 +9,7 @@ #include "MainLoop.h" #include "Func.h" -class dandy : public Application { +class Dandy : public Application { MainLoopPtr init(Viewer *viewer, int w, int h); }; @@ -17,16 +17,16 @@ typedef void (*coll)(SceneGraphPtr node, void *sgroot_, int w, int h, SceneGraphPtr tree); typedef struct { - double x, y; //8? - double vx, vy; //8? + double x, y; //16 + double vx, vy; //16 int frame; //4 - const char *chara; + const char *chara; //1 int vital; //4 int score; //4 - void *parent; - void *root; - int flag; - + void *parent; //4 + void *root; //4 + int flag; //4 + char a, i, u; //3 } *ObjPropertyPtr, ObjProperty; extern ObjProperty back_property; @@ -34,22 +34,6 @@ static const int ENEMY_NUM = 2; -static const float player_speed = 10.0f; -static const float player_radius = 42.0f; - -static const float boss_radius_x = 65.4f; -static const float boss_radius_y = 130.8f; -static const float first_boss1_speed = 10.0; -static const float first_boss1_depth = 500.0; -static const float return_boss1_depth_speed = 10.0; - -static const float shot_speed = 30.0f; -static const float shot_radius = 42.4f; - -//extern void title_move(SceneGraphPtr node, void *sgroot_, int w, int h); -//extern void title_coll(SceneGraphPtr node, void *sgroot_, int w, int h, SceneGraphPtr tree); -//extern void dandy_move(SceneGraphPtr node, void *sgroot_, int w, int h); -//extern void dandy_coll(SceneGraphPtr node, void *sgroot_, int w, int h,SceneGraphPtr tree); extern void create_title_back(Viewer *sgroot, int w, int h); extern void create_stage(void *sgroot, int w, int h); extern void schedule(SceneGraphPtr node, void *sgroot_, int w, int h); @@ -67,54 +51,54 @@ //const state enemystate[50]; #define ENEMY_STATUS_TABLE {\ - ENEMY_STATUS("title001" , 0 , 0), \ - ENEMY_STATUS("greencrab", 330, 98), \ - ENEMY_STATUS("plane", 470, 37), \ - ENEMY_STATUS("e_redbullet", 30, 16), \ - ENEMY_STATUS("bass1_organ", 25000, 10000), \ - ENEMY_STATUS("boss1_parts1", 10000, 10000), \ - ENEMY_STATUS("bluebullet", 40, 39), \ - ENEMY_STATUS("e_laser", 100, 100000), \ - ENEMY_STATUS("lightning", 100, 100000), \ - ENEMY_STATUS("asteroid", 170, 500), \ - ENEMY_STATUS("asteroid_boss2body", 100, 500), \ - ENEMY_STATUS("boss2_leftshoulder", 10000, 12000), \ - ENEMY_STATUS("t", 0, 0), \ - ENEMY_STATUS("t", 0, 0), \ - ENEMY_STATUS("t", 0, 0), \ - ENEMY_STATUS("t", 0, 0), \ - ENEMY_STATUS("t", 0, 0), \ - ENEMY_STATUS("t", 0, 0), \ - ENEMY_STATUS("t", 0, 0), \ - ENEMY_STATUS("t", 0, 0), \ - ENEMY_STATUS("t", 0, 0), \ - ENEMY_STATUS("t", 0, 0), \ - ENEMY_STATUS("t", 0, 0), \ - ENEMY_STATUS("t", 0, 0), \ - ENEMY_STATUS("t", 0, 0), \ - ENEMY_STATUS("t", 0, 0), \ - ENEMY_STATUS("t", 0, 0), \ - ENEMY_STATUS("t", 0, 0), \ - ENEMY_STATUS("t", 0, 0), \ - ENEMY_STATUS("t", 0, 0), \ - ENEMY_STATUS("t", 0, 0), \ - ENEMY_STATUS("t", 0, 0), \ - ENEMY_STATUS("t", 0, 0), \ - ENEMY_STATUS("t", 0, 0), \ - ENEMY_STATUS("t", 0, 0), \ - ENEMY_STATUS("t", 0, 0), \ - ENEMY_STATUS("t", 0, 0), \ - ENEMY_STATUS("t", 0, 0), \ - ENEMY_STATUS("t", 0, 0), \ - ENEMY_STATUS("t", 0, 0), \ - ENEMY_STATUS("t", 0, 0), \ - ENEMY_STATUS("t", 0, 0), \ - ENEMY_STATUS("t", 0, 0), \ - ENEMY_STATUS("t", 0, 0), \ - ENEMY_STATUS("t", 0, 0), \ - ENEMY_STATUS("t", 0, 0), \ - ENEMY_STATUS("t", 0, 0), \ - ENEMY_STATUS("t", 0, 0), \ - ENEMY_STATUS("t", 0, 0), \ - ENEMY_STATUS("t", 0, 0), \ + ENEMY_STATUS("title001", 0, 0),\ + ENEMY_STATUS("greencrab", 330, 98),\ + ENEMY_STATUS("plane", 470, 37),\ + ENEMY_STATUS("e_redbullet", 30, 16),\ + ENEMY_STATUS("bass1_organ", 25000, 10000),\ + ENEMY_STATUS("boss1_parts1", 10000, 10000),\ + ENEMY_STATUS("bluebullet", 40, 39),\ + ENEMY_STATUS("e_laser", 100, 100000),\ + ENEMY_STATUS("lightning", 100, 100000),\ + ENEMY_STATUS("asteroid", 170, 500),\ + ENEMY_STATUS("asteroid_boss2body", 100, 500),\ + ENEMY_STATUS("boss2_leftshoulder", 10000, 12000),\ + ENEMY_STATUS("t", 0, 0),\ + ENEMY_STATUS("t", 0, 0),\ + ENEMY_STATUS("t", 0, 0),\ + ENEMY_STATUS("t", 0, 0),\ + ENEMY_STATUS("t", 0, 0),\ + ENEMY_STATUS("t", 0, 0),\ + ENEMY_STATUS("t", 0, 0),\ + ENEMY_STATUS("t", 0, 0),\ + ENEMY_STATUS("t", 0, 0),\ + ENEMY_STATUS("t", 0, 0),\ + ENEMY_STATUS("t", 0, 0),\ + ENEMY_STATUS("t", 0, 0),\ + ENEMY_STATUS("t", 0, 0),\ + ENEMY_STATUS("t", 0, 0),\ + ENEMY_STATUS("t", 0, 0),\ + ENEMY_STATUS("t", 0, 0),\ + ENEMY_STATUS("t", 0, 0),\ + ENEMY_STATUS("t", 0, 0),\ + ENEMY_STATUS("t", 0, 0),\ + ENEMY_STATUS("t", 0, 0),\ + ENEMY_STATUS("t", 0, 0),\ + ENEMY_STATUS("t", 0, 0),\ + ENEMY_STATUS("t", 0, 0),\ + ENEMY_STATUS("t", 0, 0),\ + ENEMY_STATUS("t", 0, 0),\ + ENEMY_STATUS("t", 0, 0),\ + ENEMY_STATUS("t", 0, 0),\ + ENEMY_STATUS("t", 0, 0),\ + ENEMY_STATUS("t", 0, 0),\ + ENEMY_STATUS("t", 0, 0),\ + ENEMY_STATUS("t", 0, 0),\ + ENEMY_STATUS("t", 0, 0),\ + ENEMY_STATUS("t", 0, 0),\ + ENEMY_STATUS("t", 0, 0),\ + ENEMY_STATUS("t", 0, 0),\ + ENEMY_STATUS("t", 0, 0),\ + ENEMY_STATUS("t", 0, 0),\ + ENEMY_STATUS("t", 0, 0),\ } diff -r ec540ce4519d -r fd9deaa67de9 main.cc --- a/main.cc Mon Sep 20 20:56:31 2010 +0900 +++ b/main.cc Mon Oct 18 02:52:52 2010 +0900 @@ -33,7 +33,7 @@ sgroot->createFromXMLfile("xml/greencrab.xml"); sgroot->createFromXMLfile("xml/bluebullet.xml"); sgroot->createFromXMLfile("xml/redbullet.xml"); - sgroot->createFromXMLfile("xml/title2.xml"); + sgroot->createFromXMLfile("xml/title2.xml"); for (int i = 0; i < ENEMY_NUM; i++) { charactor[i].root = (void*)sgroot->createSceneGraph(status[i].charano); @@ -46,16 +46,16 @@ ObjPropertyPtr charactor; MainLoopPtr -dandy::init(Viewer *sgroot, int w, int h) +Dandy::init(Viewer *sgroot, int w, int h) { - charactor = (ObjPropertyPtr)sgroot->manager->allocate(sizeof(ObjPropertyPtr)*ENEMY_NUM); + charactor = (ObjPropertyPtr)sgroot->manager->allocate(sizeof(ObjProperty)*ENEMY_NUM); init_charactor(sgroot, w, h); return sgroot; } extern Application * application() { - return new dandy(); + return new Dandy(); } extern int init(TaskManager *manager, int argc, char *argv[]); diff -r ec540ce4519d -r fd9deaa67de9 ppe/TitleMove.cc --- a/ppe/TitleMove.cc Mon Sep 20 20:56:31 2010 +0900 +++ b/ppe/TitleMove.cc Mon Oct 18 02:52:52 2010 +0900 @@ -1,6 +1,6 @@ #include #include "SchedTask.h" -#include "TitleMove.h" +#include "Property.h" #include "Pad.h" #include "Func.h" diff -r ec540ce4519d -r fd9deaa67de9 ppe/task_init.cc --- a/ppe/task_init.cc Mon Sep 20 20:56:31 2010 +0900 +++ b/ppe/task_init.cc Mon Oct 18 02:52:52 2010 +0900 @@ -3,6 +3,7 @@ /* 必ずこの位置に書いて */ SchedExternTask(TitleMove); +SchedExternTask(CrabMove); SchedExternTask(TitleColl); /* SchedExternTask(Move00); @@ -66,6 +67,7 @@ task_init(void) { SchedRegisterTask(TITLE_MOVE, TitleMove); + SchedRegisterTask(CRAB_MOVE, CrabMove); SchedRegisterTask(TITLE_COLL, TitleColl); /* SchedRegisterTask(MOVE_00, Move00); diff -r ec540ce4519d -r fd9deaa67de9 stage_init.cc --- a/stage_init.cc Mon Sep 20 20:56:31 2010 +0900 +++ b/stage_init.cc Mon Oct 18 02:52:52 2010 +0900 @@ -1,13 +1,24 @@ #include "dandy.h" void +create_crab(SchedTask *s, void *charactor_, void *b) +{ + ObjPropertyPtr charactor = (ObjPropertyPtr)charactor_; + SceneGraphPtr crab = (SceneGraphPtr)charactor[1].root; + + crab->xyz[0] = charactor[1].x; + crab->xyz[1] = charactor[1].y; +} + +void create_title(SchedTask *s, void *charactor_, void *b) { ObjPropertyPtr charactor = (ObjPropertyPtr)charactor_; + SceneGraphPtr title = (SceneGraphPtr)charactor->root; if (charactor->flag == 1) { - /* タイトルが終わり、次はココにゲームの準備をする処理を書く */ - printf("Title finished"); + title->remove(); + charactor->flag = 0; } } @@ -16,8 +27,9 @@ { Viewer *sgroot = sgroot_; SceneGraphPtr back; + back = sgroot->createSceneGraph(); - back = sgroot->createSceneGraph(); + SceneGraphPtr title = (SceneGraphPtr)charactor[0].root; charactor[0].x = w/2; charactor[0].y = h/2; charactor[0].vx = 1.0; @@ -25,13 +37,26 @@ charactor[0].flag = 0; charactor[0].parent = (void*)back; - SceneGraphPtr title = (SceneGraphPtr)charactor[0].root; title->xyz[0] = charactor[0].x; title->xyz[1] = charactor[0].y; + + SceneGraphPtr crab = (SceneGraphPtr)charactor[1].root; + charactor[1].x = 0.0; + charactor[1].y = 0.0; + charactor[1].vx = 1.0; + charactor[1].vy = 1.0; + charactor[1].flag = 0; + charactor[1].parent = (void*)back; + crab->xyz[0] = charactor[1].x; + crab->xyz[1] = charactor[1].y; + + back->addChild(title); + // back->addChild(crab); + sgroot->setSceneData(back); + int size = sizeof(ObjProperty); - back->addChild(title); - sgroot->setSceneData(back); + // sgroot->set_pad_task(crab, CRAB_MOVE, (void*)&charactor[1], size, create_crab); sgroot->set_pad_task(title, TITLE_MOVE, (void*)&charactor[0], size, create_title); }