refactor invincibility handling by consolidating invincible counting logic into a separate method

This commit is contained in:
2025-12-15 17:25:59 +01:00
parent e0986d4708
commit 1343b18753
2 changed files with 27 additions and 15 deletions

View File

@@ -108,6 +108,7 @@ public class Entity {
knockbackCount = 0;
knockback = false;
speed = defaultSpeed;
invincibleCounting();
return;
}
@@ -119,7 +120,10 @@ public class Entity {
}
knockbackCount++;
if(knockbackCount != 10) return;
if(knockbackCount != 10) {
invincibleCounting();
return;
}
knockback = false;
knockbackCount = 0;
@@ -146,14 +150,7 @@ public class Entity {
spriteCount = 0;
}
}
// INVINCIBLE COUNTER
if(!invincible) return;
invincibleCount++;
if(invincibleCount > 40) {
invincible = false;
invincibleCount = 0;
}
invincibleCounting();
}
public void draw(Graphics2D graphics2d) {
int screenX = worldX - panel.player.worldX + panel.player.screenX;
@@ -613,5 +610,13 @@ public class Entity {
actionLock = 0;
}
}
public void invincibleCounting() {
if(!invincible) return;
invincibleCount++;
if(invincibleCount > 40) {
invincible = false;
invincibleCount = 0;
}
}
}