Class ShulkerBulletEntity

All Implemented Interfaces:
CommandOutput, Nameable, EntityLike

public class ShulkerBulletEntity extends ProjectileEntity
Mappings:
Namespace Name
official bxj
intermediary net/minecraft/class_1678
named net/minecraft/entity/projectile/ShulkerBulletEntity
  • Field Details

    • field_30666

      private static final double field_30666
      See Also:
      Mappings:
      Namespace Name Mixin selector
      official b Lbxj;b:D
      intermediary field_30666 Lnet/minecraft/class_1678;field_30666:D
      named field_30666 Lnet/minecraft/entity/projectile/ShulkerBulletEntity;field_30666:D
    • target

      @Nullable private @Nullable Entity target
      Mappings:
      Namespace Name Mixin selector
      official c Lbxj;c:Lbdr;
      intermediary field_7626 Lnet/minecraft/class_1678;field_7626:Lnet/minecraft/class_1297;
      named target Lnet/minecraft/entity/projectile/ShulkerBulletEntity;target:Lnet/minecraft/entity/Entity;
    • direction

      @Nullable private @Nullable Direction direction
      Mappings:
      Namespace Name Mixin selector
      official d Lbxj;d:Lgv;
      intermediary field_7628 Lnet/minecraft/class_1678;field_7628:Lnet/minecraft/class_2350;
      named direction Lnet/minecraft/entity/projectile/ShulkerBulletEntity;direction:Lnet/minecraft/util/math/Direction;
    • stepCount

      private int stepCount
      Mappings:
      Namespace Name Mixin selector
      official e Lbxj;e:I
      intermediary field_7627 Lnet/minecraft/class_1678;field_7627:I
      named stepCount Lnet/minecraft/entity/projectile/ShulkerBulletEntity;stepCount:I
    • targetX

      private double targetX
      Mappings:
      Namespace Name Mixin selector
      official f Lbxj;f:D
      intermediary field_7635 Lnet/minecraft/class_1678;field_7635:D
      named targetX Lnet/minecraft/entity/projectile/ShulkerBulletEntity;targetX:D
    • targetY

      private double targetY
      Mappings:
      Namespace Name Mixin selector
      official ao Lbxj;ao:D
      intermediary field_7633 Lnet/minecraft/class_1678;field_7633:D
      named targetY Lnet/minecraft/entity/projectile/ShulkerBulletEntity;targetY:D
    • targetZ

      private double targetZ
      Mappings:
      Namespace Name Mixin selector
      official ap Lbxj;ap:D
      intermediary field_7625 Lnet/minecraft/class_1678;field_7625:D
      named targetZ Lnet/minecraft/entity/projectile/ShulkerBulletEntity;targetZ:D
    • targetUuid

      @Nullable private @Nullable UUID targetUuid
      Mappings:
      Namespace Name Mixin selector
      official aq Lbxj;aq:Ljava/util/UUID;
      intermediary field_7632 Lnet/minecraft/class_1678;field_7632:Ljava/util/UUID;
      named targetUuid Lnet/minecraft/entity/projectile/ShulkerBulletEntity;targetUuid:Ljava/util/UUID;
  • Constructor Details

    • ShulkerBulletEntity

      public ShulkerBulletEntity(EntityType<? extends ShulkerBulletEntity> type, World world)
      Mappings:
      Namespace Name Mixin selector
      official <init> Lbdr;<init>(Lbdv;Lcjw;)V
      intermediary <init> Lnet/minecraft/class_1297;<init>(Lnet/minecraft/class_1299;Lnet/minecraft/class_1937;)V
      named <init> Lnet/minecraft/entity/Entity;<init>(Lnet/minecraft/entity/EntityType;Lnet/minecraft/world/World;)V
    • ShulkerBulletEntity

      public ShulkerBulletEntity(World world, LivingEntity owner, Entity target, Direction.Axis axis)
      Mappings:
      Namespace Name Mixin selector
      official <init> Lbxj;<init>(Lcjw;Lbeg;Lbdr;Lgv$a;)V
      intermediary <init> Lnet/minecraft/class_1678;<init>(Lnet/minecraft/class_1937;Lnet/minecraft/class_1309;Lnet/minecraft/class_1297;Lnet/minecraft/class_2350$class_2351;)V
      named <init> Lnet/minecraft/entity/projectile/ShulkerBulletEntity;<init>(Lnet/minecraft/world/World;Lnet/minecraft/entity/LivingEntity;Lnet/minecraft/entity/Entity;Lnet/minecraft/util/math/Direction$Axis;)V
  • Method Details

    • 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
      official cW Lbdr;cW()Lalp;
      intermediary method_5634 Lnet/minecraft/class_1297;method_5634()Lnet/minecraft/class_3419;
      named getSoundCategory Lnet/minecraft/entity/Entity;getSoundCategory()Lnet/minecraft/sound/SoundCategory;
    • writeCustomDataToNbt

      protected void writeCustomDataToNbt(NbtCompound nbt)
      Writes custom data to nbt. Subclasses has to implement this.

      NBT is a storage format; therefore, a data from NBT is loaded to an entity instance's fields, which are used for other operations instead of the NBT. The data is written back to NBT when saving the entity.

      Overrides:
      writeCustomDataToNbt in class ProjectileEntity
      See Also:
      Mappings:
      Namespace Name Mixin selector
      official b Lbdr;b(Lqp;)V
      intermediary method_5652 Lnet/minecraft/class_1297;method_5652(Lnet/minecraft/class_2487;)V
      named writeCustomDataToNbt Lnet/minecraft/entity/Entity;writeCustomDataToNbt(Lnet/minecraft/nbt/NbtCompound;)V
    • readCustomDataFromNbt

      protected void readCustomDataFromNbt(NbtCompound nbt)
      Reads custom data from nbt. Subclasses has to implement this.

      NBT is a storage format; therefore, a data from NBT is loaded to an entity instance's fields, which are used for other operations instead of the NBT. The data is written back to NBT when saving the entity.

      nbt might not have all expected keys, or might have a key whose value does not meet the requirement (such as the type or the range). This method should fall back to a reasonable default value instead of throwing an exception.

      Overrides:
      readCustomDataFromNbt in class ProjectileEntity
      See Also:
      Mappings:
      Namespace Name Mixin selector
      official a Lbdr;a(Lqp;)V
      intermediary method_5749 Lnet/minecraft/class_1297;method_5749(Lnet/minecraft/class_2487;)V
      named readCustomDataFromNbt Lnet/minecraft/entity/Entity;readCustomDataFromNbt(Lnet/minecraft/nbt/NbtCompound;)V
    • initDataTracker

      protected void initDataTracker()
      Initializes data tracker.
      Specified by:
      initDataTracker in class Entity
      Mappings:
      Namespace Name Mixin selector
      official a_ Lbdr;a_()V
      intermediary method_5693 Lnet/minecraft/class_1297;method_5693()V
      named initDataTracker Lnet/minecraft/entity/Entity;initDataTracker()V
    • getDirection

      @Nullable private @Nullable Direction getDirection()
      Mappings:
      Namespace Name Mixin selector
      official h Lbxj;h()Lgv;
      intermediary method_35208 Lnet/minecraft/class_1678;method_35208()Lnet/minecraft/class_2350;
      named getDirection Lnet/minecraft/entity/projectile/ShulkerBulletEntity;getDirection()Lnet/minecraft/util/math/Direction;
    • setDirection

      private void setDirection(@Nullable @Nullable Direction direction)
      Mappings:
      Namespace Name Mixin selector
      official a Lbxj;a(Lgv;)V
      intermediary method_7487 Lnet/minecraft/class_1678;method_7487(Lnet/minecraft/class_2350;)V
      named setDirection Lnet/minecraft/entity/projectile/ShulkerBulletEntity;setDirection(Lnet/minecraft/util/math/Direction;)V
    • changeTargetDirection

      private void changeTargetDirection(@Nullable Direction.Axis axis)
      Mappings:
      Namespace Name Mixin selector
      official a Lbxj;a(Lgv$a;)V
      intermediary method_7486 Lnet/minecraft/class_1678;method_7486(Lnet/minecraft/class_2350$class_2351;)V
      named changeTargetDirection Lnet/minecraft/entity/projectile/ShulkerBulletEntity;changeTargetDirection(Lnet/minecraft/util/math/Direction$Axis;)V
    • checkDespawn

      public void checkDespawn()
      Checks whether the entity should be despawned.

      To despawn this entity, call Entity.discard().

      Overrides:
      checkDespawn in class Entity
      See Also:
      Mappings:
      Namespace Name Mixin selector
      official dr Lbdr;dr()V
      intermediary method_5982 Lnet/minecraft/class_1297;method_5982()V
      named checkDespawn Lnet/minecraft/entity/Entity;checkDespawn()V
    • tick

      public void tick()
      Ticks this entity.
      Overrides:
      tick in class ProjectileEntity
      See Also:
      Mappings:
      Namespace Name Mixin selector
      official l Lbdr;l()V
      intermediary method_5773 Lnet/minecraft/class_1297;method_5773()V
      named tick Lnet/minecraft/entity/Entity;tick()V
    • canHit

      protected boolean canHit(Entity entity)
      Overrides:
      canHit in class ProjectileEntity
      Mappings:
      Namespace Name Mixin selector
      official a Lbxh;a(Lbdr;)Z
      intermediary method_26958 Lnet/minecraft/class_1676;method_26958(Lnet/minecraft/class_1297;)Z
      named canHit Lnet/minecraft/entity/projectile/ProjectileEntity;canHit(Lnet/minecraft/entity/Entity;)Z
    • isOnFire

      public boolean isOnFire()
      Returns whether the entity is on fire and is not fire immune.
      Overrides:
      isOnFire in class Entity
      Returns:
      whether the entity is on fire and is not fire immune
      See Also:
      Mappings:
      Namespace Name Mixin selector
      official bK Lbdr;bK()Z
      intermediary method_5809 Lnet/minecraft/class_1297;method_5809()Z
      named isOnFire Lnet/minecraft/entity/Entity;isOnFire()Z
    • shouldRender

      public boolean shouldRender(double distance)
      Overrides:
      shouldRender in class Entity
      Mappings:
      Namespace Name Mixin selector
      official a Lbdr;a(D)Z
      intermediary method_5640 Lnet/minecraft/class_1297;method_5640(D)Z
      named shouldRender Lnet/minecraft/entity/Entity;shouldRender(D)Z
    • getBrightnessAtEyes

      public float getBrightnessAtEyes()
      Overrides:
      getBrightnessAtEyes in class Entity
      Mappings:
      Namespace Name Mixin selector
      official bj Lbdr;bj()F
      intermediary method_5718 Lnet/minecraft/class_1297;method_5718()F
      named getBrightnessAtEyes Lnet/minecraft/entity/Entity;getBrightnessAtEyes()F
    • onEntityHit

      protected void onEntityHit(EntityHitResult entityHitResult)
      Overrides:
      onEntityHit in class ProjectileEntity
      Mappings:
      Namespace Name Mixin selector
      official a Lbxh;a(Leab;)V
      intermediary method_7454 Lnet/minecraft/class_1676;method_7454(Lnet/minecraft/class_3966;)V
      named onEntityHit Lnet/minecraft/entity/projectile/ProjectileEntity;onEntityHit(Lnet/minecraft/util/hit/EntityHitResult;)V
    • onBlockHit

      protected void onBlockHit(BlockHitResult blockHitResult)
      Overrides:
      onBlockHit in class ProjectileEntity
      Mappings:
      Namespace Name Mixin selector
      official a Lbxh;a(Leaa;)V
      intermediary method_24920 Lnet/minecraft/class_1676;method_24920(Lnet/minecraft/class_3965;)V
      named onBlockHit Lnet/minecraft/entity/projectile/ProjectileEntity;onBlockHit(Lnet/minecraft/util/hit/BlockHitResult;)V
    • onCollision

      protected void onCollision(HitResult hitResult)
      Overrides:
      onCollision in class ProjectileEntity
      Mappings:
      Namespace Name Mixin selector
      official a Lbxh;a(Leac;)V
      intermediary method_7488 Lnet/minecraft/class_1676;method_7488(Lnet/minecraft/class_239;)V
      named onCollision Lnet/minecraft/entity/projectile/ProjectileEntity;onCollision(Lnet/minecraft/util/hit/HitResult;)V
    • canHit

      public boolean canHit()
      Returns whether the entity can be hit with a projectile or be targeted by the player crosshair.
      Overrides:
      canHit in class Entity
      Returns:
      whether the entity can be hit with a projectile or be targeted by the player crosshair
      Mappings:
      Namespace Name Mixin selector
      official bn Lbdr;bn()Z
      intermediary method_5863 Lnet/minecraft/class_1297;method_5863()Z
      named canHit Lnet/minecraft/entity/Entity;canHit()Z
    • damage

      public boolean damage(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 Entity.isInvulnerableTo(net.minecraft.entity.damage.DamageSource) and return early.

      Overrides:
      damage in class Entity
      Returns:
      whether the entity was actually damaged
      See Also:
      Mappings:
      Namespace Name Mixin selector
      official a Lbdr;a(Lbcz;F)Z
      intermediary method_5643 Lnet/minecraft/class_1297;method_5643(Lnet/minecraft/class_1282;F)Z
      named damage Lnet/minecraft/entity/Entity;damage(Lnet/minecraft/entity/damage/DamageSource;F)Z
    • onSpawnPacket

      public void onSpawnPacket(EntitySpawnS2CPacket packet)
      Called on the client when the entity receives a spawn packet.

      This sets the entity's position, angles, ID, and UUID. Subclasses can override this to initialize additional fields.

      Overrides:
      onSpawnPacket in class ProjectileEntity
      Mappings:
      Namespace Name Mixin selector
      official a Lbdr;a(Lul;)V
      intermediary method_31471 Lnet/minecraft/class_1297;method_31471(Lnet/minecraft/class_2604;)V
      named onSpawnPacket Lnet/minecraft/entity/Entity;onSpawnPacket(Lnet/minecraft/network/packet/s2c/play/EntitySpawnS2CPacket;)V