diff options
| author | Gene Pasquet <gene@pacerevenue.com> | 2025-05-15 14:34:49 +0200 | 
|---|---|---|
| committer | Gene Pasquet <gene@pacerevenue.com> | 2025-05-15 14:34:49 +0200 | 
| commit | 4cdee4fda1f0ae05de1dd4f264405505a7c3bacc (patch) | |
| tree | 28707d4733677c3d3ce7a3806a5ccb225bd2ac20 /src | |
| parent | d5a454eff8e722c372b42efd476b52a51bba327d (diff) | |
Render text from level definition
Diffstat (limited to 'src')
| -rw-r--r-- | src/macroknight/game.hy | 17 | 
1 files changed, 13 insertions, 4 deletions
| diff --git a/src/macroknight/game.hy b/src/macroknight/game.hy index 160b46a..99dc69f 100644 --- a/src/macroknight/game.hy +++ b/src/macroknight/game.hy @@ -20,12 +20,14 @@  (setv tileset (TileSet "assets/monochrome-transparent.png" TILE_SCALING TILE_SIZE TILE_SIZE 1))  (setv sprites-group [])  (setv level (load_pygame "assets/level-0.tmx")) +(defn abs-to-tile-index [abs-id] +  (int (floor (/ abs-id TILE_SIZE))))  (setv player-pos        (let [player-objects (lfor ent (get level.layers 1) :if (= ent.type "Player") ent)]          (if (any player-objects)              (let [player-object (get player-objects 0)] -              #((int (floor (/ player-object.x TILE_SIZE))) -                 (int (floor (/ player-object.y TILE_SIZE))))) +               #((abs-to-tile-index player-object.x) +                 (abs-to-tile-index player-object.y)))              #(5 5))))  (setv player (Player 1 (get tileset.tiles 28) TILE_SIZE #* player-pos))  (.append sprites-group player) @@ -54,8 +56,15 @@    (.fill screen "#000000") -  (render-text screen tileset "USE A MACRO MOVE TO JUMP HIGHER" 1 10) -  (render-text screen tileset "HIT SPACE AND ENTER A COMBO" 1 11) +  ;; Render text objects +  (for [item (get level.layers 1)] +    (when (= item.type "Text") +      (render-text screen +                   tileset +                   (.upper item.text) +                   (abs-to-tile-index item.x) +                   (abs-to-tile-index item.y)))) +    (if macro-input-mode        ;; If the commands list is full | 
