Class AbstractSunOrb

java.lang.Object
net.minecraftforge.common.capabilities.CapabilityProvider<net.minecraft.world.entity.Entity>
net.minecraft.world.entity.Entity
nokunami.floral_warfare.common.entity.sunOrb.AbstractSunOrb
All Implemented Interfaces:
net.minecraft.commands.CommandSource, 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>, IPlantConsumable
Direct Known Subclasses:
PlantHealingSunOrb, PlantSunOrb, SunOrb, VioletSunOrb

public abstract class AbstractSunOrb extends net.minecraft.world.entity.Entity implements IPlantConsumable
  • 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 int
     
    protected static final net.minecraft.network.syncher.EntityDataAccessor<Boolean>
     
    protected static final net.minecraft.network.syncher.EntityDataAccessor<Integer>
     
    protected static final int
     
    protected net.minecraft.world.entity.Entity
     
    protected int
     
    protected static final int
     
    protected static final int
     
    protected static final net.minecraft.network.syncher.EntityDataAccessor<Integer>
     
    protected static final double
     
    protected static final net.minecraft.network.syncher.EntityDataAccessor<Integer>
     
    protected int
     
    protected static final int
     

    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
    Constructor
    Description
    AbstractSunOrb(net.minecraft.world.entity.EntityType<? extends AbstractSunOrb> type, net.minecraft.world.level.Level level)
     
  • Method Summary

    Modifier and Type
    Method
    Description
    protected void
    addAdditionalSaveData(net.minecraft.nbt.CompoundTag tag)
     
    protected boolean
     
    protected boolean
    canMerge(AbstractSunOrb orb, int amount, int other)
     
    boolean
     
    void
    decrement(net.minecraft.world.entity.LivingEntity entity)
     
    protected void
     
    protected void
     
    protected void
     
    @NotNull net.minecraft.network.protocol.Packet<net.minecraft.network.protocol.game.ClientGamePacketListener>
     
    protected @NotNull net.minecraft.core.BlockPos
     
    int
     
    @NotNull net.minecraft.world.entity.EntityDimensions
    getDimensions(@NotNull net.minecraft.world.entity.Pose pose)
     
    net.minecraft.world.entity.Entity
     
    int
     
    protected @NotNull net.minecraft.world.entity.Entity.MovementEmission
     
    getNearestPlant(net.minecraft.world.entity.Entity entity, double dist)
     
    net.minecraft.world.entity.Entity
     
    int
     
    @NotNull net.minecraft.sounds.SoundSource
     
    protected boolean
     
    boolean
    hurt(@NotNull net.minecraft.world.damagesource.DamageSource source, float pAmount)
     
    boolean
     
    void
    launchSun(net.minecraft.world.entity.Entity entity, boolean randomY)
     
    protected void
     
    protected void
     
    void
    onSyncedDataUpdated(@NotNull net.minecraft.network.syncher.EntityDataAccessor<?> key)
     
    void
    plantTouch(@NotNull AbstractPlant plant)
     
    protected void
    readAdditionalSaveData(net.minecraft.nbt.CompoundTag tag)
     
    protected abstract void
     
    protected void
     
    void
    setCount(int i)
     
    void
    setMergeId(int i)
     
    void
    setMergeWithOther(boolean i)
     
    void
    setOrbProperties(net.minecraft.world.entity.Entity entity, net.minecraft.world.phys.Vec3 vec3, int i)
     
    void
    setOwner(net.minecraft.world.entity.Entity entity)
     
    void
    setOwnerId(int i)
     
    void
    setRawCount(int i)
     
    setupOrb(net.minecraft.world.entity.Entity summoner, net.minecraft.world.phys.Vec3 pos, int count)
     
    boolean
     
    void
     

    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, ejectPassengers, equals, extinguishFire, fillCrashReportCategory, findDimensionEntryPoint, fireImmune, fixupDimensions, gameEvent, gameEvent, getAirSupply, getAllSlots, getArmorSlots, getBbHeight, getBbWidth, getBlockExplosionResistance, getBlockJumpFactor, getBlockSpeedFactor, getBlockStateOn, getBlockStateOnLegacy, getBlockX, getBlockY, getBlockZ, getBoundingBox, getBoundingBoxForCulling, getBoundingBoxForPose, getCollisionHorizontalEscapeVector, getCommandSenderWorld, getControlledVehicle, getControllingPassenger, getCustomName, getDeltaMovement, getDimensionChangingDelay, 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, 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, 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, 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, lerpMotion, lerpTo, level, limitPistonMovement, load, lookAt, makeBoundingBox, makeStuckInBlock, markHurt, maxUpStep, maybeBackOffFromEdge, mayInteract, 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, recreateFromPacket, 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, shouldRenderAtSqrDistance, 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

    • COUNT

      protected static final net.minecraft.network.syncher.EntityDataAccessor<Integer> COUNT
    • MERGE

      protected static final net.minecraft.network.syncher.EntityDataAccessor<Integer> MERGE
    • OWNER

      protected static final net.minecraft.network.syncher.EntityDataAccessor<Integer> OWNER
    • CAN_MERGE

      protected static final net.minecraft.network.syncher.EntityDataAccessor<Boolean> CAN_MERGE
    • LIFETIME

      protected static final int LIFETIME
      See Also:
    • TIMEOUT_LIMIT

      protected static final int TIMEOUT_LIMIT
      See Also:
    • ENTITY_SCAN_PERIOD

      protected static final int ENTITY_SCAN_PERIOD
      See Also:
    • MAX_FOLLOW_DIST

      protected static final int MAX_FOLLOW_DIST
      See Also:
    • MERGE_DISTANCE

      protected static final double MERGE_DISTANCE
      See Also:
    • age

      protected int age
    • timeout

      protected int timeout
    • health

      protected int health
    • followingEntity

      protected net.minecraft.world.entity.Entity followingEntity
  • Constructor Details

    • AbstractSunOrb

      public AbstractSunOrb(net.minecraft.world.entity.EntityType<? extends AbstractSunOrb> type, net.minecraft.world.level.Level level)
  • Method Details

    • getMovementEmission

      @NotNull protected @NotNull net.minecraft.world.entity.Entity.MovementEmission getMovementEmission()
      Overrides:
      getMovementEmission in class net.minecraft.world.entity.Entity
    • launchSun

      public void launchSun(net.minecraft.world.entity.Entity entity, boolean randomY)
    • setOrbProperties

      public void setOrbProperties(net.minecraft.world.entity.Entity entity, net.minecraft.world.phys.Vec3 vec3, int i)
    • defineSynchedData

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

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

      protected void addAdditionalSaveData(net.minecraft.nbt.CompoundTag tag)
      Specified by:
      addAdditionalSaveData in class net.minecraft.world.entity.Entity
    • readAdditionalSaveData

      protected void readAdditionalSaveData(net.minecraft.nbt.CompoundTag tag)
      Specified by:
      readAdditionalSaveData in class net.minecraft.world.entity.Entity
    • getCount

      public int getCount()
    • setCount

      public void setCount(int i)
    • setRawCount

      public void setRawCount(int i)
    • decrement

      public void decrement(net.minecraft.world.entity.LivingEntity entity)
    • getMergeId

      public int getMergeId()
    • setMergeId

      public void setMergeId(int i)
    • getMerge

      public net.minecraft.world.entity.Entity getMerge()
    • getOwnerId

      public int getOwnerId()
    • setOwnerId

      public void setOwnerId(int i)
    • getOwner

      public net.minecraft.world.entity.Entity getOwner()
    • setOwner

      public void setOwner(net.minecraft.world.entity.Entity entity)
    • canMergeWithOther

      public boolean canMergeWithOther()
    • setMergeWithOther

      public void setMergeWithOther(boolean i)
    • getDimensions

      @NotNull public @NotNull net.minecraft.world.entity.EntityDimensions getDimensions(@NotNull @NotNull net.minecraft.world.entity.Pose pose)
      Overrides:
      getDimensions in class net.minecraft.world.entity.Entity
    • tick

      public void tick()
      Overrides:
      tick in class net.minecraft.world.entity.Entity
    • scanForEntities

      protected abstract void scanForEntities()
    • scanForMerge

      protected void scanForMerge()
    • canMerge

      protected boolean canMerge(AbstractSunOrb orb)
    • canMerge

      protected boolean canMerge(AbstractSunOrb orb, int amount, int other)
    • gravitateTowardsMerge

      protected boolean gravitateTowardsMerge(AbstractSunOrb orb)
    • merge

      protected void merge(AbstractSunOrb orb)
    • movementPhysics

      protected void movementPhysics()
    • despawnTick

      protected void despawnTick()
    • shouldGravitateTowardsPlants

      public boolean shouldGravitateTowardsPlants()
    • getBlockPosBelowThatAffectsMyMovement

      @NotNull protected @NotNull net.minecraft.core.BlockPos getBlockPosBelowThatAffectsMyMovement()
      Overrides:
      getBlockPosBelowThatAffectsMyMovement in class net.minecraft.world.entity.Entity
    • getNearestPlant

      public BasePlant getNearestPlant(net.minecraft.world.entity.Entity entity, double dist)
    • doWaterSplashEffect

      protected void doWaterSplashEffect()
      Overrides:
      doWaterSplashEffect in class net.minecraft.world.entity.Entity
    • hurt

      public boolean hurt(@NotNull @NotNull net.minecraft.world.damagesource.DamageSource source, float pAmount)
      Overrides:
      hurt in class net.minecraft.world.entity.Entity
    • isAttackable

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

      @NotNull public @NotNull net.minecraft.sounds.SoundSource getSoundSource()
      Overrides:
      getSoundSource in class net.minecraft.world.entity.Entity
    • plantTouch

      public void plantTouch(@NotNull @NotNull AbstractPlant plant)
      Specified by:
      plantTouch in interface IPlantConsumable
    • getAddEntityPacket

      @NotNull public @NotNull net.minecraft.network.protocol.Packet<net.minecraft.network.protocol.game.ClientGamePacketListener> getAddEntityPacket()
      Overrides:
      getAddEntityPacket in class net.minecraft.world.entity.Entity
    • setupOrb

      public AbstractSunOrb setupOrb(net.minecraft.world.entity.Entity summoner, net.minecraft.world.phys.Vec3 pos, int count)