MCPcopy Create free account
hub / github.com/bwapi/bwapi / start

Method start

bwapi/TestAIModule/Source/TransportTest.cpp:19–69  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

17 running = false;
18}
19void TransportTest::start()
20{
21 if (fail) return;
22 running = true;
23
24 int transportCount = Broodwar->self()->completedUnitCount(transportType);
25 BWAssertF(transportCount>=1,{fail=true;return;});
26 for (Unit u : Broodwar->self()->getUnits())
27 if (u->getType()==transportType)
28 transport = u;
29
30 if (transportType.getRace()==Races::Terran)
31 {
32 for (Unit u : Broodwar->self()->getUnits())
33 if (u->getType()==UnitTypes::Terran_Marine ||
34 u->getType()==UnitTypes::Terran_Firebat ||
35 u->getType()==UnitTypes::Terran_Ghost ||
36 u->getType()==UnitTypes::Terran_Medic)
37 unloadedUnits.insert(u);
38 }
39 else if (transportType.getRace()==Races::Protoss)
40 {
41 for (Unit u : Broodwar->self()->getUnits())
42 if (u->getType()==UnitTypes::Protoss_Probe ||
43 u->getType()==UnitTypes::Protoss_Zealot ||
44 u->getType()==UnitTypes::Protoss_Dragoon)
45 unloadedUnits.insert(u);
46 }
47 else if (transportType.getRace()==Races::Zerg)
48 {
49 for (Unit u : Broodwar->self()->getUnits())
50 if (u->getType()==UnitTypes::Zerg_Drone ||
51 u->getType()==UnitTypes::Zerg_Hydralisk ||
52 u->getType()==UnitTypes::Zerg_Lurker)
53 unloadedUnits.insert(u);
54 }
55 BWAssertF(transport!=NULL,{fail=true;return;});
56 BWAssertF(transport->exists(),{fail=true;return;});
57 BWAssertF(transport->getLoadedUnits().size()==0,{fail=true;return;});
58 BWAssertF(unloadedUnits.size()==4,{fail=true;return;});
59 for (Unit u : unloadedUnits)
60 {
61 BWAssertF(u!=NULL,{fail=true;return;});
62 BWAssertF(u->exists()==true,{fail=true;return;});
63 BWAssertF(u->isLoaded()==false,{fail=true;return;});
64 BWAssertF(u->getTransport()==NULL,{fail=true;return;});
65 }
66 startFrame = Broodwar->getFrameCount();
67 nextFrame = Broodwar->getFrameCount();
68 state = Start;
69}
70bool TransportTest::verifyLoadedUnits()
71{
72 BWAssertF(transport!=NULL,{fail=true;return false;});

Callers

nothing calls this directly

Calls 11

completedUnitCountMethod · 0.80
isLoadedMethod · 0.80
selfMethod · 0.45
getUnitsMethod · 0.45
getTypeMethod · 0.45
getRaceMethod · 0.45
existsMethod · 0.45
sizeMethod · 0.45
getLoadedUnitsMethod · 0.45
getTransportMethod · 0.45
getFrameCountMethod · 0.45

Tested by

no test coverage detected