From 3f0c93cda1aca80d071143d625f46df8357dd61b Mon Sep 17 00:00:00 2001 From: Jean Privat Date: Mon, 14 Sep 2015 22:53:28 -0400 Subject: [PATCH] friendz: grid save also non-metal tiles Signed-off-by: Jean Privat --- contrib/friendz/src/grid.nit | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/contrib/friendz/src/grid.nit b/contrib/friendz/src/grid.nit index a097ff5..3b4fad9 100644 --- a/contrib/friendz/src/grid.nit +++ b/contrib/friendz/src/grid.nit @@ -191,14 +191,14 @@ class Grid fun save: String do var res = "" - var str = ".#ABCDEFGHI" + var str = ".abcdefghi#ABCDEFGHI" for y in [0..height[ do var rle = 0 var last: nullable Int = null for x in [0..width[ do var t = self.grid[x][y] - var tk = 0 - if t.fixed then tk = t.kind + 1 + var tk = t.kind + if t.fixed then tk += 10 if tk == last and rle<9 then rle += 1 else @@ -243,6 +243,7 @@ class Grid x += 1 else if c == '#' then var t = self.get(x,y) + assert t != null t.fixed = true x += 1 else if c >= 'A' and c <= 'I' then @@ -251,6 +252,11 @@ class Grid t.update(c.ascii-'A'.ascii+1) t.fixed = true x += 1 + else if c >= 'a' and c <= 'i' then + var t = self.get(x,y) + assert t != null + t.update(c.ascii-'a'.ascii+1) + x += 1 else if c >= '1' and c <= '9' then rle = c.to_i else -- 1.7.9.5