Class AbstractPlantProjectile

java.lang.Object
net.minecraftforge.common.capabilities.CapabilityProvider<net.minecraft.world.entity.Entity>
net.minecraft.world.entity.Entity
net.minecraft.world.entity.projectile.Projectile
nokunami.floral_warfare.common.entity.projectile.AbstractPlantProjectile
All Implemented Interfaces:
net.minecraft.commands.CommandSource, net.minecraft.world.entity.TraceableEntity, net.minecraft.world.level.entity.EntityAccess, net.minecraft.world.Nameable, net.minecraftforge.common.capabilities.ICapabilityProvider, net.minecraftforge.common.capabilities.ICapabilityProviderImpl<net.minecraft.world.entity.Entity>, net.minecraftforge.common.capabilities.ICapabilitySerializable<net.minecraft.nbt.CompoundTag>, net.minecraftforge.common.extensions.IForgeEntity, net.minecraftforge.common.util.INBTSerializable<net.minecraft.nbt.CompoundTag>
Direct Known Subclasses:
AbstractLobbingProjectile, ElectricPeaProjectile, OldSolarPeaProjectile, PeaProjectile, PuffSporeProjectile, ScatterPumpkinBombProjectile, ShodowPeaProjectile, StingerProjectile

public class AbstractPlantProjectile extends net.minecraft.world.entity.projectile.Projectile
  • Nested Class Summary

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

    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.minecraftforge.common.capabilities.CapabilityProvider

    net.minecraftforge.common.capabilities.CapabilityProvider.AsField<B extends net.minecraftforge.common.capabilities.ICapabilityProviderImpl<B>>
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    final Set<net.minecraft.world.effect.MobEffectInstance>
     
    final it.unimi.dsi.fastutil.ints.IntOpenHashSet
     
    boolean
     
    int
     
    net.minecraft.world.level.block.state.BlockState
     
    List<net.minecraft.world.entity.Entity>
     
    it.unimi.dsi.fastutil.ints.IntOpenHashSet
     
    net.minecraft.world.item.alchemy.Potion
     

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

    BASE_TICKS_REQUIRED_TO_FREEZE, blocksBuilding, BOARDING_COOLDOWN, boardingCooldown, BREATHING_DISTANCE_BELOW_EYES, 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, fluidHeight, flyDist, forgeFluidTypeHeight, FREEZE_HURT_FREQUENCY, hasImpulse, horizontalCollision, hurtMarked, ID_TAG, invulnerableTime, isInPowderSnow, isInsidePortal, mainSupportingBlockPos, MAX_ENTITY_TAG_COUNT, minorHorizontalCollision, moveDist, noCulling, noPhysics, PASSENGERS_TAG, portalEntrancePos, portalTime, random, stringUUID, stuckSpeedMultiplier, tickCount, TOTAL_AIR_SUPPLY, uuid, UUID_TAG, verticalCollision, verticalCollisionBelow, walkDist, walkDistO, wasEyeInWater, wasInPowderSnow, wasOnFire, wasTouchingWater, xo, xOld, xRotO, yo, yOld, yRotO, zo, zOld

    Fields inherited from interface net.minecraft.commands.CommandSource

    NULL
  • Constructor Summary

    Constructors
    Modifier
    Constructor
    Description
    protected
    AbstractPlantProjectile(net.minecraft.world.entity.EntityType<? extends net.minecraft.world.entity.projectile.Projectile> type, double pX, double pY, double pZ, net.minecraft.world.level.Level level)
     
     
    AbstractPlantProjectile(net.minecraft.world.entity.EntityType<? extends net.minecraft.world.entity.projectile.Projectile> type, net.minecraft.world.entity.LivingEntity shooter, net.minecraft.world.level.Level level)
     
     
    AbstractPlantProjectile(net.minecraft.world.entity.EntityType<? extends net.minecraft.world.entity.projectile.Projectile> type, net.minecraft.world.level.Level level)
     
  • Method Summary

    Modifier and Type
    Method
    Description
    protected void
    addAdditionalSaveData(@NotNull net.minecraft.nbt.CompoundTag tag)
     
    void
    addBaseDamage(double damage)
     
    void
    addBonusDamage(double damage)
     
    void
     
    protected boolean
    canHitEntity(@NotNull net.minecraft.world.entity.Entity target)
     
    convertProjectile(net.minecraft.world.entity.EntityType<?> type)
     
    protected boolean
    damageEntity(net.minecraft.world.entity.Entity entity)
     
    protected void
     
    void
    doPostHurtEffects(net.minecraft.world.entity.LivingEntity target)
     
    extraData(T type)
     
    protected net.minecraft.world.phys.EntityHitResult
    findHitEntity(net.minecraft.world.phys.Vec3 startVec, net.minecraft.world.phys.Vec3 endVec)
     
    net.minecraft.world.entity.Entity
     
    double
     
    double
     
    net.minecraft.world.damagesource.DamageSource
     
    float
     
    double
     
    boolean
     
    net.minecraft.sounds.SoundEvent
     
    int
     
    int
     
    net.minecraft.world.phys.Vec3
     
    void
    handleDamageInvulnerability(net.minecraft.world.entity.Entity entity)
     
    void
     
    boolean
     
    boolean
     
    boolean
     
    boolean
     
    boolean
     
    void
     
    void
    move(@NotNull net.minecraft.world.entity.MoverType type, @NotNull net.minecraft.world.phys.Vec3 pos)
     
    protected void
    onHitBlock(@NotNull net.minecraft.world.phys.BlockHitResult result)
     
    protected void
    onHitEntity(@NotNull net.minecraft.world.phys.EntityHitResult result)
     
    protected void
    readAdditionalSaveData(@NotNull net.minecraft.nbt.CompoundTag tag)
     
    boolean
     
    void
     
    void
    setBaseDamage(double damage)
     
    void
    setBlockCollision(boolean collision)
     
    void
    setBonusDamage(double damage)
     
    void
    setDamageSource(net.minecraft.resources.ResourceKey<net.minecraft.world.damagesource.DamageType> source)
     
    void
    setDamageSource(net.minecraft.resources.ResourceKey<net.minecraft.world.damagesource.DamageType> source, net.minecraft.world.entity.Entity entity)
     
    void
    setDamageSourceRaw(net.minecraft.world.damagesource.DamageSource source)
     
    void
    setDespawnDistance(float distance)
     
    void
    setDespawnWhenDistant(boolean despawnWhenDistant)
     
    void
    setEntityCollision(boolean collision)
     
    void
    setHitTrigger(boolean trigger)
     
    void
    setImpactSound(Supplier<? extends net.minecraft.sounds.SoundEvent> soundEvent)
     
    void
    setImpactSound(net.minecraft.sounds.SoundEvent pSoundEvent)
     
    void
    setKnockback(int knockback)
     
    void
    setNoPhysics(boolean tooClose)
     
    void
    setPierceLevel(int pierce)
     
    void
    setSpawnPos(net.minecraft.world.phys.Vec3 pos)
     
    void
    shootStraightProjectile(net.minecraft.world.entity.Entity shooter, float velocity, double yOffset)
     
    void
    shootStraightProjectile(net.minecraft.world.entity.Entity shooter, float velocity, double yOffset, double zOffset)
     
    void
    shootStraightProjectile(net.minecraft.world.entity.Entity shooter, float velocity, double yOffset, double zOffset, double close, double tooClose)
     
    void
    shouldDespawnWhenDistant(boolean despawn, double despawnDistance)
     
    boolean
     
    boolean
    shouldRenderAtSqrDistance(double pDistance)
     
    void
     
    void
     
    void
     

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

    getAddEntityPacket, getEffectSource, getOwner, lerpMotion, lerpRotation, mayInteract, onHit, ownedBy, recreateFromPacket, setOwner, shoot, shootFromRotation, updateRotation

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

    absMoveTo, absMoveTo, acceptsFailure, acceptsSuccess, addDeltaMovement, addPassenger, addTag, animateHurt, awardKillScore, baseTick, blockPosition, broadcastToPlayer, calculateUpVector, calculateViewVector, canAddPassenger, canBeCollidedWith, canBeHitByProjectile, canChangeDimensions, canCollideWith, canEnterPose, canFreeze, canRide, canSpawnSprintParticle, canSprint, canTrample, canUpdate, canUpdate, captureDrops, captureDrops, causeFallDamage, changeDimension, changeDimension, checkBelowWorld, checkDespawn, checkFallDamage, checkInsideBlocks, checkSlowFallDistance, checkSupportingBlock, chunkPosition, clearFire, closerThan, closerThan, collideBoundingBox, copyPosition, couldAcceptPassenger, createCommandSourceStack, createHoverEvent, damageSources, dampensVibrations, discard, dismountsUnderwater, dismountTo, displayFireAnimation, distanceTo, distanceToSqr, distanceToSqr, distanceToSqr, doEnchantDamageEffects, doWaterSplashEffect, ejectPassengers, equals, extinguishFire, fillCrashReportCategory, findDimensionEntryPoint, fireImmune, fixupDimensions, gameEvent, gameEvent, getAirSupply, getAllSlots, getArmorSlots, getBbHeight, getBbWidth, getBlockExplosionResistance, getBlockJumpFactor, getBlockPosBelowThatAffectsMyMovement, getBlockSpeedFactor, getBlockStateOn, getBlockStateOnLegacy, getBlockX, getBlockY, getBlockZ, getBoundingBox, getBoundingBoxForCulling, getBoundingBoxForPose, getCollisionHorizontalEscapeVector, getCommandSenderWorld, getControlledVehicle, getControllingPassenger, getCustomName, getDeltaMovement, getDimensionChangingDelay, getDimensions, getDimensionsForge, getDirection, getDismountLocationForPassenger, getDisplayName, getEncodeId, getEntityData, getExitPortal, getEyeHeight, getEyeHeight, getEyeHeight, getEyeHeightAccess, getEyeInFluidType, getEyePosition, getEyePosition, getEyeY, getFeetBlockState, getFireImmuneTicks, getFirstPassenger, getFluidHeight, getFluidJumpThreshold, getFluidTypeHeight, getForward, getHandHoldingItemAngle, getHandSlots, getId, getIndirectPassengers, getLeashOffset, getLeashOffset, getLightLevelDependentMagicValue, getLightProbePosition, getLookAngle, getMaxAirSupply, getMaxFallDistance, getMaxHeightFluidType, getMotionDirection, getMovementEmission, getMyRidingOffset, getName, getNameTagOffsetY, getOnPos, getOnPos, getOnPosLegacy, getPassengers, getPassengersAndSelf, getPassengersRidingOffset, getPercentFrozen, getPermissionLevel, getPersistentData, getPickRadius, getPickResult, getPistonPushReaction, getPortalCooldown, getPortalWaitTime, getPose, getPosition, getPositionCodec, getPrimaryStepSoundBlockPos, getRandomX, getRandomY, getRandomZ, getRelativePortalPosition, getRemainingFireTicks, getRemovalReason, getRootVehicle, getRopeHoldPosition, getRotationVector, getScoreboardName, getSelfAndPassengers, getServer, getSharedFlag, getSlot, getSoundSource, getStringUUID, getSwimHighSpeedSplashSound, getSwimSound, getSwimSplashSound, getTags, getTeam, getTeamColor, getTicksFrozen, getTicksRequiredToFreeze, getType, getTypeName, getUpVector, getUUID, getVehicle, getViewScale, getViewVector, getViewXRot, getViewYRot, getVisualRotationYInDegrees, getX, getX, getXRot, getY, getY, getYHeadRot, getYRot, getZ, getZ, handleDamageEvent, handleInsidePortal, handleNetherPortal, hasControllingPassenger, hasCustomName, hasExactlyOnePlayerPassenger, hasGlowingTag, hashCode, hasIndirectPassenger, hasPassenger, hasPassenger, hasPermissions, hasPose, hurt, ignoreExplosion, interact, interactAt, is, isAddedToWorld, isAlive, isAlliedTo, isAlliedTo, isAlwaysTicking, isColliding, isControlledByLocalInstance, isCrouching, isCurrentlyGlowing, isCustomNameVisible, isDescending, isDiscrete, isEffectiveAi, isEyeInFluid, isFlapping, isFree, isFreezing, isFullyFrozen, isHorizontalCollisionMinor, isIgnoringBlockTriggers, isInFluidType, isInFluidType, isInLava, isInvisible, isInvisibleTo, isInvulnerable, isInvulnerableTo, isInWall, isInWater, isInWaterOrBubble, isInWaterOrRain, isInWaterRainOrBubble, isNoGravity, isOnFire, isOnPortalCooldown, isOnRails, isPassenger, isPassengerOfSameVehicle, isPickable, isPushable, isPushedByFluid, isRemoved, isShiftKeyDown, isSilent, isSpectator, isSprinting, isSteppingCarefully, isSupportedBy, isSuppressingBounce, isSwimming, isUnderWater, isVehicle, isVisuallyCrawling, isVisuallySwimming, kill, killedEntity, lavaHurt, lerpHeadTo, lerpTo, level, limitPistonMovement, load, lookAt, makeBoundingBox, makeStuckInBlock, markHurt, maxUpStep, maybeBackOffFromEdge, mirror, moveRelative, moveTo, moveTo, moveTo, moveTo, moveTowardsClosestSpace, newDoubleList, newFloatList, nextStep, onAboveBubbleCol, onAddedToWorld, onBelowWorld, onClientRemoval, onFlap, onGround, onInsideBlock, onInsideBubbleColumn, onlyOpCanSetNbt, onPassengerTurned, onRemovedFromWorld, onSyncedDataUpdated, onSyncedDataUpdated, pick, playCombinationStepSounds, playEntityOnFireExtinguishedSound, playerTouch, playMuffledStepSound, playSound, playSound, playStepSound, playSwimSound, position, positionRider, positionRider, processFlappingMovement, processPortalCooldown, push, push, reapplyPosition, refreshDimensions, remove, removeAfterChangingDimensions, removePassenger, removeTag, removeVehicle, repositionEntityAfterLoad, resetFallDistance, restoreFrom, revive, rideTick, rotate, save, saveAsPassenger, saveWithoutId, sendSystemMessage, setAirSupply, setBoundingBox, setCustomName, setCustomNameVisible, setDeltaMovement, setDeltaMovement, setFluidTypeHeight, setGlowingTag, setId, setInvisible, setInvulnerable, setIsInPowderSnow, setItemSlot, setLevel, setLevelCallback, setMaxUpStep, setNoGravity, setOldPosAndRot, setOnGround, setOnGroundWithKnownMovement, setPortalCooldown, setPortalCooldown, setPos, setPos, setPose, setPosRaw, setRemainingFireTicks, setRemoved, setRot, setSecondsOnFire, setSharedFlag, setSharedFlagOnFire, setShiftKeyDown, setSilent, setSprinting, setSwimming, setTicksFrozen, setUUID, setViewScale, setXRot, setYBodyRot, setYHeadRot, setYRot, shouldBeSaved, shouldBlockExplode, shouldInformAdmins, shouldRender, shouldShowName, showVehicleHealth, skipAttackInteraction, spawnAtLocation, spawnAtLocation, spawnAtLocation, spawnAtLocation, spawnSprintParticle, startRiding, startRiding, startSeenByPlayer, stopRiding, stopSeenByPlayer, syncPacketPositionCodec, teleportRelative, teleportTo, teleportTo, teleportToWithTicket, thunderHit, toString, touchingUnloadedChunk, trackingPosition, tryCheckInsideBlocks, turn, unRide, unsetRemoved, updateDynamicGameEventListener, updateFluidHeightAndDoFluidPushing, updateFluidHeightAndDoFluidPushing, updateFluidHeightAndDoFluidPushing, updateInWaterStateAndDoFluidPushing, updateSwimming, waterSwimSound

    Methods inherited from class net.minecraftforge.common.capabilities.CapabilityProvider

    areCapsCompatible, areCapsCompatible, deserializeCaps, gatherCapabilities, gatherCapabilities, gatherCapabilities, getCapabilities, getCapability, invalidateCaps, reviveCaps, serializeCaps

    Methods inherited from class java.lang.Object

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

    Methods inherited from interface net.minecraft.commands.CommandSource

    alwaysAccepts

    Methods inherited from interface net.minecraftforge.common.capabilities.ICapabilityProvider

    getCapability, getCapability

    Methods inherited from interface net.minecraftforge.common.extensions.IForgeEntity

    canBeRiddenUnderFluidType, canFluidExtinguish, canHydrateInFluidType, canRiderInteract, canStartSwimming, canSwimInFluidType, deserializeNBT, getClassification, getEyeHeightForge, getFluidFallDistanceModifier, getFluidMotionScale, getParts, getPickedResult, getSoundFromFluidType, getStepHeight, hasCustomOutlineRendering, isEyeInFluidType, isInFluidType, isInFluidType, isInFluidType, isMultipartEntity, isPushedByFluid, serializeNBT, shouldRiderSit, shouldUpdateFluidWhileBoating
  • Field Details

    • potion

      public net.minecraft.world.item.alchemy.Potion potion
    • effects

      public final Set<net.minecraft.world.effect.MobEffectInstance> effects
    • piercingIgnore

      @Nullable public it.unimi.dsi.fastutil.ints.IntOpenHashSet piercingIgnore
    • piercedAndKilled

      @Nullable public List<net.minecraft.world.entity.Entity> piercedAndKilled
    • ignoredEntities

      public final it.unimi.dsi.fastutil.ints.IntOpenHashSet ignoredEntities
    • inGround

      public boolean inGround
    • lastState

      public net.minecraft.world.level.block.state.BlockState lastState
    • inGroundTime

      public int inGroundTime
  • Constructor Details

    • AbstractPlantProjectile

      public AbstractPlantProjectile(net.minecraft.world.entity.EntityType<? extends net.minecraft.world.entity.projectile.Projectile> type, net.minecraft.world.level.Level level)
    • AbstractPlantProjectile

      protected AbstractPlantProjectile(net.minecraft.world.entity.EntityType<? extends net.minecraft.world.entity.projectile.Projectile> type, double pX, double pY, double pZ, net.minecraft.world.level.Level level)
    • AbstractPlantProjectile

      public AbstractPlantProjectile(net.minecraft.world.entity.EntityType<? extends net.minecraft.world.entity.projectile.Projectile> type, net.minecraft.world.entity.LivingEntity shooter, net.minecraft.world.level.Level level)
  • Method Details

    • shootStraightProjectile

      public void shootStraightProjectile(net.minecraft.world.entity.Entity shooter, float velocity, double yOffset)
    • shootStraightProjectile

      public void shootStraightProjectile(net.minecraft.world.entity.Entity shooter, float velocity, double yOffset, double zOffset)
    • shootStraightProjectile

      public void shootStraightProjectile(net.minecraft.world.entity.Entity shooter, float velocity, double yOffset, double zOffset, double close, double tooClose)
    • handleEntityEvent

      public void handleEntityEvent(byte pId)
      Overrides:
      handleEntityEvent in class net.minecraft.world.entity.Entity
    • sendParticlesEvent

      public void sendParticlesEvent()
    • defineSynchedData

      protected void defineSynchedData()
      Specified by:
      defineSynchedData in class net.minecraft.world.entity.Entity
    • addAdditionalSaveData

      protected void addAdditionalSaveData(@NotNull @NotNull net.minecraft.nbt.CompoundTag tag)
      Overrides:
      addAdditionalSaveData in class net.minecraft.world.entity.projectile.Projectile
    • readAdditionalSaveData

      protected void readAdditionalSaveData(@NotNull @NotNull net.minecraft.nbt.CompoundTag tag)
      Overrides:
      readAdditionalSaveData in class net.minecraft.world.entity.projectile.Projectile
    • setBaseDamage

      public void setBaseDamage(double damage)
    • getBaseDamage

      public double getBaseDamage()
    • addBaseDamage

      public void addBaseDamage(double damage)
    • setBonusDamage

      public void setBonusDamage(double damage)
    • getBonusDamage

      public double getBonusDamage()
    • addBonusDamage

      public void addBonusDamage(double damage)
    • getFinalDamage

      public double getFinalDamage()
    • setDamageSource

      public void setDamageSource(net.minecraft.resources.ResourceKey<net.minecraft.world.damagesource.DamageType> source, net.minecraft.world.entity.Entity entity)
    • setDamageSource

      public void setDamageSource(net.minecraft.resources.ResourceKey<net.minecraft.world.damagesource.DamageType> source)
    • setDamageSourceRaw

      public void setDamageSourceRaw(net.minecraft.world.damagesource.DamageSource source)
    • getDamageSource

      public net.minecraft.world.damagesource.DamageSource getDamageSource()
    • setKnockback

      public void setKnockback(int knockback)
    • getKnockback

      public int getKnockback()
    • getPierceLevel

      public int getPierceLevel()
    • setPierceLevel

      public void setPierceLevel(int pierce)
    • getHitTrigger

      public boolean getHitTrigger()
    • setHitTrigger

      public void setHitTrigger(boolean trigger)
    • isDespawnWhenDistant

      public boolean isDespawnWhenDistant()
    • setDespawnWhenDistant

      public void setDespawnWhenDistant(boolean despawnWhenDistant)
    • getDespawnDistance

      public float getDespawnDistance()
    • setDespawnDistance

      public void setDespawnDistance(float distance)
    • shouldDespawnWhenDistant

      public void shouldDespawnWhenDistant(boolean despawn, double despawnDistance)
    • getSpawnPos

      public net.minecraft.world.phys.Vec3 getSpawnPos()
    • setSpawnPos

      public void setSpawnPos(net.minecraft.world.phys.Vec3 pos)
    • getImpactSound

      public net.minecraft.sounds.SoundEvent getImpactSound()
    • setImpactSound

      public void setImpactSound(Supplier<? extends net.minecraft.sounds.SoundEvent> soundEvent)
    • setImpactSound

      public void setImpactSound(net.minecraft.sounds.SoundEvent pSoundEvent)
    • hasBlockCollision

      public boolean hasBlockCollision()
    • setBlockCollision

      public void setBlockCollision(boolean collision)
    • hasEntityCollision

      public boolean hasEntityCollision()
    • setEntityCollision

      public void setEntityCollision(boolean collision)
    • isNoPhysics

      public boolean isNoPhysics()
    • setNoPhysics

      public void setNoPhysics(boolean tooClose)
    • isAttackable

      public boolean isAttackable()
      Overrides:
      isAttackable in class net.minecraft.world.entity.Entity
    • getBackupOwner

      public net.minecraft.world.entity.Entity getBackupOwner()
    • shouldRenderAtSqrDistance

      public boolean shouldRenderAtSqrDistance(double pDistance)
      Overrides:
      shouldRenderAtSqrDistance in class net.minecraft.world.entity.Entity
    • tick

      public void tick()
      Overrides:
      tick in class net.minecraft.world.entity.projectile.Projectile
    • shouldFall

      public boolean shouldFall()
    • startFalling

      public void startFalling()
    • move

      public void move(@NotNull @NotNull net.minecraft.world.entity.MoverType type, @NotNull @NotNull net.minecraft.world.phys.Vec3 pos)
      Overrides:
      move in class net.minecraft.world.entity.Entity
    • tickDespawn

      public void tickDespawn()
    • makeParticles

      public void makeParticles()
    • onHitEntity

      protected void onHitEntity(@NotNull @NotNull net.minecraft.world.phys.EntityHitResult result)
      Overrides:
      onHitEntity in class net.minecraft.world.entity.projectile.Projectile
    • damageEntity

      protected boolean damageEntity(net.minecraft.world.entity.Entity entity)
    • handleDamageInvulnerability

      public void handleDamageInvulnerability(net.minecraft.world.entity.Entity entity)
    • onHitBlock

      protected void onHitBlock(@NotNull @NotNull net.minecraft.world.phys.BlockHitResult result)
      Overrides:
      onHitBlock in class net.minecraft.world.entity.projectile.Projectile
    • findHitEntity

      protected net.minecraft.world.phys.EntityHitResult findHitEntity(net.minecraft.world.phys.Vec3 startVec, net.minecraft.world.phys.Vec3 endVec)
    • canHitEntity

      protected boolean canHitEntity(@NotNull @NotNull net.minecraft.world.entity.Entity target)
      Overrides:
      canHitEntity in class net.minecraft.world.entity.projectile.Projectile
    • doPostHurtEffects

      public void doPostHurtEffects(net.minecraft.world.entity.LivingEntity target)
    • renderProjectile

      public boolean renderProjectile()
    • addProjectileToLevel

      public void addProjectileToLevel()
    • convertProjectile

      public <T extends AbstractPlantProjectile> T convertProjectile(net.minecraft.world.entity.EntityType<?> type)
    • extraData

      public <T extends AbstractPlantProjectile> T extraData(T type)