#ifndef SUPERTUX_STATISTICS_H
#define SUPERTUX_STATISTICS_H
+#include "timer.h"
+
using namespace SuperTux;
namespace SuperTux {
class DrawingContext;
}
+#define SPLAYER 0
+#define STOTAL 1
+
enum {
SCORE_STAT,
- BADGUYS_SQUISHED_STAT,
- SHOTS_STAT,
+ COINS_COLLECTED_STAT,
+ BADGUYS_KILLED_STAT,
TIME_NEEDED_STAT,
- JUMPS_STAT,
NUM_STATS
};
class Statistics
{
public:
+ // don't forget to call reset() to init stat
Statistics();
~Statistics();
/* Draw to the worldmap or a game message */
// TODO: make this functions working
void draw_worldmap_info(DrawingContext& context);
- void draw_message_info(DrawingContext& context);
+ void draw_message_info(DrawingContext& context, std::string title);
+ /* Add / Set / Get points to/from one of the stats this can keep track of */
void add_points(int stat, int points);
+ void set_points(int stat, int points);
int get_points(int stat);
- void set_points(int stat, int points);
+ void set_total_points(int stat, int points);
+ /* Reset statistics */
void reset();
/* Give another Statistics object, find the best of each one */
void operator+=(const Statistics& o);
private:
- int stats[NUM_STATS];
+ int stats[NUM_STATS][2];
+
+ Timer2 timer;
+ int display_stat;
};
extern Statistics global_stats;