diff options
| author | Gene Pasquet <dev@etenil.net> | 2026-04-08 01:32:55 +0100 |
|---|---|---|
| committer | Gene Pasquet <dev@etenil.net> | 2026-04-08 01:32:55 +0100 |
| commit | 84840ede6646ed793b61cdd889d3f57ab05e9311 (patch) | |
| tree | 2b62dd73a7321bc71a368b297ab40b3535bd79fc /demo/sandbox.scm | |
| parent | 7903180321bf72b344077a8423930ac161872a2c (diff) | |
Refactor to be functional
Diffstat (limited to 'demo/sandbox.scm')
| -rw-r--r-- | demo/sandbox.scm | 23 |
1 files changed, 12 insertions, 11 deletions
diff --git a/demo/sandbox.scm b/demo/sandbox.scm index 319ef80..6a6030f 100644 --- a/demo/sandbox.scm +++ b/demo/sandbox.scm @@ -159,16 +159,17 @@ update: (lambda (game dt) (set! *demo-t* (+ *demo-t* dt)) - (let* ((scene (game-scene game)) - (tm (scene-tilemap scene))) - (scene-update-entities scene (cut step-tweens <> dt)) - (scene-update-entities scene (cut integrate-entity <> dt tm)) - (scene-sync-groups! scene) - (scene-resolve-collisions scene) - (scene-update-entities scene - (lambda (e) - (if (entity-ref e #:gravity? #f) - (detect-on-solid e tm (scene-entities scene)) - e))))))) + (let ((tm (scene-tilemap (game-scene game)))) + (game-scene-set! game + (chain (game-scene game) + (scene-update-entities _ (cut step-tweens <> dt)) + (scene-update-entities _ (cut integrate-entity <> dt tm)) + (scene-sync-groups _) + (scene-resolve-collisions _) + (scene-update-entities _ + (lambda (e) + (if (entity-ref e #:gravity? #f) + (detect-on-solid e tm (scene-entities _)) + e))))))))) (game-run! *game*) |
