diff options
| author | Gene Pasquet <dev@etenil.net> | 2026-04-08 00:30:11 +0100 |
|---|---|---|
| committer | Gene Pasquet <dev@etenil.net> | 2026-04-08 00:30:11 +0100 |
| commit | f8cc4a748bb8b6431a1023a876745b1bb473eb19 (patch) | |
| tree | af708ac1138ee17d35d9b1ba46ec8b56acaccedb /demo/spritefont.scm | |
| parent | cfddc2f180552afdb080968f847018c5a223b41a (diff) | |
Support entity groups
Diffstat (limited to 'demo/spritefont.scm')
| -rw-r--r-- | demo/spritefont.scm | 43 |
1 files changed, 17 insertions, 26 deletions
diff --git a/demo/spritefont.scm b/demo/spritefont.scm index 8895d3c..2abc07a 100644 --- a/demo/spritefont.scm +++ b/demo/spritefont.scm @@ -17,35 +17,26 @@ title: "Demo: Sprite Font" width: 600 height: 400 create: (lambda (game) - (let* ((scene (game-load-scene! game "demo/assets/level-0.tmx")) - (tileset (tilemap-tileset (scene-tilemap scene)))) - ;; Create sprite font with character ranges - ;; A-M: tiles 917-929, N-Z: tiles 966-978, 0-9: tiles 868-877 - (set! *sprite-font* - (make-sprite-font* - #:tile-size 16 - #:spacing 1 - #:ranges '((#\A #\M 918) - (#\N #\Z 967) - (#\0 #\9 869)))))) + (game-load-scene! game "demo/assets/level-0.tmx") + (set! *sprite-font* + (make-sprite-font* + #:tile-size 16 #:spacing 1 + #:ranges '((#\A #\M 918) (#\N #\Z 967) (#\0 #\9 869))))) render: (lambda (game) - (let* ((renderer (game-renderer game)) - (scene (game-scene game)) - (tileset (tilemap-tileset (scene-tilemap scene))) - (tileset-texture (scene-tileset-texture scene))) - ;; Clear background + (let* ((scene (game-scene game)) + (renderer (game-renderer game)) + (tileset (tilemap-tileset (scene-tilemap scene))) + (texture (scene-tileset-texture scene))) (set! (sdl2:render-draw-color renderer) (sdl2:make-color 30 30 60 255)) (sdl2:render-fill-rect! renderer (sdl2:make-rect 0 0 600 400)) - - ;; Draw sprite text at various positions - (draw-sprite-text renderer tileset-texture tileset *sprite-font* - "HELLO WORLD" 50 50) - (draw-sprite-text renderer tileset-texture tileset *sprite-font* - "DOWNSTROKE" 100 120) - (draw-sprite-text renderer tileset-texture tileset *sprite-font* - "ABCDEFGHIJKLMNOPQRSTUVWXYZ" 20 200) - (draw-sprite-text renderer tileset-texture tileset *sprite-font* - "0123456789" 150 280))))) + (for-each + (lambda (entry) + (draw-sprite-text renderer texture tileset *sprite-font* + (car entry) (cadr entry) (caddr entry))) + '(("HELLO WORLD" 50 50) + ("DOWNSTROKE" 100 120) + ("ABCDEFGHIJKLMNOPQRSTUVWXYZ" 20 200) + ("0123456789" 150 280))))))) (game-run! *game*) |
