Class FishingBobberEntity

All Implemented Interfaces:
DataTracked, Ownable, ScoreHolder, CommandOutput, Nameable, EntityLike

public class FishingBobberEntity extends ProjectileEntity
Mappings:
Namespace Name
named net/minecraft/entity/projectile/FishingBobberEntity
intermediary net/minecraft/class_1536
official cnl
  • Field Details

    • LOGGER

      private static final Logger LOGGER
      Mappings:
      Namespace Name Mixin selector
      named LOGGER Lnet/minecraft/entity/projectile/FishingBobberEntity;LOGGER:Lorg/slf4j/Logger;
      intermediary field_36336 Lnet/minecraft/class_1536;field_36336:Lorg/slf4j/Logger;
      official b Lcnl;b:Lorg/slf4j/Logger;
    • field_30665

      private static final int field_30665
      See Also:
      Mappings:
      Namespace Name Mixin selector
      named field_30665 Lnet/minecraft/entity/projectile/FishingBobberEntity;field_30665:I
      intermediary field_30665 Lnet/minecraft/class_1536;field_30665:I
      official f Lcnl;f:I
    • HOOK_ENTITY_ID

      private static final TrackedData<Integer> HOOK_ENTITY_ID
      Mappings:
      Namespace Name Mixin selector
      named HOOK_ENTITY_ID Lnet/minecraft/entity/projectile/FishingBobberEntity;HOOK_ENTITY_ID:Lnet/minecraft/entity/data/TrackedData;
      intermediary field_7170 Lnet/minecraft/class_1536;field_7170:Lnet/minecraft/class_2940;
      official g Lcnl;g:Lajw;
    • CAUGHT_FISH

      private static final TrackedData<Boolean> CAUGHT_FISH
      Mappings:
      Namespace Name Mixin selector
      named CAUGHT_FISH Lnet/minecraft/entity/projectile/FishingBobberEntity;CAUGHT_FISH:Lnet/minecraft/entity/data/TrackedData;
      intermediary field_23234 Lnet/minecraft/class_1536;field_23234:Lnet/minecraft/class_2940;
      official h Lcnl;h:Lajw;
    • velocityRandom

      private final Random velocityRandom
      Mappings:
      Namespace Name Mixin selector
      named velocityRandom Lnet/minecraft/entity/projectile/FishingBobberEntity;velocityRandom:Lnet/minecraft/util/math/random/Random;
      intermediary field_23231 Lnet/minecraft/class_1536;field_23231:Lnet/minecraft/class_5819;
      official c Lcnl;c:Layw;
    • caughtFish

      private boolean caughtFish
      Mappings:
      Namespace Name Mixin selector
      named caughtFish Lnet/minecraft/entity/projectile/FishingBobberEntity;caughtFish:Z
      intermediary field_23232 Lnet/minecraft/class_1536;field_23232:Z
      official d Lcnl;d:Z
    • outOfOpenWaterTicks

      private int outOfOpenWaterTicks
      Mappings:
      Namespace Name Mixin selector
      named outOfOpenWaterTicks Lnet/minecraft/entity/projectile/FishingBobberEntity;outOfOpenWaterTicks:I
      intermediary field_23233 Lnet/minecraft/class_1536;field_23233:I
      official e Lcnl;e:I
    • removalTimer

      private int removalTimer
      Mappings:
      Namespace Name Mixin selector
      named removalTimer Lnet/minecraft/entity/projectile/FishingBobberEntity;removalTimer:I
      intermediary field_7167 Lnet/minecraft/class_1536;field_7167:I
      official i Lcnl;i:I
    • hookCountdown

      private int hookCountdown
      Mappings:
      Namespace Name Mixin selector
      named hookCountdown Lnet/minecraft/entity/projectile/FishingBobberEntity;hookCountdown:I
      intermediary field_7173 Lnet/minecraft/class_1536;field_7173:I
      official j Lcnl;j:I
    • waitCountdown

      private int waitCountdown
      Mappings:
      Namespace Name Mixin selector
      named waitCountdown Lnet/minecraft/entity/projectile/FishingBobberEntity;waitCountdown:I
      intermediary field_7174 Lnet/minecraft/class_1536;field_7174:I
      official k Lcnl;k:I
    • fishTravelCountdown

      private int fishTravelCountdown
      Mappings:
      Namespace Name Mixin selector
      named fishTravelCountdown Lnet/minecraft/entity/projectile/FishingBobberEntity;fishTravelCountdown:I
      intermediary field_7172 Lnet/minecraft/class_1536;field_7172:I
      official l Lcnl;l:I
    • fishAngle

      private float fishAngle
      Mappings:
      Namespace Name Mixin selector
      named fishAngle Lnet/minecraft/entity/projectile/FishingBobberEntity;fishAngle:F
      intermediary field_7169 Lnet/minecraft/class_1536;field_7169:F
      official m Lcnl;m:F
    • inOpenWater

      private boolean inOpenWater
      Mappings:
      Namespace Name Mixin selector
      named inOpenWater Lnet/minecraft/entity/projectile/FishingBobberEntity;inOpenWater:Z
      intermediary field_23134 Lnet/minecraft/class_1536;field_23134:Z
      official n Lcnl;n:Z
    • hookedEntity

      @Nullable private @Nullable Entity hookedEntity
      Mappings:
      Namespace Name Mixin selector
      named hookedEntity Lnet/minecraft/entity/projectile/FishingBobberEntity;hookedEntity:Lnet/minecraft/entity/Entity;
      intermediary field_7165 Lnet/minecraft/class_1536;field_7165:Lnet/minecraft/class_1297;
      official o Lcnl;o:Lbsr;
    • state

      Mappings:
      Namespace Name Mixin selector
      named state Lnet/minecraft/entity/projectile/FishingBobberEntity;state:Lnet/minecraft/entity/projectile/FishingBobberEntity$State;
      intermediary field_7175 Lnet/minecraft/class_1536;field_7175:Lnet/minecraft/class_1536$class_1537;
      official p Lcnl;p:Lcnl$a;
    • luckBonus

      private final int luckBonus
      Mappings:
      Namespace Name Mixin selector
      named luckBonus Lnet/minecraft/entity/projectile/FishingBobberEntity;luckBonus:I
      intermediary field_7171 Lnet/minecraft/class_1536;field_7171:I
      official q Lcnl;q:I
    • waitTimeReductionTicks

      private final int waitTimeReductionTicks
      Mappings:
      Namespace Name Mixin selector
      named waitTimeReductionTicks Lnet/minecraft/entity/projectile/FishingBobberEntity;waitTimeReductionTicks:I
      intermediary field_7168 Lnet/minecraft/class_1536;field_7168:I
      official r Lcnl;r:I
  • Constructor Details

    • FishingBobberEntity

      private FishingBobberEntity(EntityType<? extends FishingBobberEntity> type, World world, int luckBonus, int waitTimeReductionTicks)
      Mappings:
      Namespace Name Mixin selector
      named <init> Lnet/minecraft/entity/projectile/FishingBobberEntity;<init>(Lnet/minecraft/entity/EntityType;Lnet/minecraft/world/World;II)V
      intermediary <init> Lnet/minecraft/class_1536;<init>(Lnet/minecraft/class_1299;Lnet/minecraft/class_1937;II)V
      official <init> Lcnl;<init>(Lbsx;Ldcw;II)V
    • FishingBobberEntity

      public FishingBobberEntity(EntityType<? extends FishingBobberEntity> 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> Lbsr;<init>(Lbsx;Ldcw;)V
    • FishingBobberEntity

      public FishingBobberEntity(PlayerEntity thrower, World world, int luckBonus, int waitTimeReductionTicks)
      Mappings:
      Namespace Name Mixin selector
      named <init> Lnet/minecraft/entity/projectile/FishingBobberEntity;<init>(Lnet/minecraft/entity/player/PlayerEntity;Lnet/minecraft/world/World;II)V
      intermediary <init> Lnet/minecraft/class_1536;<init>(Lnet/minecraft/class_1657;Lnet/minecraft/class_1937;II)V
      official <init> Lcnl;<init>(Lcmx;Ldcw;II)V
  • Method Details

    • 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 Lbsr;a(Laka$a;)V
    • onTrackedDataSet

      public void onTrackedDataSet(TrackedData<?> data)
      Called on the client when the tracked data is set.

      This can be overridden to refresh other fields when the tracked data is set or changed.

      Specified by:
      onTrackedDataSet in interface DataTracked
      Overrides:
      onTrackedDataSet in class Entity
      Mappings:
      Namespace Name Mixin selector
      named onTrackedDataSet Lnet/minecraft/entity/data/DataTracked;onTrackedDataSet(Lnet/minecraft/entity/data/TrackedData;)V
      intermediary method_5674 Lnet/minecraft/class_9221;method_5674(Lnet/minecraft/class_2940;)V
      official a Lajz;a(Lajw;)V
    • shouldRender

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

      public void updateTrackedPositionAndAngles(double x, double y, double z, float yaw, float pitch, int interpolationSteps)
      Overrides:
      updateTrackedPositionAndAngles in class Entity
      Mappings:
      Namespace Name Mixin selector
      named updateTrackedPositionAndAngles Lnet/minecraft/entity/Entity;updateTrackedPositionAndAngles(DDDFFI)V
      intermediary method_5759 Lnet/minecraft/class_1297;method_5759(DDDFFI)V
      official a Lbsr;a(DDDFFI)V
    • tick

      public void tick()
      Ticks this entity.
      Overrides:
      tick in class ProjectileEntity
      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 l Lbsr;l()V
    • removeIfInvalid

      private boolean removeIfInvalid(PlayerEntity player)
      Mappings:
      Namespace Name Mixin selector
      named removeIfInvalid Lnet/minecraft/entity/projectile/FishingBobberEntity;removeIfInvalid(Lnet/minecraft/entity/player/PlayerEntity;)Z
      intermediary method_6959 Lnet/minecraft/class_1536;method_6959(Lnet/minecraft/class_1657;)Z
      official a Lcnl;a(Lcmx;)Z
    • checkForCollision

      private void checkForCollision()
      Mappings:
      Namespace Name Mixin selector
      named checkForCollision Lnet/minecraft/entity/projectile/FishingBobberEntity;checkForCollision()V
      intermediary method_6958 Lnet/minecraft/class_1536;method_6958()V
      official w Lcnl;w()V
    • canHit

      protected boolean canHit(Entity entity)
      Overrides:
      canHit in class ProjectileEntity
      Mappings:
      Namespace Name Mixin selector
      named canHit Lnet/minecraft/entity/projectile/ProjectileEntity;canHit(Lnet/minecraft/entity/Entity;)Z
      intermediary method_26958 Lnet/minecraft/class_1676;method_26958(Lnet/minecraft/class_1297;)Z
      official b Lcnp;b(Lbsr;)Z
    • onEntityHit

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

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

      private void updateHookedEntityId(@Nullable @Nullable Entity entity)
      Mappings:
      Namespace Name Mixin selector
      named updateHookedEntityId Lnet/minecraft/entity/projectile/FishingBobberEntity;updateHookedEntityId(Lnet/minecraft/entity/Entity;)V
      intermediary method_6951 Lnet/minecraft/class_1536;method_6951(Lnet/minecraft/class_1297;)V
      official A Lcnl;A(Lbsr;)V
    • tickFishingLogic

      private void tickFishingLogic(BlockPos pos)
      Mappings:
      Namespace Name Mixin selector
      named tickFishingLogic Lnet/minecraft/entity/projectile/FishingBobberEntity;tickFishingLogic(Lnet/minecraft/util/math/BlockPos;)V
      intermediary method_6949 Lnet/minecraft/class_1536;method_6949(Lnet/minecraft/class_2338;)V
      official a Lcnl;a(Ljd;)V
    • isOpenOrWaterAround

      private boolean isOpenOrWaterAround(BlockPos pos)
      Mappings:
      Namespace Name Mixin selector
      named isOpenOrWaterAround Lnet/minecraft/entity/projectile/FishingBobberEntity;isOpenOrWaterAround(Lnet/minecraft/util/math/BlockPos;)Z
      intermediary method_26086 Lnet/minecraft/class_1536;method_26086(Lnet/minecraft/class_2338;)Z
      official b Lcnl;b(Ljd;)Z
    • getPositionType

      private FishingBobberEntity.PositionType getPositionType(BlockPos start, BlockPos end)
      Mappings:
      Namespace Name Mixin selector
      named getPositionType Lnet/minecraft/entity/projectile/FishingBobberEntity;getPositionType(Lnet/minecraft/util/math/BlockPos;Lnet/minecraft/util/math/BlockPos;)Lnet/minecraft/entity/projectile/FishingBobberEntity$PositionType;
      intermediary method_26341 Lnet/minecraft/class_1536;method_26341(Lnet/minecraft/class_2338;Lnet/minecraft/class_2338;)Lnet/minecraft/class_1536$class_4984;
      official a Lcnl;a(Ljd;Ljd;)Lcnl$b;
    • getPositionType

      private FishingBobberEntity.PositionType getPositionType(BlockPos pos)
      Mappings:
      Namespace Name Mixin selector
      named getPositionType Lnet/minecraft/entity/projectile/FishingBobberEntity;getPositionType(Lnet/minecraft/util/math/BlockPos;)Lnet/minecraft/entity/projectile/FishingBobberEntity$PositionType;
      intermediary method_26342 Lnet/minecraft/class_1536;method_26342(Lnet/minecraft/class_2338;)Lnet/minecraft/class_1536$class_4984;
      official c Lcnl;c(Ljd;)Lcnl$b;
    • isInOpenWater

      public boolean isInOpenWater()
      Mappings:
      Namespace Name Mixin selector
      named isInOpenWater Lnet/minecraft/entity/projectile/FishingBobberEntity;isInOpenWater()Z
      intermediary method_26088 Lnet/minecraft/class_1536;method_26088()Z
      official p Lcnl;p()Z
    • writeCustomDataToNbt

      public void writeCustomDataToNbt(NbtCompound nbt)
      Writes custom data to nbt. Subclasses have 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
      named writeCustomDataToNbt Lnet/minecraft/entity/Entity;writeCustomDataToNbt(Lnet/minecraft/nbt/NbtCompound;)V
      intermediary method_5652 Lnet/minecraft/class_1297;method_5652(Lnet/minecraft/class_2487;)V
      official b Lbsr;b(Lub;)V
    • readCustomDataFromNbt

      public void readCustomDataFromNbt(NbtCompound nbt)
      Reads custom data from nbt. Subclasses have 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
      named readCustomDataFromNbt Lnet/minecraft/entity/Entity;readCustomDataFromNbt(Lnet/minecraft/nbt/NbtCompound;)V
      intermediary method_5749 Lnet/minecraft/class_1297;method_5749(Lnet/minecraft/class_2487;)V
      official a Lbsr;a(Lub;)V
    • use

      public int use(ItemStack usedItem)
      Mappings:
      Namespace Name Mixin selector
      named use Lnet/minecraft/entity/projectile/FishingBobberEntity;use(Lnet/minecraft/item/ItemStack;)I
      intermediary method_6957 Lnet/minecraft/class_1536;method_6957(Lnet/minecraft/class_1799;)I
      official a Lcnl;a(Lcuq;)I
    • handleStatus

      public void handleStatus(byte status)
      Called on the client when the entity receives an entity status from the server. They are often used to spawn particles or play sounds. Subclasses can override this method to handle custom entity status.
      Overrides:
      handleStatus in class Entity
      See Also:
      API Note:
      To send an entity status, use World.sendEntityStatus(net.minecraft.entity.Entity, byte).
      Mappings:
      Namespace Name Mixin selector
      named handleStatus Lnet/minecraft/entity/Entity;handleStatus(B)V
      intermediary method_5711 Lnet/minecraft/class_1297;method_5711(B)V
      official b Lbsr;b(B)V
    • pullHookedEntity

      protected void pullHookedEntity(Entity entity)
      Mappings:
      Namespace Name Mixin selector
      named pullHookedEntity Lnet/minecraft/entity/projectile/FishingBobberEntity;pullHookedEntity(Lnet/minecraft/entity/Entity;)V
      intermediary method_6954 Lnet/minecraft/class_1536;method_6954(Lnet/minecraft/class_1297;)V
      official d Lcnl;d(Lbsr;)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 bc Lbsr;bc()Lbsr$b;
    • remove

      public void remove(Entity.RemovalReason reason)
      Removes the entity.
      Overrides:
      remove in class Entity
      See Also:
      Mappings:
      Namespace Name Mixin selector
      named remove Lnet/minecraft/entity/Entity;remove(Lnet/minecraft/entity/Entity$RemovalReason;)V
      intermediary method_5650 Lnet/minecraft/class_1297;method_5650(Lnet/minecraft/class_1297$class_5529;)V
      official a Lbsr;a(Lbsr$c;)V
    • onRemoved

      public void onRemoved()
      Called on the client side when the entity is removed.
      Overrides:
      onRemoved in class Entity
      API Note:
      To handle entity removal server-side, override remove(net.minecraft.entity.Entity.RemovalReason) and add custom logic there.
      Mappings:
      Namespace Name Mixin selector
      named onRemoved Lnet/minecraft/entity/Entity;onRemoved()V
      intermediary method_36209 Lnet/minecraft/class_1297;method_36209()V
      official as Lbsr;as()V
    • setOwner

      public void setOwner(@Nullable @Nullable Entity entity)
      Overrides:
      setOwner in class ProjectileEntity
      Mappings:
      Namespace Name Mixin selector
      named setOwner Lnet/minecraft/entity/projectile/ProjectileEntity;setOwner(Lnet/minecraft/entity/Entity;)V
      intermediary method_7432 Lnet/minecraft/class_1676;method_7432(Lnet/minecraft/class_1297;)V
      official c Lcnp;c(Lbsr;)V
    • setPlayerFishHook

      private void setPlayerFishHook(@Nullable @Nullable FishingBobberEntity fishingBobber)
      Mappings:
      Namespace Name Mixin selector
      named setPlayerFishHook Lnet/minecraft/entity/projectile/FishingBobberEntity;setPlayerFishHook(Lnet/minecraft/entity/projectile/FishingBobberEntity;)V
      intermediary method_36210 Lnet/minecraft/class_1536;method_36210(Lnet/minecraft/class_1536;)V
      official a Lcnl;a(Lcnl;)V
    • getPlayerOwner

      @Nullable public @Nullable PlayerEntity getPlayerOwner()
      Mappings:
      Namespace Name Mixin selector
      named getPlayerOwner Lnet/minecraft/entity/projectile/FishingBobberEntity;getPlayerOwner()Lnet/minecraft/entity/player/PlayerEntity;
      intermediary method_6947 Lnet/minecraft/class_1536;method_6947()Lnet/minecraft/class_1657;
      official t Lcnl;t()Lcmx;
    • getHookedEntity

      @Nullable public @Nullable Entity getHookedEntity()
      Mappings:
      Namespace Name Mixin selector
      named getHookedEntity Lnet/minecraft/entity/projectile/FishingBobberEntity;getHookedEntity()Lnet/minecraft/entity/Entity;
      intermediary method_26957 Lnet/minecraft/class_1536;method_26957()Lnet/minecraft/class_1297;
      official v Lcnl;v()Lbsr;
    • canUsePortals

      public boolean canUsePortals(boolean allowVehicles)
      Returns whether the entity can use nether portals and end portals.

      EnderDragonEntity, WitherEntity, and FishingBobberEntity cannot use portals.

      Overrides:
      canUsePortals in class Entity
      Returns:
      whether the entity can use nether portals and end portals
      Mappings:
      Namespace Name Mixin selector
      named canUsePortals Lnet/minecraft/entity/Entity;canUsePortals(Z)Z
      intermediary method_5822 Lnet/minecraft/class_1297;method_5822(Z)Z
      official o Lbsr;o(Z)Z
    • createSpawnPacket

      public Packet<ClientPlayPacketListener> createSpawnPacket(EntityTrackerEntry entityTrackerEntry)
      Returns a packet to notify the clients of the entity's spawning.
      Overrides:
      createSpawnPacket in class ProjectileEntity
      Returns:
      a packet to notify the clients of the entity's spawning
      API Note:
      Subclasses should return new EntitySpawnS2CPacket(this), unless they use a custom spawning packet.
      Mappings:
      Namespace Name Mixin selector
      named createSpawnPacket Lnet/minecraft/entity/Entity;createSpawnPacket(Lnet/minecraft/server/network/EntityTrackerEntry;)Lnet/minecraft/network/packet/Packet;
      intermediary method_18002 Lnet/minecraft/class_1297;method_18002(Lnet/minecraft/class_3231;)Lnet/minecraft/class_2596;
      official a Lbsr;a(Laqt;)Lzg;
    • 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
      named onSpawnPacket Lnet/minecraft/entity/Entity;onSpawnPacket(Lnet/minecraft/network/packet/s2c/play/EntitySpawnS2CPacket;)V
      intermediary method_31471 Lnet/minecraft/class_1297;method_31471(Lnet/minecraft/class_2604;)V
      official a Lbsr;a(Labv;)V