setLockedUnitsForFaction
*save locked Units in savegames ( and load them when savegame is loaded )
This commit is contained in:
parent
5de94dccc9
commit
7eb04e1583
|
@ -2267,6 +2267,13 @@ void Faction::saveGame(XmlNode *rootNode) {
|
||||||
factionNode->addAttribute("currentSwitchTeamVoteFactionIndex",intToStr(currentSwitchTeamVoteFactionIndex), mapTagReplacements);
|
factionNode->addAttribute("currentSwitchTeamVoteFactionIndex",intToStr(currentSwitchTeamVoteFactionIndex), mapTagReplacements);
|
||||||
factionNode->addAttribute("allowSharedTeamUnits",intToStr(allowSharedTeamUnits), mapTagReplacements);
|
factionNode->addAttribute("allowSharedTeamUnits",intToStr(allowSharedTeamUnits), mapTagReplacements);
|
||||||
|
|
||||||
|
for(std::set<const UnitType*>::iterator iterMap = lockedUnits.begin();
|
||||||
|
iterMap != lockedUnits.end(); ++iterMap) {
|
||||||
|
XmlNode *lockedUnitsListNode = factionNode->addChild("lockedUnitList");
|
||||||
|
const UnitType *ut=*iterMap;
|
||||||
|
|
||||||
|
lockedUnitsListNode->addAttribute("value",ut->getName(false), mapTagReplacements);
|
||||||
|
}
|
||||||
|
|
||||||
for(std::map<int,int>::iterator iterMap = unitsMovingList.begin();
|
for(std::map<int,int>::iterator iterMap = unitsMovingList.begin();
|
||||||
iterMap != unitsMovingList.end(); ++iterMap) {
|
iterMap != unitsMovingList.end(); ++iterMap) {
|
||||||
|
@ -2359,6 +2366,14 @@ void Faction::loadGame(const XmlNode *rootNode, int factionIndex,GameSettings *s
|
||||||
|
|
||||||
random.setLastNumber(factionNode->getAttribute("random")->getIntValue());
|
random.setLastNumber(factionNode->getAttribute("random")->getIntValue());
|
||||||
|
|
||||||
|
vector<XmlNode *> lockedUnitsListNodeList = factionNode->getChildList("lockedUnitList");
|
||||||
|
for(unsigned int i = 0; i < lockedUnitsListNodeList.size(); ++i) {
|
||||||
|
XmlNode *lockedUnitsListNode = lockedUnitsListNodeList[i];
|
||||||
|
|
||||||
|
string unitName = lockedUnitsListNode->getAttribute("value")->getValue();
|
||||||
|
lockedUnits.insert(getType()->getUnitType(unitName));
|
||||||
|
}
|
||||||
|
|
||||||
vector<XmlNode *> unitsMovingListNodeList = factionNode->getChildList("unitsMovingList");
|
vector<XmlNode *> unitsMovingListNodeList = factionNode->getChildList("unitsMovingList");
|
||||||
for(unsigned int i = 0; i < unitsMovingListNodeList.size(); ++i) {
|
for(unsigned int i = 0; i < unitsMovingListNodeList.size(); ++i) {
|
||||||
XmlNode *unitsMovingListNode = unitsMovingListNodeList[i];
|
XmlNode *unitsMovingListNode = unitsMovingListNodeList[i];
|
||||||
|
|
Loading…
Reference in New Issue
Block a user