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

Method lstArmorClick

src/Basescape/SoldierArmorState.cpp:145–162  ·  view source on GitHub ↗

* Equips the armor on the soldier and returns to the previous screen. * @param action Pointer to an action. */

Source from the content-addressed store, hash-verified

143 * @param action Pointer to an action.
144 */
145void SoldierArmorState::lstArmorClick(Action *)
146{
147 Soldier *soldier = _base->getSoldiers()->at(_soldier);
148 if (_game->getSavedGame()->getMonthsPassed() != -1)
149 {
150 if (soldier->getArmor()->getStoreItem() != "STR_NONE")
151 {
152 _base->getItems()->addItem(soldier->getArmor()->getStoreItem());
153 }
154 if (_armors[_lstArmor->getSelectedRow()]->getStoreItem() != "STR_NONE")
155 {
156 _base->getItems()->removeItem(_armors[_lstArmor->getSelectedRow()]->getStoreItem());
157 }
158 }
159 soldier->setArmor(_armors[_lstArmor->getSelectedRow()]);
160
161 _game->popState();
162}
163
164}

Callers

nothing calls this directly

Calls 11

getMonthsPassedMethod · 0.80
getSavedGameMethod · 0.80
getStoreItemMethod · 0.80
getSelectedRowMethod · 0.80
getSoldiersMethod · 0.45
getArmorMethod · 0.45
addItemMethod · 0.45
getItemsMethod · 0.45
removeItemMethod · 0.45
setArmorMethod · 0.45
popStateMethod · 0.45

Tested by

no test coverage detected