PluginMessageRecipient
public interface Server extends PluginMessageRecipient
Modifier and Type | Interface | Description |
---|---|---|
static class |
Server.Spigot |
Modifier and Type | Field | Description |
---|---|---|
static java.lang.String |
BROADCAST_CHANNEL_ADMINISTRATIVE |
Used for all administrative messages, such as an operator using a
command.
|
static java.lang.String |
BROADCAST_CHANNEL_USERS |
Used for all announcement messages, such as informing users that a
player has joined.
|
Modifier and Type | Method | Description |
---|---|---|
boolean |
addRecipe(Recipe recipe) |
Adds a recipe to the crafting manager.
|
java.util.Iterator<Advancement> |
advancementIterator() |
Get an iterator through all advancements.
|
void |
banIP(java.lang.String address) |
Bans the specified address from the server.
|
int |
broadcast(java.lang.String message,
java.lang.String permission) |
Broadcasts the specified message to every user with the given
permission name.
|
int |
broadcastMessage(java.lang.String message) |
Broadcast a message to all players.
|
void |
clearRecipes() |
Clears the list of crafting recipes.
|
BlockData |
createBlockData(java.lang.String data) |
Creates a new
BlockData instance with material and properties
parsed from provided data. |
BlockData |
createBlockData(Material material) |
Creates a new
BlockData instance for the specified Material, with
all properties initialized to unspecified defaults. |
BlockData |
createBlockData(Material material,
java.lang.String data) |
Creates a new
BlockData instance for the specified Material, with
all properties initialized to unspecified defaults, except for those
provided in data. |
BlockData |
createBlockData(Material material,
java.util.function.Consumer<BlockData> consumer) |
Creates a new
BlockData instance for the specified Material, with
all properties initialized to unspecified defaults. |
BossBar |
createBossBar(java.lang.String title,
BarColor color,
BarStyle style,
BarFlag... flags) |
Creates a boss bar instance to display to players.
|
ChunkGenerator.ChunkData |
createChunkData(World world) |
Create a ChunkData for use in a generator.
|
Inventory |
createInventory(InventoryHolder owner,
int size) |
Creates an empty inventory of type
InventoryType.CHEST with the
specified size. |
Inventory |
createInventory(InventoryHolder owner,
int size,
java.lang.String title) |
Creates an empty inventory of type
InventoryType.CHEST with the
specified size and title. |
Inventory |
createInventory(InventoryHolder owner,
InventoryType type) |
Creates an empty inventory with the specified type and title.
|
Inventory |
createInventory(InventoryHolder owner,
InventoryType type,
java.lang.String title) |
Creates an empty inventory with the specified type and title.
|
MapView |
createMap(World world) |
Create a new map with an automatically assigned ID.
|
Merchant |
createMerchant(java.lang.String title) |
Creates an empty merchant.
|
World |
createWorld(WorldCreator creator) |
Creates or loads a world with the given name using the specified
options.
|
boolean |
dispatchCommand(CommandSender sender,
java.lang.String commandLine) |
Dispatches a command on this server, and executes it if found.
|
Advancement |
getAdvancement(NamespacedKey key) |
Get the advancement specified by this key.
|
boolean |
getAllowEnd() |
Gets whether this server allows the End or not.
|
boolean |
getAllowFlight() |
Gets whether this server allows flying or not.
|
boolean |
getAllowNether() |
Gets whether this server allows the Nether or not.
|
int |
getAmbientSpawnLimit() |
Gets user-specified limit for number of ambient mobs that can spawn in
a chunk.
|
int |
getAnimalSpawnLimit() |
Gets user-specified limit for number of animals that can spawn in a
chunk.
|
BanList |
getBanList(BanList.Type type) |
Gets a ban list for the supplied type.
|
java.util.Set<OfflinePlayer> |
getBannedPlayers() |
Gets a set containing all banned players.
|
java.lang.String |
getBukkitVersion() |
Gets the Bukkit version that this server is running.
|
java.util.Map<java.lang.String,java.lang.String[]> |
getCommandAliases() |
Gets a list of command aliases defined in the server properties.
|
long |
getConnectionThrottle() |
Gets the value of the connection throttle setting.
|
ConsoleCommandSender |
getConsoleSender() |
Gets a
ConsoleCommandSender that may be used as an input source
for this server. |
GameMode |
getDefaultGameMode() |
Gets the default
GameMode for new players. |
Entity |
getEntity(java.util.UUID uuid) |
Gets an entity on the server by its UUID
|
boolean |
getGenerateStructures() |
Get generate-structures setting.
|
HelpMap |
getHelpMap() |
Gets the
HelpMap providing help topics for this server. |
int |
getIdleTimeout() |
Gets the idle kick timeout.
|
java.lang.String |
getIp() |
Get the IP that this server is bound to, or empty string if not
specified.
|
java.util.Set<java.lang.String> |
getIPBans() |
Gets a set containing all current IPs that are banned.
|
ItemFactory |
getItemFactory() |
Gets the instance of the item factory (for
ItemMeta ). |
java.util.logging.Logger |
getLogger() |
Returns the primary logger associated with this server instance.
|
LootTable |
getLootTable(NamespacedKey key) |
Gets the specified
LootTable . |
MapView |
getMap(short id) |
Deprecated.
Magic value
|
int |
getMaxPlayers() |
Get the maximum amount of players which can login to this server.
|
Messenger |
getMessenger() |
Gets the
Messenger responsible for this server. |
int |
getMonsterSpawnLimit() |
Gets user-specified limit for number of monsters that can spawn in a
chunk.
|
java.lang.String |
getMotd() |
Gets the message that is displayed on the server list.
|
java.lang.String |
getName() |
Gets the name of this server implementation.
|
OfflinePlayer |
getOfflinePlayer(java.lang.String name) |
Deprecated.
Persistent storage of users should be by UUID as names are no longer
unique past a single session.
|
OfflinePlayer |
getOfflinePlayer(java.util.UUID id) |
Gets the player by the given UUID, regardless if they are offline or
online.
|
OfflinePlayer[] |
getOfflinePlayers() |
Gets every player that has ever played on this server.
|
boolean |
getOnlineMode() |
Gets whether the Server is in online mode or not.
|
java.util.Collection<? extends Player> |
getOnlinePlayers() |
Gets a view of all currently logged in players.
|
java.util.Set<OfflinePlayer> |
getOperators() |
Gets a set containing all player operators.
|
Player |
getPlayer(java.lang.String name) |
Gets a player object by the given username.
|
Player |
getPlayer(java.util.UUID id) |
Gets the player with the given UUID.
|
Player |
getPlayerExact(java.lang.String name) |
Gets the player with the exact given name, case insensitive.
|
PluginCommand |
getPluginCommand(java.lang.String name) |
Gets a
PluginCommand with the given name or alias. |
PluginManager |
getPluginManager() |
Gets the plugin manager for interfacing with plugins.
|
int |
getPort() |
Get the game port that the server runs on.
|
java.util.List<Recipe> |
getRecipesFor(ItemStack result) |
Get a list of all recipes for a given item.
|
BukkitScheduler |
getScheduler() |
Gets the scheduler for managing scheduled events.
|
ScoreboardManager |
getScoreboardManager() |
Gets the instance of the scoreboard manager.
|
CachedServerIcon |
getServerIcon() |
Gets an instance of the server's default server-icon.
|
java.lang.String |
getServerId() |
Get an ID of this server.
|
java.lang.String |
getServerName() |
Get the name of this server.
|
ServicesManager |
getServicesManager() |
Gets a services manager.
|
java.lang.String |
getShutdownMessage() |
Gets the default message that is displayed when the server is stopped.
|
int |
getSpawnRadius() |
Gets the radius, in blocks, around each worlds spawn point to protect.
|
<T extends Keyed> |
getTag(java.lang.String registry,
NamespacedKey tag,
java.lang.Class<T> clazz) |
Gets a tag which has already been defined within the server.
|
int |
getTicksPerAnimalSpawns() |
Gets default ticks per animal spawns value.
|
int |
getTicksPerMonsterSpawns() |
Gets the default ticks per monster spawns value.
|
UnsafeValues |
getUnsafe() |
Deprecated.
|
java.lang.String |
getUpdateFolder() |
Gets the name of the update folder.
|
java.io.File |
getUpdateFolderFile() |
Gets the update folder.
|
java.lang.String |
getVersion() |
Gets the version string of this server implementation.
|
int |
getViewDistance() |
Get the view distance from this server.
|
Warning.WarningState |
getWarningState() |
Gets the current warning state for the server.
|
int |
getWaterAnimalSpawnLimit() |
Gets user-specified limit for number of water animals that can spawn in
a chunk.
|
java.util.Set<OfflinePlayer> |
getWhitelistedPlayers() |
Gets a list of whitelisted players.
|
World |
getWorld(java.lang.String name) |
Gets the world with the given name.
|
World |
getWorld(java.util.UUID uid) |
Gets the world from the given Unique ID.
|
java.io.File |
getWorldContainer() |
Gets the folder that contains all of the various
World s. |
java.util.List<World> |
getWorlds() |
Gets a list of all worlds on this server.
|
java.lang.String |
getWorldType() |
Get world type (level-type setting) for default world.
|
boolean |
hasWhitelist() |
Gets whether this server has a whitelist or not.
|
boolean |
isHardcore() |
Gets whether the server is in hardcore mode or not.
|
boolean |
isPrimaryThread() |
Checks the current thread against the expected primary thread for the
server.
|
CachedServerIcon |
loadServerIcon(java.awt.image.BufferedImage image) |
Creates a cached server-icon for the specific image.
|
CachedServerIcon |
loadServerIcon(java.io.File file) |
Loads an image from a file, and returns a cached image for the specific
server-icon.
|
java.util.List<Player> |
matchPlayer(java.lang.String name) |
Attempts to match any players with the given name, and returns a list
of all possibly matches.
|
java.util.Iterator<Recipe> |
recipeIterator() |
Get an iterator through the list of crafting recipes.
|
void |
reload() |
Reloads the server, refreshing settings and plugin information.
|
void |
reloadData() |
Reload only the Minecraft data for the server.
|
void |
reloadWhitelist() |
Reloads the whitelist from disk.
|
void |
resetRecipes() |
Resets the list of crafting recipes to the default.
|
void |
savePlayers() |
Writes loaded players to disk.
|
void |
setDefaultGameMode(GameMode mode) |
Sets the default
GameMode for new players. |
void |
setIdleTimeout(int threshold) |
Set the idle kick timeout.
|
void |
setSpawnRadius(int value) |
Sets the radius, in blocks, around each worlds spawn point to protect.
|
void |
setWhitelist(boolean value) |
Sets if the server is whitelisted.
|
void |
shutdown() |
Shutdowns the server, stopping everything.
|
Server.Spigot |
spigot() |
|
void |
unbanIP(java.lang.String address) |
Unbans the specified address from the server.
|
boolean |
unloadWorld(java.lang.String name,
boolean save) |
Unloads a world with the given name.
|
boolean |
unloadWorld(World world,
boolean save) |
Unloads the given world.
|
getListeningPluginChannels, sendPluginMessage
static final java.lang.String BROADCAST_CHANNEL_ADMINISTRATIVE
For use in broadcast(java.lang.String, java.lang.String)
.
static final java.lang.String BROADCAST_CHANNEL_USERS
For use in broadcast(java.lang.String, java.lang.String)
.
java.lang.String getName()
java.lang.String getVersion()
java.lang.String getBukkitVersion()
java.util.Collection<? extends Player> getOnlinePlayers()
Collection.size()
zero-allocation.
The collection is a view backed by the internal representation, such
that, changes to the internal state of the server will be reflected
immediately. However, the reuse of the returned collection (identity)
is not strictly guaranteed for future or all implementations. Casting
the collection, or relying on interface implementations (like Serializable
or List
), is deprecated.
Iteration behavior is undefined outside of self-contained main-thread
uses. Normal and immediate iterator use without consequences that
affect the collection are fully supported. The effects following
(non-exhaustive) teleportation
,
death
, and kicking
are undefined. Any use of this collection from
asynchronous threads is unsafe.
For safe consequential iteration or mimicking the old array behavior,
using Collection.toArray(Object[])
is recommended. For making
snapshots, ImmutableList.copyOf(Collection)
is recommended.
int getMaxPlayers()
int getPort()
int getViewDistance()
java.lang.String getIp()
java.lang.String getServerName()
java.lang.String getServerId()
java.lang.String getWorldType()
boolean getGenerateStructures()
boolean getAllowEnd()
boolean getAllowNether()
boolean hasWhitelist()
void setWhitelist(boolean value)
value
- true for whitelist on, false for offjava.util.Set<OfflinePlayer> getWhitelistedPlayers()
void reloadWhitelist()
int broadcastMessage(java.lang.String message)
This is the same as calling broadcast(java.lang.String,
java.lang.String)
to BROADCAST_CHANNEL_USERS
message
- the messagejava.lang.String getUpdateFolder()
The update folder name is relative to the plugins folder.
java.io.File getUpdateFolderFile()
long getConnectionThrottle()
int getTicksPerAnimalSpawns()
Example Usage:
Note: If set to 0, animal spawning will be disabled. We recommend using spawn-animals to control this instead.
Minecraft default: 400.
int getTicksPerMonsterSpawns()
Example Usage:
Note: If set to 0, monsters spawning will be disabled. We recommend using spawn-monsters to control this instead.
Minecraft default: 1.
Player getPlayer(java.lang.String name)
This method may not return objects for offline players.
name
- the name to look upPlayer getPlayerExact(java.lang.String name)
name
- Exact name of the player to retrievejava.util.List<Player> matchPlayer(java.lang.String name)
This list is not sorted in any particular order. If an exact match is found, the returned list will only contain a single result.
name
- the (partial) name to matchPlayer getPlayer(java.util.UUID id)
id
- UUID of the player to retrievePluginManager getPluginManager()
BukkitScheduler getScheduler()
ServicesManager getServicesManager()
java.util.List<World> getWorlds()
World createWorld(WorldCreator creator)
If the world is already loaded, it will just return the equivalent of getWorld(creator.name()).
creator
- the options to use when creating the worldboolean unloadWorld(java.lang.String name, boolean save)
name
- Name of the world to unloadsave
- whether to save the chunks before unloadingboolean unloadWorld(World world, boolean save)
world
- the world to unloadsave
- whether to save the chunks before unloadingWorld getWorld(java.lang.String name)
name
- the name of the world to retrieveWorld getWorld(java.util.UUID uid)
uid
- a unique-id of the world to retrieve@Deprecated MapView getMap(short id)
id
- the id of the map to getMapView createMap(World world)
world
- the world the map will belong tovoid reload()
void reloadData()
java.util.logging.Logger getLogger()
PluginCommand getPluginCommand(java.lang.String name)
PluginCommand
with the given name or alias.name
- the name of the command to retrievevoid savePlayers()
boolean dispatchCommand(CommandSender sender, java.lang.String commandLine) throws CommandException
sender
- the apparent sender of the commandcommandLine
- the command + arguments. Example: test abc
123
CommandException
- thrown when the executor for the given command
fails with an unhandled exceptionboolean addRecipe(Recipe recipe)
recipe
- the recipe to addjava.util.List<Recipe> getRecipesFor(ItemStack result)
result
- the item to match against recipe resultsjava.util.Iterator<Recipe> recipeIterator()
void clearRecipes()
void resetRecipes()
java.util.Map<java.lang.String,java.lang.String[]> getCommandAliases()
int getSpawnRadius()
void setSpawnRadius(int value)
value
- new spawn radius, or 0 if noneboolean getOnlineMode()
boolean getAllowFlight()
boolean isHardcore()
void shutdown()
int broadcast(java.lang.String message, java.lang.String permission)
message
- message to broadcastpermission
- the required permission permissibles
must have to receive the broadcast@Deprecated OfflinePlayer getOfflinePlayer(java.lang.String name)
This method may involve a blocking web request to get the UUID for the given name.
This will return an object even if the player does not exist. To this method, all players will exist.
name
- the name the player to retrievegetOfflinePlayer(java.util.UUID)
OfflinePlayer getOfflinePlayer(java.util.UUID id)
This will return an object even if the player does not exist. To this method, all players will exist.
id
- the UUID of the player to retrievejava.util.Set<java.lang.String> getIPBans()
void banIP(java.lang.String address)
address
- the IP address to banvoid unbanIP(java.lang.String address)
address
- the IP address to unbanjava.util.Set<OfflinePlayer> getBannedPlayers()
BanList getBanList(BanList.Type type)
Bans by name are no longer supported and this method will return null when trying to request them. The replacement is bans by UUID.
type
- the type of list to fetch, cannot be nulljava.util.Set<OfflinePlayer> getOperators()
GameMode getDefaultGameMode()
GameMode
for new players.void setDefaultGameMode(GameMode mode)
GameMode
for new players.mode
- the new game modeConsoleCommandSender getConsoleSender()
ConsoleCommandSender
that may be used as an input source
for this server.java.io.File getWorldContainer()
World
s.OfflinePlayer[] getOfflinePlayers()
Messenger getMessenger()
Messenger
responsible for this server.HelpMap getHelpMap()
HelpMap
providing help topics for this server.Inventory createInventory(InventoryHolder owner, InventoryType type)
InventoryType.CHEST
, the new inventory has a size of 27;
otherwise the new inventory has the normal size for its type.InventoryType.WORKBENCH
will not process crafting recipes if
created with this method. Use
HumanEntity.openWorkbench(Location, boolean)
instead.
InventoryType.ENCHANTING
will not process ItemStack
s
for possible enchanting results. Use
HumanEntity.openEnchanting(Location, boolean)
instead.owner
- the holder of the inventory, or null to indicate no holdertype
- the type of inventory to createjava.lang.IllegalArgumentException
- if the InventoryType
cannot be
viewed.InventoryType.isCreatable()
Inventory createInventory(InventoryHolder owner, InventoryType type, java.lang.String title)
InventoryType.CHEST
, the new inventory has a size of 27;
otherwise the new inventory has the normal size for its type.InventoryType.WORKBENCH
will not process crafting recipes if
created with this method. Use
HumanEntity.openWorkbench(Location, boolean)
instead.
InventoryType.ENCHANTING
will not process ItemStack
s
for possible enchanting results. Use
HumanEntity.openEnchanting(Location, boolean)
instead.owner
- The holder of the inventory; can be null if there's no holder.type
- The type of inventory to create.title
- The title of the inventory, to be displayed when it is viewed.java.lang.IllegalArgumentException
- if the InventoryType
cannot be
viewed.InventoryType.isCreatable()
Inventory createInventory(InventoryHolder owner, int size) throws java.lang.IllegalArgumentException
InventoryType.CHEST
with the
specified size.owner
- the holder of the inventory, or null to indicate no holdersize
- a multiple of 9 as the size of inventory to createjava.lang.IllegalArgumentException
- if the size is not a multiple of 9Inventory createInventory(InventoryHolder owner, int size, java.lang.String title) throws java.lang.IllegalArgumentException
InventoryType.CHEST
with the
specified size and title.owner
- the holder of the inventory, or null to indicate no holdersize
- a multiple of 9 as the size of inventory to createtitle
- the title of the inventory, displayed when inventory is
viewedjava.lang.IllegalArgumentException
- if the size is not a multiple of 9Merchant createMerchant(java.lang.String title)
title
- the title of the corresponding merchant inventory, displayed
when the merchant inventory is viewedint getMonsterSpawnLimit()
int getAnimalSpawnLimit()
int getWaterAnimalSpawnLimit()
int getAmbientSpawnLimit()
boolean isPrimaryThread()
Note: this method should not be used to indicate the current synchronized state of the runtime. A current thread matching the main thread indicates that it is synchronized, but a mismatch does not preclude the same assumption.
java.lang.String getMotd()
java.lang.String getShutdownMessage()
Warning.WarningState getWarningState()
ItemFactory getItemFactory()
ItemMeta
).ItemFactory
ScoreboardManager getScoreboardManager()
This will only exist after the first world has loaded.
CachedServerIcon getServerIcon()
CachedServerIcon loadServerIcon(java.io.File file) throws java.lang.IllegalArgumentException, java.lang.Exception
Size and type are implementation defined. An incompatible file is
guaranteed to throw an implementation-defined Exception
.
file
- the file to load the fromServerListPingEvent.setServerIcon(CachedServerIcon)
java.lang.IllegalArgumentException
- if image is nulljava.lang.Exception
- if the image does not meet current server server-icon
specificationsCachedServerIcon loadServerIcon(java.awt.image.BufferedImage image) throws java.lang.IllegalArgumentException, java.lang.Exception
Size and type are implementation defined. An incompatible file is
guaranteed to throw an implementation-defined Exception
.
image
- the image to useServerListPingEvent.setServerIcon(CachedServerIcon)
java.lang.IllegalArgumentException
- if image is nulljava.lang.Exception
- if the image does not meet current server
server-icon specificationsvoid setIdleTimeout(int threshold)
A value of 0 will disable the idle kick timeout.
threshold
- the idle timeout in minutesint getIdleTimeout()
ChunkGenerator.ChunkData createChunkData(World world)
ChunkGenerator.generateChunkData(org.bukkit.World, java.util.Random, int, int, org.bukkit.generator.ChunkGenerator.BiomeGrid)
world
- the world to create the ChunkData forBossBar createBossBar(java.lang.String title, BarColor color, BarStyle style, BarFlag... flags)
title
- the title of the boss barcolor
- the color of the boss barstyle
- the style of the boss barflags
- an optional list of flags to set on the boss barEntity getEntity(java.util.UUID uuid)
uuid
- the UUID of the entityAdvancement getAdvancement(NamespacedKey key)
key
- unique advancement keyjava.util.Iterator<Advancement> advancementIterator()
BlockData createBlockData(Material material)
BlockData
instance for the specified Material, with
all properties initialized to unspecified defaults.material
- the materialBlockData createBlockData(Material material, java.util.function.Consumer<BlockData> consumer)
BlockData
instance for the specified Material, with
all properties initialized to unspecified defaults.material
- the materialconsumer
- consumer to run on new instance before returningBlockData createBlockData(java.lang.String data) throws java.lang.IllegalArgumentException
BlockData
instance with material and properties
parsed from provided data.data
- data stringjava.lang.IllegalArgumentException
- if the specified data is not validBlockData createBlockData(Material material, java.lang.String data) throws java.lang.IllegalArgumentException
BlockData
instance for the specified Material, with
all properties initialized to unspecified defaults, except for those
provided in data.
material
is specified, then the data string must not also
contain the material.material
- the materialdata
- data stringjava.lang.IllegalArgumentException
- if the specified data is not valid<T extends Keyed> Tag<T> getTag(java.lang.String registry, NamespacedKey tag, java.lang.Class<T> clazz)
Tag
rather than this method
which makes no guarantees about which tags are available, and may also be
less performant due to lack of caching.
Tag
.T
- type of the tagregistry
- the tag registry to look attag
- the name of the tagclazz
- the class of the tag entriesLootTable getLootTable(NamespacedKey key)
LootTable
.key
- the name of the LootTable@Deprecated UnsafeValues getUnsafe()
UnsafeValues
Server.Spigot spigot()
Copyright © 2018. All rights reserved.