X-Git-Url: https://git.verplant.org/?a=blobdiff_plain;f=src%2Fplayer_status.hpp;h=85ac0590ba2beb96086e23345fbc87b918af736d;hb=65d0d1559c7327b38a707adee1b37aa801cd10d5;hp=0e768ae463ee82820fb18267410f77c04ed217b8;hpb=4f011ba68aed4c9775cdfb69f19c5daf66101dcb;p=supertux.git diff --git a/src/player_status.hpp b/src/player_status.hpp index 0e768ae46..85ac0590b 100644 --- a/src/player_status.hpp +++ b/src/player_status.hpp @@ -20,13 +20,12 @@ #ifndef SUPERTUX_PLAYERSTATUS_H #define SUPERTUX_PLAYERSTATUS_H -#include #include -#include "lisp/lisp.hpp" -#include "timer.hpp" #include "serializable.hpp" -#include "sprite/sprite.hpp" -#include "console.hpp" + +namespace lisp{ class Writer; } +namespace lisp{ class Lisp; } +class Surface; static const float BORDER_X = 10; static const float BORDER_Y = 10; @@ -36,27 +35,23 @@ enum BonusType { }; class DrawingContext; -/** +/** * This class memorizes player status between different game sessions (for * example when switching maps in the worldmap) */ -class PlayerStatus : public Serializable, public ConsoleCommandReceiver +class PlayerStatus : public Serializable { public: PlayerStatus(); ~PlayerStatus(); - void reset(); - void add_coins(int count); - void set_keys(int new_key); + void reset(); + void add_coins(int count, bool play_sound = true); void write(lisp::Writer& writer); void read(const lisp::Lisp& lisp); void draw(DrawingContext& context); - void draw_keys(DrawingContext& context); - bool consoleCommand(std::string command, std::vector arguments); /**< callback from Console; return false if command was unknown, true otherwise */ - int coins; BonusType bonus; int max_fire_bullets; /**< maximum number of fire bullets in play */ @@ -66,27 +61,12 @@ public: int max_score_multiplier; void operator= (const PlayerStatus& other); - - enum { - KEY_BRASS = 0x001, - KEY_IRON = 0x002, - KEY_BRONZE = 0x004, - KEY_SILVER = 0x008, - KEY_GOLD = 0x010, - }; private: // don't use this PlayerStatus(const PlayerStatus& other); - - int keys; - std::auto_ptr tux_life; - std::auto_ptr key_iron; - std::auto_ptr key_brass; - std::auto_ptr key_bronze; - std::auto_ptr key_silver; - std::auto_ptr key_gold; + std::auto_ptr coin_surface; }; // global player state