Class VPlayer
java.lang.Object
fr.dreamin.dreamvoice.api.player.model.VPlayer
Wrapper object representing an active player connected to Simple Voice Chat.
Manages player state, attached managers, and mute toggles.
-
Constructor Summary
ConstructorsConstructorDescriptionVPlayer(@NotNull org.bukkit.entity.Player player, de.maxhenkel.voicechat.api.VoicechatConnection client) -
Method Summary
Modifier and TypeMethodDescriptionvoidaddManager(@NotNull PlayerManager manager) Attaches and initializes a manager instance.<T extends PlayerManager>
voidconsumeManager(@NotNull Class<T> managerClass, @NotNull Consumer<T> consumer) Safely consumes a manager if present.voidconsumePlayer(@NotNull Consumer<org.bukkit.entity.Player> consumer) Safely executes an action on the online Bukkit Player object.@Nullable org.bukkit.entity.PlayerRetrieves the Bukkit Player object associated with this wrapper.<T extends PlayerManager>
TgetManager(@NotNull Class<T> managerClass) Retrieves a manager of the specified class attached to this player.booleanhasManager(@NotNull Class<? extends PlayerManager> managerClass) Checks whether this player has a manager of the given class attached.booleanisOnline()Checks whether the underlying Bukkit player is currently online.voidCleans up and removes all managers attached to this player.final voidremoveAllManager(@NotNull Class<? extends PlayerManager>... excludeClass) Removes all managers attached to this player except specified classes.voidremoveManager(@NotNull Class<? extends PlayerManager> managerClass) Removes and closes a manager from this player.voidsetState(@NotNull PlayerState state) Updates the voice state of the player, firing aPlayerStateChangeEvent.
-
Constructor Details
-
VPlayer
public VPlayer(@NotNull @NotNull org.bukkit.entity.Player player, de.maxhenkel.voicechat.api.VoicechatConnection client)
-
-
Method Details
-
setState
Updates the voice state of the player, firing aPlayerStateChangeEvent.- Parameters:
state- the new player state
-
consumePlayer
Safely executes an action on the online Bukkit Player object.- Parameters:
consumer- the action to execute
-
getBukkitPlayer
@Nullable public @Nullable org.bukkit.entity.Player getBukkitPlayer()Retrieves the Bukkit Player object associated with this wrapper.- Returns:
- the online
Player, ornullif offline
-
isOnline
public boolean isOnline()Checks whether the underlying Bukkit player is currently online.- Returns:
trueif the player is online
-
getManager
Retrieves a manager of the specified class attached to this player.- Type Parameters:
T- the manager type- Parameters:
managerClass- the manager class- Returns:
- the manager instance, or
nullif not present
-
consumeManager
public <T extends PlayerManager> void consumeManager(@NotNull @NotNull Class<T> managerClass, @NotNull @NotNull Consumer<T> consumer) Safely consumes a manager if present.- Type Parameters:
T- the manager type- Parameters:
managerClass- the manager classconsumer- the action to perform
-
addManager
Attaches and initializes a manager instance.- Parameters:
manager- the manager instance
-
hasManager
Checks whether this player has a manager of the given class attached.- Parameters:
managerClass- the manager class- Returns:
trueif present
-
removeManager
Removes and closes a manager from this player.- Parameters:
managerClass- the manager class to remove
-
removeAllManager
public void removeAllManager()Cleans up and removes all managers attached to this player. -
removeAllManager
@SafeVarargs public final void removeAllManager(@NotNull @NotNull Class<? extends PlayerManager>... excludeClass) Removes all managers attached to this player except specified classes.- Parameters:
excludeClass- classes to retain
-