diff --git a/src/main/java/com/dfsek/terra/api/bukkit/BukkitChunk.java b/src/main/java/com/dfsek/terra/api/bukkit/BukkitChunk.java index 269d27707..e96289eee 100644 --- a/src/main/java/com/dfsek/terra/api/bukkit/BukkitChunk.java +++ b/src/main/java/com/dfsek/terra/api/bukkit/BukkitChunk.java @@ -18,4 +18,9 @@ public class BukkitChunk implements Chunk { public int getZ() { return delegate.getZ(); } + + @Override + public org.bukkit.Chunk getHandle() { + return delegate; + } } diff --git a/src/main/java/com/dfsek/terra/api/generic/BlockData.java b/src/main/java/com/dfsek/terra/api/generic/BlockData.java index dfca0b585..64d031c61 100644 --- a/src/main/java/com/dfsek/terra/api/generic/BlockData.java +++ b/src/main/java/com/dfsek/terra/api/generic/BlockData.java @@ -1,5 +1,4 @@ package com.dfsek.terra.api.generic; -public interface BlockData { - Object getHandle(); +public interface BlockData extends Handle { } diff --git a/src/main/java/com/dfsek/terra/api/generic/Handle.java b/src/main/java/com/dfsek/terra/api/generic/Handle.java new file mode 100644 index 000000000..1df2e8946 --- /dev/null +++ b/src/main/java/com/dfsek/terra/api/generic/Handle.java @@ -0,0 +1,8 @@ +package com.dfsek.terra.api.generic; + +/** + * An interface that contains a platform delegate. + */ +public interface Handle { + Object getHandle(); +} diff --git a/src/main/java/com/dfsek/terra/api/generic/world/BiomeGrid.java b/src/main/java/com/dfsek/terra/api/generic/world/BiomeGrid.java index 2cc030c17..b2df137dd 100644 --- a/src/main/java/com/dfsek/terra/api/generic/world/BiomeGrid.java +++ b/src/main/java/com/dfsek/terra/api/generic/world/BiomeGrid.java @@ -1,11 +1,10 @@ package com.dfsek.terra.api.generic.world; +import com.dfsek.terra.api.generic.Handle; import org.bukkit.block.Biome; import org.jetbrains.annotations.NotNull; -public interface BiomeGrid { - Object getHandle(); - +public interface BiomeGrid extends Handle { /** * Get biome at x, z within chunk being generated * diff --git a/src/main/java/com/dfsek/terra/api/generic/world/Block.java b/src/main/java/com/dfsek/terra/api/generic/world/Block.java index e3ec7fe64..d45bcd51a 100644 --- a/src/main/java/com/dfsek/terra/api/generic/world/Block.java +++ b/src/main/java/com/dfsek/terra/api/generic/world/Block.java @@ -1,4 +1,6 @@ package com.dfsek.terra.api.generic.world; -public interface Block { +import com.dfsek.terra.api.generic.Handle; + +public interface Block extends Handle { } diff --git a/src/main/java/com/dfsek/terra/api/generic/world/Chunk.java b/src/main/java/com/dfsek/terra/api/generic/world/Chunk.java index 1c8370131..e9ffcf814 100644 --- a/src/main/java/com/dfsek/terra/api/generic/world/Chunk.java +++ b/src/main/java/com/dfsek/terra/api/generic/world/Chunk.java @@ -1,6 +1,8 @@ package com.dfsek.terra.api.generic.world; -public interface Chunk { +import com.dfsek.terra.api.generic.Handle; + +public interface Chunk extends Handle { int getX(); int getZ(); diff --git a/src/main/java/com/dfsek/terra/api/generic/world/World.java b/src/main/java/com/dfsek/terra/api/generic/world/World.java index 2a2078259..fc1df9474 100644 --- a/src/main/java/com/dfsek/terra/api/generic/world/World.java +++ b/src/main/java/com/dfsek/terra/api/generic/world/World.java @@ -1,7 +1,7 @@ package com.dfsek.terra.api.generic.world; -public interface World { - long getSeed(); +import com.dfsek.terra.api.generic.Handle; - Object getHandle(); +public interface World extends Handle { + long getSeed(); }