X-Git-Url: https://git.verplant.org/?a=blobdiff_plain;f=src%2Fstatistics.hpp;h=4aca2ad96778b44562ea97e2e58aab397e368aa2;hb=9f9a92cd9d8433c6d4d63b0178fd038a95b9e1a1;hp=d282e0e235a2f49377115a09896eb9de4d494a53;hpb=7c579d3ef0a6667c18b53dad84c63c05d2760a84;p=supertux.git diff --git a/src/statistics.hpp b/src/statistics.hpp index d282e0e23..4aca2ad96 100644 --- a/src/statistics.hpp +++ b/src/statistics.hpp @@ -22,6 +22,7 @@ #ifndef SUPERTUX_STATISTICS_H #define SUPERTUX_STATISTICS_H +#include #include "timer.hpp" namespace lisp { class Writer; } @@ -48,14 +49,25 @@ public: ~Statistics(); /// read statistics from lisp file - void parse(const lisp::Lisp& lisp); + //void parse(const lisp::Lisp& lisp); /// write statistics to lisp file - void write(lisp::Writer& writer); + //void write(lisp::Writer& writer); + + /** + * serialize statistics object as squirrel table "statistics" + */ + void serialize_to_squirrel(HSQUIRRELVM vm); + + /** + * unserialize statistics object from squirrel table "statistics" + */ + void unserialize_from_squirrel(HSQUIRRELVM vm); void draw_worldmap_info(DrawingContext& context); /**< draw worldmap stat HUD */ void draw_message_info(DrawingContext& context, std::string title); /**< draw stats at level start */ void draw_endseq_panel(DrawingContext& context, Statistics* best_stats, Surface* backdrop); /**< draw panel shown during level's end sequence */ + void zero(); /**< Set stats to zero */ void reset(); /**< Set stats (but not totals) to zero */ void merge(Statistics& stats); /**< Given another Statistics object finds the best of each one */ void operator+=(const Statistics& o); /**< Add two Statistics objects */