diff --git a/build.gradle b/build.gradle index 1f184be15..5434d757d 100644 --- a/build.gradle +++ b/build.gradle @@ -125,8 +125,8 @@ allprojects { dependencies { // Provided or Classpath - compileOnly 'org.projectlombok:lombok:1.18.24' - annotationProcessor 'org.projectlombok:lombok:1.18.24' + compileOnly 'org.projectlombok:lombok:1.18.36' + annotationProcessor 'org.projectlombok:lombok:1.18.36' // Shaded implementation 'com.dfsek:Paralithic:0.4.0' diff --git a/core/src/main/java/com/volmit/iris/engine/framework/IrisLootEvent.java b/core/src/main/java/com/volmit/iris/core/events/IrisLootEvent.java similarity index 91% rename from core/src/main/java/com/volmit/iris/engine/framework/IrisLootEvent.java rename to core/src/main/java/com/volmit/iris/core/events/IrisLootEvent.java index 2ade7332f..067e874ce 100644 --- a/core/src/main/java/com/volmit/iris/engine/framework/IrisLootEvent.java +++ b/core/src/main/java/com/volmit/iris/core/events/IrisLootEvent.java @@ -1,6 +1,7 @@ -package com.volmit.iris.engine.framework; +package com.volmit.iris.core.events; import com.volmit.iris.Iris; +import com.volmit.iris.engine.framework.Engine; import com.volmit.iris.engine.object.InventorySlotType; import com.volmit.iris.engine.object.IrisLootTable; import com.volmit.iris.util.collection.KList; @@ -101,9 +102,12 @@ public class IrisLootEvent extends Event { LootContext context = new LootContext.Builder(loc).build(); LootGenerateEvent event = new LootGenerateEvent(world, null, holder, EMPTY, context, loot, true); - if (!Bukkit.isPrimaryThread()) + if (!Bukkit.isPrimaryThread()) { + Iris.warn("LootGenerateEvent was not called on the main thread, please report this issue."); + Thread.dumpStack(); J.sfut(() -> Bukkit.getPluginManager().callEvent(event)).join(); - else Bukkit.getPluginManager().callEvent(event); + } else Bukkit.getPluginManager().callEvent(event); + return event.isCancelled(); } } \ No newline at end of file diff --git a/core/src/main/java/com/volmit/iris/engine/framework/Engine.java b/core/src/main/java/com/volmit/iris/engine/framework/Engine.java index 1614a0b1a..b6671a999 100644 --- a/core/src/main/java/com/volmit/iris/engine/framework/Engine.java +++ b/core/src/main/java/com/volmit/iris/engine/framework/Engine.java @@ -20,6 +20,7 @@ package com.volmit.iris.engine.framework; import com.volmit.iris.Iris; import com.volmit.iris.core.IrisSettings; +import com.volmit.iris.core.events.IrisLootEvent; import com.volmit.iris.core.gui.components.RenderType; import com.volmit.iris.core.gui.components.Renderer; import com.volmit.iris.core.link.Identifier; diff --git a/core/src/main/java/com/volmit/iris/engine/framework/placer/WorldObjectPlacer.java b/core/src/main/java/com/volmit/iris/engine/framework/placer/WorldObjectPlacer.java index 9137ba0e4..1d334e14b 100644 --- a/core/src/main/java/com/volmit/iris/engine/framework/placer/WorldObjectPlacer.java +++ b/core/src/main/java/com/volmit/iris/engine/framework/placer/WorldObjectPlacer.java @@ -5,7 +5,7 @@ import com.volmit.iris.core.loader.IrisData; import com.volmit.iris.core.tools.IrisToolbelt; import com.volmit.iris.engine.data.cache.Cache; import com.volmit.iris.engine.framework.Engine; -import com.volmit.iris.engine.framework.IrisLootEvent; +import com.volmit.iris.core.events.IrisLootEvent; import com.volmit.iris.engine.mantle.EngineMantle; import com.volmit.iris.engine.object.IObjectPlacer; import com.volmit.iris.engine.object.InventorySlotType;