示例#1
0
        private void ShowTravelWindow(TravelList travelList)
        {
            TravelWindow window = new TravelWindow(travelList);

            window.Owner = this;
            this.Hide();
            window.ShowDialog();
            this.Show();
        }
示例#2
0
        protected override void CallFastTravelGoldCheck()
        {
            if (IsPlayerControlledTravel())
            {
                CloseWindow();
                TravelWindow.CloseTravelWindows(true);

                TravelOptionsMod.Instance.BeginTravel(TravelWindow.LocationSummary, SpeedCautious);
            }
            else
            {
                base.CallFastTravelGoldCheck();
            }
        }
示例#3
0
        public void Init()
        {
            GameSession  = new GameSession();
            InputManager = new InputManager();
            Parameters   = new Parameters();

            Parameters.WidthOrHeightChanged += UpdateSize;

            MessageWindow = new MessageWindow(Parameters.MessageX, Parameters.MessageY, Parameters.MessageWidth, Parameters.MessageHeight, ConWindow.BorderType.Double);

            BindingsWindow  = new BindingsWindow(Parameters.BindingsX, Parameters.BindingsY, Parameters.BindingsWidth, Parameters.BindingsHeight, ConWindow.BorderType.Double);
            StatsWindow     = new StatsWindow(Parameters.StatsX, Parameters.StatsY, Parameters.StatsWidth, Parameters.StatsHeight, ConWindow.BorderType.Double);
            LocationWindow  = new LocationWindow(Parameters.LocationX, Parameters.LocationY, Parameters.LocationWidth, Parameters.LocationHeight, ConWindow.BorderType.Single);
            TravelWindow    = new TravelWindow(Parameters.TravelX, Parameters.TravelY, Parameters.TravelWidth, Parameters.TravelHeight, ConWindow.BorderType.Double);
            InventoryWindow = new InventoryWindow(Parameters.InventoryX, Parameters.InventoryY, Parameters.InventoryWidth, Parameters.InventoryHeight, ConWindow.BorderType.Double);

            // dev
            DeveloperWindow = new DeveloperWindow(Parameters.DeveloperX, Parameters.DeveloperY, Parameters.DeveloperWidth, Parameters.DeveloperHeight, ConWindow.BorderType.Double, Parameters.DeveloperHeight - 2, "DEV CONSOLE", true, false);
            DeveloperWindow.Add("Developer window successfuly initialized.");

            CurrentlyFocused = FocusableWindows.MainWindow;
        }
示例#4
0
        protected override void CallFastTravelGoldCheck()
        {
            // Hidden Map Locations: Check if player has visited before allowing fast travel.
            if (TravelOptionsMod.Instance.HiddenMapLocationsEnabled && !IsPlayerControlledTravel())
            {
                bool hasVisitedLocation = false;
                ModManager.Instance.SendModMessage(TravelOptionsMod.HIDDEN_MAP_LOCATIONS_MODNAME, "hasVisitedLocation",
                                                   new Tuple <int, int, bool>(EndPos.X, EndPos.Y, TravelShip),
                                                   (string _, object result) => { hasVisitedLocation = (bool)result; });

                if (!hasVisitedLocation)
                {
                    DaggerfallUI.MessageBox(MsgNotVisited);
                    return;
                }
            }

            if (!travelWindowTO.LocationSelected)
            {
                CloseWindow();
                TravelWindow.CloseTravelWindows(true);

                Debug.LogFormat("Start travel to MP coords: {0},{1}", EndPos.X, EndPos.Y);
                TravelOptionsMod.Instance.BeginTravelToCoords(EndPos, SpeedCautious);
            }
            else if (IsPlayerControlledTravel())
            {
                CloseWindow();
                TravelWindow.CloseTravelWindows(true);

                TravelOptionsMod.Instance.BeginTravel(TravelWindow.LocationSummary, SpeedCautious);
            }
            else
            {
                base.CallFastTravelGoldCheck();
            }
        }
        /// <summary>
        /// Instantiate windows upon launch.
        /// </summary>
        public static void Initialize()
        {
            var gameWindow = new GameWindow(Constants.GameWidth, Constants.GameHeight)
            {
                IsFocused = true,
                IsVisible = true
            };

            Add(gameWindow);

            var characterWindow = new CharacterWindow(Constants.Windows.CharacterWidth, Constants.Windows.CharacterHeight)
            {
                IsVisible = false,
                IsFocused = false
            };

            Add(characterWindow);

            var statsWindow = new StatsWindow(Constants.Windows.StatsWidth, Constants.Windows.StatsHeight);

            Add(statsWindow);

            var inventoryWindow = new InventoryWindow(Constants.Windows.InventoryWidth, Constants.Windows.InventoryHeight)
            {
                IsVisible = false,
                IsFocused = false
            };

            Add(inventoryWindow);

            var previewWindow = new ItemPreviewWindow(Constants.Windows.ItemPreviewWidth, Constants.Windows.ItemPreviewHeight)
            {
                IsVisible = false,
                IsFocused = false
            };

            Add(previewWindow);

            var travelWindow = new TravelWindow(Constants.Windows.TravelWidth, Constants.Windows.TravelHeight)
            {
                IsVisible = false,
                IsFocused = false
            };

            Add(travelWindow);

            var messageWindow = new MessageWindow(Constants.Windows.MessageWidth, Constants.Windows.MessageHeight);

            Add(messageWindow);

            // Initialize last so all consoles are instantiated prior to creating keybinding bools for visibility
            var keybindingsWindow = new KeybindingsWindow(Constants.Windows.KeybindingsWidth, Constants.Windows.KeybindingsHeight);

            Add(keybindingsWindow);

            var generalKeybindingsWindow = new GeneralKeybindingsWindow(Constants.Windows.GeneralKeybindingsWidth, Constants.Windows.GeneralKeybindingsHeight);

            Add(generalKeybindingsWindow);

            var locationKeybindingsWindow = new LocationKeybindingsWindow(Constants.Windows.LocationKeybindingsWidth, Constants.Windows.LocationKeybindingsHeight);

            Add(locationKeybindingsWindow);

            var actionKeybindingsWindow = new ActionKeybindingsWindow(Constants.Windows.ActionKeybindingsWidth, Constants.Windows.ActionKeybindingsHeight);

            Add(actionKeybindingsWindow);


            // Action windows
            var choppingWindow = new ChoppingWindow(Constants.Windows.Actions.ChoppingWidth, Constants.Windows.Actions.ChoppingHeight)
            {
                IsVisible = false,
                IsFocused = false
            };

            Add(choppingWindow);

            var characterKeybindingsWindow = new CharacterKeybindingsWindow(Constants.Windows.CharacterKeybindingsWidth, Constants.Windows.CharacterKeybindingsHeight)
            {
                IsVisible = false
            };

            Add(characterKeybindingsWindow);

            IsInitialized = true;
        }