public static void Initialize()
        {
            // Initialize game window, set's the Global.CurrentScreen
            var gameWindow = new GameWindow(Constants.GameWindowWidth, Constants.GameWindowHeight);

            Add(gameWindow);

            // Initialize map
            var map = new MapWindow(Constants.Map.Width, Constants.Map.Height);

            Add(map);
            map.Initialize();

            // Initialize dialog window
            var dialogWindow = new DialogWindow(Constants.Map.Width, 6);

            Add(dialogWindow);

            // Initialize game over window
            var gameOverWindow = new GameOverWindow(Constants.GameWindowWidth, Constants.GameWindowHeight);

            Add(gameOverWindow);

            // Initialize inventory
            var inventory = new InventoryWindow(Constants.GameWindowWidth / 3, 15);

            Add(inventory);
            inventory.Initialize();

            var interaction = new InteractionWindow(Constants.GameWindowWidth / 3, 7);

            Add(interaction);

            var fovWindow = new FovWindow(Constants.GameWindowWidth / 3, 12);

            Add(fovWindow);

            var developerWindow = new DeveloperWindow(Constants.Map.Width, 14)
            {
                IsVisible = false
            };

            Add(developerWindow);

            IsInitialized = true;
        }
        private void DeveloperMode_Button_Click(object sender, RoutedEventArgs e)
        {
            WindowStartupLocation = WindowStartupLocation.CenterOwner;
            PasswordBox passBox = new PasswordBox
            {
                Owner = this
            };

            if (passBox.ShowDialog() == true)
            {
                DeveloperWindow developerWindow = new DeveloperWindow
                {
                    Owner = this
                };
                Hide();
                developerWindow.ShowDialog();
                Show();
            }
        }
Esempio n. 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;
        }
Esempio n. 4
0
        private static bool TeleportPlayer(string text, DeveloperWindow window, out string output)
        {
            var args = text.Split(' ');

            if (args.Length != 3 || !int.TryParse(args[1], out int x) || !int.TryParse(args[2], out int y))
            {
                output = "Invalid command arguments.";
                return(false);
            }
            var prevPosition = Game.Player.Position;

            Game.Player.MoveTowards(new Point(x, y), false);

            // Discover radius around player on teleport
            var prevRadius = Game.Player.FieldOfViewRadius;

            Game.Player.FieldOfViewRadius = Constants.Items.FlashlightRadius;
            EntityManager.RecalculatFieldOfView(Game.Player, true, true);
            Game.Player.FieldOfViewRadius = prevRadius;
            EntityManager.RecalculatFieldOfView(Game.Player, false);

            output = $"Teleported player from {prevPosition} to {Game.Player.Position}";
            return(true);
        }
Esempio n. 5
0
 private static bool GetPlayerPos(string text, DeveloperWindow window, out string output)
 {
     output = $"Player pos: {Game.Player.Position}";
     return(true);
 }
Esempio n. 6
0
 private static bool Clear(string text, DeveloperWindow window, out string output)
 {
     output = "";
     window.ClearConsole();
     return(true);
 }