Class PokeBallEntity

java.lang.Object
net.minecraftforge.common.capabilities.CapabilityProvider<net.minecraft.world.entity.Entity>
net.minecraft.world.entity.Entity
net.minecraft.world.entity.projectile.Projectile
net.minecraft.world.entity.projectile.ThrowableProjectile
net.minecraft.world.entity.projectile.ThrowableItemProjectile
com.pixelmonmod.pixelmon.entities.pokeballs.PokeBallEntity
All Implemented Interfaces:
net.minecraft.commands.CommandSource, net.minecraft.world.entity.projectile.ItemSupplier, 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:
EmptyPokeBallEntity, OccupiedPokeBallEntity

public abstract class PokeBallEntity extends net.minecraft.world.entity.projectile.ThrowableItemProjectile
A Poké Ball entity in the world.
  • 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
    protected boolean
    Whether the Poké Ball will catch the Pokémon.
    float
     
     
    protected boolean
    Whether to drop an item when the Poké Ball makes contact with something.
    protected float
    The yaw of the Poké Ball at the end of its travel.
    Variable used to increment animation.
    protected float
    The initial scale of the Poké Ball.
    The previous animation of the Poké Ball.
    protected float
    The angle between the Poké Ball's lids when it opens.
    protected PixelmonEntity
    The Pokémon being caught by the Poké Ball.
    static final float
    The model scale of the Poké Ball.
    protected int
     
     
     
     
     
     
     
     
     
    protected static final DataSync<PokeBallEntity,Optional<UUID>>
     
     
    protected static final DataSync<PokeBallEntity,Optional<UUID>>
     
     
    protected static final DataSync<PokeBallEntity,Byte>
     
    protected net.minecraft.world.entity.LivingEntity
    The player who threw the Poké Ball.
    protected final int
    The number of ticks required for a single shake of the Poké Ball.
    protected int
    The Poké Ball's animation timer.

    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, dimensions, ENTITY_COUNTER, entityData, eyeHeight, fallDistance, firstTick, FLAG_FALL_FLYING, FLAG_GLOWING, FLAG_ONFIRE, fluidHeight, flyDist, forgeFluidTypeHeight, FREEZE_HURT_FREQUENCY, hasImpulse, horizontalCollision, hurtMarked, ID_TAG, invulnerableTime, isInPowderSnow, isInsidePortal, level, 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, xRot, xRotO, yo, yOld, yRot, yRotO, zo, zOld

    Fields inherited from interface net.minecraft.commands.CommandSource

    NULL
  • Constructor Summary

    Constructors
    Constructor
    Description
    PokeBallEntity(net.minecraft.world.entity.EntityType<? extends PokeBallEntity> entityType, PokeBall type, net.minecraft.world.level.Level world, net.minecraft.world.entity.LivingEntity thrower, PokeBallMode mode)
    Initializes the specified Poké Ball and its data watcher attributes.
    PokeBallEntity(net.minecraft.world.entity.EntityType<? extends PokeBallEntity> type, net.minecraft.world.level.Level world)
    Initializes an ordinary Poké Ball and its data watcher attributes.
  • Method Summary

    Modifier and Type
    Method
    Description
    void
     
    protected <A> void
    define(DataSync<?,A> sync, A value)
     
    protected void
     
    protected void
    Calculates whether the Pokémon will be caught and the number of shakes the Poké Ball will execute.
    Gets the animation the Poké Ball is currently in.
    Gets the Poké Ball's type.
    net.minecraft.world.item.ItemStack[]
     
    boolean
    Gets whether the Poké Ball is critical.
    float
    Gets the initial pitch of the Poké Ball.
    float
    Gets the initial yaw of the Poké Ball.
    protected boolean
    Gets whether the Poké Ball is on the ground.
    boolean
    Gets whether the Poké Ball is in an animation.
    protected net.minecraft.world.item.ItemStack
     
    Gets the current mode of the Poké Ball.
    Gets the Poké Ball's model.
    net.minecraft.network.chat.Component
     
     
    int
     
    int
    Gets the Poké Ball's entity ID.
     
    int
     
    net.minecraft.world.entity.LivingEntity
     
    int
     
    protected void
    moveCloser(float percent)
    Moves the Pokémon closer to the Poké Ball upon attempting capture.
    void
    Spawns particles from certain Poké Balls when the capture attempt starts.
    protected void
    onHit(net.minecraft.world.phys.HitResult movingobjectposition)
     
    void
    onSyncedDataUpdated(net.minecraft.network.syncher.EntityDataAccessor<?> key)
     
    void
    Spawns a particle if the Poké Ball is a Premier Ball.
    void
    Spawns particles when a pokemon is sent out
    void
    Sets the animation the Poké Ball is currently in.
    protected void
    setCritical(boolean value)
    Sets whether the Poké Ball is critical.
    void
    setInitialPitch(float pitch)
    Sets the initial pitch of the Poké Ball.
    void
    setInitialYaw(float yaw)
    Sets the initial yaw of the Poké Ball.
    protected void
    setIsOnGround(boolean value)
    Sets whether the Poké Ball is on the ground.
    protected void
    setIsWaiting(boolean value)
    Sets whether the Poké Ball is in an animation.
    void
    setItem(net.minecraft.world.item.ItemStack p_37447_)
     
    void
     
    void
    setOwnerId(UUID ownerUuid)
     
    void
    setPairedEntity(net.minecraft.world.entity.Entity entity)
     
    void
    setPokeballID(int id)
    Sets the Poké Ball's entity ID.s
    void
    setPokeUUID(UUID pokeUUID)
     
    abstract void
     
    void
    Spawns particles and plays a success sound when the capture succeeds.
    void
     

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

    addAdditionalSaveData, getDefaultItem, getItem, readAdditionalSaveData

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

    getGravity, shouldRenderAtSqrDistance

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

    canHitEntity, getAddEntityPacket, getEffectSource, getOwner, lerpMotion, lerpRotation, mayInteract, onHitBlock, onHitEntity, ownedBy, recreateFromPacket, setOwner, shoot, shootFromRotation, updateRotation

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

    absMoveTo, absMoveTo, acceptsFailure, acceptsSuccess, addDeltaMovement, addPassenger, addTag, animateHurt, awardKillScore, blockPosition, broadcastToPlayer, calculateUpVector, calculateViewVector, canAddPassenger, canBeCollidedWith, canBeHitByProjectile, canChangeDimensions, canCollideWith, canControlVehicle, 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, 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, getNameTagOffsetY, getOnPos, getOnPos, getOnPosLegacy, getPassengerAttachmentPoint, getPassengerRidingPosition, getPassengers, getPassengersAndSelf, 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, handleEntityEvent, handleInsidePortal, handleNetherPortal, hasControllingPassenger, hasCustomName, hasExactlyOnePlayerPassenger, hasGlowingTag, hashCode, hasIndirectPassenger, hasPassenger, hasPassenger, hasPermissions, hasPose, hurt, ignoreExplosion, interact, interactAt, is, isAddedToWorld, isAlive, isAlliedTo, isAlliedTo, isAlwaysTicking, isAttackable, isColliding, isControlledByLocalInstance, isCrouching, isCurrentlyGlowing, isCustomNameVisible, isDescending, isDiscrete, isEffectiveAi, isEyeInFluid, isFlapping, isFree, isFreezing, isFullyFrozen, isHorizontalCollisionMinor, isIgnoringBlockTriggers, isInFluidType, isInFluidType, isInLava, isInLiquid, 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, lerpPositionAndRotationStep, lerpTargetX, lerpTargetXRot, lerpTargetY, lerpTargetYRot, lerpTargetZ, lerpTo, level, limitPistonMovement, load, lookAt, makeBoundingBox, makeStuckInBlock, markHurt, maxUpStep, maybeBackOffFromEdge, mirror, move, moveRelative, moveTo, moveTo, moveTo, moveTo, moveTowardsClosestSpace, newDoubleList, newFloatList, nextStep, onAboveBubbleCol, onAddedToWorld, onBelowWorld, onClientRemoval, onFlap, onGround, onInsideBlock, onInsideBubbleColumn, onlyOpCanSetNbt, onPassengerTurned, onRemovedFromWorld, 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, ridingOffset, 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

  • Constructor Details

    • PokeBallEntity

      public PokeBallEntity(net.minecraft.world.entity.EntityType<? extends PokeBallEntity> type, net.minecraft.world.level.Level world)
      Initializes an ordinary Poké Ball and its data watcher attributes.
      Parameters:
      world - The world the Poké Ball is in.
    • PokeBallEntity

      public PokeBallEntity(net.minecraft.world.entity.EntityType<? extends PokeBallEntity> entityType, PokeBall type, net.minecraft.world.level.Level world, net.minecraft.world.entity.LivingEntity thrower, PokeBallMode mode)
      Initializes the specified Poké Ball and its data watcher attributes.
      Parameters:
      type - The Poké Ball's type.
      world - The world the Poké Ball is in.
      thrower - The player who threw the Poké Ball.
      mode - The mode the Poké Ball is in.
  • Method Details

    • getName

      public net.minecraft.network.chat.Component getName()
      Specified by:
      getName in interface net.minecraft.world.Nameable
      Overrides:
      getName in class net.minecraft.world.entity.Entity
    • onHit

      protected void onHit(net.minecraft.world.phys.HitResult movingobjectposition)
      Overrides:
      onHit in class net.minecraft.world.entity.projectile.Projectile
    • spawnRedBeam

      public abstract void spawnRedBeam()
    • getComponentItems

      public net.minecraft.world.item.ItemStack[] getComponentItems()
    • defineSynchedData

      protected void defineSynchedData()
      Overrides:
      defineSynchedData in class net.minecraft.world.entity.projectile.ThrowableItemProjectile
    • define

      protected <A> void define(DataSync<?,A> sync, A value)
    • tick

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

      protected void moveCloser(float percent)
      Moves the Pokémon closer to the Poké Ball upon attempting capture.
      Parameters:
      percent - How close to move the Pokémon.
    • baseTick

      public void baseTick()
      Overrides:
      baseTick in class net.minecraft.world.entity.Entity
    • premierFlash

      public void premierFlash()
      Spawns a particle if the Poké Ball is a Premier Ball.
    • onCaptureAttemptEffect

      public void onCaptureAttemptEffect()
      Spawns particles from certain Poké Balls when the capture attempt starts.
    • successfulCaptureEffect

      public void successfulCaptureEffect()
      Spawns particles and plays a success sound when the capture succeeds.
    • releaseEffect

      public void releaseEffect()
      Spawns particles when a pokemon is sent out
    • doCaptureCalc

      protected void doCaptureCalc(PixelmonEntity p2)
      Calculates whether the Pokémon will be caught and the number of shakes the Poké Ball will execute.
      Parameters:
      p2 - The Pokémon being captured.
    • getBallType

      public PokeBall getBallType()
      Gets the Poké Ball's type.
      Returns:
      The Poké Ball's type.
    • setIsWaiting

      protected void setIsWaiting(boolean value)
      Sets whether the Poké Ball is in an animation.
      Parameters:
      value - Whether the Poké Ball is in an animation.
    • getIsWaiting

      public boolean getIsWaiting()
      Gets whether the Poké Ball is in an animation.
      Returns:
      Whether the Poké Ball is in an animation.
    • setIsOnGround

      protected void setIsOnGround(boolean value)
      Sets whether the Poké Ball is on the ground.
      Parameters:
      value - Whether the Poké Ball is on the ground.
    • getIsOnGround

      protected boolean getIsOnGround()
      Gets whether the Poké Ball is on the ground.
      Returns:
      Whether the Poké Ball is on the ground.
    • setAnimation

      public void setAnimation(AnimationType animation)
      Sets the animation the Poké Ball is currently in.
      Parameters:
      animation - The animation the Poké Ball is currently in.
    • getAnimation

      public AnimationType getAnimation()
      Gets the animation the Poké Ball is currently in.
      Returns:
      The animation the Poké Ball is currently in.
    • getPokeballID

      public int getPokeballID()
      Gets the Poké Ball's entity ID.
      Returns:
      The Poké Ball's entity ID.
    • setPokeballID

      public void setPokeballID(int id)
      Sets the Poké Ball's entity ID.s
      Parameters:
      id - The Poké Ball's entity ID.
    • getInitialYaw

      public float getInitialYaw()
      Gets the initial yaw of the Poké Ball.
      Returns:
      The initial yaw of the Poké Ball.
    • setInitialYaw

      public void setInitialYaw(float yaw)
      Sets the initial yaw of the Poké Ball.
      Parameters:
      yaw - The initial yaw of the Poké Ball.
    • getInitialPitch

      public float getInitialPitch()
      Gets the initial pitch of the Poké Ball.
      Returns:
      The initial pitch of the Poké Ball.
    • setInitialPitch

      public void setInitialPitch(float pitch)
      Sets the initial pitch of the Poké Ball.
      Parameters:
      pitch - The initial pitch of the Poké Ball.
    • setCritical

      protected void setCritical(boolean value)
      Sets whether the Poké Ball is critical.
      Parameters:
      value - Whether the Poké Ball is critical.
    • getCritical

      public boolean getCritical()
      Gets whether the Poké Ball is critical.
      Returns:
      Whether the Poké Ball is critical.
    • getMode

      public PokeBallMode getMode()
      Gets the current mode of the Poké Ball.
      Returns:
      The current mode of the Poké Ball.
    • getModel

      public ModelPokeballs getModel()
      Gets the Poké Ball's model. Initializes it if it is not initialized.
      Returns:
      The Poké Ball's model.
    • setModel

      public void setModel(ModelPokeballs model)
    • getShakeCount

      public int getShakeCount()
    • getWaitTimer

      public int getWaitTimer()
    • getOwnerId

      public UUID getOwnerId()
    • setOwnerId

      public void setOwnerId(UUID ownerUuid)
    • getPokeUUID

      public UUID getPokeUUID()
    • setPokeUUID

      public void setPokeUUID(UUID pokeUUID)
    • getPairedEntity

      public int getPairedEntity()
    • setPairedEntity

      public void setPairedEntity(net.minecraft.world.entity.Entity entity)
    • getThrower

      public net.minecraft.world.entity.LivingEntity getThrower()
    • onSyncedDataUpdated

      public void onSyncedDataUpdated(net.minecraft.network.syncher.EntityDataAccessor<?> key)
      Overrides:
      onSyncedDataUpdated in class net.minecraft.world.entity.Entity
    • getItemRaw

      protected net.minecraft.world.item.ItemStack getItemRaw()
      Overrides:
      getItemRaw in class net.minecraft.world.entity.projectile.ThrowableItemProjectile
    • setItem

      public void setItem(net.minecraft.world.item.ItemStack p_37447_)
      Overrides:
      setItem in class net.minecraft.world.entity.projectile.ThrowableItemProjectile