all entity arrays are now two-dimensional (with map index so entities won't be rendered on any map anymore)

This commit is contained in:
2025-12-12 13:20:14 +01:00
parent 67309a6e28
commit 4aabe84d59
7 changed files with 113 additions and 109 deletions

View File

@@ -85,9 +85,9 @@ public class Entity {
collisionOn = false;
panel.collisionH.checkTile(this);
panel.collisionH.checkObject(this, false);
panel.collisionH.checkEntity(this, panel.npc);
panel.collisionH.checkEntity(this, panel.monster);
panel.collisionH.checkEntity(this, panel.iTile);
panel.collisionH.checkEntity(this, panel.npc[panel.currentMap.getIndex()]);
panel.collisionH.checkEntity(this, panel.monster[panel.currentMap.getIndex()]);
panel.collisionH.checkEntity(this, panel.iTile[panel.currentMap.getIndex()]);
boolean contactPlayer = panel.collisionH.checkPlayer(this);
if(this.type == EntityType.MONSTER && contactPlayer) damagePlayer(attack);
@@ -205,11 +205,11 @@ public class Entity {
}
public void dropItem(Entity droppedItem) {
for(int i = 0; i < panel.obj.length; i++) {
if(panel.obj[i] == null) {
panel.obj[i] = droppedItem;
panel.obj[i].worldX = worldX;
panel.obj[i].worldY = worldY;
for(int i = 0; i < panel.obj[panel.currentMap.getIndex()].length; i++) {
if(panel.obj[panel.currentMap.getIndex()][i] == null) {
panel.obj[panel.currentMap.getIndex()][i] = droppedItem;
panel.obj[panel.currentMap.getIndex()][i].worldX = worldX;
panel.obj[panel.currentMap.getIndex()][i].worldY = worldY;
break;
}
}