/// <summary> /// Shows location dungeon blocks. /// </summary> /// <param name="dfLocation">DFLocation.</param> public void ShowLocationDungeon(DFLocation dfLocation) { // Exit if not ready if (!isReady) { return; } // Load dungeon LocationView view = (LocationView)viewClients[ViewModes.DungeonView]; view.CreateDungeonLocationScene(dfLocation.RegionName, dfLocation.Name); // Set view mode lastViewMode = viewMode; viewMode = ViewModes.DungeonView; viewClients[viewMode].ResumeView(); RaiseViewModeChangedEvent(); }
/// <summary> /// Moves active camera to origin of specified block. /// </summary> public void MoveToBlock(int x, int z) { // Exit if not ready if (!isReady) { return; } // Move to block if (viewMode == ViewModes.LocationView) { LocationView view = (LocationView)viewClients[ViewModes.LocationView]; view.MoveToBlock(x, z); } else if (viewMode == ViewModes.DungeonView) { LocationView view = (LocationView)viewClients[ViewModes.DungeonView]; view.MoveToBlock(x, z); } }
/// <summary> /// Shows a single block view. /// </summary> /// <param name="name">Block name.</param> /// <param name="climate">Climate of block.</param> public void ShowBlockView(string name, DFLocation.ClimateSettings?climate) { // Exit if not ready if (!isReady) { return; } // Show block scene if (!string.IsNullOrEmpty(name)) { name = name.ToUpper(); LocationView view = (LocationView)viewClients[ViewModes.BlockView]; view.CreateBlockScene(name, climate); } // Set view mode lastViewMode = viewMode; viewMode = ViewModes.BlockView; viewClients[viewMode].ResumeView(); RaiseViewModeChangedEvent(); }