CoreNetwork / Mantle

The main plugin powering majority of features on Flatcore
1 stars 1 forks source link

CraftBlockState cannot be cast to InventoryHolder #363

Open riddle opened 9 years ago

riddle commented 9 years ago
03:00:01 [WARN] [Mantle] Task #2587862 for Mantle v1.2.0 generated an exception
java.lang.ClassCastException: org.bukkit.craftbukkit.v1_8_R1.block.CraftBlockState cannot be cast to org.bukkit.inventory.InventoryHolder
        at us.corenetwork.mantle.restockablechests.RestockableChest.createChest(RestockableChest.java:231) ~[?:?]
        at us.corenetwork.mantle.regeneration.RegenerationUtil.finishRegenerateStructure(RegenerationUtil.java:145) ~[?:?]
        at us.corenetwork.mantle.CachedSchematic$2.run(CachedSchematic.java:693) ~[?:?]
        at org.bukkit.craftbukkit.v1_8_R1.scheduler.CraftTask.run(CraftTask.java:71) ~[spigot-1.8-dev.jar:git-Spigot-35348a5-ee6d0fa]
        at org.bukkit.craftbukkit.v1_8_R1.scheduler.CraftScheduler.mainThreadHeartbeat(CraftScheduler.java:350) [spigot-1.8-dev.jar:git-Spigot-35348a5-ee6d0fa]
        at net.minecraft.server.v1_8_R1.MinecraftServer.z(MinecraftServer.java:709) [spigot-1.8-dev.jar:git-Spigot-35348a5-ee6d0fa]
        at net.minecraft.server.v1_8_R1.DedicatedServer.z(DedicatedServer.java:316) [spigot-1.8-dev.jar:git-Spigot-35348a5-ee6d0fa]
        at net.minecraft.server.v1_8_R1.MinecraftServer.y(MinecraftServer.java:634) [spigot-1.8-dev.jar:git-Spigot-35348a5-ee6d0fa]
        at net.minecraft.server.v1_8_R1.MinecraftServer.run(MinecraftServer.java:537) [spigot-1.8-dev.jar:git-Spigot-35348a5-ee6d0fa]
        at java.lang.Thread.run(Thread.java:745) [?:1.8.0_25]
riddle commented 9 years ago

Interesting info:

02:59:53 [INFO] [Mantle] Checking structure Villages around -1216 5952

7s later, server saved and exception appeared.

eliadil commented 9 years ago

I think it is somehow related to some (very rarely) villages regenerating half way through. It can leave some wrong data about chest location in given village, and when this village is regenerated again it will try to check for chest where there is none.

If I'm not wrong, then I'm leaving this error till I refactor the generation/regeneration stuff :P (soon!)