diff --git a/TabooLib.iml b/TabooLib.iml
index acb26d9..88212e0 100644
--- a/TabooLib.iml
+++ b/TabooLib.iml
@@ -10,6 +10,15 @@
+
+
+
+
+
+
+
+
+
@@ -21,6 +30,7 @@
+
@@ -30,17 +40,6 @@
-
-
-
-
-
-
-
-
-
-
-
@@ -50,33 +49,6 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
@@ -87,9 +59,18 @@
-
+
-
+
+
+
+
+
+
+
+
+
+
@@ -104,24 +85,6 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
@@ -132,9 +95,18 @@
-
+
-
+
+
+
+
+
+
+
+
+
+
diff --git a/pom.xml b/pom.xml
index 1091d54..7653b83 100644
--- a/pom.xml
+++ b/pom.xml
@@ -6,7 +6,7 @@
me.skymc
TabooLib
- 3.832
+ 4.0
UTF-8
@@ -57,8 +57,8 @@
- vault
- http://nexus.hc.to/content/repositories/pub_releases
+ placeholderapi
+ http://repo.extendedclip.com/content/repositories/placeholderapi/
@@ -93,6 +93,11 @@
asm
6.1.1
+
+ me.clip
+ placeholderapi
+ 2.8.4
+
bukkit
bukkit1_12
@@ -100,11 +105,6 @@
system
${basedir}/libs/1_12_R1.jar
-
- net.milkbowl.vault
- VaultAPI
- 1.6
-
bukkit
bukkit1_8
@@ -112,27 +112,6 @@
system
${basedir}/libs/1_8_R3.jar
-
- bukkit
- bukkit1_9
- 1
- system
- ${basedir}/libs/1_9_R3.jar
-
-
- bukkit
- bukkit1_10
- 1
- system
- ${basedir}/libs/1_10_R1.jar
-
-
- bukkit
- bukkit1_11
- system
- 1
- ${basedir}/libs/1_11_R1.jar
-
com.sun.tools
jshell
@@ -140,27 +119,6 @@
system
${basedir}/libs/com.sun.tools.jar
-
- placeholder
- placeholder
- 1
- system
- ${basedir}/libs/PlaceholderAPI.jar
-
-
- plib
- plib
- 1
- system
- ${basedir}/libs/ProtocolLib.jar
-
-
- sk
- sk
- 1
- system
- ${basedir}/libs/Skript.jar
-
taboocode
taboocode
@@ -168,6 +126,20 @@
system
${basedir}/libs/TabooCode5.jar
+
+ yum
+ yum
+ 1
+ system
+ ${basedir}/libs/Yum.jar
+
+
+ plib
+ plib
+ 1
+ system
+ ${basedir}/libs/ProtocolLib.jar
+
wg
wg
@@ -176,11 +148,18 @@
${basedir}/libs/WorldGuard.jar
- yum
- yum
+ sk
+ sk
1
system
- ${basedir}/libs/Yum.jar
+ ${basedir}/libs/Skript.jar
+
+
+ vault
+ vault
+ 1
+ system
+ ${basedir}/libs/Vault.jar
diff --git a/src/main/java/com/ilummc/tlib/resources/TLocaleLoader.java b/src/main/java/com/ilummc/tlib/resources/TLocaleLoader.java
index 44822a0..84990b6 100644
--- a/src/main/java/com/ilummc/tlib/resources/TLocaleLoader.java
+++ b/src/main/java/com/ilummc/tlib/resources/TLocaleLoader.java
@@ -72,7 +72,7 @@ public class TLocaleLoader {
*/
public static void load(Plugin plugin, boolean isCover) {
try {
- if ((isCover || !isLocaleLoaded(plugin)) && (plugin.equals(Main.getInst()) || isDependWithTabooLib(plugin))) {
+ if (isLoadLocale(plugin, isCover)) {
// 获取文件
File localeFile = getLocaleFile(plugin);
if (localeFile == null) {
@@ -99,6 +99,10 @@ public class TLocaleLoader {
}
}
+ private static boolean isLoadLocale(Plugin plugin, boolean isCover) {
+ return (isCover || !isLocaleLoaded(plugin)) && (plugin.equals(Main.getInst()) || isDependWithTabooLib(plugin));
+ }
+
private static void infoLogger(String path, String... args) {
TLogger.getGlobalLogger().info(Strings.replaceWithOrder(TLib.getInternalLanguage().getString(path), args));
}
diff --git a/src/main/java/me/skymc/taboolib/Main.java b/src/main/java/me/skymc/taboolib/Main.java
index b8e2d82..111c451 100644
--- a/src/main/java/me/skymc/taboolib/Main.java
+++ b/src/main/java/me/skymc/taboolib/Main.java
@@ -38,7 +38,6 @@ import me.skymc.taboolib.update.UpdateTask;
import me.skymc.tlm.TLM;
import me.skymc.tlm.command.TLMCommands;
import me.skymc.tlm.module.TabooLibraryModule;
-import net.milkbowl.vault.economy.Economy;
import org.bukkit.Bukkit;
import org.bukkit.configuration.file.FileConfiguration;
import org.bukkit.event.Listener;
@@ -49,12 +48,14 @@ import org.bukkit.scheduler.BukkitRunnable;
import java.io.File;
import java.util.Random;
-@SuppressWarnings("deprecation")
+/**
+ * @author sky
+ */
public class Main extends JavaPlugin implements Listener {
private static Plugin inst;
- private static Economy Economy;
+ private static net.milkbowl.vault.economy.Economy Economy;
private static File playerDataFolder;
diff --git a/src/main/java/me/skymc/taboolib/anvil/AnvilContainer.java b/src/main/java/me/skymc/taboolib/anvil/AnvilContainer.java
new file mode 100644
index 0000000..7031477
--- /dev/null
+++ b/src/main/java/me/skymc/taboolib/anvil/AnvilContainer.java
@@ -0,0 +1,80 @@
+package me.skymc.taboolib.anvil;
+
+import com.ilummc.tlib.util.asm.AsmClassTransformer;
+import me.skymc.taboolib.nms.NMSUtils;
+import org.bukkit.Bukkit;
+import org.bukkit.entity.Player;
+
+/**
+ * @author sky
+ */
+public class AnvilContainer {
+
+// private static IAnvilContainer instance;
+
+ private static Class> ChatMessage = NMSUtils.getNMSClass("ChatMessage");
+ private static Class> PacketPlayOutOpenWindow = NMSUtils.getNMSClass("PacketPlayOutOpenWindow");
+ private static Class> IChatBaseComponent = NMSUtils.getNMSClass("IChatBaseComponent");
+ private static Class> Packet = NMSUtils.getNMSClass("Packet");
+
+// public static IAnvilContainer getInstance() {
+// return instance;
+// }
+//
+// static {
+// /*
+// * 玩不懂玩不懂... 似乎不会更改父类的包名?
+// */
+// instance = (IAnvilContainer) AsmClassTransformer.builder()
+// .from(AnvilContainerImpl.class)
+// .fromVersion("v1_12_R1")
+// .toVersion(Bukkit.getServer().getClass().getName().split("\\.")[3])
+// .build()
+// .transform();
+// }
+
+ public static void openAnvil(Player p) {
+ try {
+ Object player = p.getClass().getMethod("getHandle").invoke(p);
+ int c = (int) player.getClass().getMethod("nextContainerCounter").invoke(player);
+ Object chatMessage = ChatMessage.getConstructor(String.class, Object[].class).newInstance("Repairing", new Object[0]);
+ Object packetPlayOutOpenWindow = PacketPlayOutOpenWindow.getConstructor(Integer.TYPE, String.class, IChatBaseComponent, Integer.TYPE).newInstance(c, "minecraft:anvil", chatMessage, 0);
+ Object playerConnection = player.getClass().getDeclaredField("playerConnection").get(player);
+ playerConnection.getClass().getMethod("sendPacket", Packet).invoke(playerConnection, packetPlayOutOpenWindow);
+ } catch (Exception ignored) {
+ }
+ }
+}
+
+//interface IAnvilContainer {
+//
+// /**
+// * 打开铁砧界面
+// *
+// * @param player 玩家
+// */
+// void openAnvil(Player player);
+//}
+//
+//class AnvilContainerImpl extends net.minecraft.server.v1_12_R1.ContainerAnvil implements IAnvilContainer {
+//
+// public AnvilContainerImpl(net.minecraft.server.v1_12_R1.EntityHuman player) {
+// super(player.inventory, player.world, new net.minecraft.server.v1_12_R1.BlockPosition(0, 0, 0), player);
+// }
+//
+// @Override
+// public void openAnvil(Player p) {
+// net.minecraft.server.v1_12_R1.EntityPlayer player = ((org.bukkit.craftbukkit.v1_12_R1.entity.CraftPlayer) p).getHandle();
+// AnvilContainerImpl container = new AnvilContainerImpl(player);
+// int c = player.nextContainerCounter();
+// player.playerConnection.sendPacket(new net.minecraft.server.v1_12_R1.PacketPlayOutOpenWindow(c, "minecraft:anvil", new net.minecraft.server.v1_12_R1.ChatMessage("Repairing"), 0));
+// player.activeContainer = container;
+// player.activeContainer.windowId = c;
+// player.activeContainer.addSlotListener(player);
+// }
+//
+// @Override
+// public boolean a(net.minecraft.server.v1_12_R1.EntityHuman player) {
+// return true;
+// }
+//}
diff --git a/src/main/java/me/skymc/taboolib/anvil/AnvilContainerAPI.java b/src/main/java/me/skymc/taboolib/anvil/AnvilContainerAPI.java
index ca86796..ac17535 100644
--- a/src/main/java/me/skymc/taboolib/anvil/AnvilContainerAPI.java
+++ b/src/main/java/me/skymc/taboolib/anvil/AnvilContainerAPI.java
@@ -1,6 +1,6 @@
package me.skymc.taboolib.anvil;
-import me.skymc.taboolib.anvil.versions.AnvilContainer_V1_9_4;
+import com.ilummc.tlib.resources.TLocale;
import org.bukkit.Bukkit;
import org.bukkit.Material;
import org.bukkit.Sound;
@@ -19,6 +19,9 @@ import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
+/**
+ * @author sky
+ */
public class AnvilContainerAPI implements Listener {
public static List list = new ArrayList<>();
@@ -29,14 +32,12 @@ public class AnvilContainerAPI implements Listener {
public static void send(Player p, String type, String str, List lorelist) {
isOpen.put(p.getName(), type);
- AnvilContainer_V1_9_4.openAnvil(p);
+ AnvilContainer.openAnvil(p);
ItemMeta meta = item.getItemMeta();
list.clear();
if (lorelist == null) {
- list.add("");
- list.add("§7在上方文本框内输入信息");
- list.add("§7随后点击右侧输出物品");
+ list.addAll(TLocale.asStringList("ANVIL-CONTAINER.LORE-NORMAL"));
} else {
list = lorelist;
}
@@ -91,7 +92,7 @@ public class AnvilContainerAPI implements Listener {
if ("/anvilexample".equals(e.getMessage())) {
if (e.getPlayer().hasPermission("taboolib.admin")) {
e.setCancelled(true);
- AnvilContainerAPI.send(e.getPlayer(), "EXAMPLE", "在这里输入文本", null);
+ AnvilContainerAPI.send(e.getPlayer(), "EXAMPLE", TLocale.asString("ANVIL-CONTAINER.NAME-EXAMPLE"), null);
}
}
}
diff --git a/src/main/java/me/skymc/taboolib/anvil/versions/AnvilContainer_V1_11_R1.java b/src/main/java/me/skymc/taboolib/anvil/versions/AnvilContainer_V1_11_R1.java
deleted file mode 100644
index 298f021..0000000
--- a/src/main/java/me/skymc/taboolib/anvil/versions/AnvilContainer_V1_11_R1.java
+++ /dev/null
@@ -1,32 +0,0 @@
-package me.skymc.taboolib.anvil.versions;
-
-import net.minecraft.server.v1_11_R1.*;
-import org.bukkit.craftbukkit.v1_11_R1.entity.CraftPlayer;
-import org.bukkit.entity.Player;
-
-public class AnvilContainer_V1_11_R1 extends ContainerAnvil {
-
- public AnvilContainer_V1_11_R1(EntityHuman player) {
- super(player.inventory, player.world, new BlockPosition(0, 0, 0), player);
- }
-
- /**
- * @deprecated 方法已过期,已有新的方法
- */
- @Deprecated
- public static void openAnvil(Player p) {
- EntityPlayer player = ((CraftPlayer) p).getHandle();
- AnvilContainer_V1_11_R1 container = new AnvilContainer_V1_11_R1(player);
- int c = player.nextContainerCounter();
- player.playerConnection.sendPacket(new PacketPlayOutOpenWindow(c, "minecraft:anvil", new ChatMessage("Repairing"), 0));
- player.activeContainer = container;
- player.activeContainer.windowId = c;
- player.activeContainer.addSlotListener(player);
- }
-
- @Override
- public boolean a(EntityHuman player) {
- return true;
- }
-
-}
diff --git a/src/main/java/me/skymc/taboolib/anvil/versions/AnvilContainer_V1_8_R3.java b/src/main/java/me/skymc/taboolib/anvil/versions/AnvilContainer_V1_8_R3.java
deleted file mode 100644
index ce57cb1..0000000
--- a/src/main/java/me/skymc/taboolib/anvil/versions/AnvilContainer_V1_8_R3.java
+++ /dev/null
@@ -1,32 +0,0 @@
-package me.skymc.taboolib.anvil.versions;
-
-import net.minecraft.server.v1_8_R3.*;
-import org.bukkit.craftbukkit.v1_8_R3.entity.CraftPlayer;
-import org.bukkit.entity.Player;
-
-public class AnvilContainer_V1_8_R3 extends ContainerAnvil {
-
- public AnvilContainer_V1_8_R3(EntityHuman player) {
- super(player.inventory, player.world, new BlockPosition(0, 0, 0), player);
- }
-
- /**
- * @deprecated 方法已过期,已有新的方法
- */
- @Deprecated
- public static void openAnvil(Player p) {
- EntityPlayer player = ((CraftPlayer) p).getHandle();
- AnvilContainer_V1_8_R3 container = new AnvilContainer_V1_8_R3(player);
- int c = player.nextContainerCounter();
- player.playerConnection.sendPacket(new PacketPlayOutOpenWindow(c, "minecraft:anvil", new ChatMessage("Repairing"), 0));
- player.activeContainer = container;
- player.activeContainer.windowId = c;
- player.activeContainer.addSlotListener(player);
- }
-
- @Override
- public boolean a(EntityHuman player) {
- return true;
- }
-
-}
diff --git a/src/main/java/me/skymc/taboolib/anvil/versions/AnvilContainer_V1_9_4.java b/src/main/java/me/skymc/taboolib/anvil/versions/AnvilContainer_V1_9_4.java
deleted file mode 100644
index 71f5d2d..0000000
--- a/src/main/java/me/skymc/taboolib/anvil/versions/AnvilContainer_V1_9_4.java
+++ /dev/null
@@ -1,32 +0,0 @@
-package me.skymc.taboolib.anvil.versions;
-
-import net.minecraft.server.v1_9_R2.*;
-import org.bukkit.craftbukkit.v1_9_R2.entity.CraftPlayer;
-import org.bukkit.entity.Player;
-
-public class AnvilContainer_V1_9_4 extends ContainerAnvil {
-
- public AnvilContainer_V1_9_4(EntityHuman player) {
- super(player.inventory, player.world, new BlockPosition(0, 0, 0), player);
- }
-
- /**
- * @deprecated 方法已过期,已有新的方法
- */
- @Deprecated
- public static void openAnvil(Player p) {
- EntityPlayer player = ((CraftPlayer) p).getHandle();
- AnvilContainer_V1_9_4 container = new AnvilContainer_V1_9_4(player);
- int c = player.nextContainerCounter();
- player.playerConnection.sendPacket(new PacketPlayOutOpenWindow(c, "minecraft:anvil", new ChatMessage("Repairing"), 0));
- player.activeContainer = container;
- player.activeContainer.windowId = c;
- player.activeContainer.addSlotListener(player);
- }
-
- @Override
- public boolean a(EntityHuman player) {
- return true;
- }
-
-}
diff --git a/src/main/java/me/skymc/taboolib/support/SupportPlaceholder.java b/src/main/java/me/skymc/taboolib/support/SupportPlaceholder.java
index 1d20713..6b25309 100644
--- a/src/main/java/me/skymc/taboolib/support/SupportPlaceholder.java
+++ b/src/main/java/me/skymc/taboolib/support/SupportPlaceholder.java
@@ -8,6 +8,9 @@ import me.skymc.tlm.module.sub.ModuleKits;
import org.bukkit.entity.Player;
import org.bukkit.plugin.Plugin;
+/**
+ * @author sky
+ */
public class SupportPlaceholder extends EZPlaceholderHook {
public SupportPlaceholder(Plugin plugin, String identifier) {
diff --git a/src/main/java/me/skymc/taboolib/team/TagAPI.java b/src/main/java/me/skymc/taboolib/team/TagAPI.java
index c2d2677..b5819d0 100644
--- a/src/main/java/me/skymc/taboolib/team/TagAPI.java
+++ b/src/main/java/me/skymc/taboolib/team/TagAPI.java
@@ -132,7 +132,7 @@ public class TagAPI implements Listener {
builtUUID.append(sent.getId());
}
- AsyncPlayerReceiveNameTagEvent newEvent = new AsyncPlayerReceiveNameTagEvent(destinationPlayer, namedPlayer, oldEvent.getTag(), UUID.fromString(builtUUID.toString()));
+ AsyncPlayerReceiveNameTagEvent newEvent = new AsyncPlayerReceiveNameTagEvent(destinationPlayer, namedPlayer, getPlayerDisplayName(namedPlayer), UUID.fromString(builtUUID.toString()));
Bukkit.getServer().getPluginManager().callEvent(newEvent);
return new WrappedGameProfile(newEvent.getUUID(), newEvent.getTag().substring(0, Math.min(newEvent.getTag().length(), 16)));
diff --git a/src/main/resources/lang/zh_CN.yml b/src/main/resources/lang/zh_CN.yml
index 25c7489..104e0fb 100644
--- a/src/main/resources/lang/zh_CN.yml
+++ b/src/main/resources/lang/zh_CN.yml
@@ -77,7 +77,14 @@ LANGUAGE2:
FALL-NOTFOUND-FILE: '语言文件 {0} 不存在'
TIMECYCLE:
- FALL-CYCLE-EXISTS: '注册周期管理器 §8{0}§c 失败, 原因: &4名称重复'
+ FALL-CYCLE-EXISTS: '注册周期管理器 &8{0}&c 失败, 原因: &4名称重复'
+
+ANVIL-CONTAINER:
+ NAME-EXAMPLE: '在这里输入文本'
+ LORE-NORMAL:
+ - ''
+ - '&7在上方文本框内输入信息'
+ - '&7随后点击右侧输出物品'
UPDATETASK:
VERSION-LATEST: '插件已是最新版, 无需更新!'
@@ -110,17 +117,17 @@ COMMANDS:
ONLY-PLAYER: '&8[&3&lTabooLib&8] &4控制台无法这么做'
ONLY-STORAGE-SQL: '&8[&3&lTabooLib&8] &4只有启用数据库储存时才能这么做'
INTERNAL:
- ONLY-PLAYER: '&8[&3&lTabooLib&8] §7指令 §f{0} §7只能由 §f{1} §7执行'
+ ONLY-PLAYER: '&8[&3&lTabooLib&8] &7指令 &f{0} &7只能由 &f{1} &7执行'
TYPE-PLAYER: 玩家
TYPE-CONSOLE: 控制台
ERROR-USAGE:
- - '&8[&3&lTabooLib&8] §7指令 §f{0} §7参数不足'
- - '&8[&3&lTabooLib&8] §7正确用法:'
- - '&8[&3&lTabooLib&8] §7{1}'
+ - '&8[&3&lTabooLib&8] &7指令 &f{0} &7参数不足'
+ - '&8[&3&lTabooLib&8] &7正确用法:'
+ - '&8[&3&lTabooLib&8] &7{1}'
ERROR-COMMAND:
- - '&8[&3&lTabooLib&8] §7指令 §f{0} §7不存在'
- - '&8[&3&lTabooLib&8] §7你可能想要:'
- - '&8[&3&lTabooLib&8] §7{1}'
+ - '&8[&3&lTabooLib&8] &7指令 &f{0} &7不存在'
+ - '&8[&3&lTabooLib&8] &7你可能想要:'
+ - '&8[&3&lTabooLib&8] &7{1}'
COMMAND-REGISTER: '&7自动为插件 &f{0} &7的命令 &f{1} &7注册 &f{2} &7条子命令'
PARAMETER:
UNKNOWN: '&8[&3&lTabooLib&8] &4指令错误'
@@ -130,7 +137,7 @@ COMMANDS:
SUCCESS-NORMAL: '&8[&3&lTabooLib&8] &7重载成功'
SUCCESS-ELAPSED-TIME: '&8[&3&lTabooLib&8] &7重载成功, 耗时: &f{0} ms'
TABOOLIB:
- COMMAND-TITLE: '§b§l----- §3§lTabooLib Commands §b§l-----'
+ COMMAND-TITLE: '&b&l----- &3&lTabooLib Commands &b&l-----'
SAVE:
DESCRIPTION: '载入插件'
ARGUMENTS:
@@ -174,7 +181,7 @@ COMMANDS:
READ-RESULT: '&8[&3&lTabooLib&8] &7变量 &f{0} &7的值为: &f{1}'
READ-SUCCESS: '&8[&3&lTabooLib&8] &7写入完成, 耗时: &f{0} &7(ms)'
IMPORTDATA:
- DESCRIPTION: '§4向数据库导入本地数据 §8(该操作将会清空数据库)'
+ DESCRIPTION: '&4向数据库导入本地数据 &8(该操作将会清空数据库)'
CLEARING: '&8[&3&lTabooLib&8] &7正在清空数据库...'
EMPTYDATA: '&8[&3&lTabooLib&8] &4没有玩家数据可以导入'
IMPORTING-START: '&8[&3&lTabooLib&8] &7开始导入 &f{0} &7项玩家数据'
@@ -223,22 +230,22 @@ COMMANDS:
- ==: JSON
text:
- ''
- - '§b§l----- §3§lItemStack Info §b§l-----'
+ - '&b&l----- &3&lItemStack Info &b&l-----'
- ''
- - '§7 - 物品材质: §f<{0}@type>'
- - '§7 - 物品名称: §f<{1}@name>'
- - '§7 - 物品序号: §f<{2}@id>'
- - '§7 - 物品数据: §f'
+ - '&7 - 物品材质: &f<{0}@type>'
+ - '&7 - 物品名称: &f<{1}@name>'
+ - '&7 - 物品序号: &f<{2}@id>'
+ - '&7 - 物品数据: &f'
- ''
args:
type:
- hover: '§f点击复制'
+ hover: '&f点击复制'
suggest: '{0}'
name:
- hover: '§f点击复制'
+ hover: '&f点击复制'
suggest: '{1}'
id:
- hover: '§f点击复制'
+ hover: '&f点击复制'
suggest: '{2}'
nbt:
hover: '{3}'
@@ -246,27 +253,27 @@ COMMANDS:
DESCRIPTION: '查看所有物品'
MENU:
TITLE: '物品库 {0}'
- NEXT: '§f上一页'
- BACK: '§f下一页'
+ NEXT: '&f上一页'
+ BACK: '&f下一页'
LORE:
- ''
- - '§f§m '
- - '§f序列号: §8{0}'
+ - '&f&m '
+ - '&f序列号: &8{0}'
SOUNDS:
DESCRIPTION: '查看所有音效'
MENU:
TITLE: '音效库 {0}'
- NEXT: '§f上一页'
- BACK: '§f下一页'
+ NEXT: '&f上一页'
+ BACK: '&f下一页'
LORE:
- ''
- - '§f左键: §71 音调'
- - '§f右键: §72 音调'
- - '§f中键: §7复制名称'
+ - '&f左键: &71 音调'
+ - '&f右键: &72 音调'
+ - '&f中键: &7复制名称'
RESULT:
SEARCH:
- - '§7查询名称: §f{0}'
- - '§7查询结果: §f{1}'
+ - '&7查询名称: &f{0}'
+ - '&7查询结果: &f{1}'
COPY:
- ==: JSON
text: '&7点击复制: <&f&n{0}@sound>'
@@ -292,23 +299,23 @@ COMMANDS:
CYCLE-RESET: '&8[&3&lTabooLib&8] &7检查器 &f{0} &7初始化完成'
CYCLE-INFO:
- ''
- - '§b§l----- §3§lTimeCycle Info §b§l-----'
+ - '&b&l----- &3&lTimeCycle Info &b&l-----'
- ''
- - ' §f- §7注册周期: §f{0}'
- - ' §f- §7注册插件: §f{1}'
- - ' §f- §7上次刷新时间: §f{2}'
- - ' §f- §7下次刷新时间: §f{3}'
+ - ' &f- &7注册周期: &f{0}'
+ - ' &f- &7注册插件: &f{1}'
+ - ' &f- &7上次刷新时间: &f{2}'
+ - ' &f- &7下次刷新时间: &f{3}'
LIST:
HEAD:
- ''
- - '§b§l----- §3§lTimeCycle List §b§l-----'
+ - '&b&l----- &3&lTimeCycle List &b&l-----'
- ''
BODY:
- ==: JSON
- text: ' §7- §f{0} <&8(点击复制)@copy>'
+ text: ' &7- &f{0} <&8(点击复制)@copy>'
args:
copy:
- hover: '§f点击复制'
+ hover: '&f点击复制'
suggest: '{0}'
FOOT:
- ''
@@ -316,14 +323,14 @@ COMMANDS:
DESCRIPTION: '查看所有属性'
HEAD:
- ''
- - '§b§l----- §3§lItemStack Attributes §b§l-----'
+ - '&b&l----- &3&lItemStack Attributes &b&l-----'
- ''
BODY:
- ==: JSON
- text: ' §7- §f{0} <&8(点击复制)@copy>'
+ text: ' &7- &f{0} <&8(点击复制)@copy>'
args:
copy:
- hover: '§f点击复制'
+ hover: '&f点击复制'
suggest: '{0}'
FOOT:
- ''
@@ -331,14 +338,14 @@ COMMANDS:
DESCRIPTION: '查看所有附魔'
HEAD:
- ''
- - '§b§l----- §3§lItemStack Enchantments §b§l-----'
+ - '&b&l----- &3&lItemStack Enchantments &b&l-----'
- ''
BODY:
- ==: JSON
- text: ' §7- §f{0}. {1} <&8(点击复制)@copy>'
+ text: ' &7- &f{0}. {1} <&8(点击复制)@copy>'
args:
copy:
- hover: '§f点击复制'
+ hover: '&f点击复制'
suggest: '{1}'
FOOT:
- ''
@@ -346,14 +353,14 @@ COMMANDS:
DESCRIPTION: '查看所有药水'
HEAD:
- ''
- - '§b§l----- §3§lItemStack PotionEffects §b§l-----'
+ - '&b&l----- &3&lItemStack PotionEffects &b&l-----'
- ''
BODY:
- ==: JSON
- text: ' §7- §f{0}. {1} <&8(点击复制)@copy>'
+ text: ' &7- &f{0}. {1} <&8(点击复制)@copy>'
args:
copy:
- hover: '§f点击复制'
+ hover: '&f点击复制'
suggest: '{1}'
FOOT:
- ''
@@ -361,14 +368,14 @@ COMMANDS:
DESCRIPTION: '查看所有标签'
HEAD:
- ''
- - '§b§l----- §3§lItemStack Flags §b§l-----'
+ - '&b&l----- &3&lItemStack Flags &b&l-----'
- ''
BODY:
- ==: JSON
- text: ' §7- §f{0} <&8(点击复制)@copy>'
+ text: ' &7- &f{0} <&8(点击复制)@copy>'
args:
copy:
- hover: '§f点击复制'
+ hover: '&f点击复制'
suggest: '{0}'
FOOT:
- ''
@@ -376,14 +383,14 @@ COMMANDS:
DESCRIPTION: '查看所有部位'
HEAD:
- ''
- - '§b§l----- §3§lItemStack Slots §b§l-----'
+ - '&b&l----- &3&lItemStack Slots &b&l-----'
- ''
BODY:
- ==: JSON
- text: ' §7- §f{0} <&8(点击复制)@copy>'
+ text: ' &7- &f{0} <&8(点击复制)@copy>'
args:
copy:
- hover: '§f点击复制'
+ hover: '&f点击复制'
suggest: '{0}'
FOOT:
- ''
@@ -392,10 +399,10 @@ COMMANDS:
SUCCESS-SEND: '&8[&3&lTabooLib&8] &7信息已发送, 耗时&f: {0}'
HELP:
- ''
- - '§b§l----- §3§lLanguage2 Commands §b§l-----'
+ - '&b&l----- &3&lLanguage2 Commands &b&l-----'
- ''
- - '§f /{0} send §8[§7玩家/ALL§8] §8[§7语言§8] §8<§7变量§8> §6- §e发送语言提示'
- - '§f /{0} reload §6- §e重载语言库'
+ - '&f /{0} send &8[&7玩家/ALL&8] &8[&7语言&8] &8<&7变量&8> &6- &e发送语言提示'
+ - '&f /{0} reload &6- &e重载语言库'
- ''
TLOCALE:
INVALID-PLAYER: '&8[&3&lTabooLib&8] &4玩家 &c{0} &4不在线'
@@ -403,13 +410,13 @@ COMMANDS:
SUCCESS-SEND: '&8[&3&lTabooLib&8] &7信息已发送, 耗时&f: {0}'
HELP:
- ''
- - '§b§l----- §3§lTabooLibLoacle Commands §b§l-----'
+ - '&b&l----- &3&lTabooLibLoacle Commands &b&l-----'
- ''
- - '§f /{0} send §8[§7玩家/ALL§8] §8[§7语言§8] §8<§7变量§8> §6- §e发送语言提示'
- - '§f /{0} reload §6- §e重载语言库'
+ - '&f /{0} send &8[&7玩家/ALL&8] &8[&7语言&8] &8<&7变量&8> &6- &e发送语言提示'
+ - '&f /{0} reload &6- &e重载语言库'
- ''
TPLUGIN:
- COMMAND-TITLE: '§e§l----- §6§lTabooLibPlugin Commands §b§l-----'
+ COMMAND-TITLE: '&e&l----- &6&lTabooLibPlugin Commands &b&l-----'
LIST:
DESCRIPTION: '列出插件'
LIST-PLUGIN: