public void Start() { myWindow.parentCloseCallback = CloseWindow; if (PlayerGameManager.GetInstance != null) { if (PlayerGameManager.GetInstance.campaignData.mapPointList == null) { PlayerGameManager.GetInstance.campaignData.mapPointList = new List <MapPointInformationData>(); } MapPointInformationData checkIfTheresEmptyLand = PlayerGameManager.GetInstance.campaignData.mapPointList.Find(x => x.ownedBy == TerritoryOwners.Neutral); if (PlayerGameManager.GetInstance.campaignData.mapPointList.Count <= 0 || checkIfTheresEmptyLand != null && (checkIfTheresEmptyLand.troopsStationed == null || checkIfTheresEmptyLand.troopsStationed.Count <= 0)) { for (int i = 0; i < mapSelectionList.Count; i++) { currentMap = mapSelectionList[i]; if (currentMap.myMap.myMapPoints.Find(x => x.myPointInformation.ownedBy == TerritoryOwners.Neutral && (x.myPointInformation.troopsStationed == null || x.myPointInformation.troopsStationed.Count <= 0))) { GenerateMapUnits(); } } SaveMapUnits(); } else { InitializeMapUnits(); } } }
public void LoadMapPointInformation(MapPointInformationData mapPointInformationData) { myPointInformation = new MapPointInformationData(); myPointInformation = mapPointInformationData; myPointInformation.mapType = myController.mapType; UpdateFlagCrest(); if (myPointInformation.travellersOnPoint != null && myPointInformation.travellersOnPoint.Count > 0 && !pointTowardsKingdom) { RandomizeTravellerMovement(); } else if (pointTowardsKingdom && myPointInformation.travellersOnPoint != null && myPointInformation.travellersOnPoint.Count > 0) { if (myPointInformation.latestWeekUpdated != PlayerGameManager.GetInstance.playerData.weekCount) { SpawnThisTravelerUnitToVisibleMap(myPointInformation.travellersOnPoint[0], myPointInformation.mapType); myPointInformation.travellersOnPoint.RemoveAt(0); } } if (myPointInformation.travellersOnPoint.Find(x => x.numberOfMovesNextWeek > 0) != null) { StartCoroutine(DelayWeekTravel()); } myPointInformation.latestWeekUpdated = PlayerGameManager.GetInstance.playerData.weekCount; }