| 7 | int BWtoBWAPI_Order[Orders::Enum::MAX]; |
| 8 | int AttackAnimationRestFrame[UnitTypes::Enum::MAX]; |
| 9 | void BWtoBWAPI_init() |
| 10 | { |
| 11 | for(int i = 0; i < Orders::Enum::MAX; ++i) |
| 12 | BWtoBWAPI_Order[i] = i; |
| 13 | |
| 14 | BWtoBWAPI_Order[Orders::Enum::ReaverStop] = Orders::Enum::Stop; |
| 15 | BWtoBWAPI_Order[Orders::Enum::CarrierStop] = Orders::Enum::Stop; |
| 16 | |
| 17 | BWtoBWAPI_Order[Orders::Enum::Attack1] = Orders::Enum::AttackUnit; |
| 18 | BWtoBWAPI_Order[Orders::Enum::Attack2] = Orders::Enum::AttackUnit; |
| 19 | BWtoBWAPI_Order[Orders::Enum::CarrierAttack] = Orders::Enum::AttackUnit; |
| 20 | BWtoBWAPI_Order[Orders::Enum::CarrierMoveToAttack] = Orders::Enum::AttackUnit; |
| 21 | BWtoBWAPI_Order[Orders::Enum::CarrierFight] = Orders::Enum::AttackUnit; |
| 22 | BWtoBWAPI_Order[Orders::Enum::ReaverAttack] = Orders::Enum::AttackUnit; |
| 23 | BWtoBWAPI_Order[Orders::Enum::ReaverMoveToAttack] = Orders::Enum::AttackUnit; |
| 24 | BWtoBWAPI_Order[Orders::Enum::ReaverFight] = Orders::Enum::AttackUnit; |
| 25 | BWtoBWAPI_Order[Orders::Enum::StayInRange] = Orders::Enum::AttackUnit; |
| 26 | BWtoBWAPI_Order[Orders::Enum::SuicideUnit] = Orders::Enum::AttackUnit; |
| 27 | BWtoBWAPI_Order[Orders::Enum::WatchTarget] = Orders::Enum::AttackUnit; |
| 28 | BWtoBWAPI_Order[Orders::Enum::TowerAttack] = Orders::Enum::AttackUnit; |
| 29 | BWtoBWAPI_Order[Orders::Enum::TurretAttack] = Orders::Enum::AttackUnit; |
| 30 | BWtoBWAPI_Order[Orders::Enum::AttackFixedRange] = Orders::Enum::AttackUnit; |
| 31 | |
| 32 | BWtoBWAPI_Order[Orders::Enum::CarrierHoldPosition] = Orders::Enum::HoldPosition; |
| 33 | BWtoBWAPI_Order[Orders::Enum::QueenHoldPosition] = Orders::Enum::HoldPosition; |
| 34 | BWtoBWAPI_Order[Orders::Enum::SuicideHoldPosition] = Orders::Enum::HoldPosition; |
| 35 | BWtoBWAPI_Order[Orders::Enum::MedicHoldPosition] = Orders::Enum::HoldPosition; |
| 36 | BWtoBWAPI_Order[Orders::Enum::ReaverHoldPosition] = Orders::Enum::HoldPosition; |
| 37 | |
| 38 | BWtoBWAPI_Order[Orders::Enum::PlaceProtossBuilding] = Orders::Enum::PlaceBuilding; |
| 39 | BWtoBWAPI_Order[Orders::Enum::DroneStartBuild] = Orders::Enum::PlaceBuilding; |
| 40 | BWtoBWAPI_Order[Orders::Enum::DroneLand] = Orders::Enum::PlaceBuilding; |
| 41 | |
| 42 | BWtoBWAPI_Order[Orders::Enum::DroneBuild] = Orders::Enum::IncompleteBuilding; |
| 43 | BWtoBWAPI_Order[Orders::Enum::IncompleteMorphing] = Orders::Enum::IncompleteBuilding; |
| 44 | BWtoBWAPI_Order[Orders::Enum::IncompleteWarping] = Orders::Enum::IncompleteBuilding; |
| 45 | |
| 46 | BWtoBWAPI_Order[Orders::Enum::SuicideLocation] = Orders::Enum::AttackMove; |
| 47 | BWtoBWAPI_Order[Orders::Enum::MoveToRepair] = Orders::Enum::Repair; |
| 48 | BWtoBWAPI_Order[Orders::Enum::MoveToFireYamatoGun] = Orders::Enum::FireYamatoGun; |
| 49 | BWtoBWAPI_Order[Orders::Enum::InitializeArbiter] = Orders::Enum::PlayerGuard; |
| 50 | BWtoBWAPI_Order[Orders::Enum::InitializePsiProvider] = Orders::Enum::Nothing; |
| 51 | BWtoBWAPI_Order[Orders::Enum::MoveToInfest] = Orders::Enum::CastInfestation; |
| 52 | BWtoBWAPI_Order[Orders::Enum::ResetHarvestCollision] = Orders::Enum::ResetCollision; |
| 53 | BWtoBWAPI_Order[Orders::Enum::NukePaint] = Orders::Enum::CastNuclearStrike; |
| 54 | |
| 55 | for(int i = 0; i < UnitTypes::Enum::MAX; ++i) |
| 56 | AttackAnimationRestFrame[i] = 10000; |
| 57 | |
| 58 | AttackAnimationRestFrame[UnitTypes::Enum::Terran_Marine] = 34; |
| 59 | AttackAnimationRestFrame[UnitTypes::Enum::Terran_Ghost] = 34; |
| 60 | AttackAnimationRestFrame[UnitTypes::Enum::Terran_Vulture] = 10000; |
| 61 | AttackAnimationRestFrame[UnitTypes::Enum::Terran_Goliath] = 10000; |
| 62 | AttackAnimationRestFrame[UnitTypes::Enum::Terran_Siege_Tank_Siege_Mode] = 10000; |
| 63 | AttackAnimationRestFrame[UnitTypes::Enum::Terran_Siege_Tank_Tank_Mode] = 10000; |
| 64 | AttackAnimationRestFrame[UnitTypes::Enum::Terran_SCV] = 17; |
| 65 | AttackAnimationRestFrame[UnitTypes::Enum::Terran_Wraith] = 10000; |
| 66 | AttackAnimationRestFrame[UnitTypes::Enum::Terran_Science_Vessel] = 10000; |