#include "util/reader_fwd.hpp"
#include "util/writer_fwd.hpp"
#include "video/color.hpp"
-
-class Surface;
+#include "video/surface_ptr.hpp"
static const float BORDER_X = 10;
static const float BORDER_Y = 10;
enum BonusType {
- NO_BONUS, GROWUP_BONUS, FIRE_BONUS, ICE_BONUS
+ NO_BONUS, GROWUP_BONUS, FIRE_BONUS, ICE_BONUS, AIR_BONUS, EARTH_BONUS
};
class DrawingContext;
/**
- * This class memorizes player status between different game sessions (for
+ * This class keeps player status between different game sessions (for
* example when switching maps in the worldmap)
*/
class PlayerStatus
BonusType bonus;
int max_fire_bullets; /**< maximum number of fire bullets in play */
int max_ice_bullets; /**< maximum number of ice bullets in play */
+ int max_air_time; /**<determines maximum number of seconds player can float in air */
+ int max_earth_time; /**< determines maximum number of seconds player can turn to stone */
private:
- std::auto_ptr<Surface> coin_surface;
+ int displayed_coins;
+ int displayed_coins_frame;
+ SurfacePtr coin_surface;
private:
PlayerStatus(const PlayerStatus&);
PlayerStatus& operator=(const PlayerStatus&);
};
-// global player state
-extern PlayerStatus* player_status;
-
#endif
/* EOF */