public SaveData(GameManager gameManager, TimerPanel timer, PropertyManager propertyManager, KEventManager eventManager, StartingKingdomController startingKingdomController, Transform camera) { population = gameManager.Population; happiness = gameManager.Happiness; gold = gameManager.Gold; food = gameManager.Food; building = gameManager.Building; day = timer.GetCurrentDay(); playerKingdom = startingKingdomController.PlayerKingdom; cameraX = camera.position.x; cameraY = camera.position.y; properties = new PropertySaveData[propertyManager.Propriedades.Count]; foreach (Property p in propertyManager.Propriedades) { properties[p.index] = new PropertySaveData(p.index, p.dominated, p.GetSoldiers(SoldierType.InProperty), p.Level, p.kingdom); } if (eventManager.GetAllActiveEvents().Count > 0) { List <KEvent> list = eventManager.GetAllActiveEvents(); activeEvents = new EventSaveData[list.Count]; for (int i = 0; i < list.Count; i++) { activeEvents[i] = new EventSaveData( list[i].PortugueseExhibitionName, list[i].EnglishExhibitionName, list[i].InternalName, list[i].PortugueseDescription, list[i].EnglishDescription, list[i].Duration, list[i].LeftDuration, list[i].ActiveIntensity, list[i].mode, list[i].battle, list[i].chance, list[i].PercentGoldLight, list[i].PercentFoodLight, list[i].PercentBuildingLight, list[i].PercentPeopleLight, list[i].PercentHappinessLight, list[i].PercentGoldMedium, list[i].PercentFoodMedium, list[i].PercentBuildingMedium, list[i].PercentPeopleMedium, list[i].PercentHappinessMedium, list[i].PercentGoldHeavy, list[i].PercentFoodHeavy, list[i].PercentBuildingHeavy, list[i].PercentPeopleHeavy, list[i].PercentHappinessHeavy, list[i].AbsoluteGoldLight, list[i].AbsoluteFoodLight, list[i].AbsoluteBuildingLight, list[i].AbsoluteGoldMedium, list[i].AbsoluteFoodMedium, list[i].AbsoluteBuildingMedium, list[i].AbsoluteGoldHeavy, list[i].AbsoluteFoodHeavy, list[i].AbsoluteBuildingHeavy, list[i].showInInspector); } } else { activeEvents = null; } }
private void OnEnable() { KEventManagerScript = (KEventManager)target; GetTarget = new SerializedObject(KEventManagerScript); }