1
0
mirror of https://e.coding.net/circlecloud/Soulbound.git synced 2025-11-24 21:36:20 +00:00

add auto fix message.yml function...

This commit is contained in:
j502647092
2015-04-30 16:14:10 +08:00
parent 236abc0ab7
commit 2777e7d9aa
8 changed files with 41 additions and 90 deletions

View File

@@ -47,7 +47,15 @@ public class Soulbound extends JavaPlugin {
public void onLoad() {
this.saveResource("message.yml", false);
msgfile = new File(this.getDataFolder(), "message.yml");
msgConfig = Loadcfg(msgfile);
try {
LoadConfig (msgConfig ,msgfile);
} catch (FileNotFoundException e) {
this.saveResource("message.yml", false);
} catch (IOException e) {
this.getLogger().info("语言文件读取错误...");
} catch (InvalidConfigurationException e) {
this.saveResource("message.yml", true);
}
}

View File

@@ -43,7 +43,6 @@ public class BindCommand implements CommandExecutor {
case 2:
if (!args[1].equalsIgnoreCase("inventory")) {
sender.sendMessage(Soulbound.p.getlang("BIND_INVENTORY"));
//sender.sendMessage(ChatColor.RED + "Proper usage: " + ChatColor.GREEN + "/bind <player> inventory");
return true;
}
@@ -67,7 +66,6 @@ public class BindCommand implements CommandExecutor {
if ((itemInHand.getType() == Material.AIR) || ItemUtils.isSoulbound(itemInHand)) {
sender.sendMessage(Soulbound.p.getlang("CAN_NOT_BIND"));
//sender.sendMessage(ChatColor.GRAY + "You can't " + soulbound + ChatColor.GRAY + "this item.");
return false;
}
@@ -75,7 +73,6 @@ public class BindCommand implements CommandExecutor {
if (ItemUtils.isSoulbound(itemInHand) && Config.getInstance().getFeedbackEnabled()) {
sender.sendMessage(Soulbound.p.getlang("BINDED").replace("%target%", target.getName()));
//sender.sendMessage(ChatColor.GRAY + "Item is now " + soulbound + ChatColor.GRAY + "to " + ChatColor.DARK_AQUA + target.getName());
}
return true;
}
@@ -91,7 +88,6 @@ public class BindCommand implements CommandExecutor {
player.sendMessage(Soulbound.p.getlang("BIND_FULL_INEVNTORY").
replace("%player%", player.getName()).
replace("%target%", target.getName()));
//player.sendMessage(ChatColor.GRAY + "All items in " + ChatColor.DARK_AQUA + player.getName() + ChatColor.GRAY + "'s inventory are now " + soulbound + ChatColor.GRAY + "to " + ChatColor.DARK_AQUA + target.getName());
}
return true;
}

View File

@@ -38,11 +38,9 @@ public class BindOnEquipCommand implements CommandExecutor {
if (ItemUtils.isBindOnEquip(itemInHand)) {
player.sendMessage(Soulbound.p.getlang("BIND_ON_EQUIP"));
//player.sendMessage(ChatColor.GRAY + "Item is now " + ChatColor.DARK_RED + "Bind on Equip");
}
else {
player.sendMessage(Soulbound.p.getlang("CAN_NOT_BIND_ON_EQUIP"));
//player.sendMessage(ChatColor.RED + "Cannot mark this item as " + ChatColor.DARK_RED + "Bind on Equip");
}
return true;

View File

@@ -30,14 +30,12 @@ public class BindOnPickupCommand implements CommandExecutor {
if ((itemInHand.getType() == Material.AIR) || ItemUtils.isSoulbound(itemInHand)) {
sender.sendMessage(Soulbound.p.getlang("CAN_NOT_BIND_ON_PICKUP"));
//player.sendMessage(ChatColor.GRAY + "You can't " + ChatColor.GOLD + "Soulbound " + ChatColor.GRAY + "this item.");
return false;
}
ItemUtils.unbindItem(itemInHand);
ItemUtils.bopItem(itemInHand);
sender.sendMessage(Soulbound.p.getlang("BIND_ON_PICKUP"));
//player.sendMessage(ChatColor.GRAY + "Item is now " + ChatColor.DARK_RED + "Bind on pickup");
return true;
default:

View File

@@ -30,14 +30,12 @@ public class BindOnUseCommand implements CommandExecutor {
if ((itemInHand.getType() == Material.AIR) || ItemUtils.isSoulbound(itemInHand)) {
sender.sendMessage(Soulbound.p.getlang("CAN_NOT_BIND_ON_USE"));
//player.sendMessage(ChatColor.GRAY + "You can't " + ChatColor.GOLD + "Soulbound " + ChatColor.GRAY + "this item.");
return false;
}
ItemUtils.unbindItem(itemInHand);
ItemUtils.bouItem(itemInHand);
sender.sendMessage(Soulbound.p.getlang("BIND_ON_USE"));
//player.sendMessage(ChatColor.GRAY + "Item is now " + ChatColor.DARK_RED + "Bind on Use");
return true;
default:
return false;

View File

@@ -21,6 +21,11 @@ public class SoulboundCommand implements CommandExecutor {
if (args[0].equalsIgnoreCase("reload")) {
return reloadConfiguration(sender);
}
if (args[0].equalsIgnoreCase("help")
|| args[0].equalsIgnoreCase("?")) {
getHelpPage(1, sender);
return true;
}
default:
if (args[0].equalsIgnoreCase("help")
|| args[0].equalsIgnoreCase("?")) {
@@ -60,15 +65,8 @@ public class SoulboundCommand implements CommandExecutor {
if (page > maxPages) {
sender.sendMessage(Soulbound.p.getlang("PAGE_NOT_EXIST".
replace("%maxPages%", maxPages+"")));
//sender.sendMessage(ChatColor.RED + "This page does not exist."
//+ ChatColor.GOLD + " /help [0-" + maxPages + "]");
return;
}
//String dot = ChatColor.DARK_RED + "* ";
// sender.sendMessage(ChatColor.GRAY + "-----[ " + ChatColor.GOLD
// + "Soulbound Help" + ChatColor.GRAY + " ]----- Page " + page
// + "/" + maxPages);
sender.sendMessage(Soulbound.p.getlang("HELP_TITLE").
replace("%page%", page+"").
replace("%maxPages%", maxPages+"")
@@ -81,79 +79,37 @@ public class SoulboundCommand implements CommandExecutor {
sender.sendMessage(Soulbound.p.getlang("HOW_DOES_IT_WORK_4"));
sender.sendMessage(Soulbound.p.getlang("HOW_DOES_IT_WORK_5"));
sender.sendMessage(Soulbound.p.getlang("HOW_DOES_IT_WORK_6"));
// sender.sendMessage(ChatColor.GOLD + "How does it work?");
// sender.sendMessage(dot
// + ChatColor.GRAY
// + "Soulbound items are special items which are bound to a sender.");
// sender.sendMessage(dot
// + ChatColor.GRAY
// + "Players are prevented from doing certain actions with Soulbound items, such as:");
// sender.sendMessage(dot
// + ChatColor.GRAY
// + "dropping them on the ground, storing them in chests or giving them to other players.");
// sender.sendMessage(dot
// + ChatColor.GRAY
// + "Items marked as 'Bind on Pickup' will get Soulbound as soon as they get picked up.");
// sender.sendMessage(dot
// + ChatColor.GRAY
// + "Items marked as 'Bind on Use' will get Soulbound as soon as they get used.");
// sender.sendMessage(dot
// + ChatColor.GRAY
// + "Items marked as 'Bind on Equip' will get Soulbound as soon as they get equipped.");
}
if (page == 2) {
sender.sendMessage(Soulbound.p.getlang("CMD"));
//sender.sendMessage(ChatColor.GOLD + "Commands:");
if (sender.hasPermission("soulbound.commands.bind")) {
sender.sendMessage(Soulbound.p.getlang("CMDVERSION"));
//sender.sendMessage(dot + ChatColor.GREEN + "/soulbound"
//+ ChatColor.GRAY + " Check the status of the plugin.");
}
if (sender.hasPermission("soulbound.commands.bind")) {
sender.sendMessage(Soulbound.p.getlang("CMD_BIND"));
//sender.sendMessage(dot + ChatColor.GREEN + "/bind <sender>"
//+ ChatColor.GRAY
//+ " Soulbound the item currently in hand.");
sender.sendMessage(Soulbound.p.getlang("CMD_BIND_FULL_INVENTORY"));
//sender.sendMessage(dot + ChatColor.GREEN
//+ "/bind <sender> inventory" + ChatColor.GRAY
//+ " Soulbound an entire inventory.");
}
if (sender.hasPermission("soulbound.commands.bindonpickup")) {
sender.sendMessage(Soulbound.p.getlang("CMD_BIND_ON_PICKUP"));
//sender.sendMessage(dot + ChatColor.GREEN + "/bindonpickup"
//+ ChatColor.GRAY
//+ " Mark the item in hand as 'Bind on Pickup'");
}
if (sender.hasPermission("soulbound.commands.bindonuse")) {
sender.sendMessage(Soulbound.p.getlang("CMD_BIND_ON_USE"));
//sender.sendMessage(dot + ChatColor.GREEN + "/bindonuse"
//+ ChatColor.GRAY
//+ " Mark the item in hand as 'Bind on Use'");
}
if (sender.hasPermission("soulbound.commands.bindonequip")) {
sender.sendMessage(Soulbound.p.getlang("CMD_BIND_ON_EQUIP"));
//sender.sendMessage(dot + ChatColor.GREEN + "/bindonequip"
//+ ChatColor.GRAY
//+ " Mark the item in hand as 'Bind on Equip'");
}
if (sender.hasPermission("soulbound.commands.unbind")) {
sender.sendMessage(Soulbound.p.getlang("CMD_UNBIND"));
//sender.sendMessage(dot + ChatColor.GREEN + "/unbind"
//+ ChatColor.GRAY + " Unbind the item in hand.");
}
}
if (nextPage <= maxPages) {
sender.sendMessage(Soulbound.p.getlang("CMD_NEXT").replace("%nextPage%", nextPage+""));
//sender.sendMessage(ChatColor.GOLD + "Type /soulbound help "
//+ nextPage + " for more");
}
}
private boolean printUsage(CommandSender sender) {
sender.sendMessage(Soulbound.p.getlang("CMD_USE"));
//sender.sendMessage("Usage: /soulbound [reload | help]");
return false;
}
}

View File

@@ -30,17 +30,14 @@ public class UnbindCommand implements CommandExecutor {
if ((itemInHand.getType() == Material.AIR) || !ItemUtils.isSoulbound(itemInHand)) {
player.sendMessage(Soulbound.p.getlang("CAN_NOT_UNBIND"));
//player.sendMessage(ChatColor.GRAY + "You can't " + ChatColor.GOLD + "Unbind " + ChatColor.GRAY + "this item.");
return false;
}
if (ItemUtils.unbindItem(itemInHand)==null ){
player.sendMessage(Soulbound.p.getlang("CAN_NOT_UNBIND"));
//player.sendMessage(ChatColor.GRAY + "You can't " + ChatColor.GOLD + "Unbind " + ChatColor.GRAY + "this item.");
return false;
}
player.sendMessage(Soulbound.p.getlang("UNBINDED"));
//player.sendMessage(ChatColor.GRAY + "Item no longer Soulbound.");
return true;
default:
return false;

View File

@@ -1,40 +1,40 @@
#<23><>ʾ<EFBFBD><CABE>Ϣ
Message:
CAN_NOT_BIND: '&8<EFBFBD><EFBFBD><EFBFBD>&c<><63><EFBFBD><EFBFBD>&8<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ʒ'
CAN_NOT_UNBIND: '&8<EFBFBD><EFBFBD><EFBFBD>&6<><36><EFBFBD><EFBFBD>&8<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ʒ'
CAN_NOT_BIND: '&7<EFBFBD><EFBFBD><EFBFBD>&c<><63><EFBFBD><EFBFBD>&7<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ʒ'
CAN_NOT_UNBIND: '&7<EFBFBD><EFBFBD><EFBFBD>&6<><36><EFBFBD><EFBFBD>&7<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ʒ'
BINDED: '&8<EFBFBD><EFBFBD>Ʒ<EFBFBD>Ѿ<EFBFBD>&a<><61><EFBFBD><EFBFBD>&8<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>&c%target%'
UNBINDED: '&8<EFBFBD><EFBFBD>Ʒ<EFBFBD>Ѿ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'
BINDED: '&7<EFBFBD><EFBFBD>Ʒ<EFBFBD>Ѿ<EFBFBD>&a<><61><EFBFBD><EFBFBD>&7<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>&c%target%'
UNBINDED: '&7<EFBFBD><EFBFBD>Ʒ<EFBFBD>Ѿ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'
BIND_FULL_INEVNTORY: '&a<><61><EFBFBD><EFBFBD>&c%player%&a<><61><EFBFBD><EFBFBD><EFBFBD>ڵ<EFBFBD><DAB5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ʒ<EFBFBD>Ѱ󶨵<D1B0><F3B6A8B5><EFBFBD><EFBFBD><EFBFBD>&6%target%'
BIND_INVENTORY: '&4<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ҫ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>: &a/bind <player> inventory'
BIND_INVENTORY: '&c<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ҫ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>: &a/bind <player> inventory'
BIND_ON_EQUIP: '&8<EFBFBD><EFBFBD>ǰ<EFBFBD><EFBFBD>Ʒ<EFBFBD>ѱ<EFBFBD><EFBFBD><EFBFBD>Ϊ &4װ<34><D7B0><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'
BIND_ON_PICKUP: '&8<EFBFBD><EFBFBD>ǰ<EFBFBD><EFBFBD>Ʒ<EFBFBD>ѱ<EFBFBD><EFBFBD><EFBFBD>Ϊ &4ʰȡ<CAB0><C8A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'
BIND_ON_USE: '&8<EFBFBD><EFBFBD>ǰ<EFBFBD><EFBFBD>Ʒ<EFBFBD>ѱ<EFBFBD><EFBFBD><EFBFBD>Ϊ &4ʹ<34>ú<EFBFBD><C3BA><EFBFBD><EFBFBD><EFBFBD>'
BIND_ON_EQUIP: '&7<EFBFBD><EFBFBD>ǰ<EFBFBD><EFBFBD>Ʒ<EFBFBD>ѱ<EFBFBD><EFBFBD><EFBFBD>Ϊ &4װ<34><D7B0><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'
BIND_ON_PICKUP: '&7<EFBFBD><EFBFBD>ǰ<EFBFBD><EFBFBD>Ʒ<EFBFBD>ѱ<EFBFBD><EFBFBD><EFBFBD>Ϊ &4ʰȡ<CAB0><C8A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'
BIND_ON_USE: '&7<EFBFBD><EFBFBD>ǰ<EFBFBD><EFBFBD>Ʒ<EFBFBD>ѱ<EFBFBD><EFBFBD><EFBFBD>Ϊ &4ʹ<34>ú<EFBFBD><C3BA><EFBFBD><EFBFBD><EFBFBD>'
CAN_NOT_BIND_ON_EQUIP: '&8<EFBFBD><EFBFBD>ǰ<EFBFBD><EFBFBD>Ʒ<EFBFBD><EFBFBD><EFBFBD>ܱ<EFBFBD><EFBFBD><EFBFBD>Ϊ &4װ<34><D7B0><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'
CAN_NOT_BIND_ON_PICKUP: '&8<EFBFBD><EFBFBD>ǰ<EFBFBD><EFBFBD>Ʒ<EFBFBD><EFBFBD><EFBFBD>ܱ<EFBFBD><EFBFBD><EFBFBD>Ϊ &4ʰȡ<CAB0><C8A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'
CAN_NOT_BIND_ON_USE: '&8<EFBFBD><EFBFBD>ǰ<EFBFBD><EFBFBD>Ʒ<EFBFBD><EFBFBD><EFBFBD>ܱ<EFBFBD><EFBFBD><EFBFBD>Ϊ &4ʹ<34>ú<EFBFBD><C3BA><EFBFBD><EFBFBD><EFBFBD>'
CAN_NOT_BIND_ON_EQUIP: '&7<EFBFBD><EFBFBD>ǰ<EFBFBD><EFBFBD>Ʒ<EFBFBD><EFBFBD><EFBFBD>ܱ<EFBFBD><EFBFBD><EFBFBD>Ϊ &4װ<34><D7B0><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'
CAN_NOT_BIND_ON_PICKUP: '&7<EFBFBD><EFBFBD>ǰ<EFBFBD><EFBFBD>Ʒ<EFBFBD><EFBFBD><EFBFBD>ܱ<EFBFBD><EFBFBD><EFBFBD>Ϊ &4ʰȡ<CAB0><C8A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'
CAN_NOT_BIND_ON_USE: '&7<EFBFBD><EFBFBD>ǰ<EFBFBD><EFBFBD>Ʒ<EFBFBD><EFBFBD><EFBFBD>ܱ<EFBFBD><EFBFBD><EFBFBD>Ϊ &4ʹ<34>ú<EFBFBD><C3BA><EFBFBD><EFBFBD><EFBFBD>'
VERSION: '<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(<28>޸<EFBFBD>by<62><79><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>) <20><EFBFBD>ţ<EFBFBD>'
CAN_NOT_USE_ON_CONSOLE: '<27><>Ǹ <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EEB2BB><EFBFBD>ڿ<EFBFBD><DABF><EFBFBD>̨ʹ<CCA8><CAB9>'
PAGE_NOT_EXIST: '&c<><63><EFBFBD><EFBFBD>ҳ<EFBFBD><EFBFBD><E6B2BB><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> /Soulbound help [0-%maxPages%]'
HELP_TITLE: '&8--[ &<26><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> -<2D><><EFBFBD><EFBFBD>by<62><79><EFBFBD><EFBFBD> -<2D>޸<EFBFBD>by<62><79><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> &8 ]-- ҳ<><D2B3> %page%/%maxPages%'
HOW_DOES_IT_WORK: '&4* <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ι<EFBFBD><CEB9><EFBFBD><EFBFBD>ģ<EFBFBD>'
HOW_DOES_IT_WORK_1: '&4* <20><><EFBFBD><EFBFBD><EFBFBD>󶨵<EFBFBD><F3B6A8B5><EFBFBD>Ʒֻ<C6B7><D6BB><EFBFBD>Լ<EFBFBD><D4BC><EFBFBD><EFBFBD><EFBFBD>ʹ<EFBFBD>á<EFBFBD>'
HOW_DOES_IT_WORK_2: '&4* <20>󶨺<EFBFBD><F3B6A8BA><EFBFBD><EFBFBD><EFBFBD>Ʒ<EFBFBD><C6B7>ijЩ<C4B3><D0A9>Ϊ<EFBFBD><CEAA><EFBFBD><EFBFBD><E1B1BB>ֹ:'
HOW_DOES_IT_WORK_3: '&4* <20><><EFBFBD>ڵ<EFBFBD><DAB5>ϡ<EFBFBD><CFA1><EFBFBD><EFBFBD>߷ŵ<DFB7><C5B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>á<EFBFBD>'
HOW_DOES_IT_WORK_4: '&4* <20><><EFBFBD><EFBFBD>Ϊ ʰȡ<CAB0><C8A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>Ʒ<EFBFBD><EFBFBD>һ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ҽ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͻ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>󶨳<EFBFBD>Ϊ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ҵ<EFBFBD><EFBFBD><EFBFBD>Ʒ<EFBFBD><EFBFBD>'
HOW_DOES_IT_WORK_5: '&4* <20><><EFBFBD><EFBFBD>Ϊ ʹ<>ú<EFBFBD><C3BA><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>Ʒ<EFBFBD><EFBFBD>ֻҪ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ҽ<EFBFBD><EFBFBD>ͻ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>󶨳<EFBFBD>Ϊ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ҵ<EFBFBD><EFBFBD><EFBFBD>Ʒ<EFBFBD><EFBFBD>'
HOW_DOES_IT_WORK_6: '&4* <20><><EFBFBD><EFBFBD>Ϊ װ<><D7B0><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>Ʒ<EFBFBD><EFBFBD>װ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϻ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>󶨳<EFBFBD>Ϊ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ҵ<EFBFBD><EFBFBD><EFBFBD>Ʒ<EFBFBD><EFBFBD>'
HELP_TITLE: '&7--[ &6<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> &a-<2D><><EFBFBD><EFBFBD>by<62><79><EFBFBD><EFBFBD> &c-<2D>޸<EFBFBD>by<62><79><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> &7 ]-- ҳ<><D2B3> %page%/%maxPages%'
HOW_DOES_IT_WORK: '&c* <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ι<EFBFBD><CEB9><EFBFBD><EFBFBD>ģ<EFBFBD>'
HOW_DOES_IT_WORK_1: '&c* <20><><EFBFBD><EFBFBD><EFBFBD>󶨵<EFBFBD><F3B6A8B5><EFBFBD>Ʒֻ<C6B7><D6BB><EFBFBD>Լ<EFBFBD><D4BC><EFBFBD><EFBFBD><EFBFBD>ʹ<EFBFBD>á<EFBFBD>'
HOW_DOES_IT_WORK_2: '&c* <20>󶨺<EFBFBD><F3B6A8BA><EFBFBD><EFBFBD><EFBFBD>Ʒ<EFBFBD><C6B7>ijЩ<C4B3><D0A9>Ϊ<EFBFBD><CEAA><EFBFBD><EFBFBD><E1B1BB>ֹ:'
HOW_DOES_IT_WORK_3: '&c* <20><><EFBFBD>ڵ<EFBFBD><DAB5>ϡ<EFBFBD><CFA1><EFBFBD><EFBFBD>߷ŵ<DFB7><C5B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>á<EFBFBD>'
HOW_DOES_IT_WORK_4: '&c* <20><><EFBFBD><EFBFBD>Ϊ ʰȡ<CAB0><C8A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>Ʒ\nһ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ҽ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͻ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>󶨳<EFBFBD>Ϊ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ҵ<EFBFBD><EFBFBD><EFBFBD>Ʒ<EFBFBD><EFBFBD>'
HOW_DOES_IT_WORK_5: '&c* <20><><EFBFBD><EFBFBD>Ϊ ʹ<>ú<EFBFBD><C3BA><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>Ʒ\nֻҪ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ҽ<EFBFBD><EFBFBD>ͻ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>󶨳<EFBFBD>Ϊ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ҵ<EFBFBD><EFBFBD><EFBFBD>Ʒ<EFBFBD><EFBFBD>'
HOW_DOES_IT_WORK_6: '&c* <20><><EFBFBD><EFBFBD>Ϊ װ<><D7B0><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>Ʒ\nװ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϻ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>󶨳<EFBFBD>Ϊ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ҵ<EFBFBD><EFBFBD><EFBFBD>Ʒ<EFBFBD><EFBFBD>'
CMD: '&6ָ<36><D6B8>:'
CMDVERSION: '&4* &a/soulbound &8<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'
CMD_BIND: '&4* &a/bind <sender> &8<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϵ<EFBFBD><EFBFBD><EFBFBD>Ʒ<EFBFBD><EFBFBD>'
CMD_BIND_FULL_INVENTORY: '&4* &a/bind <sender> inventory &8<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ұ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ʒ<EFBFBD><EFBFBD>'
CMD_BIND_ON_EQUIP: '&4* &a/bindonequip &8<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǰ<EFBFBD><EFBFBD>Ʒ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ &4װ<34><D7B0><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'
CMD_BIND_ON_PICKUP: '&4* &a/bindonpickup &8<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǰ<EFBFBD><EFBFBD>Ʒ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ &4ʰȡ<CAB0><C8A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'
CMD_BIND_ON_USE: '&4* &a/bindonuse &8<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǰ<EFBFBD><EFBFBD>Ʒ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ &4ʹ<34>ú<EFBFBD><C3BA><EFBFBD><EFBFBD><EFBFBD>'
CMD_UNBIND: '&4* &a/unbind &8<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ʒ<EFBFBD>İ󶨡<EFBFBD>'
CMDVERSION: '&4* &a/soulbound &7<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'
CMD_BIND: '&4* &a/bind <sender> &7<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϵ<EFBFBD><EFBFBD><EFBFBD>Ʒ<EFBFBD><EFBFBD>'
CMD_BIND_FULL_INVENTORY: '&4* &a/bind <sender> inventory &7<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ұ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ʒ<EFBFBD><EFBFBD>'
CMD_BIND_ON_EQUIP: '&4* &a/bindonequip &7<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǰ<EFBFBD><EFBFBD>Ʒ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ &4װ<34><D7B0><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'
CMD_BIND_ON_PICKUP: '&4* &a/bindonpickup &7<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǰ<EFBFBD><EFBFBD>Ʒ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ &4ʰȡ<CAB0><C8A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'
CMD_BIND_ON_USE: '&4* &a/bindonuse &7<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǰ<EFBFBD><EFBFBD>Ʒ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ &4ʹ<34>ú<EFBFBD><C3BA><EFBFBD><EFBFBD><EFBFBD>'
CMD_UNBIND: '&4* &a/unbind &7<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ʒ<EFBFBD>İ󶨡<EFBFBD>'
CMD_NEXT: '&6ʹ<36><CAB9> /soulbound help %nextPage% <20><EFBFBD><E9BFB4><EFBFBD><EFBFBD>'
CMD_USE: 'ʹ<><CAB9>: /soulbound [reload | help]'