@@ -87,7 +87,7 @@ BattlescapeGenerator::~BattlescapeGenerator()
8787/* *
8888 * Sets up all our various arrays and whatnot according to the size of the map.
8989 */
90- void BattlescapeGenerator::init ()
90+ void BattlescapeGenerator::init (bool resetTerrain )
9191{
9292 _blocks.clear ();
9393 _landingzone.clear ();
@@ -101,7 +101,7 @@ void BattlescapeGenerator::init()
101101
102102 _blocksToDo = (_mapsize_x / 10 ) * (_mapsize_y / 10 );
103103 // creates the tile objects
104- _save->initMap (_mapsize_x, _mapsize_y, _mapsize_z);
104+ _save->initMap (_mapsize_x, _mapsize_y, _mapsize_z, resetTerrain );
105105 _save->initUtilities (_mod);
106106}
107107
@@ -736,6 +736,8 @@ void BattlescapeGenerator::deployXCOM()
736736 // equip soldiers based on equipment-layout
737737 for (std::vector<BattleItem*>::iterator i = _craftInventoryTile->getInventory ()->begin (); i != _craftInventoryTile->getInventory ()->end (); ++i)
738738 {
739+ // set all the items on this tile as belonging to the XCOM faction.
740+ (*i)->setXCOMProperty (true );
739741 // don't let the soldiers take extra ammo yet
740742 if ((*i)->getRules ()->getBattleType () == BT_AMMO )
741743 continue ;
@@ -1938,7 +1940,6 @@ void BattlescapeGenerator::loadWeapons()
19381940 if ((*j)->getSlot () == _game->getMod ()->getInventory (" STR_GROUND" , true ) && (*i)->setAmmoItem (*j) == 0 )
19391941 {
19401942 _save->getItems ()->push_back (*j);
1941- (*j)->setXCOMProperty (true );
19421943 (*j)->setSlot (_game->getMod ()->getInventory (" STR_RIGHT_HAND" , true ));
19431944 loaded = true ;
19441945 }
@@ -1969,7 +1970,7 @@ void BattlescapeGenerator::generateMap(const std::vector<MapScript*> *script)
19691970 // set up our map generation vars
19701971 _dummy = new MapBlock (" dummy" );
19711972
1972- init ();
1973+ init (true );
19731974
19741975 MapBlock* craftMap = 0 ;
19751976 std::vector<MapBlock*> ufoMaps;
@@ -2209,7 +2210,7 @@ void BattlescapeGenerator::generateMap(const std::vector<MapScript*> *script)
22092210 {
22102211 _mapsize_z = command->getSizeZ ();
22112212 }
2212- init ();
2213+ init (false );
22132214 break ;
22142215 default :
22152216 break ;
0 commit comments