aboutsummaryrefslogtreecommitdiff
path: root/src/game.scm
diff options
context:
space:
mode:
Diffstat (limited to 'src/game.scm')
-rw-r--r--src/game.scm20
1 files changed, 12 insertions, 8 deletions
diff --git a/src/game.scm b/src/game.scm
index 4206533..bdabbf1 100644
--- a/src/game.scm
+++ b/src/game.scm
@@ -71,18 +71,22 @@
(define (draw-tilemap-rows draw-fn rows row-num)
(unless (null? rows)
- (for-each (lambda (tile-id col-num) (draw-fn tile-id row-num col-num))
- (car rows)
- (iota (length (car rows))))
+ (for-each
+ (cut draw-fn <> row-num <>)
+ (car rows)
+ (iota (length (car rows))))
(draw-tilemap-rows draw-fn (cdr rows) (+ row-num 1))))
(define (draw-tilemap renderer tilemap)
- (let ((map-layer (layer-map (car (tilemap-layers tilemap))))
+ (let ((map-layers (tilemap-layers tilemap))
(tileset (tilemap-tileset tilemap)))
- (draw-tilemap-rows
- (lambda (tile-id row-num col-num) (draw-tile renderer tileset tile-id row-num col-num))
- map-layer
- 0)))
+ (for-each
+ (lambda (layer)
+ (draw-tilemap-rows
+ (cut draw-tile renderer tileset <> <> <>)
+ (layer-map layer)
+ 0))
+ map-layers)))
(define (draw-objects renderer tilemap)
(let ((objects (tilemap-objects tilemap))