private void SetupWorld(int width, int height) { // Set the current world to be this world. // TODO: Do we need to do any cleanup of the old world? Current = this; RoomManager = new RoomManager(); RoomManager.Adding += (room) => roomGraph = null; RoomManager.Removing += (room) => roomGraph = null; FillTilesArray(); FurnitureManager = new FurnitureManager(); FurnitureManager.Created += OnFurnitureCreated; UtilityManager = new UtilityManager(); CharacterManager = new CharacterManager(); InventoryManager = new InventoryManager(); jobQueue = new JobQueue(); GameEventManager = new GameEventManager(); PowerNetwork = new PowerNetwork(); FluidNetwork = new FluidNetwork(); temperature = new TemperatureDiffusion(this); Wallet = new Wallet(); CameraData = new CameraData(); LoadSkybox(); AddEventListeners(); holder.Start(); biomes.RandomBiome(); mapData.SetupWorld(width, height, biome.maxHeight); }
/// <summary> /// Calls the update functions on the systems that are updated on a fixed frequency. /// </summary> /// <param name="deltaTime">Delta time.</param> private void TickFixedFrequency(float deltaTime) { // Progress temperature modelling temperature.Update(deltaTime); PowerNetwork.Update(deltaTime); FluidNetwork.Update(deltaTime); }
private void SetupWorld(int width, int height, int depth) { Width = width; Height = height; Depth = depth; // Set the current world to be this world. Current = this; tiles = new Tile[Width, Height, Depth]; // TODO: Do we need to do any cleanup of the old world? RoomManager = new RoomManager(); RoomManager.Adding += (room) => roomGraph = null; RoomManager.Removing += (room) => roomGraph = null; FillTilesArray(); FurnitureManager = new FurnitureManager(); FurnitureManager.Created += OnFurnitureCreated; UtilityManager = new UtilityManager(); CharacterManager = new CharacterManager(); InventoryManager = new InventoryManager(); jobManager = new JobManager(); GameEventManager = new GameEventManager(); PowerNetwork = new PowerNetwork(); FluidNetwork = new FluidNetwork(); temperature = new TemperatureDiffusion(this); ShipManager = new ShipManager(); Wallet = new Wallet(); CameraData = new CameraData(); LoadSkybox(); AddEventListeners(); }
/// <summary> /// Calls the update functions on the systems that are updated on a fixed frequency. /// </summary> /// <param name="deltaTime">Delta time.</param> private void TickFixedFrequency(float deltaTime) { PowerNetwork.Update(deltaTime); FluidNetwork.Update(deltaTime); }