| 2350 | return !!(UnitPrototypeFlags::unitFlags[this->getID()] & UnitPrototypeFlags::ProducesUnits); |
| 2351 | } |
| 2352 | bool UnitType::canAttack() const |
| 2353 | { |
| 2354 | switch ( *this ) |
| 2355 | { |
| 2356 | case UnitTypes::Enum::Protoss_Carrier: |
| 2357 | case UnitTypes::Enum::Hero_Gantrithor: |
| 2358 | case UnitTypes::Enum::Protoss_Reaver: |
| 2359 | case UnitTypes::Enum::Hero_Warbringer: |
| 2360 | case UnitTypes::Enum::Terran_Nuclear_Missile: |
| 2361 | return true; |
| 2362 | case UnitTypes::Enum::Special_Independant_Starport: |
| 2363 | return false; |
| 2364 | default: |
| 2365 | return this->airWeapon() != WeaponTypes::None || this->groundWeapon() != WeaponTypes::None; |
| 2366 | } |
| 2367 | } |
| 2368 | bool UnitType::canMove() const |
| 2369 | { |
| 2370 | return !!(UnitPrototypeFlags::unitFlags[this->getID()] & UnitPrototypeFlags::AutoAttackAndMove); |
no test coverage detected