Package fr.andross.banitem
Class BanItemAPI
java.lang.Object
fr.andross.banitem.BanItemAPI
BanItemAPI
IMPORTANT:
This api is loaded on next tick after server load, to allow other custom worlds plugins to load worlds. So this API is not available on server load, but will be on next available tick!
If you add/remove any action from a map (blacklist/whitelist), you have to reload the plugin listeners
so it can handle correctly the actions, using BanListener.load(CommandSender)
()}
- Version:
- 3.3
- Author:
- Andross
-
Method Summary
Modifier and TypeMethodDescriptionvoid
addMetaItem
(String name, org.bukkit.inventory.ItemStack item) Add an ItemStack as a meta item and save it in metaitems.ymlboolean
addToBlacklist
(BannedItem item, Map<BanAction, BanActionData> actions, org.bukkit.World... worlds) Add a new banned item to blacklist and save the config file used.boolean
addToBlacklist
(Collection<? extends BannedItem> items, Map<BanAction, BanActionData> actions, org.bukkit.World... worlds) Add the banned items to the blacklist and save the config file usedboolean
addToWhitelist
(WhitelistedWorld ww, BannedItem item, Map<BanAction, BanActionData> actions) Add an item on the whitelist of a world and save in the used configgetCustomItem
(String metaName) Get a BannedItem object for the meta item named metaName.Get the BanItem database, containing blacklist, whitelist, custom items and meta items.static BanItemAPI
Get a static instance of the api.getMetaItemName
(BannedItem item) Try to get the meta item name of the given item.getMetaItemName
(org.bukkit.inventory.ItemStack item) Try to get the meta item name of the given item.boolean
isBanned
(org.bukkit.entity.Player player, BannedItem item, boolean sendMessage, BanAction action, BanData... data) Check if the BannedItem object is banned, in both blacklist and whitelist.boolean
isBanned
(org.bukkit.entity.Player player, BannedItem item, BanAction action, BanData... data) Check if the BannedItem object is banned, in both blacklist and whitelist.boolean
isBanned
(org.bukkit.entity.Player player, org.bukkit.inventory.ItemStack item, boolean sendMessage, BanAction action, BanData... data) Check if the ItemStack is banned, in both blacklist and whitelist.boolean
isBanned
(org.bukkit.entity.Player player, org.bukkit.inventory.ItemStack item, BanAction action, BanData... data) Check if the ItemStack is banned, in both blacklist and whitelist.boolean
isBanned
(org.bukkit.entity.Player player, org.bukkit.Location loc, BannedItem item, boolean sendMessage, BanAction action, BanData... data) Check if the BannedItem object is banned, in both blacklist and whitelist.boolean
isBanned
(org.bukkit.entity.Player player, org.bukkit.Location loc, BannedItem item, BanAction action, BanData... data) Check if the BannedItem object is banned, in both blacklist and whitelist.boolean
isBanned
(org.bukkit.entity.Player player, org.bukkit.Location loc, org.bukkit.inventory.ItemStack item, boolean sendMessage, BanAction action, BanData... data) Check if the ItemStack is banned, in both blacklist and whitelist.boolean
isBanned
(org.bukkit.entity.Player player, org.bukkit.Location loc, org.bukkit.inventory.ItemStack item, BanAction action, BanData... data) Check if the ItemStack is banned, in both blacklist and whitelist.boolean
isBanned
(org.bukkit.entity.Player player, org.bukkit.Location loc, org.bukkit.Material m, boolean sendMessage, BanAction action, BanData... data) Check if the material is banned, in both blacklist and whitelist.boolean
isBanned
(org.bukkit.entity.Player player, org.bukkit.Location loc, org.bukkit.Material m, BanAction action, BanData... data) Check if the material is banned, in both blacklist and whitelist.boolean
isBanned
(org.bukkit.entity.Player player, org.bukkit.Material m, boolean sendMessage, BanAction action, BanData... data) Check if the material is banned, in both blacklist and whitelist.boolean
Check if the material is banned, in both blacklist and whitelist.boolean
isBanned
(org.bukkit.World world, BannedItem item, BanAction action, BanData... data) This method is used to check if the item is banned, in both blacklist and whitelist, not involving a player This method is mainly used to check dispensers dispense and hoppers transferboolean
isBanned
(org.bukkit.World world, org.bukkit.inventory.ItemStack item, BanAction action, BanData... data) This method is used to check if the item is banned, in both blacklist and whitelist, not involving a player This method is mainly used to check dispensers dispense and hoppers transferboolean
This method is used to check if the item is banned, in both blacklist and whitelist, not involving a player This method is mainly used to check dispensers dispense and hoppers transferboolean
isBlacklisted
(org.bukkit.entity.Player player, org.bukkit.Location location, BannedItem item, boolean sendMessage, BanAction action, BanData... data) Check if the item is blacklisted, sending a message or not to the player.boolean
isBlacklisted
(org.bukkit.World world, BannedItem item, BanAction action, BanData... data) Check if the item is blacklisted, not involving a playerboolean
isWhitelisted
(org.bukkit.entity.Player player, org.bukkit.Location location, BannedItem item, boolean sendMessage, BanAction action, BanData... data) Check if the item is whitelisted (allowed), sending a message or not to the player.boolean
isWhitelisted
(org.bukkit.World world, BannedItem item, BanAction action, BanData... data) Check if the item is whitelisted, not involving a playervoid
(re)Loading the plugin with this configuration fileboolean
removeFromBlacklist
(BannedItem item, org.bukkit.World... worlds) Remove the banned item from blacklisted worlds and save the config file used.boolean
removeFromBlacklist
(Collection<? extends BannedItem> items, org.bukkit.World... worlds) boolean
removeFromWhitelist
(WhitelistedWorld ww, BannedItem item) Remove the item from the whitelist and save in config.yml (comments in file may be removed)void
removeMetaItem
(String name) Remove the meta ItemStack named name
-
Method Details
-
getInstance
Get a static instance of the api. You should useBanItem.getApi()
instead.- Returns:
- a static instance of the api
-
getDatabase
Get the BanItem database, containing blacklist, whitelist, custom items and meta items.- Returns:
- the BanDatabase object
-
load
(re)Loading the plugin with this configuration file- Parameters:
sender
- command sender (send the message debug to)configFile
- the file configuration to load. If null, using (and reloading) the default config
-
isBanned
public boolean isBanned(@NotNull org.bukkit.entity.Player player, @NotNull org.bukkit.Material m, @NotNull BanAction action, @Nullable BanData... data) Check if the material is banned, in both blacklist and whitelist. This also consider the player bypass permissions.- Parameters:
player
- thePlayer
involved into this actionm
- theMaterial
usedaction
- theBanAction
to checkdata
- optional action datas, leave it blank if not needed for the action- Returns:
- true if this item is banned, otherwise false
-
isBanned
public boolean isBanned(@NotNull org.bukkit.entity.Player player, @Nullable org.bukkit.Location loc, @NotNull org.bukkit.Material m, @NotNull BanAction action, @Nullable BanData... data) Check if the material is banned, in both blacklist and whitelist. This also consider the player bypass permissions.- Parameters:
player
- thePlayer
involved into this actionloc
- the effectiveLocation
of the actionm
- theMaterial
usedaction
- theBanAction
to checkdata
- optional action datas, leave it blank if not needed for the action- Returns:
- true if this item is banned, otherwise false
-
isBanned
public boolean isBanned(@NotNull org.bukkit.entity.Player player, @NotNull org.bukkit.Material m, boolean sendMessage, @NotNull BanAction action, @Nullable BanData... data) Check if the material is banned, in both blacklist and whitelist. This also consider the player bypass permissions.- Parameters:
player
- thePlayer
involved into this actionm
- theMaterial
usedsendMessage
- if the banned message should be send to the playeraction
- theBanAction
to checkdata
- optional action datas, leave it blank if not needed for the action- Returns:
- true if this item is banned, otherwise false
-
isBanned
public boolean isBanned(@NotNull org.bukkit.entity.Player player, @Nullable org.bukkit.Location loc, @NotNull org.bukkit.Material m, boolean sendMessage, @NotNull BanAction action, @Nullable BanData... data) Check if the material is banned, in both blacklist and whitelist. This also consider the player bypass permissions.- Parameters:
player
- thePlayer
involved into this actionloc
- the effectiveLocation
of the actionm
- theMaterial
usedsendMessage
- if the banned message should be send to the playeraction
- theBanAction
to checkdata
- optional action datas, leave it blank if not needed for the action- Returns:
- true if this item is banned, otherwise false
-
isBanned
public boolean isBanned(@NotNull org.bukkit.entity.Player player, @NotNull org.bukkit.inventory.ItemStack item, @NotNull BanAction action, @Nullable BanData... data) Check if the ItemStack is banned, in both blacklist and whitelist. This also consider the player bypass permissions.- Parameters:
player
- thePlayer
involved into this actionitem
- theItemStack
usedaction
- theBanAction
to checkdata
- optional action datas, leave it blank if not needed for the action- Returns:
- true if this item is banned, otherwise false
-
isBanned
public boolean isBanned(@NotNull org.bukkit.entity.Player player, @Nullable org.bukkit.Location loc, @NotNull org.bukkit.inventory.ItemStack item, @NotNull BanAction action, @Nullable BanData... data) Check if the ItemStack is banned, in both blacklist and whitelist. This also consider the player bypass permissions.- Parameters:
player
- thePlayer
involved into this actionloc
- the effectiveLocation
of the actionitem
- theItemStack
usedaction
- theBanAction
to checkdata
- optional action datas, leave it blank if not needed for the action- Returns:
- true if this item is banned, otherwise false
-
isBanned
public boolean isBanned(@NotNull org.bukkit.entity.Player player, @NotNull org.bukkit.inventory.ItemStack item, boolean sendMessage, @NotNull BanAction action, @Nullable BanData... data) Check if the ItemStack is banned, in both blacklist and whitelist. This also consider the player bypass permissions.- Parameters:
player
- thePlayer
involved into this actionitem
- theItemStack
usedsendMessage
- if the banned message should be send to the playeraction
- theBanAction
to checkdata
- optional action datas, leave it blank if not needed for the action- Returns:
- true if this item is banned, otherwise false
-
isBanned
public boolean isBanned(@NotNull org.bukkit.entity.Player player, @Nullable org.bukkit.Location loc, @NotNull org.bukkit.inventory.ItemStack item, boolean sendMessage, @NotNull BanAction action, @Nullable BanData... data) Check if the ItemStack is banned, in both blacklist and whitelist. This also consider the player bypass permissions.- Parameters:
player
- thePlayer
involved into this actionloc
- the effectiveLocation
of the actionitem
- theItemStack
usedsendMessage
- if the banned message should be send to the playeraction
- theBanAction
to checkdata
- optional action datas, leave it blank if not needed for the action- Returns:
- true if this item is banned, otherwise false
-
isBanned
public boolean isBanned(@NotNull org.bukkit.entity.Player player, @NotNull BannedItem item, @NotNull BanAction action, @Nullable BanData... data) Check if the BannedItem object is banned, in both blacklist and whitelist. This also consider the player bypass permissions.- Parameters:
player
- thePlayer
involved into this actionitem
- theBannedItem
objectaction
- theBanAction
to checkdata
- optional action datas, leave it blank if not needed for the action- Returns:
- true if this item is banned, otherwise false
-
isBanned
public boolean isBanned(@NotNull org.bukkit.entity.Player player, @Nullable org.bukkit.Location loc, @NotNull BannedItem item, @NotNull BanAction action, @Nullable BanData... data) Check if the BannedItem object is banned, in both blacklist and whitelist. This also consider the player bypass permissions.- Parameters:
player
- thePlayer
involved into this actionloc
- the effectiveLocation
of the actionitem
- theBannedItem
objectaction
- theBanAction
to checkdata
- optional action datas, leave it blank if not needed for the action- Returns:
- true if this item is banned, otherwise false
-
isBanned
public boolean isBanned(@NotNull org.bukkit.entity.Player player, @NotNull BannedItem item, boolean sendMessage, @NotNull BanAction action, @Nullable BanData... data) Check if the BannedItem object is banned, in both blacklist and whitelist. This also consider the player bypass permissions.- Parameters:
player
- thePlayer
involved into this actionitem
- theBannedItem
objectsendMessage
- if the banned message should be send to the playeraction
- theBanAction
to checkdata
- optional action datas, leave it blank if not needed for the action- Returns:
- true if this item is banned, otherwise false
-
isBanned
public boolean isBanned(@NotNull org.bukkit.entity.Player player, @Nullable org.bukkit.Location loc, @NotNull BannedItem item, boolean sendMessage, @NotNull BanAction action, @Nullable BanData... data) Check if the BannedItem object is banned, in both blacklist and whitelist. This also consider the player bypass permissions.- Parameters:
player
- thePlayer
involved into this actionloc
- the effectiveLocation
of the actionitem
- theBannedItem
objectsendMessage
- if the banned message should be send to the playeraction
- theBanAction
to checkdata
- optional action datas, leave it blank if not needed for the action- Returns:
- true if this item is banned, otherwise false
-
isBanned
public boolean isBanned(@NotNull org.bukkit.World world, @NotNull org.bukkit.Material material, @NotNull BanAction action, @Nullable BanData... data) This method is used to check if the item is banned, in both blacklist and whitelist, not involving a player This method is mainly used to check dispensers dispense and hoppers transfer- Parameters:
world
- bukkit world (World
)material
- the involved materialaction
- the ban action to checkdata
- the ban action datas to check- Returns:
- true if the item is banned, otherwise false
-
isBanned
public boolean isBanned(@NotNull org.bukkit.World world, @NotNull org.bukkit.inventory.ItemStack item, @NotNull BanAction action, @Nullable BanData... data) This method is used to check if the item is banned, in both blacklist and whitelist, not involving a player This method is mainly used to check dispensers dispense and hoppers transfer- Parameters:
world
- bukkit world (World
)item
- the involved ItemStackaction
- the ban action to checkdata
- the ban action datas to check- Returns:
- true if the item is banned, otherwise false
-
isBanned
public boolean isBanned(@NotNull org.bukkit.World world, @NotNull BannedItem item, @NotNull BanAction action, @Nullable BanData... data) This method is used to check if the item is banned, in both blacklist and whitelist, not involving a player This method is mainly used to check dispensers dispense and hoppers transfer- Parameters:
world
- bukkit world (World
)item
- the involved itemaction
- the ban action to checkdata
- the ban action datas to check- Returns:
- true if the item is banned, otherwise false
-
isBlacklisted
public boolean isBlacklisted(@NotNull org.bukkit.entity.Player player, @NotNull org.bukkit.Location location, @NotNull BannedItem item, boolean sendMessage, @NotNull BanAction action, @Nullable BanData... data) Check if the item is blacklisted, sending a message or not to the player.- Parameters:
player
- thePlayer
involved into this actionlocation
- the effective location where the action occursitem
- theBannedItem
involved into this actionsendMessage
- if the item is banned, send the ban message configuredaction
- theBanAction
action to checkdata
- additional ban datas- Returns:
- true if this item is banned for those characteristics, otherwise false
-
isBlacklisted
public boolean isBlacklisted(@NotNull org.bukkit.World world, @NotNull BannedItem item, @NotNull BanAction action, @Nullable BanData... data) Check if the item is blacklisted, not involving a player- Parameters:
world
- bukkit world (World
)item
- the involved itemaction
- the ban action to checkdata
- the ban action datas to check- Returns:
- true if the item is banned, otherwise false
-
isWhitelisted
public boolean isWhitelisted(@NotNull org.bukkit.entity.Player player, @NotNull org.bukkit.Location location, @NotNull BannedItem item, boolean sendMessage, @NotNull BanAction action, @Nullable BanData... data) Check if the item is whitelisted (allowed), sending a message or not to the player.- Parameters:
player
- thePlayer
involved into this actionlocation
- the effective location where the action occursitem
- theBannedItem
involved into this actionsendMessage
- if the item is banned, send the ban message configuredaction
- theBanAction
action to checkdata
- optional ban datas- Returns:
- true if this item is allowed, otherwise false
-
isWhitelisted
public boolean isWhitelisted(@NotNull org.bukkit.World world, @NotNull BannedItem item, @NotNull BanAction action, @Nullable BanData... data) Check if the item is whitelisted, not involving a player- Parameters:
world
- bukkit world (World
)item
- the involved itemaction
- the ban action to checkdata
- the ban action datas to check- Returns:
- true if the item is allowed, otherwise false
-
getBlacklist
- Returns:
- the blacklisted map
-
addToBlacklist
public boolean addToBlacklist(@NotNull BannedItem item, @NotNull Map<BanAction, BanActionData> actions, @Nullable org.bukkit.World... worlds) Add a new banned item to blacklist and save the config file used.- Parameters:
item
- the item to banactions
- a map containing actions and their respective dataworlds
- worlds where the ban apply. If null, including all worlds- Returns:
- true if the item is successfully added, otherwise false
-
addToBlacklist
public boolean addToBlacklist(@NotNull Collection<? extends BannedItem> items, @NotNull Map<BanAction, BanActionData> actions, @Nullable org.bukkit.World... worlds) Add the banned items to the blacklist and save the config file used- Parameters:
items
- the items to banactions
- a map containing actions and their respective dataworlds
- worlds where the ban apply. If null, including all worlds- Returns:
- true if the item is successfully added, otherwise false
-
removeFromBlacklist
Remove the banned item from blacklisted worlds and save the config file used.- Parameters:
item
- the banned item to removeworlds
- worlds where the banned item can be present, all worlds if null- Returns:
- true if the item is successfully removed, otherwise false
-
removeFromBlacklist
public boolean removeFromBlacklist(@NotNull Collection<? extends BannedItem> items, @Nullable org.bukkit.World... worlds) -
getWhitelist
- Returns:
- the whitelist map
-
addToWhitelist
public boolean addToWhitelist(@NotNull WhitelistedWorld ww, @NotNull BannedItem item, @NotNull Map<BanAction, BanActionData> actions) Add an item on the whitelist of a world and save in the used config- Parameters:
ww
- the whitelistedworld object, recoverable fromWhitelist
item
- the item to addactions
- map of ban actions and their respective data- Returns:
- true if successfully added, otherwise false
-
removeFromWhitelist
Remove the item from the whitelist and save in config.yml (comments in file may be removed)- Parameters:
ww
- the whitelisted worlditem
- the item- Returns:
- true if successfully removed, otherwise false
-
getCustomItems
- Returns:
- the custom items map
-
getCustomItem
Get a BannedItem object for the meta item named metaName.- Parameters:
metaName
- the name of the meta item- Returns:
- a BannedItem object of the meta item if exists, otherwise null
-
getMetaItemName
Try to get the meta item name of the given item.- Parameters:
item
- the ItemStack- Returns:
- the name of saved the meta item if exists, otherwise null
-
getMetaItemName
Try to get the meta item name of the given item.- Parameters:
item
- the item- Returns:
- the name of saved the meta item if exists, otherwise null
-
addMetaItem
Add an ItemStack as a meta item and save it in metaitems.ymlWill replace existing value
- Parameters:
name
- the name of the custom ItemStackitem
- the custom ItemStack
-
removeMetaItem
Remove the meta ItemStack named name- Parameters:
name
- the name of the custom ItemStack
-