diff --git a/src/main/java/me/goodandevil/skyblock/island/Island.java b/src/main/java/me/goodandevil/skyblock/island/Island.java index 69c73d5e..46fef7f2 100644 --- a/src/main/java/me/goodandevil/skyblock/island/Island.java +++ b/src/main/java/me/goodandevil/skyblock/island/Island.java @@ -297,11 +297,11 @@ public class Island { public void setLocation(IslandWorld world, IslandEnvironment environment, Location location) { for (IslandLocation islandLocationList : islandLocations) { if (islandLocationList.getWorld() == world && islandLocationList.getEnvironment() == environment) { - Bukkit.getServer().getPluginManager() - .callEvent(new IslandLocationChangeEvent(getAPIWrapper(), + Bukkit.getScheduler().runTaskAsynchronously(skyblock, () -> + Bukkit.getServer().getPluginManager().callEvent(new IslandLocationChangeEvent(getAPIWrapper(), new me.goodandevil.skyblock.api.island.IslandLocation( APIUtil.fromImplementation(environment), APIUtil.fromImplementation(world), - location))); + location)))); FileManager fileManager = skyblock.getFileManager(); diff --git a/src/main/java/me/goodandevil/skyblock/utils/world/block/BlockUtil.java b/src/main/java/me/goodandevil/skyblock/utils/world/block/BlockUtil.java index ebc4bbd8..15209db6 100644 --- a/src/main/java/me/goodandevil/skyblock/utils/world/block/BlockUtil.java +++ b/src/main/java/me/goodandevil/skyblock/utils/world/block/BlockUtil.java @@ -388,6 +388,7 @@ public final class BlockUtil { } else { skull.setOwner(blockData.getSkullOwner()); } + skull.update(); } else { if (NMSVersion > 8) { if (blockTypeState == BlockStateType.ENDGATEWAY) {