diff options
| author | Gene Pasquet <dev@etenil.net> | 2026-04-08 01:05:50 +0100 |
|---|---|---|
| committer | Gene Pasquet <dev@etenil.net> | 2026-04-08 01:05:50 +0100 |
| commit | 995342fb74fdd1ba5aeaa172a428538e7dd0dcdc (patch) | |
| tree | 82a60034eaa097191d360fe07e4ef3a52dae9c2a /renderer.scm | |
| parent | 0c3a700aa94a0256c5e5b1a14819f10b3d3e869b (diff) | |
Code cleanup
Diffstat (limited to 'renderer.scm')
| -rw-r--r-- | renderer.scm | 33 |
1 files changed, 14 insertions, 19 deletions
diff --git a/renderer.scm b/renderer.scm index 48698f7..b6ba238 100644 --- a/renderer.scm +++ b/renderer.scm @@ -209,6 +209,18 @@ (row-loop (cdr rows) (+ row 1))))) (tilemap-layers tilemap)))) + (define (draw-attack-hitbox renderer e tw cx cy) + (when (> (entity-ref e #:attack-timer 0) 0) + (let* ((ex (inexact->exact (floor (entity-ref e #:x 0)))) + (ey (inexact->exact (floor (entity-ref e #:y 0)))) + (ew (inexact->exact (floor (entity-ref e #:width 0)))) + (eh (inexact->exact (floor (entity-ref e #:height 0)))) + (facing (entity-ref e #:facing 1)) + (ax (if (> facing 0) (+ ex ew) (- ex tw)))) + (set! (sdl2:render-draw-color renderer) +debug-attack-color+) + (sdl2:render-fill-rect! renderer + (sdl2:make-rect (- ax cx) (- ey cy) tw eh))))) + (define (draw-debug-entities renderer camera scene) (let* ((tilemap (scene-tilemap scene)) (tw (tilemap-tilewidth tilemap)) @@ -222,28 +234,11 @@ ((eq? type 'player) (set! (sdl2:render-draw-color renderer) +debug-player-color+) (sdl2:render-fill-rect! renderer rect) - (when (> (entity-ref e #:attack-timer 0) 0) - (let* ((px (inexact->exact (floor (entity-ref e #:x 0)))) - (py (inexact->exact (floor (entity-ref e #:y 0)))) - (pw (inexact->exact (floor (entity-ref e #:width 0)))) - (ph (inexact->exact (floor (entity-ref e #:height 0)))) - (facing (entity-ref e #:facing 1)) - (ax (if (> facing 0) (+ px pw) (- px tw)))) - (set! (sdl2:render-draw-color renderer) +debug-attack-color+) - (sdl2:render-fill-rect! renderer - (sdl2:make-rect (- ax cx) (- py cy) tw ph))))) + (draw-attack-hitbox renderer e tw cx cy)) ((eq? type 'enemy) (set! (sdl2:render-draw-color renderer) +debug-enemy-color+) (sdl2:render-fill-rect! renderer rect) - (when (> (entity-ref e #:attack-timer 0) 0) - (let* ((ex (inexact->exact (floor (entity-ref e #:x 0)))) - (ey (inexact->exact (floor (entity-ref e #:y 0)))) - (eh (inexact->exact (floor (entity-ref e #:height 0)))) - (facing (entity-ref e #:facing 1)) - (ax (if (> facing 0) (+ ex tw) (- ex tw)))) - (set! (sdl2:render-draw-color renderer) +debug-attack-color+) - (sdl2:render-fill-rect! renderer - (sdl2:make-rect (- ax cx) (- ey cy) tw eh)))))))) + (draw-attack-hitbox renderer e tw cx cy))))) (scene-entities scene)))) (define (render-debug-scene! renderer scene) |
