From 1dc8aac4c7a4f471c4c2e6e17f78a8cffc483e99 Mon Sep 17 00:00:00 2001 From: Tibo De Peuter Date: Thu, 22 Dec 2022 15:32:49 +0100 Subject: [PATCH] Render HP --- README.md | 2 -- assets/gui/health.png | Bin 0 -> 237 bytes lib/RPGEngine/Render/Core.hs | 11 ++++++++--- lib/RPGEngine/Render/Playing.hs | 30 +++++++++++++++++++++++------- verslag.pdf | Bin 47917 -> 50036 bytes 5 files changed, 31 insertions(+), 12 deletions(-) create mode 100644 assets/gui/health.png diff --git a/README.md b/README.md index b82a687..832883e 100644 --- a/README.md +++ b/README.md @@ -282,8 +282,6 @@ These submodules are `Config`, `Data`, `Input`, `Parse` & `Render`. They are all The following assets were used (and modified if specified): - Kyrise's Free 16x16 RPG Icon Pack[[1]](#1) - - Every needed asset was taken and put into its own `.png`, instead of in the overview. - 2D Pixel Dungeon Asset Pack by Pixel_Poem[[2]](#2) diff --git a/assets/gui/health.png b/assets/gui/health.png new file mode 100644 index 0000000000000000000000000000000000000000..a2adedad807ba78764642cb2f8bcaec6e734c814 GIT binary patch literal 237 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`jKx9jP7LeL$-D$|SkfJR9T^xl z_H+M9WCij$3p^r=85sBugD~Uq{1quc!6r`^#}Etuy}buH4=C`s?ydgv=%(PVKJSu+ z^X{w-7SZYK?G4LN+QM(g@oU~QZ=>0>_OwrEJX>AL@>JQ4=Rl (f, renderPNG (assetsFolder ++ "entities/" ++ s))) allEntities + entities = map (\(f, s) -> (f, renderPNG (assetsFolder ++ "entities/" ++ s))) allEntities environment = map (\(f, s) -> (f, renderPNG (assetsFolder ++ "environment/" ++ s))) allEnvironment - gui = [] - items = map (\(f, s) -> (f, renderPNG (assetsFolder ++ "items/" ++ s))) allItems + gui = map (\(f, s) -> (f, renderPNG (assetsFolder ++ "gui/" ++ s))) allGui + items = map (\(f, s) -> (f, renderPNG (assetsFolder ++ "items/" ++ s))) allItems ------------------------------ Exported ------------------------------ diff --git a/lib/RPGEngine/Render/Playing.hs b/lib/RPGEngine/Render/Playing.hs index b996d80..6a2f589 100644 --- a/lib/RPGEngine/Render/Playing.hs +++ b/lib/RPGEngine/Render/Playing.hs @@ -5,8 +5,9 @@ module RPGEngine.Render.Playing import RPGEngine.Render.Core (Renderer, getRender, setRenderPos, overlay) import RPGEngine.Config (resolution, zoom, uizoom) -import RPGEngine.Data (State(..), Player (..), Game (..), Level (..), Layout, Physical (..), Item (..), Entity (..)) +import RPGEngine.Data (State(..), Player (..), Game (..), Level (..), Layout, Physical (..), Item (..), Entity (..), HP) +import Data.Maybe ( fromJust ) import Graphics.Gloss ( pictures, Picture, translate, white ) import Graphics.Gloss.Data.Picture ( blank, text, color, scale ) @@ -23,9 +24,9 @@ renderPlaying _ = blank ------------------------------- Player ------------------------------- renderPlayer :: Renderer Player -renderPlayer Player{ position = (x, y) } = move picture - where move = setRenderPos x y - picture = getRender "player" +renderPlayer Player{ position = (x, y), playerHp = playerHp } = move picture + where move = setRenderPos x y + picture = withHealthBar playerHp $ getRender "player" -- Center the player in the middle of the screen. -- Not in use at the moment, might be useful later. @@ -83,8 +84,8 @@ renderEntities :: [Entity] -> Picture renderEntities list = pictures $ map renderEntity list renderEntity :: Entity -> Picture -renderEntity Entity{ entityId = id, entityX = x, entityY = y} = setRenderPos x y image - where image = getRender id +renderEntity Entity{ entityId = id, entityX = x, entityY = y, entityHp = hp} = setRenderPos x y image + where image = withHealthBar hp $ getRender id renderInventory :: Player -> Picture renderInventory Player{ showInventory = False } = blank @@ -92,4 +93,19 @@ renderInventory Player{ inventory = list } = pictures [overlay, title, items] where title = translate 0 (offset (-1)) $ scale uizoom uizoom $ color white $ text "Inventory" items = pictures $ map move $ zip [0::Int ..] (map (getRender . itemId) list) move (i, pic) = translate 0 (offset i) pic - offset i = negate (zoom * resolution * fromIntegral i) \ No newline at end of file + offset i = negate (zoom * resolution * fromIntegral i) + +withHealthBar :: HP -> Picture -> Picture +withHealthBar (Nothing) renderedEntity = renderedEntity +withHealthBar (Just hp) renderedEntity = pictures [renderedEntity, positionedBar] + where positionedBar = scale smaller smaller $ translate left up renderedBar + renderedBar = pictures [heart, counter] + heart = scale by by $ getRender "health" + counter = translate right down $ scale scaler scaler $ color white $ text $ show hp + left = negate $ uizoom * resolution * scaler + right = uizoom * resolution * 0.05 + up = uizoom * resolution + down = negate $ resolution * uizoom * 0.15 + smaller = resolution * uizoom + by = uizoom * 0.1 + scaler = by * 0.5 \ No newline at end of file diff --git a/verslag.pdf b/verslag.pdf index 24a6e81e610d8d2ab0dd84449bf2170ccd1ec824..c974837aa88e97c54e182754cc11fc07894d420f 100644 GIT binary patch delta 24646 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 r%e$FtJ;|q0