Package net.minecraft.entity.boss.dragon
Class EnderDragonEntity
java.lang.Object
net.minecraftforge.common.capabilities.CapabilityProvider<Entity>
net.minecraft.entity.Entity
net.minecraft.entity.LivingEntity
net.minecraft.entity.MobEntity
net.minecraft.entity.boss.dragon.EnderDragonEntity
- All Implemented Interfaces:
ICommandSource
,IMob
,INameable
,ICapabilityProvider
,ICapabilitySerializable<CompoundNBT>
,IForgeEntity
,INBTSerializable<CompoundNBT>
-
Nested Class Summary
Nested classes/interfaces inherited from class net.minecraft.entity.Entity
Entity.IMoveCallback
-
Field Summary
Modifier and TypeFieldDescriptionprivate final EnderDragonPartEntity
private static final EntityPredicate
static final DataParameter<Integer>
int
private final DragonFightManager
float
private int
final EnderDragonPartEntity
boolean
private static final org.apache.logging.log4j.Logger
private final EnderDragonPartEntity
private final int[]
private final PathPoint[]
float
private final PathHeap
private final PhaseManager
final double[][]
int
private int
private final EnderDragonPartEntity[]
private final EnderDragonPartEntity
private final EnderDragonPartEntity
private final EnderDragonPartEntity
private final EnderDragonPartEntity
private final EnderDragonPartEntity
float
Fields inherited from class net.minecraft.entity.MobEntity
ambientSoundTime, armorDropChances, goalSelector, handDropChances, jumpControl, lookControl, moveControl, navigation, targetSelector, xpReward
Fields inherited from class net.minecraft.entity.LivingEntity
animationPosition, animationSpeed, animationSpeedOld, animStep, animStepO, attackAnim, attackStrengthTicker, autoSpinAttackTicks, brain, DATA_LIVING_ENTITY_FLAGS, dead, deathScore, deathTime, fallFlyTicks, flyingSpeed, hurtDir, hurtDuration, hurtTime, invulnerableDuration, jumping, lastHurt, lastHurtByPlayer, lastHurtByPlayerTime, lerpHeadSteps, lerpSteps, lerpX, lerpXRot, lerpY, lerpYRot, lerpZ, lyHeadRot, noActionTime, oAttackAnim, oRun, removeArrowTime, removeStingerTime, rotA, rotOffs, run, SLEEPING_DIMENSIONS, swinging, swingingArm, swingTime, timeOffs, useItem, useItemRemaining, xxa, yBodyRot, yBodyRotO, yHeadRot, yHeadRotO, yya, zza
Fields inherited from class net.minecraft.entity.Entity
blocksBuilding, boardingCooldown, DATA_POSE, DATA_SHARED_FLAGS_ID, ENTITY_COUNTER, entityData, fallDistance, firstTick, fluidHeight, fluidOnEyes, forcedLoading, glowing, hasImpulse, horizontalCollision, hurtMarked, inChunk, invulnerableTime, isInsidePortal, level, maxUpStep, moveDist, noCulling, noPhysics, onGround, portalEntrancePos, portalTime, pushthrough, random, removed, stringUUID, stuckSpeedMultiplier, tickCount, uuid, verticalCollision, walkDist, walkDistO, wasEyeInWater, wasTouchingWater, xChunk, xo, xOld, xRot, xRotO, yChunk, yo, yOld, yRot, yRotO, zChunk, zo, zOld
Fields inherited from interface net.minecraft.command.ICommandSource
NULL
-
Constructor Summary
ConstructorDescriptionEnderDragonEntity
(EntityType<? extends EnderDragonEntity> p_i50230_1_, World p_i50230_2_) -
Method Summary
Modifier and TypeMethodDescriptionvoid
addAdditionalSaveData
(CompoundNBT p_213281_1_) boolean
addEffect
(EffectInstance p_195064_1_) void
aiStep()
boolean
protected boolean
private void
void
private boolean
checkWalls
(AxisAlignedBB p_70972_1_) protected void
private void
dropExperience
(int p_184668_1_) int
int
findClosestNode
(double p_184663_1_, double p_184663_3_, double p_184663_5_) protected SoundEvent
getHeadLookVector
(float p_184665_1_) float
getHeadPartYOffset
(int p_184667_1_, double[] p_184667_2_, double[] p_184667_3_) private float
protected SoundEvent
getHurtSound
(DamageSource p_184601_1_) double[]
getLatencyPos
(int p_70974_1_, float p_70974_2_) PartEntity<?>[]
getParts()
Gets the individual sub parts that make up this entity.protected float
private void
boolean
hurt
(EnderDragonPartEntity p_213403_1_, DamageSource p_213403_2_, float p_213403_3_) boolean
hurt
(DamageSource p_70097_1_, float p_70097_2_) boolean
This is used to specify that your entity has multiple individual parts, such as the Vanilla Ender Dragon.boolean
void
kill()
private void
void
onCrystalDestroyed
(EnderCrystalEntity p_184672_1_, BlockPos p_184672_2_, DamageSource p_184672_3_) void
onSyncedDataUpdated
(DataParameter<?> p_184206_1_) void
readAdditionalSaveData
(CompoundNBT p_70037_1_) protected boolean
reallyHurt
(DamageSource p_82195_1_, float p_82195_2_) private Path
reconstructPath
(PathPoint p_184669_1_, PathPoint p_184669_2_) private float
rotWrap
(double p_70973_1_) void
setId
(int p_145769_1_) protected void
private void
tickPart
(EnderDragonPartEntity p_226526_1_, double p_226526_2_, double p_226526_4_, double p_226526_6_) Methods inherited from class net.minecraft.entity.MobEntity
ate, baseTick, canAttack, canAttackType, canBeControlledByRider, canBeLeashed, canCutCorner, canFireProjectileWeapon, canHoldItem, canPickUpLoot, canReplaceCurrentItem, canReplaceEqualItem, canTakeItem, checkMobSpawnRules, checkSpawnObstruction, checkSpawnRules, convertTo, createBodyControl, createLootContext, createMobAttributes, createNavigation, customServerAiStep, doHurtTarget, dropCustomDeathLoot, dropFromLootTable, dropLeash, enchantSpawnedArmor, enchantSpawnedWeapon, equipItemIfPossible, finalizeSpawn, getAmbientSoundInterval, getArmorSlots, getDefaultLootTable, getEquipmentDropChance, getEquipmentForSlot, getEquipmentSlotForItem, getExperienceReward, getHandSlots, getHeadRotSpeed, getItemBySlot, getJumpControl, getLeashHolder, getLookControl, getLootTable, getMainArm, getMaxFallDistance, getMaxHeadXRot, getMaxHeadYRot, getMaxSpawnClusterSize, getMoveControl, getNavigation, getPathfindingMalus, getRestrictCenter, getRestrictRadius, getSensing, getTarget, handleEntityEvent, hasRestriction, interact, isAggressive, isControlledByLocalInstance, isEffectiveAi, isLeashed, isLeftHanded, isMaxGroupSizeReached, isNoAi, isPersistenceRequired, isSunBurnTick, isValidSlotForItem, isWithinRestriction, isWithinRestriction, jumpInLiquid, lookAt, mobInteract, onOffspringSpawnedFromEgg, pickUpItem, playAmbientSound, playHurtSound, populateDefaultEquipmentEnchantments, populateDefaultEquipmentSlots, registerGoals, removeAfterChangingDimensions, removeWhenFarAway, requiresCustomPersistence, restrictTo, sendDebugPackets, serverAiStep, setAggressive, setBaby, setCanPickUpLoot, setDelayedLeashHolderId, setDropChance, setGuaranteedDrop, setItemSlot, setItemSlotAndDropWhenKilled, setLeashedTo, setLeftHanded, setNoAi, setPathfindingMalus, setPersistenceRequired, setSlot, setSpeed, setTarget, setXxa, setYya, setZza, shouldDespawnInPeaceful, shouldPassengersInheritMalus, spawnAnim, startRiding, tick, tickHeadTurn, tickLeash, updateControlFlags, wantsToPickUp
Methods inherited from class net.minecraft.entity.LivingEntity
actuallyHurt, animateHurt, areAllEffectsAmbient, attackable, blockedByShield, blockUsingShield, brainProvider, broadcastBreakEvent, broadcastBreakEvent, calculateEntityAnimation, calculateFallDamage, canAttack, canBeAffected, canBreatheUnderwater, canSee, canSpawnSoulSpeedParticle, canStandOnFluid, causeFallDamage, checkAutoSpinAttack, checkFallDamage, clearSleepingPos, completeUsingItem, createLivingAttributes, createWitherRose, curePotionEffects, decreaseAirSupply, die, doAutoAttackOnTouch, doPush, dropAllDeathLoot, dropEquipment, dropExperience, eat, forceAddEffect, getAbsorptionAmount, getActiveEffects, getActiveEffectsMap, getAddEntityPacket, getArmorCoverPercentage, getArmorValue, getArrowCount, getAttackAnim, getAttribute, getAttributeBaseValue, getAttributes, getAttributeValue, getBedOrientation, getBlockSpeedFactor, getBoundingBoxForCulling, getBrain, getCapability, getCombatTracker, getDamageAfterArmorAbsorb, getDamageAfterMagicAbsorb, getDeathSound, getDimensions, getDismountPoses, getDrinkingSound, getEatingSound, getEffect, getEyeHeight, getFallDamageSound, getFallFlyingTicks, getFeetBlockState, getFluidFallingAdjustedMovement, getHealth, getItemInHand, getJumpPower, getKillCredit, getLastClimbablePos, getLastDamageSource, getLastHurtByMob, getLastHurtByMobTimestamp, getLastHurtMob, getLastHurtMobTimestamp, getLocalBoundsForPose, getMainHandItem, getMaxHealth, getMobType, getNoActionTime, getOffhandItem, getProjectile, getRandom, getRelativePortalPosition, getScale, getSleepingPos, getSpeed, getStandingEyeHeight, getStingerCount, getSwimAmount, getTicksUsingItem, getUsedItemHand, getUseItem, getUseItemRemainingTicks, getViewYRot, getVisibilityPercent, getVoicePitch, getWaterSlowDown, getYHeadRot, goDownInWater, handleRelativeFrictionAndCalculateMovement, hasEffect, hasItemInSlot, heal, hurtArmor, hurtCurrentlyUsedShield, increaseAirSupply, invalidateCaps, isAffectedByFluids, isAffectedByPotions, isAlive, isAlwaysExperienceDropper, isAutoSpinAttack, isBaby, isBlocking, isDeadOrDying, isFallFlying, isHolding, isHolding, isImmobile, isInvertedHealAndHarm, isInWall, isPushable, isSensitiveToWater, isSleeping, isSuppressingSlidingDownLadder, isUsingItem, isVisuallySwimming, jumpFromGround, knockback, lerpHeadTo, lerpTo, lookAt, makeBrain, markHurt, onChangedBlock, onClimbable, onEffectAdded, onEffectRemoved, onEffectUpdated, onEnterCombat, onItemPickup, onLeaveCombat, onSoulSpeedBlock, outOfWorld, playBlockFallSound, playEquipSound, push, pushEntities, randomTeleport, releaseUsingItem, removeAllEffects, removeEffect, removeEffectNoUpdate, removeEffectParticles, removeSoulSpeed, resetForwardDirectionOfRelativePortalPosition, rideableUnderWater, rideTick, setAbsorptionAmount, setArrowCount, setHealth, setItemInHand, setJumping, setLastHurtByMob, setLastHurtByPlayer, setLastHurtMob, setLivingEntityFlag, setNoActionTime, setOnGround, setRecordPlayingNearby, setSleepingPos, setSprinting, setStingerCount, setYBodyRot, setYHeadRot, shouldDropExperience, shouldDropLoot, shouldRemoveSoulSpeed, shouldRiderFaceForward, shouldShowName, spawnSoulSpeedParticle, startAutoSpinAttack, startSleeping, startUsingItem, stopRiding, stopSleeping, stopUsingItem, swing, swing, take, tickEffects, travel, triggerItemUseEffects, tryAddSoulSpeed, updateEffectVisibility, updateInvisibilityStatus, updateSwingTime
Methods inherited from class net.minecraft.entity.Entity
absMoveTo, absMoveTo, acceptsFailure, acceptsSuccess, addPassenger, addTag, awardKillScore, blockPosition, broadcastToPlayer, calculateUpVector, calculateViewVector, canAddPassenger, canBeCollidedWith, canCollideWith, canEnterPose, canSpawnSprintParticle, canTrample, canUpdate, canUpdate, captureDrops, captureDrops, changeDimension, changeDimension, checkAndResetForcedChunkAdditionFlag, checkAndResetUpdateChunkPos, checkInsideBlocks, clearFire, closerThan, collideBoundingBox, collideBoundingBoxHeuristically, collideBoundingBoxLegacy, copyPosition, createCommandSourceStack, createHoverEvent, displayFireAnimation, distanceTo, distanceToSqr, distanceToSqr, distanceToSqr, doEnchantDamageEffects, doWaterSplashEffect, ejectPassengers, equals, fillCrashReportCategory, findDimensionEntryPoint, fireImmune, getAirSupply, getAllSlots, getBbHeight, getBbWidth, getBlockExplosionResistance, getBlockJumpFactor, getBlockPosBelowThatAffectsMyMovement, getBlockStateOn, getBoundingBox, getBoundingBoxForPose, getBrightness, getCollisionHorizontalEscapeVector, getCommandSenderWorld, getControllingPassenger, getCustomName, getDeltaMovement, getDimensionChangingDelay, getDirection, getDismountLocationForPassenger, getDisplayName, getEncodeId, getEntityData, getExitPortal, getEyeHeight, getEyeHeight, getEyeHeightAccess, getEyePosition, getEyeY, getFireImmuneTicks, getFluidHeight, getFluidJumpThreshold, getForward, getHorizontalDistanceSqr, getId, getIndirectPassengers, getLeashOffset, getLightProbePosition, getLookAngle, getMaxAirSupply, getMotionDirection, getMyRidingOffset, getName, getOnPos, getPacketCoordinates, getPassengers, getPassengersRidingOffset, getPermissionLevel, getPersistentData, getPickRadius, getPistonPushReaction, getPortalWaitTime, getPose, getPosition, getRandomX, getRandomY, getRandomZ, getRemainingFireTicks, getRootVehicle, getRopeHoldPosition, getRotationVector, getScoreboardName, getSelfAndPassengers, getServer, getSharedFlag, getStringUUID, getSwimHighSpeedSplashSound, getSwimSound, getSwimSplashSound, getTags, getTeam, getTeamColor, getType, getTypeName, getUpVector, getUUID, getVehicle, getViewScale, getViewVector, getViewXRot, getX, getX, getY, getY, getZ, getZ, handleInsidePortal, handleNetherPortal, hasCustomName, hashCode, hasIndirectPassenger, hasOnePlayerPassenger, hasPassenger, hasPassenger, hasPermissions, ignoreExplosion, interactAt, is, isAddedToWorld, isAlliedTo, isAlliedTo, isAttackable, isColliding, isCrouching, isCustomNameVisible, isDescending, isDiscrete, isEyeInFluid, isFree, isGlowing, isIgnoringBlockTriggers, isInLava, isInvisible, isInvisibleTo, isInvulnerable, isInvulnerableTo, isInWater, isInWaterOrBubble, isInWaterOrRain, isInWaterRainOrBubble, isMovementNoisy, isNoGravity, isOnFire, isOnGround, isOnPortalCooldown, isPassenger, isPassengerOfSameVehicle, isPushedByFluid, isShiftKeyDown, isSilent, isSpectator, isSprinting, isSteppingCarefully, isSuppressingBounce, isSwimming, isUnderWater, isVehicle, isVisuallyCrawling, killed, lavaHurt, lerpMotion, limitPistonMovement, load, makeFlySound, makeStuckInBlock, maybeBackOffFromEdge, mirror, move, moveRelative, moveTo, moveTo, moveTo, moveTo, moveTowardsClosestSpace, newDoubleList, newFloatList, nextStep, onAboveBubbleCol, onAddedToWorld, onInsideBlock, onInsideBubbleColumn, onlyOpCanSetNbt, onPassengerTurned, onRemovedFromWorld, pick, playerTouch, playFlySound, playSound, playStepSound, playSwimSound, position, positionRider, processPortalCooldown, push, reapplyPosition, refreshDimensions, remove, remove, removePassenger, removeTag, removeVehicle, repositionEntityAfterLoad, resetPos, restoreFrom, revive, rotate, save, saveAsPassenger, saveWithoutId, sendMessage, setAirSupply, setBoundingBox, setCustomName, setCustomNameVisible, setDeltaMovement, setDeltaMovement, setGlowing, setInvisible, setInvulnerable, setLevel, setLocationFromBoundingbox, setNoGravity, setPacketCoordinates, setPacketCoordinates, setPortalCooldown, setPos, setPosAndOldPos, setPose, setPosRaw, setRemainingFireTicks, setRot, setSecondsOnFire, setSharedFlag, setShiftKeyDown, setSilent, setSwimming, setUUID, setViewScale, shouldBlockExplode, shouldInformAdmins, shouldRender, shouldRenderAtSqrDistance, showVehicleHealth, skipAttackInteraction, spawnAtLocation, spawnAtLocation, spawnAtLocation, spawnAtLocation, spawnSprintParticle, startRiding, startSeenByPlayer, stopSeenByPlayer, teleportTo, teleportToWithTicket, thunderHit, toString, turn, unRide, updateFluidHeightAndDoFluidPushing, updateInWaterStateAndDoFluidPushing, updateSwimming
Methods inherited from class net.minecraftforge.common.capabilities.CapabilityProvider
areCapsCompatible, areCapsCompatible, deserializeCaps, gatherCapabilities, gatherCapabilities, gatherCapabilities, getCapabilities, reviveCaps, serializeCaps
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
Methods inherited from interface net.minecraftforge.common.capabilities.ICapabilityProvider
getCapability
Methods inherited from interface net.minecraftforge.common.extensions.IForgeEntity
canBeRiddenInWater, canRiderInteract, deserializeNBT, getClassification, getDimensionsForge, getEntity, getEyeHeightForge, getPickedResult, serializeNBT, shouldRiderSit
-
Field Details
-
LOGGER
private static final org.apache.logging.log4j.Logger LOGGER -
DATA_PHASE
-
CRYSTAL_DESTROY_TARGETING
-
positions
public final double[][] positions -
posPointer
public int posPointer -
subEntities
-
head
-
neck
-
body
-
tail1
-
tail2
-
tail3
-
wing1
-
wing2
-
oFlapTime
public float oFlapTime -
flapTime
public float flapTime -
inWall
public boolean inWall -
dragonDeathTime
public int dragonDeathTime -
yRotA
public float yRotA -
nearestCrystal
-
dragonFight
-
phaseManager
-
growlTime
private int growlTime -
sittingDamageReceived
private int sittingDamageReceived -
nodes
-
nodeAdjacency
private final int[] nodeAdjacency -
openSet
-
-
Constructor Details
-
EnderDragonEntity
-
-
Method Details
-
setId
public void setId(int p_145769_1_) -
createAttributes
-
defineSynchedData
protected void defineSynchedData()- Overrides:
defineSynchedData
in classMobEntity
-
getLatencyPos
public double[] getLatencyPos(int p_70974_1_, float p_70974_2_) -
aiStep
public void aiStep() -
tickPart
private void tickPart(EnderDragonPartEntity p_226526_1_, double p_226526_2_, double p_226526_4_, double p_226526_6_) -
getHeadYOffset
private float getHeadYOffset() -
checkCrystals
private void checkCrystals() -
knockBack
-
hurt
-
rotWrap
private float rotWrap(double p_70973_1_) -
checkWalls
-
hurt
-
hurt
- Overrides:
hurt
in classLivingEntity
-
reallyHurt
-
kill
public void kill()- Overrides:
kill
in classLivingEntity
-
tickDeath
protected void tickDeath()- Overrides:
tickDeath
in classLivingEntity
-
dropExperience
private void dropExperience(int p_184668_1_) -
findClosestNode
public int findClosestNode() -
findClosestNode
public int findClosestNode(double p_184663_1_, double p_184663_3_, double p_184663_5_) -
findPath
-
reconstructPath
-
addAdditionalSaveData
- Overrides:
addAdditionalSaveData
in classMobEntity
-
readAdditionalSaveData
- Overrides:
readAdditionalSaveData
in classMobEntity
-
checkDespawn
public void checkDespawn()- Overrides:
checkDespawn
in classMobEntity
-
getSubEntities
-
isPickable
public boolean isPickable()- Overrides:
isPickable
in classLivingEntity
-
getSoundSource
- Overrides:
getSoundSource
in classEntity
-
getAmbientSound
- Overrides:
getAmbientSound
in classMobEntity
-
getHurtSound
- Overrides:
getHurtSound
in classLivingEntity
-
getSoundVolume
protected float getSoundVolume()- Overrides:
getSoundVolume
in classLivingEntity
-
getHeadPartYOffset
public float getHeadPartYOffset(int p_184667_1_, double[] p_184667_2_, double[] p_184667_3_) -
getHeadLookVector
-
onCrystalDestroyed
public void onCrystalDestroyed(EnderCrystalEntity p_184672_1_, BlockPos p_184672_2_, DamageSource p_184672_3_) -
onSyncedDataUpdated
- Overrides:
onSyncedDataUpdated
in classLivingEntity
-
getPhaseManager
-
getDragonFight
-
addEffect
- Overrides:
addEffect
in classLivingEntity
-
canRide
-
canChangeDimensions
public boolean canChangeDimensions()- Overrides:
canChangeDimensions
in classEntity
-
isMultipartEntity
public boolean isMultipartEntity()Description copied from interface:IForgeEntity
This is used to specify that your entity has multiple individual parts, such as the Vanilla Ender Dragon. SeeEnderDragonEntity
for an example implementation.- Specified by:
isMultipartEntity
in interfaceIForgeEntity
- Returns:
- true if this is a multipart entity.
-
getParts
Description copied from interface:IForgeEntity
Gets the individual sub parts that make up this entity. The entities returned by this method are NOT saved to the world in nay way, they exist as an extension of their host entity. The child entity does not track its server-side(or client-side) counterpart, and the host entity is responsible for moving and managing these children. Only used ifIForgeEntity.isMultipartEntity()
returns true. SeeEnderDragonEntity
for an example implementation.- Specified by:
getParts
in interfaceIForgeEntity
- Returns:
- The child parts of this entity. The value to be returned here should be cached.
-