public static void Initialize() { //setup location RuntimeData.localMapData.Instantiate(); _fleets = new List <Fleet>(); _ships = new List <ShipEntity>(); //collect all entities _resources = Object.FindObjectsOfType <ResourceEntity>().ToList(); _lastSpeed = SimulationSpeed.Normal; //setup ui CommandMapper.Initialize(); //setup eventual fleets for (int i = 0; i < RuntimeData.localMapData.fleets.Count; i++) { AddFleet(RuntimeData.localMapData.fleets[i]); } //enable/disable leave status OnGameStatusUpdated?.Invoke(_ships.All(s => s.teamID == 0)); CameraManager.getInstance.JumpTo(_ships[0].transform.position, true); CoroutineSurrogate.getInstance.StartCoroutine(TickAICommanders()); CoroutineSurrogate.getInstance.StartCoroutine(TurnTickAsync()); SetSimulationSpeed(SimulationSpeed.Stopped); }