obstacles and chest loot

This commit is contained in:
2025-12-13 00:44:53 +01:00
parent 1d6f53a70e
commit 825b084a68
11 changed files with 169 additions and 38 deletions

View File

@@ -5,6 +5,8 @@ import de.miaurizius.jgame2d.core.enums.Direction;
import de.miaurizius.jgame2d.core.enums.EntityType;
import de.miaurizius.jgame2d.core.enums.GameState;
import de.miaurizius.jgame2d.core.handlers.KeyHandler;
import de.miaurizius.jgame2d.entity.item.KeyObj;
import de.miaurizius.jgame2d.entity.item.PotionObj;
import de.miaurizius.jgame2d.entity.item.ShieldWoodObj;
import de.miaurizius.jgame2d.entity.item.SwordNormalObj;
import de.miaurizius.jgame2d.entity.projectile.FireballObj;
@@ -135,9 +137,18 @@ public class Player extends Entity {
public void pickObject(int index) {
if(index == 999 || panel.obj[panel.currentMap.getIndex()][index] == null) return;
// PICKUP ONLY
// PICKUP ONLY ITEMS
if(panel.obj[panel.currentMap.getIndex()][index].type == EntityType.PICKUP) {
panel.obj[panel.currentMap.getIndex()][index].use(this);
panel.obj[panel.currentMap.getIndex()][index] = null;
return;
}
// OBSTACLES
if(panel.obj[panel.currentMap.getIndex()][index].type == EntityType.OBSTACLE) {
if(!keyH.spacePressed) return;
attackCancel = true;
panel.obj[panel.currentMap.getIndex()][index].interact();
return;
}
// INVENTORY ITEMS
else {
@@ -229,7 +240,7 @@ public class Player extends Entity {
entity.speed += knockbackVal;
entity.knockback = true;
}
public void interactTile(int index) {
if(index == 999 || !panel.iTile[panel.currentMap.getIndex()][index].destructible || panel.iTile[panel.currentMap.getIndex()][index].invincible) return;
if(!panel.iTile[panel.currentMap.getIndex()][index].meetItemReq(this)) return;
@@ -282,7 +293,6 @@ public class Player extends Entity {
}
if(selectedItem.consumable) {
selectedItem.use(this);
inventory.remove(itemIndex);
}
}
public void setDefaultPositions() {