public class WitherEntity extends MonsterEntity implements IChargeableMob, IRangedAttackMob
Modifier and Type | Class and Description |
---|---|
(package private) class |
WitherEntity.DoNothingGoal |
Entity.IMoveCallback
Modifier and Type | Field and Description |
---|---|
private int |
blockBreakCounter |
private ServerBossInfo |
bossInfo |
private static EntityPredicate |
field_213798_bB |
private static DataParameter<java.lang.Integer> |
FIRST_HEAD_TARGET |
private static java.util.List<DataParameter<java.lang.Integer>> |
HEAD_TARGETS |
private int[] |
idleHeadUpdates |
private static DataParameter<java.lang.Integer> |
INVULNERABILITY_TIME |
private int[] |
nextHeadUpdate |
private static java.util.function.Predicate<LivingEntity> |
NOT_UNDEAD |
private static DataParameter<java.lang.Integer> |
SECOND_HEAD_TARGET |
private static DataParameter<java.lang.Integer> |
THIRD_HEAD_TARGET |
private float[] |
xRotationHeads |
private float[] |
xRotOHeads |
private float[] |
yRotationHeads |
private float[] |
yRotOHeads |
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, LOGGER, 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 |
---|
WitherEntity(EntityType<? extends WitherEntity> p_i50226_1_,
World p_i50226_2_) |
Modifier and Type | Method and Description |
---|---|
boolean |
addPotionEffect(EffectInstance effectInstanceIn) |
void |
addTrackingPlayer(ServerPlayerEntity player) |
boolean |
attackEntityFrom(DamageSource source,
float amount) |
void |
attackEntityWithRangedAttack(LivingEntity target,
float distanceFactor) |
protected boolean |
canBeRidden(Entity entityIn) |
static boolean |
canDestroyBlock(BlockState blockIn)
Deprecated.
|
void |
checkDespawn() |
protected void |
dropSpecialItems(DamageSource source,
int looting,
boolean recentlyHitIn) |
protected SoundEvent |
getAmbientSound() |
CreatureAttribute |
getCreatureAttribute() |
protected SoundEvent |
getDeathSound() |
private double |
getHeadX(int p_82214_1_) |
float |
getHeadXRotation(int p_82210_1_) |
private double |
getHeadY(int p_82208_1_) |
float |
getHeadYRotation(int p_82207_1_) |
private double |
getHeadZ(int p_82213_1_) |
protected SoundEvent |
getHurtSound(DamageSource damageSourceIn) |
int |
getInvulTime() |
int |
getWatchedTargetId(int head) |
void |
ignite() |
boolean |
isCharged() |
boolean |
isNonBoss() |
boolean |
isPotionApplicable(EffectInstance potioneffectIn) |
private void |
launchWitherSkullToCoords(int p_82209_1_,
double x,
double y,
double z,
boolean invulnerable) |
private void |
launchWitherSkullToEntity(int p_82216_1_,
LivingEntity p_82216_2_) |
void |
livingTick() |
boolean |
onLivingFall(float distance,
float damageMultiplier) |
void |
readAdditional(CompoundNBT compound) |
protected void |
registerAttributes() |
protected void |
registerData() |
protected void |
registerGoals() |
void |
removeTrackingPlayer(ServerPlayerEntity player) |
private float |
rotlerp(float p_82204_1_,
float p_82204_2_,
float p_82204_3_) |
void |
setCustomName(ITextComponent name) |
void |
setInvulTime(int time) |
void |
setMotionMultiplier(BlockState state,
Vec3d motionMultiplierIn) |
protected void |
updateAITasks() |
void |
updateWatchedTargetId(int targetOffset,
int newId) |
void |
writeAdditional(CompoundNBT compound) |
canDropLoot, canMonsterSpawn, canMonsterSpawnInLight, findAmmo, func_213623_ec, getBlockPathWeight, getFallSound, getSoundCategory, getSplashSound, getSwimSound, isDespawnPeaceful, isPreventingPlayerRest, isValidLightLevel
canSpawn, followLeashSpeed, getBlockPathWeight, hasPath, onLeashDistance, updateLeashedState
attackEntityAsMob, baseTick, canAttack, canAttack, canBeLeashedTo, canBeSteered, canDespawn, canEquipItem, canPassengerSteer, canPickUpItem, canPickUpLoot, canSpawnOn, clearLeashed, createBodyController, createNavigator, detachHome, dropLoot, 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, isHolding, isInDaylight, isItemStackInSlot, isLeftHanded, isMaxGroupSize, isNoDespawnRequired, isNotColliding, isServerWorld, isWithinHomeDistanceCurrentPosition, isWithinHomeDistanceFromPosition, onInitialSpawn, playAmbientSound, playHurtSound, preventDespawn, processInitialInteract, processInteract, replaceItemInInventory, sendDebugPackets, setAggroed, setAIMoveSpeed, setAttackTarget, setCanPickUpLoot, setDropChance, setEnchantmentBasedOnDifficulty, setEquipmentBasedOnDifficulty, setHomePosAndDistance, setItemStackToSlot, setLeashHolder, setLeftHanded, setMoveForward, setMoveStrafing, setMoveVertical, setNoAI, setPathPriority, setVehicleEntityId, shouldExchangeEquipment, spawnExplosionParticle, startRiding, tick, updateDistance, updateEntityActionState, updateEquipmentIfNeeded, updateMovementGoalFlags
applyArmorCalculations, applyEntityCollision, applyPotionDamageCalculations, areAllPotionsAmbient, attackable, attemptTeleport, blockUsingShield, calculateFallDamage, canAttack, canBeCollidedWith, canBeHitWithPotion, canBePushed, canBeRiddenInWater, canBreatheUnderwater, canEntityBeSeen, clearActivePotions, clearBedPosition, collideWithEntity, collideWithNearbyEntities, constructKnockBackVector, createBrain, createSpawnPacket, createWitherRose, curePotionEffects, damageArmor, damageEntity, damageShield, decreaseAirSupply, determineNextAir, dropExperience, dropInventory, frostWalk, getAbsorptionAmount, getActiveHand, getActiveItemStack, getActivePotionEffect, getActivePotionEffects, getActivePotionMap, getAIMoveSpeed, getAlwaysRenderNameTagForRender, getArmorCoverPercentage, getArrowCountInEntity, getAttackingEntity, getAttribute, getAttributes, getBedDirection, getBedPosition, getBeeStingCount, getBlockState, getBrain, getCapability, getCombatTracker, getDrinkSound, getEatSound, getEyeHeight, getHealth, getHeldItem, getHeldItemMainhand, getHeldItemOffhand, getIdleTime, getItemInUseCount, getItemInUseMaxCount, getJumpUpwardsMotion, getLastAttackedEntity, getLastAttackedEntityTime, getLastDamageSource, getMaxHealth, getRenderScale, getRevengeTarget, getRevengeTimer, getRNG, getRotationYawHead, getSize, getSoundPitch, getSoundVolume, getStandingEyeHeight, getSwimAnimation, getSwingProgress, getTicksElytraFlying, getTotalArmorValue, getVisibilityMultiplier, getWaterSlowDown, getYaw, handleFluidSneak, hasItemInSlot, heal, isActiveItemStackBlocking, isActualySwimming, isAlive, isChild, isElytraFlying, isEntityInsideOpaqueBlock, isEntityUndead, isHandActive, isMovementBlocked, isOnLadder, isPlayer, isPotionActive, isSleeping, isSpinAttacking, isSuppressingSlidingDownLadder, jump, knockBack, lookAt, markPotionsDirty, markVelocityChanged, notifyDataManagerChange, onChangedPotionEffect, onDeath, onDeathUpdate, onFinishedPotionEffect, onFoodEaten, onItemPickup, onItemUseFinish, onKillCommand, 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, 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, getSubmergedHeight, 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, repositionDirectPassengers, resetPositionToBB, revive, rotateTowards, sendMessage, setAir, setBoundingBox, setCustomNameVisible, setEntityId, setFire, setFireTimer, setFlag, setGlowing, setInLava, setInvisible, setInvulnerable, setLocationAndAngles, setMotion, setMotion, 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 DataParameter<java.lang.Integer> FIRST_HEAD_TARGET
private static final DataParameter<java.lang.Integer> SECOND_HEAD_TARGET
private static final DataParameter<java.lang.Integer> THIRD_HEAD_TARGET
private static final java.util.List<DataParameter<java.lang.Integer>> HEAD_TARGETS
private static final DataParameter<java.lang.Integer> INVULNERABILITY_TIME
private final float[] xRotationHeads
private final float[] yRotationHeads
private final float[] xRotOHeads
private final float[] yRotOHeads
private final int[] nextHeadUpdate
private final int[] idleHeadUpdates
private int blockBreakCounter
private final ServerBossInfo bossInfo
private static final java.util.function.Predicate<LivingEntity> NOT_UNDEAD
private static final EntityPredicate field_213798_bB
public WitherEntity(EntityType<? extends WitherEntity> p_i50226_1_, World p_i50226_2_)
protected void registerGoals()
registerGoals
in class MobEntity
protected void registerData()
registerData
in class MobEntity
public void writeAdditional(CompoundNBT compound)
writeAdditional
in class MobEntity
public void readAdditional(CompoundNBT compound)
readAdditional
in class MobEntity
public void setCustomName(@Nullable ITextComponent name)
setCustomName
in class Entity
protected SoundEvent getAmbientSound()
getAmbientSound
in class MobEntity
protected SoundEvent getHurtSound(DamageSource damageSourceIn)
getHurtSound
in class MonsterEntity
protected SoundEvent getDeathSound()
getDeathSound
in class MonsterEntity
public void livingTick()
livingTick
in class MonsterEntity
protected void updateAITasks()
updateAITasks
in class MobEntity
@Deprecated public static boolean canDestroyBlock(BlockState blockIn)
public void ignite()
public void setMotionMultiplier(BlockState state, Vec3d motionMultiplierIn)
setMotionMultiplier
in class Entity
public void addTrackingPlayer(ServerPlayerEntity player)
addTrackingPlayer
in class Entity
public void removeTrackingPlayer(ServerPlayerEntity player)
removeTrackingPlayer
in class Entity
private double getHeadX(int p_82214_1_)
private double getHeadY(int p_82208_1_)
private double getHeadZ(int p_82213_1_)
private float rotlerp(float p_82204_1_, float p_82204_2_, float p_82204_3_)
private void launchWitherSkullToEntity(int p_82216_1_, LivingEntity p_82216_2_)
private void launchWitherSkullToCoords(int p_82209_1_, double x, double y, double z, boolean invulnerable)
public void attackEntityWithRangedAttack(LivingEntity target, float distanceFactor)
attackEntityWithRangedAttack
in interface IRangedAttackMob
public boolean attackEntityFrom(DamageSource source, float amount)
attackEntityFrom
in class MonsterEntity
protected void dropSpecialItems(DamageSource source, int looting, boolean recentlyHitIn)
dropSpecialItems
in class MobEntity
public void checkDespawn()
checkDespawn
in class MobEntity
public boolean onLivingFall(float distance, float damageMultiplier)
onLivingFall
in class LivingEntity
public boolean addPotionEffect(EffectInstance effectInstanceIn)
addPotionEffect
in class LivingEntity
protected void registerAttributes()
registerAttributes
in class MonsterEntity
public float getHeadYRotation(int p_82207_1_)
public float getHeadXRotation(int p_82210_1_)
public int getInvulTime()
public void setInvulTime(int time)
public int getWatchedTargetId(int head)
public void updateWatchedTargetId(int targetOffset, int newId)
public boolean isCharged()
isCharged
in interface IChargeableMob
public CreatureAttribute getCreatureAttribute()
getCreatureAttribute
in class LivingEntity
protected boolean canBeRidden(Entity entityIn)
canBeRidden
in class Entity
public boolean isPotionApplicable(EffectInstance potioneffectIn)
isPotionApplicable
in class LivingEntity