Class ShulkerBulletEntity
- All Implemented Interfaces:
DataTracked,Ownable,ScoreHolder,CommandOutput,Nameable,EntityLike
- Mappings:
Namespace Name named net/minecraft/entity/projectile/ShulkerBulletEntityintermediary net/minecraft/class_1678official cns
-
Nested Class Summary
Nested classes/interfaces inherited from class net.minecraft.entity.Entity
Entity.MoveEffect, Entity.PositionUpdater, Entity.RemovalReason -
Field Summary
FieldsModifier and TypeFieldDescriptionprivate static final doubleprivate intprivate doubleprivate doubleprivate doubleFields inherited from class net.minecraft.entity.Entity
age, collidedSoftly, dataTracker, DEFAULT_FRICTION, DEFAULT_MIN_FREEZE_DAMAGE_TICKS, DEFAULT_PORTAL_COOLDOWN, distanceTraveled, FALL_FLYING_FLAG_INDEX, fallDistance, field_44870, field_44871, field_44872, field_49073, field_49791, firstUpdate, FLAGS, fluidHeight, FREEZING_DAMAGE_INTERVAL, GLOWING_FLAG_INDEX, groundCollision, horizontalCollision, horizontalSpeed, ID_KEY, ignoreCameraFrustum, inPowderSnow, intersectionChecked, lastRenderX, lastRenderY, lastRenderZ, MAX_COMMAND_TAGS, MAX_RIDING_COOLDOWN, MIN_RISING_BUBBLE_COLUMN_SPEED, movementMultiplier, noClip, ON_FIRE_FLAG_INDEX, PASSENGERS_KEY, portalManager, POSE, prevHorizontalSpeed, prevPitch, prevX, prevY, prevYaw, prevZ, random, ridingCooldown, speed, submergedInWater, supportingBlockPos, timeUntilRegen, touchingWater, uuid, UUID_KEY, uuidString, velocityDirty, velocityModified, verticalCollision, wasInPowderSnow, wasOnFireFields inherited from interface net.minecraft.server.command.CommandOutput
DUMMYFields inherited from interface net.minecraft.scoreboard.ScoreHolder
WILDCARD, WILDCARD_NAME -
Constructor Summary
ConstructorsConstructorDescriptionShulkerBulletEntity(EntityType<? extends ShulkerBulletEntity> type, World world) ShulkerBulletEntity(World world, LivingEntity owner, Entity target, Direction.Axis axis) -
Method Summary
Modifier and TypeMethodDescriptionbooleancanHit()Returns whether the entity can be hit with a projectile or be targeted by the player crosshair.protected booleanprivate voidvoidChecks whether the entity should be despawned.booleandamage(DamageSource source, float amount) Applies a damage to this entity.private voiddestroy()floatprotected doubleReturns the sound category for sounds from this entity.protected voidinitDataTracker(DataTracker.Builder builder) Initializes data tracker.booleanisOnFire()Returns whether the entity is on fire and is not fire immune.protected voidonBlockHit(BlockHitResult blockHitResult) protected voidonCollision(HitResult hitResult) protected voidonEntityHit(EntityHitResult entityHitResult) voidonSpawnPacket(EntitySpawnS2CPacket packet) Called on the client when the entity receives a spawn packet.protected voidReads custom data fromnbt.private voidsetDirection(@Nullable Direction direction) booleanshouldRender(double distance) voidtick()Ticks this entity.protected voidWrites custom data tonbt.Methods inherited from class net.minecraft.entity.projectile.ProjectileEntity
calculateVelocity, canBreakBlocks, canModifyAt, copyFrom, createSpawnPacket, deflect, getEffectCause, getKnockback, getOwner, getTargetingMargin, hitOrDeflect, isOwner, onDeflected, setOwner, setVelocity, setVelocity, setVelocityClient, updateRotation, updateRotationMethods inherited from class net.minecraft.entity.Entity
addAirTravelEffects, addCommandTag, addFlapEffects, addPassenger, addPortalChunkTicketAt, addVelocity, addVelocity, addVelocityInternal, adjustMovementForCollisions, adjustMovementForPiston, adjustMovementForSneaking, animateDamage, applyGravity, applyMirror, applyRotation, attemptTickInVoid, baseTick, bypassesLandingEffects, bypassesSteppingEffects, calculateBoundingBox, calculateDimensions, calculateNextStepSoundDistance, canAddPassenger, canAvoidTraps, canBeHitByProjectile, canBeSpectated, canExplosionDestroyBlock, canFreeze, canMoveVoluntarily, canSprintAsVehicle, canStartRiding, canTeleportBetween, canUsePortals, changeLookDirection, checkBlockCollision, collidesWith, collidesWithStateAtPos, copyPositionAndRotation, couldAcceptPassenger, detach, discard, dismountVehicle, distanceTo, doesNotCollide, doesRenderOnFire, dropItem, dropItem, dropStack, dropStack, emitGameEvent, emitGameEvent, entityDataRequiresOperator, equals, extinguish, extinguishWithSound, fall, getAir, getAttachments, getBlockPos, getBlockStateAtPos, getBlockX, getBlockY, getBlockZ, getBodyY, getBodyYaw, getBoundingBox, getBurningDuration, getCameraPosVec, getChunkPos, getClientCameraPosVec, getCommandSource, getCommandTags, getControllingPassenger, getControllingVehicle, getCustomName, getDamageSources, getDataTracker, getDefaultName, getDefaultPortalCooldown, getDimensions, getDisplayName, getEffectiveExplosionResistance, getEntityWorld, getEyeHeight, getEyePos, getEyeY, getFacing, getFinalGravity, getFireTicks, getFirstPassenger, getFlag, getFluidHeight, getFreezingScale, getFrozenTicks, getHandPosOffset, getHeadYaw, getHeight, getHighSpeedSplashSound, getHorizontalFacing, getHoverEvent, getId, getJumpVelocityMultiplier, getLandingBlockState, getLandingPos, getLeashOffset, getLeashOffset, getLeashPos, getLerpedPos, getLerpTargetPitch, getLerpTargetX, getLerpTargetY, getLerpTargetYaw, getLerpTargetZ, getMaxAir, getMinFreezeDamageTicks, getMoveEffect, getMovement, getMovementDirection, getName, getNameForScoreboard, getOppositeRotationVector, getOppositeRotationVector, getParticleX, getParticleZ, getPassengerAttachmentPos, getPassengerAttachmentPos, getPassengerDismountOffset, getPassengerList, getPassengerRidingPos, getPassengersDeep, getPermissionLevel, getPickBlockStack, getPistonBehavior, getPitch, getPitch, getPlayerPassengers, getPortalCooldown, getPos, getPose, getPosWithYOffset, getProjectileDeflection, getRandom, getRandomBodyY, getRegistryManager, getRemovalReason, getRenderDistanceMultiplier, getRootVehicle, getRotationClient, getRotationVec, getRotationVecClient, getRotationVector, getRotationVector, getSafeFallDistance, getSavedEntityId, getScoreboardTeam, getServer, getSplashSound, getStackReference, getStandingEyeHeight, getStepHeight, getSteppingBlockState, getSteppingPos, getStepSoundPos, getSwimHeight, getSwimSound, getSyncedPos, getTeamColorValue, getTrackedPosition, getType, getUuid, getUuidAsString, getVehicle, getVehicleAttachmentPos, getVelocity, getVelocityAffectingPos, getVelocityMultiplier, getVisibilityBoundingBox, getWeaponStack, getWidth, getWorld, getWorldSpawnPos, getX, getY, getYaw, getYaw, getZ, handleAttack, handleFallDamage, handleStatus, hasCollidedSoftly, hasControllingPassenger, hasCustomName, hashCode, hasNoGravity, hasPassenger, hasPassenger, hasPassengerDeep, hasPassengers, hasPermissionLevel, hasPlayerRider, hasPortalCooldown, hasVehicle, interact, interactAt, isAlive, isAttackable, isCollidable, isConnectedThroughVehicle, isCrawling, isCustomNameVisible, isDescending, isFireImmune, isFlappingWings, isFrozen, isGlowing, isGlowingLocal, isImmuneToExplosion, isInFluid, isInLava, isInPose, isInRange, isInRange, isInsideWall, isInsideWaterOrBubbleColumn, isInSneakingPose, isInSwimmingPose, isInvisible, isInvisibleTo, isInvulnerable, isInvulnerableTo, isLiving, isLogicalSideForUpdatingMovement, isOnGround, isOnRail, isPartOf, isPlayer, isPushable, isPushedByFluids, isRegionUnloaded, isRemoved, isSilent, isSneaking, isSneaky, isSpectator, isSprinting, isSubmergedIn, isSubmergedInWater, isSupportedBy, isSwimming, isTeammate, isTeamPlayer, isTouchingWater, isTouchingWaterOrRain, isWet, kill, lerpPosAndRotation, lerpYaw, limitFallDistance, lookAt, move, occludeVibrationSignals, offsetX, offsetZ, onBlockCollision, onBubbleColumnCollision, onBubbleColumnSurfaceCollision, onDamaged, onDataTrackerUpdate, onExplodedBy, onKilledOther, onLanding, onPassengerLookAround, onPlayerCollision, onRemoved, onStartedTrackingBy, onStoppedTrackingBy, onStruckByLightning, onSwimmingStart, onTrackedDataSet, playCombinationStepSounds, playExtinguishSound, playSecondaryStepSound, playSound, playSoundIfNotSilent, playStepSound, playSwimSound, playSwimSound, populateCrashReport, positionInPortal, pushAwayFrom, pushOutOfBlocks, raycast, readNbt, recalculateDimensions, refreshPosition, refreshPositionAfterTeleport, refreshPositionAfterTeleport, refreshPositionAndAngles, refreshPositionAndAngles, refreshPositionAndAngles, reinitDimensions, remove, removeAllPassengers, removeCommandTag, removeFromDimension, removePassenger, requestTeleport, requestTeleportAndDismount, requestTeleportOffset, resetPortalCooldown, resetPosition, saveNbt, saveSelfNbt, scheduleVelocityUpdate, sendMessage, setAir, setAngles, setBodyYaw, setBoundingBox, setChangeListener, setCustomName, setCustomNameVisible, setFireTicks, setFlag, setFrozenTicks, setGlowing, setHeadYaw, setId, setInPowderSnow, setInvisible, setInvulnerable, setNoGravity, setOnFire, setOnFireFor, setOnFireForTicks, setOnFireFromLava, setOnGround, setOnGround, setPitch, setPortalCooldown, setPos, setPose, setPosition, setPosition, setRemoved, setRenderDistanceMultiplier, setRotation, setSilent, setSneaking, setSprinting, setSwimming, setUuid, setVelocity, setVelocity, setWorld, setYaw, shouldBroadcastConsoleToOps, shouldControlVehicles, shouldDismountUnderwater, shouldEscapePowderSnow, shouldReceiveFeedback, shouldRender, shouldRenderName, shouldSave, shouldSetPositionOnLoad, shouldSpawnSprintingParticles, shouldTrackOutput, slowMovement, spawnSprintingParticles, squaredDistanceTo, squaredDistanceTo, squaredDistanceTo, startRiding, startRiding, stopRiding, streamPassengersAndSelf, streamSelfAndPassengers, teleport, teleportTo, tickInVoid, tickPortalCooldown, tickPortalTeleportation, tickRiding, toNbtList, toNbtList, toString, tryCheckBlockCollision, tryUsePortal, unsetRemoved, updateEventHandler, updateKilledAdvancementCriterion, updateMovementInFluid, updatePassengerForDismount, updatePassengerPosition, updatePassengerPosition, updatePosition, updatePositionAndAngles, updateSupportingBlockPos, updateSwimming, updateTrackedHeadRotation, updateTrackedPosition, updateTrackedPositionAndAngles, updateVelocity, updateWaterState, writeNbtMethods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, waitMethods inherited from interface net.minecraft.server.command.CommandOutput
cannotBeSilencedMethods inherited from interface net.minecraft.scoreboard.ScoreHolder
getStyledDisplayName
-
Field Details
-
field_30666
private static final double field_30666- See Also:
- Mappings:
Namespace Name Mixin selector named field_30666Lnet/minecraft/entity/projectile/ShulkerBulletEntity;field_30666:Dintermediary field_30666Lnet/minecraft/class_1678;field_30666:Dofficial bLcns;b:D
-
target
- Mappings:
Namespace Name Mixin selector named targetLnet/minecraft/entity/projectile/ShulkerBulletEntity;target:Lnet/minecraft/entity/Entity;intermediary field_7626Lnet/minecraft/class_1678;field_7626:Lnet/minecraft/class_1297;official cLcns;c:Lbsr;
-
direction
- Mappings:
Namespace Name Mixin selector named directionLnet/minecraft/entity/projectile/ShulkerBulletEntity;direction:Lnet/minecraft/util/math/Direction;intermediary field_7628Lnet/minecraft/class_1678;field_7628:Lnet/minecraft/class_2350;official dLcns;d:Lji;
-
stepCount
private int stepCount- Mappings:
Namespace Name Mixin selector named stepCountLnet/minecraft/entity/projectile/ShulkerBulletEntity;stepCount:Iintermediary field_7627Lnet/minecraft/class_1678;field_7627:Iofficial eLcns;e:I
-
targetX
private double targetX- Mappings:
Namespace Name Mixin selector named targetXLnet/minecraft/entity/projectile/ShulkerBulletEntity;targetX:Dintermediary field_7635Lnet/minecraft/class_1678;field_7635:Dofficial fLcns;f:D
-
targetY
private double targetY- Mappings:
Namespace Name Mixin selector named targetYLnet/minecraft/entity/projectile/ShulkerBulletEntity;targetY:Dintermediary field_7633Lnet/minecraft/class_1678;field_7633:Dofficial gLcns;g:D
-
targetZ
private double targetZ- Mappings:
Namespace Name Mixin selector named targetZLnet/minecraft/entity/projectile/ShulkerBulletEntity;targetZ:Dintermediary field_7625Lnet/minecraft/class_1678;field_7625:Dofficial hLcns;h:D
-
targetUuid
- Mappings:
Namespace Name Mixin selector named targetUuidLnet/minecraft/entity/projectile/ShulkerBulletEntity;targetUuid:Ljava/util/UUID;intermediary field_7632Lnet/minecraft/class_1678;field_7632:Ljava/util/UUID;official iLcns;i:Ljava/util/UUID;
-
-
Constructor Details
-
ShulkerBulletEntity
- Mappings:
Namespace Name Mixin selector named <init>Lnet/minecraft/entity/Entity;<init>(Lnet/minecraft/entity/EntityType;Lnet/minecraft/world/World;)Vintermediary <init>Lnet/minecraft/class_1297;<init>(Lnet/minecraft/class_1299;Lnet/minecraft/class_1937;)Vofficial <init>Lbsr;<init>(Lbsx;Ldcw;)V
-
ShulkerBulletEntity
- Mappings:
Namespace Name Mixin selector 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;)Vintermediary <init>Lnet/minecraft/class_1678;<init>(Lnet/minecraft/class_1937;Lnet/minecraft/class_1309;Lnet/minecraft/class_1297;Lnet/minecraft/class_2350$class_2351;)Vofficial <init>Lcns;<init>(Ldcw;Lbtn;Lbsr;Lji$a;)V
-
-
Method Details
-
getSoundCategory
Returns the sound category for sounds from this entity.This is used by
Entity.playSound(SoundEvent, float, float)and defaults toSoundCategory.NEUTRAL. Hostile entities should override this to returnSoundCategory.HOSTILE.- Overrides:
getSoundCategoryin classEntity- Returns:
- the sound category for sounds from this entity
- See Also:
- Mappings:
Namespace Name Mixin selector named getSoundCategoryLnet/minecraft/entity/Entity;getSoundCategory()Lnet/minecraft/sound/SoundCategory;intermediary method_5634Lnet/minecraft/class_1297;method_5634()Lnet/minecraft/class_3419;official deLbsr;de()Lavq;
-
writeCustomDataToNbt
Writes custom data tonbt. 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:
writeCustomDataToNbtin classProjectileEntity- See Also:
- Mappings:
Namespace Name Mixin selector named writeCustomDataToNbtLnet/minecraft/entity/Entity;writeCustomDataToNbt(Lnet/minecraft/nbt/NbtCompound;)Vintermediary method_5652Lnet/minecraft/class_1297;method_5652(Lnet/minecraft/class_2487;)Vofficial bLbsr;b(Lub;)V
-
readCustomDataFromNbt
Reads custom data fromnbt. 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.
nbtmight 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:
readCustomDataFromNbtin classProjectileEntity- See Also:
- Mappings:
Namespace Name Mixin selector named readCustomDataFromNbtLnet/minecraft/entity/Entity;readCustomDataFromNbt(Lnet/minecraft/nbt/NbtCompound;)Vintermediary method_5749Lnet/minecraft/class_1297;method_5749(Lnet/minecraft/class_2487;)Vofficial aLbsr;a(Lub;)V
-
initDataTracker
Initializes data tracker.- Specified by:
initDataTrackerin classEntity- API Note:
- Subclasses should override this and add to the builder any data that needs to be tracked.
- Mappings:
Namespace Name Mixin selector named initDataTrackerLnet/minecraft/entity/Entity;initDataTracker(Lnet/minecraft/entity/data/DataTracker$Builder;)Vintermediary method_5693Lnet/minecraft/class_1297;method_5693(Lnet/minecraft/class_2945$class_9222;)Vofficial aLbsr;a(Laka$a;)V
-
getDirection
- Mappings:
Namespace Name Mixin selector named getDirectionLnet/minecraft/entity/projectile/ShulkerBulletEntity;getDirection()Lnet/minecraft/util/math/Direction;intermediary method_35208Lnet/minecraft/class_1678;method_35208()Lnet/minecraft/class_2350;official pLcns;p()Lji;
-
setDirection
- Mappings:
Namespace Name Mixin selector named setDirectionLnet/minecraft/entity/projectile/ShulkerBulletEntity;setDirection(Lnet/minecraft/util/math/Direction;)Vintermediary method_7487Lnet/minecraft/class_1678;method_7487(Lnet/minecraft/class_2350;)Vofficial aLcns;a(Lji;)V
-
changeTargetDirection
- Mappings:
Namespace Name Mixin selector named changeTargetDirectionLnet/minecraft/entity/projectile/ShulkerBulletEntity;changeTargetDirection(Lnet/minecraft/util/math/Direction$Axis;)Vintermediary method_7486Lnet/minecraft/class_1678;method_7486(Lnet/minecraft/class_2350$class_2351;)Vofficial aLcns;a(Lji$a;)V
-
checkDespawn
public void checkDespawn()Checks whether the entity should be despawned.To despawn this entity, call
Entity.discard().- Overrides:
checkDespawnin classEntity- See Also:
- Mappings:
Namespace Name Mixin selector named checkDespawnLnet/minecraft/entity/Entity;checkDespawn()Vintermediary method_5982Lnet/minecraft/class_1297;method_5982()Vofficial dALbsr;dA()V
-
getGravity
protected double getGravity()- Overrides:
getGravityin classEntity- Mappings:
Namespace Name Mixin selector named getGravityLnet/minecraft/entity/Entity;getGravity()Dintermediary method_7490Lnet/minecraft/class_1297;method_7490()Dofficial aZLbsr;aZ()D
-
tick
public void tick()Ticks this entity.- Overrides:
tickin classProjectileEntity- 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 tickLnet/minecraft/entity/Entity;tick()Vintermediary method_5773Lnet/minecraft/class_1297;method_5773()Vofficial lLbsr;l()V
-
canHit
- Overrides:
canHitin classProjectileEntity- Mappings:
Namespace Name Mixin selector named canHitLnet/minecraft/entity/projectile/ProjectileEntity;canHit(Lnet/minecraft/entity/Entity;)Zintermediary method_26958Lnet/minecraft/class_1676;method_26958(Lnet/minecraft/class_1297;)Zofficial bLcnp;b(Lbsr;)Z
-
isOnFire
public boolean isOnFire()Returns whether the entity is on fire and is not fire immune. -
shouldRender
public boolean shouldRender(double distance) - Overrides:
shouldRenderin classEntity- Mappings:
Namespace Name Mixin selector named shouldRenderLnet/minecraft/entity/Entity;shouldRender(D)Zintermediary method_5640Lnet/minecraft/class_1297;method_5640(D)Zofficial aLbsr;a(D)Z
-
getBrightnessAtEyes
public float getBrightnessAtEyes()- Overrides:
getBrightnessAtEyesin classEntity- Mappings:
Namespace Name Mixin selector named getBrightnessAtEyesLnet/minecraft/entity/Entity;getBrightnessAtEyes()Fintermediary method_5718Lnet/minecraft/class_1297;method_5718()Fofficial buLbsr;bu()F
-
onEntityHit
- Overrides:
onEntityHitin classProjectileEntity- Mappings:
Namespace Name Mixin selector named onEntityHitLnet/minecraft/entity/projectile/ProjectileEntity;onEntityHit(Lnet/minecraft/util/hit/EntityHitResult;)Vintermediary method_7454Lnet/minecraft/class_1676;method_7454(Lnet/minecraft/class_3966;)Vofficial aLcnp;a(Lewz;)V
-
onBlockHit
- Overrides:
onBlockHitin classProjectileEntity- Mappings:
Namespace Name Mixin selector named onBlockHitLnet/minecraft/entity/projectile/ProjectileEntity;onBlockHit(Lnet/minecraft/util/hit/BlockHitResult;)Vintermediary method_24920Lnet/minecraft/class_1676;method_24920(Lnet/minecraft/class_3965;)Vofficial aLcnp;a(Lewy;)V
-
destroy
private void destroy()- Mappings:
Namespace Name Mixin selector named destroyLnet/minecraft/entity/projectile/ShulkerBulletEntity;destroy()Vintermediary method_49723Lnet/minecraft/class_1678;method_49723()Vofficial tLcns;t()V
-
onCollision
- Overrides:
onCollisionin classProjectileEntity- Mappings:
Namespace Name Mixin selector named onCollisionLnet/minecraft/entity/projectile/ProjectileEntity;onCollision(Lnet/minecraft/util/hit/HitResult;)Vintermediary method_7488Lnet/minecraft/class_1676;method_7488(Lnet/minecraft/class_239;)Vofficial aLcnp;a(Lexa;)V
-
canHit
public boolean canHit()Returns whether the entity can be hit with a projectile or be targeted by the player crosshair.- Overrides:
canHitin classProjectileEntity- Returns:
- whether the entity can be hit with a projectile or be targeted by the player crosshair
- Mappings:
Namespace Name Mixin selector named canHitLnet/minecraft/entity/Entity;canHit()Zintermediary method_5863Lnet/minecraft/class_1297;method_5863()Zofficial bALbsr;bA()Z
-
damage
Applies a damage to this entity. The exact implementation differs between subclasses.LivingEntityhas 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
ItemEntityalso have health value, which the overridden method decrements. There also exist several entities, likeEndCrystalEntity, 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:
damagein classEntity- Returns:
- whether the entity was actually damaged
- See Also:
- Mappings:
Namespace Name Mixin selector named damageLnet/minecraft/entity/Entity;damage(Lnet/minecraft/entity/damage/DamageSource;F)Zintermediary method_5643Lnet/minecraft/class_1297;method_5643(Lnet/minecraft/class_1282;F)Zofficial aLbsr;a(Lbrk;F)Z
-
onSpawnPacket
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:
onSpawnPacketin classProjectileEntity- Mappings:
Namespace Name Mixin selector named onSpawnPacketLnet/minecraft/entity/Entity;onSpawnPacket(Lnet/minecraft/network/packet/s2c/play/EntitySpawnS2CPacket;)Vintermediary method_31471Lnet/minecraft/class_1297;method_31471(Lnet/minecraft/class_2604;)Vofficial aLbsr;a(Labv;)V
-