changeset 10:a6dc38328741

merge
author Shinji KONO <kono@ie.u-ryukyu.ac.jp>
date Wed, 08 Dec 2010 00:07:08 +0900
parents c88a4f98b5ef
children 5d2d9369052a
files Dandy.cc Dandy.h
diffstat 2 files changed, 25 insertions(+), 22 deletions(-) [+]
line wrap: on
line diff
--- a/Dandy.cc	Tue Dec 07 23:45:46 2010 +0900
+++ b/Dandy.cc	Wed Dec 08 00:07:08 2010 +0900
@@ -5,10 +5,17 @@
   -length  Number of data (default DATA_NUM (Func.h))\n\
   -count   Number of task (default 1)\n";
 
+static Viewer *sgroot;
+
+static    int screen_w;
+static    int screen_h;
 
 MainLoopPtr
-Dandy::init(Viewer *sgroot, int w, int h)
+Dandy::init(Viewer *sgroot_, int w, int h)
 {
+    screen_w = w;
+    screen_h = h;
+    sgroot = sgroot_;
     return sgroot;
 }
 
@@ -17,15 +24,13 @@
     return new Dandy();
 }
 
-static Viewer *sgroot;
 
 static int dandy_closing(int gamef);
 static int dandy_main_loop(int gamef);
 static int dandy_main_init(int gamef);
 
 bool 
-Dandy::app_main(Viewer *viewer){
-    sgroot = viewer;
+Dandy::app_loop(Viewer *viewer){
     // don't use allExecute
     return 0;
 };
@@ -148,11 +153,6 @@
      * timeprof があるんだけどね
      */
 
-
-
-
-    joy=SDL_JoystickOpen(0);
-  
     sgroot->createFromXMLfile("xml/character.xml");
     sgroot->createFromXMLfile("xml/font.xml");
     sgroot->createFromXMLfile("xml/effect.xml");
@@ -162,7 +162,7 @@
     init_sprite(0,0,0,0);
 
     __debug("syokikaが呼びだされました\n");
-    SDL_Joystick *joy=SDL_JoystickOpen(0);
+    joy=SDL_JoystickOpen(0);
     if(!joy) {
 	fprintf(stderr,"failed to open joystick 0\n");
 	use_keybord = 1;
@@ -367,9 +367,6 @@
 	    gamef = 0;
 	    break;
 	}
-
-
-	SDL_GL_SwapBuffers( );
     }
 }
 
@@ -475,14 +472,16 @@
 SpriteTable sptable[DEFOBJ];
 
 
-void DefSpriteEx(int number, short middlex, short middley)
+void
+DefSpriteEx(int number, short middlex, short middley)
 {
     sptable[number].mx = middlex;
     sptable[number].my = middley;
 }
 
 
-void DefSprite(int number, const char *name, float w, float h, int color, OBJECT *obj)
+void
+DefSprite(int number, const char *name, float w, float h, int color, OBJECT *obj)
 {
     SpriteTable *m = &sptable[number];
     m->w = w;
@@ -501,22 +500,26 @@
 
 }
 
-void PutSprite(int zorder, short x, short y, int number)
+void
+PutSprite(int zorder, short x, short y, int number)
 {
     SpriteTable *m = &sptable[number];
     char *name = (char *) m->texture;
     SceneGraphPtr object = sgroot->createSceneGraph(name);
-    object->xyz[0] = x;
-    object->xyz[1] = y;
+    object->xyz[0] = x + screen_w /2;
+    object->xyz[1] = y + screen_h /2;
+    object->xyz[2] = -100;
 }
 
-void PutSpriteEx(int number, int x, int y, float scalex, float scaley, float angle)
+void
+PutSpriteEx(int number, int x, int y, float scalex, float scaley, float angle)
 {
     SpriteTable *m = &sptable[number];
     char *name = (char *) m->texture;
     SceneGraphPtr object = sgroot->createSceneGraph(name);
-    object->xyz[0] = x;
-    object->xyz[1] = y;
+    object->xyz[0] = x + screen_w /2;
+    object->xyz[1] = y + screen_h /2;
+    object->xyz[2] = -100;
 }
 
 
--- a/Dandy.h	Tue Dec 07 23:45:46 2010 +0900
+++ b/Dandy.h	Wed Dec 08 00:07:08 2010 +0900
@@ -8,7 +8,7 @@
 #include "Func.h"
 
 class Dandy : public Application {
-    bool app_main(Viewer *viewer);
+    bool app_loop(Viewer *viewer);
     HTaskPtr application_task(HTaskPtr next, Viewer* viewer);
     MainLoopPtr init(Viewer *viewer, int w, int h);
 };