- Made miniswig support HSQUIRRELVM arguments (and realized it was not needed
[supertux.git] / src / player_status.cpp
index ba8b633..6fcf66c 100644 (file)
@@ -29,7 +29,7 @@ static const int MAX_LIVES = 99;
 PlayerStatus player_status;
 
 PlayerStatus::PlayerStatus()
-  : distros(0),
+  : coins(0),
     lives(START_LIVES),
     bonus(NO_BONUS),
     score_multiplier(1),
@@ -39,7 +39,7 @@ PlayerStatus::PlayerStatus()
 
 void PlayerStatus::reset()
 {
-  distros = 0;
+  coins = 0;
   lives = START_LIVES;
   bonus = NO_BONUS;
   score_multiplier = 1;
@@ -51,40 +51,43 @@ PlayerStatus::incLives()
 {
   if(lives < MAX_LIVES)
     ++lives;
-  SoundManager::get()->play_sound(IDToSound(SND_LIFEUP));
+  sound_manager->play_sound("lifeup");
 }
 
 void
 PlayerStatus::incCoins()
 {
-  distros++;
-  if(distros >= 100) {
+  coins++;
+  if(coins >= 100) {
     incLives();
-    distros = 0;
+    coins = 0;
   }
-  SoundManager::get()->play_sound(IDToSound(SND_DISTRO));
+  sound_manager->play_sound("coin");
 }
 
 void
 PlayerStatus::write(lisp::Writer& writer)
 {
   switch(bonus) {
-    case PlayerStatus::NO_BONUS:
+    case NO_BONUS:
       writer.write_string("bonus", "none");
       break;
-    case PlayerStatus::GROWUP_BONUS:
+    case GROWUP_BONUS:
       writer.write_string("bonus", "growup");
       break;
-    case PlayerStatus::FLOWER_BONUS:
+    case FIRE_BONUS:
       writer.write_string("bonus", "fireflower");
       break;
+    case ICE_BONUS:
+      writer.write_string("bonus", "iceflower");
+      break;
     default:
       std::cerr << "Unknown bonus type.\n";
       writer.write_string("bonus", "none");
   }
 
   writer.write_int("lives", lives);
-  writer.write_int("distros", distros);
+  writer.write_int("coins", coins);
   writer.write_int("max-score-multiplier", max_score_multiplier);
 }
 
@@ -100,7 +103,9 @@ PlayerStatus::read(const lisp::Lisp& lisp)
     } else if(bonusname == "growup") {
       bonus = GROWUP_BONUS;
     } else if(bonusname == "fireflower") {
-      bonus = FLOWER_BONUS;
+      bonus = FIRE_BONUS;
+    } else if(bonusname == "iceflower") {
+      bonus = ICE_BONUS;
     } else {
       std::cerr << "Unknown bonus '" << bonusname << "' in savefile.\n";
       bonus = NO_BONUS;
@@ -108,7 +113,7 @@ PlayerStatus::read(const lisp::Lisp& lisp)
   }
 
   lisp.get("lives", lives);
-  lisp.get("distros", distros);
+  lisp.get("coins", coins);
   lisp.get("max-score-multiplier", max_score_multiplier);
 }