Class ExperienceOrbEntity

java.lang.Object
net.minecraft.entity.Entity
net.minecraft.entity.ExperienceOrbEntity
All Implemented Interfaces:
ComponentsAccess, DataTracked, ScoreHolder, Nameable, EntityLike, UniquelyIdentifiable

public class ExperienceOrbEntity extends Entity
Mappings:
Namespace Name
named net/minecraft/entity/ExperienceOrbEntity
intermediary net/minecraft/class_1303
official caa
  • Field Details

    • VALUE

      protected static final TrackedData<Integer> VALUE
      Mappings:
      Namespace Name Mixin selector
      named VALUE Lnet/minecraft/entity/ExperienceOrbEntity;VALUE:Lnet/minecraft/entity/data/TrackedData;
      intermediary field_55950 Lnet/minecraft/class_1303;field_55950:Lnet/minecraft/class_2940;
      official a Lcaa;a:Lalh;
    • DESPAWN_AGE

      private static final int DESPAWN_AGE
      See Also:
      Mappings:
      Namespace Name Mixin selector
      named DESPAWN_AGE Lnet/minecraft/entity/ExperienceOrbEntity;DESPAWN_AGE:I
      intermediary field_30055 Lnet/minecraft/class_1303;field_30055:I
      official b Lcaa;b:I
    • EXPENSIVE_UPDATE_INTERVAL

      private static final int EXPENSIVE_UPDATE_INTERVAL
      See Also:
      Mappings:
      Namespace Name Mixin selector
      named EXPENSIVE_UPDATE_INTERVAL Lnet/minecraft/entity/ExperienceOrbEntity;EXPENSIVE_UPDATE_INTERVAL:I
      intermediary field_30056 Lnet/minecraft/class_1303;field_30056:I
      official c Lcaa;c:I
    • field_30057

      private static final int field_30057
      See Also:
      Mappings:
      Namespace Name Mixin selector
      named field_30057 Lnet/minecraft/entity/ExperienceOrbEntity;field_30057:I
      intermediary field_30057 Lnet/minecraft/class_1303;field_30057:I
      official d Lcaa;d:I
    • MERGING_CHANCE_FRACTION

      private static final int MERGING_CHANCE_FRACTION
      See Also:
      Mappings:
      Namespace Name Mixin selector
      named MERGING_CHANCE_FRACTION Lnet/minecraft/entity/ExperienceOrbEntity;MERGING_CHANCE_FRACTION:I
      intermediary field_30058 Lnet/minecraft/class_1303;field_30058:I
      official e Lcaa;e:I
    • field_30059

      private static final double field_30059
      See Also:
      Mappings:
      Namespace Name Mixin selector
      named field_30059 Lnet/minecraft/entity/ExperienceOrbEntity;field_30059:D
      intermediary field_30059 Lnet/minecraft/class_1303;field_30059:D
      official f Lcaa;f:D
    • DEFAULT_HEALTH

      private static final short DEFAULT_HEALTH
      See Also:
      Mappings:
      Namespace Name Mixin selector
      named DEFAULT_HEALTH Lnet/minecraft/entity/ExperienceOrbEntity;DEFAULT_HEALTH:S
      intermediary field_57583 Lnet/minecraft/class_1303;field_57583:S
      official g Lcaa;g:S
    • DEFAULT_AGE

      private static final short DEFAULT_AGE
      See Also:
      Mappings:
      Namespace Name Mixin selector
      named DEFAULT_AGE Lnet/minecraft/entity/ExperienceOrbEntity;DEFAULT_AGE:S
      intermediary field_57584 Lnet/minecraft/class_1303;field_57584:S
      official h Lcaa;h:S
    • DEFAULT_VALUE

      private static final short DEFAULT_VALUE
      See Also:
      Mappings:
      Namespace Name Mixin selector
      named DEFAULT_VALUE Lnet/minecraft/entity/ExperienceOrbEntity;DEFAULT_VALUE:S
      intermediary field_57585 Lnet/minecraft/class_1303;field_57585:S
      official i Lcaa;i:S
    • DEFAULT_COUNT

      private static final int DEFAULT_COUNT
      See Also:
      Mappings:
      Namespace Name Mixin selector
      named DEFAULT_COUNT Lnet/minecraft/entity/ExperienceOrbEntity;DEFAULT_COUNT:I
      intermediary field_57586 Lnet/minecraft/class_1303;field_57586:I
      official j Lcaa;j:I
    • orbAge

      private int orbAge
      Mappings:
      Namespace Name Mixin selector
      named orbAge Lnet/minecraft/entity/ExperienceOrbEntity;orbAge:I
      intermediary field_6164 Lnet/minecraft/class_1303;field_6164:I
      official k Lcaa;k:I
    • health

      private int health
      Mappings:
      Namespace Name Mixin selector
      named health Lnet/minecraft/entity/ExperienceOrbEntity;health:I
      intermediary field_6161 Lnet/minecraft/class_1303;field_6161:I
      official l Lcaa;l:I
    • pickingCount

      private int pickingCount
      Mappings:
      Namespace Name Mixin selector
      named pickingCount Lnet/minecraft/entity/ExperienceOrbEntity;pickingCount:I
      intermediary field_27009 Lnet/minecraft/class_1303;field_27009:I
      official m Lcaa;m:I
    • target

      Mappings:
      Namespace Name Mixin selector
      named target Lnet/minecraft/entity/ExperienceOrbEntity;target:Lnet/minecraft/entity/player/PlayerEntity;
      intermediary field_6162 Lnet/minecraft/class_1303;field_6162:Lnet/minecraft/class_1657;
      official n Lcaa;n:Lcut;
    • interpolator

      private final PositionInterpolator interpolator
      Mappings:
      Namespace Name Mixin selector
      named interpolator Lnet/minecraft/entity/ExperienceOrbEntity;interpolator:Lnet/minecraft/entity/PositionInterpolator;
      intermediary field_55662 Lnet/minecraft/class_1303;field_55662:Lnet/minecraft/class_10584;
      official o Lcaa;o:Lcah;
  • Constructor Details

    • ExperienceOrbEntity

      public ExperienceOrbEntity(World world, double x, double y, double z, int amount)
      Mappings:
      Namespace Name Mixin selector
      named <init> Lnet/minecraft/entity/ExperienceOrbEntity;<init>(Lnet/minecraft/world/World;DDDI)V
      intermediary <init> Lnet/minecraft/class_1303;<init>(Lnet/minecraft/class_1937;DDDI)V
      official <init> Lcaa;<init>(Ldmu;DDDI)V
    • ExperienceOrbEntity

      public ExperienceOrbEntity(World world, Vec3d pos, Vec3d velocity, int amount)
      Mappings:
      Namespace Name Mixin selector
      named <init> Lnet/minecraft/entity/ExperienceOrbEntity;<init>(Lnet/minecraft/world/World;Lnet/minecraft/util/math/Vec3d;Lnet/minecraft/util/math/Vec3d;I)V
      intermediary <init> Lnet/minecraft/class_1303;<init>(Lnet/minecraft/class_1937;Lnet/minecraft/class_243;Lnet/minecraft/class_243;I)V
      official <init> Lcaa;<init>(Ldmu;Lfis;Lfis;I)V
    • ExperienceOrbEntity

      public ExperienceOrbEntity(EntityType<? extends ExperienceOrbEntity> type, World world)
      Mappings:
      Namespace Name Mixin selector
      named <init> Lnet/minecraft/entity/Entity;<init>(Lnet/minecraft/entity/EntityType;Lnet/minecraft/world/World;)V
      intermediary <init> Lnet/minecraft/class_1297;<init>(Lnet/minecraft/class_1299;Lnet/minecraft/class_1937;)V
      official <init> Lbzm;<init>(Lbzv;Ldmu;)V
  • Method Details

    • tryMoveToOpenSpace

      protected void tryMoveToOpenSpace(double boundingBoxLength)
      Mappings:
      Namespace Name Mixin selector
      named tryMoveToOpenSpace Lnet/minecraft/entity/ExperienceOrbEntity;tryMoveToOpenSpace(D)V
      intermediary method_71968 Lnet/minecraft/class_1303;method_71968(D)V
      official h Lcaa;h(D)V
    • getMoveEffect

      protected Entity.MoveEffect getMoveEffect()
      Returns the possible effect(s) of an entity moving.
      Overrides:
      getMoveEffect in class Entity
      Implementation Note:
      If an entity does not emit game events or play move sounds, this method should be overridden as returning a value other than ALL allows skipping some movement logic and boost ticking performance.
      Mappings:
      Namespace Name Mixin selector
      named getMoveEffect Lnet/minecraft/entity/Entity;getMoveEffect()Lnet/minecraft/entity/Entity$MoveEffect;
      intermediary method_33570 Lnet/minecraft/class_1297;method_33570()Lnet/minecraft/class_1297$class_5799;
      official bj Lbzm;bj()Lbzm$d;
    • initDataTracker

      protected void initDataTracker(DataTracker.Builder builder)
      Initializes data tracker.
      Specified by:
      initDataTracker in class Entity
      API Note:
      Subclasses should override this and add to the builder any data that needs to be tracked.
      Mappings:
      Namespace Name Mixin selector
      named initDataTracker Lnet/minecraft/entity/Entity;initDataTracker(Lnet/minecraft/entity/data/DataTracker$Builder;)V
      intermediary method_5693 Lnet/minecraft/class_1297;method_5693(Lnet/minecraft/class_2945$class_9222;)V
      official a Lbzm;a(Lall$a;)V
    • getGravity

      protected double getGravity()
      Overrides:
      getGravity in class Entity
      Mappings:
      Namespace Name Mixin selector
      named getGravity Lnet/minecraft/entity/Entity;getGravity()D
      intermediary method_7490 Lnet/minecraft/class_1297;method_7490()D
      official bg Lbzm;bg()D
    • tick

      public void tick()
      Ticks this entity.
      Overrides:
      tick in class Entity
      See Also:
      API Note:
      This can be overridden to add additional logics. super.tick(); should be called in those cases.
      Implementation Note:
      By default, this delegates all logics to Entity.baseTick().
      Mappings:
      Namespace Name Mixin selector
      named tick Lnet/minecraft/entity/Entity;tick()V
      intermediary method_5773 Lnet/minecraft/class_1297;method_5773()V
      official g Lbzm;g()V
    • moveTowardsPlayer

      private void moveTowardsPlayer()
      Mappings:
      Namespace Name Mixin selector
      named moveTowardsPlayer Lnet/minecraft/entity/ExperienceOrbEntity;moveTowardsPlayer()V
      intermediary method_66264 Lnet/minecraft/class_1303;method_66264()V
      official i Lcaa;i()V
    • getVelocityAffectingPos

      public BlockPos getVelocityAffectingPos()
      Overrides:
      getVelocityAffectingPos in class Entity
      Mappings:
      Namespace Name Mixin selector
      named getVelocityAffectingPos Lnet/minecraft/entity/Entity;getVelocityAffectingPos()Lnet/minecraft/util/math/BlockPos;
      intermediary method_23314 Lnet/minecraft/class_1297;method_23314()Lnet/minecraft/class_2338;
      official aT Lbzm;aT()Ljb;
    • expensiveUpdate

      private void expensiveUpdate()
      Performs an expensive update.
      Implementation Requirements:
      Called every second (every EXPENSIVE_UPDATE_INTERVAL ticks). This method first checks if the orb still has a nearby target, and assigns a new target if there is none. It then tries to merge nearby experience orbs.
      Mappings:
      Namespace Name Mixin selector
      named expensiveUpdate Lnet/minecraft/entity/ExperienceOrbEntity;expensiveUpdate()V
      intermediary method_31498 Lnet/minecraft/class_1303;method_31498()V
      official l Lcaa;l()V
    • spawn

      public static void spawn(ServerWorld world, Vec3d pos, int amount)
      Mappings:
      Namespace Name Mixin selector
      named spawn Lnet/minecraft/entity/ExperienceOrbEntity;spawn(Lnet/minecraft/server/world/ServerWorld;Lnet/minecraft/util/math/Vec3d;I)V
      intermediary method_31493 Lnet/minecraft/class_1303;method_31493(Lnet/minecraft/class_3218;Lnet/minecraft/class_243;I)V
      official a Lcaa;a(Laub;Lfis;I)V
    • spawn

      public static void spawn(ServerWorld world, Vec3d pos, Vec3d velocity, int amount)
      Mappings:
      Namespace Name Mixin selector
      named spawn Lnet/minecraft/entity/ExperienceOrbEntity;spawn(Lnet/minecraft/server/world/ServerWorld;Lnet/minecraft/util/math/Vec3d;Lnet/minecraft/util/math/Vec3d;I)V
      intermediary method_71373 Lnet/minecraft/class_1303;method_71373(Lnet/minecraft/class_3218;Lnet/minecraft/class_243;Lnet/minecraft/class_243;I)V
      official a Lcaa;a(Laub;Lfis;Lfis;I)V
    • wasMergedIntoExistingOrb

      private static boolean wasMergedIntoExistingOrb(ServerWorld world, Vec3d pos, int amount)
      Mappings:
      Namespace Name Mixin selector
      named wasMergedIntoExistingOrb Lnet/minecraft/entity/ExperienceOrbEntity;wasMergedIntoExistingOrb(Lnet/minecraft/server/world/ServerWorld;Lnet/minecraft/util/math/Vec3d;I)Z
      intermediary method_31496 Lnet/minecraft/class_1303;method_31496(Lnet/minecraft/class_3218;Lnet/minecraft/class_243;I)Z
      official b Lcaa;b(Laub;Lfis;I)Z
    • isMergeable

      private boolean isMergeable(ExperienceOrbEntity other)
      Mappings:
      Namespace Name Mixin selector
      named isMergeable Lnet/minecraft/entity/ExperienceOrbEntity;isMergeable(Lnet/minecraft/entity/ExperienceOrbEntity;)Z
      intermediary method_31494 Lnet/minecraft/class_1303;method_31494(Lnet/minecraft/class_1303;)Z
      official a Lcaa;a(Lcaa;)Z
    • isMergeable

      private static boolean isMergeable(ExperienceOrbEntity orb, int seed, int amount)
      Mappings:
      Namespace Name Mixin selector
      named isMergeable Lnet/minecraft/entity/ExperienceOrbEntity;isMergeable(Lnet/minecraft/entity/ExperienceOrbEntity;II)Z
      intermediary method_31495 Lnet/minecraft/class_1303;method_31495(Lnet/minecraft/class_1303;II)Z
      official a Lcaa;a(Lcaa;II)Z
    • merge

      private void merge(ExperienceOrbEntity other)
      Mappings:
      Namespace Name Mixin selector
      named merge Lnet/minecraft/entity/ExperienceOrbEntity;merge(Lnet/minecraft/entity/ExperienceOrbEntity;)V
      intermediary method_31497 Lnet/minecraft/class_1303;method_31497(Lnet/minecraft/class_1303;)V
      official b Lcaa;b(Lcaa;)V
    • applyWaterMovement

      private void applyWaterMovement()
      Mappings:
      Namespace Name Mixin selector
      named applyWaterMovement Lnet/minecraft/entity/ExperienceOrbEntity;applyWaterMovement()V
      intermediary method_5921 Lnet/minecraft/class_1303;method_5921()V
      official m Lcaa;m()V
    • onSwimmingStart

      protected void onSwimmingStart()
      Overrides:
      onSwimmingStart in class Entity
      Mappings:
      Namespace Name Mixin selector
      named onSwimmingStart Lnet/minecraft/entity/Entity;onSwimmingStart()V
      intermediary method_5746 Lnet/minecraft/class_1297;method_5746()V
      official bv Lbzm;bv()V
    • clientDamage

      public final boolean clientDamage(DamageSource source)
      Overrides:
      clientDamage in class Entity
      Mappings:
      Namespace Name Mixin selector
      named clientDamage Lnet/minecraft/entity/Entity;clientDamage(Lnet/minecraft/entity/damage/DamageSource;)Z
      intermediary method_5643 Lnet/minecraft/class_1297;method_5643(Lnet/minecraft/class_1282;)Z
      official b Lbzm;b(Lbyb;)Z
    • damage

      public final boolean damage(ServerWorld world, DamageSource source, float amount)
      Applies a damage to this entity. The exact implementation differs between subclasses.

      LivingEntity has health value, and damaging the entity decreases it. This also handles shields, extra damage to helmets for falling blocks, setting the attacker, playing hurt sound, etc.

      Some entities like ItemEntity also have health value, which the overridden method decrements. There also exist several entities, like EndCrystalEntity, where any damage discards the entity (perhaps with an explosion).

      If this is overridden, it must check the result of LivingEntity.isInvulnerableTo(net.minecraft.server.world.ServerWorld, net.minecraft.entity.damage.DamageSource) and return early.

      Specified by:
      damage in class Entity
      Returns:
      whether the entity was actually damaged
      See Also:
      Mappings:
      Namespace Name Mixin selector
      named damage Lnet/minecraft/entity/Entity;damage(Lnet/minecraft/server/world/ServerWorld;Lnet/minecraft/entity/damage/DamageSource;F)Z
      intermediary method_64397 Lnet/minecraft/class_1297;method_64397(Lnet/minecraft/class_3218;Lnet/minecraft/class_1282;F)Z
      official a Lbzm;a(Laub;Lbyb;F)Z
    • writeCustomData

      protected void writeCustomData(WriteView view)
      Specified by:
      writeCustomData in class Entity
      Mappings:
      Namespace Name Mixin selector
      named writeCustomData Lnet/minecraft/entity/Entity;writeCustomData(Lnet/minecraft/storage/WriteView;)V
      intermediary method_5652 Lnet/minecraft/class_1297;method_5652(Lnet/minecraft/class_11372;)V
      official a Lbzm;a(Lfdc;)V
    • readCustomData

      protected void readCustomData(ReadView view)
      Specified by:
      readCustomData in class Entity
      Mappings:
      Namespace Name Mixin selector
      named readCustomData Lnet/minecraft/entity/Entity;readCustomData(Lnet/minecraft/storage/ReadView;)V
      intermediary method_5749 Lnet/minecraft/class_1297;method_5749(Lnet/minecraft/class_11368;)V
      official a Lbzm;a(Lfda;)V
    • onPlayerCollision

      public void onPlayerCollision(PlayerEntity player)
      Called when a player collides with the entity. Does nothing by default.

      This should be overridden if the collision logic is specific to players, such as picking up item entities, experience orbs, or arrows.

      Overrides:
      onPlayerCollision in class Entity
      Mappings:
      Namespace Name Mixin selector
      named onPlayerCollision Lnet/minecraft/entity/Entity;onPlayerCollision(Lnet/minecraft/entity/player/PlayerEntity;)V
      intermediary method_5694 Lnet/minecraft/class_1297;method_5694(Lnet/minecraft/class_1657;)V
      official a_ Lbzm;a_(Lcut;)V
    • repairPlayerGears

      private int repairPlayerGears(ServerPlayerEntity player, int amount)
      Repairs a player's gears using the experience recursively, until the experience is all used or all gears are repaired.
      Returns:
      the amount of leftover experience
      Mappings:
      Namespace Name Mixin selector
      named repairPlayerGears Lnet/minecraft/entity/ExperienceOrbEntity;repairPlayerGears(Lnet/minecraft/server/network/ServerPlayerEntity;I)I
      intermediary method_35051 Lnet/minecraft/class_1303;method_35051(Lnet/minecraft/class_3222;I)I
      official a Lcaa;a(Lauc;I)I
    • getValue

      public int getValue()
      Mappings:
      Namespace Name Mixin selector
      named getValue Lnet/minecraft/entity/ExperienceOrbEntity;getValue()I
      intermediary method_5919 Lnet/minecraft/class_1303;method_5919()I
      official e Lcaa;e()I
    • setValue

      private void setValue(int value)
      Mappings:
      Namespace Name Mixin selector
      named setValue Lnet/minecraft/entity/ExperienceOrbEntity;setValue(I)V
      intermediary method_66666 Lnet/minecraft/class_1303;method_66666(I)V
      official c Lcaa;c(I)V
    • getOrbSize

      public int getOrbSize()
      Mappings:
      Namespace Name Mixin selector
      named getOrbSize Lnet/minecraft/entity/ExperienceOrbEntity;getOrbSize()I
      intermediary method_5920 Lnet/minecraft/class_1303;method_5920()I
      official f Lcaa;f()I
    • roundToOrbSize

      public static int roundToOrbSize(int value)
      Mappings:
      Namespace Name Mixin selector
      named roundToOrbSize Lnet/minecraft/entity/ExperienceOrbEntity;roundToOrbSize(I)I
      intermediary method_5918 Lnet/minecraft/class_1303;method_5918(I)I
      official b Lcaa;b(I)I
    • isAttackable

      public boolean isAttackable()
      Returns whether the entity can be attacked by players.

      Note that this is not called for most entities defined in vanilla as unattackable (such as ItemEntity and ExperienceOrbEntity) as trying to attack them kicks the player.

      Overrides:
      isAttackable in class Entity
      Returns:
      whether the entity can be attacked by players
      See Also:
      Mappings:
      Namespace Name Mixin selector
      named isAttackable Lnet/minecraft/entity/Entity;isAttackable()Z
      intermediary method_5732 Lnet/minecraft/class_1297;method_5732()Z
      official cF Lbzm;cF()Z
    • getSoundCategory

      public SoundCategory getSoundCategory()
      Returns the sound category for sounds from this entity.

      This is used by Entity.playSound(SoundEvent, float, float) and defaults to SoundCategory.NEUTRAL. Hostile entities should override this to return SoundCategory.HOSTILE.

      Overrides:
      getSoundCategory in class Entity
      Returns:
      the sound category for sounds from this entity
      See Also:
      Mappings:
      Namespace Name Mixin selector
      named getSoundCategory Lnet/minecraft/entity/Entity;getSoundCategory()Lnet/minecraft/sound/SoundCategory;
      intermediary method_5634 Lnet/minecraft/class_1297;method_5634()Lnet/minecraft/class_3419;
      official do Lbzm;do()Laza;
    • getInterpolator

      public PositionInterpolator getInterpolator()
      Overrides:
      getInterpolator in class Entity
      Mappings:
      Namespace Name Mixin selector
      named getInterpolator Lnet/minecraft/entity/Entity;getInterpolator()Lnet/minecraft/entity/PositionInterpolator;
      intermediary method_66233 Lnet/minecraft/class_1297;method_66233()Lnet/minecraft/class_10584;
      official l_ Lbzm;l_()Lcah;