From 48adbfe73db90e28ff920fe2ebbd7b2b645e3329 Mon Sep 17 00:00:00 2001 From: MiniDay <372403923@qq.com> Date: Thu, 19 Jan 2023 15:21:43 +0800 Subject: [PATCH] =?UTF-8?q?fix(bukkit):=20=E4=BC=A0=E9=80=81=E5=8A=9F?= =?UTF-8?q?=E8=83=BD=E5=A4=B1=E6=95=88?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../bukkit/listener/BallBukkitListener.java | 25 +++++++++++-------- 1 file changed, 15 insertions(+), 10 deletions(-) diff --git a/hamster-ball-bukkit/src/main/java/cn/hamster3/mc/plugin/ball/bukkit/listener/BallBukkitListener.java b/hamster-ball-bukkit/src/main/java/cn/hamster3/mc/plugin/ball/bukkit/listener/BallBukkitListener.java index 972696b..e100ed4 100644 --- a/hamster-ball-bukkit/src/main/java/cn/hamster3/mc/plugin/ball/bukkit/listener/BallBukkitListener.java +++ b/hamster-ball-bukkit/src/main/java/cn/hamster3/mc/plugin/ball/bukkit/listener/BallBukkitListener.java @@ -1,5 +1,6 @@ package cn.hamster3.mc.plugin.ball.bukkit.listener; +import cn.hamster3.mc.plugin.ball.bukkit.HamsterBallPlugin; import cn.hamster3.mc.plugin.ball.bukkit.data.BukkitLocation; import cn.hamster3.mc.plugin.ball.common.api.BallAPI; import cn.hamster3.mc.plugin.ball.common.data.BallMessageInfo; @@ -79,11 +80,13 @@ public class BallBukkitListener extends BallListener implements Listener { for (UUID uuid : event.getSendPlayerUUID()) { Player player = Bukkit.getPlayer(uuid); if (player != null) { - player.teleport(location.toBukkitLocation()); - if (event.getDoneMessage() != null) { - Audience audience = CoreBukkitAPI.getInstance().getAudienceProvider().player(player); - event.getDoneMessage().show(audience); - } + HamsterBallPlugin.sync(() -> { + player.teleport(location.toBukkitLocation()); + if (event.getDoneMessage() != null) { + Audience audience = CoreBukkitAPI.getInstance().getAudienceProvider().player(player); + event.getDoneMessage().show(audience); + } + }); } else { playerToLocation.put(uuid, new Pair<>(location.toBukkitLocation(), event.getDoneMessage())); } @@ -101,11 +104,13 @@ public class BallBukkitListener extends BallListener implements Listener { for (UUID uuid : event.getSendPlayerUUID()) { Player player = Bukkit.getPlayer(uuid); if (player != null) { - player.teleport(location); - if (event.getDoneMessage() != null) { - Audience audience = CoreBukkitAPI.getInstance().getAudienceProvider().player(player); - event.getDoneMessage().show(audience); - } + HamsterBallPlugin.sync(() -> { + player.teleport(location); + if (event.getDoneMessage() != null) { + Audience audience = CoreBukkitAPI.getInstance().getAudienceProvider().player(player); + event.getDoneMessage().show(audience); + } + }); } else { playerToLocation.put(uuid, new Pair<>(location, event.getDoneMessage())); }