diff options
Diffstat (limited to 'src/main/java/kr/syeyoung/dungeonsguide/dungeon')
9 files changed, 38 insertions, 58 deletions
diff --git a/src/main/java/kr/syeyoung/dungeonsguide/dungeon/data/DungeonRoomInfo.java b/src/main/java/kr/syeyoung/dungeonsguide/dungeon/data/DungeonRoomInfo.java index 06ca7877..a57e33b7 100644 --- a/src/main/java/kr/syeyoung/dungeonsguide/dungeon/data/DungeonRoomInfo.java +++ b/src/main/java/kr/syeyoung/dungeonsguide/dungeon/data/DungeonRoomInfo.java @@ -1,7 +1,6 @@ package kr.syeyoung.dungeonsguide.dungeon.data; import kr.syeyoung.dungeonsguide.dungeon.mechanics.DungeonMechanic; -import kr.syeyoung.dungeonsguide.roomedit.valueedit.ActuallyClonable; import lombok.Getter; import lombok.Setter; diff --git a/src/main/java/kr/syeyoung/dungeonsguide/dungeon/mechanics/DungeonDoor.java b/src/main/java/kr/syeyoung/dungeonsguide/dungeon/mechanics/DungeonDoor.java deleted file mode 100644 index 01f001e0..00000000 --- a/src/main/java/kr/syeyoung/dungeonsguide/dungeon/mechanics/DungeonDoor.java +++ /dev/null @@ -1,10 +0,0 @@ -package kr.syeyoung.dungeonsguide.dungeon.mechanics; - -import kr.syeyoung.dungeonsguide.dungeon.data.OffsetPointSet; -import lombok.Data; - -@Data -public class DungeonDoor implements Triggered { - private OffsetPointSet offsetPointSet = new OffsetPointSet(); - private Triggering triggering; -} diff --git a/src/main/java/kr/syeyoung/dungeonsguide/dungeon/mechanics/DungeonKey.java b/src/main/java/kr/syeyoung/dungeonsguide/dungeon/mechanics/DungeonKey.java deleted file mode 100644 index 15ca98dd..00000000 --- a/src/main/java/kr/syeyoung/dungeonsguide/dungeon/mechanics/DungeonKey.java +++ /dev/null @@ -1,7 +0,0 @@ -package kr.syeyoung.dungeonsguide.dungeon.mechanics; - -import kr.syeyoung.dungeonsguide.dungeon.data.OffsetPoint; - -public class DungeonKey implements DungeonMechanic { - private OffsetPoint key; -} diff --git a/src/main/java/kr/syeyoung/dungeonsguide/dungeon/mechanics/DungeonKeyPlacement.java b/src/main/java/kr/syeyoung/dungeonsguide/dungeon/mechanics/DungeonKeyPlacement.java deleted file mode 100644 index e2f20ba3..00000000 --- a/src/main/java/kr/syeyoung/dungeonsguide/dungeon/mechanics/DungeonKeyPlacement.java +++ /dev/null @@ -1,12 +0,0 @@ -package kr.syeyoung.dungeonsguide.dungeon.mechanics; - -import kr.syeyoung.dungeonsguide.dungeon.data.OffsetPoint; -import lombok.Data; - -@Data -public class DungeonKeyPlacement implements DungeonMechanic, Triggering { - private OffsetPoint keySlot; - private DungeonKey dungeonKey; - - private Triggered triggered; -} diff --git a/src/main/java/kr/syeyoung/dungeonsguide/dungeon/mechanics/DungeonLever.java b/src/main/java/kr/syeyoung/dungeonsguide/dungeon/mechanics/DungeonLever.java deleted file mode 100644 index d52982ad..00000000 --- a/src/main/java/kr/syeyoung/dungeonsguide/dungeon/mechanics/DungeonLever.java +++ /dev/null @@ -1,11 +0,0 @@ -package kr.syeyoung.dungeonsguide.dungeon.mechanics; - -import kr.syeyoung.dungeonsguide.dungeon.data.OffsetPoint; -import lombok.Data; - -@Data -public class DungeonLever implements DungeonMechanic { - private OffsetPoint lever = new OffsetPoint(0,0,0); - - private Triggered triggered; -} diff --git a/src/main/java/kr/syeyoung/dungeonsguide/dungeon/mechanics/DungeonSecret.java b/src/main/java/kr/syeyoung/dungeonsguide/dungeon/mechanics/DungeonSecret.java index 4c3974fb..06992387 100644 --- a/src/main/java/kr/syeyoung/dungeonsguide/dungeon/mechanics/DungeonSecret.java +++ b/src/main/java/kr/syeyoung/dungeonsguide/dungeon/mechanics/DungeonSecret.java @@ -1,16 +1,54 @@ package kr.syeyoung.dungeonsguide.dungeon.mechanics; +import kr.syeyoung.dungeonsguide.DungeonsGuide; import kr.syeyoung.dungeonsguide.dungeon.data.OffsetPoint; +import kr.syeyoung.dungeonsguide.dungeon.roomfinder.DungeonRoom; import lombok.Data; import lombok.Getter; import lombok.Setter; +import net.minecraft.block.state.IBlockState; +import net.minecraft.init.Blocks; +import net.minecraft.tileentity.TileEntityChest; +import net.minecraft.util.BlockPos; @Data public class DungeonSecret implements DungeonMechanic { private OffsetPoint secretPoint = new OffsetPoint(0,0,0); private SecretType secretType = SecretType.CHEST; + public SecretStatus getSecretStatus(DungeonRoom dungeonRoom) { + if (secretType == SecretType.CHEST) { + BlockPos pos = secretPoint.getBlockPos(dungeonRoom); + IBlockState blockState = dungeonRoom.getContext().getWorld().getBlockState(pos); + if (blockState.getBlock() == Blocks.air) { + return SecretStatus.DEFINITELY_NOT; + } else if (blockState.getBlock() != Blocks.chest && blockState.getBlock() != Blocks.trapped_chest) { + return SecretStatus.ERROR; + } else { + TileEntityChest chest = (TileEntityChest) dungeonRoom.getContext().getWorld().getTileEntity(pos); + if (chest.numPlayersUsing > 0) { + return SecretStatus.FOUND; + } else{ + return SecretStatus.CREATED; + } + } + } else { + return SecretStatus.NOT_SURE; + } + } + public static enum SecretType { BAT, CHEST, ITEM_DROP } + + public static enum SecretStatus { + DEFINITELY_NOT, NOT_SURE, CREATED, FOUND, ERROR + } + + public DungeonSecret clone() throws CloneNotSupportedException { + DungeonSecret dungeonSecret = new DungeonSecret(); + dungeonSecret.secretPoint = (OffsetPoint) secretPoint.clone(); + dungeonSecret.secretType = secretType; + return dungeonSecret; + } } diff --git a/src/main/java/kr/syeyoung/dungeonsguide/dungeon/mechanics/DungeonWeakWall.java b/src/main/java/kr/syeyoung/dungeonsguide/dungeon/mechanics/DungeonWeakWall.java deleted file mode 100644 index e233c2fb..00000000 --- a/src/main/java/kr/syeyoung/dungeonsguide/dungeon/mechanics/DungeonWeakWall.java +++ /dev/null @@ -1,9 +0,0 @@ -package kr.syeyoung.dungeonsguide.dungeon.mechanics; - -import kr.syeyoung.dungeonsguide.dungeon.data.OffsetPointSet; -import lombok.Data; - -@Data -public class DungeonWeakWall implements DungeonMechanic { - OffsetPointSet weakWalls = new OffsetPointSet(); -} diff --git a/src/main/java/kr/syeyoung/dungeonsguide/dungeon/mechanics/Triggered.java b/src/main/java/kr/syeyoung/dungeonsguide/dungeon/mechanics/Triggered.java deleted file mode 100644 index d32a76e4..00000000 --- a/src/main/java/kr/syeyoung/dungeonsguide/dungeon/mechanics/Triggered.java +++ /dev/null @@ -1,4 +0,0 @@ -package kr.syeyoung.dungeonsguide.dungeon.mechanics; - -public interface Triggered extends DungeonMechanic{ -} diff --git a/src/main/java/kr/syeyoung/dungeonsguide/dungeon/mechanics/Triggering.java b/src/main/java/kr/syeyoung/dungeonsguide/dungeon/mechanics/Triggering.java deleted file mode 100644 index 7d535d37..00000000 --- a/src/main/java/kr/syeyoung/dungeonsguide/dungeon/mechanics/Triggering.java +++ /dev/null @@ -1,4 +0,0 @@ -package kr.syeyoung.dungeonsguide.dungeon.mechanics; - -public interface Triggering extends DungeonMechanic { -} |