int UnitUtil::GetAttackRange(BWAPI::UnitType attacker, BWAPI::UnitType target) { BWAPI::WeaponType weapon = GetWeapon(attacker, target); if (weapon == BWAPI::WeaponTypes::None) { return 0; } return weapon.maxRange(); }
int UnitUtil::GetAttackRange(BWAPI::Unit attacker, BWAPI::Unit target) { BWAPI::WeaponType weapon = GetWeapon(attacker, target); if (weapon == BWAPI::WeaponTypes::None) { return 0; } int range = weapon.maxRange(); if ((attacker->getType() == BWAPI::UnitTypes::Protoss_Dragoon) && (attacker->getPlayer() == BWAPI::Broodwar->self()) && BWAPI::Broodwar->self()->getUpgradeLevel(BWAPI::UpgradeTypes::Singularity_Charge)) { range = 6 * 32; } return range; }
void WeaponProps::SetType(BWAPI::WeaponType type) { this->type = type; cooldown[0] = cooldown[1] = type.damageCooldown(); maxRange[0] = maxRange[1] = type.maxRange() << pixelShift; }