From 34b702561adbd1e518476f619c134b5fec04d976 Mon Sep 17 00:00:00 2001 From: Milang Date: Sun, 12 Jan 2020 14:34:13 +0100 Subject: [PATCH] add python script "levelconv.py" --- levelconverter/1-2.png | Bin 0 -> 3796 bytes levelconverter/levelconv.py | 71 ++++++++++++++++++++++++++++++++++++ 2 files changed, 71 insertions(+) create mode 100644 levelconverter/1-2.png create mode 100644 levelconverter/levelconv.py diff --git a/levelconverter/1-2.png b/levelconverter/1-2.png new file mode 100644 index 0000000000000000000000000000000000000000..aa2a3cd662151ab4cbae58bbc083b508074742a2 GIT binary patch literal 3796 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 ") +img = Image.open(filename) +print("Loaded", filename, "(size =", img.size, ")") + +code = "w_current_x = " + str(img.size[0]) + ";\nw_current_y = " + str(img.size[1]) + ";\nworld_t lvl[]=\n{" +largeur=img.size[0] +hauteur=img.size[1] + +# Balayage des pixels : passe pour dessiner les murs +pixels = img.load() +for x in range(0,img.size[0]): + code += "\n " + for i in range(0, img.size[1]): + y=img.size[1]-i-1 + if pixels[x,y] == brique: + code += "{BRICK,0}, " + elif pixels[x,y] == pierre: + hexa="0x" + + left=1 + right=1 + + if x != 0: + left = (pixels[x-1,y] == pierre) + if x != img.size[0]-1: + right = (pixels[x+1,y] == pierre) + + sx=0 + if left and right: + sx=1 + elif left and right==0: + sx=2 + elif left==0 and right: + sx=0 + hexa+= str(sx) + + + up=0 # vide par defaut + down=1 + + if y != 0: + up = (pixels[x,y-1] == pierre) + if y != img.size[1]-1: + down = (pixels[x,y+1] == pierre) + + sy=0 + if up and down: + sy=1 + elif up and down==0: + sy=1 + elif up==0 and down: + sy=0 + hexa+= str(sy) + + + code += "{EARTH," + hexa + "}, " + elif pixels[x,y]==empty: + code += "{0,0}, " + else: + code += "{0,'?'}, " + #code += str(pixels[x,y]) + +print (code) \ No newline at end of file