aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/at/lorenz/mod/utils/BlockUtils.kt
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java/at/lorenz/mod/utils/BlockUtils.kt')
-rw-r--r--src/main/java/at/lorenz/mod/utils/BlockUtils.kt23
1 files changed, 23 insertions, 0 deletions
diff --git a/src/main/java/at/lorenz/mod/utils/BlockUtils.kt b/src/main/java/at/lorenz/mod/utils/BlockUtils.kt
new file mode 100644
index 000000000..d16194c70
--- /dev/null
+++ b/src/main/java/at/lorenz/mod/utils/BlockUtils.kt
@@ -0,0 +1,23 @@
+package at.lorenz.mod.utils
+
+import net.minecraft.block.Block
+import net.minecraft.client.Minecraft
+import net.minecraft.tileentity.TileEntitySkull
+import net.minecraft.util.BlockPos
+import net.minecraftforge.common.util.Constants
+
+object BlockUtils {
+
+ fun LorenzVec.getBlockAt(): Block =
+ Minecraft.getMinecraft().theWorld.getBlockState(toBlocPos()).block
+
+ fun LorenzVec.isInLoadedChunk(): Boolean =
+ Minecraft.getMinecraft().theWorld.chunkProvider.provideChunk(toBlocPos()).isLoaded
+
+ fun getSkinFromSkull(position: BlockPos?): String? {
+ val entity = Minecraft.getMinecraft().theWorld.getTileEntity(position) as TileEntitySkull
+ val serializeNBT = entity.serializeNBT()
+ return serializeNBT.getCompoundTag("Owner").getCompoundTag("Properties")
+ .getTagList("textures", Constants.NBT.TAG_COMPOUND).getCompoundTagAt(0).getString("Value")
+ }
+} \ No newline at end of file