From 8add9c7d7afbcb647c1321d221ef5f2b2b02c2b5 Mon Sep 17 00:00:00 2001 From: Maurice Date: Fri, 28 Nov 2025 21:22:50 +0100 Subject: [PATCH] added player life display --- src/de/miaurizius/jgame2d/core/UI.java | 42 ++++++++++++++++++- src/de/miaurizius/jgame2d/entity/Entity.java | 4 ++ src/de/miaurizius/jgame2d/entity/Player.java | 4 ++ .../miaurizius/jgame2d/object/HeartObj.java | 28 +++++++++++++ .../jgame2d/object/SuperObject.java | 2 +- 5 files changed, 77 insertions(+), 3 deletions(-) create mode 100644 src/de/miaurizius/jgame2d/object/HeartObj.java diff --git a/src/de/miaurizius/jgame2d/core/UI.java b/src/de/miaurizius/jgame2d/core/UI.java index 4197862..e4258ed 100644 --- a/src/de/miaurizius/jgame2d/core/UI.java +++ b/src/de/miaurizius/jgame2d/core/UI.java @@ -1,14 +1,18 @@ package de.miaurizius.jgame2d.core; import de.miaurizius.jgame2d.core.enums.GameState; +import de.miaurizius.jgame2d.object.HeartObj; +import de.miaurizius.jgame2d.object.SuperObject; import java.awt.*; +import java.awt.image.BufferedImage; public class UI { GamePanel panel; Graphics2D graphics2d; Font arial_40, arial_80B; + BufferedImage heart_full, heart_half, heart_blank; public String currentDialogue; public int commandNum = 0; @@ -16,6 +20,12 @@ public class UI { this.panel = panel; arial_40 = new Font("Arial", Font.PLAIN, 40); arial_80B = new Font("Arial", Font.BOLD, 80); + + // CREATE HUD OBJECT + SuperObject heart = new HeartObj(panel); + heart_full = heart.image; + heart_half = heart.image2; + heart_blank = heart.image3; } public void draw(Graphics2D graphics2d) { @@ -26,12 +36,14 @@ public class UI { if(panel.gameState == null) return; switch (panel.gameState) { case GameState.PLAY: - + drawPlayerLife(); break; case GameState.PAUSE: + drawPlayerLife(); drawPauseScreen(); break; case GameState.DIALOGUE: + drawPlayerLife(); drawDialogueScreen(); break; case TITLE: @@ -40,6 +52,33 @@ public class UI { } } + public void drawPlayerLife() { + int x = panel.tileSize / 2; + int y = panel.tileSize / 2; + int i = 0; + + // DRAW MAX HEART + while(i