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, or0otherwise.
-
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, or0otherwise.
-
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, or0otherwise.
-
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()