diff --git a/src/main/java/emu/lunarcore/data/excel/PropExcel.java b/src/main/java/emu/lunarcore/data/excel/PropExcel.java index c5a6afb..ddf69ea 100644 --- a/src/main/java/emu/lunarcore/data/excel/PropExcel.java +++ b/src/main/java/emu/lunarcore/data/excel/PropExcel.java @@ -15,7 +15,8 @@ public class PropExcel extends GameResource { private transient boolean recoverHp; private transient boolean recoverMp; - + private transient boolean isDoor; + @Override public int getId() { return ID; @@ -29,6 +30,8 @@ public class PropExcel extends GameResource { this.recoverMp = true; } else if (getJsonPath().contains("HPRecoverBox")) { this.recoverHp = true; + } else if (getJsonPath().contains("_Door_")) { + this.isDoor = true; } } diff --git a/src/main/java/emu/lunarcore/game/scene/SceneEntityLoader.java b/src/main/java/emu/lunarcore/game/scene/SceneEntityLoader.java index bf059ad..c90b7c6 100644 --- a/src/main/java/emu/lunarcore/game/scene/SceneEntityLoader.java +++ b/src/main/java/emu/lunarcore/game/scene/SceneEntityLoader.java @@ -67,6 +67,9 @@ public class SceneEntityLoader { // Skip tutorial simulated universe return null; } + } else if (prop.getExcel().isDoor()) { + // Hacky fix to always open doors + prop.setState(PropState.Open, false); } else if (prop.getExcel().getPropType() == PropType.PROP_SPRING) { // Cache teleport anchors scene.getHealingSprings().add(prop); diff --git a/src/main/java/emu/lunarcore/game/scene/entity/EntityProp.java b/src/main/java/emu/lunarcore/game/scene/entity/EntityProp.java index 389853a..44160f9 100644 --- a/src/main/java/emu/lunarcore/game/scene/entity/EntityProp.java +++ b/src/main/java/emu/lunarcore/game/scene/entity/EntityProp.java @@ -28,6 +28,7 @@ public class EntityProp implements GameEntity { private final Position pos; private final Position rot; + // Prop extra info @Setter private PropRogueData rogueData; public EntityProp(Scene scene, PropExcel excel, GroupInfo group, PropInfo propInfo) {