NPC
The NPC class extends ModelEntity with combat, movement, inventory, and unit state APIs.
NOTE
This page documents members declared directly on NPC. Inherited members are available from ModelEntity.
Methods
GetMaxPhysicBarrier()number
Retrieves the maximum physical barrier.
Returned:
- number - The requested maximum physical barrier.
GetMaxMagicBarrier()number
Retrieves the maximum magic barrier.
Returned:
- number - The requested maximum magic barrier.
GetMaxAllBarrier()number
Retrieves the maximum all barrier.
Returned:
- number - The requested maximum all barrier.
GetPhysicBarrier()number
Retrieves the physical barrier.
Returned:
- number - The requested physical barrier.
GetMagicBarrier()number
Retrieves the magic barrier.
Returned:
- number - The requested magic barrier.
GetAllBarrier()number
Retrieves the all barrier.
Returned:
- number - The requested all barrier.
GetStartSequenceCycle()number
Retrieves the start sequence cycle.
Returned:
- number - The requested start sequence cycle.
GetKeyValues()KeyValue | null
Retrieves the key values.
Returned:
- KeyValue | null - The matching object, or
nullif it is not available.
FindKey(key: string)KeyValue | null
Finds the key.
keystring - The key.
Returned:
- KeyValue | null - The matching object, or
nullif it is not available.
GetProjectileSpeed()number
Retrieves the projectile speed.
Returned:
- number - The requested projectile speed.
SetHasColorGem(val: boolean)void
Enables or disables the color gem state.
valboolean - The value to apply.
HasColorGem()boolean
Checks whether the unit currently has a color gem.
Returned:
- boolean - True if the condition is met, false otherwise.
SetGemColor(color: Color)void
Sets the gem color.
colorColor - The color value to use.
GetGemColor()Color
Retrieves the gem color.
Returned:
- Color - The result of the call.
GetGoldBountyMin()number
Retrieves the minimum gold bounty.
Returned:
- number - The requested gold bounty minimum.
GetGoldBountyMax()number
Retrieves the maximum gold bounty.
Returned:
- number - The requested gold bounty maximum.
IsControllableByPlayer(player: Player)boolean
Checks whether the unit is controllable by the specified player.
playerPlayer - The player entity.
Returned:
- boolean - True if the condition is met, false otherwise.
IsInRangeOfShop(shopType: Enum.ShopType)boolean
Checks whether the unit is within range of the specified shop.
shopTypeEnum.ShopType - The shop type.
Returned:
- boolean - True if the condition is met, false otherwise.
GetTurnAngleDiff()number
Retrieves the turn angle difference.
Returned:
- number - The requested turn angle difference.
GetUnitState()bigint
Retrieves the unit state.
Returned:
- bigint - The requested unit state.
SetUnitState(state: bigint | number)void
Sets the unit state.
statebigint | number - The state value.
HasState(state: Enum.ModifierState)boolean
Checks whether it has state.
stateEnum.ModifierState - The state value.
Returned:
- boolean - True if the condition is met, false otherwise.
GetAttackRange()number
Retrieves the attack range.
Returned:
- number - The requested attack range.
GetAttackRangeWithBonus()number
Retrieves the attack range with bonus.
Returned:
- number - The requested attack range with bonus.
GetAttackRangeBonus()number
Retrieves the attack range bonus.
Returned:
- number - The requested attack range bonus.
GetCastRangeBonus()number
Retrieves the cast range bonus.
Returned:
- number - The requested cast range bonus.
GetCombatClassDefend()number
Retrieves the combat class defend.
Returned:
- number - The requested combat class defend.
GetCombatClassAttack()number
Retrieves the combat class attack.
Returned:
- number - The requested combat class attack.
GetDamageMultiplierVersus(entity: NPC)number
Retrieves the damage multiplier against the specified unit.
entityNPC - The entity to use.
Returned:
- number - The requested damage multiplier versus.
GetPhysicalArmorValue()number
Retrieves the physical armor value.
Returned:
- number - The requested physical armor value.
GetPhysicalDamageReduction()number
Retrieves the physical damage reduction.
Returned:
- number - The requested physical damage reduction.
GetArmorDamageMultiplier()number
Retrieves the armor damage multiplier.
Returned:
- number - The requested armor damage multiplier.
GetMagicalArmorValue()number
Retrieves the magical armor value.
Returned:
- number - The requested magical armor value.
GetMagicalArmorDamageMultiplier()number
Retrieves the magical armor damage multiplier.
Returned:
- number - The requested magical armor damage multiplier.
GetIncreasedAttackSpeed()number
Returns base attack speed + attack speed bonus
Returned:
- number - The requested increased attack speed.
GetBaseAttackSpeed()number
Retrieves the base attack speed.
Returned:
- number - The requested base attack speed.
GetAttackSpeedBonus()number
Retrieves the attack speed bonus.
Returned:
- number - The requested attack speed bonus.
GetAttackTime()number
Retrieves the attack time.
Returned:
- number - The requested attack time.
GetAttacksPerSecond()number
Retrieves the attacks per second.
Returned:
- number - The requested attacks per second.
GetHullRadius()number
Retrieves the hull radius.
Returned:
- number - The requested hull radius.
GetProjectileCollisionSize()number
Retrieves the projectile collision size.
Returned:
- number - The requested projectile collision size.
GetTurnRate()number
Retrieves the turn rate.
Returned:
- number - The requested turn rate.
IsTurning()boolean
Checks whether it is turning.
Returned:
- boolean - True if the condition is met, false otherwise.
IsWaitingToSpawn()boolean
Checks whether it is waiting to spawn.
Returned:
- boolean - True if the condition is met, false otherwise.
GetTimeToFace(entity: Entity)number
Retrieves the time to face.
entityEntity - The entity to use.
Returned:
- number - The requested time to face.
FindRotationAngle(position: Vector, useAngleDiff?: boolean)Angle
Finds the rotation angle.
positionVector - The position to use.useAngleDiffboolean (optional) - Whether to use angle difference.
Returned:
- Angle - The result of the call.
GetTimeToFacePosition(position: Vector)number
Retrieves the time to face position.
positionVector - The position to use.
Returned:
- number - The requested time to face position.
FindFacingNPC(teamType: Enum.TeamType, minRange?: number, minAngle?: number, useAngleDiff?: boolean)NPC | null
Finds an NPC currently facing the unit.
teamTypeEnum.TeamType - The team selection filter.minRangenumber (optional) - 1minAnglenumber (optional) - 1useAngleDiffboolean (optional) - Whether to use angle difference.
Returned:
- NPC | null - The matching object, or
nullif it is not available.
GetMoveSpeed()number
Retrieves the move speed.
Returned:
- number - The requested move speed.
GetBaseSpeed()number
Retrieves the base speed.
Returned:
- number - The requested base speed.
IsMoving()boolean
Checks whether it is moving.
Returned:
- boolean - True if the condition is met, false otherwise.
GetMana()number
Retrieves the mana.
Returned:
- number - The requested mana.
GetMaxMana()number
Retrieves the maximum mana.
Returned:
- number - The requested maximum mana.
GetManaRegen()number
Retrieves the mana regen.
Returned:
- number - The requested mana regen.
GetHealthRegen()number
Retrieves the health regen.
Returned:
- number - The requested health regen.
GetBaseHealthRegen()number
Retrieves the base health regen.
Returned:
- number - The requested base health regen.
GetBaseManaRegen()number
Retrieves the base mana regen.
Returned:
- number - The requested base mana regen.
GetCurrentLevel()number
Retrieves the current level.
Returned:
- number - The requested current level.
GetDayTimeVisionRange()number
Retrieves the day time vision range.
Returned:
- number - The requested day time vision range.
GetNightTimeVisionRange()number
Retrieves the night time vision range.
Returned:
- number - The requested night time vision range.
IsIllusion()boolean
Checks whether it is illusion.
Returned:
- boolean - True if the condition is met, false otherwise.
GetHealthBarOffset()number
Retrieves the health bar offset.
Returned:
- number - The requested health bar offset.
GetUnitName()string
Retrieves the unit name.
Returned:
- string - The requested unit name.
GetImage(needIcon?: boolean)Image
Retrieves the image.
needIconboolean (optional) - Whether to return the icon variant.
Returned:
- Image - The result of the call.
GetFountainPosition()Vector
Retrieves the fountain position.
Returned:
- Vector - The result of the call.
HasAghanimScepter()boolean
Checks whether it has aghanim scepter.
Returned:
- boolean - True if the condition is met, false otherwise.
GetAttackDelay()number
Retrieves the attack delay.
Returned:
- number - The requested attack delay.
GetAttackAnimationPoint()number
Retrieves the attack animation point.
Returned:
- number - The requested attack animation point.
GetAnimationSequence()number
Retrieves the animation sequence.
Returned:
- number - The requested animation sequence.
GetAnimationCycle()number
Retrieves the animation cycle.
Returned:
- number - The requested animation cycle.
SetZDelta(height: number)void
Sets the zdelta.
heightnumber - The height.
GetUltimate()Ability | null
Retrieves the ultimate.
Returned:
- Ability | null - The matching object, or
nullif it is not available.
IsVisible()boolean
Checks whether it is visible.
Returned:
- boolean - True if the condition is met, false otherwise.
HasTrueSight()boolean
Checks whether it has true sight.
Returned:
- boolean - True if the condition is met, false otherwise.
GetUnitType()number
Retrieves the unit type.
Returned:
- number - The requested unit type.
SetUnitType(unitType: number)void
Sets the unit type.
unitTypenumber - The unit type value.
SetHealthBar(type: number)void
Sets the health bar.
typenumber - 2 - default, -1 - no health bar, 0 - creep, up to 17 - undocumented
GetAttackCapabilities()number
Retrieves the attack capabilities.
Returned:
- number - The requested attack capabilities.
IsUnitType(unitType: Enum.UnitType)boolean
Checks whether it is unit type.
unitTypeEnum.UnitType - The unit type value.
Returned:
- boolean - True if the condition is met, false otherwise.
IsRanged()boolean
Checks whether it is ranged.
Returned:
- boolean - True if the condition is met, false otherwise.
IsCreep()boolean
Checks whether it is creep.
Returned:
- boolean - True if the condition is met, false otherwise.
IsLaneCreep()boolean
Checks whether it is lane creep.
Returned:
- boolean - True if the condition is met, false otherwise.
IsRoshan()boolean
Checks whether it is roshan.
Returned:
- boolean - True if the condition is met, false otherwise.
IsNeutral()boolean
Checks whether it is neutral.
Returned:
- boolean - True if the condition is met, false otherwise.
IsStructure()boolean
Checks whether it is structure.
Returned:
- boolean - True if the condition is met, false otherwise.
IsTower()this is Tower
Checks whether it is tower.
Returned:
- this is Tower - The result of the call.
IsAncient()boolean
Checks whether it is ancient.
Returned:
- boolean - True if the condition is met, false otherwise.
IsCourier()this is Courier
Checks whether it is courier.
Returned:
- this is Courier - The result of the call.
IsShrine()boolean
Checks whether it is shrine.
Returned:
- boolean - True if the condition is met, false otherwise.
IsMeepoClone()boolean
Checks whether it is meepo clone.
Returned:
- boolean - True if the condition is met, false otherwise.
IsVisibleByEnemy()boolean
Checks whether it is visible by enemy.
Returned:
- boolean - True if the condition is met, false otherwise.
GetModifiers()Modifier[]
Retrieves the modifiers.
Returned:
- Modifier[] - An array with the matching values.
GetModifier(modifierName: string)Modifier | null
Retrieves the modifier.
modifierNamestring - The modifier name.
Returned:
- Modifier | null - The matching object, or
nullif it is not available.
HasModifier(modifierName: string)boolean
Checks whether it has modifier.
modifierNamestring - The modifier name.
Returned:
- boolean - True if the condition is met, false otherwise.
HasInventorySlotFree(inRealInventory?: boolean)boolean
Checks whether it has inventory slot free.
inRealInventoryboolean (optional) - Whether to use only the real inventory.
Returned:
- boolean - True if the condition is met, false otherwise.
GetItems(inRealInventory?: boolean)Item[]
Retrieves the items.
inRealInventoryboolean (optional) - Whether to use only the real inventory.
Returned:
- Item[] - An array with the matching values.
GetItemByIndex(index: number)Item | null
Retrieves the item by index.
indexnumber - The index value.
Returned:
- Item | null - The matching object, or
nullif it is not available.
GetItem(itemName: string, realInventory?: boolean)Item | null
Retrieves the item.
itemNamestring - The item name.realInventoryboolean (optional) - Whether to use only the real inventory.
Returned:
- Item | null - The matching object, or
nullif it is not available.
HasItem(itemName: string, inRealInventory?: boolean)boolean
Checks whether it has item.
itemNamestring - The item name.inRealInventoryboolean (optional) - Whether to use only the real inventory.
Returned:
- boolean - True if the condition is met, false otherwise.
GetAbilities()Ability[]
Retrieves the abilities.
Returned:
- Ability[] - An array with the matching values.
GetAbilityByIndex(index: number)Ability | null
Retrieves the ability by index.
indexnumber - The index value.
Returned:
- Ability | null - The matching object, or
nullif it is not available.
GetAbility(abilityName: string)Ability | null
Retrieves the ability.
abilityNamestring - The ability name.
Returned:
- Ability | null - The matching object, or
nullif it is not available.
HasAbility(abilityName: string)boolean
Checks whether it has ability.
abilityNamestring - The ability name.
Returned:
- boolean - True if the condition is met, false otherwise.
IsLinkensProtected()boolean
Checks whether it is linkens protected.
Returned:
- boolean - True if the condition is met, false otherwise.
IsChannellingAbility()boolean
Checks whether it is channelling ability.
Returned:
- boolean - True if the condition is met, false otherwise.
GetActivity()Enum.GameActivity
Retrieves the activity.
Returned:
- Enum.GameActivity - The result of the call.
IsRunning()boolean
Checks whether it is running.
Returned:
- boolean - True if the condition is met, false otherwise.
IsAttacking()boolean
Checks whether it is attacking.
Returned:
- boolean - True if the condition is met, false otherwise.
IsSilenced()boolean
Checks whether it is silenced.
Returned:
- boolean - True if the condition is met, false otherwise.
IsStunned()boolean
Checks whether it is stunned.
Returned:
- boolean - True if the condition is met, false otherwise.
HasAegis()boolean
Checks whether it has aegis.
Returned:
- boolean - True if the condition is met, false otherwise.
IsKillable()boolean
Checks whether it is killable.
Returned:
- boolean - True if the condition is met, false otherwise.
GetMinDamage()number
Retrieves the minimum damage.
Returned:
- number - The requested minimum damage.
GetMaxDamage()number
Retrieves the maximum damage.
Returned:
- number - The requested maximum damage.
GetBonusDamage()number
Retrieves the bonus damage.
Returned:
- number - The requested bonus damage.
GetTrueDamage()number
Retrieves the true damage.
Returned:
- number - The requested true damage.
GetTrueMaximumDamage()number
Retrieves the true maximum damage.
Returned:
- number - The requested true maximum damage.
GetAttachment(attachmentName: string)Vector
Retrieves the attachment.
attachmentNamestring - The attachment name.
Returned:
- Vector - The result of the call.
GetAttachmentByIndex(attachmentIndex: number)Vector
Retrieves the attachment by index.
attachmentIndexnumber - The attachment index.
Returned:
- Vector - The result of the call.
GetMagicalDamageMultiplier()number
Retrieves the magical damage multiplier.
Returned:
- number - The requested magical damage multiplier.
GetLastAttackTime()number
Retrieves the last attack time.
Returned:
- number - The requested last attack time.
GetStateAfterDamage(state: null | EntityState, damage: number)EntityState
Retrieves the predicted state after applying damage.
statenull | EntityState - The state value.damagenumber - The damage.
WARNING
Deprecated.
Returned:
- EntityState - The result of the call.
MoveTo(position: Vector, queue?: boolean, showEffects?: boolean)void
Orders the unit to move to the specified position.
positionVector - The position to use.queueboolean (optional) - Whether to queue the action.showEffectsboolean (optional) - Whether to show default game effects.
GetTaggedAsVisibleByTeam()number
Retrieves the tagged as visible by team.
Returned:
- number - The requested tagged as visible by team.