MCPcopy Create free account
hub / github.com/OpenXcom/OpenXcom / close

Method close

src/Battlescape/NextTurnState.cpp:152–180  ·  view source on GitHub ↗

* Closes the window. */

Source from the content-addressed store, hash-verified

150 * Closes the window.
151 */
152void NextTurnState::close()
153{
154 _battleGame->getBattleGame()->cleanupDeleted();
155 _game->popState();
156
157 int liveAliens = 0;
158 int liveSoldiers = 0;
159 _state->getBattleGame()->tallyUnits(liveAliens, liveSoldiers, false);
160 if (liveAliens == 0 || liveSoldiers == 0)
161 {
162 _state->finishBattle(false, liveSoldiers);
163 }
164 else
165 {
166 _state->btnCenterClick(0);
167 // Autosave every 5 turns
168 if (_battleGame->getTurn() % 5 == 0 && _battleGame->getSide() == FACTION_PLAYER)
169 {
170 if (_game->getSavedGame()->isIronman())
171 {
172 _battleGame->getBattleGame()->statePushBack(new DelayedSaveState(_battleGame->getBattleGame(), _game, SAVE_IRONMAN));
173 }
174 else if (Options::autosave)
175 {
176 _battleGame->getBattleGame()->statePushBack(new DelayedSaveState(_battleGame->getBattleGame(), _game, SAVE_AUTO_BATTLESCAPE));
177 }
178 }
179 }
180}
181
182}

Callers

nothing calls this directly

Calls 11

cleanupDeletedMethod · 0.80
tallyUnitsMethod · 0.80
finishBattleMethod · 0.80
btnCenterClickMethod · 0.80
getTurnMethod · 0.80
getSideMethod · 0.80
isIronmanMethod · 0.80
getSavedGameMethod · 0.80
statePushBackMethod · 0.80
getBattleGameMethod · 0.45
popStateMethod · 0.45

Tested by

no test coverage detected