Class BulletEntity

java.lang.Object
net.neoforged.neoforge.attachment.AttachmentHolder
net.minecraft.world.entity.Entity
net.minecraft.world.entity.projectile.Projectile
net.minecraft.world.entity.projectile.arrow.AbstractArrow
net.minecraft.world.entity.projectile.arrow.Arrow
tech.anonymoushacker1279.immersiveweapons.entity.projectile.CustomArrowEntity
tech.anonymoushacker1279.immersiveweapons.entity.projectile.BulletEntity
All Implemented Interfaces:
net.minecraft.core.component.DataComponentGetter, net.minecraft.core.TypedInstance<net.minecraft.world.entity.EntityType<?>>, net.minecraft.network.syncher.SyncedDataHolder, net.minecraft.util.debug.DebugValueSource, net.minecraft.world.entity.ItemOwner, net.minecraft.world.entity.SlotProvider, net.minecraft.world.entity.TraceableEntity, net.minecraft.world.level.entity.EntityAccess, net.minecraft.world.level.entity.UniquelyIdentifyable, net.minecraft.world.Nameable, net.minecraft.world.scores.ScoreHolder, net.neoforged.neoforge.attachment.IAttachmentHolder, net.neoforged.neoforge.common.extensions.IEntityExtension, HitEffectUtils
Direct Known Subclasses:
CannonballEntity, DragonFireballBulletEntity, FlareEntity

public class BulletEntity extends CustomArrowEntity implements HitEffectUtils
  • Nested Class Summary

    Nested Classes
    Modifier and Type
    Class
    Description
    static final record 
     

    Nested classes/interfaces inherited from class CustomArrowEntity

    CustomArrowEntity.ArrowEntityBuilder

    Nested classes/interfaces inherited from class net.minecraft.world.entity.projectile.arrow.AbstractArrow

    net.minecraft.world.entity.projectile.arrow.AbstractArrow.Pickup

    Nested classes/interfaces inherited from class net.minecraft.world.entity.projectile.Projectile

    net.minecraft.world.entity.projectile.Projectile.ProjectileFactory<T>

    Nested classes/interfaces inherited from class net.minecraft.world.entity.Entity

    net.minecraft.world.entity.Entity.Flags, net.minecraft.world.entity.Entity.MoveFunction, net.minecraft.world.entity.Entity.MovementEmission, net.minecraft.world.entity.Entity.RemovalReason

    Nested classes/interfaces inherited from class net.neoforged.neoforge.attachment.AttachmentHolder

    net.neoforged.neoforge.attachment.AttachmentHolder.AsField

    Nested classes/interfaces inherited from interface net.minecraft.util.debug.DebugValueSource

    net.minecraft.util.debug.DebugValueSource.Registration, net.minecraft.util.debug.DebugValueSource.ValueGetter<T>

    Nested classes/interfaces inherited from interface HitEffectUtils

    HitEffectUtils.HitEffect

    Nested classes/interfaces inherited from interface net.minecraft.world.entity.ItemOwner

    net.minecraft.world.entity.ItemOwner.OffsetFromOwner
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    boolean
     
     

    Fields inherited from class net.minecraft.world.entity.projectile.arrow.AbstractArrow

    baseDamage, firedFromWeapon, inGroundTime, lastState, pickup, pickupItemStack, shakeTime

    Fields inherited from class net.minecraft.world.entity.projectile.Projectile

    owner

    Fields inherited from class net.minecraft.world.entity.Entity

    BASE_SAFE_FALL_DISTANCE, BASE_TICKS_REQUIRED_TO_FREEZE, blocksBuilding, BOARDING_COOLDOWN, boardingCooldown, CONTENTS_SLOT_INDEX, DATA_POSE, DATA_SHARED_FLAGS_ID, DEFAULT_BB_HEIGHT, DEFAULT_BB_WIDTH, DELTA_AFFECTED_BY_BLOCKS_BELOW_0_2, DELTA_AFFECTED_BY_BLOCKS_BELOW_0_5, DELTA_AFFECTED_BY_BLOCKS_BELOW_1_0, ENTITY_COUNTER, entityData, fallDistance, firstTick, FLAG_FALL_FLYING, FLAG_GLOWING, FLAG_ONFIRE, flyDist, FREEZE_HURT_FREQUENCY, horizontalCollision, hurtMarked, invulnerableTime, isInPowderSnow, mainSupportingBlockPos, MAX_ENTITY_TAG_COUNT, MAX_MOVEMENTS_HANDELED_PER_TICK, minorHorizontalCollision, moveDist, needsSync, noPhysics, portalProcess, random, stringUUID, stuckSpeedMultiplier, TAG_AIR, TAG_CUSTOM_NAME, TAG_DATA, TAG_FALL_DISTANCE, TAG_FIRE, TAG_GLOWING, TAG_ID, TAG_INVULNERABLE, TAG_MOTION, TAG_NO_GRAVITY, TAG_ON_GROUND, TAG_PASSENGERS, TAG_PORTAL_COOLDOWN, TAG_POS, TAG_ROTATION, TAG_SILENT, TAG_UUID, tickCount, TOTAL_AIR_SUPPLY, uuid, verticalCollision, verticalCollisionBelow, wasEyeInWater, wasInPowderSnow, wasTouchingWater, xo, xOld, xRotO, yo, yOld, yRotO, zo, zOld

    Fields inherited from class net.neoforged.neoforge.attachment.AttachmentHolder

    ATTACHMENTS_NBT_KEY

    Fields inherited from interface net.minecraft.world.scores.ScoreHolder

    WILDCARD, WILDCARD_NAME
  • Constructor Summary

    Constructors
    Constructor
    Description
    BulletEntity(net.minecraft.world.entity.EntityType<? extends net.minecraft.world.entity.projectile.arrow.Arrow> entityType, net.minecraft.world.level.Level level)
     
    BulletEntity(net.minecraft.world.entity.EntityType<? extends BulletEntity> entityType, net.minecraft.world.entity.LivingEntity shooter, net.minecraft.world.level.Level level, @Nullable net.minecraft.world.item.ItemStack firedFromWeapon)
     
  • Method Summary

    Modifier and Type
    Method
    Description
    float
     
    protected void
    doWhenHitEntity(net.minecraft.world.entity.Entity entity)
    Additional stuff to do when an entity is hit.
    protected void
    Additional stuff to do while ticking.
    net.minecraft.world.damagesource.DamageSource
    getDamageSource(@Nullable net.minecraft.world.entity.Entity owner)
     
    protected net.minecraft.sounds.SoundEvent
     
    protected void
    onHit(net.minecraft.world.phys.HitResult result)
     
    protected void
    onHitBlock(net.minecraft.world.phys.BlockHitResult hitResult)
     
    protected void
     

    Methods inherited from class net.minecraft.world.entity.projectile.arrow.Arrow

    addEffect, defineSynchedData, doPostHurtEffects, getColor, getDefaultPickupItem, handleEntityEvent, setPickupItemStack

    Methods inherited from class net.minecraft.world.entity.projectile.arrow.AbstractArrow

    addAdditionalSaveData, canHitEntity, doKnockback, findHitEntities, findHitEntity, getDefaultGravity, getHitGroundSoundEvent, getMovementEmission, getPickupItemStackOrigin, getPierceLevel, getSlot, getWaterInertia, getWeaponItem, hitBlockEnchantmentEffects, isAttackable, isCritArrow, isInGround, isNoPhysics, isPickable, isPushedByFluid, lerpMotion, move, onAboveBubbleColumn, onInsideBubbleColumn, onItemBreak, onSyncedDataUpdated, playerTouch, push, readAdditionalSaveData, resetPiercedEntities, setBaseDamage, setBaseDamageFromMob, setCritArrow, setInGround, setNoPhysics, setOwner, setPierceLevel, setSoundEvent, shoot, shouldBounceOnWorldBorder, shouldRenderAtSqrDistance, tryPickup

    Methods inherited from class net.minecraft.world.entity.projectile.Projectile

    applyOnProjectileSpawned, calculateHorizontalHurtKnockbackDirection, checkLeftOwner, deflect, getDimensionChangingDelay, getEffectSource, getOwner, getPickRadius, hitTargetOrDeflectSelf, hurtServer, lerpRotation, mayBreak, mayInteract, onDeflection, ownedBy, recreateFromPacket, restoreFrom, setOwner, shootFromRotation, spawnProjectile, spawnProjectile, spawnProjectileFromRotation, spawnProjectileUsingShoot, spawnProjectileUsingShoot, updateRotation

    Methods inherited from class net.minecraft.world.entity.Entity

    absSnapRotationTo, absSnapTo, absSnapTo, addDeltaMovement, addPassenger, addTag, adjustSpawnLocation, animateHurt, applyComponentsFromItemStack, applyEffectsFromBlocks, applyEffectsFromBlocks, applyEffectsFromBlocksForLastMovements, applyGravity, applyImplicitComponent, applyImplicitComponentIfPresent, applyImplicitComponents, awardKillScore, baseTick, belowNameDisplay, blockPosition, broadcastToPlayer, calculateUpVector, calculateViewVector, canAddPassenger, canBeCollidedWith, canBeHitByProjectile, canCollideWith, canControlVehicle, canFreeze, canInteractWithLevel, canRide, canSimulateMovement, canSpawnSprintParticle, canSprint, canTeleport, canTrample, canUsePortal, captureDrops, captureDrops, castComponentValue, causeFallDamage, checkBelowWorld, checkDespawn, checkFallDamage, checkFallDistanceAccumulation, checkSupportingBlock, chunkPosition, clearFire, clearFreeze, clearMovementThisTick, closerThan, closerThan, collectAllColliders, collideBoundingBox, collidedWithFluid, collidedWithShapeMovingFrom, computeSpeed, considersEntityAsAlly, copyPosition, couldAcceptPassenger, countPlayerPassengers, createCommandSourceStackForNameResolution, createHoverEvent, damageSources, dampensVibrations, deflection, discard, dismountsUnderwater, dismountTo, displayFireAnimation, distanceTo, distanceToSqr, distanceToSqr, distanceToSqr, doCheckFallDamage, doWaterSplashEffect, dropAllLeashConnections, ejectPassengers, entityTags, equals, extinguishFire, fillCrashReportCategory, fireImmune, fixupDimensions, forceSetRotation, fudgePositionAfterSizeChange, gameEvent, gameEvent, get, getAirSupply, getAttachments, getAvailableSpaceBelow, getBbHeight, getBbWidth, getBlockExplosionResistance, getBlockJumpFactor, getBlockPosBelowThatAffectsMyMovement, getBlockSpeedFactor, getBlockStateOn, getBlockStateOnLegacy, getBlockX, getBlockY, getBlockZ, getBoundingBox, getCapability, getCapability, getCollisionHorizontalEscapeVector, getControlledVehicle, getControllingPassenger, getCustomName, getDefaultPassengerAttachmentPoint, getDeltaMovement, getDimensions, getDirection, getDismountLocationForPassenger, getDisplayName, getEncodeId, getEntityData, getEyeHeight, getEyeHeight, getEyePosition, getEyePosition, getEyeY, getFireImmuneTicks, getFirstPassenger, getFluidHeight, getFluidInteractionBox, getFluidJumpThreshold, getForward, getGravity, getHandHoldingItemAngle, getHeadLookAngle, getId, getInBlockState, getIndirectPassengers, getInputVector, getInterpolation, getKnownMovement, getKnownSpeed, getLightLevelDependentMagicValue, getLightProbePosition, getLookAngle, getLootTable, getMaxAirSupply, getMaxFallDistance, getMotionDirection, getName, getNearestViewDirection, getOnPos, getOnPos, getOnPosLegacy, getPassengerAttachmentPoint, getPassengerRidingPosition, getPassengers, getPassengersAndSelf, getPercentFrozen, getPersistentData, getPickResult, getPistonPushReaction, getPortalCooldown, getPose, getPosition, getPositionCodec, getPreciseBodyRotation, getPrimaryStepSoundBlockPos, getQuadLeashHolderOffsets, getRandom, getRandomX, getRandomY, getRandomY, getRandomZ, getRelativePortalPosition, getRemainingFireTicks, getRemovalReason, getRequiresPrecisePosition, getRootVehicle, getRopeHoldPosition, getRotationVector, getScoreboardName, getSelfAndPassengers, getSharedFlag, getSoundSource, getStringUUID, getSwimHighSpeedSplashSound, getSwimSound, getSwimSplashSound, getTeam, getTeamColor, getTicksFrozen, getTicksRequiredToFreeze, getType, getTypeName, getUpVector, getUUID, getVehicle, getVehicleAttachmentPoint, getViewScale, getViewVector, getViewXRot, getViewYRot, getVisualRotationYInDegrees, getX, getX, getXRot, getXRot, getY, getY, getYHeadRot, getYRot, getYRot, getZ, getZ, handleDamageEvent, handleOnAboveBubbleColumn, handleOnInsideBubbleColumn, handlePortal, hasControllingPassenger, hasCustomName, hasExactlyOnePlayerPassenger, hasGlowingTag, hashCode, hasIndirectPassenger, hasMovedHorizontallyRecently, hasPassenger, hasPassenger, hasPose, hurt, hurtClient, hurtOrSimulate, igniteForSeconds, igniteForTicks, ignoreExplosion, interact, is, isAddedToLevel, isAffectedByBlocks, isAlive, isAlliedTo, isAlliedTo, isAlwaysTicking, isClientAuthoritative, isColliding, isCrouching, isCurrentlyGlowing, isCustomNameVisible, isDescending, isDiscrete, isEffectiveAi, isEyeInFluid, isFlapping, isFlyingVehicle, isFree, isFreezing, isFullyFrozen, isHorizontalCollisionMinor, isIgnoringBlockTriggers, isInClouds, isInLava, isInLiquid, isInShallowWater, isInterpolating, isInvisible, isInvisibleTo, isInvulnerable, isInvulnerableToBase, isInWall, isInWater, isInWaterOrRain, isLocalClientAuthoritative, isLocalInstanceAuthoritative, isNoGravity, isOnFire, isOnPortalCooldown, isOnRails, isPassenger, isPassengerOfSameVehicle, isPushable, isRemoved, isShiftKeyDown, isSilent, isSpectator, isSprinting, isSteppingCarefully, isSupportedBy, isSuppressingBounce, isSwimming, isUnderWater, isVehicle, isVisuallyCrawling, isVisuallySwimming, kill, killedEntity, lavaHurt, lavaIgnite, lerpHeadTo, lerpPositionAndRotationStep, level, limitPistonMovement, load, lookAt, makeBoundingBox, makeBoundingBox, makeStuckInBlock, markHurt, maxUpStep, maybeBackOffFromEdge, mirror, modifyPassengerFluidInteractionBox, moveOrInterpolateTo, moveOrInterpolateTo, moveOrInterpolateTo, moveOrInterpolateTo, moveRelative, moveTowardsClosestSpace, nextStep, notifyLeasheeRemoved, notifyLeashHolder, oldPosition, onAddedToLevel, onBelowWorld, onClientRemoval, onExplosionHit, onFlap, onGround, onInsideBlock, onPassengerTurned, onRemoval, onRemovedFromLevel, onSyncedDataUpdated, pick, placePortalTicket, playCombinationStepSounds, playEntityOnFireExtinguishedSound, playMuffledStepSound, playSound, playSound, playStepSound, playSwimSound, position, positionRider, positionRider, problemPath, processFlappingMovement, processPortalCooldown, propagateFallToPassengers, push, push, reapplyPosition, refreshDimensions, registerDebugValues, registryAccess, remove, removeAfterChangingDimensions, removeLatestMovementRecording, removePassenger, removeTag, removeVehicle, repositionEntityAfterLoad, resetFallDistance, revive, rideTick, rotate, save, saveAsPassenger, saveWithoutId, sendBubbleColumnParticles, setAirSupply, setAsInsidePortal, setBoundingBox, setComponent, setCustomName, setCustomNameVisible, setData, setDeltaMovement, setDeltaMovement, setGlowingTag, setId, setInvisible, setInvulnerable, setIsInPowderSnow, setLevel, setLevelCallback, setNoGravity, setOldPos, setOldPosAndRot, setOldPosAndRot, setOldRot, setOnGround, setOnGroundWithMovement, setOnGroundWithMovement, setPortalCooldown, setPortalCooldown, setPos, setPos, setPose, setPosRaw, setRemainingFireTicks, setRemoved, setRequiresPrecisePosition, setRot, setSharedFlag, setSharedFlagOnFire, setShiftKeyDown, setSilent, setSprinting, setSwimming, setTicksFrozen, setUUID, setViewScale, setXRot, setYBodyRot, setYHeadRot, setYRot, shearOffAllLeashConnections, shouldBeSaved, shouldBlockExplode, shouldPlayLavaHurtSound, shouldRender, shouldShowName, showVehicleHealth, skipAttackInteraction, snapTo, snapTo, snapTo, snapTo, snapTo, spawnAtLocation, spawnAtLocation, spawnAtLocation, spawnAtLocation, spawnSprintParticle, startRiding, startRiding, startSeenByPlayer, stopRiding, stopSeenByPlayer, supportQuadLeashAsHolder, syncData, syncPacketPositionCodec, teleport, teleportRelative, teleportSetPosition, teleportSetPosition, teleportSpectators, teleportTo, teleportTo, thunderHit, toString, touchingUnloadedChunk, trackingPosition, turn, typeHolder, unRide, unsetRemoved, updateDataBeforeSync, updateDynamicGameEventListener, updateFluidInteraction, updateSwimming, waterSwimSound

    Methods inherited from class net.neoforged.neoforge.attachment.AttachmentHolder

    deserializeAttachments, getData, getExistingDataOrNull, hasAttachments, hasData, removeData, serializeAttachments

    Methods inherited from class Object

    clone, finalize, getClass, notify, notifyAll, wait, wait, wait

    Methods inherited from interface net.minecraft.core.component.DataComponentGetter

    get, getOrDefault, getOrDefault, getTyped, has, has

    Methods inherited from interface net.neoforged.neoforge.attachment.IAttachmentHolder

    getData, getExistingData, getExistingData, getExistingDataOrNull, hasData, removeData, setData, syncData

    Methods inherited from interface net.neoforged.neoforge.common.extensions.IEntityExtension

    canBeRiddenUnderFluidType, canFluidExtinguish, canHydrateInFluidType, canRiderInteract, canSwimInFluidType, copyAttachmentsFrom, getClassification, getFluidFallDistanceModifier, getFluidMotionScale, getParts, getSoundFromFluidType, hasCustomOutlineRendering, isMultipartEntity, isPushedByFluid, sendPairingData, shouldRiderSit

    Methods inherited from interface net.minecraft.world.entity.ItemOwner

    asLivingEntity

    Methods inherited from interface net.minecraft.world.Nameable

    getPlainTextName

    Methods inherited from interface net.minecraft.world.scores.ScoreHolder

    getFeedbackDisplayName

    Methods inherited from interface net.minecraft.world.entity.SlotProvider

    getSlotsFromRange

    Methods inherited from interface net.minecraft.core.TypedInstance

    is, is, is, is, is, tags
  • Field Details

  • Constructor Details

    • BulletEntity

      public BulletEntity(net.minecraft.world.entity.EntityType<? extends net.minecraft.world.entity.projectile.arrow.Arrow> entityType, net.minecraft.world.level.Level level)
    • BulletEntity

      public BulletEntity(net.minecraft.world.entity.EntityType<? extends BulletEntity> entityType, net.minecraft.world.entity.LivingEntity shooter, net.minecraft.world.level.Level level, @Nullable @Nullable net.minecraft.world.item.ItemStack firedFromWeapon)
  • Method Details

    • calculateDamage

      public float calculateDamage()
    • onHitBlock

      protected void onHitBlock(net.minecraft.world.phys.BlockHitResult hitResult)
      Overrides:
      onHitBlock in class net.minecraft.world.entity.projectile.arrow.AbstractArrow
    • onHit

      protected void onHit(net.minecraft.world.phys.HitResult result)
      Overrides:
      onHit in class CustomArrowEntity
    • doWhenHitEntity

      protected void doWhenHitEntity(net.minecraft.world.entity.Entity entity)
      Description copied from class: CustomArrowEntity
      Additional stuff to do when an entity is hit.
      Overrides:
      doWhenHitEntity in class CustomArrowEntity
      Parameters:
      entity - the Entity being hit
    • getDefaultHitGroundSoundEvent

      protected net.minecraft.sounds.SoundEvent getDefaultHitGroundSoundEvent()
      Overrides:
      getDefaultHitGroundSoundEvent in class net.minecraft.world.entity.projectile.arrow.AbstractArrow
    • getDamageSource

      public net.minecraft.world.damagesource.DamageSource getDamageSource(@Nullable @Nullable net.minecraft.world.entity.Entity owner)
      Overrides:
      getDamageSource in class CustomArrowEntity
    • doWhileTicking

      protected void doWhileTicking()
      Description copied from class: CustomArrowEntity
      Additional stuff to do while ticking. Runs early in the tick method.
      Overrides:
      doWhileTicking in class CustomArrowEntity
    • tickDespawn

      protected void tickDespawn()
      Overrides:
      tickDespawn in class net.minecraft.world.entity.projectile.arrow.AbstractArrow