Package cn.nukkit

Class Server

java.lang.Object
cn.nukkit.Server

public class Server extends Object
Author:
MagicDroidX, Box
  • Field Details

    • BROADCAST_CHANNEL_ADMINISTRATIVE

      public static final String BROADCAST_CHANNEL_ADMINISTRATIVE
      See Also:
    • BROADCAST_CHANNEL_USERS

      public static final String BROADCAST_CHANNEL_USERS
      See Also:
    • computeThreadPool

      public final ForkJoinPool computeThreadPool
    • checkLoginTime

      public boolean checkLoginTime
    • networkCompressionLevel

      public int networkCompressionLevel
  • Method Details

    • broadcastMessage

      public int broadcastMessage(String message)
    • broadcastMessage

      public int broadcastMessage(TextContainer message)
    • broadcastMessage

      public int broadcastMessage(String message, CommandSender[] recipients)
    • broadcastMessage

      public int broadcastMessage(String message, Collection<? extends CommandSender> recipients)
    • broadcastMessage

      public int broadcastMessage(TextContainer message, Collection<? extends CommandSender> recipients)
    • broadcast

      public int broadcast(String message, String permissions)
    • broadcast

      public int broadcast(TextContainer message, String permissions)
    • broadcastPacket

      public static void broadcastPacket(Collection<Player> players, DataPacket packet)
    • broadcastPacket

      public static void broadcastPacket(Player[] players, DataPacket packet)
    • batchPackets

      @DeprecationDetails(since="1.4.0.0-PN", by="Cloudburst Nukkit", reason="Packet management was refactored, batching is done automatically near the RakNet layer") @Deprecated public void batchPackets(Player[] players, DataPacket[] packets)
      Deprecated.
    • batchPackets

      @DeprecationDetails(since="1.4.0.0-PN", by="Cloudburst Nukkit", reason="Packet management was refactored, batching is done automatically near the RakNet layer") @Deprecated public void batchPackets(Player[] players, DataPacket[] packets, boolean forceSync)
      Deprecated.
    • broadcastPacketsCallback

      public void broadcastPacketsCallback(byte[] data, List<InetSocketAddress> targets)
    • enablePlugins

      public void enablePlugins(PluginLoadOrder type)
    • enablePlugin

      public void enablePlugin(Plugin plugin)
    • disablePlugins

      public void disablePlugins()
    • dispatchCommand

      public boolean dispatchCommand(CommandSender sender, String commandLine) throws ServerException
      Throws:
      ServerException
    • getConsoleSender

      public ConsoleCommandSender getConsoleSender()
    • reload

      public void reload()
    • shutdown

      public void shutdown()
    • forceShutdown

      public void forceShutdown()
    • start

      public void start()
    • handlePacket

      public void handlePacket(InetSocketAddress address, io.netty.buffer.ByteBuf payload)
    • tickProcessor

      public void tickProcessor()
    • onPlayerCompleteLoginSequence

      public void onPlayerCompleteLoginSequence(Player player)
    • onPlayerLogin

      public void onPlayerLogin(Player player)
    • addPlayer

      public void addPlayer(InetSocketAddress socketAddress, Player player)
    • addOnlinePlayer

      public void addOnlinePlayer(Player player)
    • removeOnlinePlayer

      public void removeOnlinePlayer(Player player)
    • updatePlayerListData

      public void updatePlayerListData(UUID uuid, long entityId, String name, Skin skin)
    • updatePlayerListData

      public void updatePlayerListData(UUID uuid, long entityId, String name, Skin skin, String xboxUserId)
    • updatePlayerListData

      public void updatePlayerListData(UUID uuid, long entityId, String name, Skin skin, Player[] players)
    • updatePlayerListData

      public void updatePlayerListData(UUID uuid, long entityId, String name, Skin skin, String xboxUserId, Player[] players)
    • updatePlayerListData

      public void updatePlayerListData(UUID uuid, long entityId, String name, Skin skin, String xboxUserId, Collection<Player> players)
    • removePlayerListData

      public void removePlayerListData(UUID uuid)
    • removePlayerListData

      public void removePlayerListData(UUID uuid, Player[] players)
    • removePlayerListData

      @Since("1.4.0.0-PN") public void removePlayerListData(UUID uuid, Player player)
    • removePlayerListData

      public void removePlayerListData(UUID uuid, Collection<Player> players)
    • sendFullPlayerListData

      public void sendFullPlayerListData(Player player)
    • sendRecipeList

      public void sendRecipeList(Player player)
    • doAutoSave

      public void doAutoSave()
    • getNextTick

      public long getNextTick()
    • titleTick

      public void titleTick()
    • getQueryInformation

      public QueryRegenerateEvent getQueryInformation()
    • getName

      public String getName()
    • isRunning

      public boolean isRunning()
    • getNukkitVersion

      public String getNukkitVersion()
    • getBStatsNukkitVersion

      public String getBStatsNukkitVersion()
    • getGitCommit

      @PowerNukkitOnly public String getGitCommit()
    • getCodename

      public String getCodename()
    • getVersion

      public String getVersion()
    • getApiVersion

      public String getApiVersion()
    • getFilePath

      public String getFilePath()
    • getDataPath

      public String getDataPath()
    • getPluginPath

      public String getPluginPath()
    • getMaxPlayers

      public int getMaxPlayers()
    • setMaxPlayers

      public void setMaxPlayers(int maxPlayers)
    • addBusying

      public int addBusying(long busyTime)
      将服务器设置为繁忙状态,这可以阻止相关代码认为服务器处于无响应状态。 请牢记,必须在设置之后清除。
      Parameters:
      busyTime - 单位为毫秒
      Returns:
      id
    • removeBusying

      public void removeBusying(int index)
    • getBusyingTime

      public long getBusyingTime()
    • getPort

      public int getPort()
    • getViewDistance

      public int getViewDistance()
    • getIp

      public String getIp()
    • getServerUniqueId

      public UUID getServerUniqueId()
    • getAutoSave

      public boolean getAutoSave()
    • setAutoSave

      public void setAutoSave(boolean autoSave)
    • getLevelType

      public String getLevelType()
    • getGenerateStructures

      public boolean getGenerateStructures()
    • getGamemode

      public int getGamemode()
    • getForceGamemode

      public boolean getForceGamemode()
    • getGamemodeString

      public static String getGamemodeString(int mode)
    • getGamemodeString

      public static String getGamemodeString(int mode, boolean direct)
    • getGamemodeFromString

      public static int getGamemodeFromString(String str)
    • getDifficultyFromString

      public static int getDifficultyFromString(String str)
    • getDifficulty

      public int getDifficulty()
    • setDifficulty

      public void setDifficulty(int difficulty)
    • hasWhitelist

      public boolean hasWhitelist()
    • getSpawnRadius

      public int getSpawnRadius()
    • getAllowFlight

      public boolean getAllowFlight()
    • isHardcore

      public boolean isHardcore()
    • getDefaultGamemode

      public int getDefaultGamemode()
    • getMotd

      public String getMotd()
    • getSubMotd

      public String getSubMotd()
    • getForceResources

      public boolean getForceResources()
    • getLogger

      @Deprecated @DeprecationDetails(since="1.4.0.0-PN", by="PowerNukkit", reason="Use your own logger, sharing loggers makes bug analyses harder.", replaceWith="@Log4j2 annotation in the class and use the `log` static field that is generated by lombok, also make sure to log the exception as the last argument, don\'t concatenate it or use it as parameter replacement. Just put it as last argument and SLF4J will understand that the log message was caused by that exception/throwable.") public MainLogger getLogger()
      Deprecated.
    • getEntityMetadata

      public EntityMetadataStore getEntityMetadata()
    • getPlayerMetadata

      public PlayerMetadataStore getPlayerMetadata()
    • getLevelMetadata

      public LevelMetadataStore getLevelMetadata()
    • getPluginManager

      public PluginManager getPluginManager()
    • getCraftingManager

      public CraftingManager getCraftingManager()
    • getResourcePackManager

      public ResourcePackManager getResourcePackManager()
    • getScoreboardManager

      public ScoreboardManager getScoreboardManager()
    • getFunctionManager

      public FunctionManager getFunctionManager()
    • getTickingAreaManager

      public TickingAreaManager getTickingAreaManager()
    • getScheduler

      public ServerScheduler getScheduler()
    • getTick

      public int getTick()
    • getTicksPerSecond

      public float getTicksPerSecond()
    • getTicksPerSecondAverage

      public float getTicksPerSecondAverage()
    • getTickUsage

      public float getTickUsage()
    • getTickUsageAverage

      public float getTickUsageAverage()
    • getCommandMap

      public SimpleCommandMap getCommandMap()
    • getOnlinePlayers

      public Map<UUID,Player> getOnlinePlayers()
    • addRecipe

      public void addRecipe(Recipe recipe)
    • getPlayer

      public Optional<Player> getPlayer(UUID uuid)
    • lookupName

      public Optional<UUID> lookupName(String name)
    • getOfflinePlayer

      @Deprecated public IPlayer getOfflinePlayer(String name)
      Deprecated.
    • getOfflinePlayer

      public IPlayer getOfflinePlayer(UUID uuid)
    • getOfflinePlayerData

      public CompoundTag getOfflinePlayerData(UUID uuid)
    • getOfflinePlayerData

      public CompoundTag getOfflinePlayerData(UUID uuid, boolean create)
    • getOfflinePlayerData

      @Deprecated public CompoundTag getOfflinePlayerData(String name)
      Deprecated.
    • getOfflinePlayerData

      @Deprecated public CompoundTag getOfflinePlayerData(String name, boolean create)
      Deprecated.
    • saveOfflinePlayerData

      public void saveOfflinePlayerData(UUID uuid, CompoundTag tag)
    • saveOfflinePlayerData

      public void saveOfflinePlayerData(String name, CompoundTag tag)
    • saveOfflinePlayerData

      public void saveOfflinePlayerData(UUID uuid, CompoundTag tag, boolean async)
    • saveOfflinePlayerData

      public void saveOfflinePlayerData(String name, CompoundTag tag, boolean async)
    • getPlayer

      public Player getPlayer(String name)
    • getPlayerExact

      public Player getPlayerExact(String name)
    • matchPlayer

      public Player[] matchPlayer(String partialName)
    • removePlayer

      public void removePlayer(Player player)
    • getLevels

      public Map<Integer,Level> getLevels()
    • getDefaultLevel

      public Level getDefaultLevel()
    • setDefaultLevel

      public void setDefaultLevel(Level defaultLevel)
    • isLevelLoaded

      public boolean isLevelLoaded(String name)
    • getLevel

      public Level getLevel(int levelId)
    • getLevelByName

      public Level getLevelByName(String name)
    • unloadLevel

      public boolean unloadLevel(Level level)
    • unloadLevel

      public boolean unloadLevel(Level level, boolean forceUnload)
    • loadLevel

      public boolean loadLevel(String name)
    • generateLevel

      public boolean generateLevel(String name)
    • generateLevel

      public boolean generateLevel(String name, long seed)
    • generateLevel

      public boolean generateLevel(String name, long seed, Class<? extends Generator> generator)
    • generateLevel

      public boolean generateLevel(String name, long seed, Class<? extends Generator> generator, Map<String,Object> options)
    • generateLevel

      @PowerNukkitXOnly @Since("1.19.20-r3") public boolean generateLevel(String name, long seed, Class<? extends Generator> generator, Map<String,Object> options, DimensionData givenDimensionData)
    • generateLevel

      public boolean generateLevel(String name, long seed, Class<? extends Generator> generator, Map<String,Object> options, DimensionData givenDimensionData, Class<? extends LevelProvider> provider)
    • isLevelGenerated

      public boolean isLevelGenerated(String name)
    • getLanguage

      public BaseLang getLanguage()
    • isLanguageForced

      public boolean isLanguageForced()
    • isRedstoneEnabled

      @PowerNukkitOnly public boolean isRedstoneEnabled()
    • setRedstoneEnabled

      @PowerNukkitOnly public void setRedstoneEnabled(boolean redstoneEnabled)
    • getNetwork

      public Network getNetwork()
    • getConfig

      public Config getConfig()
    • getConfig

      public <T> T getConfig(String variable)
    • getConfig

      public <T> T getConfig(String variable, T defaultValue)
    • getProperties

      public Config getProperties()
    • getProperty

      public Object getProperty(String variable)
    • getProperty

      public Object getProperty(String variable, Object defaultValue)
    • setPropertyString

      public void setPropertyString(String variable, String value)
    • getPropertyString

      public String getPropertyString(String variable)
    • getPropertyString

      public String getPropertyString(String variable, String defaultValue)
    • getPropertyInt

      public int getPropertyInt(String variable)
    • getPropertyInt

      public int getPropertyInt(String variable, Integer defaultValue)
    • setPropertyInt

      public void setPropertyInt(String variable, int value)
    • getPropertyBoolean

      public boolean getPropertyBoolean(String variable)
    • getPropertyBoolean

      public boolean getPropertyBoolean(String variable, Object defaultValue)
    • setPropertyBoolean

      public void setPropertyBoolean(String variable, boolean value)
    • getPluginCommand

      public PluginIdentifiableCommand getPluginCommand(String name)
    • getNameBans

      public BanList getNameBans()
    • getIPBans

      public BanList getIPBans()
    • addOp

      public void addOp(String name)
    • removeOp

      public void removeOp(String name)
    • addWhitelist

      public void addWhitelist(String name)
    • removeWhitelist

      public void removeWhitelist(String name)
    • isWhitelisted

      public boolean isWhitelisted(String name)
    • isOp

      public boolean isOp(String name)
    • getWhitelist

      public Config getWhitelist()
    • getOps

      public Config getOps()
    • reloadWhitelist

      public void reloadWhitelist()
    • getServiceManager

      public ServiceManager getServiceManager()
    • getCommandAliases

      public Map<String,List<String>> getCommandAliases()
    • shouldSavePlayerData

      public boolean shouldSavePlayerData()
    • getPlayerSkinChangeCooldown

      public int getPlayerSkinChangeCooldown()
    • isPrimaryThread

      public final boolean isPrimaryThread()
      Checks the current thread against the expected primary thread for the server.

      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.

      Returns:
      true if the current thread matches the expected primary thread, false otherwise
    • getPrimaryThread

      public Thread getPrimaryThread()
    • isNetherAllowed

      public boolean isNetherAllowed()
    • getPlayerDataSerializer

      public PlayerDataSerializer getPlayerDataSerializer()
    • setPlayerDataSerializer

      public void setPlayerDataSerializer(PlayerDataSerializer playerDataSerializer)
    • isIgnoredPacket

      @Since("1.3.0.0-PN") public boolean isIgnoredPacket(Class<? extends DataPacket> clazz)
    • isSafeSpawn

      @PowerNukkitOnly @Since("1.4.0.0-PN") public boolean isSafeSpawn()
    • getInstance

      public static Server getInstance()
    • getPositionTrackingService

      @PowerNukkitOnly @Since("1.4.0.0-PN") @Nonnull public PositionTrackingService getPositionTrackingService()
    • isForceSkinTrusted

      @PowerNukkitOnly @Since("1.4.0.0-PN") public boolean isForceSkinTrusted()
    • isCheckMovement

      @PowerNukkitOnly @Since("1.4.0.0-PN") public boolean isCheckMovement()
    • getLaunchTime

      @PowerNukkitOnly @Since("1.4.0.0-PN") public long getLaunchTime()
    • isTheEndAllowed

      @PowerNukkitOnly @Since("1.4.0.0-PN") public boolean isTheEndAllowed()
    • isEnableExperimentMode

      @PowerNukkitXOnly @Since("1.6.0.0-PNX") public boolean isEnableExperimentMode()