Class OccupiedPokeBallEntity

java.lang.Object
net.neoforged.neoforge.attachment.AttachmentHolder
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
com.pixelmonmod.pixelmon.entities.pokeballs.OccupiedPokeBallEntity
All Implemented Interfaces:
net.minecraft.commands.CommandSource, net.minecraft.network.syncher.SyncedDataHolder, net.minecraft.world.entity.projectile.ItemSupplier, net.minecraft.world.entity.TraceableEntity, net.minecraft.world.level.entity.EntityAccess, net.minecraft.world.Nameable, net.minecraft.world.scores.ScoreHolder, net.neoforged.neoforge.attachment.IAttachmentHolder, net.neoforged.neoforge.common.extensions.IEntityExtension, net.neoforged.neoforge.common.util.INBTSerializable<net.minecraft.nbt.CompoundTag>

public class OccupiedPokeBallEntity extends PokeBallEntity
A player's Poké Ball that contains a Pokémon.
  • 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.neoforged.neoforge.attachment.AttachmentHolder

    net.neoforged.neoforge.attachment.AttachmentHolder.AsField
  • Field Summary

    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, 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, level, mainSupportingBlockPos, MAX_ENTITY_TAG_COUNT, minorHorizontalCollision, moveDist, noCulling, noPhysics, PASSENGERS_TAG, portalProcess, 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 class net.neoforged.neoforge.attachment.AttachmentHolder

    ATTACHMENTS_NBT_KEY

    Fields inherited from interface net.minecraft.commands.CommandSource

    NULL

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

    WILDCARD, WILDCARD_NAME
  • Constructor Summary

    Constructors
    Constructor
    Description
    OccupiedPokeBallEntity(net.minecraft.world.entity.EntityType<OccupiedPokeBallEntity> type, net.minecraft.world.level.Level world)
     
    OccupiedPokeBallEntity(net.minecraft.world.level.Level world)
    Required constructor for client side creation.
    OccupiedPokeBallEntity(net.minecraft.world.level.Level world, net.minecraft.world.entity.LivingEntity entityliving, int slot, PokeBall type)
    Initializes a Poké Ball entity.
  • Method Summary

    Modifier and Type
    Method
    Description
    net.minecraft.world.phys.Vec3
     
    protected net.minecraft.world.item.Item
     
    net.minecraft.network.chat.Component
     
     
     
    void
    onHit(net.minecraft.world.phys.HitResult traceResult)
     
    void
    onOccupiedPokeBallDoesNotHitBlock(net.minecraft.world.phys.HitResult traceResult)
    What happens when an occupied Poké Ball hits something that is not a block (an entity).
    boolean
    onOccupiedPokeBallHitBlockSurface(net.minecraft.world.phys.HitResult traceResult)
    Sets the PokeBallEntity.contactPoint for the Poké Ball's beam, which is also where the Pokémon will spawn.
    void
    onOccupiedPokeBallHitEntitySurface(net.minecraft.world.phys.EntityHitResult entityHitResult)
    What happens when the Poké Ball hits an entity that is not a PixelmonEntity.
    void
    What happens when an occupied Poké Ball hits a Pokémon (entity) owned by a trainer.
    void
    What happens when an occupied Poké Ball hits a Pokémon (entity) owned by a trainer different from the one that threw the Poké Ball.
    void
    What happens when an occupied Poké Ball hits a Pokémon (entity) owned by the same trainer that threw of the Poké Ball.
    void
    What happens when an occupied Poké Ball hits a Pixelmon entity.
    void
    onOccupiedPokeBallHitPlayer(net.minecraft.world.phys.HitResult traceResult, PlayerPartyStorage storage, Pokemon pokemon)
    What happens when an occupied Poké Ball hits a player.
    boolean
    onOccupiedPokeBallHitsBlock(net.minecraft.world.phys.HitResult traceResult)
    What happens when an occupied Poké Ball hits a block.
    void
    What happens when an occupied Poké Ball hits a wild Pokémon (entity).
    void
     
    void
    remove(net.minecraft.world.entity.Entity.RemovalReason reason)
     
    void
     

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

    addAdditionalSaveData, readAdditionalSaveData

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

    canUsePortal, getDefaultGravity, shouldRenderAtSqrDistance

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

    calculateHorizontalHurtKnockbackDirection, canHitEntity, deflect, getAddEntityPacket, getEffectSource, getMovementToShoot, getOwner, getPickRadius, hitTargetOrDeflectSelf, isPickable, lerpMotion, lerpRotation, mayBreak, mayInteract, onDeflection, onHitBlock, onHitEntity, ownedBy, recreateFromPacket, restoreFrom, setOwner, shoot, shootFromRotation, updateRotation

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

    absMoveTo, absMoveTo, absRotateTo, acceptsFailure, acceptsSuccess, addDeltaMovement, addPassenger, addTag, adjustSpawnLocation, animateHurt, applyGravity, awardKillScore, blockPosition, broadcastToPlayer, calculateUpVector, calculateViewVector, canAddPassenger, canBeCollidedWith, canBeHitByProjectile, canChangeDimensions, canCollideWith, canControlVehicle, canFreeze, canRide, canSpawnSprintParticle, canSprint, canTrample, captureDrops, captureDrops, causeFallDamage, changeDimension, checkBelowWorld, checkDespawn, checkFallDamage, checkInsideBlocks, checkSlowFallDistance, checkSupportingBlock, chunkPosition, clearFire, closerThan, closerThan, collideBoundingBox, copyPosition, couldAcceptPassenger, countPlayerPassengers, createCommandSourceStack, createHoverEvent, damageSources, dampensVibrations, deflection, discard, dismountsUnderwater, dismountTo, displayFireAnimation, distanceTo, distanceToSqr, distanceToSqr, distanceToSqr, doWaterSplashEffect, ejectPassengers, equals, extinguishFire, fillCrashReportCategory, fireImmune, fixupDimensions, fudgePositionAfterSizeChange, gameEvent, gameEvent, getAirSupply, getAttachments, getBbHeight, getBbWidth, getBlockExplosionResistance, getBlockJumpFactor, getBlockPosBelowThatAffectsMyMovement, getBlockSpeedFactor, getBlockStateOn, getBlockStateOnLegacy, getBlockX, getBlockY, getBlockZ, getBoundingBox, getBoundingBoxForCulling, getCapability, getCapability, getCollisionHorizontalEscapeVector, getCommandSenderWorld, getControlledVehicle, getControllingPassenger, getCustomName, getDefaultPassengerAttachmentPoint, getDeltaMovement, getDimensionChangingDelay, getDimensions, getDirection, getDismountLocationForPassenger, getDisplayName, getEncodeId, getEntityData, getEyeHeight, getEyeHeight, getEyeInFluidType, getEyePosition, getEyePosition, getEyeY, getFireImmuneTicks, getFirstPassenger, getFluidHeight, getFluidJumpThreshold, getFluidTypeHeight, getForward, getGravity, getHandHoldingItemAngle, getId, getInBlockState, getIndirectPassengers, getKnownMovement, getLeashOffset, getLeashOffset, getLightLevelDependentMagicValue, getLightProbePosition, getLookAngle, getMaxAirSupply, getMaxFallDistance, getMaxHeightFluidType, getMotionDirection, getMovementEmission, getNearestViewDirection, getOnPos, getOnPos, getOnPosLegacy, getPassengerAttachmentPoint, getPassengerRidingPosition, getPassengers, getPassengersAndSelf, getPercentFrozen, getPermissionLevel, getPersistentData, getPickResult, getPistonPushReaction, getPortalCooldown, getPose, getPosition, getPositionCodec, getPreciseBodyRotation, getPrimaryStepSoundBlockPos, getRandom, 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, getVehicleAttachmentPoint, getViewScale, getViewVector, getViewXRot, getViewYRot, getVisualRotationYInDegrees, getWeaponItem, getX, getX, getXRot, getY, getY, getYHeadRot, getYRot, getZ, getZ, handleDamageEvent, handleEntityEvent, handlePortal, hasControllingPassenger, hasCustomName, hasExactlyOnePlayerPassenger, hasGlowingTag, hashCode, hasIndirectPassenger, hasPassenger, hasPassenger, hasPermissions, hasPose, hurt, igniteForSeconds, igniteForTicks, ignoreExplosion, interact, interactAt, is, isAddedToLevel, 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, 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, moveTo, moveTowardsClosestSpace, newDoubleList, newFloatList, nextStep, onAboveBubbleCol, onAddedToLevel, onBelowWorld, onClientRemoval, onExplosionHit, onFlap, onGround, onInsideBlock, onInsideBubbleColumn, onlyOpCanSetNbt, onPassengerTurned, onSyncedDataUpdated, pick, placePortalTicket, playCombinationStepSounds, playEntityOnFireExtinguishedSound, playerTouch, playMuffledStepSound, playSound, playSound, playStepSound, playSwimSound, position, positionRider, positionRider, processFlappingMovement, processPortalCooldown, push, push, push, reapplyPosition, refreshDimensions, registryAccess, removeAfterChangingDimensions, removePassenger, removeTag, removeVehicle, repositionEntityAfterLoad, resetFallDistance, revive, rideTick, rotate, save, saveAsPassenger, saveWithoutId, sendSystemMessage, setAirSupply, setAsInsidePortal, setBoundingBox, setCustomName, setCustomNameVisible, setData, setDeltaMovement, setDeltaMovement, setFluidTypeHeight, setGlowingTag, setId, setInvisible, setInvulnerable, setIsInPowderSnow, setLevel, setLevelCallback, setNoGravity, setOldPosAndRot, setOnGround, setOnGroundWithMovement, setPortalCooldown, setPortalCooldown, setPos, setPos, setPose, setPosRaw, setRemainingFireTicks, setRemoved, setRot, 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, syncData, syncPacketPositionCodec, teleportRelative, teleportTo, teleportTo, thunderHit, toString, touchingUnloadedChunk, trackingPosition, tryCheckInsideBlocks, turn, unRide, unsetRemoved, updateDynamicGameEventListener, updateFluidHeightAndDoFluidPushing, updateFluidHeightAndDoFluidPushing, updateInWaterStateAndDoFluidPushing, updateSwimming, waterSwimSound

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

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

    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.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, canStartSwimming, canSwimInFluidType, copyAttachmentsFrom, deserializeNBT, getClassification, getFluidFallDistanceModifier, getFluidMotionScale, getParts, getPickedResult, getSoundFromFluidType, hasCustomOutlineRendering, isEyeInFluidType, isInFluidType, isInFluidType, isInFluidType, isMultipartEntity, isPushedByFluid, sendPairingData, serializeNBT, shouldRiderSit

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

    getFeedbackDisplayName
  • Constructor Details

    • OccupiedPokeBallEntity

      public OccupiedPokeBallEntity(net.minecraft.world.entity.EntityType<OccupiedPokeBallEntity> type, net.minecraft.world.level.Level world)
    • OccupiedPokeBallEntity

      public OccupiedPokeBallEntity(net.minecraft.world.level.Level world)
      Required constructor for client side creation.
      Parameters:
      world - The world the Poké Ball is in.
    • OccupiedPokeBallEntity

      public OccupiedPokeBallEntity(net.minecraft.world.level.Level world, net.minecraft.world.entity.LivingEntity entityliving, int slot, PokeBall type)
      Initializes a Poké Ball entity.
      Parameters:
      world - The world to spawn the Poké Ball in.
      entityliving - The player who threw the Poké Ball.
      slot - The slot of the Pokémon inside the Poké Ball.
      type - The type of Poké Ball.
  • Method Details

    • getPokeNameUnlocalized

      public String getPokeNameUnlocalized()
    • getPokemon

      public Optional<Species> getPokemon()
    • tick

      public void tick()
      Overrides:
      tick in class PokeBallEntity
    • getName

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

      public void onHit(net.minecraft.world.phys.HitResult traceResult)
      Overrides:
      onHit in class net.minecraft.world.entity.projectile.Projectile
    • onOccupiedPokeBallHitsBlock

      public boolean onOccupiedPokeBallHitsBlock(net.minecraft.world.phys.HitResult traceResult)
      What happens when an occupied Poké Ball hits a block.

      Allows the Poké Ball to pass though grass and other non-solid blocks.

      Returns:
      True if the onHit(net.minecraft.world.phys.HitResult) logic for the Poké Ball should stop.
    • onOccupiedPokeBallDoesNotHitBlock

      public void onOccupiedPokeBallDoesNotHitBlock(net.minecraft.world.phys.HitResult traceResult)
      What happens when an occupied Poké Ball hits something that is not a block (an entity).

      Contains onOccupiedPokeBallHitPixelmonEntity(PixelmonEntity, Pokemon) and onOccupiedPokeBallHitPlayer(HitResult, PlayerPartyStorage, Pokemon).

      Parameters:
      traceResult - An object representing whether the Poké Ball entity touched a block or an entity.
    • onOccupiedPokeBallHitEntitySurface

      public void onOccupiedPokeBallHitEntitySurface(net.minecraft.world.phys.EntityHitResult entityHitResult)
      What happens when the Poké Ball hits an entity that is not a PixelmonEntity.
      Parameters:
      entityHitResult - An object representing that the Poké Ball entity made contact with an entity.
    • onOccupiedPokeBallHitPixelmonEntity

      public void onOccupiedPokeBallHitPixelmonEntity(PixelmonEntity pokemonHit, Pokemon pokemon)
      What happens when an occupied Poké Ball hits a Pixelmon entity.

      Contains onOccupiedPokeBallHitOwnedPixelmon(Pokemon, PixelmonEntity) and onOccupiedPokeBallHitWildPixelmon(Pokemon, PixelmonEntity).

      Parameters:
      pokemonHit - The Pokémon (entity) that was hit by the thrown Poké Ball.
      pokemon - The Pokémon inside the thrown Poké Ball.
    • onOccupiedPokeBallHitOwnedPixelmon

      public void onOccupiedPokeBallHitOwnedPixelmon(Pokemon pokemon, PixelmonEntity target)
      What happens when an occupied Poké Ball hits a Pokémon (entity) owned by a trainer.
      Parameters:
      pokemon - The Pokémon inside the thrown Poké Ball.
      target - The Pixelmon owned by another player that was hit by the thrown Poké Ball.
    • onOccupiedPokeBallHitOwnedPixelmonOfThrower

      public void onOccupiedPokeBallHitOwnedPixelmonOfThrower(Pokemon pokemon, PixelmonEntity target)
      What happens when an occupied Poké Ball hits a Pokémon (entity) owned by the same trainer that threw of the Poké Ball.
      Parameters:
      pokemon - The Pokémon inside the thrown Poké Ball.
      target - The Pixelmon owned by another player that was hit by the thrown Poké Ball.
    • onOccupiedPokeBallHitOwnedPixelmonOfOtherPlayer

      public void onOccupiedPokeBallHitOwnedPixelmonOfOtherPlayer(Pokemon pokemon, PixelmonEntity target)
      What happens when an occupied Poké Ball hits a Pokémon (entity) owned by a trainer different from the one that threw the Poké Ball.
      Parameters:
      pokemon - The Pokémon inside the thrown Poké Ball.
      target - The Pixelmon owned by another player that was hit by the thrown Poké Ball.
    • onOccupiedPokeBallHitWildPixelmon

      public void onOccupiedPokeBallHitWildPixelmon(Pokemon pokemon, PixelmonEntity target)
      What happens when an occupied Poké Ball hits a wild Pokémon (entity).
      Parameters:
      pokemon - The Pokémon inside the thrown Poké Ball.
      target - The wild Pixelmon that was hit by the thrown Poké Ball.
    • onOccupiedPokeBallHitPlayer

      public void onOccupiedPokeBallHitPlayer(net.minecraft.world.phys.HitResult traceResult, PlayerPartyStorage storage, Pokemon pokemon)
      What happens when an occupied Poké Ball hits a player.
      Parameters:
      traceResult - An object representing whether the Poké Ball entity touched a block or an entity or nothing.
      storage - All the Pokémon that the player that threw the Poké Ball owns.
      pokemon - The Pokémon inside the thrown Poké Ball.
    • onOccupiedPokeBallHitBlockSurface

      public boolean onOccupiedPokeBallHitBlockSurface(net.minecraft.world.phys.HitResult traceResult)
      Sets the PokeBallEntity.contactPoint for the Poké Ball's beam, which is also where the Pokémon will spawn.
      Parameters:
      traceResult - An object representing whether the Poké Ball entity touched a block or an entity or nothing.
      Returns:
      True if the onHit(net.minecraft.world.phys.HitResult) logic for the Poké Ball should exit early.
    • getBeamTarget

      public net.minecraft.world.phys.Vec3 getBeamTarget()
      Specified by:
      getBeamTarget in class PokeBallEntity
    • getDefaultItem

      protected net.minecraft.world.item.Item getDefaultItem()
      Specified by:
      getDefaultItem in class net.minecraft.world.entity.projectile.ThrowableItemProjectile
    • remove

      public void remove(net.minecraft.world.entity.Entity.RemovalReason reason)
      Overrides:
      remove in class net.minecraft.world.entity.Entity
    • onRemovedFromLevel

      public void onRemovedFromLevel()
      Specified by:
      onRemovedFromLevel in interface net.neoforged.neoforge.common.extensions.IEntityExtension
      Overrides:
      onRemovedFromLevel in class net.minecraft.world.entity.Entity