MCPcopy Create free account
hub / github.com/OpenApoc/OpenApoc / insertAt

Method insertAt

game/state/battle/battleforces.cpp:18–39  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

16}
17
18bool BattleForces::insertAt(unsigned squad, unsigned position, sp<BattleUnit> unit)
19{
20 if (squads[squad].getNumUnits() == 6 && unit->squadNumber != (int)squad)
21 {
22 return false;
23 }
24 if (unit->squadNumber != -1)
25 {
26 removeAt(unit->squadNumber, unit->squadPosition);
27 }
28 if (position > squads[squad].units.size())
29 {
30 position = (unsigned)squads[squad].units.size();
31 }
32 squads[squad].units.insert(squads[squad].units.begin() + position, unit);
33 unit->squadNumber = squad;
34 for (int i = 0; i < squads[squad].getNumUnits(); i++)
35 {
36 squads[squad].units[i]->squadPosition = i;
37 }
38 return true;
39}
40
41void BattleForces::removeAt(unsigned squad, unsigned position)
42{

Callers 1

assignToSquadMethod · 0.80

Calls 4

getNumUnitsMethod · 0.80
insertMethod · 0.80
sizeMethod · 0.45
beginMethod · 0.45

Tested by

no test coverage detected