aboutsummaryrefslogtreecommitdiff
path: root/demo/tweens.scm
diff options
context:
space:
mode:
authorGene Pasquet <dev@etenil.net>2026-04-17 16:30:34 +0100
committerGene Pasquet <dev@etenil.net>2026-04-17 16:30:34 +0100
commit8251c85a4a588504d38a2fad05e4b0fe1cdccb9d (patch)
treec3fcedb7331caf798f2355c7549b35aa3aaf6ac8 /demo/tweens.scm
parent5de3b9cf122542f2a0c1c906c8ce8add20e5c8c6 (diff)
Convert entities to alists
Diffstat (limited to 'demo/tweens.scm')
-rw-r--r--demo/tweens.scm23
1 files changed, 13 insertions, 10 deletions
diff --git a/demo/tweens.scm b/demo/tweens.scm
index 609c541..51a72b2 100644
--- a/demo/tweens.scm
+++ b/demo/tweens.scm
@@ -1,12 +1,14 @@
(import scheme
(chicken base)
(only srfi-1 iota)
+ (only (list-utils alist) plist->alist)
(prefix sdl2 "sdl2:")
(prefix sdl2-ttf "ttf:")
downstroke-engine
downstroke-world
downstroke-renderer
- downstroke-entity)
+ downstroke-entity
+ downstroke-tween)
;; ── Constants ────────────────────────────────────────────────────────────────
@@ -31,15 +33,16 @@
(define (make-ease-entity ease-sym y rgb)
(let* ((left 20)
(right (+ left 120))
- (base (list #:x left #:y y)))
- (list #:type 'tween-demo #:x left #:y y
- #:width 14 #:height 14
- #:vx 0 #:vy 0 #:gravity? #f #:solid? #f
- #:color rgb
- #:ease-name ease-sym
- #:tween (make-tween base props: `((#:x . ,right))
- duration: +ease-duration+ ease: ease-sym
- repeat: -1 yoyo?: #t))))
+ (base (plist->alist (list #:x left #:y y))))
+ (plist->alist
+ (list #:type 'tween-demo #:x left #:y y
+ #:width 14 #:height 14
+ #:vx 0 #:vy 0 #:gravity? #f #:solid? #f
+ #:color rgb
+ #:ease-name ease-sym
+ #:tween (make-tween base props: `((#:x . ,right))
+ duration: +ease-duration+ ease: ease-sym
+ repeat: -1 yoyo?: #t)))))
;; ── Rendering ────────────────────────────────────────────────────────────────