changeset 1:17e9c6f3a0dd default tip

isolate into a function
author Radomir Dopieralski <sheep-devel@sheep.art.pl>
date Sun, 10 Mar 2013 20:45:29 +0100
parents 88a19853b1ac
children
files tiling.py
diffstat 1 files changed, 31 insertions(+), 20 deletions(-) [+]
line wrap: on
line diff
--- a/tiling.py	Sun Mar 10 19:05:34 2013 +0100
+++ b/tiling.py	Sun Mar 10 20:45:29 2013 +0100
@@ -14,24 +14,35 @@
         for x in xrange(0, image_width // w)
     ]
 
-screen = pygame.display.set_mode((640, 480))
-grass = load_atlas('grass_on_ground.png', 48, 32)
-grid = [
-    [0, 0, 0, 0, 0, 0, 0, 0, 0],
-    [0, 1, 0, 1, 1, 1, 1, 1, 0],
-    [0, 1, 0, 1, 0, 1, 1, 1, 0],
-    [0, 1, 0, 0, 0, 1, 1, 1, 0],
-    [0, 1, 1, 1, 1, 1, 1, 1, 0],
-    [0, 1, 1, 1, 1, 1, 1, 1, 0],
-    [0, 1, 1, 1, 1, 1, 1, 1, 0],
-    [0, 1, 1, 1, 1, 1, 1, 1, 0],
-    [0, 1, 1, 1, 1, 1, 1, 1, 0],
-    [0, 0, 0, 0, 0, 0, 0, 0, 0],
-]
-for y, (row, nrow) in enumerate(zip(grid, grid[1:])):
-    for x, (tl, tr, bl, br) in enumerate(zip(row, row[1:], nrow, nrow[1:])):
-        screen.blit(grass[tl + tr * 2 + bl * 4 + br * 8], (x * 48, y * 32))
+def render_grid(surf, grid, tiles):
+    for y, (row, nrow) in enumerate(zip(grid, grid[1:])):
+        for x, (tl, tr, bl, br) in enumerate(zip(row, row[1:], nrow, nrow[1:])):
+            surf.blit(grass[tl + tr * 2 + bl * 4 + br * 8], (x * 48, y * 32))
+
 
-pygame.display.flip()
-while pygame.event.wait().type not in {pygame.QUIT, pygame.KEYDOWN}:
-    pass
+if __name__ == '__main__':
+    screen = pygame.display.set_mode((480, 480))
+    grass = load_atlas('grass_on_ground.png', 48, 32)
+    grid = [
+        [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [0, 1, 0, 1, 1, 1, 1, 1, 0, 1, 0],
+        [0, 1, 0, 1, 0, 1, 1, 1, 1, 0, 0],
+        [0, 1, 0, 0, 0, 1, 1, 1, 1, 0, 0],
+        [0, 1, 1, 1, 1, 0, 0, 1, 1, 1, 0],
+        [0, 1, 1, 1, 1, 0, 0, 1, 1, 0, 0],
+        [0, 1, 1, 0, 0, 0, 0, 1, 1, 0, 0],
+        [0, 1, 1, 1, 1, 1, 0, 1, 1, 1, 0],
+        [0, 1, 0, 0, 0, 1, 0, 1, 0, 1, 0],
+        [0, 1, 0, 1, 0, 0, 0, 1, 0, 1, 0],
+        [0, 1, 0, 0, 0, 1, 0, 1, 0, 1, 0],
+        [0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0],
+        [0, 1, 1, 1, 1, 1, 0, 1, 1, 1, 0],
+        [0, 1, 1, 1, 1, 1, 1, 1, 0, 1, 0],
+        [0, 1, 1, 1, 1, 1, 1, 1, 0, 1, 0],
+        [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+    ]
+    render_grid(screen, grid, grass)
+    pygame.display.flip()
+    while pygame.event.wait().type not in {pygame.QUIT, pygame.KEYDOWN}:
+        pass
+