Class PlayerEntity

All Implemented Interfaces:
ICommandSource, INameable, ICapabilityProvider, ICapabilitySerializable<CompoundNBT>, IForgeEntity, INBTSerializable<CompoundNBT>
Direct Known Subclasses:
AbstractClientPlayerEntity, ServerPlayerEntity

public abstract class PlayerEntity extends LivingEntity
  • Field Details

    • PERSISTED_NBT_TAG

      public static final String PERSISTED_NBT_TAG
      See Also:
    • STANDING_DIMENSIONS

      public static final EntitySize STANDING_DIMENSIONS
    • POSES

      private static final Map<Pose,EntitySize> POSES
    • DATA_PLAYER_ABSORPTION_ID

      private static final DataParameter<Float> DATA_PLAYER_ABSORPTION_ID
    • DATA_SCORE_ID

      private static final DataParameter<Integer> DATA_SCORE_ID
    • DATA_PLAYER_MODE_CUSTOMISATION

      protected static final DataParameter<Byte> DATA_PLAYER_MODE_CUSTOMISATION
    • DATA_PLAYER_MAIN_HAND

      protected static final DataParameter<Byte> DATA_PLAYER_MAIN_HAND
    • DATA_SHOULDER_LEFT

      protected static final DataParameter<CompoundNBT> DATA_SHOULDER_LEFT
    • DATA_SHOULDER_RIGHT

      protected static final DataParameter<CompoundNBT> DATA_SHOULDER_RIGHT
    • timeEntitySatOnShoulder

      private long timeEntitySatOnShoulder
    • inventory

      public final PlayerInventory inventory
    • enderChestInventory

      protected EnderChestInventory enderChestInventory
    • inventoryMenu

      public final PlayerContainer inventoryMenu
    • containerMenu

      public Container containerMenu
    • foodData

      protected FoodStats foodData
    • jumpTriggerTime

      protected int jumpTriggerTime
    • oBob

      public float oBob
    • bob

      public float bob
    • takeXpDelay

      public int takeXpDelay
    • xCloakO

      public double xCloakO
    • yCloakO

      public double yCloakO
    • zCloakO

      public double zCloakO
    • xCloak

      public double xCloak
    • yCloak

      public double yCloak
    • zCloak

      public double zCloak
    • sleepCounter

      private int sleepCounter
    • wasUnderwater

      protected boolean wasUnderwater
    • abilities

      public final PlayerAbilities abilities
    • experienceLevel

      public int experienceLevel
    • totalExperience

      public int totalExperience
    • experienceProgress

      public float experienceProgress
    • enchantmentSeed

      protected int enchantmentSeed
    • defaultFlySpeed

      protected final float defaultFlySpeed
      See Also:
    • lastLevelUpTime

      private int lastLevelUpTime
    • gameProfile

      private final com.mojang.authlib.GameProfile gameProfile
    • reducedDebugInfo

      private boolean reducedDebugInfo
    • lastItemInMainHand

      private ItemStack lastItemInMainHand
    • cooldowns

      private final CooldownTracker cooldowns
    • fishing

      @Nullable public FishingBobberEntity fishing
    • prefixes

      private final Collection<IFormattableTextComponent> prefixes
    • suffixes

      private final Collection<IFormattableTextComponent> suffixes
    • forcedPose

      @Nullable private Pose forcedPose
    • displayname

      private ITextComponent displayname
    • playerMainHandler

      private final LazyOptional<IItemHandler> playerMainHandler
    • playerEquipmentHandler

      private final LazyOptional<IItemHandler> playerEquipmentHandler
    • playerJoinedHandler

      private final LazyOptional<IItemHandler> playerJoinedHandler
  • Constructor Details

    • PlayerEntity

      public PlayerEntity(World p_i241920_1_, BlockPos p_i241920_2_, float p_i241920_3_, com.mojang.authlib.GameProfile p_i241920_4_)
  • Method Details

    • blockActionRestricted

      public boolean blockActionRestricted(World p_223729_1_, BlockPos p_223729_2_, GameType p_223729_3_)
    • createAttributes

      public static AttributeModifierMap.MutableAttribute createAttributes()
    • defineSynchedData

      protected void defineSynchedData()
      Overrides:
      defineSynchedData in class LivingEntity
    • tick

      public void tick()
      Overrides:
      tick in class LivingEntity
    • isSecondaryUseActive

      public boolean isSecondaryUseActive()
    • wantsToStopRiding

      protected boolean wantsToStopRiding()
    • isStayingOnGroundSurface

      protected boolean isStayingOnGroundSurface()
    • updateIsUnderwater

      protected boolean updateIsUnderwater()
    • turtleHelmetTick

      private void turtleHelmetTick()
    • createItemCooldowns

      protected CooldownTracker createItemCooldowns()
    • moveCloak

      private void moveCloak()
    • updatePlayerPose

      protected void updatePlayerPose()
    • getPortalWaitTime

      public int getPortalWaitTime()
      Overrides:
      getPortalWaitTime in class Entity
    • getSwimSound

      protected SoundEvent getSwimSound()
      Overrides:
      getSwimSound in class Entity
    • getSwimSplashSound

      protected SoundEvent getSwimSplashSound()
      Overrides:
      getSwimSplashSound in class Entity
    • getSwimHighSpeedSplashSound

      protected SoundEvent getSwimHighSpeedSplashSound()
      Overrides:
      getSwimHighSpeedSplashSound in class Entity
    • getDimensionChangingDelay

      public int getDimensionChangingDelay()
      Overrides:
      getDimensionChangingDelay in class Entity
    • playSound

      public void playSound(SoundEvent p_184185_1_, float p_184185_2_, float p_184185_3_)
      Overrides:
      playSound in class Entity
    • playNotifySound

      public void playNotifySound(SoundEvent p_213823_1_, SoundCategory p_213823_2_, float p_213823_3_, float p_213823_4_)
    • getSoundSource

      public SoundCategory getSoundSource()
      Overrides:
      getSoundSource in class Entity
    • getFireImmuneTicks

      protected int getFireImmuneTicks()
      Overrides:
      getFireImmuneTicks in class Entity
    • handleEntityEvent

      public void handleEntityEvent(byte p_70103_1_)
      Overrides:
      handleEntityEvent in class LivingEntity
    • addParticlesAroundSelf

      private void addParticlesAroundSelf(IParticleData p_213824_1_)
    • closeContainer

      public void closeContainer()
    • rideTick

      public void rideTick()
      Overrides:
      rideTick in class LivingEntity
    • resetPos

      public void resetPos()
      Overrides:
      resetPos in class Entity
    • serverAiStep

      protected void serverAiStep()
      Overrides:
      serverAiStep in class LivingEntity
    • aiStep

      public void aiStep()
      Overrides:
      aiStep in class LivingEntity
    • playShoulderEntityAmbientSound

      private void playShoulderEntityAmbientSound(@Nullable CompoundNBT p_192028_1_)
    • touch

      private void touch(Entity p_71044_1_)
    • getScore

      public int getScore()
    • setScore

      public void setScore(int p_85040_1_)
    • increaseScore

      public void increaseScore(int p_85039_1_)
    • die

      public void die(DamageSource p_70645_1_)
      Overrides:
      die in class LivingEntity
    • dropEquipment

      protected void dropEquipment()
      Overrides:
      dropEquipment in class LivingEntity
    • destroyVanishingCursedItems

      protected void destroyVanishingCursedItems()
    • getHurtSound

      protected SoundEvent getHurtSound(DamageSource p_184601_1_)
      Overrides:
      getHurtSound in class LivingEntity
    • getDeathSound

      protected SoundEvent getDeathSound()
      Overrides:
      getDeathSound in class LivingEntity
    • drop

      public boolean drop(boolean p_225609_1_)
    • drop

      @Nullable public ItemEntity drop(ItemStack p_71019_1_, boolean p_71019_2_)
    • drop

      @Nullable public ItemEntity drop(ItemStack p_146097_1_, boolean p_146097_2_, boolean p_146097_3_)
    • getDestroySpeed

      @Deprecated public float getDestroySpeed(BlockState p_184813_1_)
      Deprecated.
    • getDigSpeed

      public float getDigSpeed(BlockState p_184813_1_, @Nullable BlockPos pos)
    • hasCorrectToolForDrops

      public boolean hasCorrectToolForDrops(BlockState p_234569_1_)
    • readAdditionalSaveData

      public void readAdditionalSaveData(CompoundNBT p_70037_1_)
      Overrides:
      readAdditionalSaveData in class LivingEntity
    • addAdditionalSaveData

      public void addAdditionalSaveData(CompoundNBT p_213281_1_)
      Overrides:
      addAdditionalSaveData in class LivingEntity
    • isInvulnerableTo

      public boolean isInvulnerableTo(DamageSource p_180431_1_)
      Overrides:
      isInvulnerableTo in class Entity
    • hurt

      public boolean hurt(DamageSource p_70097_1_, float p_70097_2_)
      Overrides:
      hurt in class LivingEntity
    • blockUsingShield

      protected void blockUsingShield(LivingEntity p_190629_1_)
      Overrides:
      blockUsingShield in class LivingEntity
    • canHarmPlayer

      public boolean canHarmPlayer(PlayerEntity p_96122_1_)
    • hurtArmor

      protected void hurtArmor(DamageSource p_230294_1_, float p_230294_2_)
      Overrides:
      hurtArmor in class LivingEntity
    • hurtCurrentlyUsedShield

      protected void hurtCurrentlyUsedShield(float p_184590_1_)
      Overrides:
      hurtCurrentlyUsedShield in class LivingEntity
    • actuallyHurt

      protected void actuallyHurt(DamageSource p_70665_1_, float p_70665_2_)
      Overrides:
      actuallyHurt in class LivingEntity
    • onSoulSpeedBlock

      protected boolean onSoulSpeedBlock()
      Overrides:
      onSoulSpeedBlock in class LivingEntity
    • openTextEdit

      public void openTextEdit(SignTileEntity p_175141_1_)
    • openMinecartCommandBlock

      public void openMinecartCommandBlock(CommandBlockLogic p_184809_1_)
    • openCommandBlock

      public void openCommandBlock(CommandBlockTileEntity p_184824_1_)
    • openStructureBlock

      public void openStructureBlock(StructureBlockTileEntity p_189807_1_)
    • openJigsawBlock

      public void openJigsawBlock(JigsawTileEntity p_213826_1_)
    • openHorseInventory

      public void openHorseInventory(AbstractHorseEntity p_184826_1_, IInventory p_184826_2_)
    • openMenu

      public OptionalInt openMenu(@Nullable INamedContainerProvider p_213829_1_)
    • sendMerchantOffers

      public void sendMerchantOffers(int p_213818_1_, MerchantOffers p_213818_2_, int p_213818_3_, int p_213818_4_, boolean p_213818_5_, boolean p_213818_6_)
    • openItemGui

      public void openItemGui(ItemStack p_184814_1_, Hand p_184814_2_)
    • interactOn

      public ActionResultType interactOn(Entity p_190775_1_, Hand p_190775_2_)
    • getMyRidingOffset

      public double getMyRidingOffset()
      Overrides:
      getMyRidingOffset in class Entity
    • removeVehicle

      public void removeVehicle()
      Overrides:
      removeVehicle in class Entity
    • isImmobile

      protected boolean isImmobile()
      Overrides:
      isImmobile in class LivingEntity
    • isAffectedByFluids

      public boolean isAffectedByFluids()
      Overrides:
      isAffectedByFluids in class LivingEntity
    • maybeBackOffFromEdge

      protected Vector3d maybeBackOffFromEdge(Vector3d p_225514_1_, MoverType p_225514_2_)
      Overrides:
      maybeBackOffFromEdge in class Entity
    • isAboveGround

      private boolean isAboveGround()
    • attack

      public void attack(Entity p_71059_1_)
    • doAutoAttackOnTouch

      protected void doAutoAttackOnTouch(LivingEntity p_204804_1_)
      Overrides:
      doAutoAttackOnTouch in class LivingEntity
    • disableShield

      public void disableShield(boolean p_190777_1_)
    • crit

      public void crit(Entity p_71009_1_)
    • magicCrit

      public void magicCrit(Entity p_71047_1_)
    • sweepAttack

      public void sweepAttack()
    • respawn

      public void respawn()
    • remove

      public void remove(boolean keepData)
      Overrides:
      remove in class Entity
    • isLocalPlayer

      public boolean isLocalPlayer()
    • getGameProfile

      public com.mojang.authlib.GameProfile getGameProfile()
    • startSleepInBed

      public com.mojang.datafixers.util.Either<PlayerEntity.SleepResult,Unit> startSleepInBed(BlockPos p_213819_1_)
    • stopSleepInBed

      public void stopSleepInBed(boolean p_225652_1_, boolean p_225652_2_)
    • stopSleeping

      public void stopSleeping()
      Overrides:
      stopSleeping in class LivingEntity
    • findRespawnPositionAndUseSpawnBlock

      public static Optional<Vector3d> findRespawnPositionAndUseSpawnBlock(ServerWorld p_242374_0_, BlockPos p_242374_1_, float p_242374_2_, boolean p_242374_3_, boolean p_242374_4_)
    • isSleepingLongEnough

      public boolean isSleepingLongEnough()
    • getSleepTimer

      public int getSleepTimer()
    • displayClientMessage

      public void displayClientMessage(ITextComponent p_146105_1_, boolean p_146105_2_)
    • awardStat

      public void awardStat(ResourceLocation p_195066_1_)
    • awardStat

      public void awardStat(ResourceLocation p_195067_1_, int p_195067_2_)
    • awardStat

      public void awardStat(Stat<?> p_71029_1_)
    • awardStat

      public void awardStat(Stat<?> p_71064_1_, int p_71064_2_)
    • resetStat

      public void resetStat(Stat<?> p_175145_1_)
    • awardRecipes

      public int awardRecipes(Collection<IRecipe<?>> p_195065_1_)
    • awardRecipesByKey

      public void awardRecipesByKey(ResourceLocation[] p_193102_1_)
    • resetRecipes

      public int resetRecipes(Collection<IRecipe<?>> p_195069_1_)
    • jumpFromGround

      public void jumpFromGround()
      Overrides:
      jumpFromGround in class LivingEntity
    • travel

      public void travel(Vector3d p_213352_1_)
      Overrides:
      travel in class LivingEntity
    • updateSwimming

      public void updateSwimming()
      Overrides:
      updateSwimming in class Entity
    • freeAt

      protected boolean freeAt(BlockPos p_207401_1_)
    • getSpeed

      public float getSpeed()
      Overrides:
      getSpeed in class LivingEntity
    • checkMovementStatistics

      public void checkMovementStatistics(double p_71000_1_, double p_71000_3_, double p_71000_5_)
    • checkRidingStatistics

      private void checkRidingStatistics(double p_71015_1_, double p_71015_3_, double p_71015_5_)
    • causeFallDamage

      public boolean causeFallDamage(float p_225503_1_, float p_225503_2_)
      Overrides:
      causeFallDamage in class LivingEntity
    • tryToStartFallFlying

      public boolean tryToStartFallFlying()
    • startFallFlying

      public void startFallFlying()
    • stopFallFlying

      public void stopFallFlying()
    • doWaterSplashEffect

      protected void doWaterSplashEffect()
      Overrides:
      doWaterSplashEffect in class Entity
    • getFallDamageSound

      protected SoundEvent getFallDamageSound(int p_184588_1_)
      Overrides:
      getFallDamageSound in class LivingEntity
    • killed

      public void killed(ServerWorld p_241847_1_, LivingEntity p_241847_2_)
      Overrides:
      killed in class Entity
    • makeStuckInBlock

      public void makeStuckInBlock(BlockState p_213295_1_, Vector3d p_213295_2_)
      Overrides:
      makeStuckInBlock in class Entity
    • giveExperiencePoints

      public void giveExperiencePoints(int p_195068_1_)
    • getEnchantmentSeed

      public int getEnchantmentSeed()
    • onEnchantmentPerformed

      public void onEnchantmentPerformed(ItemStack p_192024_1_, int p_192024_2_)
    • giveExperienceLevels

      public void giveExperienceLevels(int p_82242_1_)
    • getXpNeededForNextLevel

      public int getXpNeededForNextLevel()
    • causeFoodExhaustion

      public void causeFoodExhaustion(float p_71020_1_)
    • getFoodData

      public FoodStats getFoodData()
    • canEat

      public boolean canEat(boolean p_71043_1_)
    • isHurt

      public boolean isHurt()
    • mayBuild

      public boolean mayBuild()
    • mayUseItemAt

      public boolean mayUseItemAt(BlockPos p_175151_1_, Direction p_175151_2_, ItemStack p_175151_3_)
    • getExperienceReward

      protected int getExperienceReward(PlayerEntity p_70693_1_)
      Overrides:
      getExperienceReward in class LivingEntity
    • isAlwaysExperienceDropper

      protected boolean isAlwaysExperienceDropper()
      Overrides:
      isAlwaysExperienceDropper in class LivingEntity
    • shouldShowName

      public boolean shouldShowName()
      Overrides:
      shouldShowName in class LivingEntity
    • isMovementNoisy

      protected boolean isMovementNoisy()
      Overrides:
      isMovementNoisy in class Entity
    • onUpdateAbilities

      public void onUpdateAbilities()
    • setGameMode

      public void setGameMode(GameType p_71033_1_)
    • getName

      public ITextComponent getName()
      Specified by:
      getName in interface INameable
      Overrides:
      getName in class Entity
    • getEnderChestInventory

      public EnderChestInventory getEnderChestInventory()
    • getItemBySlot

      public ItemStack getItemBySlot(EquipmentSlotType p_184582_1_)
      Specified by:
      getItemBySlot in class LivingEntity
    • setItemSlot

      public void setItemSlot(EquipmentSlotType p_184201_1_, ItemStack p_184201_2_)
      Specified by:
      setItemSlot in class LivingEntity
    • addItem

      public boolean addItem(ItemStack p_191521_1_)
    • getHandSlots

      public Iterable<ItemStack> getHandSlots()
      Overrides:
      getHandSlots in class Entity
    • getArmorSlots

      public Iterable<ItemStack> getArmorSlots()
      Specified by:
      getArmorSlots in class LivingEntity
    • setEntityOnShoulder

      public boolean setEntityOnShoulder(CompoundNBT p_192027_1_)
    • removeEntitiesOnShoulder

      protected void removeEntitiesOnShoulder()
    • respawnEntityOnShoulder

      private void respawnEntityOnShoulder(CompoundNBT p_192026_1_)
    • isSpectator

      public abstract boolean isSpectator()
      Overrides:
      isSpectator in class Entity
    • isSwimming

      public boolean isSwimming()
      Overrides:
      isSwimming in class Entity
    • isCreative

      public abstract boolean isCreative()
    • isPushedByFluid

      public boolean isPushedByFluid()
      Overrides:
      isPushedByFluid in class Entity
    • getScoreboard

      public Scoreboard getScoreboard()
    • getDisplayName

      public ITextComponent getDisplayName()
      Specified by:
      getDisplayName in interface INameable
      Overrides:
      getDisplayName in class Entity
    • decorateDisplayNameComponent

      private IFormattableTextComponent decorateDisplayNameComponent(IFormattableTextComponent p_208016_1_)
    • getScoreboardName

      public String getScoreboardName()
      Overrides:
      getScoreboardName in class Entity
    • getStandingEyeHeight

      public float getStandingEyeHeight(Pose p_213348_1_, EntitySize p_213348_2_)
      Overrides:
      getStandingEyeHeight in class LivingEntity
    • setAbsorptionAmount

      public void setAbsorptionAmount(float p_110149_1_)
      Overrides:
      setAbsorptionAmount in class LivingEntity
    • getAbsorptionAmount

      public float getAbsorptionAmount()
      Overrides:
      getAbsorptionAmount in class LivingEntity
    • createPlayerUUID

      public static UUID createPlayerUUID(com.mojang.authlib.GameProfile p_146094_0_)
    • createPlayerUUID

      public static UUID createPlayerUUID(String p_175147_0_)
    • isModelPartShown

      public boolean isModelPartShown(PlayerModelPart p_175148_1_)
    • setSlot

      public boolean setSlot(int p_174820_1_, ItemStack p_174820_2_)
      Overrides:
      setSlot in class Entity
    • isReducedDebugInfo

      public boolean isReducedDebugInfo()
    • setReducedDebugInfo

      public void setReducedDebugInfo(boolean p_175150_1_)
    • setRemainingFireTicks

      public void setRemainingFireTicks(int p_241209_1_)
      Overrides:
      setRemainingFireTicks in class Entity
    • getMainArm

      public HandSide getMainArm()
      Specified by:
      getMainArm in class LivingEntity
    • setMainArm

      public void setMainArm(HandSide p_184819_1_)
    • getShoulderEntityLeft

      public CompoundNBT getShoulderEntityLeft()
    • setShoulderEntityLeft

      protected void setShoulderEntityLeft(CompoundNBT p_192029_1_)
    • getShoulderEntityRight

      public CompoundNBT getShoulderEntityRight()
    • setShoulderEntityRight

      protected void setShoulderEntityRight(CompoundNBT p_192031_1_)
    • getCurrentItemAttackStrengthDelay

      public float getCurrentItemAttackStrengthDelay()
    • getAttackStrengthScale

      public float getAttackStrengthScale(float p_184825_1_)
    • resetAttackStrengthTicker

      public void resetAttackStrengthTicker()
    • getCooldowns

      public CooldownTracker getCooldowns()
    • getBlockSpeedFactor

      protected float getBlockSpeedFactor()
      Overrides:
      getBlockSpeedFactor in class LivingEntity
    • getLuck

      public float getLuck()
    • canUseGameMasterBlocks

      public boolean canUseGameMasterBlocks()
    • canTakeItem

      public boolean canTakeItem(ItemStack p_213365_1_)
      Overrides:
      canTakeItem in class LivingEntity
    • getDimensions

      public EntitySize getDimensions(Pose p_213305_1_)
      Overrides:
      getDimensions in class LivingEntity
    • getDismountPoses

      public com.google.common.collect.ImmutableList<Pose> getDismountPoses()
      Overrides:
      getDismountPoses in class LivingEntity
    • getProjectile

      public ItemStack getProjectile(ItemStack p_213356_1_)
      Overrides:
      getProjectile in class LivingEntity
    • eat

      public ItemStack eat(World p_213357_1_, ItemStack p_213357_2_)
      Overrides:
      eat in class LivingEntity
    • shouldRemoveSoulSpeed

      protected boolean shouldRemoveSoulSpeed(BlockState p_230295_1_)
      Overrides:
      shouldRemoveSoulSpeed in class LivingEntity
    • getRopeHoldPosition

      public Vector3d getRopeHoldPosition(float p_241843_1_)
      Overrides:
      getRopeHoldPosition in class Entity
    • getPrefixes

      public Collection<IFormattableTextComponent> getPrefixes()
    • getSuffixes

      public Collection<IFormattableTextComponent> getSuffixes()
    • refreshDisplayName

      public void refreshDisplayName()
      Force the displayed name to refresh, by firing PlayerEvent.NameFormat, using the real player name as event parameter.
    • getCapability

      public <T> LazyOptional<T> getCapability(Capability<T> capability, @Nullable Direction facing)
      Description copied from interface: ICapabilityProvider
      Retrieves the Optional handler for the capability requested on the specific side. The return value CAN be the same for multiple faces. Modders are encouraged to cache this value, using the listener capabilities of the Optional to be notified if the requested capability get lost.
      Specified by:
      getCapability in interface ICapabilityProvider
      Overrides:
      getCapability in class LivingEntity
      Returns:
      The requested an optional holding the requested capability.
    • setForcedPose

      public void setForcedPose(@Nullable Pose pose)
      Force a pose for the player. If set, the vanilla pose determination and clearance check is skipped. Make sure the pose is clear yourself (e.g. in PlayerTick). This has to be set just once, do not set it every tick. Make sure to clear (null) the pose if not required anymore and only use if necessary.
    • getForcedPose

      @Nullable public Pose getForcedPose()
      Returns:
      The forced pose if set, null otherwise