def disptile(off): blit.paste( pyvga.framebuffer, 320, (off % 20) << 3, (off / 20) << 3, # x, y tiles[tile_ndx.find(map[off])], 8)
#--harder level-- #map = list(' ####### # ...# ##### ...# # . .# # ## ...# ## ## ...# ### ######## # $$$ ## ##### $ $ ##### ## #$ $ # # #@ $ $ $ $ # ###### $$ $ ##### # # ########') tile_ndx = '@&$*#. ' tiles = [ buf.sym('sokotile'), buf.sym('sokogoal'), buf.sym('stonetile'), buf.sym('stonegoal'), buf.sym('wall'), buf.sym('goal'), buf.sym('floor') ] blit.paste(pyvga.framebuffer, 320, 267, 68, tiles[0], 8) blit.paste(pyvga.framebuffer, 320, 140, 136, tiles[2], 8) blit.paste(pyvga.framebuffer, 320, 140, 156, tiles[5], 8) def disptile(off): blit.paste( pyvga.framebuffer, 320, (off % 20) << 3, (off / 20) << 3, # x, y tiles[tile_ndx.find(map[off])], 8) def dispall():
def seven_segment(n): if ord("\01\00\01\01\00\01\01\01\01\01\01\00\01\00\01\01"[n]): v = 55 else: v = 0 if v: blit.paste(pyvga.framebuffer, 320, 140, 30, horz, 40) else: blit.fill(pyvga.framebuffer, 320, 140, 30, 40, 20, v) if ord("\01\00\00\00\01\01\01\00\01\01\00\01\01\00\01\01"[n]): v = 55 else: v = 0 if v: blit.paste(pyvga.framebuffer, 320, 130, 50, vert, 20) else: blit.fill(pyvga.framebuffer, 320, 130, 50, 20, 40, v) if ord("\01\01\01\01\01\00\00\01\01\01\01\00\00\01\00\00"[n]): v = 55 else: v = 0 if v: blit.paste(pyvga.framebuffer, 320, 170, 50, vert, 20) else: blit.fill(pyvga.framebuffer, 320, 170, 50, 20, 40, v) if ord("\00\00\01\01\01\01\01\00\01\01\01\01\00\01\01\01"[n]): v = 55 else: v = 0 if v: blit.paste(pyvga.framebuffer, 320, 140, 90, horz, 40) else: blit.fill(pyvga.framebuffer, 320, 140, 90, 40, 20, v) if ord("\01\00\01\00\00\00\01\00\01\00\01\01\01\01\01\01"[n]): v = 55 else: v = 0 if v: blit.paste(pyvga.framebuffer, 320, 130, 110, vert, 20) else: blit.fill(pyvga.framebuffer, 320, 130, 110, 20, 40, v) if ord("\01\01\00\01\01\01\01\01\01\01\01\01\00\01\00\00"[n]): v = 55 else: v = 0 if v: blit.paste(pyvga.framebuffer, 320, 170, 110, vert, 20) else: blit.fill(pyvga.framebuffer, 320, 170, 110, 20, 40, v) if ord("\01\00\01\01\00\01\01\00\01\00\01\01\01\01\01\00"[n]): v = 55 else: v = 0 if v: blit.paste(pyvga.framebuffer, 320, 140, 150, horz, 40) else: blit.fill(pyvga.framebuffer, 320, 140, 150, 40, 20, v)
def seven_segment(n): if ord("\01\00\01\01\00\01\01\01\01\01\01\00\01\00\01\01"[n]): v = 55 else: v = 0 if v: blit.paste(pyvga.framebuffer,320, 140, 30, horz, 40) else: blit.fill(pyvga.framebuffer,320, 140, 30, 40, 20, v) if ord("\01\00\00\00\01\01\01\00\01\01\00\01\01\00\01\01"[n]): v = 55 else: v = 0 if v: blit.paste(pyvga.framebuffer,320, 130, 50, vert, 20) else: blit.fill(pyvga.framebuffer,320, 130, 50, 20, 40, v) if ord("\01\01\01\01\01\00\00\01\01\01\01\00\00\01\00\00"[n]): v = 55 else: v = 0 if v: blit.paste(pyvga.framebuffer,320, 170, 50, vert, 20) else: blit.fill(pyvga.framebuffer,320, 170, 50, 20, 40, v) if ord("\00\00\01\01\01\01\01\00\01\01\01\01\00\01\01\01"[n]): v = 55 else: v = 0 if v: blit.paste(pyvga.framebuffer,320, 140, 90, horz, 40) else: blit.fill(pyvga.framebuffer,320, 140, 90, 40, 20, v) if ord("\01\00\01\00\00\00\01\00\01\00\01\01\01\01\01\01"[n]): v = 55 else: v = 0 if v: blit.paste(pyvga.framebuffer,320, 130, 110, vert, 20) else: blit.fill(pyvga.framebuffer,320, 130,110, 20, 40, v) if ord("\01\01\00\01\01\01\01\01\01\01\01\01\00\01\00\00"[n]): v = 55 else: v = 0 if v: blit.paste(pyvga.framebuffer,320, 170, 110, vert, 20) else: blit.fill(pyvga.framebuffer,320, 170,110, 20, 40, v) if ord("\01\00\01\01\00\01\01\00\01\00\01\01\01\01\01\00"[n]): v = 55 else: v = 0 if v: blit.paste(pyvga.framebuffer,320, 140, 150, horz, 40) else: blit.fill(pyvga.framebuffer,320, 140,150, 40, 20, v)
def disptile(off): blit.paste(pyvga.framebuffer, 320, (off % 20) << 3, (off / 20) << 3, # x, y tiles[tile_ndx.find(map[off])], 8)
#--test map-- #map = list(' ##### # # # # ### ## # # ### # ## # ###### # # ## ##### ..# # .$ ..# ##### ### #@## ..# # ######### #######') #--easier level-- map = list(' ##### # # #$ # ### $## # $ $ # ### # ## # ###### # # ## ##### ..# # $ $ ..# ##### ### #@## ..# # ######### #######') #--harder level-- #map = list(' ####### # ...# ##### ...# # . .# # ## ...# ## ## ...# ### ######## # $$$ ## ##### $ $ ##### ## #$ $ # # #@ $ $ $ $ # ###### $$ $ ##### # # ########') tile_ndx = '@&$*#. ' tiles = [buf.sym('sokotile'), buf.sym('sokogoal'), buf.sym('stonetile'), buf.sym('stonegoal'), buf.sym('wall'), buf.sym('goal'), buf.sym('floor')] blit.paste(pyvga.framebuffer,320, 267, 68, tiles[0], 8) blit.paste(pyvga.framebuffer,320, 140, 136, tiles[2], 8) blit.paste(pyvga.framebuffer,320, 140, 156, tiles[5], 8) def disptile(off): blit.paste(pyvga.framebuffer, 320, (off % 20) << 3, (off / 20) << 3, # x, y tiles[tile_ndx.find(map[off])], 8) def dispall(): i = len(map) eol = 0 while i > 0: # no for yet? i = i - 1 if eol and map[i] != ' ': eol = 0