net.minecraft.entity.monster

## Class EntityWitch

- java.lang.Object
- - net.minecraft.entity.Entity
  - - 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.EntityLiving

      `arrowHitTimer, attackedAtYaw, attackTime, cameraPitch, carryoverDamage, deathTime, experienceValue, field_70730_aX, field_70731_aW, field_70769_ao, field_70770_ap, hurtTime, isJumping, isSwingInProgress, jumpMovementFactor, landMovementFactor, legSwing, legYaw, livingSoundTime, maxHurtResistantTime, maxHurtTime, pickUpLootProability, prevCameraPitch, prevHealth, prevLegYaw, prevRenderYawOffset, prevRotationYawHead, prevSwingProgress, renderYawOffset, rotationYawHead, swingProgress, swingProgressInt, tasks`

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

      `addedToChunk, boundingBox, capturedDrops, captureDrops, chunkCoordX, chunkCoordY, chunkCoordZ, cloakUrl, dimension, distanceWalkedModified, entityCollisionReduction, entityId, fallDistance, field_70135_K, field_82151_R, fireResistance, 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, skinUrl, 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(EntityLiving par1EntityLiving)` Attack the specified entity using a ranged attack.
    `boolean` | `getAggressive()` Return whether this witch is aggressive at an entity.
    `int` | `getMaxHealth()`
    `float` | `getSpeedModifier()` This method returns a value to be applied directly to entity speed, this factor is less than 1 when a slowdown potion effect is applied, more than 1 when a haste potion effect is applied and 2 for fleeing entities.
    `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, getAttackStrength, getBlockPathWeight, getCanSpawnHere, onUpdate`

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

      `getEntityToAttack, hasPath, setPathToEntity, setTarget`

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

      `addPotionEffect, canAttackClass, canBeCollidedWith, canBePushed, canBeSteered, canBreatheUnderwater, canEntityBeSeen, clearActivePotions, curePotionEffects, detachHome, eatGrassBonus, faceEntity, func_82143_as, func_82159_b, getActivePotionEffect, getActivePotionEffects, getAge, getAIMoveSpeed, getAITarget, getArmorItemForSlot, getArrowCountInEntity, getAttackTarget, getCreatureAttribute, getCurrentArmor, getCurrentItemOrArmor, getEntitySenses, getEyeHeight, getHealth, getHeldItem, getHomePosition, getItemIcon, getJumpHelper, getLastActiveItems, getLastAttackingEntity, getLook, getLookHelper, getLookVec, getMaximumHomeDistance, getMaxSpawnedInChunk, getMoveHelper, getNavigator, getPosition, getRenderSizeModifier, getRNG, getSwingProgress, getTalkInterval, getTexture, getTotalArmorValue, getVerticalFaceSpeed, hasHome, heal, initCreature, isBlocking, isChild, isEntityAlive, isEntityUndead, isOnLadder, isPlayerSleeping, isPotionActive, isPotionActive, isPotionApplicable, isWithinHomeDistance, isWithinHomeDistanceCurrentPosition, knockBack, moveEntityWithHeading, onDeath, onEntityUpdate, onItemPickup, performHurtAnimation, playLivingSound, rayTrace, readEntityFromNBT, removePotionEffect, removePotionEffectClient, renderBrokenItemStack, setAIMoveSpeed, setArrowCountInEntity, setAttackTarget, setCurrentItemOrArmor, setEntityHealth, setHeadRotationYaw, setHomeArea, setJumping, setLastAttackingEntity, setMoveForward, setPositionAndRotation2, setPositionAndUpdate, setRevengeTarget, setRotationYawHead, shouldRiderFaceForward, spawnExplosionParticle, swingItem, updateRidden, writeEntityToNBT`

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

      `addEntityID, addToPlayerScore, addVelocity, applyEntityCollision, canAttackWithItem, canRenderOnFire, copyDataFrom, doesEntityNotTriggerPressurePlate, dropItem, dropItemWithOffset, entityDropItem, equals, extinguish, func_82146_a, func_82148_at, func_82149_j, func_85029_a, func_85031_j, generatePersistentID, getAir, getBoundingBox, getBrightness, getBrightnessForRender, getCollisionBorderSize, getCollisionBox, getDataWatcher, getDistance, getDistanceSq, getDistanceSqToEntity, getDistanceToEntity, getEntityData, getEntityName, getHasActivePotion, getMaxInPortalTime, getMountedYOffset, getParts, getPersistentID, getPickedResult, getPortalCooldown, getShadowSize, getYOffset, handleLavaMovement, handleWaterMovement, hashCode, interact, isBurning, isEating, isEntityEqual, isEntityInsideOpaqueBlock, isEntityInvulnerable, isImmuneToFire, isInRangeToRenderDist, isInRangeToRenderVec3D, isInsideOfMaterial, isInWater, isOffsetPositionInLiquid, isRiding, isSneaking, isSprinting, isWet, mountEntity, moveEntity, moveFlying, onCollideWithPlayer, onKillEntity, onStruckByLightning, playSound, readFromNBT, resetEntityId, setAir, setAngles, setDead, setEating, setFire, setHasActivePotion, setInPortal, setInWeb, setLocationAndAngles, setPosition, setPositionAndRotation, setSneaking, setSprinting, setVelocity, setWorld, shouldRenderInPass, shouldRiderSit, toString, travelToDimension, unmountEntity, updateCloak, updateRiderPosition, writeToNBT`

    - ### 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.

    - #### getMaxHealth

          public int getMaxHealth()

      Specified by:
        `getMaxHealth` in class `EntityLiving`

    - #### 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 `EntityLiving`

    - #### getSpeedModifier

          public float getSpeedModifier()

      This method returns a value to be applied directly to entity speed, this factor is less than 1 when a slowdown potion effect is applied, more than 1 when a haste potion effect is applied and 2 for fleeing entities.
      Overrides:
        `getSpeedModifier` in class `EntityCreature`

    - #### attackEntityWithRangedAttack

          public void attackEntityWithRangedAttack(EntityLiving par1EntityLiving)

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