aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/kr/syeyoung/dungeonsguide/dungeon/doorfinder
diff options
context:
space:
mode:
authorsyeyoung <42869671+cyoung06@users.noreply.github.com>2020-11-23 11:39:30 +0900
committersyeyoung <42869671+cyoung06@users.noreply.github.com>2020-11-23 11:39:30 +0900
commit17b3b9ce29495b554d38c1de4af38904be0fcc23 (patch)
tree117e3c2a4d2ab1f2a3a770527a22b533f647a45d /src/main/java/kr/syeyoung/dungeonsguide/dungeon/doorfinder
parent46a86f18ebd62a3771ca4fcb7d1cf17f69b80c73 (diff)
downloadSkyblock-Dungeons-Guide-17b3b9ce29495b554d38c1de4af38904be0fcc23.tar.gz
Skyblock-Dungeons-Guide-17b3b9ce29495b554d38c1de4af38904be0fcc23.tar.bz2
Skyblock-Dungeons-Guide-17b3b9ce29495b554d38c1de4af38904be0fcc23.zip
room data!
Diffstat (limited to 'src/main/java/kr/syeyoung/dungeonsguide/dungeon/doorfinder')
-rw-r--r--src/main/java/kr/syeyoung/dungeonsguide/dungeon/doorfinder/DungeonDoor.java37
1 files changed, 37 insertions, 0 deletions
diff --git a/src/main/java/kr/syeyoung/dungeonsguide/dungeon/doorfinder/DungeonDoor.java b/src/main/java/kr/syeyoung/dungeonsguide/dungeon/doorfinder/DungeonDoor.java
new file mode 100644
index 00000000..2855b05f
--- /dev/null
+++ b/src/main/java/kr/syeyoung/dungeonsguide/dungeon/doorfinder/DungeonDoor.java
@@ -0,0 +1,37 @@
+package kr.syeyoung.dungeonsguide.dungeon.doorfinder;
+
+import com.google.common.collect.Sets;
+import lombok.Getter;
+import net.minecraft.block.Block;
+import net.minecraft.init.Blocks;
+import net.minecraft.util.BlockPos;
+import net.minecraft.world.World;
+
+import java.util.Set;
+
+@Getter
+public class DungeonDoor {
+ private final World w;
+ private final BlockPos position;
+ private boolean exist = true;
+ private boolean isZDir;
+
+ private static final Set<Block> legalBlocks = Sets.newHashSet(Blocks.coal_block, Blocks.barrier, Blocks.monster_egg, Blocks.air, Blocks.hardened_clay);
+
+
+ public DungeonDoor(World world, BlockPos pos) {
+ this.w = world;
+ this.position = pos;
+ for (int x = -1; x<=1; x++)
+ for (int y = -1; y<=1; y++)
+ for (int z = -1; z<=1; z++) {
+ BlockPos pos2 = pos.add(x,y,z);
+ Block block = world.getChunkFromBlockCoords(pos2).getBlock(pos2);
+ if (!legalBlocks.contains(block)) exist = false;
+ }
+ if (exist) {
+ BlockPos ZCheck = pos.add(0,0,2);
+ isZDir = world.getChunkFromBlockCoords(ZCheck).getBlock(ZCheck) == Blocks.air;
+ }
+ }
+}