diff options
| author | Gene Pasquet <dev@etenil.net> | 2026-04-06 03:41:09 +0100 |
|---|---|---|
| committer | Gene Pasquet <dev@etenil.net> | 2026-04-06 03:41:09 +0100 |
| commit | 78a924defabc862a7cfa5476091152c1ef5333ee (patch) | |
| tree | 5e7e13ca27848dfe87ecf3eb82689d8e9488beb3 /engine.scm | |
| parent | c4ebbbdd1a0bd081a2ed9447ba8188d97ae54717 (diff) | |
Fixes, updated license
Diffstat (limited to 'engine.scm')
| -rw-r--r-- | engine.scm | 11 |
1 files changed, 8 insertions, 3 deletions
@@ -29,7 +29,8 @@ render-hook ;; (lambda (game) ...) — post-render overlay scene ;; current scene struct; #f until create: runs states ;; hash-table of name → state-plist - active-state) ;; symbol or #f — currently active state name + active-state ;; symbol or #f — currently active state name + debug?) ;; boolean: enable debug overlay drawing ;; Store the auto-generated constructor as make-game* (define make-game* make-game) @@ -42,7 +43,8 @@ (width 640) (height 480) (frame-delay 16) (input-config *default-input-config*) - (preload #f) (create #f) (update #f) (render #f)) + (preload #f) (create #f) (update #f) (render #f) + (debug? #f)) (make-game* title: title width: width @@ -59,7 +61,8 @@ update-hook: update render-hook: render states: (make-hash-table) - active-state: #f)) + active-state: #f + debug?: debug?)) ;; ── Convenience accessors ────────────────────────────────────────────────── @@ -167,6 +170,8 @@ (sdl2:render-clear! (game-renderer game)) (when (game-scene game) (render-scene! (game-renderer game) (game-scene game))) + (when (and (game-debug? game) (game-scene game)) + (render-debug-scene! (game-renderer game) (game-scene game))) (when render-fn (render-fn game))) (sdl2:render-present! (game-renderer game)) (sdl2:delay! (game-frame-delay game)) |
