Class PlayerGameModeChangeEvent

java.lang.Object
org.bukkit.event.Event
org.bukkit.event.player.PlayerEvent
org.bukkit.event.player.PlayerGameModeChangeEvent
All Implemented Interfaces:
Cancellable

public class PlayerGameModeChangeEvent extends PlayerEvent implements Cancellable
Called when the GameMode of the player is changed.

NOTE: When getCause() is PlayerGameModeChangeEvent.Cause.DEFAULT_GAMEMODE, the Player from PlayerEvent.getPlayer() might not be fully online at the time this event is fired. Plugins should use OfflinePlayer.isOnline() to check before changing player state.

  • Constructor Details

    • PlayerGameModeChangeEvent

      @Internal @Deprecated(forRemoval=true) public PlayerGameModeChangeEvent(@NotNull @NotNull Player player, @NotNull @NotNull GameMode newGameMode)
      Deprecated, for removal: This API element is subject to removal in a future version.
    • PlayerGameModeChangeEvent

      @Internal public PlayerGameModeChangeEvent(@NotNull @NotNull Player player, @NotNull @NotNull GameMode newGameMode, @NotNull @NotNull PlayerGameModeChangeEvent.Cause cause, @Nullable Component cancelMessage)
  • Method Details

    • getNewGameMode

      @NotNull public @NotNull GameMode getNewGameMode()
      Gets the GameMode the player is switched to.
      Returns:
      player's new GameMode
    • getCause

      @NotNull public @NotNull PlayerGameModeChangeEvent.Cause getCause()
      Gets the cause of this gamemode change.
      Returns:
      the cause
    • cancelMessage

      @Nullable public @Nullable Component cancelMessage()
      Only valid if the gamemode change was caused by the /gamemode command or the gamemode switcher. Gets the message shown to the command user if the event is cancelled as a notification that a player's gamemode was not changed.
      Returns:
      the error message shown to the command user, null by default
    • cancelMessage

      public void cancelMessage(@Nullable @Nullable Component message)
      Sets the message shown to the command user if the event was cancelled. The message is only shown to cancelled events that are called by the /gamemode command or the gamemode switcher.
      Parameters:
      message - the error message shown to the command user, null to show no message.
    • isCancelled

      public boolean isCancelled()
      Description copied from interface: Cancellable
      Gets the cancellation state of this event. A cancelled event will not be executed in the server, but will still pass to other plugins
      Specified by:
      isCancelled in interface Cancellable
      Returns:
      true if this event is cancelled
    • setCancelled

      public void setCancelled(boolean cancel)
      Description copied from interface: Cancellable
      Sets the cancellation state of this event. A cancelled event will not be executed in the server, but will still pass to other plugins.
      Specified by:
      setCancelled in interface Cancellable
      Parameters:
      cancel - true if you wish to cancel this event
    • getHandlers

      @NotNull public @NotNull HandlerList getHandlers()
      Specified by:
      getHandlers in class Event
    • getHandlerList

      @NotNull public static @NotNull HandlerList getHandlerList()