UI: Rework constants for arcade-style layout and color palette

- Named color constants (arcade blue walls, golden coins, pink doors)
- Header bar layout with PAC-MAN title, score label, key indicator
- Sidebar time display with label and large value
- Game over and pause overlay positions
- Smaller round-looking coins (coin-size + coin-inset)
- Removed old magic position values

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
joren
2026-03-23 11:26:26 +01:00
parent eb309b74b1
commit 3f12a740da

View File

@@ -27,6 +27,7 @@
;; Coin rendering
coin-inset
coin-size
;; Sprites
sprite-scale-pacman
@@ -56,19 +57,45 @@
rotation-up
rotation-down
;; UI positions
score-text-size
score-text-x
score-text-y
time-text-size
;; Colors
color-background
color-wall
color-door
color-coin
color-text
color-title
color-header-bg
color-game-over
color-pause-bg
color-pause-text
;; UI layout
header-height
header-title-size
header-title-x
header-title-y
score-label-size
score-label-x
score-label-y
score-value-size
score-value-x
score-value-y
key-ui-x
key-ui-y
sidebar-x
sidebar-width
time-label-size
time-label-x
time-label-y
time-value-size
time-value-x
time-value-y
separator-x
separator-width
key-ui-x
key-ui-y)
game-over-text-size
game-over-text-x
game-over-text-y
pause-text-size
pause-text-x
pause-text-y)
(begin
@@ -88,8 +115,9 @@
(define cell-type-key 3)
(define cell-type-door 4)
;; Coin rendering: inset in pixels from cell edge
(define coin-inset 7)
;; Coin rendering
(define coin-inset 9)
(define coin-size 6)
;; Sprite scale factors
(define sprite-scale-pacman 1.5)
@@ -119,22 +147,54 @@
(define rotation-up 90)
(define rotation-down -90)
;; UI positions for score display
(define score-text-size 40)
(define score-text-x 560)
(define score-text-y 20)
;; Colors — arcade-style palette
(define color-background "black")
(define color-wall "#2121DE")
(define color-door "#FFB8FF")
(define color-coin "#FFB851")
(define color-text "white")
(define color-title "#FFFF00")
(define color-header-bg "#111111")
(define color-game-over "#FF0000")
(define color-pause-bg "black")
(define color-pause-text "#FF0000")
;; UI positions for time display (right side of separator)
(define time-text-size 35)
(define time-label-x 710)
(define time-label-y 300)
(define time-value-x 800)
(define time-value-y 400)
;; UI layout — header bar at the top
(define header-height 90)
(define header-title-size 36)
(define header-title-x 250)
(define header-title-y 25)
;; Separator line between play field and UI
(define separator-x 670)
(define separator-width 24)
;; Score display (left side of header)
(define score-label-size 20)
(define score-label-x 20)
(define score-label-y 25)
(define score-value-size 32)
(define score-value-x 20)
(define score-value-y 50)
;; Key UI position (next to score)
(define key-ui-x 20)
(define key-ui-y 35)))
;; Key UI indicator position
(define key-ui-x 600)
(define key-ui-y 30)
;; Sidebar (right of maze)
(define sidebar-x 672)
(define sidebar-width 4)
;; Time display (right sidebar area)
(define time-label-size 20)
(define time-label-x 700)
(define time-label-y 200)
(define time-value-size 40)
(define time-value-x 710)
(define time-value-y 240)
;; Game over overlay
(define game-over-text-size 48)
(define game-over-text-x 180)
(define game-over-text-y 380)
;; Pause overlay
(define pause-text-size 48)
(define pause-text-x 200)
(define pause-text-y 400)))