Russian translation update from Constantin Baranov... from December.
[supertux.git] / src / badguy / mole.cpp
index 73c1877..7f1bb7e 100644 (file)
@@ -33,15 +33,21 @@ static const float THROW_INTERVAL = 1; /**< time between two thrown rocks */
 static const float THROW_VELOCITY = 400; /**< initial velocity of thrown rocks */
 
 Mole::Mole(const lisp::Lisp& reader)
-       : BadGuy(reader, "images/creatures/mole/mole.sprite", LAYER_TILES-1), state(PRE_THROWING)
+  : BadGuy(reader, "images/creatures/mole/mole.sprite", LAYER_TILES-1), state(PRE_THROWING)
 {
   physic.enable_gravity(false);
+  sound_manager->preload("sounds/fall.wav");
+  sound_manager->preload("sounds/squish.wav");
+  sound_manager->preload("sounds/dartfire.wav");
 }
 
 Mole::Mole(const Vector& pos)
-       : BadGuy(pos, "images/creatures/mole/mole.sprite", LAYER_TILES-1), state(PRE_THROWING)
+  : BadGuy(pos, "images/creatures/mole/mole.sprite", LAYER_TILES-1), state(PRE_THROWING)
 {
   physic.enable_gravity(false);
+  sound_manager->preload("sounds/fall.wav");
+  sound_manager->preload("sounds/squish.wav");
+  sound_manager->preload("sounds/dartfire.wav");
 }
 
 void
@@ -104,26 +110,26 @@ Mole::active_update(float elapsed_time)
   switch (state) {
     case PRE_THROWING:
       if (timer.check()) {
-       set_state(THROWING);
+        set_state(THROWING);
       }
       break;
     case THROWING:
       if (throw_timer.check()) {
         throw_rock();
-       throw_timer.start(THROW_INTERVAL);
+        throw_timer.start(THROW_INTERVAL);
       }
       if (timer.check()) {
-       set_state(POST_THROWING);
+        set_state(POST_THROWING);
       }
       break;
     case POST_THROWING:
       if (timer.check()) {
-       set_state(PEEKING);
+        set_state(PEEKING);
       }
       break;
     case PEEKING:
       if (sprite->animation_done()) {
-       set_state(PRE_THROWING);
+        set_state(PRE_THROWING);
       }
       break;
     case DEAD:
@@ -132,33 +138,33 @@ Mole::active_update(float elapsed_time)
 
 }
 
-void 
+void
 Mole::set_state(MoleState new_state)
 {
   switch (new_state) {
     case PRE_THROWING:
       sprite->set_action("idle");
-      set_group(COLGROUP_DISABLED);
+      set_colgroup_active(COLGROUP_DISABLED);
       timer.start(IDLE_TIME);
       break;
     case THROWING:
       sprite->set_action("idle");
-      set_group(COLGROUP_DISABLED);
+      set_colgroup_active(COLGROUP_DISABLED);
       timer.start(THROW_TIME);
       throw_timer.start(THROW_INTERVAL);
       break;
     case POST_THROWING:
       sprite->set_action("idle");
-      set_group(COLGROUP_DISABLED);
+      set_colgroup_active(COLGROUP_DISABLED);
       timer.start(IDLE_TIME);
       break;
     case PEEKING:
       sprite->set_action("peeking", 1);
-      set_group(COLGROUP_STATIC);
+      set_colgroup_active(COLGROUP_STATIC);
       break;
     case DEAD:
       sprite->set_action("idle");
-      set_group(COLGROUP_DISABLED);
+      set_colgroup_active(COLGROUP_DISABLED);
       break;
   }
 
@@ -166,4 +172,3 @@ Mole::set_state(MoleState new_state)
 }
 
 IMPLEMENT_FACTORY(Mole, "mole")
-