From 38eee24832fe6da4f135cae455881ab97953b23a Mon Sep 17 00:00:00 2001 From: Gene Pasquet Date: Sat, 18 Apr 2026 02:47:10 +0100 Subject: Refresh docs and re-indent --- entity.scm | 50 +++++++++++++++++++++++++------------------------- 1 file changed, 25 insertions(+), 25 deletions(-) (limited to 'entity.scm') diff --git a/entity.scm b/entity.scm index 540a2c9..e0c7dab 100644 --- a/entity.scm +++ b/entity.scm @@ -1,54 +1,54 @@ (module downstroke-entity - * - (import scheme - (chicken base) - (only srfi-1 fold alist-delete)) +* +(import scheme + (chicken base) + (only srfi-1 fold alist-delete)) - ;; Entities = alists with shared keys (#:type, #:x, #:y, #:width, #:height, ...). +;; Entities = alists with shared keys (#:type, #:x, #:y, #:width, #:height, ...). (define (make-entity x y w h) `((#:type . none) (#:x . ,x) (#:y . ,y) (#:width . ,w) (#:height . ,h))) (define (entity-ref entity key #!optional default) (cond ((assq key entity) => cdr) - ((procedure? default) (default)) - (else default))) + ((procedure? default) (default)) + (else default))) - (define (entity-type entity) - (entity-ref entity #:type #f)) +(define (entity-type entity) + (entity-ref entity #:type #f)) - (define (entity-set entity key val) - (cons (cons key val) (alist-delete key entity eq?))) +(define (entity-set entity key val) + (cons (cons key val) (alist-delete key entity eq?))) (define (entity-set-many entity pairs) (fold (lambda (pair working-ent) - (entity-set working-ent (car pair) (cdr pair))) - entity - pairs)) + (entity-set working-ent (car pair) (cdr pair))) + entity + pairs)) (define (entity-update entity key proc #!optional default) (entity-set entity key (proc (entity-ref entity key default)))) - ;; #:skip-pipelines — list of symbols naming frame pipeline steps to skip for this - ;; entity. Physics documents the built-in step names (see docs/physics.org). Other - ;; subsystems (e.g. animation, rendering) may reserve additional symbols later and - ;; use the same predicate and define-pipeline macro. +;; #:skip-pipelines — list of symbols naming frame pipeline steps to skip for this +;; entity. Physics documents the built-in step names (see docs/physics.org). Other +;; subsystems (e.g. animation, rendering) may reserve additional symbols later and +;; use the same predicate and define-pipeline macro. - (define (entity-skips-pipeline? entity step) - (let ((skips (entity-ref entity #:skip-pipelines '()))) - (and (pair? skips) (memq step skips)))) +(define (entity-skips-pipeline? entity step) + (let ((skips (entity-ref entity #:skip-pipelines '()))) + (and (pair? skips) (memq step skips)))) (define-syntax define-pipeline (syntax-rules () ((define-pipeline (identifier name) (scene entity dt) :guard guard (body ...)) (define (identifier scene entity dt) (if (or (not guard) (entity-skips-pipeline? entity (quote name))) - entity - (body ...)))) + entity + (body ...)))) ((define-pipeline (identifier name) (scene entity dt) (body ...)) (define (identifier scene entity dt) (if (entity-skips-pipeline? entity (quote name)) - entity - (body ...)))))) + entity + (body ...)))))) ) ;; End of entity -- cgit v1.2.3