public class EnderDragonEntity extends MobEntity implements IMob
Entity.IMoveCallback
Modifier and Type | Field and Description |
---|---|
float |
animTime |
EnderCrystalEntity |
closestEnderCrystal |
int |
deathTicks |
private EnderDragonPartEntity |
dragonPartBody |
EnderDragonPartEntity |
dragonPartHead |
private EnderDragonPartEntity |
dragonPartLeftWing |
private EnderDragonPartEntity |
dragonPartNeck |
private EnderDragonPartEntity |
dragonPartRightWing |
private EnderDragonPartEntity[] |
dragonParts |
private EnderDragonPartEntity |
dragonPartTail1 |
private EnderDragonPartEntity |
dragonPartTail2 |
private EnderDragonPartEntity |
dragonPartTail3 |
private static EntityPredicate |
field_213405_bO |
float |
field_226525_bB_ |
private DragonFightManager |
fightManager |
private int |
growlTime |
private static org.apache.logging.log4j.Logger |
LOGGER |
private int[] |
neighbors |
private PathHeap |
pathFindQueue |
private PathPoint[] |
pathPoints |
static DataParameter<java.lang.Integer> |
PHASE |
private PhaseManager |
phaseManager |
float |
prevAnimTime |
double[][] |
ringBuffer |
int |
ringBufferIndex |
private int |
sittingDamageReceived |
boolean |
slowed |
experienceValue, goalSelector, inventoryArmorDropChances, inventoryHandsDropChances, jumpController, livingSoundTime, lookController, moveController, navigator, targetSelector
activeItemStack, activeItemStackUseCount, arrowHitTimer, attackedAtYaw, attackingPlayer, beeStingRemovalCooldown, brain, dead, deathTime, ENTITY_GRAVITY, hurtTime, idleTime, interpTargetHeadYaw, interpTargetPitch, interpTargetX, interpTargetY, interpTargetYaw, interpTargetZ, interpTicksHead, isJumping, isSwingInProgress, jumpMovementFactor, lastDamage, limbSwing, limbSwingAmount, LIVING_FLAGS, maxHurtResistantTime, maxHurtTime, movedDistance, moveForward, moveStrafing, moveVertical, NAMETAG_DISTANCE, newPosRotationIncrements, onGroundSpeedFactor, prevLimbSwingAmount, prevMovedDistance, prevOnGroundSpeedFactor, prevRenderYawOffset, prevRotationYawHead, prevSwingProgress, randomUnused1, randomUnused2, recentlyHit, renderYawOffset, rotationYawHead, scoreValue, SLEEPING_SIZE, spinAttackDuration, SWIM_SPEED, swingingHand, swingProgress, swingProgressInt, ticksElytraFlying, ticksSinceLastSwing, unused180
addedToChunk, cachedUniqueIdString, chunkCoordX, chunkCoordY, chunkCoordZ, collided, collidedHorizontally, collidedVertically, dataManager, dimension, distanceWalkedModified, distanceWalkedOnStepModified, entityCollisionReduction, entityUniqueID, eyesInWater, fallDistance, firstUpdate, FLAGS, forceSpawn, glowing, hurtResistantTime, ignoreFrustumCheck, inLava, inPortal, inWater, isAirBorne, lastPortalPos, lastPortalVec, lastTickPosX, lastTickPosY, lastTickPosZ, motionMultiplier, noClip, onGround, portalCounter, POSE, prevDistanceWalkedModified, preventEntitySpawning, prevPosX, prevPosY, prevPosZ, prevRotationPitch, prevRotationYaw, rand, removed, rideCooldown, rotationPitch, rotationYaw, serverPosX, serverPosY, serverPosZ, stepHeight, submergedHeight, teleportDirection, ticksExisted, timeUntilPortal, velocityChanged, world
DUMMY
Constructor and Description |
---|
EnderDragonEntity(EntityType<? extends EnderDragonEntity> type,
World worldIn) |
Modifier and Type | Method and Description |
---|---|
boolean |
addPotionEffect(EffectInstance effectInstanceIn) |
protected boolean |
attackDragonFrom(DamageSource source,
float amount) |
private void |
attackEntitiesInList(java.util.List<Entity> p_70971_1_) |
boolean |
attackEntityFrom(DamageSource source,
float amount) |
boolean |
canBeCollidedWith() |
protected boolean |
canBeRidden(Entity entityIn) |
void |
checkDespawn() |
private void |
collideWithEntities(java.util.List<Entity> p_70970_1_) |
private boolean |
destroyBlocksInAABB(AxisAlignedBB p_70972_1_) |
private void |
dropExperience(int p_184668_1_) |
Path |
findPath(int startIdx,
int finishIdx,
PathPoint andThen) |
boolean |
func_213403_a(EnderDragonPartEntity p_213403_1_,
DamageSource p_213403_2_,
float p_213403_3_) |
private void |
func_226526_a_(EnderDragonPartEntity p_226526_1_,
double p_226526_2_,
double p_226526_4_,
double p_226526_6_) |
private float |
func_226527_er_() |
protected SoundEvent |
getAmbientSound() |
EnderDragonPartEntity[] |
getDragonParts() |
DragonFightManager |
getFightManager() |
Vec3d |
getHeadLookVec(float p_184665_1_) |
float |
getHeadPartYOffset(int p_184667_1_,
double[] p_184667_2_,
double[] p_184667_3_) |
protected SoundEvent |
getHurtSound(DamageSource damageSourceIn) |
double[] |
getMovementOffsets(int p_70974_1_,
float p_70974_2_) |
int |
getNearestPpIdx(double x,
double y,
double z) |
PhaseManager |
getPhaseManager() |
SoundCategory |
getSoundCategory() |
protected float |
getSoundVolume() |
int |
initPathPoints() |
boolean |
isNonBoss() |
void |
livingTick() |
private Path |
makePath(PathPoint start,
PathPoint finish) |
void |
notifyDataManagerChange(DataParameter<?> key) |
void |
onCrystalDestroyed(EnderCrystalEntity crystal,
BlockPos pos,
DamageSource dmgSrc) |
protected void |
onDeathUpdate() |
void |
onKillCommand() |
void |
readAdditional(CompoundNBT compound) |
protected void |
registerAttributes() |
protected void |
registerData() |
private float |
simplifyAngle(double p_70973_1_) |
private void |
updateDragonEnderCrystal() |
void |
writeAdditional(CompoundNBT compound) |
attackEntityAsMob, baseTick, canAttack, canAttack, canBeLeashedTo, canBeSteered, canDespawn, canEquipItem, canPassengerSteer, canPickUpItem, canPickUpLoot, canSpawn, canSpawnOn, clearLeashed, createBodyController, createNavigator, detachHome, dropLoot, dropSpecialItems, eatGrassBonus, enablePersistence, faceEntity, getArmorByChance, getArmorInventoryList, getAttackTarget, getDropChance, getEntitySenses, getExperiencePoints, getFaceRotSpeed, getHeldEquipment, getHomePosition, getHorizontalFaceSpeed, getItemStackFromSlot, getJumpController, getLeashed, getLeashHolder, getLookController, getLootContextBuilder, getLootTable, getLootTableResourceLocation, getMaxFallHeight, getMaximumHomeDistance, getMaxSpawnedInChunk, getMoveHelper, getNavigator, getPathPriority, getPrimaryHand, getSlotForItemStack, getTalkInterval, getVerticalFaceSpeed, handleFluidJump, handleStatusUpdate, isAggressive, isAIDisabled, isDespawnPeaceful, isHolding, isInDaylight, isItemStackInSlot, isLeftHanded, isMaxGroupSize, isNoDespawnRequired, isNotColliding, isServerWorld, isWithinHomeDistanceCurrentPosition, isWithinHomeDistanceFromPosition, onInitialSpawn, playAmbientSound, playHurtSound, preventDespawn, processInitialInteract, processInteract, registerGoals, replaceItemInInventory, sendDebugPackets, setAggroed, setAIMoveSpeed, setAttackTarget, setCanPickUpLoot, setDropChance, setEnchantmentBasedOnDifficulty, setEquipmentBasedOnDifficulty, setHomePosAndDistance, setItemStackToSlot, setLeashHolder, setLeftHanded, setMoveForward, setMoveStrafing, setMoveVertical, setNoAI, setPathPriority, setVehicleEntityId, shouldExchangeEquipment, spawnExplosionParticle, startRiding, tick, updateAITasks, updateDistance, updateEntityActionState, updateEquipmentIfNeeded, updateLeashedState, updateMovementGoalFlags
applyArmorCalculations, applyEntityCollision, applyPotionDamageCalculations, areAllPotionsAmbient, attackable, attemptTeleport, blockUsingShield, calculateFallDamage, canAttack, canBeHitWithPotion, canBePushed, canBeRiddenInWater, canBreatheUnderwater, canDropLoot, canEntityBeSeen, clearActivePotions, clearBedPosition, collideWithEntity, collideWithNearbyEntities, constructKnockBackVector, createBrain, createSpawnPacket, createWitherRose, curePotionEffects, damageArmor, damageEntity, damageShield, decreaseAirSupply, determineNextAir, dropExperience, dropInventory, findAmmo, frostWalk, getAbsorptionAmount, getActiveHand, getActiveItemStack, getActivePotionEffect, getActivePotionEffects, getActivePotionMap, getAIMoveSpeed, getAlwaysRenderNameTagForRender, getArmorCoverPercentage, getArrowCountInEntity, getAttackingEntity, getAttribute, getAttributes, getBedDirection, getBedPosition, getBeeStingCount, getBlockState, getBrain, getCapability, getCombatTracker, getCreatureAttribute, getDeathSound, getDrinkSound, getEatSound, getEyeHeight, getFallSound, getHealth, getHeldItem, getHeldItemMainhand, getHeldItemOffhand, getIdleTime, getItemInUseCount, getItemInUseMaxCount, getJumpUpwardsMotion, getLastAttackedEntity, getLastAttackedEntityTime, getLastDamageSource, getMaxHealth, getRenderScale, getRevengeTarget, getRevengeTimer, getRNG, getRotationYawHead, getSize, getSoundPitch, getStandingEyeHeight, getSwimAnimation, getSwingProgress, getTicksElytraFlying, getTotalArmorValue, getVisibilityMultiplier, getWaterSlowDown, getYaw, handleFluidSneak, hasItemInSlot, heal, isActiveItemStackBlocking, isActualySwimming, isAlive, isChild, isElytraFlying, isEntityInsideOpaqueBlock, isEntityUndead, isHandActive, isMovementBlocked, isOnLadder, isPlayer, isPotionActive, isPotionApplicable, isSleeping, isSpinAttacking, isSuppressingSlidingDownLadder, jump, knockBack, lookAt, markPotionsDirty, markVelocityChanged, onChangedPotionEffect, onDeath, onFinishedPotionEffect, onFoodEaten, onItemPickup, onItemUseFinish, onLivingFall, onNewPotionEffect, outOfWorld, performHurtAnimation, playEquipSound, playFallSound, remove, removeActivePotionEffect, removePotionEffect, resetActiveHand, resetPotionEffectMetadata, sendBreakAnimation, sendBreakAnimation, sendEndCombat, sendEnterCombat, setAbsorptionAmount, setActiveHand, setArrowCountInEntity, setBedPosition, setBeeStingCount, setHeadRotation, setHealth, setHeldItem, setIdleTime, setJumping, setLastAttackedEntity, setLivingFlag, setPartying, setPositionAndRotationDirect, setRenderYawOffset, setRevengeTarget, setRotationYawHead, setSprinting, shouldRiderFaceForward, spawnDrops, spinAttack, startSleeping, startSpinAttack, stopActiveHand, stopRiding, swing, swingArm, travel, triggerItemUseEffects, updateArmSwingProgress, updateFallState, updatePotionEffects, updatePotionMetadata, updateRidden, updateSpinAttack, wakeUp
addPassenger, addTag, addTrackingPlayer, addVelocity, allowLogging, applyEnchantments, applyOrientationToEntity, applyPlayerInteraction, areEyesInFluid, areEyesInFluid, awardKillScore, calculateUpVector, canBeAttackedWithItem, canExplosionDestroyBlock, canFitPassenger, canRenderOnFire, canSwim, canTrample, canTriggerWalking, canUpdate, canUpdate, captureDrops, captureDrops, changeDimension, changeDimension, collideBoundingBox, collideBoundingBoxHeuristically, copyDataFromOld, copyLocationAndAnglesFrom, createRunningParticles, dealFireDamage, decrementTimeUntilPortal, detach, determineNextStepDistance, doBlockCollisions, doesEntityNotTriggerPressurePlate, doWaterSplashEffect, entityDropItem, entityDropItem, entityDropItem, entityDropItem, equals, extinguish, fillCrashReport, forceSetPosition, getAdjustedHorizontalFacing, getAir, getAllowedMovement, getBoundingBox, getBoundingBox, getBrightness, getCachedUniqueIdString, getCollisionBorderSize, getCollisionBoundingBox, getCollisionBox, getCommandSource, getControllingPassenger, getCustomName, getDataManager, getDisplayName, getDistance, getDistanceSq, getDistanceSq, getDistanceSq, getEntityId, getEntityString, getEntityWorld, getEquipmentAndArmor, getExplosionResistance, getEyeHeight, getEyeHeight, getEyePosition, getFireImmuneTicks, getFireTimer, getFlag, getForward, getHeight, getHighspeedSplashSound, getHorizontalFacing, getHoverEvent, getJumpFactor, getLastPortalVec, getLook, getLookVec, getLowestRidingEntity, getMaxAir, getMaxInPortalTime, getMirroredYaw, getMotion, getMountedYOffset, getName, getOnPosition, getPassengers, getPermissionLevel, getPersistentData, getPitch, getPitchYaw, getPortalCooldown, getPose, getPosition, getPositionUnderneath, getPositionVec, getPositionVector, getPosX, getPosXRandom, getPosXWidth, getPosY, getPosYEye, getPosYHeight, getPosYRandom, getPosZ, getPosZRandom, getPosZWidth, getProfessionName, getPushReaction, getRecursivePassengers, getRenderBoundingBox, getRenderDistanceWeight, getRidingEntity, getRotatedYaw, getScoreboardName, getSelfAndPassengers, getServer, getSpeedFactor, getSplashSound, getSubmergedHeight, getSwimSound, getTags, getTeam, getTeamColor, getTeleportDirection, getType, getUniqueID, getUpVector, getVectorForRotation, getWidth, getYOffset, handleFluidAcceleration, handlePistonMovement, handleWaterMovement, hasCustomName, hashCode, hasNoGravity, hasPermissionLevel, hitByEntity, horizontalMag, ignoreItemEntityData, isAddedToWorld, isBeingRidden, isBurning, isCrouching, isCustomNameVisible, isDescending, isDiscrete, isEntityEqual, isGlowing, isImmuneToExplosions, isImmuneToFire, isInLava, isInRangeToRender3d, isInRangeToRenderDist, isInvisible, isInvisibleToPlayer, isInvulnerable, isInvulnerableTo, isInWater, isInWaterOrBubbleColumn, isInWaterRainOrBubbleColumn, isLiving, isOffsetPositionInLiquid, isOnePlayerRiding, isOnSameTeam, isOnScoreboardTeam, isPassenger, isPassenger, isPassenger, isPoseClear, isPushedByWater, isRidingOrBeingRiddenBy, isRidingSameEntity, isSilent, isSneaking, isSpectatedByPlayer, isSpectator, isSprinting, isSteppingCarefully, isSuppressingBounce, isSwimming, isVisuallySwimming, isWet, makeFlySound, maybeBackOffFromEdge, move, moveForced, moveRelative, moveToBlockPosAndAngles, newDoubleNBTList, newFloatNBTList, onAddedToWorld, onCollideWithPlayer, onEnterBubbleColumn, onEnterBubbleColumnWithAirAbove, onInsideBlock, onKillEntity, onRemovedFromWorld, onStruckByLightning, pick, playFlySound, playSound, playStepSound, playSwimSound, positionRider, preparePlayerToSpawn, pushOutOfBlocks, read, recalculateSize, recenterBoundingBox, remove, removePassenger, removePassengers, removeTag, removeTrackingPlayer, repositionDirectPassengers, resetPositionToBB, revive, rotateTowards, sendMessage, setAir, setBoundingBox, setCustomName, setCustomNameVisible, setEntityId, setFire, setFireTimer, setFlag, setGlowing, setInLava, setInvisible, setInvulnerable, setLocationAndAngles, setMotion, setMotion, setMotionMultiplier, setNoGravity, setOnFireFromLava, setPacketCoordinates, setPortal, setPose, setPosition, setPositionAndRotation, setPositionAndUpdate, setPositionNonDirty, setRawPosition, setRenderDistanceWeight, setRotation, setSilent, setSneaking, setSwimming, setUniqueId, setVelocity, setWorld, shouldReceiveErrors, shouldReceiveFeedback, shouldSetPosAfterLoading, spawnRunningParticles, startRiding, teleportKeepLoaded, toString, updatePassenger, updatePortal, updateSwimming, writeUnlessPassenger, writeUnlessRemoved, writeWithoutTypeId
areCapsCompatible, areCapsCompatible, deserializeCaps, gatherCapabilities, gatherCapabilities, getCapabilities, invalidateCaps, reviveCaps, serializeCaps
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
canBeRiddenInWater, canRiderInteract, deserializeNBT, getClassification, getEntity, getPickedResult, serializeNBT, shouldRiderSit
getCapability
private static final org.apache.logging.log4j.Logger LOGGER
public static final DataParameter<java.lang.Integer> PHASE
private static final EntityPredicate field_213405_bO
public final double[][] ringBuffer
public int ringBufferIndex
private final EnderDragonPartEntity[] dragonParts
public final EnderDragonPartEntity dragonPartHead
private final EnderDragonPartEntity dragonPartNeck
private final EnderDragonPartEntity dragonPartBody
private final EnderDragonPartEntity dragonPartTail1
private final EnderDragonPartEntity dragonPartTail2
private final EnderDragonPartEntity dragonPartTail3
private final EnderDragonPartEntity dragonPartRightWing
private final EnderDragonPartEntity dragonPartLeftWing
public float prevAnimTime
public float animTime
public boolean slowed
public int deathTicks
public float field_226525_bB_
@Nullable public EnderCrystalEntity closestEnderCrystal
@Nullable private final DragonFightManager fightManager
private final PhaseManager phaseManager
private int growlTime
private int sittingDamageReceived
private final PathPoint[] pathPoints
private final int[] neighbors
private final PathHeap pathFindQueue
public EnderDragonEntity(EntityType<? extends EnderDragonEntity> type, World worldIn)
protected void registerAttributes()
registerAttributes
in class MobEntity
protected void registerData()
registerData
in class MobEntity
public double[] getMovementOffsets(int p_70974_1_, float p_70974_2_)
public void livingTick()
livingTick
in class MobEntity
private void func_226526_a_(EnderDragonPartEntity p_226526_1_, double p_226526_2_, double p_226526_4_, double p_226526_6_)
private float func_226527_er_()
private void updateDragonEnderCrystal()
private void collideWithEntities(java.util.List<Entity> p_70970_1_)
private void attackEntitiesInList(java.util.List<Entity> p_70971_1_)
private float simplifyAngle(double p_70973_1_)
private boolean destroyBlocksInAABB(AxisAlignedBB p_70972_1_)
public boolean func_213403_a(EnderDragonPartEntity p_213403_1_, DamageSource p_213403_2_, float p_213403_3_)
public boolean attackEntityFrom(DamageSource source, float amount)
attackEntityFrom
in class LivingEntity
protected boolean attackDragonFrom(DamageSource source, float amount)
public void onKillCommand()
onKillCommand
in class LivingEntity
protected void onDeathUpdate()
onDeathUpdate
in class LivingEntity
private void dropExperience(int p_184668_1_)
public int initPathPoints()
public int getNearestPpIdx(double x, double y, double z)
public void writeAdditional(CompoundNBT compound)
writeAdditional
in class MobEntity
public void readAdditional(CompoundNBT compound)
readAdditional
in class MobEntity
public void checkDespawn()
checkDespawn
in class MobEntity
public EnderDragonPartEntity[] getDragonParts()
public boolean canBeCollidedWith()
canBeCollidedWith
in class LivingEntity
public SoundCategory getSoundCategory()
getSoundCategory
in class Entity
protected SoundEvent getAmbientSound()
getAmbientSound
in class MobEntity
protected SoundEvent getHurtSound(DamageSource damageSourceIn)
getHurtSound
in class LivingEntity
protected float getSoundVolume()
getSoundVolume
in class LivingEntity
public float getHeadPartYOffset(int p_184667_1_, double[] p_184667_2_, double[] p_184667_3_)
public Vec3d getHeadLookVec(float p_184665_1_)
public void onCrystalDestroyed(EnderCrystalEntity crystal, BlockPos pos, DamageSource dmgSrc)
public void notifyDataManagerChange(DataParameter<?> key)
notifyDataManagerChange
in class LivingEntity
public PhaseManager getPhaseManager()
@Nullable public DragonFightManager getFightManager()
public boolean addPotionEffect(EffectInstance effectInstanceIn)
addPotionEffect
in class LivingEntity
protected boolean canBeRidden(Entity entityIn)
canBeRidden
in class Entity