net.minecraft.entity.monster

## Class EntityWitch

- java.lang.Object
- - net.minecraft.entity.Entity
  - - net.minecraft.entity.EntityLivingBase
    - - net.minecraft.entity.EntityLiving
      - - net.minecraft.entity.EntityCreature
        - - net.minecraft.entity.monster.EntityMob
          - - net.minecraft.entity.monster.EntityWitch

- All Implemented Interfaces:
    IRangedAttackMob, IMob, IAnimals

      public class EntityWitch
      extends EntityMob
      implements IRangedAttackMob

- - ### Field Summary

    - ### Fields inherited from class net.minecraft.entity.EntityCreature

      `field_110179_h, field_110181_i`

    - ### Fields inherited from class net.minecraft.entity.EntityLiving

      `experienceValue, livingSoundTime, targetTasks, tasks`

    - ### Fields inherited from class net.minecraft.entity.EntityLivingBase

      `arrowHitTimer, attackedAtYaw, attackTime, cameraPitch, deathTime, field_70769_ao, field_70770_ap, hurtTime, isSwingInProgress, jumpMovementFactor, limbSwing, limbSwingAmount, maxHurtResistantTime, maxHurtTime, moveForward, moveStrafing, prevCameraPitch, prevHealth, prevLimbSwingAmount, prevRenderYawOffset, prevRotationYawHead, prevSwingProgress, renderYawOffset, rotationYawHead, swingProgress, swingProgressInt`

    - ### Fields inherited from class net.minecraft.entity.Entity

      `addedToChunk, boundingBox, capturedDrops, captureDrops, chunkCoordX, chunkCoordY, chunkCoordZ, dimension, distanceWalkedModified, distanceWalkedOnStepModified, entityCollisionReduction, entityId, fallDistance, field_70135_K, fireResistance, forceSpawn, height, hurtResistantTime, ignoreFrustumCheck, isAirBorne, isCollided, isCollidedHorizontally, isCollidedVertically, isDead, lastTickPosX, lastTickPosY, lastTickPosZ, motionX, motionY, motionZ, myEntitySize, noClip, onGround, posX, posY, posZ, prevDistanceWalkedModified, preventEntitySpawning, prevPosX, prevPosY, prevPosZ, prevRotationPitch, prevRotationYaw, renderDistanceWeight, riddenByEntity, ridingEntity, rotationPitch, rotationYaw, serverPosX, serverPosY, serverPosZ, stepHeight, ticksExisted, timeUntilPortal, velocityChanged, width, worldObj, yOffset, ySize`

    - ### Fields inherited from interface net.minecraft.entity.monster.IMob

      `mobSelector`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `EntityWitch(World par1World)`

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `attackEntityWithRangedAttack(EntityLivingBase par1EntityLivingBase, float par2)` Attack the specified entity using a ranged attack.
    `boolean` | `getAggressive()` Return whether this witch is aggressive at an entity.
    `void` | `handleHealthUpdate(byte par1)`
    `boolean` | `isAIEnabled()` Returns true if the newer Entity AI code should be run
    `void` | `onLivingUpdate()` Called frequently so the entity can update its state every tick as required.
    `void` | `setAggressive(boolean par1)` Set whether this witch is aggressive at an entity.

    - ### Methods inherited from class net.minecraft.entity.monster.EntityMob

      `attackEntityAsMob, attackEntityFrom, getBlockPathWeight, getCanSpawnHere, onUpdate`

    - ### Methods inherited from class net.minecraft.entity.EntityCreature

      `detachHome, func_110173_bK, func_110174_bM, func_110176_b, getEntityToAttack, getHomePosition, hasHome, hasPath, setHomeArea, setPathToEntity, setTarget`

    - ### Methods inherited from class net.minecraft.entity.EntityLiving

      `allowLeashing, canAttackClass, canBeSteered, canPickUpLoot, clearLeashed, eatGrassBonus, faceEntity, func_110163_bv, func_130225_q, getAlwaysRenderNameTag, getAlwaysRenderNameTagForRender, getArmorItemForSlot, getArmorPosition, getAttackTarget, getCurrentItemOrArmor, getCustomNameTag, getEntityName, getEntitySenses, getHeldItem, getJumpHelper, getLastActiveItems, getLeashed, getLeashedToEntity, getLookHelper, getMaxSafePointTries, getMaxSpawnedInChunk, getMoveHelper, getNavigator, getRenderSizeModifier, getTalkInterval, getVerticalFaceSpeed, hasCustomNameTag, interactFirst, isNoDespawnRequired, onEntityUpdate, onSpawnWithEgg, playLivingSound, readEntityFromNBT, setAIMoveSpeed, setAlwaysRenderNameTag, setAttackTarget, setCanPickUpLoot, setCurrentItemOrArmor, setCustomNameTag, setEquipmentDropChance, setLeashedToEntity, setMoveForward, spawnExplosionParticle, writeEntityToNBT`

    - ### Methods inherited from class net.minecraft.entity.EntityLivingBase

      `addPotionEffect, canBeCollidedWith, canBePushed, canBreatheUnderwater, canEntityBeSeen, clearActivePotions, curePotionEffects, dismountEntity, func_110142_aN, func_142015_aE, func_94060_bK, getAbsorptionAmount, getActivePotionEffect, getActivePotionEffects, getAge, getAIMoveSpeed, getAITarget, getArrowCountInEntity, getAttributeMap, getCreatureAttribute, getEntityAttribute, getEyeHeight, getHealth, getItemIcon, getLastAttacker, getLastAttackerTime, getLook, getLookVec, getMaxHealth, getPosition, getRNG, getRotationYawHead, getSwingProgress, getTeam, getTotalArmorValue, heal, isChild, isClientWorld, isEntityAlive, isEntityUndead, isOnLadder, isOnSameTeam, isOnTeam, isPlayerSleeping, isPotionActive, isPotionActive, isPotionApplicable, knockBack, moveEntityWithHeading, onDeath, onItemPickup, performHurtAnimation, rayTrace, removePotionEffect, removePotionEffectClient, renderBrokenItemStack, setAbsorptionAmount, setArrowCountInEntity, setHealth, setJumping, setLastAttacker, setPositionAndRotation2, setPositionAndUpdate, setRevengeTarget, setRotationYawHead, setSprinting, shouldRiderFaceForward, swingItem, updateRidden`

    - ### Methods inherited from class net.minecraft.entity.Entity

      `addEntityCrashInfo, addToPlayerScore, addVelocity, applyEntityCollision, canAttackWithItem, canRenderOnFire, canRiderInteract, copyDataFrom, copyLocationAndAnglesFrom, doesEntityNotTriggerPressurePlate, dropItem, dropItemWithOffset, entityDropItem, equals, extinguish, getAir, getBlockExplosionResistance, getBoundingBox, getBrightness, getBrightnessForRender, getCollisionBorderSize, getCollisionBox, getDataWatcher, getDistance, getDistanceSq, getDistanceSqToEntity, getDistanceToEntity, getEntityData, getExtendedProperties, getMaxInPortalTime, getMountedYOffset, getParts, getPersistentID, getPickedResult, getPortalCooldown, getShadowSize, getTeleportDirection, getTranslatedEntityName, getUniqueID, getYOffset, handleLavaMovement, handleWaterMovement, hashCode, hitByEntity, isBurning, isCreatureType, isEating, isEntityEqual, isEntityInsideOpaqueBlock, isEntityInvulnerable, isImmuneToFire, isInRangeToRenderDist, isInRangeToRenderVec3D, isInsideOfMaterial, isInvisible, isInvisibleToPlayer, isInWater, isOffsetPositionInLiquid, isPushedByWater, isRiding, isSneaking, isSprinting, isWet, mountEntity, moveEntity, moveFlying, onChunkLoad, onCollideWithPlayer, onKillEntity, onStruckByLightning, playSound, readFromNBT, registerExtendedProperties, resetEntityId, setAir, setAngles, setDead, setEating, setFire, setInPortal, setInvisible, setInWeb, setLocationAndAngles, setPosition, setPositionAndRotation, setSneaking, setVelocity, setWorld, shouldDismountInWater, shouldExplodeBlock, shouldRenderInPass, shouldRiderSit, toString, travelToDimension, updateRiderPosition, writeMountToNBT, writeToNBT, writeToNBTOptional`

    - ### Methods inherited from class java.lang.Object

      `getClass, notify, notifyAll, wait, wait, wait`

- - ### Constructor Detail

    - #### EntityWitch

          public EntityWitch(World par1World)

  - ### Method Detail

    - #### setAggressive

          public void setAggressive(boolean par1)

      Set whether this witch is aggressive at an entity.

    - #### getAggressive

          public boolean getAggressive()

      Return whether this witch is aggressive at an entity.

    - #### isAIEnabled

          public boolean isAIEnabled()

      Returns true if the newer Entity AI code should be run

    - #### onLivingUpdate

          public void onLivingUpdate()

      Called frequently so the entity can update its state every tick as required. For example, zombies and skeletons use this to react to sunlight and start to burn.
      Overrides:
        `onLivingUpdate` in class `EntityMob`

    - #### handleHealthUpdate

          public void handleHealthUpdate(byte par1)

      Overrides:
        `handleHealthUpdate` in class `EntityLivingBase`

    - #### attackEntityWithRangedAttack

          public void attackEntityWithRangedAttack(EntityLivingBase par1EntityLivingBase,
                                          float par2)

      Attack the specified entity using a ranged attack.
      Specified by:
        `attackEntityWithRangedAttack` in interface `IRangedAttackMob`