Class RemainingAirState
java.lang.Object
wbs.utils.util.entities.state.tracker.RemainingAirState
- All Implemented Interfaces:
org.bukkit.configuration.serialization.ConfigurationSerializable,EntityState<org.bukkit.entity.LivingEntity>
public class RemainingAirState
extends Object
implements EntityState<org.bukkit.entity.LivingEntity>, org.bukkit.configuration.serialization.ConfigurationSerializable
An
EntityState that captures a LivingEntity's remaining air, used to determine
when it will start drowning.- See Also:
-
Damageable.getHealth()
-
Constructor Summary
ConstructorsConstructorDescriptionCreates the state with the default value for a player.RemainingAirState(int remainingAir) -
Method Summary
Modifier and TypeMethodDescriptionvoidcaptureState(org.bukkit.entity.LivingEntity target) Capture the state of an instance ofEntityStateaccording to the implementation, and store it untilEntityState.restoreState(T)is called.static RemainingAirStatedeserialize(Map<String, Object> args) Deserializer method for converting aMapinto this object, for use inEntityStateManager@NotNull Set<Class<? extends EntityState<?>>>Used to build a graph of captured states, allowing states to be restored in the appropriate order, such as restoringAllowFlightStateafterGameModeState, to prevent a change toGameMode.SURVIVALfrom overriding thePlayer.getAllowFlight()state.voidrestoreState(org.bukkit.entity.LivingEntity target) Restore the state of an instance ofEntityStateaccording to the implementation.
-
Constructor Details
-
RemainingAirState
public RemainingAirState()Creates the state with the default value for a player. -
RemainingAirState
public RemainingAirState(int remainingAir) - Parameters:
remainingAir- How much air, in ticks, the entity has before it will start drowning.
-
-
Method Details
-
captureState
public void captureState(org.bukkit.entity.LivingEntity target) Description copied from interface:EntityStateCapture the state of an instance ofEntityStateaccording to the implementation, and store it untilEntityState.restoreState(T)is called.- Specified by:
captureStatein interfaceEntityState<org.bukkit.entity.LivingEntity>- Parameters:
target- TheEntityStatefrom which to capture.
-
restoreState
public void restoreState(org.bukkit.entity.LivingEntity target) Description copied from interface:EntityStateRestore the state of an instance ofEntityStateaccording to the implementation.- Specified by:
restoreStatein interfaceEntityState<org.bukkit.entity.LivingEntity>- Parameters:
target- TheEntityStatefor which to the stored state.
-
restoreAfter
Description copied from interface:EntityStateUsed to build a graph of captured states, allowing states to be restored in the appropriate order, such as restoringAllowFlightStateafterGameModeState, to prevent a change toGameMode.SURVIVALfrom overriding thePlayer.getAllowFlight()state.- Specified by:
restoreAfterin interfaceEntityState<org.bukkit.entity.LivingEntity>- Returns:
- A set of classes to restore after, if present in a given
SavedEntityState.
-
deserialize
Deserializer method for converting aMapinto this object, for use inEntityStateManager- Parameters:
args- The partially deserialized Map.- Returns:
- An instance of this class, deserialized from args.
-
serialize
- Specified by:
serializein interfaceorg.bukkit.configuration.serialization.ConfigurationSerializable
-