From 43212a033b73247bc26a7cc10cdb1a53dd12e0ea Mon Sep 17 00:00:00 2001 From: Maurice Date: Sun, 30 Nov 2025 00:49:04 +0100 Subject: [PATCH] slime runs away when it gets hit --- src/de/miaurizius/jgame2d/entity/Entity.java | 3 ++- src/de/miaurizius/jgame2d/entity/Player.java | 1 + src/de/miaurizius/jgame2d/entity/monster/GreenSlimeMON.java | 4 ++++ 3 files changed, 7 insertions(+), 1 deletion(-) diff --git a/src/de/miaurizius/jgame2d/entity/Entity.java b/src/de/miaurizius/jgame2d/entity/Entity.java index 56942b4..d6f14cf 100644 --- a/src/de/miaurizius/jgame2d/entity/Entity.java +++ b/src/de/miaurizius/jgame2d/entity/Entity.java @@ -15,7 +15,7 @@ import java.util.logging.Level; public class Entity { - GamePanel panel; + protected GamePanel panel; public BufferedImage up1, up2, down1, down2, left1, left2, right1, right2; public BufferedImage attackUp1, attackUp2, attackDown1, attackDown2, attackLeft1, attackLeft2, attackRight1, attackRight2; public BufferedImage image, image2, image3; @@ -142,6 +142,7 @@ public class Entity { // INTERACTION public void setAction() {} + public void damageReaction() {}; public void speak() { if(dialogue[dialogueIndex] == null) dialogueIndex = 0; panel.ui.currentDialogue = dialogue[dialogueIndex]; diff --git a/src/de/miaurizius/jgame2d/entity/Player.java b/src/de/miaurizius/jgame2d/entity/Player.java index 12d1c1c..dee1157 100644 --- a/src/de/miaurizius/jgame2d/entity/Player.java +++ b/src/de/miaurizius/jgame2d/entity/Player.java @@ -155,6 +155,7 @@ public class Player extends Entity { panel.monster[index].life -= 1; panel.playSE(5); panel.monster[index].invincible = true; + panel.monster[index].damageReaction(); if(panel.monster[index].life <= 0) panel.monster[index].dying = true; } diff --git a/src/de/miaurizius/jgame2d/entity/monster/GreenSlimeMON.java b/src/de/miaurizius/jgame2d/entity/monster/GreenSlimeMON.java index beb00e9..fd6223d 100644 --- a/src/de/miaurizius/jgame2d/entity/monster/GreenSlimeMON.java +++ b/src/de/miaurizius/jgame2d/entity/monster/GreenSlimeMON.java @@ -39,6 +39,10 @@ public class GreenSlimeMON extends Entity { if(i > 75) direction = Direction.RIGHT; actionLock = 0; } + public void damageReaction() { + actionLock = 0; + direction = panel.player.direction; + } // SETTING THINGS UP public void getImage() {