pingus-cvs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Pingus-CVS] rev 2340 - in trunk: data/data src/actions


From: Ingo Ruhnke
Subject: [Pingus-CVS] rev 2340 - in trunk: data/data src/actions
Date: Thu, 24 Jun 2004 01:15:46 +0200

Author: grumbel
Date: 2004-06-24 01:15:46 +0200 (Thu, 24 Jun 2004)
New Revision: 2340

Modified:
   trunk/data/data/pingus.xml
   trunk/src/actions/climber.cxx
   trunk/src/actions/climber.hxx
   trunk/src/actions/drown.cxx
   trunk/src/actions/drown.hxx
   trunk/src/actions/exiter.cxx
   trunk/src/actions/exiter.hxx
   trunk/src/actions/jumper.cxx
   trunk/src/actions/jumper.hxx
Log:
- some more resource fixes

Modified: trunk/data/data/pingus.xml
===================================================================
--- trunk/data/data/pingus.xml  2004-06-23 22:47:50 UTC (rev 2339)
+++ trunk/data/data/pingus.xml  2004-06-23 23:15:46 UTC (rev 2340)
@@ -317,13 +317,15 @@
     </sprite>
 
     <section name="exit">
-      <sprite name="right">
+      <sprite name="left">
+        <animation speed="60" loop="no" />
         <image file="../images/pingus/exit.png">
           <grid pos="0,0" size="32,32" array="9,1"/>
         </image>
       </sprite>
 
       <sprite name="right">
+        <animation speed="60" loop="no" />
         <image file="../images/pingus/exit.png">
           <grid pos="0,32" size="32,32" array="9,1"/>
         </image>
@@ -337,7 +339,7 @@
         </image>
       </sprite>
 
-      <sprite name="left">
+      <sprite name="right">
         <image file="../images/pingus/drownfall.png">
           <grid pos="0,32" size="32,32" array="15,1"/>
         </image>
@@ -350,7 +352,7 @@
           <grid pos="0,0" size="32,32" array="15,1"/>
         </image>
       </sprite>
-      <sprite name="left">
+      <sprite name="right">
         <image file="../images/pingus/drownwalk.png">
           <grid pos="0,32" size="32,32" array="15,1"/>
         </image>

Modified: trunk/src/actions/climber.cxx
===================================================================
--- trunk/src/actions/climber.cxx       2004-06-23 22:47:50 UTC (rev 2339)
+++ trunk/src/actions/climber.cxx       2004-06-23 23:15:46 UTC (rev 2340)
@@ -19,6 +19,7 @@
 
 #include "../col_map.hxx"
 #include "../gui/graphic_context.hxx"
+#include "../resource.hxx"
 #include "../pingu.hxx"
 #include "climber.hxx"
 
@@ -26,26 +27,17 @@
 namespace Actions {
 
 Climber::Climber (Pingu* p)
-  : PinguAction(p),
-    sprite(Sprite ("pingus/climber0")),
-    sprite_width(sprite.get_width()),
-    sprite_height(sprite.get_height())
+  : PinguAction(p)
 {
+  sprite.load(Direction::LEFT,  Resource::load_sprite("pingus/climber/left"));
+  sprite.load(Direction::RIGHT, Resource::load_sprite("pingus/climber/right"));
 }
 
 void
 Climber::update ()
 {
-  /*
-    std::cout << "Climer update()" << std::endl;
-    std::cout << "Direction: " << pingu->direction << std::endl;
-    printf("%3d %3d %3d\n", rel_getpixel(1,1), rel_getpixel(0,1), 
rel_getpixel(-1,1));
-    printf("%3d %3d %3d\n", rel_getpixel(1,0), rel_getpixel(0,0), 
rel_getpixel(-1,0));
-    printf("%3d %3d %3d\n", rel_getpixel(1,-1), 
rel_getpixel(0,-1),rel_getpixel(-1, -1));
-  */
+  sprite[pingu->direction].update();
 
-  sprite.update();
-
   // If above is free
   if (   rel_getpixel(0, 1) == Groundtype::GP_NOTHING
       || rel_getpixel(0, 1) == Groundtype::GP_BRIDGE)
@@ -89,19 +81,7 @@
 void
 Climber::draw (GraphicContext& gc)
 {
-  // This is necessary to prevent climber walking inside a wall.
-  if (pingu->direction.is_left())
-    {
-      sprite.set_align(0, -sprite_height/2);
-      sprite.set_direction(Sprite::LEFT);
-    }
-  else
-    {
-      sprite.set_align(-sprite_width, -sprite_height/2);
-      sprite.set_direction(Sprite::RIGHT);
-    }
-
-  gc.draw (sprite, pingu->get_pos());
+  gc.draw(sprite[pingu->direction], pingu->get_pos());
 }
 
 bool

Modified: trunk/src/actions/climber.hxx
===================================================================
--- trunk/src/actions/climber.hxx       2004-06-23 22:47:50 UTC (rev 2339)
+++ trunk/src/actions/climber.hxx       2004-06-23 23:15:46 UTC (rev 2340)
@@ -20,7 +20,7 @@
 #ifndef HEADER_PINGUS_ACTIONS_CLIMBER_HXX
 #define HEADER_PINGUS_ACTIONS_CLIMBER_HXX
 
-#include "../sprite.hxx"
+#include "../state_sprite.hxx"
 #include "../pingu_action.hxx"
 
 namespace Pingus {
@@ -29,7 +29,7 @@
 class Climber : public PinguAction
 {
 private:
-  Sprite sprite;
+  StateSprite sprite;
   int sprite_width;
   int sprite_height;
 

Modified: trunk/src/actions/drown.cxx
===================================================================
--- trunk/src/actions/drown.cxx 2004-06-23 22:47:50 UTC (rev 2339)
+++ trunk/src/actions/drown.cxx 2004-06-23 23:15:46 UTC (rev 2340)
@@ -20,35 +20,30 @@
 #include "../vector.hxx"
 #include "../gui/graphic_context.hxx"
 #include "../pingu.hxx"
+#include "../resource.hxx"
 #include "drown.hxx"
 
 namespace Pingus {
 namespace Actions {
 
 Drown::Drown (Pingu* p)
-  : PinguAction(p),
-    sprite(Sprite("pingus/drownfall0", "", 60.0f, Sprite::NONE, Sprite::ONCE))
+  : PinguAction(p)
 {
-  sprite.set_align_center_bottom();
+  sprite.load(Direction::LEFT,  
Resource::load_sprite("pingus/drownfall/left"));
+  sprite.load(Direction::RIGHT, 
Resource::load_sprite("pingus/drownfall/right"));
 }
 
 void
 Drown::draw (GraphicContext& gc)
 {
-  // FIXME: Direction handling is ugly
-  if (pingu->direction.is_left())
-    sprite.set_direction(Sprite::LEFT);
-  else
-    sprite.set_direction(Sprite::RIGHT);
-
-  gc.draw(sprite, pingu->get_pos ());
+  gc.draw(sprite[pingu->direction], pingu->get_pos ());
 }
 
 void
 Drown::update ()
 {
-  sprite.update();
-  if (sprite.finished())
+  sprite[pingu->direction].update();
+  if (sprite[pingu->direction].is_finished())
     {
       pingu->set_status(PS_DEAD);
     }

Modified: trunk/src/actions/drown.hxx
===================================================================
--- trunk/src/actions/drown.hxx 2004-06-23 22:47:50 UTC (rev 2339)
+++ trunk/src/actions/drown.hxx 2004-06-23 23:15:46 UTC (rev 2340)
@@ -20,7 +20,7 @@
 #ifndef HEADER_PINGUS_ACTIONS_DROWN_HXX
 #define HEADER_PINGUS_ACTIONS_DROWN_HXX
 
-#include "../sprite.hxx"
+#include "../state_sprite.hxx"
 #include "../pingu_action.hxx"
 
 namespace Pingus {
@@ -29,7 +29,7 @@
 class Drown : public PinguAction
 {
 private:
-  Sprite sprite;
+  StateSprite sprite;
 
 public:
   Drown (Pingu* p);

Modified: trunk/src/actions/exiter.cxx
===================================================================
--- trunk/src/actions/exiter.cxx        2004-06-23 22:47:50 UTC (rev 2339)
+++ trunk/src/actions/exiter.cxx        2004-06-23 23:15:46 UTC (rev 2340)
@@ -19,6 +19,7 @@
 
 #include "../vector.hxx"
 #include "../gui/graphic_context.hxx"
+#include "../resource.hxx"
 #include "../pingu.hxx"
 #include "../sound/sound.hxx"
 #include "exiter.hxx"
@@ -28,16 +29,16 @@
 
 Exiter::Exiter (Pingu* p)
   : PinguAction(p),
-    sprite(Sprite("pingus/exit0", "", 15.0f, Sprite::NONE, Sprite::ONCE)),
     sound_played(false)
 {
-  sprite.set_align_center_bottom();
+  sprite.load(Direction::LEFT,  Resource::load_sprite("pingus/exit"));
+  sprite.load(Direction::RIGHT, Resource::load_sprite("pingus/exit"));
 }
 
 void
 Exiter::update ()
 {
-  sprite.update();
+  sprite[pingu->direction].update();
 
   if (!sound_played)
     {
@@ -45,7 +46,7 @@
       Sound::PingusSound::play_sound("yipee");
     }
 
-  if (sprite.finished())
+  if (sprite[pingu->direction].is_finished())
     {
       if (pingu->get_status() != PS_EXITED)
        {
@@ -57,12 +58,7 @@
 void
 Exiter::draw (GraphicContext& gc)
 {
-  if (pingu->direction.is_left())
-    sprite.set_direction(Sprite::LEFT);
-  else
-    sprite.set_direction(Sprite::RIGHT);
-
-  gc.draw(sprite, pingu->get_pos ());
+  gc.draw(sprite[pingu->direction], pingu->get_pos());
 }
 
 } // namespace Actions

Modified: trunk/src/actions/exiter.hxx
===================================================================
--- trunk/src/actions/exiter.hxx        2004-06-23 22:47:50 UTC (rev 2339)
+++ trunk/src/actions/exiter.hxx        2004-06-23 23:15:46 UTC (rev 2340)
@@ -20,7 +20,7 @@
 #ifndef HEADER_PINGUS_ACTIONS_EXITER_HXX
 #define HEADER_PINGUS_ACTIONS_EXITER_HXX
 
-#include "../sprite.hxx"
+#include "../state_sprite.hxx"
 #include "../pingu_action.hxx"
 
 namespace Pingus {
@@ -29,7 +29,7 @@
 class Exiter : public PinguAction
 {
 private:
-  Sprite sprite;
+  StateSprite sprite;
   bool sound_played;
 
 public:

Modified: trunk/src/actions/jumper.cxx
===================================================================
--- trunk/src/actions/jumper.cxx        2004-06-23 22:47:50 UTC (rev 2339)
+++ trunk/src/actions/jumper.cxx        2004-06-23 23:15:46 UTC (rev 2340)
@@ -20,6 +20,7 @@
 #include "../vector.hxx"
 #include "../gui/graphic_context.hxx"
 #include "../pingu.hxx"
+#include "../resource.hxx"
 #include "../string_converter.hxx"
 #include "jumper.hxx"
 
@@ -27,16 +28,16 @@
 namespace Actions {
 
 Jumper::Jumper (Pingu* p)
-  : PinguAction(p),
-    sprite("pingus/jumper")
+  : PinguAction(p)
 {
-  sprite.set_align_center_bottom();
+  sprite.load(Direction::LEFT,  Resource::load_sprite("pingus/jumper/left"));
+  sprite.load(Direction::RIGHT, Resource::load_sprite("pingus/jumper/right"));
 }
 
 void
 Jumper::draw (GraphicContext& gc)
 {
-  gc.draw(sprite, pingu->get_pos());
+  gc.draw(sprite[pingu->direction], pingu->get_pos());
 }
 
 void

Modified: trunk/src/actions/jumper.hxx
===================================================================
--- trunk/src/actions/jumper.hxx        2004-06-23 22:47:50 UTC (rev 2339)
+++ trunk/src/actions/jumper.hxx        2004-06-23 23:15:46 UTC (rev 2340)
@@ -20,7 +20,7 @@
 #ifndef HEADER_PINGUS_ACTIONS_JUMPER_HXX
 #define HEADER_PINGUS_ACTIONS_JUMPER_HXX
 
-#include "../sprite.hxx"
+#include "../state_sprite.hxx"
 #include "../pingu_action.hxx"
 
 namespace Pingus {
@@ -29,7 +29,7 @@
 class Jumper : public PinguAction
 {
 private:
-  Sprite sprite;
+  StateSprite sprite;
 public:
   Jumper(Pingu*);
 





reply via email to

[Prev in Thread] Current Thread [Next in Thread]