public void GenerateMap() { Log.SetWorker("GenerateMap"); Seed.seed = testSeed; Log.InfoSet("Seed"); BaseGeneratorSettings set = GameSettingsProvider.GetSettings <BaseGeneratorSettings>(); Watcher.WatchRun(() => WorldMesh.CreateWorldMesh(set.worldWidth, set.worldHeight, set.chunkWidth, set.chunkHeight), "CreateWorldMesh"); Watcher.WatchRun(() => WorldChunkMap.CreateMap(set.worldWidth, set.worldHeight, set.chunkWidth, set.chunkHeight, chunkObject.transform.localScale), "CreateMap"); // Voronoi > Regions > Calculate triangles // WaterMask > SetWater > SetCoastline > Set distances // Set rivers // Set height > Smooth height // Set moisture // Draw colors > smooth colors Log.ResetWorker(); AThread thread = new AThread(generatorGraph.GetGenerateAction()); thread.Start(); thread.RunAfterThreadEnd(() => WorldChunkMap.CreateChunks(chunkObject, transform, true)); }
public void Initialize(Parachute parachute, GameSettingsProvider gameSettingsProvider) { if (!_isInitialized) { _gameSettingsProvider = gameSettingsProvider; _lineParent = _lineParent ?? new GameObject("Lines"); _lineParent.transform.SetParent(this.transform); _lineMaterial = Resources.Load <Material>("Parachutes/LineMaterial"); _aerodynamicsMaterial = Resources.Load <Material>("AerodynamicsVisualizerMaterial"); InstallParachute(parachute); _gameSettingChanges = _gameSettingsProvider.SettingChanges.Subscribe(settings => { for (int i = 0; i < _parachute.Sections.Count; ++i) { _liftLines[i].Renderer.gameObject.SetActive(settings.Gameplay.VisualizeAerodynamics); _dragLines[i].Renderer.gameObject.SetActive(settings.Gameplay.VisualizeAerodynamics); } }); _isInitialized = true; } }
public GameSettingsUpdater(GameSettingsProvider settingsProvider) { _settingsProvider = settingsProvider; _initialSettings = settingsProvider.ActiveSettings; _unappliedSettings = new UnappliedSettings(); _needsRestart = false; }
private static void LoadVrConfig(GameSettingsProvider gameSettingsProvider) { var vrMode = DetermineVrMode(); Debug.Log("Booting in VrMode: " + vrMode); // Todo: We don't want to serialize this value, but we do want other systems to use it gameSettingsProvider.ActiveVrMode = vrMode; }
public void GetConnectionString() { if (connection == null) { MongoTestConventions.RegisterConventions(); connection = new TestConnectionPrivider("connection.txt"); } if (gameSettingsProvider == null) { gameSettingsProvider = new GameSettingsProvider(); } }
public void AttachToPilot(Wingsuit pilot, Quaternion unfoldOrientation, GameSettingsProvider gameSettingsProvider) { _pilot = pilot; UnityParachuteFactory.SetKinematic(this); Root.position = _pilot.Torso.position; Root.rotation = _pilot.Torso.rotation; Root.rotation *= unfoldOrientation; // Layout canopy to initial pre-opened deployment state UnityParachuteFactory.LayoutCells(this); UnityParachuteFactory.Relax(this); for (int i = 0; i < Sections.Count; i++) { var section = Sections[i]; if (section.FrontLine == null || section.RearLine == null) { continue; } section.BrakeLine.Joint.connectedBody = pilot.Torso; section.FrontLine.Joint.connectedBody = pilot.Torso; section.RearLine.Joint.connectedBody = pilot.Torso; } UnityParachuteFactory.SetPhysical(this); if (_lineRenderer == null) { _lineRenderer = gameObject.AddComponent <ParachuteLineRenderer>(); _lineRenderer.Initialize(this, gameSettingsProvider); } _lineRenderer.enabled = true; }
public OptionsMenuModel(GameSettingsProvider gameSettingsProvider, Languages languages, string appVersion, Action <InputBindingViewModel> startRebind, Action <InputDefaults> restoreInputToDefaults) { MenuStack = new Stack <Menu>(); MenuStack.Push(Menu.Main); AppVersion = "v" + appVersion; _inputBindings = null; _menuState = MenuId.StartSelection; _gameSettingsProvider = gameSettingsProvider; _restoreInputToDefaults = restoreInputToDefaults; _startRebind = startRebind; _gameSettingsUpdater = new GameSettingsUpdater(gameSettingsProvider); AudioSettings = new AudioSettingsViewModel(_gameSettingsUpdater); GraphicsSettings = new GraphicsSettingsViewModel(_gameSettingsUpdater); GameplaySettings = new GameplaySettingsViewModel(_gameSettingsUpdater); TimeAndWeatherSettings = new TimeAndWeatherSettingsViewModel(_gameSettingsUpdater); InputSettings = new InputSettingsViewModel(_gameSettingsUpdater); OtherSettings = new OtherSettingsViewModel(_gameSettingsUpdater, languages); _gameSettingsProvider.SettingChanges.Subscribe(OnUpdate); _gameSettingsUpdater.OnUnappliedSettingsUpdated += unappliedSettings => OnUpdate(); }