Filter¶
Unary Filters¶
Unary filters are predicate functions that return boolean values.
These functions can be used as predicates for functions that take a unit predicate/filter parameter (e.g. BWAPI.Unit.getClosestUnit()
, BWAPI.Game.getUnitsInRadius()
). They can also be used as convenience functions to access values that may usually take multiple function calls to access.
UnitType delegate boolean filters
-
static
BWAPI.Filter.
IsTransport
(unit) → bool¶ Equivalent to
unit:getType():spaceProvided() > 0 and u:getType() ~= BWAPI.UnitTypes.Terran_Bunker
-
static
BWAPI.Filter.
CanProduce
(unit) → bool¶ Equivalent to
unit:getType():canProduce()
-
static
BWAPI.Filter.
CanAttack
(unit) → bool¶ Equivalent to
unit:getType():canAttack()
-
static
BWAPI.Filter.
CanMove
(unit) → bool¶ Equivalent to
unit:getType():canMove()
-
static
BWAPI.Filter.
IsFlyer
(unit) → bool¶ Equivalent to
unit:getType():isFlyer()
-
static
BWAPI.Filter.
RegeneratesHP
(unit) → bool¶ Equivalent to
unit:getType():regeneratesHP()
-
static
BWAPI.Filter.
IsSpellcaster
(unit) → bool¶ Equivalent to
unit:getType():isSpellcaster()
-
static
BWAPI.Filter.
HasPermanentCloak
(unit) → bool¶ Equivalent to
unit:getType():hasPermanentCloak()
-
static
BWAPI.Filter.
IsOrganic
(unit) → bool¶ Equivalent to
unit:getType():isOrganic()
-
static
BWAPI.Filter.
IsMechanical
(unit) → bool¶ Equivalent to
unit:getType():isMechanical()
-
static
BWAPI.Filter.
IsRobotic
(unit) → bool¶ Equivalent to
unit:getType():isRobotic()
-
static
BWAPI.Filter.
IsDetector
(unit) → bool¶ Equivalent to
unit:getType():isDetector()
-
static
BWAPI.Filter.
IsResourceContainer
(unit) → bool¶ Equivalent to
unit:getType():isResourceContainer()
-
static
BWAPI.Filter.
IsResourceDepot
(unit) → bool¶ Equivalent to
unit:getType():isResourceDepot()
-
static
BWAPI.Filter.
IsRefinery
(unit) → bool¶ Equivalent to
unit:getType():isRefinery()
-
static
BWAPI.Filter.
IsWorker
(unit) → bool¶ Equivalent to
unit:getType():isWorker()
-
static
BWAPI.Filter.
RequiresPsi
(unit) → bool¶ Equivalent to
unit:getType():requiresPsi()
-
static
BWAPI.Filter.
RequiresCreep
(unit) → bool¶ Equivalent to
unit:getType():requiresCreep()
-
static
BWAPI.Filter.
IsBurrowable
(unit) → bool¶ Equivalent to
unit:getType():isBurrowable()
-
static
BWAPI.Filter.
IsCloakable
(unit) → bool¶ Equivalent to
unit:getType():isCloakable()
-
static
BWAPI.Filter.
IsBuilding
(unit) → bool¶ Equivalent to
unit:getType():isBuilding()
-
static
BWAPI.Filter.
IsAddon
(unit) → bool¶ Equivalent to
unit:getType():isAddon()
-
static
BWAPI.Filter.
IsFlyingBuilding
(unit) → bool¶ Equivalent to
unit:getType():isFlyingBuilding()
-
static
BWAPI.Filter.
IsNeutral
(unit) → bool¶ Equivalent to
unit:getType():isNeutral()
-
static
BWAPI.Filter.
IsHero
(unit) → bool¶ Equivalent to
unit:getType():isHero()
-
static
BWAPI.Filter.
IsPowerup
(unit) → bool¶ Equivalent to
unit:getType():isPowerup()
-
static
BWAPI.Filter.
IsBeacon
(unit) → bool¶ Equivalent to
unit:getType():isBeacon()
-
static
BWAPI.Filter.
IsFlagBeacon
(unit) → bool¶ Equivalent to
unit:getType():isFlagBeacon()
-
static
BWAPI.Filter.
IsSpecialBuilding
(unit) → bool¶ Equivalent to
unit:getType():isSpecialBuilding()
-
static
BWAPI.Filter.
IsSpell
(unit) → bool¶ Equivalent to
unit:getType():isSpell()
-
static
BWAPI.Filter.
ProducesLarva
(unit) → bool¶ Equivalent to
unit:getType():producesLarva()
-
static
BWAPI.Filter.
IsMineralField
(unit) → bool¶ Equivalent to
unit:getType():isMineralField()
-
static
BWAPI.Filter.
IsCritter
(unit) → bool¶ Equivalent to
unit:getType():isCritter()
-
static
BWAPI.Filter.
CanBuildAddon
(unit) → bool¶ Equivalent to
unit:getType():canBuildAddon()
Unit boolean filters
-
static
BWAPI.Filter.
IsFlying
(unit) → bool¶ Equivalent to
unit:isFlying()
-
static
BWAPI.Filter.
Exists
(unit) → bool¶ Equivalent to
unit:exists()
-
static
BWAPI.Filter.
IsAttacking
(unit) → bool¶ Equivalent to
unit:isAttacking()
-
static
BWAPI.Filter.
IsBeingConstructed
(unit) → bool¶ Equivalent to
unit:isBeingConstructed()
-
static
BWAPI.Filter.
IsBeingGathered
(unit) → bool¶ Equivalent to
unit:isBeingGathered()
-
static
BWAPI.Filter.
IsBeingHealed
(unit) → bool¶ Equivalent to
unit:isBeingHealed()
-
static
BWAPI.Filter.
IsBlind
(unit) → bool¶ Equivalent to
unit:isBlind()
-
static
BWAPI.Filter.
IsBraking
(unit) → bool¶ Equivalent to
unit:isBraking()
-
static
BWAPI.Filter.
IsBurrowed
(unit) → bool¶ Equivalent to
unit:isBurrowed()
-
static
BWAPI.Filter.
IsCarryingGas
(unit) → bool¶ Equivalent to
unit:isCarryingGas()
-
static
BWAPI.Filter.
IsCarryingMinerals
(unit) → bool¶ Equivalent to
unit:isCarryingMinerals()
-
static
BWAPI.Filter.
IsCarryingSomething
(unit) → bool¶ Equivalent to
unit:isCarryingMinerals() or unit:isCarryingGas()
-
static
BWAPI.Filter.
IsCloaked
(unit) → bool¶ Equivalent to
unit:isCloaked()
-
static
BWAPI.Filter.
IsCompleted
(unit) → bool¶ Equivalent to
unit:isCompleted()
-
static
BWAPI.Filter.
IsConstructing
(unit) → bool¶ Equivalent to
unit:isConstructing()
-
static
BWAPI.Filter.
IsDefenseMatrixed
(unit) → bool¶ Equivalent to
unit:isDefenseMatrixed()
-
static
BWAPI.Filter.
IsDetected
(unit) → bool¶ Equivalent to
unit:isDetected()
-
static
BWAPI.Filter.
IsEnsnared
(unit) → bool¶ Equivalent to
unit:isEnsnared()
-
static
BWAPI.Filter.
IsFollowing
(unit) → bool¶ Equivalent to
unit:isFollowing()
-
static
BWAPI.Filter.
IsGatheringGas
(unit) → bool¶ Equivalent to
unit:isGatheringGas()
-
static
BWAPI.Filter.
IsGatheringMinerals
(unit) → bool¶ Equivalent to
unit:isGatheringMinerals()
-
static
BWAPI.Filter.
IsHallucination
(unit) → bool¶ Equivalent to
unit:isHallucination()
-
static
BWAPI.Filter.
IsHoldingPosition
(unit) → bool¶ Equivalent to
unit:isHoldingPosition()
-
static
BWAPI.Filter.
IsIdle
(unit) → bool¶ Equivalent to
unit:isIdle()
-
static
BWAPI.Filter.
IsInterruptible
(unit) → bool¶ Equivalent to
unit:isInterruptible()
-
static
BWAPI.Filter.
IsInvincible
(unit) → bool¶ Equivalent to
unit:isInvincible()
-
static
BWAPI.Filter.
IsIrradiated
(unit) → bool¶ Equivalent to
unit:isIrradiated()
-
static
BWAPI.Filter.
IsLifted
(unit) → bool¶ Equivalent to
unit:isLifted()
-
static
BWAPI.Filter.
IsLoaded
(unit) → bool¶ Equivalent to
unit:isLoaded()
-
static
BWAPI.Filter.
IsLockedDown
(unit) → bool¶ Equivalent to
unit:isLockedDown()
-
static
BWAPI.Filter.
IsMaelstrommed
(unit) → bool¶ Equivalent to
unit:isMaelstrommed()
-
static
BWAPI.Filter.
IsMorphing
(unit) → bool¶ Equivalent to
unit:isMorphing()
-
static
BWAPI.Filter.
IsMoving
(unit) → bool¶ Equivalent to
unit:isMoving()
-
static
BWAPI.Filter.
IsParasited
(unit) → bool¶ Equivalent to
unit:isParasited()
-
static
BWAPI.Filter.
IsPatrolling
(unit) → bool¶ Equivalent to
unit:isPatrolling()
-
static
BWAPI.Filter.
IsPlagued
(unit) → bool¶ Equivalent to
unit:isPlagued()
-
static
BWAPI.Filter.
IsRepairing
(unit) → bool¶ Equivalent to
unit:isRepairing()
-
static
BWAPI.Filter.
IsResearching
(unit) → bool¶ Equivalent to
unit:isResearching()
-
static
BWAPI.Filter.
IsSieged
(unit) → bool¶ Equivalent to
unit:isSieged()
-
static
BWAPI.Filter.
IsStartingAttack
(unit) → bool¶ Equivalent to
unit:isStartingAttack()
-
static
BWAPI.Filter.
IsStasised
(unit) → bool¶ Equivalent to
unit:isStasised()
-
static
BWAPI.Filter.
IsStimmed
(unit) → bool¶ Equivalent to
unit:isStimmed()
-
static
BWAPI.Filter.
IsStuck
(unit) → bool¶ Equivalent to
unit:isStuck()
-
static
BWAPI.Filter.
IsTraining
(unit) → bool¶ Equivalent to
unit:isTraining()
-
static
BWAPI.Filter.
IsUnderAttack
(unit) → bool¶ Equivalent to
unit:isUnderAttack()
-
static
BWAPI.Filter.
IsUnderDarkSwarm
(unit) → bool¶ Equivalent to
unit:isUnderDarkSwarm()
-
static
BWAPI.Filter.
IsUnderDisruptionWeb
(unit) → bool¶ Equivalent to
unit:isUnderDisruptionWeb()
-
static
BWAPI.Filter.
IsUnderStorm
(unit) → bool¶ Equivalent to
unit:isUnderStorm()
-
static
BWAPI.Filter.
IsPowered
(unit) → bool¶ Equivalent to
unit:isPowered()
-
static
BWAPI.Filter.
IsVisible
(unit) → bool¶ Equivalent to
unit:isVisible()
Comparison Filters¶
Comparison filters are functions that return a value.
These can either be used as convenience functions to access values that usually take multiple function calls to get, or can be used with BWAPI.Lowest()
/BWAPI.Highest()
to create a ‘best’ function to be used with BWAPI.Game.getBestUnit()
(as long as the returned value from the comparison filter can be compared using less than/greater than).
-
static
BWAPI.Filter.
HP
(unit) → int¶ Equivalent to
unit:getHitPoints()
-
static
BWAPI.Filter.
MaxHP
(unit) → int¶ Equivalent to
unit:getType():maxHitPoints()
-
static
BWAPI.Filter.
HP_Percent
(unit) → int¶ Equivalent to
math.floor(unit:getHitPoints() / unit:getType():maxHitPoints() * 100)
ifunit:getType():maxHitPoints() ~= 0
, or0
otherwise.
-
static
BWAPI.Filter.
Shields
(unit) → int¶ Equivalent to
unit:getShields()
-
static
BWAPI.Filter.
MaxShields
(unit) → int¶ Equivalent to
unit:getType():maxShields()
-
static
BWAPI.Filter.
Shields_Percent
(unit) → int¶ Equivalent to
math.floor(unit:getShields() / unit:getType():maxShields() * 100)
ifunit:getType():maxShields() ~= 0
, or0
otherwise.
-
static
BWAPI.Filter.
Energy
(unit) → int¶ Equivalent to
unit:getEnergy()
-
static
BWAPI.Filter.
MaxEnergy
(unit) → int¶ Equivalent to
unit:getPlayer():maxEnergy(unit:getType())
-
static
BWAPI.Filter.
Energy_Percent
(unit) → int¶ Equivalent to
math.floor(unit:getEnergy() / unit:getPlayer():maxEnergy(unit:getType()) * 100)
ifunit:getPlayer():maxEnergy(unit:getType()) ~= 0
, or0
otherwise.
-
static
BWAPI.Filter.
Armor
(unit) → int¶ Equivalent to
unit:getPlayer():armor(unit:getType())
-
static
BWAPI.Filter.
ArmorUpgrade
(unit) → UpgradeType¶ Equivalent to
unit:getType():armorUpgrade()
-
static
BWAPI.Filter.
MineralPrice
(unit) → int¶ Equivalent to
unit:getType():mineralPrice()
-
static
BWAPI.Filter.
GasPrice
(unit) → int¶ Equivalent to
unit:getType():gasPrice()
-
static
BWAPI.Filter.
BuildTime
(unit) → int¶ Equivalent to
unit:getType():buildTime()
-
static
BWAPI.Filter.
SupplyRequired
(unit) → int¶ Equivalent to
unit:getType():supplyRequired()
-
static
BWAPI.Filter.
SupplyProvided
(unit) → int¶ Equivalent to
unit:getType():supplyProvided()
-
static
BWAPI.Filter.
SpaceRequired
(unit) → int¶ Equivalent to
unit:getType():spaceRequired()
-
static
BWAPI.Filter.
SpaceRemaining
(unit) → int¶ Equivalent to
unit:spaceRemaining()
-
static
BWAPI.Filter.
SpaceProvided
(unit) → int¶ Equivalent to
unit:getType():spaceProvided()
-
static
BWAPI.Filter.
BuildScore
(unit) → int¶ Equivalent to
unit:getType():buildScore()
-
static
BWAPI.Filter.
DestroyScore
(unit) → int¶ Equivalent to
unit:getType():destroyScore()
-
static
BWAPI.Filter.
TopSpeed
(unit) → double¶ Equivalent to
unit:getPlayer():topSpeed(unit:getType())
-
static
BWAPI.Filter.
SightRange
(unit) → int¶ Equivalent to
unit:getPlayer():sightRange(unit:getType())
-
static
BWAPI.Filter.
MaxWeaponCooldown
(unit) → int¶ Equivalent to
unit:getPlayer():weaponDamageCooldown(unit:getType())
-
static
BWAPI.Filter.
SizeType
(unit) → UnitSizeType¶ Equivalent to
unit:getType():size()
-
static
BWAPI.Filter.
GroundWeapon
(unit) → WeaponType¶ Equivalent to
unit:getType():groundWeapon()
-
static
BWAPI.Filter.
AirWeapon
(unit) → WeaponType¶ Equivalent to
unit:getType():airWeapon()
-
static
BWAPI.Filter.
GetType
(unit) → UnitType¶ Equivalent to
unit:getType()
-
static
BWAPI.Filter.
GetRace
(unit) → Race¶ Equivalent to
unit:getType():getRace()
-
static
BWAPI.Filter.
GetPlayer
(unit) → Player¶ Equivalent to
unit:getPlayer()
-
static
BWAPI.Filter.
Resources
(unit) → int¶ Equivalent to
unit:getResources()
-
static
BWAPI.Filter.
ResourceGroup
(unit) → int¶ Equivalent to
unit:getResourceGroup()
-
static
BWAPI.Filter.
AcidSporeCount
(unit) → int¶ Equivalent to
unit:getAcidSporeCount()
-
static
BWAPI.Filter.
InterceptorCount
(unit) → int¶ Equivalent to
unit:getInterceptorCount()
-
static
BWAPI.Filter.
ScarabCount
(unit) → int¶ Equivalent to
unit:getScarabCount()
-
static
BWAPI.Filter.
SpiderMineCount
(unit) → int¶ Equivalent to
unit:getSpiderMineCount()
-
static
BWAPI.Filter.
WeaponCooldown
(unit) → int¶ Equivalent to
unit:getGroundWeaponCooldown()
-
static
BWAPI.Filter.
SpellCooldown
(unit) → int¶ Equivalent to
unit:getSpellCooldown()
-
static
BWAPI.Filter.
DefenseMatrixPoints
(unit) → int¶ Equivalent to
unit:getDefenseMatrixPoints()
-
static
BWAPI.Filter.
DefenseMatrixTime
(unit) → int¶ Equivalent to
unit:getDefenseMatrixTimer()
-
static
BWAPI.Filter.
EnsnareTime
(unit) → int¶ Equivalent to
unit:getEnsnareTimer()
-
static
BWAPI.Filter.
IrradiateTime
(unit) → int¶ Equivalent to
unit:getIrradiateTimer()
-
static
BWAPI.Filter.
LockdownTime
(unit) → int¶ Equivalent to
unit:getLockdownTimer()
-
static
BWAPI.Filter.
MaelstromTime
(unit) → int¶ Equivalent to
unit:getMaelstromTimer()
-
static
BWAPI.Filter.
OrderTime
(unit) → int¶ Equivalent to
unit:getOrderTimer()
-
static
BWAPI.Filter.
PlagueTimer
(unit) → int¶ Equivalent to
unit:getPlagueTimer()
-
static
BWAPI.Filter.
RemoveTime
(unit) → int¶ Equivalent to
unit:getRemoveTimer()
-
static
BWAPI.Filter.
StasisTime
(unit) → int¶ Equivalent to
unit:getStasisTimer()
-
static
BWAPI.Filter.
StimTime
(unit) → int¶ Equivalent to
unit:getStimTimer()
-
static
BWAPI.Filter.
BuildType
(unit) → UnitType¶ Equivalent to
unit:getBuildType()
-
static
BWAPI.Filter.
RemainingBuildTime
(unit) → int¶ Equivalent to
unit:getRemainingBuildTime()
-
static
BWAPI.Filter.
RemainingTrainTime
(unit) → int¶ Equivalent to
unit:getRemainingTrainTime()
-
static
BWAPI.Filter.
Target
(unit) → Unit¶ Equivalent to
unit:getTarget()
-
static
BWAPI.Filter.
CurrentOrder
(unit) → Order¶ Equivalent to
unit:getOrder()
-
static
BWAPI.Filter.
SecondaryOrder
(unit) → Order¶ Equivalent to
unit:getSecondaryOrder()
-
static
BWAPI.Filter.
OrderTarget
(unit) → Unit¶ Equivalent to
unit:getOrderTarget()
-
static
BWAPI.Filter.
GetLeft
(unit) → int¶ Equivalent to
unit:getLeft()
-
static
BWAPI.Filter.
GetTop
(unit) → int¶ Equivalent to
unit:getTop()
-
static
BWAPI.Filter.
GetRight
(unit) → int¶ Equivalent to
unit:getRight()
-
static
BWAPI.Filter.
GetBottom
(unit) → int¶ Equivalent to
unit:getBottom()