X-Git-Url: https://git.verplant.org/?a=blobdiff_plain;f=src%2Fstatistics.h;h=430e2161efb18182231bf61ef0005af4ecf22dca;hb=58da7bdf7b352989ef19d89a498938a12ca91b03;hp=72250c35bc90fa0bfb94dc77d8eef5143b97fe76;hpb=0acb7e4b13d8f4a61ff354502429b1263b0a831f;p=supertux.git diff --git a/src/statistics.h b/src/statistics.h index 72250c35b..430e2161e 100644 --- a/src/statistics.h +++ b/src/statistics.h @@ -20,22 +20,20 @@ #ifndef SUPERTUX_STATISTICS_H #define SUPERTUX_STATISTICS_H -#include "special/timer.h" +#include "timer.h" +#include "lisp/lisp.h" +#include "lisp/writer.h" -using namespace SuperTux; - -namespace SuperTux { -class LispReader; -class LispWriter; 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 }; @@ -46,13 +44,14 @@ enum { class Statistics { public: + // don't forget to call reset() to init stat Statistics(); ~Statistics(); /// read statistics from lisp file - void parse(LispReader& reader); + void parse(const lisp::Lisp& lisp); /// write statistics to lisp file - void write(LispWriter& writer); + void write(lisp::Writer& writer); /* Draw to the worldmap or a game message */ // TODO: make this functions working @@ -64,6 +63,8 @@ public: void set_points(int stat, int points); int get_points(int stat); + void set_total_points(int stat, int points); + /* Reset statistics */ void reset(); @@ -74,7 +75,7 @@ public: void operator+=(const Statistics& o); private: - int stats[NUM_STATS]; + int stats[NUM_STATS][2]; Timer timer; int display_stat;