diff --git a/allclasses-frame.html b/allclasses-frame.html new file mode 100644 index 0000000..fcb4ed4 --- /dev/null +++ b/allclasses-frame.html @@ -0,0 +1,26 @@ + + + + + + +All Classes (Vault) + + + + +

All Classes

+
+ +
+ + diff --git a/allclasses-noframe.html b/allclasses-noframe.html new file mode 100644 index 0000000..165c14d --- /dev/null +++ b/allclasses-noframe.html @@ -0,0 +1,26 @@ + + + + + + +All Classes (Vault) + + + + +

All Classes

+
+ +
+ + diff --git a/constant-values.html b/constant-values.html new file mode 100644 index 0000000..1c124af --- /dev/null +++ b/constant-values.html @@ -0,0 +1,117 @@ + + + + + + +Constant Field Values (Vault) + + + + + + + +
+ + + + + +
+ + +
+

Constant Field Values

+

Contents

+
+ +
+ + + + + +
+ + +

Milkbowl, 2014

+ + diff --git a/deprecated-list.html b/deprecated-list.html new file mode 100644 index 0000000..30bbaec --- /dev/null +++ b/deprecated-list.html @@ -0,0 +1,527 @@ + + + + + + +Deprecated List (Vault) + + + + + + + +
+ + + + + +
+ + +
+

Deprecated API

+

Contents

+ +
+
+ + + +
+ +
+ + + + + +
+ + +

Milkbowl, 2014

+ + diff --git a/help-doc.html b/help-doc.html new file mode 100644 index 0000000..d4570b4 --- /dev/null +++ b/help-doc.html @@ -0,0 +1,218 @@ + + + + + + +API Help (Vault) + + + + + + + +
+ + + + + +
+ + +
+

How This API Document Is Organized

+

This API (Application Programming Interface) document has pages corresponding to the items in the navigation bar, described as follows.

+
+
+ +This help file applies to API documentation generated using the standard doclet.
+ +
+ + + + + +
+ + +

Milkbowl, 2014

+ + diff --git a/index-all.html b/index-all.html new file mode 100644 index 0000000..a682367 --- /dev/null +++ b/index-all.html @@ -0,0 +1,1358 @@ + + + + + + +Index (Vault) + + + + + + + +
+ + + + + +
+ + +
A B C D E F G H I J M N P S T V W  + + +

A

+
+
AbstractEconomy - Class in net.milkbowl.vault.economy
+
 
+
AbstractEconomy() - Constructor for class net.milkbowl.vault.economy.AbstractEconomy
+
 
+
amount - Variable in class net.milkbowl.vault.economy.EconomyResponse
+
+
Amount modified by calling method
+
+
+ + + +

B

+
+
balance - Variable in class net.milkbowl.vault.economy.EconomyResponse
+
+
New balance of account
+
+
bankBalance(String) - Method in interface net.milkbowl.vault.economy.Economy
+
+
Returns the amount the bank has
+
+
bankDeposit(String, double) - Method in interface net.milkbowl.vault.economy.Economy
+
+
Deposit an amount into a bank account - DO NOT USE NEGATIVE AMOUNTS
+
+
bankHas(String, double) - Method in interface net.milkbowl.vault.economy.Economy
+
+
Returns true or false whether the bank has the amount specified - DO NOT USE NEGATIVE AMOUNTS
+
+
bankWithdraw(String, double) - Method in interface net.milkbowl.vault.economy.Economy
+
+
Withdraw an amount from a bank account - DO NOT USE NEGATIVE AMOUNTS
+
+
+ + + +

C

+
+
Chat - Class in net.milkbowl.vault.chat
+
+
The main Chat API - allows for Prefix/Suffix nodes along with generic Info nodes if the linked Chat system supports them
+
+
Chat(Permission) - Constructor for class net.milkbowl.vault.chat.Chat
+
 
+
createBank(String, OfflinePlayer) - Method in class net.milkbowl.vault.economy.AbstractEconomy
+
 
+
createBank(String, String) - Method in interface net.milkbowl.vault.economy.Economy
+
+
Deprecated. +
As of VaultAPI 1.4 use {Economy.createBank(String, OfflinePlayer) instead.
+
+
+
createBank(String, OfflinePlayer) - Method in interface net.milkbowl.vault.economy.Economy
+
+
Creates a bank account with the specified name and the player as the owner
+
+
createPlayerAccount(OfflinePlayer) - Method in class net.milkbowl.vault.economy.AbstractEconomy
+
 
+
createPlayerAccount(OfflinePlayer, String) - Method in class net.milkbowl.vault.economy.AbstractEconomy
+
 
+
createPlayerAccount(String) - Method in interface net.milkbowl.vault.economy.Economy
+
+
Deprecated. +
As of VaultAPI 1.4 use {Economy.createPlayerAccount(OfflinePlayer) instead.
+
+
+
createPlayerAccount(OfflinePlayer) - Method in interface net.milkbowl.vault.economy.Economy
+
+
Attempts to create a player account for the given player
+
+
createPlayerAccount(String, String) - Method in interface net.milkbowl.vault.economy.Economy
+
+
Deprecated. + +
+
+
createPlayerAccount(OfflinePlayer, String) - Method in interface net.milkbowl.vault.economy.Economy
+
+
Attempts to create a player account for the given player on the specified world + IMPLEMENTATION SPECIFIC - if an economy plugin does not support this the global balance will be returned.
+
+
currencyNamePlural() - Method in interface net.milkbowl.vault.economy.Economy
+
+
Returns the name of the currency in plural form.
+
+
currencyNameSingular() - Method in interface net.milkbowl.vault.economy.Economy
+
+
Returns the name of the currency in singular form.
+
+
+ + + +

D

+
+
deleteBank(String) - Method in interface net.milkbowl.vault.economy.Economy
+
+
Deletes a bank account with the specified name.
+
+
depositPlayer(OfflinePlayer, double) - Method in class net.milkbowl.vault.economy.AbstractEconomy
+
 
+
depositPlayer(OfflinePlayer, String, double) - Method in class net.milkbowl.vault.economy.AbstractEconomy
+
 
+
depositPlayer(String, double) - Method in interface net.milkbowl.vault.economy.Economy
+
+
Deprecated. +
As of VaultAPI 1.4 use Economy.depositPlayer(OfflinePlayer, double) instead.
+
+
+
depositPlayer(OfflinePlayer, double) - Method in interface net.milkbowl.vault.economy.Economy
+
+
Deposit an amount to a player - DO NOT USE NEGATIVE AMOUNTS
+
+
depositPlayer(String, String, double) - Method in interface net.milkbowl.vault.economy.Economy
+
+
Deprecated. + +
+
+
depositPlayer(OfflinePlayer, String, double) - Method in interface net.milkbowl.vault.economy.Economy
+
+
Deposit an amount to a player - DO NOT USE NEGATIVE AMOUNTS + IMPLEMENTATION SPECIFIC - if an economy plugin does not support this the global balance will be returned.
+
+
+ + + +

E

+
+
Economy - Interface in net.milkbowl.vault.economy
+
+
The main economy API
+
+
EconomyResponse - Class in net.milkbowl.vault.economy
+
+
Indicates a typical Return for an Economy method.
+
+
EconomyResponse(double, double, EconomyResponse.ResponseType, String) - Constructor for class net.milkbowl.vault.economy.EconomyResponse
+
+
Constructor for EconomyResponse
+
+
EconomyResponse.ResponseType - Enum in net.milkbowl.vault.economy
+
+
Enum for types of Responses indicating the status of a method call.
+
+
equals(Object) - Method in class net.milkbowl.vault.item.ItemInfo
+
 
+
errorMessage - Variable in class net.milkbowl.vault.economy.EconomyResponse
+
+
Error message if the variable 'type' is ResponseType.FAILURE
+
+
+ + + +

F

+
+
format(double) - Method in interface net.milkbowl.vault.economy.Economy
+
+
Format amount into a human readable String This provides translation into + economy specific formatting to improve consistency between plugins.
+
+
fractionalDigits() - Method in interface net.milkbowl.vault.economy.Economy
+
+
Some economy plugins round off after a certain number of digits.
+
+
+ + + +

G

+
+
getBalance(OfflinePlayer) - Method in class net.milkbowl.vault.economy.AbstractEconomy
+
 
+
getBalance(OfflinePlayer, String) - Method in class net.milkbowl.vault.economy.AbstractEconomy
+
 
+
getBalance(String) - Method in interface net.milkbowl.vault.economy.Economy
+
+
Deprecated. +
As of VaultAPI 1.4 use Economy.getBalance(OfflinePlayer) instead.
+
+
+
getBalance(OfflinePlayer) - Method in interface net.milkbowl.vault.economy.Economy
+
+
Gets balance of a player
+
+
getBalance(String, String) - Method in interface net.milkbowl.vault.economy.Economy
+
+
Deprecated. +
As of VaultAPI 1.4 use Economy.getBalance(OfflinePlayer, String) instead.
+
+
+
getBalance(OfflinePlayer, String) - Method in interface net.milkbowl.vault.economy.Economy
+
+
Gets balance of a player on the specified world.
+
+
getBanks() - Method in interface net.milkbowl.vault.economy.Economy
+
+
Gets the list of banks
+
+
getGroupInfoBoolean(String, String, String, boolean) - Method in class net.milkbowl.vault.chat.Chat
+
+
Get a groups informational node (Boolean) value
+
+
getGroupInfoBoolean(World, String, String, boolean) - Method in class net.milkbowl.vault.chat.Chat
+
+
Set a players informational node (Boolean) value
+
+
getGroupInfoDouble(String, String, String, double) - Method in class net.milkbowl.vault.chat.Chat
+
+
Get a groups informational node (Double) value
+
+
getGroupInfoDouble(World, String, String, double) - Method in class net.milkbowl.vault.chat.Chat
+
+
Get a groups informational node (Double) value
+
+
getGroupInfoInteger(String, String, String, int) - Method in class net.milkbowl.vault.chat.Chat
+
+
Get a groups informational node (Integer) value
+
+
getGroupInfoInteger(World, String, String, int) - Method in class net.milkbowl.vault.chat.Chat
+
+
Get a groups informational node (Integer) value
+
+
getGroupInfoString(String, String, String, String) - Method in class net.milkbowl.vault.chat.Chat
+
+
Get a groups informational node (String) value
+
+
getGroupInfoString(World, String, String, String) - Method in class net.milkbowl.vault.chat.Chat
+
+
Set a players informational node (String) value
+
+
getGroupPrefix(String, String) - Method in class net.milkbowl.vault.chat.Chat
+
+
Get group prefix
+
+
getGroupPrefix(World, String) - Method in class net.milkbowl.vault.chat.Chat
+
+
Get group prefix
+
+
getGroups() - Method in class net.milkbowl.vault.chat.Chat
+
+
Returns a list of all known groups
+
+
getGroups() - Method in class net.milkbowl.vault.permission.Permission
+
+
Returns a list of all known groups
+
+
getGroupSuffix(String, String) - Method in class net.milkbowl.vault.chat.Chat
+
+
Get group suffix
+
+
getGroupSuffix(World, String) - Method in class net.milkbowl.vault.chat.Chat
+
+
Get group suffix
+
+
getId() - Method in class net.milkbowl.vault.item.ItemInfo
+
+
Deprecated.
+
+
getItemList() - Static method in class net.milkbowl.vault.item.Items
+
+
Returns the list of ItemInfo's registered in Vault as an UnmodifiableList.
+
+
getName() - Method in class net.milkbowl.vault.chat.Chat
+
+
Gets name of permission method
+
+
getName() - Method in interface net.milkbowl.vault.economy.Economy
+
+
Gets name of economy method
+
+
getName() - Method in class net.milkbowl.vault.item.ItemInfo
+
 
+
getName() - Method in class net.milkbowl.vault.permission.Permission
+
+
Gets name of permission method
+
+
getPlayerGroups(String, OfflinePlayer) - Method in class net.milkbowl.vault.chat.Chat
+
+
Gets the list of groups that this player has
+
+
getPlayerGroups(String, String) - Method in class net.milkbowl.vault.chat.Chat
+
+
Deprecated. +
As of VaultAPI 1.4 use {Chat.getPlayerGroups(String, OfflinePlayer) instead. + Gets the list of groups that this player has
+
+
+
getPlayerGroups(World, String) - Method in class net.milkbowl.vault.chat.Chat
+
+
Deprecated. +
As of VaultAPI 1.4 use {Chat.getPlayerGroups(String, OfflinePlayer) instead. + Gets the list of groups that this player has
+
+
+
getPlayerGroups(Player) - Method in class net.milkbowl.vault.chat.Chat
+
+
Gets the list of groups that this player has
+
+
getPlayerGroups(String, String) - Method in class net.milkbowl.vault.permission.Permission
+
+
Deprecated. +
As of VaultAPI 1.4 use getPlayerGroups(String, OfflinePlayer) instead.
+
+
+
getPlayerGroups(World, String) - Method in class net.milkbowl.vault.permission.Permission
+
+
Deprecated. +
As of VaultAPI 1.4 use getPlayerGroups(String, OfflinePlayer) instead.
+
+
+
getPlayerGroups(String, OfflinePlayer) - Method in class net.milkbowl.vault.permission.Permission
+
+
Gets the list of groups that this player has + Supports NULL value for World if the permission system registered supports global permissions.
+
+
getPlayerGroups(Player) - Method in class net.milkbowl.vault.permission.Permission
+
+
Returns a list of world-specific groups that this player is currently in.
+
+
getPlayerInfoBoolean(String, OfflinePlayer, String, boolean) - Method in class net.milkbowl.vault.chat.Chat
+
+
Get a players informational node (Boolean) value
+
+
getPlayerInfoBoolean(String, String, String, boolean) - Method in class net.milkbowl.vault.chat.Chat
+
+
Deprecated. +
As of VaultAPI 1.4 use {Chat.getPlayerInfoBoolean(String, OfflinePlayer, String, boolean) instead. + + Get a players informational node (Boolean) value
+
+
+
getPlayerInfoBoolean(World, String, String, boolean) - Method in class net.milkbowl.vault.chat.Chat
+
+
Deprecated. +
As of VaultAPI 1.4 use {Chat.getPlayerInfoBoolean(String, OfflinePlayer, String, boolean) instead. + + Get a players informational node (Boolean) value
+
+
+
getPlayerInfoBoolean(Player, String, boolean) - Method in class net.milkbowl.vault.chat.Chat
+
+
Get a players informational node (Boolean) value
+
+
getPlayerInfoDouble(String, OfflinePlayer, String, double) - Method in class net.milkbowl.vault.chat.Chat
+
+
Get a players informational node (Double) value
+
+
getPlayerInfoDouble(String, String, String, double) - Method in class net.milkbowl.vault.chat.Chat
+
+
Deprecated. +
As of VaultAPI 1.4 use {Chat.getPlayerInfoDouble(String, OfflinePlayer, String, double) instead. + + Get a players informational node (Double) value
+
+
+
getPlayerInfoDouble(World, String, String, double) - Method in class net.milkbowl.vault.chat.Chat
+
+
Deprecated. +
As of VaultAPI 1.4 use {Chat.getPlayerInfoDouble(String, OfflinePlayer, String, double) instead + + Get a players informational node (Double) value
+
+
+
getPlayerInfoDouble(Player, String, double) - Method in class net.milkbowl.vault.chat.Chat
+
+
Get a players informational node (Double) value
+
+
getPlayerInfoInteger(String, OfflinePlayer, String, int) - Method in class net.milkbowl.vault.chat.Chat
+
+
Get a players informational node (Integer) value
+
+
getPlayerInfoInteger(String, String, String, int) - Method in class net.milkbowl.vault.chat.Chat
+
+
Deprecated. +
As of VaultAPI 1.4 use {Chat.getPlayerInfoInteger(String, OfflinePlayer, String, int) instead. + Get a players informational node (Integer) value
+
+
+
getPlayerInfoInteger(World, String, String, int) - Method in class net.milkbowl.vault.chat.Chat
+
+
Deprecated. +
As of VaultAPI 1.4 use {Chat.getPlayerInfoInteger(String, OfflinePlayer, String, int) instead. + + Get a players informational node (Integer) value
+
+
+
getPlayerInfoInteger(Player, String, int) - Method in class net.milkbowl.vault.chat.Chat
+
+
Get a players informational node (Integer) value
+
+
getPlayerInfoString(String, OfflinePlayer, String, String) - Method in class net.milkbowl.vault.chat.Chat
+
+
Get a players informational node (String) value
+
+
getPlayerInfoString(String, String, String, String) - Method in class net.milkbowl.vault.chat.Chat
+
+
Deprecated. +
As of VaultAPI 1.4 use {Chat.getPlayerInfoString(String, OfflinePlayer, String, String) instead. + + Get a players informational node (String) value
+
+
+
getPlayerInfoString(World, String, String, String) - Method in class net.milkbowl.vault.chat.Chat
+
+
Deprecated. +
As of VaultAPI 1.4 use {Chat.getPlayerInfoString(String, OfflinePlayer, String, String) instead. + Get a players informational node (String) value
+
+
+
getPlayerInfoString(Player, String, String) - Method in class net.milkbowl.vault.chat.Chat
+
+
Get a players informational node (String) value
+
+
getPlayerPrefix(String, String) - Method in class net.milkbowl.vault.chat.Chat
+
+
Deprecated. +
As of VaultAPI 1.4 use {Chat.getPlayerPrefix(String, OfflinePlayer) instead. + + Get players prefix
+
+
+
getPlayerPrefix(String, OfflinePlayer) - Method in class net.milkbowl.vault.chat.Chat
+
+
Get a players prefix in the given world + Use NULL for world if requesting a global prefix
+
+
getPlayerPrefix(World, String) - Method in class net.milkbowl.vault.chat.Chat
+
+
Deprecated. +
As of VaultAPI 1.4 use {Chat.getPlayerPrefix(String, OfflinePlayer) instead. + + Get players prefix
+
+
+
getPlayerPrefix(Player) - Method in class net.milkbowl.vault.chat.Chat
+
+
Get players prefix from the world they are currently in.
+
+
getPlayerSuffix(String, String) - Method in class net.milkbowl.vault.chat.Chat
+
+
Deprecated. +
As of VaultAPI 1.4 use {Chat.getPlayerSuffix(String, OfflinePlayer) instead. + + Get players suffix
+
+
+
getPlayerSuffix(String, OfflinePlayer) - Method in class net.milkbowl.vault.chat.Chat
+
+
Get players suffix in the specified world.
+
+
getPlayerSuffix(World, String) - Method in class net.milkbowl.vault.chat.Chat
+
+
Deprecated. +
As of VaultAPI 1.4 use {Chat.getPlayerSuffix(String, OfflinePlayer) instead. + + Get players suffix
+
+
+
getPlayerSuffix(Player) - Method in class net.milkbowl.vault.chat.Chat
+
+
Get players suffix in the world they are currently in.
+
+
getPrimaryGroup(String, OfflinePlayer) - Method in class net.milkbowl.vault.chat.Chat
+
+
Gets players primary group
+
+
getPrimaryGroup(String, String) - Method in class net.milkbowl.vault.chat.Chat
+
+
Deprecated. +
As of VaultAPI 1.4 use {Chat.getPrimaryGroup(String, OfflinePlayer) instead. + Gets players primary group
+
+
+
getPrimaryGroup(World, String) - Method in class net.milkbowl.vault.chat.Chat
+
+
Deprecated. +
As of VaultAPI 1.4 use {Chat.getPrimaryGroup(String, OfflinePlayer) instead. + Gets players primary group
+
+
+
getPrimaryGroup(Player) - Method in class net.milkbowl.vault.chat.Chat
+
+
Get players primary group
+
+
getPrimaryGroup(String, String) - Method in class net.milkbowl.vault.permission.Permission
+
+
Deprecated. +
As of VaultAPI 1.4 use getPrimaryGroup(String, OfflinePlayer) instead.
+
+
+
getPrimaryGroup(World, String) - Method in class net.milkbowl.vault.permission.Permission
+
+
Deprecated. +
As of VaultAPI 1.4 use getPrimaryGroup(String, OfflinePlayer) instead.
+
+
+
getPrimaryGroup(String, OfflinePlayer) - Method in class net.milkbowl.vault.permission.Permission
+
+
Gets players primary group + Supports NULL value for World if the permission system registered supports global permissions.
+
+
getPrimaryGroup(Player) - Method in class net.milkbowl.vault.permission.Permission
+
+
Get players primary group.
+
+
getStackSize() - Method in class net.milkbowl.vault.item.ItemInfo
+
 
+
getSubTypeId() - Method in class net.milkbowl.vault.item.ItemInfo
+
 
+
getType() - Method in class net.milkbowl.vault.item.ItemInfo
+
 
+
groupAdd(String, String, String) - Method in class net.milkbowl.vault.permission.Permission
+
+
Add permission to a group.
+
+
groupAdd(World, String, String) - Method in class net.milkbowl.vault.permission.Permission
+
+
Add permission to a group.
+
+
groupHas(String, String, String) - Method in class net.milkbowl.vault.permission.Permission
+
+
Checks if group has a permission node.
+
+
groupHas(World, String, String) - Method in class net.milkbowl.vault.permission.Permission
+
+
Checks if group has a permission node.
+
+
groupRemove(String, String, String) - Method in class net.milkbowl.vault.permission.Permission
+
+
Remove permission from a group.
+
+
groupRemove(World, String, String) - Method in class net.milkbowl.vault.permission.Permission
+
+
Remove permission from a group.
+
+
+ + + +

H

+
+
has(OfflinePlayer, double) - Method in class net.milkbowl.vault.economy.AbstractEconomy
+
 
+
has(OfflinePlayer, String, double) - Method in class net.milkbowl.vault.economy.AbstractEconomy
+
 
+
has(String, double) - Method in interface net.milkbowl.vault.economy.Economy
+
+
Deprecated. +
As of VaultAPI 1.4 use Economy.has(OfflinePlayer, double) instead.
+
+
+
has(OfflinePlayer, double) - Method in interface net.milkbowl.vault.economy.Economy
+
+
Checks if the player account has the amount - DO NOT USE NEGATIVE AMOUNTS
+
+
has(String, String, double) - Method in interface net.milkbowl.vault.economy.Economy
+
+
Deprecated. +
As of VaultAPI 1.4 use @{link Economy.has(OfflinePlayer, String, double) instead.
+
+
+
has(OfflinePlayer, String, double) - Method in interface net.milkbowl.vault.economy.Economy
+
+
Checks if the player account has the amount in a given world - DO NOT USE NEGATIVE AMOUNTS + IMPLEMENTATION SPECIFIC - if an economy plugin does not support this the global balance will be returned.
+
+
has(String, String, String) - Method in class net.milkbowl.vault.permission.Permission
+
+
Deprecated. +
As of VaultAPI 1.4 use playerHas(String, OfflinePlayer, String) instead.
+
+
+
has(World, String, String) - Method in class net.milkbowl.vault.permission.Permission
+
+
Deprecated. +
As of VaultAPI 1.4 use playerHas(String, OfflinePlayer, String) instead.
+
+
+
has(CommandSender, String) - Method in class net.milkbowl.vault.permission.Permission
+
+
Checks if a CommandSender has a permission node.
+
+
has(Player, String) - Method in class net.milkbowl.vault.permission.Permission
+
+
Checks if player has a permission node.
+
+
hasAccount(OfflinePlayer) - Method in class net.milkbowl.vault.economy.AbstractEconomy
+
 
+
hasAccount(OfflinePlayer, String) - Method in class net.milkbowl.vault.economy.AbstractEconomy
+
 
+
hasAccount(String) - Method in interface net.milkbowl.vault.economy.Economy
+
+
Deprecated. +
As of VaultAPI 1.4 use Economy.hasAccount(OfflinePlayer) instead.
+
+
+
hasAccount(OfflinePlayer) - Method in interface net.milkbowl.vault.economy.Economy
+
+
Checks if this player has an account on the server yet + This will always return true if the player has joined the server at least once + as all major economy plugins auto-generate a player account when the player joins the server
+
+
hasAccount(String, String) - Method in interface net.milkbowl.vault.economy.Economy
+
+
Deprecated. +
As of VaultAPI 1.4 use Economy.hasAccount(OfflinePlayer, String) instead.
+
+
+
hasAccount(OfflinePlayer, String) - Method in interface net.milkbowl.vault.economy.Economy
+
+
Checks if this player has an account on the server yet on the given world + This will always return true if the player has joined the server at least once + as all major economy plugins auto-generate a player account when the player joins the server
+
+
hasBankSupport() - Method in interface net.milkbowl.vault.economy.Economy
+
+
Returns true if the given implementation supports banks.
+
+
hasGroupSupport() - Method in class net.milkbowl.vault.permission.Permission
+
+
Returns true if the given implementation supports groups.
+
+
hashCode() - Method in class net.milkbowl.vault.item.ItemInfo
+
 
+
hasSuperPermsCompat() - Method in class net.milkbowl.vault.permission.Permission
+
+
Returns if the permission system is or attempts to be compatible with super-perms.
+
+
+ + + +

I

+
+
isBankMember(String, OfflinePlayer) - Method in class net.milkbowl.vault.economy.AbstractEconomy
+
 
+
isBankMember(String, String) - Method in interface net.milkbowl.vault.economy.Economy
+
+
Deprecated. +
As of VaultAPI 1.4 use {Economy.isBankMember(String, OfflinePlayer) instead.
+
+
+
isBankMember(String, OfflinePlayer) - Method in interface net.milkbowl.vault.economy.Economy
+
+
Check if the player is a member of the bank account
+
+
isBankOwner(String, OfflinePlayer) - Method in class net.milkbowl.vault.economy.AbstractEconomy
+
 
+
isBankOwner(String, String) - Method in interface net.milkbowl.vault.economy.Economy
+
+
Deprecated. +
As of VaultAPI 1.4 use {Economy.isBankOwner(String, OfflinePlayer) instead.
+
+
+
isBankOwner(String, OfflinePlayer) - Method in interface net.milkbowl.vault.economy.Economy
+
+
Check if a player is the owner of a bank account
+
+
isBlock() - Method in class net.milkbowl.vault.item.ItemInfo
+
 
+
isDurable() - Method in class net.milkbowl.vault.item.ItemInfo
+
 
+
isEdible() - Method in class net.milkbowl.vault.item.ItemInfo
+
 
+
isEnabled() - Method in class net.milkbowl.vault.chat.Chat
+
+
Checks if permission method is enabled.
+
+
isEnabled() - Method in interface net.milkbowl.vault.economy.Economy
+
+
Checks if economy method is enabled.
+
+
isEnabled() - Method in class net.milkbowl.vault.permission.Permission
+
+
Checks if permission method is enabled.
+
+
itemById(int) - Static method in class net.milkbowl.vault.item.Items
+
+
Deprecated.
+
+
itemById(int, short) - Static method in class net.milkbowl.vault.item.Items
+
+
Deprecated.
+
+
itemByItem(ItemInfo) - Static method in class net.milkbowl.vault.item.Items
+
 
+
itemByName(ArrayList<String>) - Static method in class net.milkbowl.vault.item.Items
+
 
+
itemByName(String) - Static method in class net.milkbowl.vault.item.Items
+
+
Single item search function, for when we only ever want to return 1 result
+
+
itemByNames(ArrayList<String>, boolean) - Static method in class net.milkbowl.vault.item.Items
+
 
+
itemByStack(ItemStack) - Static method in class net.milkbowl.vault.item.Items
+
+
Searchs for an ItemInfo from the given ItemStack
+
+
itemByString(String) - Static method in class net.milkbowl.vault.item.Items
+
+
Search for an item from a given string, useful for user input.
+
+
itemByType(Material) - Static method in class net.milkbowl.vault.item.Items
+
+
Gets a relevant ItemInfo by it's Material
+
+
itemByType(Material, short) - Static method in class net.milkbowl.vault.item.Items
+
+
Searches for an ItemInfo record by Material and SubTypeID
+
+
ItemInfo - Class in net.milkbowl.vault.item
+
 
+
ItemInfo(String, String[][], Material) - Constructor for class net.milkbowl.vault.item.ItemInfo
+
 
+
ItemInfo(String, String[][], Material, short) - Constructor for class net.milkbowl.vault.item.ItemInfo
+
 
+
Items - Class in net.milkbowl.vault.item
+
 
+
Items() - Constructor for class net.milkbowl.vault.item.Items
+
 
+
itemsByName(String, boolean) - Static method in class net.milkbowl.vault.item.Items
+
+
Multi-Item return search for dumping all items with the search string to the player
+
+
+ + + +

J

+
+
join(String[], String) - Static method in class net.milkbowl.vault.item.Items
+
+
Joins elements of a String array with the glue between them into a String.
+
+
join(List<String>, String) - Static method in class net.milkbowl.vault.item.Items
+
+
Joins elements of a String array with the glue between them into a String.
+
+
+ + + +

M

+
+
material - Variable in class net.milkbowl.vault.item.ItemInfo
+
 
+
+ + + +

N

+
+
name - Variable in class net.milkbowl.vault.item.ItemInfo
+
 
+
net.milkbowl.vault.chat - package net.milkbowl.vault.chat
+
 
+
net.milkbowl.vault.economy - package net.milkbowl.vault.economy
+
 
+
net.milkbowl.vault.item - package net.milkbowl.vault.item
+
 
+
net.milkbowl.vault.permission - package net.milkbowl.vault.permission
+
 
+
+ + + +

P

+
+
Permission - Class in net.milkbowl.vault.permission
+
+
The main Permission API - allows for group and player based permission tests
+
+
Permission() - Constructor for class net.milkbowl.vault.permission.Permission
+
 
+
playerAdd(String, String, String) - Method in class net.milkbowl.vault.permission.Permission
+
+
Deprecated. +
As of VaultAPI 1.4 use playerAdd(String, OfflinePlayer, String) instead. + Add permission to a player. + Supports NULL value for World if the permission system registered supports global permissions. + But May return odd values if the servers registered permission system does not have a global permission store.
+
+
+
playerAdd(World, String, String) - Method in class net.milkbowl.vault.permission.Permission
+
+
Deprecated. +
As of VaultAPI 1.4 use playerAdd(String, OfflinePlayer, String) instead.
+
+
+
playerAdd(String, OfflinePlayer, String) - Method in class net.milkbowl.vault.permission.Permission
+
+
Add permission to a player.
+
+
playerAdd(Player, String) - Method in class net.milkbowl.vault.permission.Permission
+
+
Add permission to a player ONLY for the world the player is currently on.
+
+
playerAddGroup(String, String, String) - Method in class net.milkbowl.vault.permission.Permission
+
+
Deprecated. +
As of VaultAPI 1.4 use playerAddGroup(String, OfflinePlayer, String) instead.
+
+
+
playerAddGroup(World, String, String) - Method in class net.milkbowl.vault.permission.Permission
+
+
Deprecated. +
As of VaultAPI 1.4 use playerAddGroup(String, OfflinePlayer, String) instead.
+
+
+
playerAddGroup(String, OfflinePlayer, String) - Method in class net.milkbowl.vault.permission.Permission
+
+
Add player to a group.
+
+
playerAddGroup(Player, String) - Method in class net.milkbowl.vault.permission.Permission
+
+
Add player to a group.
+
+
playerAddTransient(String, String) - Method in class net.milkbowl.vault.permission.Permission
+
+
Deprecated. +
As of VaultAPI 1.4 use playerAddTransient(OfflinePlayer, String) instead.
+
+
+
playerAddTransient(OfflinePlayer, String) - Method in class net.milkbowl.vault.permission.Permission
+
+
Add transient permission to a player.
+
+
playerAddTransient(Player, String) - Method in class net.milkbowl.vault.permission.Permission
+
+
Add transient permission to a player.
+
+
playerAddTransient(String, OfflinePlayer, String) - Method in class net.milkbowl.vault.permission.Permission
+
+
Adds a world specific transient permission to the player, may only work with some permission managers.
+
+
playerAddTransient(String, Player, String) - Method in class net.milkbowl.vault.permission.Permission
+
+
Adds a world specific transient permission to the player, may only work with some permission managers.
+
+
playerAddTransient(String, String, String) - Method in class net.milkbowl.vault.permission.Permission
+
+
Deprecated. + +
+
+
playerHas(String, String, String) - Method in class net.milkbowl.vault.permission.Permission
+
+
Deprecated. +
As of VaultAPI 1.4 use playerHas(String, OfflinePlayer, String) instead.
+
+
+
playerHas(World, String, String) - Method in class net.milkbowl.vault.permission.Permission
+
+
Deprecated. +
As of VaultAPI 1.4 use playerHas(String, OfflinePlayer, String) instead.
+
+
+
playerHas(String, OfflinePlayer, String) - Method in class net.milkbowl.vault.permission.Permission
+
+
Checks if player has a permission node.
+
+
playerHas(Player, String) - Method in class net.milkbowl.vault.permission.Permission
+
+
Checks if player has a permission node.
+
+
playerInGroup(String, OfflinePlayer, String) - Method in class net.milkbowl.vault.chat.Chat
+
+
Check if player is member of a group.
+
+
playerInGroup(String, String, String) - Method in class net.milkbowl.vault.chat.Chat
+
+
Deprecated. +
As of VaultAPI 1.4 use {Chat.playerInGroup(String, OfflinePlayer, String) instead. + Check if player is member of a group.
+
+
+
playerInGroup(World, String, String) - Method in class net.milkbowl.vault.chat.Chat
+
+
Deprecated. +
As of VaultAPI 1.4 use {Chat.playerInGroup(String, OfflinePlayer, String) instead. + Check if player is member of a group.
+
+
+
playerInGroup(Player, String) - Method in class net.milkbowl.vault.chat.Chat
+
+
Check if player is member of a group.
+
+
playerInGroup(String, String, String) - Method in class net.milkbowl.vault.permission.Permission
+
+
Deprecated. +
As of VaultAPI 1.4 use playerInGroup(String, OfflinePlayer, String) instead.
+
+
+
playerInGroup(World, String, String) - Method in class net.milkbowl.vault.permission.Permission
+
+
Deprecated. +
As of VaultAPI 1.4 use playerInGroup(String, OfflinePlayer, String) instead.
+
+
+
playerInGroup(String, OfflinePlayer, String) - Method in class net.milkbowl.vault.permission.Permission
+
+
Check if player is member of a group.
+
+
playerInGroup(Player, String) - Method in class net.milkbowl.vault.permission.Permission
+
+
Check if player is member of a group.
+
+
playerRemove(String, String, String) - Method in class net.milkbowl.vault.permission.Permission
+
+
Deprecated. +
As of VaultAPI 1.4 use playerRemove(String, OfflinePlayer, String) instead.
+
+
+
playerRemove(String, OfflinePlayer, String) - Method in class net.milkbowl.vault.permission.Permission
+
+
Remove permission from a player.
+
+
playerRemove(World, String, String) - Method in class net.milkbowl.vault.permission.Permission
+
+
Deprecated.
+
+
playerRemove(Player, String) - Method in class net.milkbowl.vault.permission.Permission
+
+
Remove permission from a player.
+
+
playerRemoveGroup(String, String, String) - Method in class net.milkbowl.vault.permission.Permission
+
+
Deprecated. +
As of VaultAPI 1.4 use playerRemoveGroup(String, OfflinePlayer, String) instead.
+
+
+
playerRemoveGroup(World, String, String) - Method in class net.milkbowl.vault.permission.Permission
+
+
Deprecated. +
As of VaultAPI 1.4 use playerRemoveGroup(String, OfflinePlayer, String) instead.
+
+
+
playerRemoveGroup(String, OfflinePlayer, String) - Method in class net.milkbowl.vault.permission.Permission
+
+
Remove player from a group.
+
+
playerRemoveGroup(Player, String) - Method in class net.milkbowl.vault.permission.Permission
+
+
Remove player from a group.
+
+
playerRemoveTransient(String, String, String) - Method in class net.milkbowl.vault.permission.Permission
+
+
Deprecated. + +
+
+
playerRemoveTransient(String, OfflinePlayer, String) - Method in class net.milkbowl.vault.permission.Permission
+
+
Removes a world specific transient permission from the player, may only work with some permission managers.
+
+
playerRemoveTransient(String, Player, String) - Method in class net.milkbowl.vault.permission.Permission
+
+
Removes a world specific transient permission from the player, may only work with some permission managers.
+
+
playerRemoveTransient(String, String) - Method in class net.milkbowl.vault.permission.Permission
+
+
Deprecated. +
As of VaultAPI 1.4 use playerRemoveTransient(OfflinePlayer, String) instead.
+
+
+
playerRemoveTransient(OfflinePlayer, String) - Method in class net.milkbowl.vault.permission.Permission
+
+
Remove transient permission from a player.
+
+
playerRemoveTransient(Player, String) - Method in class net.milkbowl.vault.permission.Permission
+
+
Remove transient permission from a player.
+
+
+ + + +

S

+
+
search - Variable in class net.milkbowl.vault.item.ItemInfo
+
 
+
setGroupInfoBoolean(String, String, String, boolean) - Method in class net.milkbowl.vault.chat.Chat
+
+
Set a groups informational node (Boolean) value
+
+
setGroupInfoBoolean(World, String, String, boolean) - Method in class net.milkbowl.vault.chat.Chat
+
+
Set a players informational node (Boolean) value
+
+
setGroupInfoDouble(String, String, String, double) - Method in class net.milkbowl.vault.chat.Chat
+
+
Set a groups informational node (Double) value
+
+
setGroupInfoDouble(World, String, String, double) - Method in class net.milkbowl.vault.chat.Chat
+
+
Set a groups informational node (Double) value
+
+
setGroupInfoInteger(String, String, String, int) - Method in class net.milkbowl.vault.chat.Chat
+
+
Set a groups informational node (Integer) value
+
+
setGroupInfoInteger(World, String, String, int) - Method in class net.milkbowl.vault.chat.Chat
+
+
Set a groups informational node (Integer) value
+
+
setGroupInfoString(String, String, String, String) - Method in class net.milkbowl.vault.chat.Chat
+
+
Set a groups informational node (String) value
+
+
setGroupInfoString(World, String, String, String) - Method in class net.milkbowl.vault.chat.Chat
+
+
Set a groups informational node (String) value
+
+
setGroupPrefix(String, String, String) - Method in class net.milkbowl.vault.chat.Chat
+
+
Set group prefix
+
+
setGroupPrefix(World, String, String) - Method in class net.milkbowl.vault.chat.Chat
+
+
Set group prefix
+
+
setGroupSuffix(String, String, String) - Method in class net.milkbowl.vault.chat.Chat
+
+
Set group suffix
+
+
setGroupSuffix(World, String, String) - Method in class net.milkbowl.vault.chat.Chat
+
+
Set group suffix
+
+
setPlayerInfoBoolean(String, OfflinePlayer, String, boolean) - Method in class net.milkbowl.vault.chat.Chat
+
+
Set a players informational node (Boolean) value
+
+
setPlayerInfoBoolean(String, String, String, boolean) - Method in class net.milkbowl.vault.chat.Chat
+
+
Deprecated. +
As of VaultAPI 1.4 use {Chat.setPlayerInfoBoolean(String, OfflinePlayer, String, boolean) instead. + Set a players informational node (Boolean) value
+
+
+
setPlayerInfoBoolean(World, String, String, boolean) - Method in class net.milkbowl.vault.chat.Chat
+
+
Deprecated. +
As of VaultAPI 1.4 use {Chat.setPlayerInfoBoolean(String, OfflinePlayer, String, boolean) instead. + Set a players informational node (Boolean) value
+
+
+
setPlayerInfoBoolean(Player, String, boolean) - Method in class net.milkbowl.vault.chat.Chat
+
+
Set a players informational node (Boolean) value
+
+
setPlayerInfoDouble(String, OfflinePlayer, String, double) - Method in class net.milkbowl.vault.chat.Chat
+
+
Set a players informational node (Double) value
+
+
setPlayerInfoDouble(String, String, String, double) - Method in class net.milkbowl.vault.chat.Chat
+
+
Deprecated. +
As of VaultAPI 1.4 use {Chat.setPlayerInfoDouble(String, OfflinePlayer, String, double) instead. + Set a players informational node (Double) value
+
+
+
setPlayerInfoDouble(World, String, String, double) - Method in class net.milkbowl.vault.chat.Chat
+
+
Deprecated. +
As of VaultAPI 1.4 use {Chat.setPlayerInfoDouble(String, OfflinePlayer, String, double) instead. + Set a players informational node (Double) value
+
+
+
setPlayerInfoDouble(Player, String, double) - Method in class net.milkbowl.vault.chat.Chat
+
+
Set a players informational node (Double) value
+
+
setPlayerInfoInteger(String, OfflinePlayer, String, int) - Method in class net.milkbowl.vault.chat.Chat
+
+
Set a players informational node (Integer) value
+
+
setPlayerInfoInteger(String, String, String, int) - Method in class net.milkbowl.vault.chat.Chat
+
+
Deprecated. +
As of VaultAPI 1.4 use {Chat.setPlayerInfoInteger(String, OfflinePlayer, String, int) instead. + + Set a players informational node (Integer) value
+
+
+
setPlayerInfoInteger(World, String, String, int) - Method in class net.milkbowl.vault.chat.Chat
+
+
Deprecated. +
As of VaultAPI 1.4 use {Chat.setPlayerInfoInteger(String, OfflinePlayer, String, int) instead. + + Set a players informational node (Integer) value
+
+
+
setPlayerInfoInteger(Player, String, int) - Method in class net.milkbowl.vault.chat.Chat
+
+
Set a players informational node (Integer) value
+
+
setPlayerInfoString(String, OfflinePlayer, String, String) - Method in class net.milkbowl.vault.chat.Chat
+
+
Set a players informational node (String) value
+
+
setPlayerInfoString(String, String, String, String) - Method in class net.milkbowl.vault.chat.Chat
+
+
Deprecated. +
As of VaultAPI 1.4 use {Chat.setPlayerInfoString(String, OfflinePlayer, String, String) instead. + Set a players informational node (String) value
+
+
+
setPlayerInfoString(World, String, String, String) - Method in class net.milkbowl.vault.chat.Chat
+
+
Deprecated. +
As of VaultAPI 1.4 use {Chat.setPlayerInfoString(String, OfflinePlayer, String, String) instead. + Set a players informational node (String) value
+
+
+
setPlayerInfoString(Player, String, String) - Method in class net.milkbowl.vault.chat.Chat
+
+
Set a players informational node (String) value
+
+
setPlayerPrefix(String, String, String) - Method in class net.milkbowl.vault.chat.Chat
+
+
Deprecated. +
As of VaultAPI 1.4 use {Chat.setPlayerPrefix(String, OfflinePlayer, String) instead. + + Set players prefix
+
+
+
setPlayerPrefix(String, OfflinePlayer, String) - Method in class net.milkbowl.vault.chat.Chat
+
+
Sets players prefix in the given world.
+
+
setPlayerPrefix(World, String, String) - Method in class net.milkbowl.vault.chat.Chat
+
+
Deprecated. +
As of VaultAPI 1.4 use {Chat.setPlayerPrefix(String, OfflinePlayer, String) instead. + + Set players prefix in the given world.
+
+
+
setPlayerPrefix(Player, String) - Method in class net.milkbowl.vault.chat.Chat
+
+
Set players prefix in the world they are currently in.
+
+
setPlayerSuffix(String, String, String) - Method in class net.milkbowl.vault.chat.Chat
+
+
Deprecated. +
As of VaultAPI 1.4 use {Chat.setPlayerSuffix(String, OfflinePlayer, String) instead. + + Set players suffix
+
+
+
setPlayerSuffix(String, OfflinePlayer, String) - Method in class net.milkbowl.vault.chat.Chat
+
+
Set players suffix for the world specified
+
+
setPlayerSuffix(World, String, String) - Method in class net.milkbowl.vault.chat.Chat
+
+
Deprecated. +
As of VaultAPI 1.4 use {Chat.setPlayerSuffix(String, OfflinePlayer, String) instead. + + Set players suffix
+
+
+
setPlayerSuffix(Player, String) - Method in class net.milkbowl.vault.chat.Chat
+
+
Set players suffix in the world they currently occupy.
+
+
subTypeId - Variable in class net.milkbowl.vault.item.ItemInfo
+
 
+
+ + + +

T

+
+
toStack() - Method in class net.milkbowl.vault.item.ItemInfo
+
 
+
toString() - Method in class net.milkbowl.vault.item.ItemInfo
+
 
+
transactionSuccess() - Method in class net.milkbowl.vault.economy.EconomyResponse
+
+
Checks if an operation was successful
+
+
type - Variable in class net.milkbowl.vault.economy.EconomyResponse
+
+
Success or failure of call.
+
+
+ + + +

V

+
+
valueOf(String) - Static method in enum net.milkbowl.vault.economy.EconomyResponse.ResponseType
+
+
Returns the enum constant of this type with the specified name.
+
+
values() - Static method in enum net.milkbowl.vault.economy.EconomyResponse.ResponseType
+
+
Returns an array containing the constants of this enum type, in +the order they are declared.
+
+
+ + + +

W

+
+
withdrawPlayer(OfflinePlayer, double) - Method in class net.milkbowl.vault.economy.AbstractEconomy
+
 
+
withdrawPlayer(OfflinePlayer, String, double) - Method in class net.milkbowl.vault.economy.AbstractEconomy
+
 
+
withdrawPlayer(String, double) - Method in interface net.milkbowl.vault.economy.Economy
+
+
Deprecated. +
As of VaultAPI 1.4 use Economy.withdrawPlayer(OfflinePlayer, double) instead.
+
+
+
withdrawPlayer(OfflinePlayer, double) - Method in interface net.milkbowl.vault.economy.Economy
+
+
Withdraw an amount from a player - DO NOT USE NEGATIVE AMOUNTS
+
+
withdrawPlayer(String, String, double) - Method in interface net.milkbowl.vault.economy.Economy
+
+
Deprecated. + +
+
+
withdrawPlayer(OfflinePlayer, String, double) - Method in interface net.milkbowl.vault.economy.Economy
+
+
Withdraw an amount from a player on a given world - DO NOT USE NEGATIVE AMOUNTS + IMPLEMENTATION SPECIFIC - if an economy plugin does not support this the global balance will be returned.
+
+
+A B C D E F G H I J M N P S T V W 
+ +
+ + + + + +
+ + +

Milkbowl, 2014

+ + diff --git a/index.html b/index.html new file mode 100644 index 0000000..410ed6d --- /dev/null +++ b/index.html @@ -0,0 +1,68 @@ + + + + + + +Vault + + + + + + + + + +<noscript> +<div>JavaScript is disabled on your browser.</div> +</noscript> +<h2>Frame Alert</h2> +<p>This document is designed to be viewed using the frames feature. If you see this message, you are using a non-frame-capable web client.</p> +<br>Link to<a href="overview-summary.html">Non-frame version.</a> + + diff --git a/net/milkbowl/vault/chat/Chat.html b/net/milkbowl/vault/chat/Chat.html new file mode 100644 index 0000000..b5adca0 --- /dev/null +++ b/net/milkbowl/vault/chat/Chat.html @@ -0,0 +1,2321 @@ + + + + + + +Chat (Vault) + + + + + + + +
+ + + + + +
+ + + +
+

net.milkbowl.vault.chat

+

Class Chat

+
+
+ +
+ +
+
+ +
+
+ +
+
+ + +
+ + + + + +
+ + +

Milkbowl, 2014

+ + diff --git a/net/milkbowl/vault/chat/class-use/Chat.html b/net/milkbowl/vault/chat/class-use/Chat.html new file mode 100644 index 0000000..c90d533 --- /dev/null +++ b/net/milkbowl/vault/chat/class-use/Chat.html @@ -0,0 +1,117 @@ + + + + + + +Uses of Class net.milkbowl.vault.chat.Chat (Vault) + + + + + + + +
+ + + + + +
+ + +
+

Uses of Class
net.milkbowl.vault.chat.Chat

+
+
No usage of net.milkbowl.vault.chat.Chat
+ +
+ + + + + +
+ + +

Milkbowl, 2014

+ + diff --git a/net/milkbowl/vault/chat/package-frame.html b/net/milkbowl/vault/chat/package-frame.html new file mode 100644 index 0000000..3ae49f9 --- /dev/null +++ b/net/milkbowl/vault/chat/package-frame.html @@ -0,0 +1,20 @@ + + + + + + +net.milkbowl.vault.chat (Vault) + + + + +

net.milkbowl.vault.chat

+
+

Classes

+ +
+ + diff --git a/net/milkbowl/vault/chat/package-summary.html b/net/milkbowl/vault/chat/package-summary.html new file mode 100644 index 0000000..747a797 --- /dev/null +++ b/net/milkbowl/vault/chat/package-summary.html @@ -0,0 +1,137 @@ + + + + + + +net.milkbowl.vault.chat (Vault) + + + + + + + +
+ + + + + +
+ + +
+

Package net.milkbowl.vault.chat

+
+
+ +
+ +
+ + + + + +
+ + +

Milkbowl, 2014

+ + diff --git a/net/milkbowl/vault/chat/package-tree.html b/net/milkbowl/vault/chat/package-tree.html new file mode 100644 index 0000000..d14ffdf --- /dev/null +++ b/net/milkbowl/vault/chat/package-tree.html @@ -0,0 +1,130 @@ + + + + + + +net.milkbowl.vault.chat Class Hierarchy (Vault) + + + + + + + +
+ + + + + +
+ + +
+

Hierarchy For Package net.milkbowl.vault.chat

+Package Hierarchies: + +
+
+

Class Hierarchy

+ +
+ +
+ + + + + +
+ + +

Milkbowl, 2014

+ + diff --git a/net/milkbowl/vault/chat/package-use.html b/net/milkbowl/vault/chat/package-use.html new file mode 100644 index 0000000..1b8241b --- /dev/null +++ b/net/milkbowl/vault/chat/package-use.html @@ -0,0 +1,117 @@ + + + + + + +Uses of Package net.milkbowl.vault.chat (Vault) + + + + + + + +
+ + + + + +
+ + +
+

Uses of Package
net.milkbowl.vault.chat

+
+
No usage of net.milkbowl.vault.chat
+ +
+ + + + + +
+ + +

Milkbowl, 2014

+ + diff --git a/net/milkbowl/vault/economy/AbstractEconomy.html b/net/milkbowl/vault/economy/AbstractEconomy.html new file mode 100644 index 0000000..4b9aa94 --- /dev/null +++ b/net/milkbowl/vault/economy/AbstractEconomy.html @@ -0,0 +1,634 @@ + + + + + + +AbstractEconomy (Vault) + + + + + + + +
+ + + + + +
+ + + +
+

net.milkbowl.vault.economy

+

Class AbstractEconomy

+
+
+ +
+ +
+
+ +
+
+ +
+
+ + +
+ + + + + +
+ + +

Milkbowl, 2014

+ + diff --git a/net/milkbowl/vault/economy/Economy.html b/net/milkbowl/vault/economy/Economy.html new file mode 100644 index 0000000..97649ab --- /dev/null +++ b/net/milkbowl/vault/economy/Economy.html @@ -0,0 +1,1071 @@ + + + + + + +Economy (Vault) + + + + + + + +
+ + + + + +
+ + + +
+

net.milkbowl.vault.economy

+

Interface Economy

+
+
+
+ +
+
+ +
+
+ +
+
+ + +
+ + + + + +
+ + +

Milkbowl, 2014

+ + diff --git a/net/milkbowl/vault/economy/EconomyResponse.ResponseType.html b/net/milkbowl/vault/economy/EconomyResponse.ResponseType.html new file mode 100644 index 0000000..557abf4 --- /dev/null +++ b/net/milkbowl/vault/economy/EconomyResponse.ResponseType.html @@ -0,0 +1,340 @@ + + + + + + +EconomyResponse.ResponseType (Vault) + + + + + + + +
+ + + + + +
+ + + +
+

net.milkbowl.vault.economy

+

Enum EconomyResponse.ResponseType

+
+
+ +
+ +
+
+ +
+
+ +
+
+ + +
+ + + + + +
+ + +

Milkbowl, 2014

+ + diff --git a/net/milkbowl/vault/economy/EconomyResponse.html b/net/milkbowl/vault/economy/EconomyResponse.html new file mode 100644 index 0000000..93d50eb --- /dev/null +++ b/net/milkbowl/vault/economy/EconomyResponse.html @@ -0,0 +1,384 @@ + + + + + + +EconomyResponse (Vault) + + + + + + + +
+ + + + + +
+ + + +
+

net.milkbowl.vault.economy

+

Class EconomyResponse

+
+
+ +
+ +
+
+ +
+
+ +
+
+ + +
+ + + + + +
+ + +

Milkbowl, 2014

+ + diff --git a/net/milkbowl/vault/economy/class-use/AbstractEconomy.html b/net/milkbowl/vault/economy/class-use/AbstractEconomy.html new file mode 100644 index 0000000..a841cd7 --- /dev/null +++ b/net/milkbowl/vault/economy/class-use/AbstractEconomy.html @@ -0,0 +1,117 @@ + + + + + + +Uses of Class net.milkbowl.vault.economy.AbstractEconomy (Vault) + + + + + + + +
+ + + + + +
+ + +
+

Uses of Class
net.milkbowl.vault.economy.AbstractEconomy

+
+
No usage of net.milkbowl.vault.economy.AbstractEconomy
+ +
+ + + + + +
+ + +

Milkbowl, 2014

+ + diff --git a/net/milkbowl/vault/economy/class-use/Economy.html b/net/milkbowl/vault/economy/class-use/Economy.html new file mode 100644 index 0000000..013a3c8 --- /dev/null +++ b/net/milkbowl/vault/economy/class-use/Economy.html @@ -0,0 +1,157 @@ + + + + + + +Uses of Interface net.milkbowl.vault.economy.Economy (Vault) + + + + + + + +
+ + + + + +
+ + +
+

Uses of Interface
net.milkbowl.vault.economy.Economy

+
+
+ +
+ +
+ + + + + +
+ + +

Milkbowl, 2014

+ + diff --git a/net/milkbowl/vault/economy/class-use/EconomyResponse.ResponseType.html b/net/milkbowl/vault/economy/class-use/EconomyResponse.ResponseType.html new file mode 100644 index 0000000..0166fe8 --- /dev/null +++ b/net/milkbowl/vault/economy/class-use/EconomyResponse.ResponseType.html @@ -0,0 +1,197 @@ + + + + + + +Uses of Class net.milkbowl.vault.economy.EconomyResponse.ResponseType (Vault) + + + + + + + +
+ + + + + +
+ + +
+

Uses of Class
net.milkbowl.vault.economy.EconomyResponse.ResponseType

+
+
+ +
+ +
+ + + + + +
+ + +

Milkbowl, 2014

+ + diff --git a/net/milkbowl/vault/economy/class-use/EconomyResponse.html b/net/milkbowl/vault/economy/class-use/EconomyResponse.html new file mode 100644 index 0000000..cf2d338 --- /dev/null +++ b/net/milkbowl/vault/economy/class-use/EconomyResponse.html @@ -0,0 +1,341 @@ + + + + + + +Uses of Class net.milkbowl.vault.economy.EconomyResponse (Vault) + + + + + + + +
+ + + + + +
+ + +
+

Uses of Class
net.milkbowl.vault.economy.EconomyResponse

+
+
+ +
+ +
+ + + + + +
+ + +

Milkbowl, 2014

+ + diff --git a/net/milkbowl/vault/economy/package-frame.html b/net/milkbowl/vault/economy/package-frame.html new file mode 100644 index 0000000..bd246b2 --- /dev/null +++ b/net/milkbowl/vault/economy/package-frame.html @@ -0,0 +1,29 @@ + + + + + + +net.milkbowl.vault.economy (Vault) + + + + +

net.milkbowl.vault.economy

+
+

Interfaces

+ +

Classes

+ +

Enums

+ +
+ + diff --git a/net/milkbowl/vault/economy/package-summary.html b/net/milkbowl/vault/economy/package-summary.html new file mode 100644 index 0000000..a04679f --- /dev/null +++ b/net/milkbowl/vault/economy/package-summary.html @@ -0,0 +1,175 @@ + + + + + + +net.milkbowl.vault.economy (Vault) + + + + + + + +
+ + + + + +
+ + +
+

Package net.milkbowl.vault.economy

+
+
+ +
+ +
+ + + + + +
+ + +

Milkbowl, 2014

+ + diff --git a/net/milkbowl/vault/economy/package-tree.html b/net/milkbowl/vault/economy/package-tree.html new file mode 100644 index 0000000..331f386 --- /dev/null +++ b/net/milkbowl/vault/economy/package-tree.html @@ -0,0 +1,147 @@ + + + + + + +net.milkbowl.vault.economy Class Hierarchy (Vault) + + + + + + + +
+ + + + + +
+ + +
+

Hierarchy For Package net.milkbowl.vault.economy

+Package Hierarchies: + +
+
+

Class Hierarchy

+ +

Interface Hierarchy

+ +

Enum Hierarchy

+ +
+ +
+ + + + + +
+ + +

Milkbowl, 2014

+ + diff --git a/net/milkbowl/vault/economy/package-use.html b/net/milkbowl/vault/economy/package-use.html new file mode 100644 index 0000000..6c6a0b8 --- /dev/null +++ b/net/milkbowl/vault/economy/package-use.html @@ -0,0 +1,162 @@ + + + + + + +Uses of Package net.milkbowl.vault.economy (Vault) + + + + + + + +
+ + + + + +
+ + +
+

Uses of Package
net.milkbowl.vault.economy

+
+
+ +
+ +
+ + + + + +
+ + +

Milkbowl, 2014

+ + diff --git a/net/milkbowl/vault/item/ItemInfo.html b/net/milkbowl/vault/item/ItemInfo.html new file mode 100644 index 0000000..14c9ae6 --- /dev/null +++ b/net/milkbowl/vault/item/ItemInfo.html @@ -0,0 +1,514 @@ + + + + + + +ItemInfo (Vault) + + + + + + + +
+ + + + + +
+ + + +
+

net.milkbowl.vault.item

+

Class ItemInfo

+
+
+ +
+ +
+
+ +
+
+ +
+
+ + +
+ + + + + +
+ + +

Milkbowl, 2014

+ + diff --git a/net/milkbowl/vault/item/Items.html b/net/milkbowl/vault/item/Items.html new file mode 100644 index 0000000..973d425 --- /dev/null +++ b/net/milkbowl/vault/item/Items.html @@ -0,0 +1,494 @@ + + + + + + +Items (Vault) + + + + + + + +
+ + + + + +
+ + + +
+

net.milkbowl.vault.item

+

Class Items

+
+
+ +
+ +
+
+ +
+
+ +
+
+ + +
+ + + + + +
+ + +

Milkbowl, 2014

+ + diff --git a/net/milkbowl/vault/item/class-use/ItemInfo.html b/net/milkbowl/vault/item/class-use/ItemInfo.html new file mode 100644 index 0000000..f3e4798 --- /dev/null +++ b/net/milkbowl/vault/item/class-use/ItemInfo.html @@ -0,0 +1,245 @@ + + + + + + +Uses of Class net.milkbowl.vault.item.ItemInfo (Vault) + + + + + + + +
+ + + + + +
+ + +
+

Uses of Class
net.milkbowl.vault.item.ItemInfo

+
+
+ +
+ +
+ + + + + +
+ + +

Milkbowl, 2014

+ + diff --git a/net/milkbowl/vault/item/class-use/Items.html b/net/milkbowl/vault/item/class-use/Items.html new file mode 100644 index 0000000..8870500 --- /dev/null +++ b/net/milkbowl/vault/item/class-use/Items.html @@ -0,0 +1,117 @@ + + + + + + +Uses of Class net.milkbowl.vault.item.Items (Vault) + + + + + + + +
+ + + + + +
+ + +
+

Uses of Class
net.milkbowl.vault.item.Items

+
+
No usage of net.milkbowl.vault.item.Items
+ +
+ + + + + +
+ + +

Milkbowl, 2014

+ + diff --git a/net/milkbowl/vault/item/package-frame.html b/net/milkbowl/vault/item/package-frame.html new file mode 100644 index 0000000..9bf0bba --- /dev/null +++ b/net/milkbowl/vault/item/package-frame.html @@ -0,0 +1,21 @@ + + + + + + +net.milkbowl.vault.item (Vault) + + + + +

net.milkbowl.vault.item

+
+

Classes

+ +
+ + diff --git a/net/milkbowl/vault/item/package-summary.html b/net/milkbowl/vault/item/package-summary.html new file mode 100644 index 0000000..7ff6592 --- /dev/null +++ b/net/milkbowl/vault/item/package-summary.html @@ -0,0 +1,139 @@ + + + + + + +net.milkbowl.vault.item (Vault) + + + + + + + +
+ + + + + +
+ + +
+

Package net.milkbowl.vault.item

+
+
+ +
+ +
+ + + + + +
+ + +

Milkbowl, 2014

+ + diff --git a/net/milkbowl/vault/item/package-tree.html b/net/milkbowl/vault/item/package-tree.html new file mode 100644 index 0000000..c726e77 --- /dev/null +++ b/net/milkbowl/vault/item/package-tree.html @@ -0,0 +1,131 @@ + + + + + + +net.milkbowl.vault.item Class Hierarchy (Vault) + + + + + + + +
+ + + + + +
+ + +
+

Hierarchy For Package net.milkbowl.vault.item

+Package Hierarchies: + +
+
+

Class Hierarchy

+ +
+ +
+ + + + + +
+ + +

Milkbowl, 2014

+ + diff --git a/net/milkbowl/vault/item/package-use.html b/net/milkbowl/vault/item/package-use.html new file mode 100644 index 0000000..a8d1f54 --- /dev/null +++ b/net/milkbowl/vault/item/package-use.html @@ -0,0 +1,150 @@ + + + + + + +Uses of Package net.milkbowl.vault.item (Vault) + + + + + + + +
+ + + + + +
+ + +
+

Uses of Package
net.milkbowl.vault.item

+
+
+ +
+ +
+ + + + + +
+ + +

Milkbowl, 2014

+ + diff --git a/net/milkbowl/vault/permission/Permission.html b/net/milkbowl/vault/permission/Permission.html new file mode 100644 index 0000000..2a93df5 --- /dev/null +++ b/net/milkbowl/vault/permission/Permission.html @@ -0,0 +1,1569 @@ + + + + + + +Permission (Vault) + + + + + + + +
+ + + + + +
+ + + +
+

net.milkbowl.vault.permission

+

Class Permission

+
+
+ +
+ +
+
+ +
+
+ +
+
+ + +
+ + + + + +
+ + +

Milkbowl, 2014

+ + diff --git a/net/milkbowl/vault/permission/class-use/Permission.html b/net/milkbowl/vault/permission/class-use/Permission.html new file mode 100644 index 0000000..f2f3278 --- /dev/null +++ b/net/milkbowl/vault/permission/class-use/Permission.html @@ -0,0 +1,155 @@ + + + + + + +Uses of Class net.milkbowl.vault.permission.Permission (Vault) + + + + + + + +
+ + + + + +
+ + +
+

Uses of Class
net.milkbowl.vault.permission.Permission

+
+
+ +
+ +
+ + + + + +
+ + +

Milkbowl, 2014

+ + diff --git a/net/milkbowl/vault/permission/package-frame.html b/net/milkbowl/vault/permission/package-frame.html new file mode 100644 index 0000000..a95ae39 --- /dev/null +++ b/net/milkbowl/vault/permission/package-frame.html @@ -0,0 +1,20 @@ + + + + + + +net.milkbowl.vault.permission (Vault) + + + + +

net.milkbowl.vault.permission

+
+

Classes

+ +
+ + diff --git a/net/milkbowl/vault/permission/package-summary.html b/net/milkbowl/vault/permission/package-summary.html new file mode 100644 index 0000000..87b78b2 --- /dev/null +++ b/net/milkbowl/vault/permission/package-summary.html @@ -0,0 +1,137 @@ + + + + + + +net.milkbowl.vault.permission (Vault) + + + + + + + +
+ + + + + +
+ + +
+

Package net.milkbowl.vault.permission

+
+
+ +
+ +
+ + + + + +
+ + +

Milkbowl, 2014

+ + diff --git a/net/milkbowl/vault/permission/package-tree.html b/net/milkbowl/vault/permission/package-tree.html new file mode 100644 index 0000000..5dacd35 --- /dev/null +++ b/net/milkbowl/vault/permission/package-tree.html @@ -0,0 +1,130 @@ + + + + + + +net.milkbowl.vault.permission Class Hierarchy (Vault) + + + + + + + +
+ + + + + +
+ + +
+

Hierarchy For Package net.milkbowl.vault.permission

+Package Hierarchies: + +
+
+

Class Hierarchy

+ +
+ +
+ + + + + +
+ + +

Milkbowl, 2014

+ + diff --git a/net/milkbowl/vault/permission/package-use.html b/net/milkbowl/vault/permission/package-use.html new file mode 100644 index 0000000..9752c56 --- /dev/null +++ b/net/milkbowl/vault/permission/package-use.html @@ -0,0 +1,152 @@ + + + + + + +Uses of Package net.milkbowl.vault.permission (Vault) + + + + + + + +
+ + + + + +
+ + +
+

Uses of Package
net.milkbowl.vault.permission

+
+
+ +
+ +
+ + + + + +
+ + +

Milkbowl, 2014

+ + diff --git a/overview-frame.html b/overview-frame.html new file mode 100644 index 0000000..d549b44 --- /dev/null +++ b/overview-frame.html @@ -0,0 +1,24 @@ + + + + + + +Overview List (Vault) + + + + +
All Classes
+
+

Packages

+ +
+

 

+ + diff --git a/overview-summary.html b/overview-summary.html new file mode 100644 index 0000000..d3f94a0 --- /dev/null +++ b/overview-summary.html @@ -0,0 +1,143 @@ + + + + + + +Overview (Vault) + + + + + + + +
+ + + + + +
+ + +
+

VaultAPI 1.4 API

+
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
Packages 
PackageDescription
net.milkbowl.vault.chat 
net.milkbowl.vault.economy 
net.milkbowl.vault.item 
net.milkbowl.vault.permission 
+
+ +
+ + + + + +
+ + +

Milkbowl, 2014

+ + diff --git a/overview-tree.html b/overview-tree.html new file mode 100644 index 0000000..3a9e5eb --- /dev/null +++ b/overview-tree.html @@ -0,0 +1,154 @@ + + + + + + +Class Hierarchy (Vault) + + + + + + + +
+ + + + + +
+ + +
+

Hierarchy For All Packages

+Package Hierarchies: + +
+
+

Class Hierarchy

+ +

Interface Hierarchy

+ +

Enum Hierarchy

+ +
+ +
+ + + + + +
+ + +

Milkbowl, 2014

+ + diff --git a/package-list b/package-list new file mode 100644 index 0000000..c88179a --- /dev/null +++ b/package-list @@ -0,0 +1,4 @@ +net.milkbowl.vault.chat +net.milkbowl.vault.economy +net.milkbowl.vault.item +net.milkbowl.vault.permission diff --git a/resources/inherit.gif b/resources/inherit.gif new file mode 100644 index 0000000..c814867 Binary files /dev/null and b/resources/inherit.gif differ diff --git a/src-html/net/milkbowl/vault/chat/Chat.html b/src-html/net/milkbowl/vault/chat/Chat.html new file mode 100644 index 0000000..a857aee --- /dev/null +++ b/src-html/net/milkbowl/vault/chat/Chat.html @@ -0,0 +1,1067 @@ + + + +Source code + + + +
+
001/* This file is part of Vault.
+002
+003    Vault is free software: you can redistribute it and/or modify
+004    it under the terms of the GNU Lesser General Public License as published by
+005    the Free Software Foundation, either version 3 of the License, or
+006    (at your option) any later version.
+007
+008    Vault is distributed in the hope that it will be useful,
+009    but WITHOUT ANY WARRANTY; without even the implied warranty of
+010    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+011    GNU Lesser General Public License for more details.
+012
+013    You should have received a copy of the GNU Lesser General Public License
+014    along with Vault.  If not, see <http://www.gnu.org/licenses/>.
+015*/
+016package net.milkbowl.vault.chat;
+017
+018import net.milkbowl.vault.permission.Permission;
+019
+020import org.bukkit.OfflinePlayer;
+021import org.bukkit.World;
+022import org.bukkit.entity.Player;
+023
+024/**
+025 * The main Chat API - allows for Prefix/Suffix nodes along with generic Info nodes if the linked Chat system supports them
+026 *
+027 */
+028public abstract class Chat {
+029        
+030        private Permission perms;
+031        
+032        public Chat(Permission perms) {
+033                this.perms = perms;
+034        }
+035    /**
+036     * Gets name of permission method
+037     * @return Name of Permission Method
+038     */
+039    abstract public String getName();
+040
+041    /**
+042     * Checks if permission method is enabled.
+043     * @return Success or Failure
+044     */
+045    abstract public boolean isEnabled();
+046    
+047    /**
+048     * @deprecated As of VaultAPI 1.4 use {{@link #getPlayerPrefix(String, OfflinePlayer)} instead.
+049     * 
+050     * Get players prefix
+051     * @param world World name
+052     * @param player Player name
+053     * @return Prefix
+054     */
+055    @Deprecated
+056    abstract public String getPlayerPrefix(String world, String player);
+057    
+058    /**
+059     * Get a players prefix in the given world
+060     * Use NULL for world if requesting a global prefix
+061     * 
+062     * @param world World name
+063     * @param player OfflinePlayer
+064     * @return Prefix
+065     */
+066    public String getPlayerPrefix(String world, OfflinePlayer player) {
+067        return getPlayerPrefix(world, player.getName());
+068    }
+069
+070    /**
+071     * @deprecated As of VaultAPI 1.4 use {{@link #getPlayerPrefix(String, OfflinePlayer)} instead.
+072     * 
+073     * Get players prefix
+074     * @param world World Object
+075     * @param player Player name
+076     * @return Prefix
+077     */
+078    @Deprecated
+079    public String getPlayerPrefix(World world, String player) {
+080        return getPlayerPrefix(world.getName(), player);
+081    }
+082
+083    /**
+084     * Get players prefix from the world they are currently in. 
+085     * May or may not return the global prefix depending on implementation.
+086     * 
+087     * @param player Player Object
+088     * @return Prefix
+089     */
+090    public String getPlayerPrefix(Player player) {
+091        return getPlayerPrefix(player.getWorld().getName(), player);
+092    }
+093
+094    /**
+095     * @deprecated As of VaultAPI 1.4 use {{@link #setPlayerPrefix(String, OfflinePlayer, String)} instead.
+096     * 
+097     * Set players prefix
+098     * @param world World name
+099     * @param player Player name
+100     * @param prefix Prefix
+101     */
+102    @Deprecated
+103    abstract public void setPlayerPrefix(String world, String player, String prefix);
+104
+105    /**
+106     * Sets players prefix in the given world.
+107     * Use NULL for world for setting in the Global scope.
+108     * 
+109     * @param world World name
+110     * @param player OfflinePlayer
+111     * @param prefix Prefix
+112     */
+113    public void setPlayerPrefix(String world, OfflinePlayer player, String prefix) {
+114        setPlayerPrefix(world, player.getName(), prefix);
+115    }
+116
+117    /**
+118     * @deprecated As of VaultAPI 1.4 use {{@link #setPlayerPrefix(String, OfflinePlayer, String)} instead.
+119     * 
+120     * Set players prefix in the given world.
+121     * 
+122     * @param world World Object
+123     * @param player Player name
+124     * @param prefix Prefix
+125     */
+126    @Deprecated
+127    public void setPlayerPrefix(World world, String player, String prefix) {
+128        setPlayerPrefix(world.getName(), player, prefix);
+129    }
+130
+131    /**
+132     * Set players prefix in the world they are currently in.
+133     * 
+134     * @param player Player Object
+135     * @param prefix Prefix
+136     */
+137    public void setPlayerPrefix(Player player, String prefix) {
+138        setPlayerPrefix(player.getWorld().getName(), player, prefix);
+139    }
+140
+141    /**
+142     * @deprecated As of VaultAPI 1.4 use {{@link #getPlayerSuffix(String, OfflinePlayer)} instead.
+143     * 
+144     * Get players suffix
+145     * @param world World name
+146     * @param player Player name
+147     * @return Suffix
+148     */
+149    @Deprecated
+150    abstract public String getPlayerSuffix(String world, String player);
+151
+152    /**
+153     * Get players suffix in the specified world.
+154     * 
+155     * @param world World name
+156     * @param player OfflinePlayer name
+157     * @return Suffix
+158     */
+159    public String getPlayerSuffix(String world, OfflinePlayer player) {
+160        return getPlayerSuffix(world, player.getName());
+161    }
+162
+163    /**
+164     * @deprecated As of VaultAPI 1.4 use {{@link #getPlayerSuffix(String, OfflinePlayer)} instead.
+165     * 
+166     * Get players suffix
+167     * @param world World Object
+168     * @param player Player name
+169     * @return Suffix
+170     */
+171    @Deprecated
+172    public String getPlayerSuffix(World world, String player) {
+173        return getPlayerSuffix(world.getName(), player);
+174    }
+175
+176    /**
+177     * Get players suffix in the world they are currently in.
+178     * 
+179     * @param player Player Object
+180     * @return Suffix
+181     */
+182    public String getPlayerSuffix(Player player) {
+183        return getPlayerSuffix(player.getWorld().getName(), player);
+184    }
+185
+186    /**
+187     * @deprecated As of VaultAPI 1.4 use {{@link #setPlayerSuffix(String, OfflinePlayer, String)} instead.
+188     * 
+189     * Set players suffix
+190     * @param world World name
+191     * @param player Player name
+192     * @param suffix Suffix
+193     */
+194    @Deprecated
+195    abstract public void setPlayerSuffix(String world, String player, String suffix);
+196
+197    /**
+198     * Set players suffix for the world specified
+199     * 
+200     * @param world World name
+201     * @param player OfflinePlayer
+202     * @param suffix Suffix
+203     */
+204    public void setPlayerSuffix(String world, OfflinePlayer player, String suffix) {
+205        setPlayerSuffix(world, player.getName(), suffix);
+206    }
+207    
+208    /**
+209     * @deprecated As of VaultAPI 1.4 use {{@link #setPlayerSuffix(String, OfflinePlayer, String)} instead.
+210     * 
+211     * Set players suffix
+212     * @param world World Object
+213     * @param player Player name
+214     * @param suffix Suffix
+215     */
+216    @Deprecated
+217    public void setPlayerSuffix(World world, String player, String suffix) {
+218        setPlayerSuffix(world.getName(), player, suffix);
+219    }
+220
+221    /**
+222     * Set players suffix in the world they currently occupy.
+223     * 
+224     * @param player Player Object
+225     * @param suffix Suffix
+226     */
+227    public void setPlayerSuffix(Player player, String suffix) {
+228        setPlayerSuffix(player.getWorld().getName(), player, suffix);
+229    }
+230
+231    /**
+232     * Get group prefix
+233     * @param world World name
+234     * @param group Group name
+235     * @return Prefix
+236     */
+237    abstract public String getGroupPrefix(String world, String group);
+238
+239    /**
+240     * Get group prefix
+241     * @param world World Object
+242     * @param group Group name
+243     * @return Prefix
+244     */
+245    public String getGroupPrefix(World world, String group) {
+246        return getGroupPrefix(world.getName(), group);
+247    }
+248
+249    /**
+250     * Set group prefix
+251     * @param world World name
+252     * @param group Group name
+253     * @param prefix Prefix
+254     */
+255    abstract public void setGroupPrefix(String world, String group, String prefix);
+256
+257    /**
+258     * Set group prefix
+259     * @param world World Object
+260     * @param group Group name
+261     * @param prefix Prefix
+262     */
+263    public void setGroupPrefix(World world, String group, String prefix) {
+264        setGroupPrefix(world.getName(), group, prefix);
+265    }
+266
+267    /**
+268     * Get group suffix
+269     * @param world World name
+270     * @param group Group name
+271     * @return Suffix
+272     */
+273    abstract public String getGroupSuffix(String world, String group);
+274
+275    /**
+276     * Get group suffix
+277     * @param world World Object
+278     * @param group Group name
+279     * @return Suffix
+280     */
+281    public String getGroupSuffix(World world, String group) {
+282        return getGroupSuffix(world.getName(), group);
+283    }
+284
+285    /**
+286     * Set group suffix
+287     * @param world World name
+288     * @param group Group name
+289     * @param suffix Suffix
+290     */
+291    abstract public void setGroupSuffix(String world, String group, String suffix);
+292
+293    /**
+294     * Set group suffix
+295     * @param world World Object
+296     * @param group Group name
+297     * @param suffix Suffix
+298     */
+299    public void setGroupSuffix(World world, String group, String suffix) {
+300        setGroupSuffix(world.getName(), group, suffix);
+301    }
+302
+303        /**
+304     * Get a players informational node (Integer) value
+305     * @param world World name
+306     * @param player OfflinePlayer
+307     * @param node Permission node
+308     * @param defaultValue Default value
+309     * @return Value
+310     */
+311    public int getPlayerInfoInteger(String world, OfflinePlayer player, String node, int defaultValue) {
+312        return getPlayerInfoInteger(world, player.getName(), node, defaultValue);
+313    }
+314
+315        /**
+316         * @deprecated As of VaultAPI 1.4 use {{@link #getPlayerInfoInteger(String, OfflinePlayer, String, int)} instead.
+317     * Get a players informational node (Integer) value
+318     * @param world World name
+319     * @param player Player name
+320     * @param node Permission node
+321     * @param defaultValue Default value
+322     * @return Value
+323     */
+324    @Deprecated
+325    abstract public int getPlayerInfoInteger(String world, String player, String node, int defaultValue);
+326
+327    /**
+328     * @deprecated As of VaultAPI 1.4 use {{@link #getPlayerInfoInteger(String, OfflinePlayer, String, int)} instead.
+329     * 
+330     * Get a players informational node (Integer) value
+331     * @param world World Object
+332     * @param player Player name
+333     * @param node Permission node
+334     * @param defaultValue Default value
+335     * @return Value
+336     */
+337    @Deprecated
+338    public int getPlayerInfoInteger(World world, String player, String node, int defaultValue) {
+339        return getPlayerInfoInteger(world.getName(), player, node, defaultValue);
+340    }
+341
+342    /**
+343     * Get a players informational node (Integer) value
+344     * @param player Player Object
+345     * @param node Permission node
+346     * @param defaultValue Default value
+347     * @return Value
+348     */
+349    public int getPlayerInfoInteger(Player player, String node, int defaultValue) {
+350        return getPlayerInfoInteger(player.getWorld().getName(), player, node, defaultValue);
+351    }
+352
+353    /**
+354     * Set a players informational node (Integer) value
+355     * @param world World name
+356     * @param player OfflinePlayer
+357     * @param node Permission node
+358     * @param value Value to set
+359     */
+360    public void setPlayerInfoInteger(String world, OfflinePlayer player, String node, int value) {
+361        setPlayerInfoInteger(world, player.getName(), node, value);
+362    }
+363    
+364    /**
+365     * @deprecated As of VaultAPI 1.4 use {{@link #setPlayerInfoInteger(String, OfflinePlayer, String, int)} instead.
+366     * 
+367     * Set a players informational node (Integer) value
+368     * @param world World name
+369     * @param player Player name
+370     * @param node Permission node
+371     * @param value Value to set
+372     */
+373    @Deprecated
+374    abstract public void setPlayerInfoInteger(String world, String player, String node, int value);
+375
+376    /**
+377     * @deprecated As of VaultAPI 1.4 use {{@link #setPlayerInfoInteger(String, OfflinePlayer, String, int)} instead.
+378     *
+379     * Set a players informational node (Integer) value
+380     * @param world World Object
+381     * @param player Player name
+382     * @param node Permission node
+383     * @param value Value to set
+384     */
+385    @Deprecated
+386    public void setPlayerInfoInteger(World world, String player, String node, int value) {
+387        setPlayerInfoInteger(world.getName(), player, node, value);
+388    }
+389
+390    /**
+391     * Set a players informational node (Integer) value
+392     * @param player Player Object
+393     * @param node Permission node
+394     * @param value Value to set
+395     */
+396    public void setPlayerInfoInteger(Player player, String node, int value) {
+397        setPlayerInfoInteger(player.getWorld().getName(), player, node, value);
+398    }
+399
+400    /**
+401     * Get a groups informational node (Integer) value
+402     * @param world World name
+403     * @param group Group name
+404     * @param node Permission node
+405     * @param defaultValue Default value
+406     * @return Value
+407     */
+408    abstract public int getGroupInfoInteger(String world, String group, String node, int defaultValue);
+409
+410    /**
+411     * Get a groups informational node (Integer) value
+412     * @param world World Object
+413     * @param group Group name
+414     * @param node Permission node
+415     * @param defaultValue Default value
+416     * @return Value
+417     */
+418    public int getGroupInfoInteger(World world, String group, String node, int defaultValue) {
+419        return getGroupInfoInteger(world.getName(), group, node, defaultValue);
+420    }
+421
+422    /**
+423     * Set a groups informational node (Integer) value
+424     * @param world World name
+425     * @param group Group name
+426     * @param node Permission node
+427     * @param value Value to set
+428     */
+429    abstract public void setGroupInfoInteger(String world, String group, String node, int value);
+430
+431    /**
+432     * Set a groups informational node (Integer) value
+433     * @param world World Object
+434     * @param group Group name
+435     * @param node Permission node
+436     * @param value Value to set
+437     */
+438    public void setGroupInfoInteger(World world, String group, String node, int value) {
+439        setGroupInfoInteger(world.getName(), group, node, value);
+440    }
+441
+442    /**
+443     * Get a players informational node (Double) value
+444     * @param world World name
+445     * @param player OfflinePlayer
+446     * @param node Permission node
+447     * @param defaultValue Default value
+448     * @return Value
+449     */
+450    public double getPlayerInfoDouble(String world, OfflinePlayer player, String node, double defaultValue) {
+451        return getPlayerInfoDouble(world, player.getName(), node, defaultValue);
+452    }
+453    
+454    /**
+455     * @deprecated As of VaultAPI 1.4 use {{@link #getPlayerInfoDouble(String, OfflinePlayer, String, double)} instead.
+456     * 
+457     * Get a players informational node (Double) value
+458     * @param world World name
+459     * @param player Player name
+460     * @param node Permission node
+461     * @param defaultValue Default value
+462     * @return Value
+463     */
+464    @Deprecated
+465    abstract public double getPlayerInfoDouble(String world, String player, String node, double defaultValue);
+466
+467    /**
+468     * @deprecated As of VaultAPI 1.4 use {{@link #getPlayerInfoDouble(String, OfflinePlayer, String, double)} instead
+469     * 
+470     * Get a players informational node (Double) value
+471     * @param world World Object
+472     * @param player Player name
+473     * @param node Permission node
+474     * @param defaultValue Default value
+475     * @return Value
+476     */
+477    @Deprecated
+478    public double getPlayerInfoDouble(World world, String player, String node, double defaultValue) {
+479        return getPlayerInfoDouble(world.getName(), player, node, defaultValue);
+480    }
+481
+482    /**
+483     * Get a players informational node (Double) value
+484     * @param player Player Object
+485     * @param node Permission node
+486     * @param defaultValue Default value
+487     * @return Value
+488     */
+489    public double getPlayerInfoDouble(Player player, String node, double defaultValue) {
+490        return getPlayerInfoDouble(player.getWorld().getName(), player, node, defaultValue);
+491    }
+492
+493    /**
+494     * Set a players informational node (Double) value
+495     * @param world World name
+496     * @param player OfflinePlayer
+497     * @param node Permission node
+498     * @param value Value to set
+499     */
+500    public void setPlayerInfoDouble(String world, OfflinePlayer player, String node, double value) {
+501        setPlayerInfoDouble(world, player.getName(), node, value);
+502    }
+503    
+504    /**
+505     * @deprecated As of VaultAPI 1.4 use {{@link #setPlayerInfoDouble(String, OfflinePlayer, String, double)} instead.
+506     * Set a players informational node (Double) value
+507     * @param world World name
+508     * @param player Player name
+509     * @param node Permission node
+510     * @param value Value to set
+511     */
+512    @Deprecated
+513    abstract public void setPlayerInfoDouble(String world, String player, String node, double value);
+514
+515    /**
+516     * @deprecated As of VaultAPI 1.4 use {{@link #setPlayerInfoDouble(String, OfflinePlayer, String, double)} instead.
+517     * Set a players informational node (Double) value
+518     * @param world World Object
+519     * @param player Player name
+520     * @param node Permission node
+521     * @param value Value to set
+522     */
+523    @Deprecated
+524    public void setPlayerInfoDouble(World world, String player, String node, double value) {
+525        setPlayerInfoDouble(world.getName(), player, node, value);
+526    }
+527
+528    /**
+529     * Set a players informational node (Double) value
+530     * @param player Player Object
+531     * @param node Permission node
+532     * @param value Value to set
+533     */
+534    public void setPlayerInfoDouble(Player player, String node, double value) {
+535        setPlayerInfoDouble(player.getWorld().getName(), player, node, value);
+536    }
+537
+538    /**
+539     * Get a groups informational node (Double) value
+540     * @param world World name
+541     * @param group Group name
+542     * @param node Permission node
+543     * @param defaultValue Default value
+544     * @return Value
+545     */
+546    abstract public double getGroupInfoDouble(String world, String group, String node, double defaultValue);
+547
+548    /**
+549     * Get a groups informational node (Double) value
+550     * @param world World Object
+551     * @param group Group name
+552     * @param node Permission node
+553     * @param defaultValue Default value
+554     * @return Value
+555     */
+556    public double getGroupInfoDouble(World world, String group, String node, double defaultValue) {
+557        return getGroupInfoDouble(world.getName(), group, node, defaultValue);
+558    }
+559
+560    /**
+561     * Set a groups informational node (Double) value
+562     * @param world World name
+563     * @param group Group name
+564     * @param node Permission node
+565     * @param value Value to set
+566     */
+567    abstract public void setGroupInfoDouble(String world, String group, String node, double value);
+568
+569    /**
+570     * Set a groups informational node (Double) value
+571     * @param world World Object
+572     * @param group Group name
+573     * @param node Permission node
+574     * @param value Value to set
+575     */
+576    public void setGroupInfoDouble(World world, String group, String node, double value) {
+577        setGroupInfoDouble(world.getName(), group, node, value);
+578    }
+579
+580    /**
+581     * Get a players informational node (Boolean) value
+582     * @param world World name
+583     * @param player OfflinePlayer
+584     * @param node Permission node
+585     * @param defaultValue Default value
+586     * @return Value
+587     */
+588    public boolean getPlayerInfoBoolean(String world, OfflinePlayer player, String node, boolean defaultValue) {
+589        return getPlayerInfoBoolean(world, player.getName(), node, defaultValue);
+590    }
+591    
+592    /**
+593     * @deprecated As of VaultAPI 1.4 use {{@link #getPlayerInfoBoolean(String, OfflinePlayer, String, boolean)} instead.
+594     * 
+595     * Get a players informational node (Boolean) value
+596     * @param world World name
+597     * @param player Player name
+598     * @param node Permission node
+599     * @param defaultValue Default value
+600     * @return Value
+601     */
+602    @Deprecated
+603    abstract public boolean getPlayerInfoBoolean(String world, String player, String node, boolean defaultValue);
+604
+605    /**
+606     * @deprecated As of VaultAPI 1.4 use {{@link #getPlayerInfoBoolean(String, OfflinePlayer, String, boolean)} instead.
+607     * 
+608     * Get a players informational node (Boolean) value
+609     * @param world World Object
+610     * @param player Player name
+611     * @param node Permission node
+612     * @param defaultValue Default value
+613     * @return Value
+614     */
+615    @Deprecated
+616    public boolean getPlayerInfoBoolean(World world, String player, String node, boolean defaultValue) {
+617        return getPlayerInfoBoolean(world.getName(), player, node, defaultValue);
+618    }
+619
+620    /**
+621     * Get a players informational node (Boolean) value
+622     * @param player Player Object
+623     * @param node Permission node
+624     * @param defaultValue Default value
+625     * @return Value
+626     */
+627    public boolean getPlayerInfoBoolean(Player player, String node, boolean defaultValue) {
+628        return getPlayerInfoBoolean(player.getWorld().getName(), player, node, defaultValue);
+629    }
+630
+631    /**
+632     * Set a players informational node (Boolean) value
+633     * @param world World name
+634     * @param player OfflinePlayer
+635     * @param node Permission node
+636     * @param value Value to set
+637     */
+638    public void setPlayerInfoBoolean(String world, OfflinePlayer player, String node, boolean value) {
+639        setPlayerInfoBoolean(world, player.getName(), node, value);
+640    }
+641    
+642    /**
+643     * @deprecated As of VaultAPI 1.4 use {{@link #setPlayerInfoBoolean(String, OfflinePlayer, String, boolean)} instead.
+644     * Set a players informational node (Boolean) value
+645     * @param world World name
+646     * @param player Player name
+647     * @param node Permission node
+648     * @param value Value to set
+649     */
+650    @Deprecated
+651    abstract public void setPlayerInfoBoolean(String world, String player, String node, boolean value);
+652
+653    /**
+654     * @deprecated As of VaultAPI 1.4 use {{@link #setPlayerInfoBoolean(String, OfflinePlayer, String, boolean)} instead.
+655     * Set a players informational node (Boolean) value
+656     * @param world World Object
+657     * @param player Player name
+658     * @param node Permission node
+659     * @param value Value to set
+660     */
+661    @Deprecated
+662    public void setPlayerInfoBoolean(World world, String player, String node, boolean value) {
+663        setPlayerInfoBoolean(world.getName(), player, node, value);
+664    }
+665
+666    /**
+667     * Set a players informational node (Boolean) value
+668     * @param player Player Object
+669     * @param node Permission node
+670     * @param value Value to set
+671     */
+672    public void setPlayerInfoBoolean(Player player, String node, boolean value) {
+673        setPlayerInfoBoolean(player.getWorld().getName(), player, node, value);
+674    }
+675
+676    /**
+677     * Get a groups informational node (Boolean) value
+678     * @param world Name of World
+679     * @param group Name of Group
+680     * @param node Permission node
+681     * @param defaultValue Default value
+682     * @return Value
+683     */
+684    abstract public boolean getGroupInfoBoolean(String world, String group, String node, boolean defaultValue);
+685
+686    /**
+687     * Set a players informational node (Boolean) value
+688     * @param world World Object
+689     * @param group Group name
+690     * @param node Permission node
+691     * @param defaultValue Default value
+692     * @return Value
+693     */
+694    public boolean getGroupInfoBoolean(World world, String group, String node, boolean defaultValue) {
+695        return getGroupInfoBoolean(world.getName(), group, node, defaultValue);
+696    }
+697
+698    /**
+699     * Set a groups informational node (Boolean) value
+700     * @param world World name
+701     * @param group Group name
+702     * @param node Permission node
+703     * @param value Value to set
+704     */
+705    abstract public void setGroupInfoBoolean(String world, String group, String node, boolean value);
+706
+707    /**
+708     * Set a players informational node (Boolean) value
+709     * @param world World Object
+710     * @param group Group name
+711     * @param node Permission node
+712     * @param value Value to set
+713     */
+714    public void setGroupInfoBoolean(World world, String group, String node, boolean value) {
+715        setGroupInfoBoolean(world.getName(), group, node, value);
+716    }
+717    
+718    /**
+719     * Get a players informational node (String) value
+720     * @param world World name
+721     * @param player OfflinePlayer
+722     * @param node Permission node
+723     * @param defaultValue Default value
+724     * @return Value
+725     */
+726    public String getPlayerInfoString(String world, OfflinePlayer player, String node, String defaultValue) {
+727        return getPlayerInfoString(world, player.getName(), node, defaultValue);
+728    }
+729
+730    /**
+731     * @deprecated As of VaultAPI 1.4 use {{@link #getPlayerInfoString(String, OfflinePlayer, String, String)} instead.
+732     *
+733     * Get a players informational node (String) value
+734     * @param world World name
+735     * @param player Player name
+736     * @param node Permission node
+737     * @param defaultValue Default value
+738     * @return Value
+739     */
+740    @Deprecated
+741    abstract public String getPlayerInfoString(String world, String player, String node, String defaultValue);
+742
+743    /**
+744     * @deprecated As of VaultAPI 1.4 use {{@link #getPlayerInfoString(String, OfflinePlayer, String, String)} instead.
+745     * Get a players informational node (String) value
+746     * @param world World Object
+747     * @param player Player name
+748     * @param node Permission node
+749     * @param defaultValue Default value
+750     * @return Value
+751     */
+752    @Deprecated
+753    public String getPlayerInfoString(World world, String player, String node, String defaultValue) {
+754        return getPlayerInfoString(world.getName(), player, node, defaultValue);
+755    }
+756
+757    /**
+758     * Get a players informational node (String) value
+759     * @param player Player Object
+760     * @param node Permission node
+761     * @param defaultValue Default value
+762     * @return Value
+763     */
+764    public String getPlayerInfoString(Player player, String node, String defaultValue) {
+765        return getPlayerInfoString(player.getWorld().getName(), player, node, defaultValue);
+766    }
+767    
+768    /**
+769     * Set a players informational node (String) value
+770     * @param world World name
+771     * @param player OfflinePlayer
+772     * @param node Permission node
+773     * @param value Value to set
+774     */
+775    public void setPlayerInfoString(String world, OfflinePlayer player, String node, String value) {
+776        setPlayerInfoString(world, player.getName(), node, value);
+777    }
+778
+779    /**
+780     * @deprecated As of VaultAPI 1.4 use {{@link #setPlayerInfoString(String, OfflinePlayer, String, String)} instead.
+781     * Set a players informational node (String) value
+782     * @param world World name
+783     * @param player Player name
+784     * @param node Permission node
+785     * @param value Value to set
+786     */
+787    @Deprecated
+788    abstract public void setPlayerInfoString(String world, String player, String node, String value);
+789
+790    /**
+791     * @deprecated As of VaultAPI 1.4 use {{@link #setPlayerInfoString(String, OfflinePlayer, String, String)} instead.
+792     * Set a players informational node (String) value
+793     * @param world World name
+794     * @param player Player name
+795     * @param node Permission node
+796     * @param value Value to set
+797     */
+798    @Deprecated
+799    public void setPlayerInfoString(World world, String player, String node, String value) {
+800        setPlayerInfoString(world.getName(), player, node, value);
+801    }
+802
+803    /**
+804     * Set a players informational node (String) value
+805     * @param player Player Object
+806     * @param node Permission node
+807     * @param value Value ot set
+808     */
+809    public void setPlayerInfoString(Player player, String node, String value) {
+810        setPlayerInfoString(player.getWorld().getName(), player, node, value);
+811    }
+812
+813    /**
+814     * Get a groups informational node (String) value
+815     * @param world Name of World
+816     * @param group Name of Group
+817     * @param node Permission node
+818     * @param defaultValue Default value
+819     * @return Value
+820     */
+821    abstract public String getGroupInfoString(String world, String group, String node, String defaultValue);
+822
+823    /**
+824     * Set a players informational node (String) value
+825     * @param world World Object
+826     * @param group Group name
+827     * @param node Permission node
+828     * @param defaultValue Default value
+829     * @return Value
+830     */
+831    public String getGroupInfoString(World world, String group, String node, String defaultValue) {
+832        return getGroupInfoString(world.getName(), group, node, defaultValue);
+833    }
+834
+835    /**
+836     * Set a groups informational node (String) value
+837     * @param world World name
+838     * @param group Group name
+839     * @param node Permission node
+840     * @param value Value to set
+841     */
+842    abstract public void setGroupInfoString(String world, String group, String node, String value);
+843
+844    /**
+845     * Set a groups informational node (String) value
+846     * @param world World name
+847     * @param group Group name
+848     * @param node Permission node
+849     * @param value Value to set
+850     */
+851    public void setGroupInfoString(World world, String group, String node, String value) {
+852        setGroupInfoString(world.getName(), group, node, value);
+853    }
+854    
+855    /**
+856     * Check if player is member of a group.
+857     * @param world World name
+858     * @param player OfflinePlayer
+859     * @param group Group name
+860     * @return Success or Failure
+861     */
+862    public boolean playerInGroup(String world, OfflinePlayer player, String group) {
+863        return perms.playerInGroup(world, player, group);
+864    }
+865    
+866    /**
+867     * @deprecated As of VaultAPI 1.4 use {{@link #playerInGroup(String, OfflinePlayer, String)} instead.
+868     * Check if player is member of a group.
+869     * @param world World name
+870     * @param player Player name
+871     * @param group Group name
+872     * @return Success or Failure
+873     */
+874    @Deprecated
+875    public boolean playerInGroup(String world, String player, String group) {
+876        return perms.playerInGroup(world, player, group);
+877    }
+878
+879    /**
+880     * @deprecated As of VaultAPI 1.4 use {{@link #playerInGroup(String, OfflinePlayer, String)} instead.
+881     * Check if player is member of a group.
+882     * @param world World Object
+883     * @param player Player name
+884     * @param group Group name
+885     * @return Success or Failure
+886     */
+887    @Deprecated
+888    public boolean playerInGroup(World world, String player, String group) {
+889        return playerInGroup(world.getName(), player, group);
+890    }
+891
+892    /**
+893     * Check if player is member of a group.
+894     * @param player Player Object
+895     * @param group Group name
+896     * @return Success or Failure
+897     */
+898    public boolean playerInGroup(Player player, String group) {
+899        return playerInGroup(player.getWorld().getName(), player, group);
+900    }
+901    
+902    /**
+903     * Gets the list of groups that this player has
+904     * @param world World name
+905     * @param player OfflinePlayer
+906     * @return Array of groups
+907     */
+908    public String[] getPlayerGroups(String world, OfflinePlayer player) {
+909        return perms.getPlayerGroups(world, player);
+910    }
+911    
+912    /**
+913     * @deprecated As of VaultAPI 1.4 use {{@link #getPlayerGroups(String, OfflinePlayer)} instead.
+914     * Gets the list of groups that this player has
+915     * @param world World name
+916     * @param player Player name
+917     * @return Array of groups
+918     */
+919    @Deprecated
+920    public String[] getPlayerGroups(String world, String player) {
+921        return perms.getPlayerGroups(world, player);
+922    }
+923
+924    /**
+925     * @deprecated As of VaultAPI 1.4 use {{@link #getPlayerGroups(String, OfflinePlayer)} instead.
+926     * Gets the list of groups that this player has
+927     * @param world World Object
+928     * @param player Player name
+929     * @return Array of groups
+930     */
+931    @Deprecated
+932    public String[] getPlayerGroups(World world, String player) {
+933        return getPlayerGroups(world.getName(), player);
+934    }
+935
+936    /**
+937     * Gets the list of groups that this player has
+938     * @param player Player Object
+939     * @return Array of groups
+940     */
+941    public String[] getPlayerGroups(Player player) {
+942        return getPlayerGroups(player.getWorld().getName(), player);
+943    }
+944    
+945    /**
+946     * Gets players primary group
+947     * @param world World name
+948     * @param player OfflinePlayer
+949     * @return Players primary group
+950     */
+951    public String getPrimaryGroup(String world, OfflinePlayer player) {
+952        return perms.getPrimaryGroup(world, player);
+953    }
+954    
+955    /**
+956     * @deprecated As of VaultAPI 1.4 use {{@link #getPrimaryGroup(String, OfflinePlayer)} instead. 
+957     * Gets players primary group
+958     * @param world World name
+959     * @param player Player name
+960     * @return Players primary group
+961     */
+962    @Deprecated
+963    public String getPrimaryGroup(String world, String player) {
+964        return perms.getPrimaryGroup(world, player);
+965    }
+966    
+967    /**
+968     * @deprecated As of VaultAPI 1.4 use {{@link #getPrimaryGroup(String, OfflinePlayer)} instead.
+969     * Gets players primary group
+970     * @param world World Object
+971     * @param player Player name
+972     * @return Players primary group
+973     */
+974    @Deprecated
+975    public String getPrimaryGroup(World world, String player) {
+976        return getPrimaryGroup(world.getName(), player);
+977    }
+978
+979    /**
+980     * Get players primary group
+981     * @param player Player Object
+982     * @return Players primary group
+983     */
+984    public String getPrimaryGroup(Player player) {
+985        return getPrimaryGroup(player.getWorld().getName(), player);
+986    }
+987    
+988    /**
+989     * Returns a list of all known groups
+990     * @return an Array of String of all groups
+991     */
+992    public String[] getGroups() {
+993        return perms.getGroups();
+994    }
+995}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ + diff --git a/src-html/net/milkbowl/vault/economy/AbstractEconomy.html b/src-html/net/milkbowl/vault/economy/AbstractEconomy.html new file mode 100644 index 0000000..228c469 --- /dev/null +++ b/src-html/net/milkbowl/vault/economy/AbstractEconomy.html @@ -0,0 +1,155 @@ + + + +Source code + + + +
+
001package net.milkbowl.vault.economy;
+002
+003import org.bukkit.OfflinePlayer;
+004
+005@SuppressWarnings("deprecation")
+006public abstract class AbstractEconomy implements Economy {
+007
+008        @Override
+009        public boolean hasAccount(OfflinePlayer player) {
+010                return hasAccount(player.getName());
+011        }
+012
+013        @Override
+014        public boolean hasAccount(OfflinePlayer player, String worldName) {
+015                return hasAccount(player.getName(), worldName);
+016        }
+017
+018        @Override
+019        public double getBalance(OfflinePlayer player) {
+020                return getBalance(player.getName());
+021        }
+022
+023        @Override
+024        public double getBalance(OfflinePlayer player, String world) {
+025                return getBalance(player.getName(), world);
+026        }
+027
+028        @Override
+029        public boolean has(OfflinePlayer player, double amount) {
+030                return has(player.getName(), amount);
+031        }
+032
+033        @Override
+034        public boolean has(OfflinePlayer player, String worldName, double amount) {
+035                return has(player.getName(), worldName, amount);
+036        }
+037
+038        @Override
+039        public EconomyResponse withdrawPlayer(OfflinePlayer player, double amount) {
+040                return withdrawPlayer(player.getName(), amount);
+041        }
+042
+043        @Override
+044        public EconomyResponse withdrawPlayer(OfflinePlayer player, String worldName, double amount) {
+045                return withdrawPlayer(player.getName(), worldName, amount);
+046        }
+047
+048        @Override
+049        public EconomyResponse depositPlayer(OfflinePlayer player, double amount) {
+050                return depositPlayer(player.getName(), amount);
+051        }
+052
+053        @Override
+054        public EconomyResponse depositPlayer(OfflinePlayer player, String worldName, double amount) {
+055                return depositPlayer(player.getName(), worldName, amount);
+056        }
+057
+058        @Override
+059        public EconomyResponse createBank(String name, OfflinePlayer player) {
+060                return createBank(name, player.getName());
+061        }
+062
+063        @Override
+064        public EconomyResponse isBankOwner(String name, OfflinePlayer player) {
+065                return isBankOwner(name, player.getName());
+066        }
+067
+068        @Override
+069        public EconomyResponse isBankMember(String name, OfflinePlayer player) {
+070                return isBankMember(name, player.getName());
+071        }
+072
+073        @Override
+074        public boolean createPlayerAccount(OfflinePlayer player) {
+075                return createPlayerAccount(player.getName());
+076        }
+077
+078        @Override
+079        public boolean createPlayerAccount(OfflinePlayer player, String worldName) {
+080                return createPlayerAccount(player.getName(), worldName);
+081        }
+082
+083}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ + diff --git a/src-html/net/milkbowl/vault/economy/Economy.html b/src-html/net/milkbowl/vault/economy/Economy.html new file mode 100644 index 0000000..d27fcf3 --- /dev/null +++ b/src-html/net/milkbowl/vault/economy/Economy.html @@ -0,0 +1,429 @@ + + + +Source code + + + +
+
001/* This file is part of Vault.
+002
+003    Vault is free software: you can redistribute it and/or modify
+004    it under the terms of the GNU Lesser General Public License as published by
+005    the Free Software Foundation, either version 3 of the License, or
+006    (at your option) any later version.
+007
+008    Vault is distributed in the hope that it will be useful,
+009    but WITHOUT ANY WARRANTY; without even the implied warranty of
+010    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+011    GNU Lesser General Public License for more details.
+012
+013    You should have received a copy of the GNU Lesser General Public License
+014    along with Vault.  If not, see <http://www.gnu.org/licenses/>.
+015 */
+016
+017package net.milkbowl.vault.economy;
+018
+019import java.util.List;
+020
+021import org.bukkit.OfflinePlayer;
+022
+023/**
+024 * The main economy API
+025 *
+026 */
+027public interface Economy {
+028
+029    /**
+030     * Checks if economy method is enabled.
+031     * @return Success or Failure
+032     */
+033    public boolean isEnabled();
+034
+035    /**
+036     * Gets name of economy method
+037     * @return Name of Economy Method
+038     */
+039    public String getName();
+040
+041    /**
+042     * Returns true if the given implementation supports banks.
+043     * @return true if the implementation supports banks
+044     */
+045    public boolean hasBankSupport();
+046
+047    /**
+048     * Some economy plugins round off after a certain number of digits.
+049     * This function returns the number of digits the plugin keeps
+050     * or -1 if no rounding occurs.
+051     * @return number of digits after the decimal point kept
+052     */
+053    public int fractionalDigits();
+054
+055    /**
+056     * Format amount into a human readable String This provides translation into
+057     * economy specific formatting to improve consistency between plugins.  
+058     *
+059     * @param amount to format
+060     * @return Human readable string describing amount
+061     */
+062    public String format(double amount);
+063
+064    /**
+065     * Returns the name of the currency in plural form.
+066     * If the economy being used does not support currency names then an empty string will be returned.
+067     * 
+068     * @return name of the currency (plural)
+069     */
+070    public String currencyNamePlural();
+071
+072
+073    /**
+074     * Returns the name of the currency in singular form.
+075     * If the economy being used does not support currency names then an empty string will be returned.
+076     * 
+077     * @return name of the currency (singular)
+078     */
+079    public String currencyNameSingular();
+080
+081    /**
+082     * 
+083     * @deprecated As of VaultAPI 1.4 use {@link #hasAccount(OfflinePlayer)} instead.
+084     */
+085    @Deprecated
+086    public boolean hasAccount(String playerName);
+087
+088    /**
+089     * Checks if this player has an account on the server yet
+090     * This will always return true if the player has joined the server at least once
+091     * as all major economy plugins auto-generate a player account when the player joins the server
+092     * 
+093     * @param player to check
+094     * @return if the player has an account
+095     */
+096    public boolean hasAccount(OfflinePlayer player);
+097    
+098    /**
+099     * @deprecated As of VaultAPI 1.4 use {@link #hasAccount(OfflinePlayer, String)} instead.
+100     */
+101    @Deprecated
+102    public boolean hasAccount(String playerName, String worldName);
+103
+104    /**
+105     * Checks if this player has an account on the server yet on the given world
+106     * This will always return true if the player has joined the server at least once
+107     * as all major economy plugins auto-generate a player account when the player joins the server
+108     * 
+109     * @param player to check in the world
+110     * @param worldName world-specific account
+111     * @return if the player has an account
+112     */
+113    public boolean hasAccount(OfflinePlayer player, String worldName);
+114
+115    /**
+116     * @deprecated As of VaultAPI 1.4 use {@link #getBalance(OfflinePlayer)} instead.
+117     */
+118    @Deprecated
+119    public double getBalance(String playerName);
+120    
+121    /**
+122     * Gets balance of a player
+123     * 
+124     * @param player of the player
+125     * @return Amount currently held in players account
+126     */
+127    public double getBalance(OfflinePlayer player);
+128
+129    /**
+130     * @deprecated As of VaultAPI 1.4 use {@link #getBalance(OfflinePlayer, String)} instead.
+131     */
+132    @Deprecated
+133    public double getBalance(String playerName, String world);
+134    
+135    /**
+136     * Gets balance of a player on the specified world.
+137     * IMPLEMENTATION SPECIFIC - if an economy plugin does not support this the global balance will be returned.
+138     * @param player to check
+139     * @param world name of the world
+140     * @return Amount currently held in players account
+141     */
+142    public double getBalance(OfflinePlayer player, String world);
+143    
+144    /**
+145     * @deprecated As of VaultAPI 1.4 use {@link #has(OfflinePlayer, double)} instead.
+146     */
+147    @Deprecated
+148    public boolean has(String playerName, double amount);
+149    
+150    /**
+151     * Checks if the player account has the amount - DO NOT USE NEGATIVE AMOUNTS
+152     * 
+153     * @param player to check
+154     * @param amount to check for
+155     * @return True if <b>player</b> has <b>amount</b>, False else wise
+156     */
+157    public boolean has(OfflinePlayer player, double amount);
+158
+159    /**
+160     * @deprecated As of VaultAPI 1.4 use @{link {@link #has(OfflinePlayer, String, double)} instead.
+161     */
+162    @Deprecated
+163    public boolean has(String playerName, String worldName, double amount);
+164    
+165    /**
+166     * Checks if the player account has the amount in a given world - DO NOT USE NEGATIVE AMOUNTS
+167     * IMPLEMENTATION SPECIFIC - if an economy plugin does not support this the global balance will be returned.
+168     * 
+169     * @param player to check
+170     * @param worldName to check with
+171     * @param amount to check for
+172     * @return True if <b>player</b> has <b>amount</b>, False else wise
+173     */
+174    public boolean has(OfflinePlayer player, String worldName, double amount);
+175
+176    /**
+177     * @deprecated As of VaultAPI 1.4 use {@link #withdrawPlayer(OfflinePlayer, double)} instead.
+178     */
+179    @Deprecated
+180    public EconomyResponse withdrawPlayer(String playerName, double amount);
+181
+182    /**
+183     * Withdraw an amount from a player - DO NOT USE NEGATIVE AMOUNTS
+184     * 
+185     * @param player to withdraw from
+186     * @param amount Amount to withdraw
+187     * @return Detailed response of transaction
+188     */
+189    public EconomyResponse withdrawPlayer(OfflinePlayer player, double amount);
+190
+191    /**
+192     * @deprecated As of VaultAPI 1.4 use {@link #withdrawPlayer(OfflinePlayer, String, double)} instead.
+193     */
+194    @Deprecated
+195    public EconomyResponse withdrawPlayer(String playerName, String worldName, double amount);
+196    
+197    /**
+198     * Withdraw an amount from a player on a given world - DO NOT USE NEGATIVE AMOUNTS
+199     * IMPLEMENTATION SPECIFIC - if an economy plugin does not support this the global balance will be returned.
+200     * @param player to withdraw from
+201     * @param worldName - name of the world
+202     * @param amount Amount to withdraw
+203     * @return Detailed response of transaction
+204     */
+205    public EconomyResponse withdrawPlayer(OfflinePlayer player, String worldName, double amount);
+206
+207    /**
+208     * @deprecated As of VaultAPI 1.4 use {@link #depositPlayer(OfflinePlayer, double)} instead.
+209     */
+210    @Deprecated
+211    public EconomyResponse depositPlayer(String playerName, double amount);
+212
+213    /**
+214     * Deposit an amount to a player - DO NOT USE NEGATIVE AMOUNTS
+215     * 
+216     * @param player to deposit to
+217     * @param amount Amount to deposit
+218     * @return Detailed response of transaction
+219     */
+220    public EconomyResponse depositPlayer(OfflinePlayer player, double amount);
+221
+222    /**
+223     * @deprecated As of VaultAPI 1.4 use {@link #depositPlayer(OfflinePlayer, String, double)} instead.
+224     */
+225    @Deprecated
+226    public EconomyResponse depositPlayer(String playerName, String worldName, double amount);
+227   
+228    /**
+229     * Deposit an amount to a player - DO NOT USE NEGATIVE AMOUNTS
+230     * IMPLEMENTATION SPECIFIC - if an economy plugin does not support this the global balance will be returned.
+231     * 
+232     * @param player to deposit to
+233     * @param worldName name of the world
+234     * @param amount Amount to deposit
+235     * @return Detailed response of transaction
+236     */
+237    public EconomyResponse depositPlayer(OfflinePlayer player, String worldName, double amount);
+238
+239    /**
+240     * @deprecated As of VaultAPI 1.4 use {{@link #createBank(String, OfflinePlayer)} instead.
+241     */
+242    @Deprecated
+243    public EconomyResponse createBank(String name, String player);
+244
+245    /**
+246     * Creates a bank account with the specified name and the player as the owner
+247     * @param name of account
+248     * @param player the account should be linked to
+249     * @return EconomyResponse Object
+250     */
+251    public EconomyResponse createBank(String name, OfflinePlayer player);
+252
+253    /**
+254     * Deletes a bank account with the specified name.
+255     * @param name of the back to delete
+256     * @return if the operation completed successfully
+257     */
+258    public EconomyResponse deleteBank(String name);
+259
+260    /**
+261     * Returns the amount the bank has
+262     * @param name of the account
+263     * @return EconomyResponse Object
+264     */
+265    public EconomyResponse bankBalance(String name);
+266
+267    /**
+268     * Returns true or false whether the bank has the amount specified - DO NOT USE NEGATIVE AMOUNTS
+269     * 
+270     * @param name of the account
+271     * @param amount to check for
+272     * @return EconomyResponse Object
+273     */
+274    public EconomyResponse bankHas(String name, double amount);
+275
+276    /**
+277     * Withdraw an amount from a bank account - DO NOT USE NEGATIVE AMOUNTS
+278     * 
+279     * @param name of the account
+280     * @param amount to withdraw
+281     * @return EconomyResponse Object
+282     */
+283    public EconomyResponse bankWithdraw(String name, double amount);
+284
+285    /**
+286     * Deposit an amount into a bank account - DO NOT USE NEGATIVE AMOUNTS
+287     * 
+288     * @param name of the account
+289     * @param amount to deposit
+290     * @return EconomyResponse Object
+291     */
+292    public EconomyResponse bankDeposit(String name, double amount);
+293    
+294    /**
+295     * @deprecated As of VaultAPI 1.4 use {{@link #isBankOwner(String, OfflinePlayer)} instead.
+296     */
+297    @Deprecated
+298    public EconomyResponse isBankOwner(String name, String playerName);
+299    
+300    /**
+301     * Check if a player is the owner of a bank account
+302     * 
+303     * @param name of the account
+304     * @param player to check for ownership
+305     * @return EconomyResponse Object
+306     */
+307    public EconomyResponse isBankOwner(String name, OfflinePlayer player);
+308
+309    /**
+310     * @deprecated As of VaultAPI 1.4 use {{@link #isBankMember(String, OfflinePlayer)} instead.
+311     */
+312    @Deprecated
+313    public EconomyResponse isBankMember(String name, String playerName);
+314    
+315    /**
+316     * Check if the player is a member of the bank account
+317     * 
+318     * @param name of the account
+319     * @param player to check membership
+320     * @return EconomyResponse Object
+321     */
+322    public EconomyResponse isBankMember(String name, OfflinePlayer player);
+323
+324    /**
+325     * Gets the list of banks
+326     * @return the List of Banks
+327     */
+328    public List<String> getBanks();
+329
+330    /**
+331     * @deprecated As of VaultAPI 1.4 use {{@link #createPlayerAccount(OfflinePlayer)} instead.
+332     */
+333    @Deprecated
+334    public boolean createPlayerAccount(String playerName);
+335    
+336    /**
+337     * Attempts to create a player account for the given player
+338     * @param player OfflinePlayer
+339     * @return if the account creation was successful
+340     */
+341    public boolean createPlayerAccount(OfflinePlayer player);
+342    
+343    /**
+344     * @deprecated As of VaultAPI 1.4 use {{@link #createPlayerAccount(OfflinePlayer, String)} instead.
+345     */
+346    @Deprecated
+347    public boolean createPlayerAccount(String playerName, String worldName);
+348    
+349    /**
+350     * Attempts to create a player account for the given player on the specified world
+351     * IMPLEMENTATION SPECIFIC - if an economy plugin does not support this the global balance will be returned.
+352     * @param player OfflinePlayer
+353     * @param worldName String name of the world
+354     * @return if the account creation was successful
+355     */
+356    public boolean createPlayerAccount(OfflinePlayer player, String worldName);
+357}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ + diff --git a/src-html/net/milkbowl/vault/economy/EconomyResponse.ResponseType.html b/src-html/net/milkbowl/vault/economy/EconomyResponse.ResponseType.html new file mode 100644 index 0000000..ee0c603 --- /dev/null +++ b/src-html/net/milkbowl/vault/economy/EconomyResponse.ResponseType.html @@ -0,0 +1,161 @@ + + + +Source code + + + +
+
001/* This file is part of Vault.
+002
+003    Vault is free software: you can redistribute it and/or modify
+004    it under the terms of the GNU Lesser General Public License as published by
+005    the Free Software Foundation, either version 3 of the License, or
+006    (at your option) any later version.
+007
+008    Vault is distributed in the hope that it will be useful,
+009    but WITHOUT ANY WARRANTY; without even the implied warranty of
+010    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+011    GNU Lesser General Public License for more details.
+012
+013    You should have received a copy of the GNU Lesser General Public License
+014    along with Vault.  If not, see <http://www.gnu.org/licenses/>.
+015 */
+016package net.milkbowl.vault.economy;
+017
+018/**
+019 * Indicates a typical Return for an Economy method.  
+020 * It includes a {@link ResponseType} indicating whether the plugin currently being used for Economy actually allows
+021 * the method, or if the operation was a success or failure.
+022 *
+023 */
+024public class EconomyResponse {
+025
+026    /**
+027     * Enum for types of Responses indicating the status of a method call.
+028     */
+029    public static enum ResponseType {
+030        SUCCESS(1),
+031        FAILURE(2),
+032        NOT_IMPLEMENTED(3);
+033
+034        private int id;
+035
+036        ResponseType(int id) {
+037            this.id = id;
+038        }
+039
+040        int getId() {
+041            return id;
+042        }
+043    }
+044
+045    /**
+046     * Amount modified by calling method
+047     */
+048    public final double amount;
+049    /**
+050     * New balance of account
+051     */
+052    public final double balance;
+053    /**
+054     * Success or failure of call. Using Enum of ResponseType to determine valid
+055     * outcomes
+056     */
+057    public final ResponseType type;
+058    /**
+059     * Error message if the variable 'type' is ResponseType.FAILURE
+060     */
+061    public final String errorMessage;
+062
+063    /**
+064     * Constructor for EconomyResponse
+065     * @param amount Amount modified during operation
+066     * @param balance New balance of account
+067     * @param type Success or failure type of the operation
+068     * @param errorMessage Error message if necessary (commonly null)
+069     */
+070    public EconomyResponse(double amount, double balance, ResponseType type, String errorMessage) {
+071        this.amount = amount;
+072        this.balance = balance;
+073        this.type = type;
+074        this.errorMessage = errorMessage;
+075    }
+076
+077    /**
+078     * Checks if an operation was successful
+079     * @return Value
+080     */
+081    public boolean transactionSuccess() {
+082        switch (type) {
+083        case SUCCESS:
+084            return true;
+085        default:
+086            return false;
+087        }
+088    }
+089}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ + diff --git a/src-html/net/milkbowl/vault/economy/EconomyResponse.html b/src-html/net/milkbowl/vault/economy/EconomyResponse.html new file mode 100644 index 0000000..ee0c603 --- /dev/null +++ b/src-html/net/milkbowl/vault/economy/EconomyResponse.html @@ -0,0 +1,161 @@ + + + +Source code + + + +
+
001/* This file is part of Vault.
+002
+003    Vault is free software: you can redistribute it and/or modify
+004    it under the terms of the GNU Lesser General Public License as published by
+005    the Free Software Foundation, either version 3 of the License, or
+006    (at your option) any later version.
+007
+008    Vault is distributed in the hope that it will be useful,
+009    but WITHOUT ANY WARRANTY; without even the implied warranty of
+010    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+011    GNU Lesser General Public License for more details.
+012
+013    You should have received a copy of the GNU Lesser General Public License
+014    along with Vault.  If not, see <http://www.gnu.org/licenses/>.
+015 */
+016package net.milkbowl.vault.economy;
+017
+018/**
+019 * Indicates a typical Return for an Economy method.  
+020 * It includes a {@link ResponseType} indicating whether the plugin currently being used for Economy actually allows
+021 * the method, or if the operation was a success or failure.
+022 *
+023 */
+024public class EconomyResponse {
+025
+026    /**
+027     * Enum for types of Responses indicating the status of a method call.
+028     */
+029    public static enum ResponseType {
+030        SUCCESS(1),
+031        FAILURE(2),
+032        NOT_IMPLEMENTED(3);
+033
+034        private int id;
+035
+036        ResponseType(int id) {
+037            this.id = id;
+038        }
+039
+040        int getId() {
+041            return id;
+042        }
+043    }
+044
+045    /**
+046     * Amount modified by calling method
+047     */
+048    public final double amount;
+049    /**
+050     * New balance of account
+051     */
+052    public final double balance;
+053    /**
+054     * Success or failure of call. Using Enum of ResponseType to determine valid
+055     * outcomes
+056     */
+057    public final ResponseType type;
+058    /**
+059     * Error message if the variable 'type' is ResponseType.FAILURE
+060     */
+061    public final String errorMessage;
+062
+063    /**
+064     * Constructor for EconomyResponse
+065     * @param amount Amount modified during operation
+066     * @param balance New balance of account
+067     * @param type Success or failure type of the operation
+068     * @param errorMessage Error message if necessary (commonly null)
+069     */
+070    public EconomyResponse(double amount, double balance, ResponseType type, String errorMessage) {
+071        this.amount = amount;
+072        this.balance = balance;
+073        this.type = type;
+074        this.errorMessage = errorMessage;
+075    }
+076
+077    /**
+078     * Checks if an operation was successful
+079     * @return Value
+080     */
+081    public boolean transactionSuccess() {
+082        switch (type) {
+083        case SUCCESS:
+084            return true;
+085        default:
+086            return false;
+087        }
+088    }
+089}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ + diff --git a/src-html/net/milkbowl/vault/item/ItemInfo.html b/src-html/net/milkbowl/vault/item/ItemInfo.html new file mode 100644 index 0000000..ce80ec2 --- /dev/null +++ b/src-html/net/milkbowl/vault/item/ItemInfo.html @@ -0,0 +1,177 @@ + + + +Source code + + + +
+
001/* This file is part of Vault.
+002
+003    Vault is free software: you can redistribute it and/or modify
+004    it under the terms of the GNU Lesser General Public License as published by
+005    the Free Software Foundation, either version 3 of the License, or
+006    (at your option) any later version.
+007
+008    Vault is distributed in the hope that it will be useful,
+009    but WITHOUT ANY WARRANTY; without even the implied warranty of
+010    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+011    GNU Lesser General Public License for more details.
+012
+013    You should have received a copy of the GNU Lesser General Public License
+014    along with Vault.  If not, see <http://www.gnu.org/licenses/>.
+015 */
+016package net.milkbowl.vault.item;
+017
+018import org.bukkit.Material;
+019import org.bukkit.inventory.ItemStack;
+020
+021public class ItemInfo {
+022
+023    public final Material material;
+024    public final short subTypeId;
+025    public final String name;
+026    public final String[][] search;
+027    
+028    public ItemInfo(String name, String[][] search, Material material) {
+029        this.material = material;
+030        this.name = name;
+031        this.subTypeId = 0;
+032        this.search = search.clone();
+033    }
+034
+035    public ItemInfo(String name, String[][] search, Material material, short subTypeId) {
+036        this.name = name;
+037        this.material = material;
+038        this.subTypeId = subTypeId;
+039        this.search = search.clone();
+040    }
+041
+042    public Material getType() {
+043        return material;
+044    }
+045
+046    public short getSubTypeId() {
+047        return subTypeId;
+048    }
+049
+050    public int getStackSize() {
+051        return material.getMaxStackSize();
+052    }
+053
+054    @Deprecated
+055    public int getId() {
+056        return material.getId();
+057    }
+058
+059    public boolean isEdible() {
+060        return material.isEdible();
+061    }
+062    
+063    public boolean isBlock() {
+064        return material.isBlock();
+065    }
+066    
+067    public String getName() {
+068        return name;
+069    }
+070
+071    @Override
+072    public int hashCode() {
+073        int hash = 7;
+074        hash = 17 * hash + this.getId();
+075        hash = 17 * hash + this.subTypeId;
+076        return hash;
+077    }
+078
+079    public boolean isDurable() {
+080        return (material.getMaxDurability() > 0);
+081    }
+082
+083    public ItemStack toStack() {
+084        return new ItemStack(this.material, 1, subTypeId);
+085    }
+086
+087    @SuppressWarnings("deprecation")
+088    @Override
+089    public String toString() {
+090        return String.format("%s[%d:%d]", name, material.getId(), subTypeId);
+091    }
+092    
+093    @Override
+094    public boolean equals(Object obj) {
+095        if (obj == null) {
+096            return false;
+097        } else if (this == obj) {
+098            return true;
+099        } else if (!(obj instanceof ItemInfo)) {
+100            return false;
+101        } else {
+102            return ((ItemInfo) obj).material == this.material && ((ItemInfo) obj).subTypeId == this.subTypeId;
+103        }
+104    }
+105}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ + diff --git a/src-html/net/milkbowl/vault/item/Items.html b/src-html/net/milkbowl/vault/item/Items.html new file mode 100644 index 0000000..7565ab6 --- /dev/null +++ b/src-html/net/milkbowl/vault/item/Items.html @@ -0,0 +1,1035 @@ + + + +Source code + + + +
+
001/* This file is part of Vault.
+002
+003    Vault is free software: you can redistribute it and/or modify
+004    it under the terms of the GNU Lesser General Public License as published by
+005    the Free Software Foundation, either version 3 of the License, or
+006    (at your option) any later version.
+007
+008    Vault is distributed in the hope that it will be useful,
+009    but WITHOUT ANY WARRANTY; without even the implied warranty of
+010    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+011    GNU Lesser General Public License for more details.
+012
+013    You should have received a copy of the GNU Lesser General Public License
+014    along with Vault.  If not, see <http://www.gnu.org/licenses/>.
+015 */
+016package net.milkbowl.vault.item;
+017
+018import java.util.ArrayList;
+019import java.util.Collections;
+020import java.util.List;
+021import java.util.concurrent.CopyOnWriteArrayList;
+022import java.util.regex.Matcher;
+023import java.util.regex.Pattern;
+024
+025import org.bukkit.Material;
+026import org.bukkit.inventory.ItemStack;
+027
+028public class Items {
+029
+030    private static final List<ItemInfo> items = new CopyOnWriteArrayList<ItemInfo>();
+031
+032    /**
+033     * Returns the list of ItemInfo's registered in Vault as an UnmodifiableList.
+034     * @return list of Items
+035     */
+036    public static List<ItemInfo> getItemList() {
+037        return Collections.unmodifiableList(items);
+038    }
+039
+040    static {
+041        items.add(new ItemInfo("Air", new String[][]{{"air"}}, Material.AIR));
+042        items.add(new ItemInfo("Stone", new String[][]{{"ston"}, {"smoo", "sto"}}, Material.STONE));
+043        items.add(new ItemInfo("Grass", new String[][]{{"gras"}}, Material.GRASS));
+044        items.add(new ItemInfo("Dirt", new String[][]{{"dirt"}}, Material.DIRT));
+045        items.add(new ItemInfo("Cobblestone", new String[][]{{"cobb", "sto"}, {"cobb"}}, Material.COBBLESTONE));
+046        items.add(new ItemInfo("Oak Plank", new String[][]{{"wood"}, {"oak", "plank"}, {"oak", "wood"}}, Material.WOOD));
+047        items.add(new ItemInfo("Spruce Plank", new String[][]{{"spru", "plank"}, {"spruc", "wood"}}, Material.WOOD, (short) 1));
+048        items.add(new ItemInfo("Birch Plank", new String[][]{{"birch", "plank"}, {"birch", "wood"}}, Material.WOOD, (short) 2));
+049        items.add(new ItemInfo("Jungle Plank", new String[][]{{"jung", "plank"}, {"jung", "wood"}}, Material.WOOD, (short) 3));
+050        items.add(new ItemInfo("Oak Sapling", new String[][]{{"sapl"}, {"sapl", "oak"}}, Material.SAPLING));
+051        items.add(new ItemInfo("Spruce Sapling", new String[][]{{"sapl", "spruc"}}, Material.SAPLING, (short) 1));
+052        items.add(new ItemInfo("Birch Sapling", new String[][]{{"sapl", "birch"}}, Material.SAPLING, (short) 2));
+053        items.add(new ItemInfo("Jungle Sapling", new String[][]{{"sapl", "jungle"}}, Material.SAPLING, (short) 3));
+054        items.add(new ItemInfo("Bedrock", new String[][]{{"rock"}}, Material.BEDROCK));
+055        items.add(new ItemInfo("Water", new String[][]{{"water"}}, Material.WATER));
+056        items.add(new ItemInfo("Lava", new String[][]{{"lava"}}, Material.LAVA));
+057        items.add(new ItemInfo("Sand", new String[][]{{"sand"}}, Material.SAND));
+058        items.add(new ItemInfo("Gold Ore", new String[][]{{"ore", "gold"}}, Material.GOLD_ORE));
+059        items.add(new ItemInfo("Iron Ore", new String[][]{{"ore", "iron"}}, Material.IRON_ORE));
+060        items.add(new ItemInfo("Coal Ore", new String[][]{{"ore", "coal"}}, Material.COAL_ORE));
+061        items.add(new ItemInfo("Gravel", new String[][]{{"grav"}}, Material.GRAVEL));
+062        items.add(new ItemInfo("Oak Log", new String[][]{{"oak"}, {"log"}, {"oak", "log"}}, Material.LOG));
+063        items.add(new ItemInfo("Spruce Log", new String[][]{{"spruc"}, {"spruc", "log"}}, Material.LOG, (short) 1));
+064        items.add(new ItemInfo("Birch Log", new String[][]{{"birch"}, {"birch", "log"}}, Material.LOG, (short) 2));
+065        items.add(new ItemInfo("Jungle Log", new String[][]{{"jung", "log"}}, Material.LOG, (short) 3));
+066        items.add(new ItemInfo("Leaves Block", new String[][]{{"blo", "leaf"}, {"blo", "leaves"}}, Material.LEAVES));
+067        items.add(new ItemInfo("Spruce Leaves Block", new String[][]{{"blo", "lea", "spruc"}}, Material.LEAVES, (short) 1));
+068        items.add(new ItemInfo("Birch Leaves Block", new String[][]{{"blo", "lea", "birch"}}, Material.LEAVES, (short) 2));
+069        items.add(new ItemInfo("Jungle Leaves Block", new String[][]{{"blo", "lea", "jung"}}, Material.LEAVES, (short) 3));
+070        items.add(new ItemInfo("Leaves", new String[][]{{"leaf"}, {"leaves"}}, Material.LEAVES, (short) 4));
+071        items.add(new ItemInfo("Spruce Leaves", new String[][]{{"lea", "spruce"}}, Material.LEAVES, (short) 5));
+072        items.add(new ItemInfo("Birch Leaves", new String[][]{{"lea", "birch"}}, Material.LEAVES, (short) 6));
+073        items.add(new ItemInfo("Jungle Leaves", new String[][]{{"lea", "jung"}}, Material.LEAVES, (short) 7));
+074        items.add(new ItemInfo("Sponge", new String[][]{{"sponge"}}, Material.SPONGE));
+075        items.add(new ItemInfo("Glass", new String[][]{{"glas"}, {"sili"}}, Material.GLASS));
+076        items.add(new ItemInfo("Lapis Lazuli Ore", new String[][]{{"lap", "laz", "ore"}, {"lazul", "ore"}, {"ore", "lapiz"}}, Material.LAPIS_ORE));
+077        items.add(new ItemInfo("Lapis Lazuli Block", new String[][]{{"lap", "laz", "bloc"}, {"lazu", "bloc"}, {"blo", "lapi"}}, Material.LAPIS_BLOCK));
+078        items.add(new ItemInfo("Dispenser", new String[][]{{"dispen"}}, Material.DISPENSER));
+079        items.add(new ItemInfo("Sandstone", new String[][]{{"sand", "st"}}, Material.SANDSTONE));
+080        items.add(new ItemInfo("Chiseled Sandstone", new String[][]{{"chis", "sand", "sto"}}, Material.SANDSTONE, (short) 1));
+081        items.add(new ItemInfo("Smooth Sandstone", new String[][]{{"smoo", "sand", "sto"}}, Material.SANDSTONE, (short) 2));
+082        items.add(new ItemInfo("Note Block", new String[][]{{"note"}}, Material.NOTE_BLOCK));
+083        items.add(new ItemInfo("Bed Block", new String[][]{{"block", "bed"}}, Material.BED_BLOCK));
+084        items.add(new ItemInfo("Powered Rail", new String[][]{{"rail", "pow"}, {"trac", "pow"}, {"boost"}}, Material.POWERED_RAIL));
+085        items.add(new ItemInfo("Detector Rail", new String[][]{{"rail", "det"}, {"trac", "det"}, {"detec"}}, Material.DETECTOR_RAIL));
+086        items.add(new ItemInfo("Sticky Piston", new String[][]{{"stic", "pis"}}, Material.PISTON_STICKY_BASE));
+087        items.add(new ItemInfo("Web", new String[][]{{"web"}, {"cobw"}}, Material.WEB));
+088        items.add(new ItemInfo("Dead Shrub", new String[][]{{"dead", "shru"}, {"dese", "shru"}, {"shrub"}}, Material.LONG_GRASS, (short) 0));
+089        items.add(new ItemInfo("Tall Grass", new String[][]{{"tall", "gras"}, {"long", "gras"}}, Material.LONG_GRASS, (short) 1));
+090        items.add(new ItemInfo("Fern", new String[][]{{"fern"}}, Material.LONG_GRASS, (short) 2));
+091        items.add(new ItemInfo("Piston", new String[][]{{"pisto"}}, Material.PISTON_BASE));
+092        items.add(new ItemInfo("White Wool", new String[][]{{"wool", "whit"}, {"wool"}}, Material.WOOL));
+093        items.add(new ItemInfo("Orange Wool", new String[][]{{"wool", "ora"}}, Material.WOOL, (short) 1));
+094        items.add(new ItemInfo("Magenta Wool", new String[][]{{"wool", "mag"}}, Material.WOOL, (short) 2));
+095        items.add(new ItemInfo("Light Blue Wool", new String[][]{{"wool", "lig", "blue"}}, Material.WOOL, (short) 3));
+096        items.add(new ItemInfo("Yellow Wool", new String[][]{{"wool", "yell"}}, Material.WOOL, (short) 4));
+097        items.add(new ItemInfo("Light Green Wool", new String[][]{{"wool", "lig", "gree"}, {"wool", "gree"}}, Material.WOOL, (short) 5));
+098        items.add(new ItemInfo("Pink Wool", new String[][]{{"wool", "pink"}}, Material.WOOL, (short) 6));
+099        items.add(new ItemInfo("Gray Wool", new String[][]{{"wool", "gray"}, {"wool", "grey"}}, Material.WOOL, (short) 7));
+100        items.add(new ItemInfo("Light Gray Wool", new String[][]{{"lig", "wool", "gra"}, {"lig", "wool", "gre"}}, Material.WOOL, (short) 8));
+101        items.add(new ItemInfo("Cyan Wool", new String[][]{{"wool", "cya"}}, Material.WOOL, (short) 9));
+102        items.add(new ItemInfo("Purple Wool", new String[][]{{"wool", "pur"}}, Material.WOOL, (short) 10));
+103        items.add(new ItemInfo("Blue Wool", new String[][]{{"wool", "blue"}}, Material.WOOL, (short) 11));
+104        items.add(new ItemInfo("Brown Wool", new String[][]{{"wool", "brow"}}, Material.WOOL, (short) 12));
+105        items.add(new ItemInfo("Dark Green Wool", new String[][]{{"wool", "dar", "gree"}, {"wool", "gree"}}, Material.WOOL, (short) 13));
+106        items.add(new ItemInfo("Red Wool", new String[][]{{"wool", "red"}}, Material.WOOL, (short) 14));
+107        items.add(new ItemInfo("Black Wool", new String[][]{{"wool", "bla"}}, Material.WOOL, (short) 15));
+108        items.add(new ItemInfo("Dandelion", new String[][]{{"flow", "yell"}, {"dande"}}, Material.YELLOW_FLOWER));
+109        items.add(new ItemInfo("Brown Mushroom", new String[][]{{"mush", "bro"}}, Material.BROWN_MUSHROOM));
+110        items.add(new ItemInfo("Red Mushroom", new String[][]{{"mush", "red"}}, Material.RED_MUSHROOM));
+111        items.add(new ItemInfo("Gold Block", new String[][]{{"gold", "bl"}}, Material.GOLD_BLOCK));
+112        items.add(new ItemInfo("Iron Block", new String[][]{{"iron", "bl"}}, Material.IRON_BLOCK));
+113        items.add(new ItemInfo("Double Stone Slab", new String[][]{{"doub", "slab"}, {"doub", "slab", "sto"}, {"doub", "step", "sto"}}, Material.DOUBLE_STEP));
+114        items.add(new ItemInfo("Double Sandstone Slab", new String[][]{{"doub", "slab", "sand", "sto"}, {"doub", "step", "sand", "sto"}}, Material.DOUBLE_STEP, (short) 1));
+115        items.add(new ItemInfo("Double Wooden Slab", new String[][]{{"doub", "slab", "wood"}, {"doub", "step", "wood"}}, Material.DOUBLE_STEP, (short) 2));
+116        items.add(new ItemInfo("Double Cobblestone Slab", new String[][]{{"doub", "slab", "cob", "sto"}, {"doub", "slab", "cob"}, {"doub", "step", "cob"}}, Material.DOUBLE_STEP, (short) 3));
+117        items.add(new ItemInfo("Double Brick Slab", new String[][]{{"doub", "slab", "bri"}}, Material.DOUBLE_STEP, (short) 4));
+118        items.add(new ItemInfo("Double Stone Brick Slab", new String[][]{{"doub", "slab", "smoo"}, {"doub", "slab", "sto", "bri"}}, Material.DOUBLE_STEP, (short) 5));
+119        items.add(new ItemInfo("Double Smooth Sandstone Slab", new String[][]{{"doub", "slab", "sand", "smoo"}}, Material.DOUBLE_STEP, (short) 9));
+120        items.add(new ItemInfo("Stone Slab", new String[][]{{"slab", "sto"}, {"slab"}, {"step", "ston"}}, Material.STEP));
+121        items.add(new ItemInfo("Sandstone Slab", new String[][]{{"slab", "sand", "sto"}, {"step", "sand", "sto"}}, Material.STEP, (short) 1));
+122        items.add(new ItemInfo("Wooden Slab", new String[][]{{"slab", "woo"}, {"step", "woo"}}, Material.STEP, (short) 2));
+123        items.add(new ItemInfo("Cobblestone Slab", new String[][]{{"slab", "cob", "sto"}, {"slab", "cob"}}, Material.STEP, (short) 3));
+124        items.add(new ItemInfo("Brick Slab", new String[][]{{"slab", "bri"}}, Material.STEP, (short) 4));
+125        items.add(new ItemInfo("Stone Brick Slab", new String[][]{{"slab", "sto", "bri"}}, Material.STEP, (short) 5));
+126        items.add(new ItemInfo("Brick", new String[][]{{"bric"}}, Material.BRICK));
+127        items.add(new ItemInfo("TNT", new String[][]{{"tnt"}, {"boom"}}, Material.TNT));
+128        items.add(new ItemInfo("Bookshelf", new String[][]{{"bookshe"}, {"book", "she"}}, Material.BOOKSHELF));
+129        items.add(new ItemInfo("Moss Stone", new String[][]{{"moss", "sto"}, {"moss"}}, Material.MOSSY_COBBLESTONE));
+130        items.add(new ItemInfo("Obsidian", new String[][]{{"obsi"}}, Material.OBSIDIAN));
+131        items.add(new ItemInfo("Torch", new String[][]{{"torc"}}, Material.TORCH));
+132        items.add(new ItemInfo("Fire", new String[][]{{"fire"}}, Material.FIRE));
+133        items.add(new ItemInfo("Monster Spawner", new String[][]{{"spawn"}}, Material.MOB_SPAWNER));
+134        items.add(new ItemInfo("Oak Wood Stairs", new String[][]{{"stair", "wood"}, {"oak", "stair"}}, Material.WOOD_STAIRS));
+135        items.add(new ItemInfo("Jungle Wood Stairs", new String[][]{{"jungle", "stair"}, {"jung", "stair", "woo"}}, Material.JUNGLE_WOOD_STAIRS));
+136        items.add(new ItemInfo("Spruce Wood Stairs", new String[][]{{"spruce", "stai"}, {"spru", "stair", "woo"}}, Material.SPRUCE_WOOD_STAIRS));
+137        items.add(new ItemInfo("Birch Wood Stairs", new String[][]{{"birch", "stair"}, {"birc", "stai", "woo"}}, Material.BIRCH_WOOD_STAIRS));
+138        items.add(new ItemInfo("Chest", new String[][]{{"chest"}}, Material.CHEST));
+139        items.add(new ItemInfo("Diamond Ore", new String[][]{{"ore", "diam"}}, Material.DIAMOND_ORE));
+140        items.add(new ItemInfo("Diamond Block", new String[][]{{"diam", "bl"}}, Material.DIAMOND_BLOCK));
+141        items.add(new ItemInfo("Crafting Table", new String[][]{{"benc"}, {"squa"}, {"craft"}}, Material.WORKBENCH));
+142        items.add(new ItemInfo("Farmland", new String[][]{{"soil"}, {"farm"}}, Material.SOIL));
+143        items.add(new ItemInfo("Furnace", new String[][]{{"furna"}, {"cooke"}}, Material.FURNACE));
+144        items.add(new ItemInfo("Ladder", new String[][]{{"ladd"}}, Material.LADDER));
+145        items.add(new ItemInfo("Rails", new String[][]{{"rail"}, {"trac"}}, Material.RAILS));
+146        items.add(new ItemInfo("Cobblestone Stairs", new String[][]{{"stair", "cob", "sto"}, {"stair", "cob"}}, Material.COBBLESTONE_STAIRS));
+147        items.add(new ItemInfo("Lever", new String[][]{{"lever"}, {"switc"}}, Material.LEVER));
+148        items.add(new ItemInfo("Stone Pressure Plate", new String[][]{{"pres", "plat", "ston"}}, Material.STONE_PLATE));
+149        items.add(new ItemInfo("Wooden Pressure Plate", new String[][]{{"pres", "plat", "wood"}}, Material.WOOD_PLATE));
+150        items.add(new ItemInfo("Redstone Ore", new String[][]{{"redst", "ore"}}, Material.REDSTONE_ORE));
+151        items.add(new ItemInfo("Redstone Torch", new String[][]{{"torc", "red"}, {"torc", "rs"}}, Material.REDSTONE_TORCH_ON));
+152        items.add(new ItemInfo("Stone Button", new String[][]{{"stone", "button"}, {"button"}}, Material.STONE_BUTTON));
+153        items.add(new ItemInfo("Snow", new String[][]{{"tile", "snow"}, {"snow", "slab"}, {"snow"}}, Material.SNOW));
+154        items.add(new ItemInfo("Ice", new String[][]{{"ice"}}, Material.ICE));
+155        items.add(new ItemInfo("Snow Block", new String[][]{{"blo", "snow"}}, Material.SNOW_BLOCK));
+156        items.add(new ItemInfo("Cactus", new String[][]{{"cact"}}, Material.CACTUS));
+157        items.add(new ItemInfo("Clay Block", new String[][]{{"clay", "blo"}}, Material.CLAY));
+158        items.add(new ItemInfo("Jukebox", new String[][]{{"jukeb"}}, Material.JUKEBOX));
+159        items.add(new ItemInfo("Fence", new String[][]{{"fence"}}, Material.FENCE));
+160        items.add(new ItemInfo("Pumpkin", new String[][]{{"pump"}}, Material.PUMPKIN));
+161        items.add(new ItemInfo("Netherrack", new String[][]{{"netherr"}, {"netherst"}, {"hellst"}}, Material.NETHERRACK));
+162        items.add(new ItemInfo("Soul Sand", new String[][]{{"soul", "sand"}, {"soul"}, {"slowsa"}, {"nether", "mud"}, {"slow", "sand"}, {"quick", "sand"}, {"mud"}}, Material.SOUL_SAND));
+163        items.add(new ItemInfo("Glowstone", new String[][]{{"glow", "stone"}, {"light", "stone"}}, Material.GLOWSTONE));
+164        items.add(new ItemInfo("Portal", new String[][]{{"port"}}, Material.PORTAL));
+165        items.add(new ItemInfo("Jack-O-Lantern", new String[][]{{"jack"}, {"lante"}}, Material.JACK_O_LANTERN));
+166        items.add(new ItemInfo("Trapdoor", new String[][]{{"trap", "doo"}, {"hatc"}}, Material.TRAP_DOOR));
+167        items.add(new ItemInfo("Stone Monster Egg", new String[][]{{"mons","egg"},{"sto","mons", "egg"}, {"hid", "silver"}}, Material.MONSTER_EGGS));
+168        items.add(new ItemInfo("Stone Brick Monster Egg", new String[][]{{"sto", "bri", "mons", "egg"}, {"hid", "silver","sto","bri"}}, Material.MONSTER_EGGS, (short) 2));
+169        items.add(new ItemInfo("Mossy Stone Brick Monster Egg", new String[][]{{"moss", "sto", "bri", "mons", "egg"}, {"hid", "silver","mos","sto","bri"}}, Material.MONSTER_EGGS, (short) 3));
+170        items.add(new ItemInfo("Huge Brown Mushroom", new String[][]{{"bro", "huge", "mush"}}, Material.HUGE_MUSHROOM_1));
+171        items.add(new ItemInfo("Huge Red Mushroom", new String[][]{{"red", "huge", "mush"}}, Material.HUGE_MUSHROOM_2));
+172        items.add(new ItemInfo("Stone Brick", new String[][]{{"sto", "bric"}, {"smoo", "bric"}}, Material.SMOOTH_BRICK, (short) 0));
+173        items.add(new ItemInfo("Iron Fence", new String[][]{{"bars", "iron"}, {"fence", "iron"}}, Material.IRON_FENCE));
+174        items.add(new ItemInfo("Glass Pane", new String[][]{{"thin", "gla"}, {"pane"}, {"gla", "pane"}}, Material.THIN_GLASS));
+175        items.add(new ItemInfo("Melon Block", new String[][]{{"melon"}}, Material.MELON_BLOCK));
+176        items.add(new ItemInfo("Mossy Stone Brick", new String[][]{{"moss", "sto", "bri"}, {"moss", "smoo", "bri"}, {"moss", "smoo"}, {"moss", "sto"}}, Material.SMOOTH_BRICK, (short) 1));
+177        items.add(new ItemInfo("Cracked Stone Brick", new String[][]{{"cra", "sto", "bri"}, {"cra", "sto"}, {"cra", "smoo", "bri"}, {"cra", "smoo"}}, Material.SMOOTH_BRICK, (short) 2));
+178        items.add(new ItemInfo("Chiseled Stone Brick", new String[][]{{"chis", "sto", "bri"}, {"chis", "sto"}, {"chis", "smoo", "bri"}}, Material.SMOOTH_BRICK, (short) 3));
+179        items.add(new ItemInfo("Brick Stairs", new String[][]{{"stair", "bri"}}, Material.BRICK_STAIRS));
+180        items.add(new ItemInfo("Fence Gate", new String[][]{{"gate", "fen"}, {"gate"}}, Material.FENCE_GATE));
+181        items.add(new ItemInfo("Vines", new String[][]{{"vine"}, {"ivy"}}, Material.VINE));
+182        items.add(new ItemInfo("Stone Brick Stairs", new String[][]{{"stair", "sto", "bri"}, {"stair", "sto"}, {"stair", "smoo", "bri"}, {"stair", "smoo"}}, Material.SMOOTH_STAIRS));
+183        items.add(new ItemInfo("Iron Shovel", new String[][]{{"shov", "ir"}, {"spad", "ir"}}, Material.IRON_SPADE));
+184        items.add(new ItemInfo("Iron Pickaxe", new String[][]{{"pick", "ir"}}, Material.IRON_PICKAXE));
+185        items.add(new ItemInfo("Iron Axe", new String[][]{{"axe", "ir"}}, Material.IRON_AXE));
+186        items.add(new ItemInfo("Flint and Steel", new String[][]{{"steel"}, {"lighter"}, {"flin", "ste"}}, Material.FLINT_AND_STEEL));
+187        items.add(new ItemInfo("Apple", new String[][]{{"appl"}}, Material.APPLE));
+188        items.add(new ItemInfo("Bow", new String[][]{{"bow"}}, Material.BOW));
+189        items.add(new ItemInfo("Arrow", new String[][]{{"arro"}}, Material.ARROW));
+190        items.add(new ItemInfo("Coal", new String[][]{{"coal"}}, Material.COAL));
+191        items.add(new ItemInfo("Charcoal", new String[][]{{"char", "coal"}, {"char"}}, Material.COAL, (short) 1));
+192        items.add(new ItemInfo("Diamond", new String[][]{{"diamo"}}, Material.DIAMOND));
+193        items.add(new ItemInfo("Iron Ingot", new String[][]{{"ingo", "ir"}, {"iron"}}, Material.IRON_INGOT));
+194        items.add(new ItemInfo("Gold Ingot", new String[][]{{"ingo", "go"}, {"gold"}}, Material.GOLD_INGOT));
+195        items.add(new ItemInfo("Iron Sword", new String[][]{{"swor", "ir"}}, Material.IRON_SWORD));
+196        items.add(new ItemInfo("Wooden Sword", new String[][]{{"swor", "woo"}}, Material.WOOD_SWORD));
+197        items.add(new ItemInfo("Wooden Shovel", new String[][]{{"shov", "wo"}, {"spad", "wo"}}, Material.WOOD_SPADE));
+198        items.add(new ItemInfo("Wooden Pickaxe", new String[][]{{"pick", "woo"}}, Material.WOOD_PICKAXE));
+199        items.add(new ItemInfo("Wooden Axe", new String[][]{{"axe", "woo"}}, Material.WOOD_AXE));
+200        items.add(new ItemInfo("Stone Sword", new String[][]{{"swor", "sto"}}, Material.STONE_SWORD));
+201        items.add(new ItemInfo("Stone Shovel", new String[][]{{"shov", "sto"}, {"spad", "sto"}}, Material.STONE_SPADE));
+202        items.add(new ItemInfo("Stone Pickaxe", new String[][]{{"pick", "sto"}}, Material.STONE_PICKAXE));
+203        items.add(new ItemInfo("Stone Axe", new String[][]{{"axe", "sto"}}, Material.STONE_AXE));
+204        items.add(new ItemInfo("Diamond Sword", new String[][]{{"swor", "dia"}}, Material.DIAMOND_SWORD));
+205        items.add(new ItemInfo("Diamond Shovel", new String[][]{{"shov", "dia"}, {"spad", "dia"}}, Material.DIAMOND_SPADE));
+206        items.add(new ItemInfo("Diamond Pickaxe", new String[][]{{"pick", "dia"}}, Material.DIAMOND_PICKAXE));
+207        items.add(new ItemInfo("Diamond Axe", new String[][]{{"axe", "dia"}}, Material.DIAMOND_AXE));
+208        items.add(new ItemInfo("Stick", new String[][]{{"stic"}}, Material.STICK));
+209        items.add(new ItemInfo("Bowl", new String[][]{{"bo", "wl"}}, Material.BOWL));
+210        items.add(new ItemInfo("Mushroom Soup", new String[][]{{"soup"}}, Material.MUSHROOM_SOUP));
+211        items.add(new ItemInfo("Gold Sword", new String[][]{{"swor", "gol"}}, Material.GOLD_SWORD));
+212        items.add(new ItemInfo("Gold Shovel", new String[][]{{"shov", "gol"}, {"spad", "gol"}}, Material.GOLD_SPADE));
+213        items.add(new ItemInfo("Gold Pickaxe", new String[][]{{"pick", "gol"}}, Material.GOLD_PICKAXE));
+214        items.add(new ItemInfo("Gold Axe", new String[][]{{"axe", "gol"}}, Material.GOLD_AXE));
+215        items.add(new ItemInfo("String", new String[][]{{"stri"}}, Material.STRING));
+216        items.add(new ItemInfo("Feather", new String[][]{{"feat"}}, Material.FEATHER));
+217        items.add(new ItemInfo("Gunpowder", new String[][]{{"gun"}, {"sulph"}}, Material.SULPHUR));
+218        items.add(new ItemInfo("Wooden Hoe", new String[][]{{"hoe", "wo"}}, Material.WOOD_HOE));
+219        items.add(new ItemInfo("Stone Hoe", new String[][]{{"hoe", "sto"}}, Material.STONE_HOE));
+220        items.add(new ItemInfo("Iron Hoe", new String[][]{{"hoe", "iro"}}, Material.IRON_HOE));
+221        items.add(new ItemInfo("Diamond Hoe", new String[][]{{"hoe", "dia"}}, Material.DIAMOND_HOE));
+222        items.add(new ItemInfo("Gold Hoe", new String[][]{{"hoe", "go"}}, Material.GOLD_HOE));
+223        items.add(new ItemInfo("Seeds", new String[][]{{"seed"}}, Material.SEEDS));
+224        items.add(new ItemInfo("Wheat", new String[][]{{"whea"}}, Material.WHEAT));
+225        items.add(new ItemInfo("Bread", new String[][]{{"brea"}}, Material.BREAD));
+226        items.add(new ItemInfo("Leather Cap", new String[][]{{"cap", "lea"}, {"hat", "lea"}, {"helm", "lea"}}, Material.LEATHER_HELMET));
+227        items.add(new ItemInfo("Leather Tunic", new String[][]{{"tun", "lea"}, {"ches", "lea"}}, Material.LEATHER_CHESTPLATE));
+228        items.add(new ItemInfo("Leather Pants", new String[][]{{"pan", "lea"}, {"trou", "lea"}, {"leg", "lea"}}, Material.LEATHER_LEGGINGS));
+229        items.add(new ItemInfo("Leather Boots", new String[][]{{"boo", "lea"}}, Material.LEATHER_BOOTS));
+230        items.add(new ItemInfo("Chainmail Helmet", new String[][]{{"cap", "cha"}, {"hat", "cha"}, {"helm", "cha"}}, Material.CHAINMAIL_HELMET));
+231        items.add(new ItemInfo("Chainmail Chestplate", new String[][]{{"tun", "cha"}, {"ches", "cha"}}, Material.CHAINMAIL_CHESTPLATE));
+232        items.add(new ItemInfo("Chainmail Leggings", new String[][]{{"pan", "cha"}, {"trou", "cha"}, {"leg", "cha"}}, Material.CHAINMAIL_LEGGINGS));
+233        items.add(new ItemInfo("Chainmail Boots", new String[][]{{"boo", "cha"}}, Material.CHAINMAIL_BOOTS));
+234        items.add(new ItemInfo("Iron Helmet", new String[][]{{"cap", "ir"}, {"hat", "ir"}, {"helm", "ir"}}, Material.IRON_HELMET));
+235        items.add(new ItemInfo("Iron Chestplate", new String[][]{{"tun", "ir"}, {"ches", "ir"}}, Material.IRON_CHESTPLATE));
+236        items.add(new ItemInfo("Iron Leggings", new String[][]{{"pan", "ir"}, {"trou", "ir"}, {"leg", "ir"}}, Material.IRON_LEGGINGS));
+237        items.add(new ItemInfo("Iron Boots", new String[][]{{"boo", "ir"}}, Material.IRON_BOOTS));
+238        items.add(new ItemInfo("Diamond Helmet", new String[][]{{"cap", "dia"}, {"hat", "dia"}, {"helm", "dia"}}, Material.DIAMOND_HELMET));
+239        items.add(new ItemInfo("Diamond Chestplate", new String[][]{{"tun", "dia"}, {"ches", "dia"}}, Material.DIAMOND_CHESTPLATE));
+240        items.add(new ItemInfo("Diamond Leggings", new String[][]{{"pan", "dia"}, {"trou", "dia"}, {"leg", "dia"}}, Material.DIAMOND_LEGGINGS));
+241        items.add(new ItemInfo("Diamond Boots", new String[][]{{"boo", "dia"}}, Material.DIAMOND_BOOTS));
+242        items.add(new ItemInfo("Gold Helmet", new String[][]{{"cap", "go"}, {"hat", "go"}, {"helm", "go"}}, Material.GOLD_HELMET));
+243        items.add(new ItemInfo("Gold Chestplate", new String[][]{{"tun", "go"}, {"ches", "go"}}, Material.GOLD_CHESTPLATE));
+244        items.add(new ItemInfo("Gold Leggings", new String[][]{{"pan", "go"}, {"trou", "go"}, {"leg", "go"}}, Material.GOLD_LEGGINGS));
+245        items.add(new ItemInfo("Gold Boots", new String[][]{{"boo", "go"}}, Material.GOLD_BOOTS));
+246        items.add(new ItemInfo("Flint", new String[][]{{"flin"}}, Material.FLINT));
+247        items.add(new ItemInfo("Raw Porkchop", new String[][]{{"pork"}, {"ham"}}, Material.PORK));
+248        items.add(new ItemInfo("Cooked Porkchop", new String[][]{{"pork", "cook"}, {"baco"}}, Material.GRILLED_PORK));
+249        items.add(new ItemInfo("Paintings", new String[][]{{"paint"}}, Material.PAINTING));
+250        items.add(new ItemInfo("Golden Apple", new String[][]{{"appl", "go"}}, Material.GOLDEN_APPLE));
+251        items.add(new ItemInfo("Enchanted Golden Apple", new String[][]{{"appl", "go", "ench"}}, Material.GOLDEN_APPLE, (short) 1));
+252        items.add(new ItemInfo("Sign", new String[][]{{"sign"}}, Material.SIGN));
+253        items.add(new ItemInfo("Wooden Door", new String[][]{{"door", "wood"}, {"door"}}, Material.WOOD_DOOR));
+254        items.add(new ItemInfo("Bucket", new String[][]{{"buck"}, {"bukk"}}, Material.BUCKET));
+255        items.add(new ItemInfo("Water Bucket", new String[][]{{"water", "buck"}}, Material.WATER_BUCKET));
+256        items.add(new ItemInfo("Lava Bucket", new String[][]{{"lava", "buck"}}, Material.LAVA_BUCKET));
+257        items.add(new ItemInfo("Minecart", new String[][]{{"cart"}}, Material.MINECART));
+258        items.add(new ItemInfo("Saddle", new String[][]{{"sad"}, {"pig"}}, Material.SADDLE));
+259        items.add(new ItemInfo("Iron Door", new String[][]{{"door", "iron"}}, Material.IRON_DOOR));
+260        items.add(new ItemInfo("Redstone Dust", new String[][]{{"red", "ston", "dust"}, {"dust", "rs"}, {"dust", "red"}, {"reds"}}, Material.REDSTONE));
+261        items.add(new ItemInfo("Snowball", new String[][]{{"snow", "ball"}}, Material.SNOW_BALL));
+262        items.add(new ItemInfo("Boat", new String[][]{{"boat"}}, Material.BOAT));
+263        items.add(new ItemInfo("Leather", new String[][]{{"lea"}, {"hide"}}, Material.LEATHER));
+264        items.add(new ItemInfo("Milk Bucket", new String[][]{{"buck", "mil"}, {"milk"}}, Material.MILK_BUCKET));
+265        items.add(new ItemInfo("Clay Brick", new String[][]{{"bric", "cl"}, {"sin", "bric"}}, Material.CLAY_BRICK));
+266        items.add(new ItemInfo("Clay", new String[][]{{"clay"}}, Material.CLAY_BALL));
+267        items.add(new ItemInfo("Sugar Cane", new String[][]{{"reed"}, {"cane"}}, Material.SUGAR_CANE));
+268        items.add(new ItemInfo("Paper", new String[][]{{"pape"}}, Material.PAPER));
+269        items.add(new ItemInfo("Book", new String[][]{{"book"}}, Material.BOOK));
+270        items.add(new ItemInfo("Slimeball", new String[][]{{"slime"}}, Material.SLIME_BALL));
+271        items.add(new ItemInfo("Storage Minecart", new String[][]{{"cart", "sto"}, {"cart", "che"}, {"cargo"}}, Material.STORAGE_MINECART));
+272        items.add(new ItemInfo("Powered Minecart", new String[][]{{"cart", "pow"}, {"engine"}}, Material.POWERED_MINECART));
+273        items.add(new ItemInfo("Egg", new String[][]{{"egg"}}, Material.EGG));
+274        items.add(new ItemInfo("Compass", new String[][]{{"comp"}}, Material.COMPASS));
+275        items.add(new ItemInfo("Fishing Rod", new String[][]{{"rod"}, {"rod", "fish"}, {"pole", "fish"}}, Material.FISHING_ROD));
+276        items.add(new ItemInfo("Clock", new String[][]{{"cloc"}, {"watc"}}, Material.WATCH));
+277        items.add(new ItemInfo("Glowstone Dust", new String[][]{{"glow", "sto", "dus"}, {"glow", "dus"}, {"ligh", "dust"}}, Material.GLOWSTONE_DUST));
+278        items.add(new ItemInfo("Raw Fish", new String[][]{{"fish"}, {"fish", "raw"}}, Material.RAW_FISH));
+279        items.add(new ItemInfo("Cooked Fish", new String[][]{{"fish", "coo"}, {"kipper"}}, Material.COOKED_FISH));
+280        items.add(new ItemInfo("Ink Sac", new String[][]{{"ink"}, {"dye", "bla"}}, Material.INK_SACK));
+281        items.add(new ItemInfo("Red Dye", new String[][]{{"dye", "red"}, {"pain", "red"}, {"pet", "ros"}, {"pet", "red"}}, Material.INK_SACK, (short) 1));
+282        items.add(new ItemInfo("Cactus Green", new String[][]{{"cact", "gree"}, {"dye", "gree"}, {"pain", "gree"}}, Material.INK_SACK, (short) 2));
+283        items.add(new ItemInfo("Cocoa Beans", new String[][]{{"bean"}, {"choco"}, {"cocoa"}, {"dye", "bro"}, {"pain", "bro"}}, Material.INK_SACK, (short) 3));
+284        items.add(new ItemInfo("Lapis Lazuli", new String[][]{{"lapi", "lazu"}, {"dye", "lapi"}, {"dye", "blu"}, {"pain", "blu"}}, Material.INK_SACK, (short) 4));
+285        items.add(new ItemInfo("Purple Dye", new String[][]{{"dye", "pur"}, {"pain", "pur"}}, Material.INK_SACK, (short) 5));
+286        items.add(new ItemInfo("Cyan Dye", new String[][]{{"dye", "cya"}, {"pain", "cya"}}, Material.INK_SACK, (short) 6));
+287        items.add(new ItemInfo("Light Gray Dye", new String[][]{{"dye", "lig", "gra"}, {"dye", "lig", "grey"}, {"pain", "lig", "grey"}, {"pain", "lig", "grey"}}, Material.INK_SACK, (short) 7));
+288        items.add(new ItemInfo("Gray Dye", new String[][]{{"dye", "gra"}, {"dye", "grey"}, {"pain", "grey"}, {"pain", "grey"}}, Material.INK_SACK, (short) 8));
+289        items.add(new ItemInfo("Pink Dye", new String[][]{{"dye", "pin"}, {"pain", "pin"}}, Material.INK_SACK, (short) 9));
+290        items.add(new ItemInfo("Lime Dye", new String[][]{{"dye", "lim"}, {"pain", "lim"}, {"dye", "lig", "gree"}, {"pain", "lig", "gree"}}, Material.INK_SACK, (short) 10));
+291        items.add(new ItemInfo("Dandelion Yellow", new String[][]{{"dye", "yel"}, {"yel", "dan"}, {"pet", "dan"}, {"pet", "yel"}}, Material.INK_SACK, (short) 11));
+292        items.add(new ItemInfo("Light Blue Dye", new String[][]{{"dye", "lig", "blu"}, {"pain", "lig", "blu"}}, Material.INK_SACK, (short) 12));
+293        items.add(new ItemInfo("Magenta Dye", new String[][]{{"dye", "mag"}, {"pain", "mag"}}, Material.INK_SACK, (short) 13));
+294        items.add(new ItemInfo("Orange Dye", new String[][]{{"dye", "ora"}, {"pain", "ora"}}, Material.INK_SACK, (short) 14));
+295        items.add(new ItemInfo("Bone Meal", new String[][]{{"bonem"}, {"bone", "me"}, {"dye", "whi"}, {"pain", "whi"}}, Material.INK_SACK, (short) 15));
+296        items.add(new ItemInfo("Bone", new String[][]{{"bone"}, {"femur"}}, Material.BONE));
+297        items.add(new ItemInfo("Sugar", new String[][]{{"suga"}}, Material.SUGAR));
+298        items.add(new ItemInfo("Cake", new String[][]{{"cake"}}, Material.CAKE));
+299        items.add(new ItemInfo("Melon Slice", new String[][]{{"sli", "melo"}}, Material.MELON));
+300        items.add(new ItemInfo("Pumpkin Seed", new String[][]{{"seed", "pump"}}, Material.PUMPKIN_SEEDS));
+301        items.add(new ItemInfo("Melon Seed", new String[][]{{"seed", "melo"}}, Material.MELON_SEEDS));
+302        items.add(new ItemInfo("Raw Beef", new String[][]{{"beef", "raw"}}, Material.RAW_BEEF));
+303        items.add(new ItemInfo("Steak", new String[][]{{"steak"}, {"beef", "coo"}}, Material.COOKED_BEEF));
+304        items.add(new ItemInfo("Raw Chicken", new String[][]{{"chi", "raw"}}, Material.RAW_CHICKEN));
+305        items.add(new ItemInfo("Cooked Chicken", new String[][]{{"chi", "coo"}}, Material.COOKED_CHICKEN));
+306        items.add(new ItemInfo("Rotten Flesh", new String[][]{{"flesh"}, {"rott"}}, Material.ROTTEN_FLESH));
+307        items.add(new ItemInfo("Bed", new String[][]{{"bed"}}, Material.BED));
+308        items.add(new ItemInfo("Redstone Repeater", new String[][]{{"repe", "reds"}, {"diod"}, {"repeat"}}, Material.DIODE));
+309        items.add(new ItemInfo("Cookie", new String[][]{{"cooki"}}, Material.COOKIE));
+310        items.add(new ItemInfo("Map", new String[][]{{"map"}}, Material.MAP));
+311        items.add(new ItemInfo("Empty Map", new String[][]{{"empt", "ma"}}, Material.EMPTY_MAP));
+312        items.add(new ItemInfo("Shears", new String[][]{{"shea"}}, Material.SHEARS));
+313        items.add(new ItemInfo("Ender Pearl", new String[][]{{"end", "pear"}, {"pearl"}}, Material.ENDER_PEARL));
+314        items.add(new ItemInfo("Mycelium", new String[][]{{ "myc" }}, Material.MYCEL));
+315        items.add(new ItemInfo("Lily Pad", new String[][]{{"lil", "pad"}, {"lil", "wat"}}, Material.WATER_LILY));
+316        items.add(new ItemInfo("Cauldron Block", new String[][]{{ "bloc", "cauld"}}, Material.CAULDRON));
+317        items.add(new ItemInfo("Cauldron", new String[][]{{"cauld"}}, Material.CAULDRON_ITEM));
+318        items.add(new ItemInfo("Enchantment Table", new String[][]{{"ench", "tab"}}, Material.ENCHANTMENT_TABLE));
+319        items.add(new ItemInfo("Brewing Stand Block", new String[][] {{ "bloc", "brew", "stan" }, {"alch", "bloc"}}, Material.BREWING_STAND));
+320        items.add(new ItemInfo("Brewing Stand", new String[][] {{"brew", "stan"}, {"alch", "stand"}, {"alch", "tab"}}, Material.BREWING_STAND_ITEM));
+321        items.add(new ItemInfo("Nether Brick", new String[][] {{"neth", "bric"}}, Material.NETHER_BRICK));
+322        items.add(new ItemInfo("Nether Brick Stairs", new String[][] {{"neth", "stair"}, {"neth", "stai", "bric"}}, Material.NETHER_BRICK_STAIRS));
+323        items.add(new ItemInfo("Nether Brick Fence", new String[][]{{"neth", "fence"}, {"neth", "fence", "bric"}}, Material.NETHER_FENCE));
+324        items.add(new ItemInfo("Netherwarts", new String[][]{{"wart"}, {"neth", "war"}}, Material.NETHER_WARTS));
+325        items.add(new ItemInfo("Netherstalk", new String[][]{{"neth", "stalk"}}, Material.NETHER_STALK));
+326        items.add(new ItemInfo("End Portal", new String[][] {{"end", "port"}}, Material.ENDER_PORTAL));
+327        items.add(new ItemInfo("End Portal Frame", new String[][] {{"fram", "end", "port"}}, Material.ENDER_PORTAL_FRAME));
+328        items.add(new ItemInfo("End Stone", new String[][] {{"end", "ston"}}, Material.ENDER_STONE));
+329        items.add(new ItemInfo("Dragon Egg", new String[][] {{"drag", "egg"}}, Material.DRAGON_EGG));
+330        items.add(new ItemInfo("Blaze Rod", new String[][] {{"rod", "blaz"}}, Material.BLAZE_ROD));
+331        items.add(new ItemInfo("Ghast Tear", new String[][] {{"ghas", "tear"}}, Material.GHAST_TEAR));
+332        items.add(new ItemInfo("Gold Nugget", new String[][] {{"nugg", "gold"}}, Material.GOLD_NUGGET));
+333        items.add(new ItemInfo("Glass Bottle", new String[][] {{"bottl"}, {"glas", "bott"}, {"empt", "bott"}}, Material.GLASS_BOTTLE));
+334        items.add(new ItemInfo("Potion", new String[][] {{"potio"}}, Material.POTION));
+335        items.add(new ItemInfo("Water Bottle", new String[][] {{"wat", "bot"}}, Material.POTION, (short) 0));
+336        items.add(new ItemInfo("Awkward Potion", new String[][] {{"poti", "awk"}}, Material.POTION, (short) 16));
+337        items.add(new ItemInfo("Thick Potion", new String[][] {{"poti", "thic"}}, Material.POTION, (short) 32));
+338        items.add(new ItemInfo("Mundane Potion (Extended)", new String[][] {{"poti", "mund", "ext"}}, Material.POTION, (short) 64));
+339        items.add(new ItemInfo("Mundane Potion", new String[][] {{"poti", "mund"}}, Material.POTION, (short) 8192));
+340        items.add(new ItemInfo("Potion of Regeneration", new String[][] {{"poti", "rege"}}, Material.POTION, (short) 8193));
+341        items.add(new ItemInfo("Potion of Regeneration (Extended)", new String[][] {{"poti", "rege", "ext"}}, Material.POTION, (short) 8257));
+342        items.add(new ItemInfo("Potion of Regeneration II", new String[][] {{"poti", "rege", "2"}, {"poti", "rege", "ii"}}, Material.POTION, (short) 8225));
+343        items.add(new ItemInfo("Potion of Swiftness", new String[][] {{"poti", "swif"}, {"poti", "speed"}}, Material.POTION, (short) 8194));
+344        items.add(new ItemInfo("Potion of Swiftness (Extended)", new String[][] {{"poti", "swif", "ext"}, {"poti", "speed", "ext"}}, Material.POTION, (short) 8258));
+345        items.add(new ItemInfo("Potion of Swiftness II", new String[][] {{"poti", "swif", "2"}, {"poti", "swif", "ii"}, {"poti", "speed", "2"}, {"poti", "speed", "ii"}}, Material.POTION, (short) 8226));
+346        items.add(new ItemInfo("Potion of Fire Resistance", new String[][] {{"poti", "fire"}}, Material.POTION, (short) 8195));
+347        items.add(new ItemInfo("Potion of Fire Resistance (Extended)", new String[][] {{"poti", "fire", "ext"}}, Material.POTION, (short) 8259));
+348        items.add(new ItemInfo("Potion of Fire Resistance (Reverted)", new String[][] {{"poti", "fire", "rev"}}, Material.POTION, (short) 8227));
+349        items.add(new ItemInfo("Potion of Healing", new String[][] {{"poti", "heal"}}, Material.POTION, (short) 8197));
+350        items.add(new ItemInfo("Potion of Healing (Reverted)", new String[][] {{"poti", "heal", "rev"}}, Material.POTION, (short) 8261));
+351        items.add(new ItemInfo("Potion of Healing II", new String[][] {{"poti", "heal", "2"}, {"poti", "heal", "ii"}}, Material.POTION, (short) 8229));
+352        items.add(new ItemInfo("Potion of Strength", new String[][] {{"poti", "str"}}, Material.POTION, (short) 8201));
+353        items.add(new ItemInfo("Potion of Strength (Extended)", new String[][] {{"poti", "str", "ext"}}, Material.POTION, (short) 8265));
+354        items.add(new ItemInfo("Potion of Strength II", new String[][] {{"poti", "str", "2"}, {"poti", "str", "ii"}}, Material.POTION, (short) 8233));
+355        items.add(new ItemInfo("Potion of Poison", new String[][] {{"poti", "pois"}}, Material.POTION, (short) 8196));
+356        items.add(new ItemInfo("Potion of Poison (Extended)", new String[][] {{"poti", "pois", "ext"}}, Material.POTION, (short) 8260));
+357        items.add(new ItemInfo("Potion of Poison II", new String[][] {{"poti", "pois", "2"}, {"poti", "pois", "ii"}}, Material.POTION, (short) 8228));
+358        items.add(new ItemInfo("Potion of Weakness", new String[][] {{"poti", "weak"}}, Material.POTION, (short) 8200));
+359        items.add(new ItemInfo("Potion of Weakness (Extended)", new String[][] {{"poti", "weak", "ext"}}, Material.POTION, (short) 8264));
+360        items.add(new ItemInfo("Potion of Weakness (Reverted)", new String[][] {{"poti", "weak", "rev"}}, Material.POTION, (short) 8232));
+361        items.add(new ItemInfo("Potion of Slowness", new String[][] {{"poti", "slow"}}, Material.POTION, (short) 8202));
+362        items.add(new ItemInfo("Potion of Slowness (Extended)", new String[][] {{"poti", "slow", "ext"}}, Material.POTION, (short) 8266));
+363        items.add(new ItemInfo("Potion of Slowness (Reverted)", new String[][] {{"poti", "slow", "rev"}}, Material.POTION, (short) 8234));
+364        items.add(new ItemInfo("Potion of Harming", new String[][] {{"poti", "harm"}}, Material.POTION, (short) 8204));
+365        items.add(new ItemInfo("Potion of Harming (Reverted)", new String[][] {{"poti", "harm", "rev"}}, Material.POTION, (short) 8268));
+366        items.add(new ItemInfo("Potion of Harming II", new String[][] {{"poti", "harm", "2"}, {"poti", "harm", "ii"}}, Material.POTION, (short) 8236));
+367        items.add(new ItemInfo("Splash Mundane Potion", new String[][] {{"poti", "mund", "spl"}}, Material.POTION, (short) 16384));
+368        items.add(new ItemInfo("Splash Potion of Regeneration", new String[][] {{"poti", "rege", "spl"}}, Material.POTION, (short) 16385));
+369        items.add(new ItemInfo("Splash Potion of Regeneration (Extended)", new String[][] {{"poti", "rege", "spl", "ext"}}, Material.POTION, (short) 16449));
+370        items.add(new ItemInfo("Splash Potion of Regeneration II", new String[][] {{"poti", "rege", "spl", "2"}, {"poti", "rege", "spl", "ii"}}, Material.POTION, (short) 16417));
+371        items.add(new ItemInfo("Splash Potion of Swiftness", new String[][] {{"poti", "swif", "spl"}, {"poti", "speed", "spl"}}, Material.POTION, (short) 16386));
+372        items.add(new ItemInfo("Splash Potion of Swiftness (Extended)", new String[][] {{"poti", "swif", "spl", "ext"}, {"poti", "speed", "spl", "ext"}}, Material.POTION, (short) 16450));
+373        items.add(new ItemInfo("Splash Potion of Swiftness II", new String[][] {{"poti", "swif", "spl", "2"}, {"poti", "swif", "spl", "ii"}, {"poti", "speed", "spl", "2"}, {"poti", "speed", "spl", "ii"}}, Material.POTION, (short) 16418));
+374        items.add(new ItemInfo("Splash Potion of Fire Resistance", new String[][] {{"poti", "fire", "spl"}}, Material.POTION, (short) 16387));
+375        items.add(new ItemInfo("Splash Potion of Fire Resistance (Extended)", new String[][] {{"poti", "fire", "spl", "ext"}}, Material.POTION, (short) 16451));
+376        items.add(new ItemInfo("Splash Potion of Fire Resistance (Reverted)", new String[][] {{"poti", "fire", "spl", "rev"}}, Material.POTION, (short) 16419));
+377        items.add(new ItemInfo("Splash Potion of Healing", new String[][] {{"poti", "heal", "spl"}}, Material.POTION, (short) 16389));
+378        items.add(new ItemInfo("Splash Potion of Healing (Reverted)", new String[][] {{"poti", "heal", "spl", "rev"}}, Material.POTION, (short) 16453));
+379        items.add(new ItemInfo("Splash Potion of Healing II", new String[][] {{"poti", "heal", "spl", "2"}, {"poti", "heal", "spl", "ii"}}, Material.POTION, (short) 16421));
+380        items.add(new ItemInfo("Splash Potion of Strength", new String[][] {{"poti", "str", "spl"}}, Material.POTION, (short) 16393));
+381        items.add(new ItemInfo("Splash Potion of Strength (Extended)", new String[][] {{"poti", "str", "spl", "ext"}}, Material.POTION, (short) 16457));
+382        items.add(new ItemInfo("Splash Potion of Strength II", new String[][] {{"poti", "str", "spl", "2"}, {"poti", "str", "spl", "ii"}}, Material.POTION, (short) 16425));
+383        items.add(new ItemInfo("Splash Potion of Poison", new String[][] {{"poti", "pois", "spl"}}, Material.POTION, (short) 16388));
+384        items.add(new ItemInfo("Splash Potion of Poison (Extended)", new String[][] {{"poti", "pois", "spl", "ext"}}, Material.POTION, (short) 16452));
+385        items.add(new ItemInfo("Splash Potion of Poison II", new String[][] {{"poti", "pois", "spl", "2"}, {"poti", "pois", "spl", "ii"}}, Material.POTION, (short) 16420));
+386        items.add(new ItemInfo("Splash Potion of Weakness", new String[][] {{"poti", "weak", "spl"}}, Material.POTION, (short) 16392));
+387        items.add(new ItemInfo("Splash Potion of Weakness (Extended)", new String[][] {{"poti", "weak", "spl", "ext"}}, Material.POTION, (short) 16456));
+388        items.add(new ItemInfo("Splash Potion of Weakness (Reverted)", new String[][] {{"poti", "weak", "spl", "rev"}}, Material.POTION, (short) 16424));
+389        items.add(new ItemInfo("Splash Potion of Slowness", new String[][] {{"poti", "slow", "spl"}}, Material.POTION, (short) 16394));
+390        items.add(new ItemInfo("Splash Potion of Slowness (Extended)", new String[][] {{"poti", "slow", "spl", "ext"}}, Material.POTION, (short) 16458));
+391        items.add(new ItemInfo("Splash Potion of Slowness (Reverted)", new String[][] {{"poti", "slow", "spl", "rev"}}, Material.POTION, (short) 16426));
+392        items.add(new ItemInfo("Splash Potion of Harming", new String[][] {{"poti", "harm", "spl"}}, Material.POTION, (short) 16396));
+393        items.add(new ItemInfo("Splash Potion of Harming (Reverted)", new String[][] {{"poti", "harm", "spl", "rev"}}, Material.POTION, (short) 16460));
+394        items.add(new ItemInfo("Splash Potion of Harming II", new String[][] {{"poti", "harm", "spl", "2"}, {"poti", "harm", "spl", "ii"}}, Material.POTION, (short) 16428));
+395        items.add(new ItemInfo("Spider Eye", new String[][] {{"spid", "eye"}}, Material.SPIDER_EYE));
+396        items.add(new ItemInfo("Fermented Spider Eye", new String[][] {{"ferm", "spid", "eye"}}, Material.FERMENTED_SPIDER_EYE));
+397        items.add(new ItemInfo("Blaze Powder", new String[][] {{"powd", "blaz"}}, Material.BLAZE_POWDER));
+398        items.add(new ItemInfo("Magma Cream", new String[][] {{"crea", "magm"}}, Material.MAGMA_CREAM));
+399        items.add(new ItemInfo("Eye of Ender", new String[][] {{"end", "ey"}}, Material.EYE_OF_ENDER));
+400        items.add(new ItemInfo("Glistering Melon", new String[][] {{"melo", "glis"}}, Material.SPECKLED_MELON));
+401        items.add(new ItemInfo("Spawn Egg", new String[][] {{"spaw", "egg"}}, Material.MONSTER_EGG));
+402        items.add(new ItemInfo("Creeper Spawn Egg", new String[][] {{"creep", "egg"}}, Material.MONSTER_EGG, (short) 50));
+403        items.add(new ItemInfo("Skeleton Spawn Egg", new String[][] {{"skele", "egg"}}, Material.MONSTER_EGG, (short) 51));
+404        items.add(new ItemInfo("Spider Spawn Egg", new String[][] {{"spider", "egg"}}, Material.MONSTER_EGG, (short) 52));
+405        items.add(new ItemInfo("Zombie Spawn Egg", new String[][] {{"zombie", "egg"}}, Material.MONSTER_EGG, (short) 54));
+406        items.add(new ItemInfo("Slime Spawn Egg", new String[][] {{"slime", "egg"}}, Material.MONSTER_EGG, (short) 55));
+407        items.add(new ItemInfo("Ghast Spawn Egg", new String[][] {{"ghast", "egg"}}, Material.MONSTER_EGG, (short) 56));
+408        items.add(new ItemInfo("Zombie Pigman Spawn Egg", new String[][] {{"zomb", "pig", "egg"}}, Material.MONSTER_EGG, (short) 57));
+409        items.add(new ItemInfo("Enderman Spawn Egg", new String[][] {{"end", "man", "egg"}}, Material.MONSTER_EGG, (short) 58));
+410        items.add(new ItemInfo("Cave Spider Spawn Egg", new String[][] {{"cav", "spid", "egg"}}, Material.MONSTER_EGG, (short) 59));
+411        items.add(new ItemInfo("Silverfish Spawn Egg", new String[][] {{"silv", "fish", "egg"}}, Material.MONSTER_EGG, (short) 60));
+412        items.add(new ItemInfo("Blaze Spawn Egg", new String[][] {{"blaze", "egg"}}, Material.MONSTER_EGG, (short) 61));
+413        items.add(new ItemInfo("Magma Cube Spawn Egg", new String[][] {{"mag", "cub", "egg"}, {"neth", "slim", "egg"}}, Material.MONSTER_EGG, (short)62));
+414        items.add(new ItemInfo("Pig Spawn Egg", new String[][] {{"pig", "spa", "egg"}, {"pig", "egg"}}, Material.MONSTER_EGG, (short) 90));
+415        items.add(new ItemInfo("Sheep Spawn Egg", new String[][] {{"sheep", "egg"}}, Material.MONSTER_EGG, (short) 91));
+416        items.add(new ItemInfo("Cow Spawn Egg", new String[][] {{"cow", "spa", "egg"}, {"cow", "egg"}}, Material.MONSTER_EGG, (short) 92));
+417        items.add(new ItemInfo("Chicken Spawn Egg", new String[][] {{"chick", "egg"}}, Material.MONSTER_EGG, (short) 93));
+418        items.add(new ItemInfo("Squid Spawn Egg", new String[][] {{"squi", "spa", "egg"},{"squi", "egg"}}, Material.MONSTER_EGG, (short) 94));
+419        items.add(new ItemInfo("Wolf Spawn Egg", new String[][] {{"wolf", "spa", "egg"}, {"wolf", "egg"}}, Material.MONSTER_EGG, (short) 95));
+420        items.add(new ItemInfo("Mooshroom Spawn Egg", new String[][] {{"moo", "room", "egg"}, {"mush", "cow", "egg"}}, Material.MONSTER_EGG, (short) 96));
+421        items.add(new ItemInfo("Ocelot Spawn Egg", new String[][] {{"ocelo", "egg"}, {"ozelo", "egg"}}, Material.MONSTER_EGG, (short) 98));
+422        items.add(new ItemInfo("Villager Spawn Egg", new String[][] {{"villa", "egg"}}, Material.MONSTER_EGG, (short) 120));
+423        items.add(new ItemInfo("Bottle 'o Enchanting", new String[][] {{"bot", "ench"}, {"bot", "xp"}}, Material.EXP_BOTTLE));
+424        items.add(new ItemInfo("Fire Charge", new String[][] {{"fir", "char"}}, Material.FIREBALL));
+425        items.add(new ItemInfo("13 Disc", new String[][]{{"dis", "gol"}, {"rec", "gol"}, {"13", "disc"}, {"13", "reco"}}, Material.GOLD_RECORD));
+426        items.add(new ItemInfo("cat Disc", new String[][]{{"dis", "gre"}, {"rec", "gre"}, {"cat", "disc"}, {"cat", "reco"}}, Material.GREEN_RECORD));
+427        items.add(new ItemInfo("blocks Disc", new String[][] {{"block", "disc"}, {"block", "reco"}, {"3", "disc"}, {"3", "reco"}}, Material.RECORD_3));
+428        items.add(new ItemInfo("chirp Disc", new String[][] {{"chirp", "disc"}, {"chirp", "reco"}, {"4", "disc"}, {"4", "reco"}}, Material.RECORD_4));
+429        items.add(new ItemInfo("far Disc", new String[][] {{"far", "disc"}, {"far", "reco"}, {"5", "disc"}, {"5", "reco"}}, Material.RECORD_5));
+430        items.add(new ItemInfo("mall Disc", new String[][] {{"mall", "disc"}, {"mall", "reco"}, {"6", "disc"}, {"6", "reco"}}, Material.RECORD_6));
+431        items.add(new ItemInfo("mellohi Disc", new String[][] {{"mello", "disc"}, {"mello", "reco"}, {"7", "disc"}, {"7", "reco"}}, Material.RECORD_7));
+432        items.add(new ItemInfo("stahl Disc", new String[][] {{"stahl", "disc"}, {"stahl", "reco"}, {"8", "disc"}, {"8", "reco"}}, Material.RECORD_8));
+433        items.add(new ItemInfo("strad Disc", new String[][] {{"strad", "disc"}, {"strad", "reco"}, {"9", "disc"}, {"9", "reco"}}, Material.RECORD_9));
+434        items.add(new ItemInfo("ward Disc", new String[][] {{"ward", "disc"}, {"ward", "reco"}, {"10", "disc"}, {"10", "reco"}}, Material.RECORD_10));
+435        items.add(new ItemInfo("11 Disc", new String[][] {{"11", "disc"}, {"11", "reco"}}, Material.RECORD_11));
+436        items.add(new ItemInfo("wait Disc", new String[][] {{"12", "disc"}, {"wait", "disc"}, {"12", "reco"}, {"wait", "reco"}}, Material.RECORD_12));
+437        items.add(new ItemInfo("Redstone Lamp", new String[][] {{"lamp"}, {"lamp", "redst"}}, Material.REDSTONE_LAMP_OFF));
+438        items.add(new ItemInfo("Redstone Torch Off", new String[][] {{"off", "red", "sto", "tor"}}, Material.REDSTONE_TORCH_OFF));
+439        //1.3 Blocks & Items
+440        items.add(new ItemInfo("Emerald Ore", new String[][]{{"emer", "ore"}}, Material.EMERALD_ORE));
+441        items.add(new ItemInfo("Emerald", new String[][]{{"emer"}}, Material.EMERALD));
+442        items.add(new ItemInfo("Emerald Block", new String[][]{{"emer", "blo"}}, Material.EMERALD_BLOCK));
+443        items.add(new ItemInfo("Ender Chest", new String[][]{{"end", "ches"}}, Material.ENDER_CHEST));
+444        items.add(new ItemInfo("Tripwire Hook", new String[][]{{"hoo", "trip"}}, Material.TRIPWIRE_HOOK));
+445        items.add(new ItemInfo("Tripwire", new String[][]{{"trip"}}, Material.TRIPWIRE));
+446        items.add(new ItemInfo("Sandstone Stair", new String[][]{{"stair", "sand", "sto"}, {"stair", "sand"}}, Material.SANDSTONE_STAIRS));
+447        items.add(new ItemInfo("Double Oak Slab", new String[][]{{"doub", "slab", "oak"}, {"doub", "step", "oak"}}, Material.WOOD_DOUBLE_STEP));
+448        items.add(new ItemInfo("Double Spruce Slab", new String[][]{{"doub", "slab", "spru"}, {"doub", "step", "spru"}}, Material.WOOD_DOUBLE_STEP, (short) 1));
+449        items.add(new ItemInfo("Double Birch Slab", new String[][]{{"doub", "slab", "birc"}, {"doub", "step", "birc"}}, Material.WOOD_DOUBLE_STEP, (short) 2));
+450        items.add(new ItemInfo("Double Jungle Wood Slab", new String[][]{{"doub", "slab", "jungl"}, {"doub", "step", "jung"}}, Material.WOOD_DOUBLE_STEP, (short) 3));
+451        items.add(new ItemInfo("Oak Slab", new String[][]{{"slab", "oak"}, {"step", "oak"}}, Material.WOOD_STEP));
+452        items.add(new ItemInfo("Spruce Slab", new String[][]{{"slab", "spru"}, {"step", "spru"}}, Material.WOOD_STEP, (short) 1));
+453        items.add(new ItemInfo("Birch Slab", new String[][]{{"slab", "birc"}, {"step", "birc"}}, Material.WOOD_STEP, (short) 2));
+454        items.add(new ItemInfo("Jungle Wood Slab", new String[][]{{"jung", "wood", "sla"}, {"slab", "jung"}, {"step", "jung"}}, Material.WOOD_STEP, (short) 3));
+455        items.add(new ItemInfo("Book and Quill", new String[][]{{"qui", "book"}}, Material.BOOK_AND_QUILL));
+456        items.add(new ItemInfo("Written Book", new String[][]{{"wri", "book"}}, Material.WRITTEN_BOOK));
+457        items.add(new ItemInfo("Cocoa Pod", new String[][]{{"coco"}, {"coc", "pod"}}, Material.COCOA));
+458        //1.4 Blocks & Items
+459        items.add(new ItemInfo("Command Block", new String[][]{{"comm"}}, Material.COMMAND));
+460        items.add(new ItemInfo("Beacon Block", new String[][]{{"beac"}}, Material.BEACON));
+461        items.add(new ItemInfo("Anvil", new String[][]{{"anv"}}, Material.ANVIL));
+462        items.add(new ItemInfo("Slightly Damaged Anvil", new String[][]{{"dam", "anv"}, {"sli", "anv"}}, Material.ANVIL, (short) 1));
+463        items.add(new ItemInfo("Very Damaged Anvil", new String[][]{{"ver", "dam", "anv"}, {"ver", "anv"}}, Material.ANVIL, (short) 2));
+464        items.add(new ItemInfo("Flower Pot Block", new String[][]{{"blo", "flow", "pot"}}, Material.FLOWER_POT));
+465        items.add(new ItemInfo("Flower Pot", new String[][]{{"flow", "pot"}}, Material.FLOWER_POT_ITEM));
+466        items.add(new ItemInfo("Cobblestone Wall", new String[][]{{"cobble", "wall"}}, Material.COBBLE_WALL));
+467        items.add(new ItemInfo("Mossy Cobblestone Wall", new String[][]{{"mos", "cob", "wall"}}, Material.COBBLE_WALL, (short) 1));
+468        items.add(new ItemInfo("Item Frame", new String[][]{{"fram"}}, Material.ITEM_FRAME));
+469        items.add(new ItemInfo("Skeleton Skull", new String[][]{{"skel", "skul"}, {"skel", "hea"}}, Material.SKULL_ITEM));
+470        items.add(new ItemInfo("Wither Skeleton Skull", new String[][]{{"wither", "skul"}, {"with", "hea"}}, Material.SKULL_ITEM, (short) 1));
+471        items.add(new ItemInfo("Zombie Head", new String[][]{{"zomb", "hea"}, {"zomb", "skul"}}, Material.SKULL_ITEM, (short) 2));
+472        items.add(new ItemInfo("Human Head", new String[][]{{"huma", "skul"}, {"huma", "hea"}}, Material.SKULL_ITEM, (short) 3));
+473        items.add(new ItemInfo("Creeper Head", new String[][]{{"cree", "skul"}, {"cree", "hea"}}, Material.SKULL_ITEM, (short) 4));
+474        items.add(new ItemInfo("Carrot", new String[][]{{"carro"}}, Material.CARROT_ITEM));
+475        items.add(new ItemInfo("Golden Carrot", new String[][]{{"carr", "gol"}}, Material.GOLDEN_CARROT));
+476        items.add(new ItemInfo("Carrot Block", new String[][]{{"blo", "carr"}}, Material.CARROT));
+477        items.add(new ItemInfo("Carrot on a Stick", new String[][]{{"sti", "carr"}}, Material.CARROT_STICK));
+478        items.add(new ItemInfo("Potato", new String[][]{{"pota"}}, Material.POTATO_ITEM));
+479        items.add(new ItemInfo("Potato Block", new String[][]{{"blo", "pota"}}, Material.POTATO));
+480        items.add(new ItemInfo("Baked Potato", new String[][]{{"pota", "bak"}}, Material.BAKED_POTATO));
+481        items.add(new ItemInfo("Poisonous Potato", new String[][]{{"pota", "poi"}}, Material.POISONOUS_POTATO));
+482        items.add(new ItemInfo("Wood Button", new String[][]{{"woo", "butto"}}, Material.WOOD_BUTTON));
+483        items.add(new ItemInfo("Pumpkin Pie", new String[][]{{"pie"}, {"pumpk", "pie"}}, Material.PUMPKIN_PIE));
+484        items.add(new ItemInfo("Potion of Invisibility", new String[][] {{"poti", "invi"}}, Material.POTION, (short) 8206));
+485        items.add(new ItemInfo("Potion of Invisibility (Extended)", new String[][] {{"poti", "invi", "ext"}}, Material.POTION, (short) 8270));
+486        items.add(new ItemInfo("Potion of Night Vision", new String[][] {{"poti", "nigh", "visi"}, {"poti", "visio"}}, Material.POTION, (short) 8198));
+487        items.add(new ItemInfo("Potion of Night Vision (Extended)", new String[][] {{"poti", "nigh", "visi", "ext"}, {"poti", "visio", "ext"}}, Material.POTION, (short) 8262));
+488        items.add(new ItemInfo("Enchanted Book", new String[][]{{"ench", "boo"}}, Material.ENCHANTED_BOOK));
+489        items.add(new ItemInfo("Nether Star", new String[][]{{"star", "neth"}}, Material.NETHER_STAR));
+490        items.add(new ItemInfo("Firework Star", new String[][]{{"fire", "star"}}, Material.FIREWORK_CHARGE));
+491        items.add(new ItemInfo("Firework Rocket", new String[][]{{"rocket"}, {"firework"}}, Material.FIREWORK));
+492        items.add(new ItemInfo("White Firework Star", new String[][]{{"whi", "fire", "star"}}, Material.FIREWORK_CHARGE, (short) 1));
+493        items.add(new ItemInfo("Orange Firework Star", new String[][]{{"ora", "fire", "star"}}, Material.FIREWORK_CHARGE, (short) 2));
+494        items.add(new ItemInfo("Magenta Firework Star", new String[][]{{"mag", "fire", "star"}}, Material.FIREWORK_CHARGE, (short) 3));
+495        items.add(new ItemInfo("Light Blue Firework Star", new String[][]{{"blu", "lig", "fire", "star"}}, Material.FIREWORK_CHARGE, (short) 4));
+496        items.add(new ItemInfo("Yellow Firework Star", new String[][]{{"yell", "fire", "star"}}, Material.FIREWORK_CHARGE, (short) 5));
+497        items.add(new ItemInfo("Lime Firework Star", new String[][]{{"lim", "fire", "star"}}, Material.FIREWORK_CHARGE, (short) 6));
+498        items.add(new ItemInfo("Pink Firework Star", new String[][]{{"pin", "fire", "star"}}, Material.FIREWORK_CHARGE, (short) 7));
+499        items.add(new ItemInfo("Gray Firework Star", new String[][]{{"gra", "fire", "star"}}, Material.FIREWORK_CHARGE, (short) 8));
+500        items.add(new ItemInfo("Light Gray Firework Star", new String[][]{{"lig", "gra", "fire", "star"}}, Material.FIREWORK_CHARGE, (short) 9));
+501        items.add(new ItemInfo("Cyan Firework Star", new String[][]{{"cya", "fire", "star"}}, Material.FIREWORK_CHARGE, (short) 10));
+502        items.add(new ItemInfo("Purple Firework Star", new String[][]{{"pur", "fire", "star"}}, Material.FIREWORK_CHARGE, (short) 11));
+503        items.add(new ItemInfo("Blue Firework Star", new String[][]{{"blue", "fire", "star"}}, Material.FIREWORK_CHARGE, (short) 12));
+504        items.add(new ItemInfo("Brown Firework Star", new String[][]{{"bro", "fire", "star"}}, Material.FIREWORK_CHARGE, (short) 13));
+505        items.add(new ItemInfo("Green Firework Star", new String[][]{{"gre", "fire", "star"}}, Material.FIREWORK_CHARGE, (short) 14));
+506        items.add(new ItemInfo("Red Firework Star", new String[][]{{"red", "fire", "star"}}, Material.FIREWORK_CHARGE, (short) 15));
+507        items.add(new ItemInfo("Black Firework Star", new String[][]{{"bla", "fire", "star"}}, Material.FIREWORK_CHARGE, (short) 16));
+508        items.add(new ItemInfo("Dead Bush", new String[][]{{"dea", "bush"}}, Material.DEAD_BUSH));
+509        items.add(new ItemInfo("Nether Brick Slab", new String[][]{{"sla", "net", "bri"}, {"step", "net", "bri"}}, Material.STEP, (short) 6));
+510        //1.5 Blocks & Items
+511        items.add(new ItemInfo("Activator Rail", new String[][]{{"rail", "acti"}, {"trac", "acti"}, {"activ"}}, Material.ACTIVATOR_RAIL));
+512        items.add(new ItemInfo("Block of Redstone", new String[][]{{"block", "red"}, {"block", "rs"}}, Material.REDSTONE_BLOCK));
+513        items.add(new ItemInfo("Daylight Sensor", new String[][]{{"day", "sen"}, {"ligh", "sen"}}, Material.DAYLIGHT_DETECTOR));
+514        items.add(new ItemInfo("Dropper", new String[][]{{"drop"}}, Material.DROPPER));
+515        items.add(new ItemInfo("Hopper", new String[][]{{"hop", "item"}, {"hop"}}, Material.HOPPER));
+516        items.add(new ItemInfo("Explosive Minecart", new String[][]{{"cart", "tnt"}, {"cart", "exp"}}, Material.EXPLOSIVE_MINECART));
+517        items.add(new ItemInfo("Hopper Minecart", new String[][]{{"cart", "hop"}, {"hop"}}, Material.HOPPER_MINECART));
+518        items.add(new ItemInfo("Redstone Comparator", new String[][]{{"rs", "compara"}, {"red", "comparat"}, {"comparat"}}, Material.REDSTONE_COMPARATOR));
+519        items.add(new ItemInfo("Trapped Chest", new String[][]{{"tra", "ches"}}, Material.TRAPPED_CHEST));
+520        items.add(new ItemInfo("Nether Brick Item", new String[][]{{"neth", "bric", "it"}}, Material.NETHER_BRICK_ITEM));
+521        items.add(new ItemInfo("Nether Quartz", new String[][]{{"neth", "qua"}, {"qua"}}, Material.QUARTZ));
+522        items.add(new ItemInfo("Nether Quartz Ore", new String[][]{{"neth", "qua", "ore"}, {"qua", "ore"}}, Material.QUARTZ_ORE));
+523        items.add(new ItemInfo("Quartz Block", new String[][]{{"qua", "blo"}}, Material.QUARTZ_BLOCK));
+524        items.add(new ItemInfo("Quartz Slab", new String[][]{{"qua", "slab"}, {"qua", "step"}}, Material.STEP, (short) 7));
+525        items.add(new ItemInfo("Quartz Double Slab", new String[][]{{"qua", "dou", "sla"}, {"qua", "dou", "step"}}, Material.DOUBLE_STEP, (short) 7));
+526        items.add(new ItemInfo("Quartz Stairs", new String[][]{{"qua", "stair"}}, Material.QUARTZ_STAIRS));
+527        items.add(new ItemInfo("Chiseled Quartz", new String[][]{{"qua", "chis"}}, Material.QUARTZ_BLOCK, (short) 1));
+528        items.add(new ItemInfo("Quartz Pillar", new String[][]{{"qua", "pil"}}, Material.QUARTZ_BLOCK, (short) 2));
+529        items.add(new ItemInfo("Weighted Gold Plate", new String[][]{{"wei", "plat", "gol"}, {"pres", "plat", "gol"}}, Material.GOLD_PLATE));
+530        items.add(new ItemInfo("Weighted Iron Plate", new String[][]{{"wei", "plat", "iro"}, {"pres", "plat", "iro"}}, Material.IRON_PLATE));
+531        //1.6 Blocks and Items
+532        items.add(new ItemInfo("Horse Spawn Egg", new String[][] {{"horse", "egg"}}, Material.MONSTER_EGG, (short) 100));
+533        items.add(new ItemInfo("Diamond Horse Armor", new String[][] {{"dia", "horse", "arm"}, {"dia", "bard"}}, Material.DIAMOND_BARDING));
+534        items.add(new ItemInfo("Gold Horse Armor", new String[][] {{"gold", "horse", "arm"}, {"gold", "bard"}}, Material.GOLD_BARDING));
+535        items.add(new ItemInfo("Iron Horse Armor", new String[][] {{"iron", "horse", "arm"}, {"iron", "bard"}}, Material.IRON_BARDING));
+536        items.add(new ItemInfo("Leash", new String[][] {{"leas"}, {"lead"}}, Material.LEASH));
+537        items.add(new ItemInfo("Hay Bale", new String[][] {{"hay", "bale"}, {"hay", "block"}}, Material.HAY_BLOCK));
+538        items.add(new ItemInfo("Name Tag", new String[][] {{"name", "tag"}}, Material.NAME_TAG));
+539        items.add(new ItemInfo("Hardened Clay", new String[][]{{"hard", "clay"}}, Material.HARD_CLAY));
+540        items.add(new ItemInfo("Block of Coal", new String[][]{{"coal", "block"}}, Material.COAL_BLOCK));
+541        items.add(new ItemInfo("White Stained Clay", new String[][]{{"clay", "whit"}, {"stai", "clay"}, {"whi", "stain", "cla"}}, Material.STAINED_CLAY));
+542        items.add(new ItemInfo("Orange Stained Clay", new String[][]{{"clay", "ora"}, {"ora", "stain", "cla"}}, Material.STAINED_CLAY, (short) 1));
+543        items.add(new ItemInfo("Magenta Stained Clay", new String[][]{{"clay", "mag"}, {"mag", "stain", "cla"}}, Material.STAINED_CLAY, (short) 2));
+544        items.add(new ItemInfo("Light Blue Stained Clay", new String[][]{{"clay", "lig", "blue"}, {"lig", "blu", "stain", "cla"}}, Material.STAINED_CLAY, (short) 3));
+545        items.add(new ItemInfo("Yellow Stained Clay", new String[][]{{"clay", "yell"}, {"yell", "stain", "cla"}}, Material.STAINED_CLAY, (short) 4));
+546        items.add(new ItemInfo("Lime Stained Clay", new String[][]{{"clay", "lig", "gree"}, {"clay", "lime"}, {"lime", "stain", "cla"}}, Material.STAINED_CLAY, (short) 5));
+547        items.add(new ItemInfo("Pink Stained Clay", new String[][]{{"clay", "pink"}, {"pink", "stain", "cla"}}, Material.STAINED_CLAY, (short) 6));
+548        items.add(new ItemInfo("Gray Stained Clay", new String[][]{{"clay", "gray"}, {"clay", "grey"}, {"gra", "stain", "cla"}, {"gre", "stain", "cla"}}, Material.STAINED_CLAY, (short) 7));
+549        items.add(new ItemInfo("Light Gray Stained Clay", new String[][]{{"lig", "clay", "gra"}, {"lig", "clay", "gre"}, {"lig", "gra", "stain", "cla"}}, Material.STAINED_CLAY, (short) 8));
+550        items.add(new ItemInfo("Cyan Stained Clay", new String[][]{{"clay", "cya"}, {"cya", "stain", "cla"}}, Material.STAINED_CLAY, (short) 9));
+551        items.add(new ItemInfo("Purple Stained Clay", new String[][]{{"clay", "pur"}, {"pur", "stain", "cla"}}, Material.STAINED_CLAY, (short) 10));
+552        items.add(new ItemInfo("Blue Stained Clay", new String[][]{{"clay", "blue"}, {"blue", "stain", "cla"}}, Material.STAINED_CLAY, (short) 11));
+553        items.add(new ItemInfo("Brown Stained Clay", new String[][]{{"clay", "brown"}, {"brown", "stain", "cla"}}, Material.STAINED_CLAY, (short) 12));
+554        items.add(new ItemInfo("Green Stained Clay", new String[][]{{"clay", "gree"}, {"gree", "stain", "cla"}}, Material.STAINED_CLAY, (short) 13));
+555        items.add(new ItemInfo("Red Stained Clay", new String[][]{{"clay", "red"}, {"red", "stain", "cla"}}, Material.STAINED_CLAY, (short) 14));
+556        items.add(new ItemInfo("Black Stained Clay", new String[][]{{"clay", "bla"}, {"bla", "stain", "cla"}}, Material.STAINED_CLAY, (short) 15));
+557        items.add(new ItemInfo("White Carpet", new String[][]{{"carpet", "whit"}, {"carpet"}}, Material.CARPET));
+558        items.add(new ItemInfo("Orange Carpet", new String[][]{{"carpet", "ora"}}, Material.CARPET, (short) 1));
+559        items.add(new ItemInfo("Magenta Carpet", new String[][]{{"carpet", "mag"}}, Material.CARPET, (short) 2));
+560        items.add(new ItemInfo("Light Blue Carpet", new String[][]{{"carpet", "lig", "blue"}}, Material.CARPET, (short) 3));
+561        items.add(new ItemInfo("Yellow Carpet", new String[][]{{"carpet", "yell"}}, Material.CARPET, (short) 4));
+562        items.add(new ItemInfo("Light Green Carpet", new String[][]{{"carpet", "lig", "gree"}, {"carpet", "gree"}}, Material.CARPET, (short) 5));
+563        items.add(new ItemInfo("Pink Carpet", new String[][]{{"carpet", "pink"}}, Material.CARPET, (short) 6));
+564        items.add(new ItemInfo("Gray Carpet", new String[][]{{"carpet", "gray"}, {"carpet", "grey"}}, Material.CARPET, (short) 7));
+565        items.add(new ItemInfo("Light Gray Carpet", new String[][]{{"lig", "carpet", "gra"}, {"lig", "carpet", "gre"}}, Material.CARPET, (short) 8));
+566        items.add(new ItemInfo("Cyan Carpet", new String[][]{{"carpet", "cya"}}, Material.CARPET, (short) 9));
+567        items.add(new ItemInfo("Purple Carpet", new String[][]{{"carpet", "pur"}}, Material.CARPET, (short) 10));
+568        items.add(new ItemInfo("Blue Carpet", new String[][]{{"carpet", "blue"}}, Material.CARPET, (short) 11));
+569        items.add(new ItemInfo("Brown Carpet", new String[][]{{"carpet", "brow"}}, Material.CARPET, (short) 12));
+570        items.add(new ItemInfo("Dark Green Carpet", new String[][]{{"carpet", "dar", "gree"}, {"carpet", "gree"}}, Material.CARPET, (short) 13));
+571        items.add(new ItemInfo("Red Carpet", new String[][]{{"carpet", "red"}}, Material.CARPET, (short) 14));
+572        items.add(new ItemInfo("Black Carpet", new String[][]{{"carpet", "bla"}}, Material.CARPET, (short) 15));
+573        //1.7 Blocks and Items
+574        items.add(new ItemInfo("Grassless Dirt", new String[][]{{"less", "dirt"}}, Material.DIRT, (short) 1));
+575        items.add(new ItemInfo("Acacia Log", new String[][]{{"acac"}, {"log", "acac"}}, Material.LOG_2));
+576        items.add(new ItemInfo("Dark Oak Log", new String[][]{{"oak", "dar"}, {"log", "oak", "dar"}}, Material.LOG_2, (short) 1));
+577        items.add(new ItemInfo("Acacia Plank", new String[][]{{"acac", "plank"}, {"acac", "wood"}}, Material.WOOD, (short) 4));
+578        items.add(new ItemInfo("Dark Oak Plank", new String[][]{{"dar", "oak", "plank"}, {"dar", "oak", "wood"}}, Material.WOOD, (short) 5));
+579        items.add(new ItemInfo("Acacia Wood Stairs", new String[][]{{"stair", "wood", "acac"}, {"acac", "stair"}}, Material.ACACIA_STAIRS));
+580        items.add(new ItemInfo("Dark Oak Wood Stairs", new String[][]{{"stair", "wood", "dar", "oak"}, {"dar", "oak", "stair"}}, Material.DARK_OAK_STAIRS));
+581        items.add(new ItemInfo("Acacia Sapling", new String[][]{{"sapl", "acac"}}, Material.SAPLING, (short) 4));
+582        items.add(new ItemInfo("Dark Oak Sapling", new String[][]{{"sapl", "oak", "dar"}}, Material.SAPLING, (short) 5));
+583        items.add(new ItemInfo("Acacia Leaves", new String[][]{{"lea", "acac"}}, Material.LEAVES_2));
+584        items.add(new ItemInfo("Dark Oak Leaves", new String[][]{{"lea", "oak", "dar"}}, Material.LEAVES_2, (short) 1));
+585        items.add(new ItemInfo("Packed Ice", new String[][]{{"ice", "pac"}, {"ice", "opaq"}}, Material.PACKED_ICE));
+586        items.add(new ItemInfo("Podzol", new String[][]{{"podz"}, {"dirt", "pod"}}, Material.DIRT, (short) 2));
+587        items.add(new ItemInfo("Red Sand", new String[][]{{"red", "sand"}}, Material.SAND, (short) 1));
+588        items.add(new ItemInfo("Cobblestone Monster Egg", new String[][]{{"cobb","sto","mons","egg"},{"cobb","mons", "egg"}, {"hid", "silver", "cob"}}, Material.MONSTER_EGGS, (short) 1));
+589        items.add(new ItemInfo("Cracked Stone Brick Monster Egg", new String[][]{{"cra","sto","bri","mons", "egg"}, {"hid", "silver","cra","sto","bri"}}, Material.MONSTER_EGGS, (short) 4));
+590        items.add(new ItemInfo("Chiseled Stone Brick Monster Egg", new String[][]{{"chi","stone","bri","mons", "egg"}, {"hid", "silver","chi","sto","bri"}}, Material.MONSTER_EGGS, (short) 5));
+591        items.add(new ItemInfo("White Stained Glass", new String[][]{{"stai", "glas", "whit"}, {"stai", "glas"}}, Material.STAINED_GLASS));
+592        items.add(new ItemInfo("Orange Stained Glass", new String[][]{{"stai", "glas", "ora"}}, Material.STAINED_GLASS, (short) 1));
+593        items.add(new ItemInfo("Magenta Stained Glass", new String[][]{{"stai", "glas", "mag"}}, Material.STAINED_GLASS, (short) 2));
+594        items.add(new ItemInfo("Light Blue Stained Glass", new String[][]{{"stai", "glas", "lig", "blue"}}, Material.STAINED_GLASS, (short) 3));
+595        items.add(new ItemInfo("Yellow Stained Glass", new String[][]{{"stai", "glas", "yell"}}, Material.STAINED_GLASS, (short) 4));
+596        items.add(new ItemInfo("Light Green Stained Glass", new String[][]{{"stai", "glas", "lig", "gree"}, {"stai", "glas", "gree"}}, Material.STAINED_GLASS, (short) 5));
+597        items.add(new ItemInfo("Pink Stained Glass", new String[][]{{"stai", "glas", "pink"}}, Material.STAINED_GLASS, (short) 6));
+598        items.add(new ItemInfo("Gray Stained Glass", new String[][]{{"stai", "glas", "gra"}, {"stai", "glas", "gre"}}, Material.STAINED_GLASS, (short) 7));
+599        items.add(new ItemInfo("Light Gray Stained Glass", new String[][]{{"lig", "stai", "glas", "gra"}, {"lig", "stai", "glas", "gre"}}, Material.STAINED_GLASS, (short) 8));
+600        items.add(new ItemInfo("Cyan Stained Glass", new String[][]{{"stai", "glas", "cya"}}, Material.STAINED_GLASS, (short) 9));
+601        items.add(new ItemInfo("Purple Stained Glass", new String[][]{{"stai", "glas", "pur"}}, Material.STAINED_GLASS, (short) 10));
+602        items.add(new ItemInfo("Blue Stained Glass", new String[][]{{"stai", "glas", "blue"}}, Material.STAINED_GLASS, (short) 11));
+603        items.add(new ItemInfo("Brown Stained Glass", new String[][]{{"stai", "glas", "brow"}}, Material.STAINED_GLASS, (short) 12));
+604        items.add(new ItemInfo("Dark Green Stained Glass", new String[][]{{"stai", "glas", "dar", "gree"}, {"stai", "glas", "gree"}}, Material.STAINED_GLASS, (short) 13));
+605        items.add(new ItemInfo("Red Stained Glass", new String[][]{{"stai", "glas", "red"}}, Material.STAINED_GLASS, (short) 14));
+606        items.add(new ItemInfo("Black Stained Glass", new String[][]{{"stai", "glas", "bla"}}, Material.STAINED_GLASS, (short) 15));
+607        items.add(new ItemInfo("White Stained Glass Pane", new String[][]{{"stai", "glas", "pane", "whit"}, {"stai", "glas", "pane"}}, Material.STAINED_GLASS_PANE));
+608        items.add(new ItemInfo("Orange Stained Glass Pane", new String[][]{{"stai", "glas", "pane", "ora"}}, Material.STAINED_GLASS_PANE, (short) 1));
+609        items.add(new ItemInfo("Magenta Stained Glass Pane", new String[][]{{"stai", "glas", "pane", "mag"}}, Material.STAINED_GLASS_PANE, (short) 2));
+610        items.add(new ItemInfo("Light Blue Stained Glass Pane", new String[][]{{"stai", "glas", "pane", "lig", "blue"}}, Material.STAINED_GLASS_PANE, (short) 3));
+611        items.add(new ItemInfo("Yellow Stained Glass Pane", new String[][]{{"stai", "glas", "pane", "yell"}}, Material.STAINED_GLASS_PANE, (short) 4));
+612        items.add(new ItemInfo("Light Green Stained Glass Pane", new String[][]{{"stai", "glas", "pane", "lig", "gree"}, {"stai", "glas", "pane", "gree"}}, Material.STAINED_GLASS_PANE, (short) 5));
+613        items.add(new ItemInfo("Pink Stained Glass Pane", new String[][]{{"stai", "glas", "pane", "pink"}}, Material.STAINED_GLASS_PANE, (short) 6));
+614        items.add(new ItemInfo("Gray Stained Glass Pane", new String[][]{{"stai", "glas", "pane", "gra"}, {"stai", "glas", "pane", "gre"}}, Material.STAINED_GLASS_PANE, (short) 7));
+615        items.add(new ItemInfo("Light Gray Stained Glass Pane", new String[][]{{"lig", "stai", "glas", "pane", "gra"}, {"lig", "stai", "glas", "pane", "gre"}}, Material.STAINED_GLASS_PANE, (short) 8));
+616        items.add(new ItemInfo("Cyan Stained Glass Pane", new String[][]{{"stai", "glas", "pane", "cya"}}, Material.STAINED_GLASS_PANE, (short) 9));
+617        items.add(new ItemInfo("Purple Stained Glass Pane", new String[][]{{"stai", "glas", "pane", "pur"}}, Material.STAINED_GLASS_PANE, (short) 10));
+618        items.add(new ItemInfo("Blue Stained Glass Pane", new String[][]{{"stai", "glas", "pane", "blue"}}, Material.STAINED_GLASS_PANE, (short) 11));
+619        items.add(new ItemInfo("Brown Stained Glass Pane", new String[][]{{"stai", "glas", "pane", "brow"}}, Material.STAINED_GLASS_PANE, (short) 12));
+620        items.add(new ItemInfo("Dark Green Stained Glass Pane", new String[][]{{"stai", "glas", "pane", "dar", "gree"}, {"stai", "glas", "pane", "gree"}}, Material.STAINED_GLASS_PANE, (short) 13));
+621        items.add(new ItemInfo("Red Stained Glass Pane", new String[][]{{"stai", "glas", "pane", "red"}}, Material.STAINED_GLASS_PANE, (short) 14));
+622        items.add(new ItemInfo("Black Stained Glass Pane", new String[][]{{"stai", "glas", "pane", "bla"}}, Material.STAINED_GLASS_PANE, (short) 15));
+623        items.add(new ItemInfo("Poppy", new String[][]{{"flow", "red"}, {"rose"}, {"poppy"}}, Material.RED_ROSE));
+624        items.add(new ItemInfo("Blue Orchid", new String[][]{{"flow", "blue"}, {"orch", "blue"}}, Material.RED_ROSE, (short) 1));
+625        items.add(new ItemInfo("Allium", new String[][]{{"flow", "mag"}, {"alli"}}, Material.RED_ROSE, (short) 2));
+626        items.add(new ItemInfo("Azure Bluet", new String[][]{{"flow", "whit"}, {"azu", "blue"}}, Material.RED_ROSE, (short) 3));
+627        items.add(new ItemInfo("Red Tulip", new String[][]{{"tul", "red"}}, Material.RED_ROSE, (short) 4));
+628        items.add(new ItemInfo("Orange Tulip", new String[][]{{"tul", "ora"}}, Material.RED_ROSE, (short) 5));
+629        items.add(new ItemInfo("White Tulip", new String[][]{{"tul", "whit"}}, Material.RED_ROSE, (short) 6));
+630        items.add(new ItemInfo("Pink Tulip", new String[][]{{"tul", "pin"}}, Material.RED_ROSE, (short) 7));
+631        items.add(new ItemInfo("Oxeye Daisy", new String[][]{{"dais"}, {"oxe", "dais"}}, Material.RED_ROSE, (short) 8));
+632        items.add(new ItemInfo("Sunflower", new String[][]{{"flow", "sun"}}, Material.DOUBLE_PLANT, (short) 0));
+633        items.add(new ItemInfo("Lilac", new String[][]{{"flow", "lila"}, {"lila"}}, Material.DOUBLE_PLANT, (short) 1));
+634        items.add(new ItemInfo("Double Tallgrass", new String[][]{{"doub", "tall", "gras"}, {"doub", "long", "gras"}}, Material.DOUBLE_PLANT, (short) 2));
+635        items.add(new ItemInfo("Large Fern", new String[][]{{"larg", "fern"}, {"doub", "fern"}}, Material.DOUBLE_PLANT, (short) 3));
+636        items.add(new ItemInfo("Rose Bush", new String[][]{{"bush", "rose"}}, Material.DOUBLE_PLANT, (short) 4));
+637        items.add(new ItemInfo("Peony", new String[][]{{"flow", "peon"}, {"peon"}}, Material.DOUBLE_PLANT, (short) 5));
+638        items.add(new ItemInfo("Command Minecart", new String[][]{{"cart", "comm"}}, Material.COMMAND_MINECART));
+639        items.add(new ItemInfo("Potion of Water Breathing", new String[][] {{"poti", "wate", "breat"}}, Material.POTION, (short) 8205));
+640        items.add(new ItemInfo("Potion of Water Breathing (Reverted)", new String[][] {{"poti", "wate", "breat", "rev"}}, Material.POTION, (short) 8237));
+641        items.add(new ItemInfo("Potion of Water Breathing (Extended)", new String[][] {{"poti", "wate", "breat", "ext"}}, Material.POTION, (short) 8269));
+642        items.add(new ItemInfo("Splash Potion of Water Breathing", new String[][] {{"poti", "wate", "breat", "spl"}}, Material.POTION, (short) 16397));
+643        items.add(new ItemInfo("Splash Potion of Water Breathing (Reverted)", new String[][] {{"poti", "wate", "breat", "rev", "spl"}}, Material.POTION, (short) 16429));
+644        items.add(new ItemInfo("Splash Potion of Water Breathing (Extended)", new String[][] {{"poti", "wate", "breat", "ext", "spl"}}, Material.POTION, (short) 16461));
+645        items.add(new ItemInfo("Raw Salmon", new String[][]{{"salm"}, {"raw", "salm"}}, Material.RAW_FISH, (short) 1));
+646        items.add(new ItemInfo("Cooked Salmon", new String[][]{{"salm", "cook"}}, Material.COOKED_FISH, (short) 1));
+647        items.add(new ItemInfo("Clownfish", new String[][]{{"fish", "clow"}}, Material.RAW_FISH, (short) 2));
+648        items.add(new ItemInfo("Pufferfish", new String[][]{{"fish", "puff"}, {"fish", "blo"}, {"fish", "glob"}}, Material.RAW_FISH, (short) 3));
+649        items.add(new ItemInfo("Acacia Slab", new String[][]{{"slab", "aca"}, {"step", "aca"}}, Material.WOOD_STEP, (short) 4));
+650        items.add(new ItemInfo("Dark Oak Slab", new String[][]{{"slab", "dar", "oak"}, {"step", "dar", "oak"}}, Material.WOOD_STEP, (short) 5));
+651    }
+652
+653    @Deprecated
+654    public static ItemInfo itemById(int typeId) {
+655        return itemByType(Material.getMaterial(typeId), (short) 0);
+656    }
+657
+658    @Deprecated
+659    public static ItemInfo itemById(int typeId, short subType) {
+660        return itemByType(Material.getMaterial(typeId), subType);
+661    }
+662
+663    /**
+664     * Searchs for an ItemInfo from the given ItemStack
+665     * @param itemStack to search on
+666     * @return ItemInfo found, or null
+667     */
+668    public static ItemInfo itemByStack(ItemStack itemStack) {
+669        if (itemStack == null) {
+670            return null;
+671        }
+672
+673        for (ItemInfo item : items) {
+674            if (itemStack.getType().equals(item.getType()) && item.isDurable()) {
+675                return item;
+676            } else if (itemStack.getType().equals(item.getType()) && item.getSubTypeId() == itemStack.getDurability()) {
+677                return item;
+678            }
+679        }
+680
+681        return null;
+682    }
+683
+684    public static ItemInfo itemByItem(ItemInfo item) {
+685        for (ItemInfo i : items) {
+686            if (item.equals(i)) {
+687                return i;
+688            }
+689        }
+690        return null;
+691    }
+692
+693    /**
+694     * Gets a relevant ItemInfo by it's Material
+695     * @param type of Material
+696     * @return ItemInfo record found or null if none
+697     */
+698    public static ItemInfo itemByType(Material type) {
+699        return itemByType(type, (short) 0);
+700    }
+701
+702    /**
+703     * Searches for an ItemInfo record by Material and SubTypeID
+704     * @param type of Material
+705     * @param subType to check for
+706     * @return ItemInfo record found or null if none
+707     */
+708    public static ItemInfo itemByType(Material type, short subType) {
+709        for (ItemInfo item : items) {
+710            if (item.getType() == type && item.getSubTypeId() == subType) {
+711                return item;
+712            }
+713        }
+714        return null;
+715    }
+716
+717    /**
+718     * Search for an item from a given string, useful for user input.  Uses 3 different types of reg-exp searching.
+719     *  Checks first for an ItemID.
+720     *  Checks second for ItemID:SubType
+721     *  Last, it will run a by-name item search assuming the string is the name of an item.
+722     *   
+723     * @param string to parse
+724     * @return ItemInfo found or null
+725     */
+726    public static ItemInfo itemByString(String string) {
+727
+728        // int
+729        Pattern pattern = Pattern.compile("(?i)^(\\d+)$");
+730        Matcher matcher = pattern.matcher(string);
+731        if (matcher.find()) {
+732            int id = Integer.parseInt(matcher.group(1));
+733            return itemById(id);
+734        }
+735
+736        // int:int
+737        matcher.reset();
+738        pattern = Pattern.compile("(?i)^(\\d+):(\\d+)$");
+739        matcher = pattern.matcher(string);
+740        if (matcher.find()) {
+741            int id = Integer.parseInt(matcher.group(1));
+742            short type = Short.parseShort(matcher.group(2));
+743            return itemById(id, type);
+744        }
+745
+746        // name
+747        matcher.reset();
+748        pattern = Pattern.compile("(?i)^(.*)$");
+749        matcher = pattern.matcher(string);
+750        if (matcher.find()) {
+751            String name = matcher.group(1);
+752            return itemByName(name);
+753        }
+754
+755        return null;
+756    }
+757
+758    public static ItemInfo itemByName(ArrayList<String> search) {
+759        String searchString = join(search, " ");
+760        return itemByName(searchString);
+761    }
+762
+763    public static ItemInfo[] itemByNames(ArrayList<String> search, boolean multi) {
+764        String searchString = join(search, " ");
+765        return itemsByName(searchString, multi);
+766    }
+767
+768    /**
+769     * Multi-Item return search for dumping all items with the search string to the player
+770     *
+771     *
+772     * @param searchString to search for
+773     * @param multi whether to return a list of items or just the first
+774     * @return Array of items found
+775     */
+776    public static ItemInfo[] itemsByName(String searchString, boolean multi) {
+777        if (multi == false) {
+778            return new ItemInfo[]{itemByName(searchString)};
+779        }
+780
+781        ItemInfo[] itemList = new ItemInfo[]{};
+782
+783        if (searchString.matches("\\d+:\\d+")) {
+784            // Match on integer:short to get typeId and subTypeId
+785
+786            // Retrieve/parse data
+787            String[] params = searchString.split(":");
+788            int typeId = Integer.parseInt(params[0]);
+789            short subTypeId = Short.parseShort(params[1]);
+790
+791            // Iterate through Items
+792            for (ItemInfo item : items) {
+793                // Test for match
+794                if (item.getId() == typeId && item.getSubTypeId() == subTypeId) {
+795                    itemList[0] = item;
+796                    break;
+797                }
+798            }
+799        } else if (searchString.matches("\\d+")) {
+800
+801            // Retrieve/parse data
+802            int typeId = Integer.parseInt(searchString);
+803
+804            // Iterate through Items
+805            int i = 0;
+806            for (ItemInfo item : items) {
+807                // Test for match
+808                if (item.getId() == typeId) {
+809                    itemList[i] = item;
+810                    i++;
+811                }
+812            }
+813        } else {
+814            // Else this must be a string that we need to identify
+815
+816            // Iterate through Items
+817            int i = 0;
+818            for (ItemInfo item : items) {
+819                // Look through each possible match criteria
+820                for (String[] attributes : item.search) {
+821                    boolean match = false;
+822                    // Loop through entire criteria strings
+823                    for (String attribute : attributes) {
+824                        if (searchString.toLowerCase().contains(attribute)) {
+825                            match = true;
+826                            break;
+827                        }
+828                    }
+829                    // THIS was a match
+830                    if (match) {
+831                        itemList[i] = item;
+832                        i++;
+833                    }
+834                }
+835            }
+836        }
+837
+838        return itemList;
+839    }
+840
+841    /**
+842     * Single item search function, for when we only ever want to return 1 result
+843     *
+844     * @param searchString to search for
+845     * @return ItemInfo Object
+846     */
+847    public static ItemInfo itemByName(String searchString) {
+848        ItemInfo matchedItem = null;
+849        int matchedItemStrength = 0;
+850        int matchedValue = 0;
+851
+852        if (searchString.matches("\\d+:\\d+")) {
+853            // Match on integer:short to get typeId and subTypeId
+854
+855            // Retrieve/parse data
+856            String[] params = searchString.split(":");
+857            int typeId = Integer.parseInt(params[0]);
+858            short subTypeId = Short.parseShort(params[1]);
+859
+860            // Iterate through Items
+861            for (ItemInfo item : items) {
+862                // Test for match
+863                if (item.getId() == typeId && item.getSubTypeId() == subTypeId) {
+864                    matchedItem = item;
+865                    break;
+866                }
+867            }
+868        } else if (searchString.matches("\\d+")) {
+869            // Match an integer only, assume subTypeId = 0
+870
+871            // Retrieve/parse data
+872            int typeId = Integer.parseInt(searchString);
+873            short subTypeId = 0;
+874
+875            // Iterate through Items
+876            for (ItemInfo item : items) {
+877                // Test for match
+878                if (item.getId() == typeId && item.getSubTypeId() == subTypeId) {
+879                    matchedItem = item;
+880                    break;
+881                }
+882            }
+883        } else {
+884            // Else this must be a string that we need to identify
+885
+886            // Iterate through Items
+887            for (ItemInfo item : items) {
+888                // Look through each possible match criteria
+889                for (String[] attributes : item.search) {
+890                    int val = 0;
+891                    boolean match = false;
+892                    // Loop through entire criteria strings
+893                    for (String attribute : attributes) {
+894                        if (searchString.toLowerCase().contains(attribute)) {
+895                            val += attribute.length();
+896                            match = true;
+897                        } else {
+898                            match = false;
+899                            break;
+900                        }
+901                    }
+902
+903                    // THIS was a match
+904                    if (match) {
+905                        if (matchedItem == null || val > matchedValue || attributes.length > matchedItemStrength) {
+906                            matchedItem = item;
+907                            matchedValue = val;
+908                            matchedItemStrength = attributes.length;
+909                        }
+910                    }
+911                }
+912            }
+913        }
+914
+915        return matchedItem;
+916    }
+917
+918    /**
+919     * Joins elements of a String array with the glue between them into a String.
+920     * @param array of elements to join together
+921     * @param glue what to put between each element
+922     * @return Concacted Array combined with glue
+923     */
+924    public static String join(String[] array, String glue) {
+925        String joined = null;
+926        for (String element : array) {
+927            if (joined == null) {
+928                joined = element;
+929            } else {
+930                joined += glue + element;
+931            }
+932        }
+933
+934        if (joined == null) {
+935            return "";
+936        } else {
+937            return joined;
+938        }
+939    }
+940
+941    /**
+942     * Joins elements of a String array with the glue between them into a String.
+943     * @param list of items to join together
+944     * @param glue what to put between each element
+945     * @return Concacted Array combined with glue
+946     */
+947    public static String join(List<String> list, String glue) {
+948        String joined = null;
+949        for (String element : list) {
+950            if (joined == null) {
+951                joined = element;
+952            } else {
+953                joined += glue + element;
+954            }
+955        }
+956
+957        if (joined == null) {
+958            return "";
+959        } else {
+960            return joined;
+961        }
+962    }
+963}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ + diff --git a/src-html/net/milkbowl/vault/permission/Permission.html b/src-html/net/milkbowl/vault/permission/Permission.html new file mode 100644 index 0000000..34767a7 --- /dev/null +++ b/src-html/net/milkbowl/vault/permission/Permission.html @@ -0,0 +1,824 @@ + + + +Source code + + + +
+
001/* This file is part of Vault.
+002
+003    Vault is free software: you can redistribute it and/or modify
+004    it under the terms of the GNU Lesser General Public License as published by
+005    the Free Software Foundation, either version 3 of the License, or
+006    (at your option) any later version.
+007
+008    Vault is distributed in the hope that it will be useful,
+009    but WITHOUT ANY WARRANTY; without even the implied warranty of
+010    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+011    GNU Lesser General Public License for more details.
+012
+013    You should have received a copy of the GNU Lesser General Public License
+014    along with Vault.  If not, see <http://www.gnu.org/licenses/>.
+015 */
+016package net.milkbowl.vault.permission;
+017
+018import java.util.logging.Logger;
+019
+020import org.bukkit.OfflinePlayer;
+021import org.bukkit.World;
+022import org.bukkit.command.CommandSender;
+023import org.bukkit.entity.Player;
+024import org.bukkit.permissions.PermissionAttachment;
+025import org.bukkit.permissions.PermissionAttachmentInfo;
+026import org.bukkit.plugin.Plugin;
+027
+028/**
+029 * The main Permission API - allows for group and player based permission tests
+030 *
+031 */
+032public abstract class Permission {
+033
+034        protected static final Logger log = Logger.getLogger("Minecraft");
+035    protected Plugin plugin = null;
+036
+037    /**
+038     * Gets name of permission method
+039     * @return Name of Permission Method
+040     */
+041    abstract public String getName();
+042
+043    /**
+044     * Checks if permission method is enabled.
+045     * @return Success or Failure
+046     */
+047    abstract public boolean isEnabled();
+048    
+049    /**
+050     * Returns if the permission system is or attempts to be compatible with super-perms.
+051     * @return True if this permission implementation works with super-perms
+052     */
+053    abstract public boolean hasSuperPermsCompat();
+054    
+055    /**
+056     * @deprecated As of VaultAPI 1.4 use {@link #playerHas(String, OfflinePlayer, String)} instead.
+057     */
+058    @Deprecated
+059    public boolean has(String world, String player, String permission) {
+060        if (world == null) {
+061            return playerHas((String) null, player, permission);
+062        }
+063        return playerHas(world, player, permission);
+064    }
+065
+066    /**
+067     * @deprecated As of VaultAPI 1.4 use {@link #playerHas(String, OfflinePlayer, String)} instead.
+068     */
+069    @Deprecated
+070    public boolean has(World world, String player, String permission) {
+071        if (world == null) {
+072            return playerHas((String) null, player, permission);
+073        }
+074        return playerHas(world.getName(), player, permission);
+075    }
+076
+077    /**
+078     * Checks if a CommandSender has a permission node.
+079     * This will return the result of bukkits, generic .hasPermission() method and is identical in all cases.
+080     * This method will explicitly fail if the registered permission system does not register permissions in bukkit.
+081     * 
+082     * For easy checking of a commandsender
+083     * @param sender to check permissions on
+084     * @param permission to check for
+085     * @return true if the sender has the permission
+086     */
+087    public boolean has(CommandSender sender, String permission) {
+088        return sender.hasPermission(permission);
+089    }
+090
+091    /**
+092     * Checks if player has a permission node. (Short for playerHas(...)
+093     * @param player Player Object
+094     * @param permission Permission node
+095     * @return Success or Failure
+096     */
+097    public boolean has(Player player, String permission) {
+098        return player.hasPermission(permission);
+099    }
+100
+101    /**
+102     * @deprecated As of VaultAPI 1.4 use {@link #playerHas(String, OfflinePlayer, String)} instead.
+103     */
+104    @Deprecated
+105    abstract public boolean playerHas(String world, String player, String permission);
+106
+107    /**
+108     * @deprecated As of VaultAPI 1.4 use {@link #playerHas(String, OfflinePlayer, String)} instead.
+109     */
+110    @Deprecated
+111    public boolean playerHas(World world, String player, String permission) {
+112        if (world == null) {
+113            return playerHas((String) null, player, permission);
+114        }
+115        return playerHas(world.getName(), player, permission);
+116    }
+117    
+118    /**
+119     * Checks if player has a permission node.
+120     * Supports NULL value for World if the permission system registered supports global permissions.
+121     * But May return odd values if the servers registered permission system does not have a global permission store.
+122     * 
+123     * @param world String world name
+124     * @param player to check
+125     * @param permission Permission node
+126     * @return Success or Failure
+127     */
+128    public boolean playerHas(String world, OfflinePlayer player, String permission) {
+129        if (world == null) {
+130                return has((String) null, player.getName(), permission);
+131        }
+132        return has(world, player.getName(), permission);
+133    }
+134
+135    /**
+136     * Checks if player has a permission node.
+137     * Defaults to world-specific permission check if the permission system supports it.
+138     * See {@link #playerHas(String, OfflinePlayer, String)} for explicit global or world checks.
+139     *  
+140     * @param player Player Object
+141     * @param permission Permission node
+142     * @return Success or Failure
+143     */
+144    public boolean playerHas(Player player, String permission) {
+145        return has(player, permission);
+146    }
+147
+148    /**
+149     * @deprecated As of VaultAPI 1.4 use {@link #playerAdd(String, OfflinePlayer, String)} instead.
+150     * Add permission to a player.
+151     * Supports NULL value for World if the permission system registered supports global permissions.
+152     * But May return odd values if the servers registered permission system does not have a global permission store.
+153     * 
+154     * @param world World name
+155     * @param player Player name
+156     * @param permission Permission node
+157     * @return Success or Failure
+158     */
+159    @Deprecated
+160    abstract public boolean playerAdd(String world, String player, String permission);
+161
+162    /**
+163     * @deprecated As of VaultAPI 1.4 use {@link #playerAdd(String, OfflinePlayer, String)} instead.
+164     */
+165    @Deprecated
+166    public boolean playerAdd(World world, String player, String permission) {
+167        if (world == null) {
+168            return playerAdd((String) null, player, permission);
+169        }
+170        return playerAdd(world.getName(), player, permission);
+171    }
+172
+173    /**
+174     * Add permission to a player.
+175     * Supports NULL value for World if the permission system registered supports global permissions.
+176     * But May return odd values if the servers registered permission system does not have a global permission store.
+177     * 
+178     * @param world String world name
+179     * @param player to add to
+180     * @param permission Permission node
+181     * @return Success or Failure
+182     */
+183    public boolean playerAdd(String world, OfflinePlayer player, String permission) {
+184        if (world == null) {
+185            return playerAdd((String) null, player.getName(), permission);
+186        }
+187        return playerAdd(world, player.getName(), permission);
+188    }
+189
+190    /**
+191     * Add permission to a player ONLY for the world the player is currently on.
+192     * This is a world-specific operation, if you want to add global permission you must explicitly use NULL for the world.
+193     * See {@link #playerAdd(String, OfflinePlayer, String)} for global permission use.
+194     * 
+195     * @param player Player Object
+196     * @param permission Permission node
+197     * @return Success or Failure
+198     */
+199    public boolean playerAdd(Player player, String permission) {
+200        return playerAdd(player.getWorld().getName(), player, permission);
+201    }
+202    
+203    /**
+204     * @deprecated As of VaultAPI 1.4 use {@link #playerAddTransient(OfflinePlayer, String)} instead.
+205     */
+206    @Deprecated
+207    public boolean playerAddTransient(String player, String permission) throws UnsupportedOperationException {
+208                Player p = plugin.getServer().getPlayer(player);
+209                if (p == null) {
+210                        throw new UnsupportedOperationException(getName() + " does not support offline player transient permissions!");
+211                }
+212                return playerAddTransient(p, permission);
+213        }
+214    
+215    /**
+216     * Add transient permission to a player.
+217     * This implementation can be used by any subclass which implements a "pure" superperms plugin, i.e. 
+218     * one that only needs the built-in Bukkit API to add transient permissions to a player.
+219     * 
+220     * @param player to add to
+221     * @param permission Permission node
+222     * @return Success or Failure
+223     */
+224    public boolean playerAddTransient(OfflinePlayer player, String permission) throws UnsupportedOperationException {
+225        if (player.isOnline()) {
+226                return playerAddTransient((Player) player, permission);
+227        }
+228                throw new UnsupportedOperationException(getName() + " does not support offline player transient permissions!");
+229        }
+230
+231    /**
+232     * Add transient permission to a player.
+233     * This operation adds a permission onto the player object in bukkit via Bukkit's permission interface.
+234     * 
+235     * @param player Player Object
+236     * @param permission Permission node
+237     * @return Success or Failure
+238     */
+239    public boolean playerAddTransient(Player player, String permission) {
+240                for (PermissionAttachmentInfo paInfo : player.getEffectivePermissions()) {
+241                        if (paInfo.getAttachment() != null && paInfo.getAttachment().getPlugin().equals(plugin)) {
+242                                paInfo.getAttachment().setPermission(permission, true);
+243                                return true;
+244                        }
+245                }
+246
+247                PermissionAttachment attach = player.addAttachment(plugin);
+248                attach.setPermission(permission, true);
+249
+250                return true;
+251    }
+252
+253    /**
+254     * Adds a world specific transient permission to the player, may only work with some permission managers.
+255     * Defaults to GLOBAL permissions for any permission system that does not support world-specific transient permissions!
+256     * 
+257     * @param worldName to check on
+258     * @param player to add to
+259     * @param permission to test
+260     * @return Success or Failure
+261     */
+262    public boolean playerAddTransient(String worldName, OfflinePlayer player, String permission) {
+263        return playerAddTransient(worldName, player.getName(), permission);
+264    }
+265    
+266    /**
+267     * Adds a world specific transient permission to the player, may only work with some permission managers.
+268     * Defaults to GLOBAL permissions for any permission system that does not support world-specific transient permissions!
+269     * 
+270     * @param worldName to check on
+271     * @param player to check
+272     * @param permission to check for
+273     * @return Success or Failure
+274     */
+275    public boolean playerAddTransient(String worldName, Player player, String permission) {
+276        return playerAddTransient(player, permission);
+277    }
+278    
+279    /**
+280     * @deprecated As of VaultAPI 1.4 use {@link #playerAddTransient(String, OfflinePlayer, String)} instead.
+281     */
+282    @Deprecated
+283    public boolean playerAddTransient(String worldName, String player, String permission) {
+284                Player p = plugin.getServer().getPlayer(player);
+285                if (p == null) {
+286                        throw new UnsupportedOperationException(getName() + " does not support offline player transient permissions!");
+287                }
+288                return playerAddTransient(p, permission);
+289    }
+290    
+291    /**
+292     * @deprecated As of VaultAPI 1.4 use {@link #playerRemoveTransient(String, OfflinePlayer, String)} instead.
+293     */
+294    @Deprecated
+295        public boolean playerRemoveTransient(String worldName, String player, String permission) {
+296                Player p = plugin.getServer().getPlayer(player);
+297                if (p == null)
+298                        return false;
+299                
+300                return playerRemoveTransient(p, permission);
+301        }
+302        
+303    /**
+304     * Removes a world specific transient permission from the player, may only work with some permission managers.
+305     * Defaults to GLOBAL permissions for any permission system that does not support world-specific transient permissions!
+306     * 
+307     * @param worldName to remove for
+308     * @param player to remove for
+309     * @param permission to remove
+310     * @return Success or Failure
+311     */
+312    public boolean playerRemoveTransient(String worldName, OfflinePlayer player, String permission) {
+313        return playerRemoveTransient(worldName, player.getName(), permission);
+314    }
+315        
+316    /**
+317     * Removes a world specific transient permission from the player, may only work with some permission managers.
+318     * Defaults to GLOBAL permissions for any permission system that does not support world-specific transient permissions!
+319     * 
+320     * @param worldName to check on
+321     * @param player to check
+322     * @param permission to check for
+323     * @return Success or Failure
+324     */
+325    public boolean playerRemoveTransient(String worldName, Player player, String permission) {
+326        return playerRemoveTransient(worldName, (OfflinePlayer) player, permission);
+327    }
+328    
+329    /**
+330     * @deprecated As of VaultAPI 1.4 use {@link #playerRemove(String, OfflinePlayer, String)} instead.
+331     */
+332    @Deprecated
+333    abstract public boolean playerRemove(String world, String player, String permission);
+334
+335    /**
+336     * Remove permission from a player.
+337     * Supports NULL value for World if the permission system registered supports global permissions.
+338     * But May return odd values if the servers registered permission system does not have a global permission store.
+339     * 
+340     * @param world World name
+341     * @param player OfflinePlayer
+342     * @param permission Permission node
+343     * @return Success or Failure
+344     */
+345    public boolean playerRemove(String world, OfflinePlayer player, String permission) {
+346        if (world == null) {
+347            return playerRemove((String) null, player.getName(), permission);
+348        }
+349        return playerRemove(world, player.getName(), permission);
+350    }
+351
+352    /**
+353     * Remove permission from a player.
+354     * Supports NULL value for World if the permission system registered supports global permissions.
+355     * But May return odd values if the servers registered permission system does not have a global permission store.
+356     * 
+357     * @param world World name
+358     * @param player Player name
+359     * @param permission Permission node
+360     * @return Success or Failure
+361     */
+362    @Deprecated
+363    public boolean playerRemove(World world, String player, String permission) {
+364        if (world == null) {
+365            return playerRemove((String) null, player, permission);
+366        }
+367        return playerRemove(world.getName(), player, permission);
+368    }
+369
+370    /**
+371     * Remove permission from a player.
+372     * Will attempt to remove permission from the player on the player's current world.  This is NOT a global operation.
+373     * 
+374     * @param player Player Object
+375     * @param permission Permission node
+376     * @return Success or Failure
+377     */
+378    public boolean playerRemove(Player player, String permission) {
+379        return playerRemove(player.getWorld().getName(), player, permission);
+380    }
+381    
+382    /**
+383     * @deprecated As of VaultAPI 1.4 use {@link #playerRemoveTransient(OfflinePlayer, String)} instead.
+384     */
+385    @Deprecated
+386        public boolean playerRemoveTransient(String player, String permission) {
+387                Player p = plugin.getServer().getPlayer(player);
+388                if (p == null)
+389                        return false;
+390                
+391                return playerRemoveTransient(p, permission);
+392        }
+393
+394    /**
+395     * Remove transient permission from a player.
+396     * This implementation can be used by any subclass which implements a "pure" superperms plugin, i.e. 
+397     * one that only needs the built-in Bukkit API to remove transient permissions from a player.  Any subclass
+398     * implementing a plugin which provides its own API for this needs to override this method.
+399     * 
+400     * @param player OfflinePlayer
+401     * @param permission Permission node
+402     * @return Success or Failure
+403     */
+404        public boolean playerRemoveTransient(OfflinePlayer player, String permission) {
+405                if (player.isOnline()) {
+406                        return playerRemoveTransient((Player) player, permission);
+407                } else {
+408                        return false;
+409                }
+410        }
+411    
+412    /**
+413     * Remove transient permission from a player.
+414     * 
+415     * @param player Player Object
+416     * @param permission Permission node
+417     * @return Success or Failure
+418     */
+419    public boolean playerRemoveTransient(Player player, String permission) {
+420                for (PermissionAttachmentInfo paInfo : player.getEffectivePermissions()) {
+421                        if (paInfo.getAttachment() != null && paInfo.getAttachment().getPlugin().equals(plugin)) {
+422                                paInfo.getAttachment().unsetPermission(permission);
+423                                return true;
+424                        }
+425                }
+426                return false;
+427    }
+428    
+429    /**
+430     * Checks if group has a permission node.
+431     * Supports NULL value for World if the permission system registered supports global permissions.
+432     * But May return odd values if the servers registered permission system does not have a global permission store.
+433     * 
+434     * @param world World name
+435     * @param group Group name
+436     * @param permission Permission node
+437     * @return Success or Failure
+438     */
+439    abstract public boolean groupHas(String world, String group, String permission);
+440
+441    /**
+442     * Checks if group has a permission node.
+443     * Supports NULL value for World if the permission system registered supports global permissions.
+444     * But May return odd values if the servers registered permission system does not have a global permission store.
+445     * 
+446     * @param world World Object
+447     * @param group Group name
+448     * @param permission Permission node
+449     * @return Success or Failure
+450     */
+451    public boolean groupHas(World world, String group, String permission) {
+452        if (world == null) {
+453            return groupHas((String) null, group, permission);
+454        }
+455        return groupHas(world.getName(), group, permission);
+456    }
+457
+458    /**
+459     * Add permission to a group.
+460     * Supports NULL value for World if the permission system registered supports global permissions.
+461     * But May return odd values if the servers registered permission system does not have a global permission store.
+462     * 
+463     * @param world World name
+464     * @param group Group name
+465     * @param permission Permission node
+466     * @return Success or Failure
+467     */
+468    abstract public boolean groupAdd(String world, String group, String permission);
+469
+470    /**
+471     * Add permission to a group.
+472     * Supports NULL value for World if the permission system registered supports global permissions.
+473     * But May return odd values if the servers registered permission system does not have a global permission store.
+474     * 
+475     * @param world World Object
+476     * @param group Group name
+477     * @param permission Permission node
+478     * @return Success or Failure
+479     */
+480    public boolean groupAdd(World world, String group, String permission) {
+481        if (world == null) {
+482            return groupAdd((String) null, group, permission);
+483        }
+484        return groupAdd(world.getName(), group, permission);
+485    }
+486
+487    /**
+488     * Remove permission from a group.
+489     * Supports NULL value for World if the permission system registered supports global permissions.
+490     * But May return odd values if the servers registered permission system does not have a global permission store.
+491     * 
+492     * @param world World name
+493     * @param group Group name
+494     * @param permission Permission node
+495     * @return Success or Failure
+496     */
+497    abstract public boolean groupRemove(String world, String group, String permission);
+498
+499    /**
+500     * Remove permission from a group.
+501     * Supports NULL value for World if the permission system registered supports global permissions.
+502     * But May return odd values if the servers registered permission system does not have a global permission store.
+503     * 
+504     * @param world World Object
+505     * @param group Group name
+506     * @param permission Permission node
+507     * @return Success or Failure
+508     */
+509    public boolean groupRemove(World world, String group, String permission) {
+510        if (world == null) {
+511            return groupRemove((String) null, group, permission);
+512        }
+513        return groupRemove(world.getName(), group, permission);
+514    }
+515
+516    /**
+517     * @deprecated As of VaultAPI 1.4 use {@link #playerInGroup(String, OfflinePlayer, String)} instead.
+518     */
+519    @Deprecated
+520    abstract public boolean playerInGroup(String world, String player, String group);
+521
+522    /**
+523     * @deprecated As of VaultAPI 1.4 use {@link #playerInGroup(String, OfflinePlayer, String)} instead.
+524     */
+525    @Deprecated
+526    public boolean playerInGroup(World world, String player, String group) {
+527        if (world == null) {
+528            return playerInGroup((String) null, player, group);
+529        }
+530        return playerInGroup(world.getName(), player, group);
+531    }
+532    
+533    /**
+534     * Check if player is member of a group.
+535     * Supports NULL value for World if the permission system registered supports global permissions.
+536     * But May return odd values if the servers registered permission system does not have a global permission store.
+537     * 
+538     * @param world World Object
+539     * @param player to check
+540     * @param group Group name
+541     * @return Success or Failure
+542     */
+543    public boolean playerInGroup(String world, OfflinePlayer player, String group) {
+544        if (world == null) {
+545            return playerInGroup((String) null, player.getName(), group);
+546        }
+547        return playerInGroup(world, player.getName(), group);
+548    }
+549
+550    /**
+551     * Check if player is member of a group.
+552     * This method will ONLY check groups for which the player is in that are defined for the current world.
+553     * This may result in odd return behaviour depending on what permission system has been registered.
+554     * 
+555     * @param player Player Object
+556     * @param group Group name
+557     * @return Success or Failure
+558     */
+559    public boolean playerInGroup(Player player, String group) {
+560        return playerInGroup(player.getWorld().getName(), player, group);
+561    }
+562
+563    /**
+564     * @deprecated As of VaultAPI 1.4 use {@link #playerAddGroup(String, OfflinePlayer, String)} instead.
+565     */
+566    @Deprecated
+567    abstract public boolean playerAddGroup(String world, String player, String group);
+568
+569    /**
+570     * @deprecated As of VaultAPI 1.4 use {@link #playerAddGroup(String, OfflinePlayer, String)} instead.
+571     */
+572    @Deprecated
+573    public boolean playerAddGroup(World world, String player, String group) {
+574        if (world == null) {
+575            return playerAddGroup((String) null, player, group);
+576        }
+577        return playerAddGroup(world.getName(), player, group);
+578    }
+579
+580    /**
+581     * Add player to a group.
+582     * Supports NULL value for World if the permission system registered supports global permissions.
+583     * But May return odd values if the servers registered permission system does not have a global permission store.
+584     * 
+585     * @param world String world name
+586     * @param player to add
+587     * @param group Group name
+588     * @return Success or Failure
+589     */
+590    public boolean playerAddGroup(String world, OfflinePlayer player, String group) {
+591        if (world == null) {
+592            return playerAddGroup((String) null, player.getName(), group);
+593        }
+594        return playerAddGroup(world, player.getName(), group);
+595    }
+596    
+597    /**
+598     * Add player to a group.
+599     * This will add a player to the group on the current World.  This may return odd results if the permission system
+600     * being used on the server does not support world-specific groups, or if the group being added to is a global group.
+601     * 
+602     * @param player Player Object
+603     * @param group Group name
+604     * @return Success or Failure
+605     */
+606    public boolean playerAddGroup(Player player, String group) {
+607        return playerAddGroup(player.getWorld().getName(), player, group);
+608    }
+609
+610    /**
+611     * @deprecated As of VaultAPI 1.4 use {@link #playerRemoveGroup(String, OfflinePlayer, String)} instead.
+612     */
+613    @Deprecated
+614    abstract public boolean playerRemoveGroup(String world, String player, String group);
+615
+616    /**
+617     * @deprecated As of VaultAPI 1.4 use {@link #playerRemoveGroup(String, OfflinePlayer, String)} instead.
+618     */
+619    @Deprecated
+620    public boolean playerRemoveGroup(World world, String player, String group) {
+621        if (world == null) {
+622            return playerRemoveGroup((String) null, player, group);
+623        }
+624        return playerRemoveGroup(world.getName(), player, group);
+625    }
+626    
+627    /**
+628     * Remove player from a group.
+629     * Supports NULL value for World if the permission system registered supports global permissions.
+630     * But May return odd values if the servers registered permission system does not have a global permission store.
+631     * 
+632     * @param world World Object
+633     * @param player to remove
+634     * @param group Group name
+635     * @return Success or Failure
+636     */
+637    public boolean playerRemoveGroup(String world, OfflinePlayer player, String group) {
+638        if (world == null) {
+639            return playerRemoveGroup((String) null, player.getName(), group);
+640        }
+641        return playerRemoveGroup(world, player.getName(), group);
+642    }
+643
+644    /**
+645     * Remove player from a group.
+646     * This will add a player to the group on the current World.  This may return odd results if the permission system
+647     * being used on the server does not support world-specific groups, or if the group being added to is a global group.
+648     * 
+649     * @param player Player Object
+650     * @param group Group name
+651     * @return Success or Failure
+652     */
+653    public boolean playerRemoveGroup(Player player, String group) {
+654        return playerRemoveGroup(player.getWorld().getName(), player, group);
+655    }
+656
+657    /**
+658     * @deprecated As of VaultAPI 1.4 use {@link #getPlayerGroups(String, OfflinePlayer)} instead.
+659     */
+660    @Deprecated
+661    abstract public String[] getPlayerGroups(String world, String player);
+662
+663    /**
+664     * @deprecated As of VaultAPI 1.4 use {@link #getPlayerGroups(String, OfflinePlayer)} instead.
+665     */
+666    @Deprecated
+667    public String[] getPlayerGroups(World world, String player) {
+668        if (world == null) {
+669            return getPlayerGroups((String) null, player);
+670        }
+671        return getPlayerGroups(world.getName(), player);
+672    }
+673    
+674    /**
+675     * Gets the list of groups that this player has
+676     * Supports NULL value for World if the permission system registered supports global permissions.
+677     * But May return odd values if the servers registered permission system does not have a global permission store.
+678     * 
+679     * @param world String world name
+680     * @param player OfflinePlayer
+681     * @return Array of groups
+682     */
+683    public String[] getPlayerGroups(String world, OfflinePlayer player) {
+684        return getPlayerGroups(world, player.getName());
+685    }
+686
+687    /**
+688     * Returns a list of world-specific groups that this player is currently in. May return unexpected results if
+689     * you are looking for global groups, or if the registered permission system does not support world-specific groups.
+690     * See {@link #getPlayerGroups(String, OfflinePlayer)} for better control of World-specific or global groups.
+691     * 
+692     * @param player Player Object
+693     * @return Array of groups
+694     */
+695    public String[] getPlayerGroups(Player player) {
+696        return getPlayerGroups(player.getWorld().getName(), player);
+697    }
+698
+699    /**
+700     * @deprecated As of VaultAPI 1.4 use {@link #getPrimaryGroup(String, OfflinePlayer)} instead.
+701     */
+702    @Deprecated
+703    abstract public String getPrimaryGroup(String world, String player);
+704
+705    /**
+706     * @deprecated As of VaultAPI 1.4 use {@link #getPrimaryGroup(String, OfflinePlayer)} instead.
+707     */
+708    @Deprecated
+709    public String getPrimaryGroup(World world, String player) {
+710        if (world == null) {
+711            return getPrimaryGroup((String) null, player);
+712        }
+713        return getPrimaryGroup(world.getName(), player);
+714    }
+715    
+716    /**
+717     * Gets players primary group
+718     * Supports NULL value for World if the permission system registered supports global permissions.
+719     * But May return odd values if the servers registered permission system does not have a global permission store.
+720     * 
+721     * @param world String world name
+722     * @param player to get from
+723     * @return Players primary group
+724     */
+725    public String getPrimaryGroup(String world, OfflinePlayer player) {
+726        return getPrimaryGroup(world, player.getName());
+727    }
+728
+729    /**
+730     * Get players primary group.
+731     * Defaults to the players current world, so may return only world-specific groups.
+732     * In most cases {@link #getPrimaryGroup(String, OfflinePlayer)} is preferable.
+733     * 
+734     * @param player Player Object
+735     * @return Players primary group
+736     */
+737    public String getPrimaryGroup(Player player) {
+738        return getPrimaryGroup(player.getWorld().getName(), player);
+739    }
+740    
+741    /**
+742     * Returns a list of all known groups
+743     * @return an Array of String of all groups
+744     */
+745    abstract public String[] getGroups();
+746    
+747    /**
+748     * Returns true if the given implementation supports groups.
+749     * @return true if the implementation supports groups
+750     */
+751    abstract public boolean hasGroupSupport();
+752}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ + diff --git a/stylesheet.css b/stylesheet.css new file mode 100644 index 0000000..73bab36 --- /dev/null +++ b/stylesheet.css @@ -0,0 +1,439 @@ +/* Javadoc style sheet */ +/* +Overall document style +*/ +* { + margin:0; + padding:0; +} +body { + font-family:Helvetica, Arial, sans-serif; + color:#000000; +} +p { + margin:20px 0; +} +pre { + font-size:1.0em; +} +h1 { + font-size:1.4em; +} +h2 { + font-size:1.35em; +} +h3 { + font-size:1.3em; +} +h4 { + font-size:1.25em; +} +ul { + margin:10px 0 10px 20px; +} +li { + list-style:disc; +} +dl dt { + font-size:0.95em; + font-weight:bold; + margin:10px 0 0 0; +} +dl dd { + margin:10px 0 10px 20px; +} +dl dd ul { + margin-left:0; +} +dl dd ul li { + list-style:none; + margin:10px 0 10px 0; +} +caption { + background: #CCCCFF; + color:#000000; + text-align: left; + font-size: 150%; + font-weight: bold; + border-left: 2px ridge; + border-right: 2px ridge; + border-top: 2px ridge; + padding-left: 5px; + width:auto; +} +/* +Document title and Copyright styles +*/ +.aboutLanguage { + float:right; + font-size:0.9em; + color:#000000; +} +.legalCopy { + margin:7px; +} +.bar { + font-size:1em; + margin:10px 0 0 10px; +} +.bar a { + font-weight:normal; +} +/* +Navigation bar styles +*/ +.topNav { + border-top:2px solid #C0C0C0; + margin:7px; + padding:7px 0; + height:2.8em; + width:99%; + min-width:600px; +} +.bottomNav { + border-top:2px solid #C0C0C0; + margin:7px; + padding:7px 0; + height:2.8em; + width:99%; +} +.subNav { + border-bottom:2px solid #C0C0C0; + float:left; + width:99%; + margin:7px; + min-width:600px; +} +.subNav div { + clear:left; + float:left; + padding:0 0 5px 2px; + width:100%; +} +.topNav a:link,.topNav a:active, .topNav a:visited, .topNav a:hover, +.bottomNav a:link,.bottomNav a:active, .bottomNav a:visited, .bottomNav a:hover { + color:#000000; + font-weight:bold; + text-decoration:underline; + font-size:1em; +} +/* Navigation bar list styles */ +.topNav ul.navList, .bottomNav ul.navList { + background-color:#EEEEFF; + padding:7px 5px; + margin:0; + float:left; + width:80%; +} +ul.navList li{ + list-style:none; + float:left; + padding:3px 4px; + color:#000000; + font-size:0.98em; +} +ul.navList li.navBarCell1Rev { + background-color:#00008B; + color:#FFFFFF; + font-weight:bold; + font-size:0.97em; +} +/* Sub-navigation bar list styles */ +.subNav ul.navList { + float:left; + margin:0; + font-size:0.7em; + width:350px; +} +ul.subNavList { + float:left; + margin:0; + font-size:0.7em; + width:350px; +} +ul.subNavList li{ + list-style:none; + float:left; + font-size:90%; +} +/* +Page header and footer styles +*/ +.header, .footer { + clear:both; + margin:0 7px; +} +.indexHeader { + font-size:0.9em; + margin:10px 0 7px 10px; +} +.header ul { + padding-left:20px; +} +/* Header and footer title styles */ +.header h1.title { + font-size:1.4em; + text-align:center; + margin:0; +} +.header h2.title { + font-size:1.35em; + margin:0; +} +.subTitle { + margin:0; + padding-top:10px; + font-size:0.75em; + font-weight:bold; +} +/* +Page layout container styles +*/ +.contentContainer, .sourceContainer, .classUseContainer, .serializedFormContainer, +.constantValuesContainer { + clear:both; + padding:10px 10px; + position:relative; +} +.indexContainer { + padding:0 0 10px 10px; + font-size:0.9em; +} +/* +Class inheritance information styles +*/ +ul.inheritance { + margin:0; + padding:0; +} +ul.inheritance li { + display:inline; + list-style:none; +} +ul.inheritance li ul.inheritance { + margin-left:15px; + background-image:url(resources/inherit.gif); + background-repeat:no-repeat; + padding-left:15px; + padding-top:1px; +} +/* +Heading styles +*/ +.indexContainer h2 { + font-weight:normal; + font-size:1.0em; + padding:10px 0 0 0; +} +.contentContainer h2 { + margin:10px 0; +} +.constantValuesContainer h2 { + background:#CCCCFF; + border:2px ridge; + padding:3px; + margin:0 0 10px 0; +} +.serializedFormContainer ul.blockList li.blockList h2 { + background:#EEEEFF; + border:2px ridge; + padding:3px; + margin:0 0 15px 0; + text-align:center; +} +.classUseContainer ul li ul li h3 { + margin-bottom:30px; + padding:3px; +} +.serializedFormContainer ul.blockList li.blockList ul.blockList li.blockList h3 { + background:#EEEEFF; + margin:0 0 15px 0; + padding:3px; +} +.serializedFormContainer ul.blockList li.blockList ul.blockList li.blockList ul.blockList li.blockList h3 { + background:#CCCCFF; + margin:0 0 15px 0; + padding:3px; + border:2px ridge; +} +ul.blockList ul.blockList li.blockList h3, ul.blockList ul.blockList li.blockList h3 { + background:#CCCCFF; + border:2px ridge; + padding-left:5px; +} +div.summary ul.blockList ul.blockList li.blockList h3 { + background:#CCCCFF; + border:0; + border:2px ridge; + padding-left:5px; +} +div.summary ul.blockList ul.blockList ul.blockList li.blockList h3 { + background:#EEEEFF; + border:0; + border-bottom:2px ridge; +} +div.details ul.blockList ul.blockList ul.blockList li.blockList h4, +div.details ul.blockList ul.blockList ul.blockListLast li.blockList h4 { + font-size:1.15em; + font-weight:bold; + padding:0 0 10px 0; +} +/* +Table styles +*/ +.contentContainer table { + border-collapse: collapse ; + width:100%; +} +.contentContainer table td, .contentContainer table th { + border:2px ridge; + padding:3px; +} +/* Constant values page table styles */ +.constantValuesContainer table { + border-collapse: collapse ; + margin:0 0 10px 0; +} +.constantValuesContainer table caption{ + font-size:0.95em; + padding:3px; + background:#EEEEFF; +} +.constantValuesContainer table td, .constantValuesContainer table th { + border:2px ridge; + padding:3px; +} +/* Class-use/Package-use page table styles */ +.classUseContainer table { + border-collapse: collapse ; + width:100%; + margin:0 0 15px 0; +} +.classUseContainer ul li ul li table { + margin-bottom:30px; +} +.classUseContainer ul li ul li table caption{ + font-size:0.95em; + padding:3px; + background:#EEEEFF; +} +.classUseContainer table td, .classUseContainer table th { + border:2px ridge; + padding:3px; +} +/* Summary table styles */ +ul.blockList li.blockList table.overviewSummary { + margin:0; + margin-bottom:15px; +} +ul.blockList li.blockList table caption { + padding:3px; +} +ul.blockList li.blockList table.overviewSummary td.colFirst{ + text-align:right; +} +table.packageSummary td.colFirst, table.overviewSummary th.colFirst { + width:15%; +} +div.summary ul.blockList ul.blockList li.blockList caption { + display:none; +} +div.summary ul.blockList li.blockList ul.blockList li.blockList table.overviewSummary th { + border-top:0; +} +/* Table column block styles */ +ul.blockList li.blockList table.overviewSummary td.colLast div.block{ + padding:0; + padding-left:40px; +} +ul.blockList li.blockList table.overviewSummary td.colOne div.block{ + padding:0; + padding-left:40px; +} +.contentContainer ul.blockList li.blockList table .colOne div.block{ + padding-left:40px; +} +.classUseContainer ul li ul li table .colLast div.block, +.classUseContainer ul li ul li table .colOne div.block{ + padding-left:40px; +} +/* +List styles +*/ +ul.horizontal li { + display:inline; + font-size:0.9em; +} +/* Container specific list styles */ +.indexContainer ul { + margin:0; +} +.indexContainer ul li { + list-style:none; +} +.serializedFormContainer ul.blockList li.blockList ul.blockList li.blockList ul.blockList li.blockList { + border:0; +} +.serializedFormContainer ul.blockList li.blockList ul.blockList li.blockList ul.blockList li.blockList ul.blockList li.blockList { + list-style:none; + border:0; + border-bottom:2px ridge; +} +.serializedFormContainer ul.blockList li.blockList ul.blockList li.blockList ul.blockList li.blockList ul.blockList li.blockListLast { + list-style:none; +} +/* General list styles */ +ul.blockList, ul.blockListLast { + margin-left:0; + padding-left:0; +} +ul.blockList li.blockList, ul.blockListLast li.blockList { + list-style:none; + margin-bottom:25px; +} +ul.blockList ul.blockList ul.blockList li.blockList { + border:2px ridge; +} +div.details ul.blockList ul.blockList ul.blockList li.blockList { + border:0; + border-bottom:2px ridge; +} +/* Definition list styles */ +ul.blockList li.blockList dl{ + margin-bottom:15px; +} +ul.blockList li.blockList dl dd{ + margin:0 0 0 30px; +} +ul.blockList li.blockList ul.blockList li.blockList ul.blockList li.blockList dl, +ul.blockList li.blockList ul.blockList li.blockList ul.blockListLast li.blockList dl{ + padding:0 0 10px 35px; +} +dl.nameValue dt, dl.nameValue dd{ + display:inline; +} +ul.blockList li.blockList pre{ + margin:0 0 15px 0; +} +/* List content styles */ +ul.blockList li.blockList ul.blockList li.blockList pre{ + margin:10px 0 15px 0; +} +ul.blockList li.blockList ul.blockList li.blockList ul.blockList li.blockList pre, +ul.blockList li.blockList ul.blockList li.blockList ul.blockListLast li.blockList pre{ + padding:0 0 10px 0; +} +ul.blockList li.blockList ul.blockList li.blockList ul.blockList li.blockList div.block, +ul.blockList li.blockList ul.blockList li.blockList ul.blockListLast li.blockList div.block{ + padding:0 0 10px 35px; +} +/* +Formatting effect styles +*/ +.strong { + font-weight:bold; +} +.sourceLineNo { + color:green; + padding:0 30px 0 0; +}