diff --git a/src/main/src/me/skymc/taboolib/Main.java b/src/main/src/me/skymc/taboolib/Main.java index a18f523..82646f0 100644 --- a/src/main/src/me/skymc/taboolib/Main.java +++ b/src/main/src/me/skymc/taboolib/Main.java @@ -88,6 +88,8 @@ public class Main extends JavaPlugin implements Listener { private static LogClient client; @Getter private static Language2 exampleLangauge2; + @Getter + private static boolean started; public static Random getRandom() { return NumberUtils.getRand(); @@ -220,12 +222,22 @@ public class Main extends JavaPlugin implements Listener { TLM.getInst(); } }.runTask(this); + + // 启动 + started = true; } @Override public void onDisable() { disable = true; + // 如果插件尚未启动完成 + if (!started) { + MsgUtils.send("&c插件尚未启动完成, 已跳过卸载代码"); + MsgUtils.send("&c插件作者: &4坏黑"); + return; + } + // 保存数据 Bukkit.getOnlinePlayers().forEach(x -> DataUtils.saveOnline(x.getName())); // 结束线程 diff --git a/src/main/src/me/skymc/taboolib/commands/sub/HelpCommand.java b/src/main/src/me/skymc/taboolib/commands/sub/HelpCommand.java index feb07eb..d64d523 100644 --- a/src/main/src/me/skymc/taboolib/commands/sub/HelpCommand.java +++ b/src/main/src/me/skymc/taboolib/commands/sub/HelpCommand.java @@ -46,7 +46,7 @@ public class HelpCommand extends SubCommand { helps.put("e", null); helps.put("/taboolib importdata", "4ݿ⵼뱾 8(òݿ)"); - if (sender instanceof ConsoleCommandSender || TabooLib.getVerint() < 10800) { + if (sender instanceof ConsoleCommandSender || TabooLib.getVerint() < 10900) { sender.sendMessage("f"); sender.sendMessage("bl----- 3lTaooLib Commands bl-----"); sender.sendMessage("f"); diff --git a/src/main/src/me/skymc/taboolib/display/ActionUtils.java b/src/main/src/me/skymc/taboolib/display/ActionUtils.java index ceae2bf..7b4c273 100644 --- a/src/main/src/me/skymc/taboolib/display/ActionUtils.java +++ b/src/main/src/me/skymc/taboolib/display/ActionUtils.java @@ -4,7 +4,9 @@ import java.lang.reflect.Constructor; import org.bukkit.Bukkit; import org.bukkit.entity.Player; +import me.skymc.taboolib.TabooLib; import me.skymc.taboolib.methods.MethodsUtils; +import net.minecraft.server.v1_12_R1.ChatMessageType; public class ActionUtils { @@ -44,8 +46,16 @@ public class ActionUtils { try { Object ab = getNMSClass("ChatComponentText").getConstructor(new Class[] { String.class }).newInstance(new Object[] { msg }); - Constructor ac = getNMSClass("PacketPlayOutChat").getConstructor(new Class[] { getNMSClass("IChatBaseComponent"), Byte.TYPE }); - Object abPacket = ac.newInstance(new Object[] { ab, Byte.valueOf((byte) 2) }); + Constructor ac = null; + Object abPacket = null; + // ����汾���� 1.11.0 + if (TabooLib.getVerint() > 11100) { + Class chatMessageType = getNMSClass("ChatMessageType"); + ac = getNMSClass("PacketPlayOutChat").getConstructor(getNMSClass("IChatBaseComponent"), chatMessageType); + abPacket = ac.newInstance(ab, chatMessageType.getMethod("a", Byte.TYPE).invoke(null, (byte) 2)); + } else { + abPacket = ac.newInstance(ab, Byte.valueOf((byte) 2)); + } sendPacket(p, abPacket); } catch (Exception ex)