From 28386e5957015d630ab3947499ffd51d77f32332 Mon Sep 17 00:00:00 2001 From: =?utf8?q?Alexis=20Laferri=C3=A8re?= Date: Mon, 5 Jan 2015 12:42:23 -0500 Subject: [PATCH] contrib/friendz: use `app:data_store` to keep best scores MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit Signed-off-by: Alexis Laferrière --- contrib/friendz/src/friendz.nit | 21 +++++++++++++++++++++ contrib/friendz/src/level.nit | 8 ++------ 2 files changed, 23 insertions(+), 6 deletions(-) diff --git a/contrib/friendz/src/friendz.nit b/contrib/friendz/src/friendz.nit index 13915e6..949a2cf 100644 --- a/contrib/friendz/src/friendz.nit +++ b/contrib/friendz/src/friendz.nit @@ -17,6 +17,8 @@ import mnit import realtime import solver import mnit::tileset +import app::data_store +import md5 intrude import grid intrude import level @@ -1267,6 +1269,18 @@ redef class Game end end end + + redef fun load_levels + do + super + + for level in levels do + var score = app.data_store["s{level.str.md5}"] + if score isa Int then + level.score = score + end + end + end end # The spash title image @@ -1634,3 +1648,10 @@ redef class KeyEvent return "unknown" end end + +redef class Level + redef fun save + do + app.data_store["s{str.md5}"] = if score > 0 then score else null + end +end diff --git a/contrib/friendz/src/level.nit b/contrib/friendz/src/level.nit index d459875..9d8029e 100644 --- a/contrib/friendz/src/level.nit +++ b/contrib/friendz/src/level.nit @@ -96,10 +96,8 @@ class Level return true end - fun save - do - #save_cookie("s"+self.hash, self.score>0?self.score:"") - end + # Save the score of the level + fun save do end end # main game object @@ -174,8 +172,6 @@ class Game for i in [0..levels_code.length[ do var l = new Level(self,i, levels_code[i]) levels[i] = l - #var v = read_cookie("s"+l.hash) - #l = v end end -- 1.7.9.5