From 367bcdabf7161db9f2a5a8fc718e61808a3ab04e Mon Sep 17 00:00:00 2001 From: Sotr Date: Wed, 6 Jun 2018 22:21:23 +0800 Subject: [PATCH] Ensure main event in EntityPlayer --- .../src/main/java/net/minecraft/server/EntityPlayer.java | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/sources/src/main/java/net/minecraft/server/EntityPlayer.java b/sources/src/main/java/net/minecraft/server/EntityPlayer.java index a16f9346b..6c7ead9fc 100644 --- a/sources/src/main/java/net/minecraft/server/EntityPlayer.java +++ b/sources/src/main/java/net/minecraft/server/EntityPlayer.java @@ -2,6 +2,8 @@ package net.minecraft.server; import com.google.common.collect.Lists; import com.mojang.authlib.GameProfile; + +import io.akarin.api.Akari; import io.netty.buffer.Unpooled; import java.util.ArrayDeque; // Paper import java.util.ArrayList; @@ -419,8 +421,10 @@ public class EntityPlayer extends EntityHuman implements ICrafting { } if (this.oldLevel != this.expLevel) { - CraftEventFactory.callPlayerLevelChangeEvent(this.world.getServer().getPlayer(this), this.oldLevel, this.expLevel); - this.oldLevel = this.expLevel; + Akari.callbackQueue.add(() -> { + CraftEventFactory.callPlayerLevelChangeEvent(this.world.getServer().getPlayer(this), this.oldLevel, this.expLevel); + this.oldLevel = this.expLevel; + }); // Akarin } // CraftBukkit end } catch (Throwable throwable) {