public void Awake() { interfaceFactory = FindObjectOfType <InterfaceFactory>(); if (interfaceFactory == null) { gameObject.SetActive(false); } try { ProvinceParser = GetComponent(typeof(IProvinceParser)) as IProvinceParser; CountryParser = GetComponent(typeof(ICountryParser)) as ICountryParser; LandmarkParser = GetComponent(typeof(ILandmarkParser)) as ILandmarkParser; } catch { componentMissing = true; } if (ProvinceParser == null || CountryParser == null || LandmarkParser == null) { componentMissing = true; } }
protected override void Start() { base.Start(); if (gameObject.activeSelf) { if (componentMissing == true) { errorHandler.ReportError("Player Character missing component", ErrorState.restart_scene); } else { landmarkParser = globeParser.LandmarkParser; if (landmarkParser == null) { errorHandler.ReportError("Landmark parser missing", ErrorState.restart_scene); } navigationUI = uiManager.NavigationUI; if (navigationUI == null) { errorHandler.ReportError("Navigation UI missing", ErrorState.restart_scene); } touristManager = gameManager.TouristManager; if (touristManager == null) { errorHandler.ReportError("Tourist Manager missing", ErrorState.restart_scene); } else { for (int i = 0; i < STARTING_NUMBER_OF_TOURISTS; i++) { touristManager.GenerateTourist(); } } cameraManager = gameManager.CameraManager; if (cameraManager == null) { errorHandler.ReportError("Camera Manager missing", ErrorState.restart_scene); } else { cameraManager.OrientOnLocation(VectorLocation); } turnsManager = gameManager.TurnsManager; if (turnsManager == null) { errorHandler.ReportError("Turns Manager missing", ErrorState.restart_scene); } else { turnsManager.TurnBasedObjects.Add(this); } Vehicle.InitVehicles(); ClimateCosts = Vehicle.GetClimateVehicle("Mild"); UpdateLocation(CellLocation.index); } } }