Ejemplo n.º 1
0
 public void Stop()
 {
     StaticDisplay.FPSCap = 60;
     StaticDisplay.RemoveResizeListener(Resize);
     StaticMouse.RemoveMouseDownListener(MouseDown);
     StaticKeyboard.RemoveKeyDownListener(KeyDown);
 }
Ejemplo n.º 2
0
        /// <summary>
        /// Vytvori a zobrazi okno se statistikami za posledni hru a nastavi akci, ktera se ma provest po zavreni statistik
        /// </summary>
        /// <param name="endType">typ konce hry</param>
        private void ShowEndGameStats(GameEnd endType)
        {
            //zrusime static mouse a zabranime dalsimu update - hrac pozna ze je konec
            StaticMouse.Enable(false);
            stopUpdating = true;

            Invoke(new Action(() =>
            {
                // vytvorime okno se statistikami za posledni hru
                EndGameStats s = GuiObjectFactory.CreateAndAddPlayerStatsUc(this, currentPlayer, currentPlayer.IsActivePlayer(), new Vector((SharedDef.VIEW_PORT_SIZE.Width - 800) / 2, (SharedDef.VIEW_PORT_SIZE.Height - 500) / 2));
                // a vytvorime akci, ktera se zavola pri zavreni statistik
                s.CloseAction = new Action(() =>
                {
                    // zavreni vyvola bud uzivatel (vlakno gui) nebo GameState (vlakno sceny), proto je potreba synchronizovat
                    Enqueue(new Action(() =>
                    {
                        if (endType != GameEnd.TOURNAMENT_FINISHED)
                        {
                            CloseGameWindowAndCleanup(endType);
                        }
                        else
                        {
                            TournamentFinished();
                        }
                    }));
                });
            }));
        }
Ejemplo n.º 3
0
        public void OnCanvasClick(Point point, MouseButtonEventArgs e)
        {
            if (userActionsDisabled || !isGameInitialized)
            {
                return;
            }

            if (StaticMouse.Instance != null && StaticMouse.ALLOWED)
            {
                point = StaticMouse.GetPosition();
            }

            if (e.ChangedButton == MouseButton.Left && e.ButtonState == MouseButtonState.Pressed &&
                !IsPointInViewPort(point) && StaticMouse.Instance != null && StaticMouse.ALLOWED)
            {
                ProcessStaticMouseActionBarClick(point);
                return;
            }

            if (IsPointInViewPort(point))
            {
                clickListeners.ForEach(l => l.OnCanvasClick(point, e));
            }
            else
            {
                inputMgr.OnActionBarClick(point, e);
            }
        }
Ejemplo n.º 4
0
 private void mainWindow_Activated(object sender, EventArgs e)
 {
     if (GameRunning)
     {
         StaticMouse.Enable(true);
     }
 }
Ejemplo n.º 5
0
 public void Stop()
 {
     StaticKeyboard.RemoveKeyUpListener(Events.KeyUp);
     StaticKeyboard.RemoveKeyDownListener(Events.KeyDown);
     StaticMouse.RemoveMouseDownListener(Events.MouseClick);
     StaticMouse.RemoveMouseWheelListener(Events.MouseWheel);
 }
Ejemplo n.º 6
0
 public virtual void Stop()
 {
     StaticMouse.RemoveMouseUpListener(MouseUpListener);
     Images.Values.ToList().ForEach(i => i.Dispose());
     Images.Clear();
     UiElements.Clear();
 }
Ejemplo n.º 7
0
 private void btnBack_Click(object sender, RoutedEventArgs e)
 {
     App.Instance.ClearMenus();
     if (App.WindowInstance.GameRunning)
     {
         StaticMouse.Enable(true);
     }
 }
Ejemplo n.º 8
0
 public void ShowOptionsMenu()
 {
     AddMenu(new OptionsUC());
     if (GameRunning)
     {
         StaticMouse.Enable(false);
     }
 }
Ejemplo n.º 9
0
        public override void Update(float tpf)
        {
            base.Update(tpf);

            if (targeting)
            {
                endPoint = StaticMouse.GetPosition();
                MoveLine();
            }
        }
Ejemplo n.º 10
0
 public virtual void Start(GameMode mode)
 {
     if (AssetDirectory != "")
     {
         Images = LoadAssets(AssetDirectory, filePath => new Bitmap(filePath), "bmp gif exif jpg png tiff".Split());
     }
     UiElements      = new Dictionary <string, UiElement>();
     LastMouseUpArgs = null;
     MouseUpListener = new MouseEventHandler((_, args) => LastMouseUpArgs = args);
     StaticMouse.AddMouseUpListener(MouseUpListener);
 }
Ejemplo n.º 11
0
 public void Update(float tpf)
 {
     if (ReloadTime > 0)
     {
         ReloadTime -= tpf;
     }
     else if (shooting)
     {
         Shoot(StaticMouse.GetPosition());
     }
 }
Ejemplo n.º 12
0
        public void Stop()
        {
            ChangeScreen(null);
            StaticDisplay.RemoveResizeListener(Resize);

            StaticMouse.RemoveMouseDownListener(MouseDown);
            StaticMouse.RemoveMouseUpListener(MouseUp);
            StaticMouse.RemoveMouseWheelListener(MouseWheel);

            StaticKeyboard.RemoveKeyDownListener(KeyDown);
            StaticKeyboard.RemoveKeyUpListener(KeyUp);
        }
Ejemplo n.º 13
0
        public void Start(GameMode mode)
        {
            StaticDisplay.AddResizeListener(Resize);

            StaticMouse.AddMouseDownListener(MouseDown);
            StaticMouse.AddMouseUpListener(MouseUp);
            StaticMouse.AddMouseWheelListener(MouseWheel);

            StaticKeyboard.AddKeyDownListener(KeyDown);
            StaticKeyboard.AddKeyUpListener(KeyUp);
            ChangeScreen(GuiGameMenu);
        }
Ejemplo n.º 14
0
        public void Start(GameMode mode)
        {
            Round.StartHeight    = StaticDisplay.DisplayHeight;
            Round.StartWidth     = StaticDisplay.DisplayWidth;
            StaticDisplay.FPSCap = 150;
            Textures.LoadTextures();
            Round.LoadLevels();
            Round.CurrentLevel = Round.Levels[0];
            Round.PlayerOne    = new Human();

            StaticDisplay.AddResizeListener(Resize);
            StaticMouse.AddMouseDownListener(MouseDown);
            StaticKeyboard.AddKeyDownListener(KeyDown);
        }
Ejemplo n.º 15
0
        public void Start(GameMode mode)
        {
            Round.StartHeight    = StaticDisplay.DisplayHeight;
            Round.StartWidth     = StaticDisplay.DisplayWidth;
            StaticDisplay.FPSCap = 80;
            Textures.LoadTextures();
            Round.LoadLevels();
            Round.CurrentLevel = Round.Levels[1];
            Round.PlayerOne    = new Human();
            Spider spider  = new Spider(new RectangleF(200, 400, 80, 80));
            Spider spider1 = new Spider(new RectangleF(800, 400, 80, 80));
            Spider spider2 = new Spider(new RectangleF(600, 400, 80, 80));
            Spider spider3 = new Spider(new RectangleF(1000, 400, 80, 80));

            StaticDisplay.AddResizeListener(Resize);
            StaticMouse.AddMouseDownListener(MouseDown);
            StaticKeyboard.AddKeyDownListener(KeyDown);
        }
Ejemplo n.º 16
0
        public void TournamentFinished()
        {
            if (Application.Current == null)
            {
                return;
            }

            StaticMouse.Enable(false);

            List <LobbyPlayerData> data = CreateLobbyPlayerData();

            RequestStop();

            Application.Current.Dispatcher.BeginInvoke(new Action(() =>
            {
                App.Instance.CreateScoreboardGui(data);
            }));
        }
Ejemplo n.º 17
0
        void IGameInstance.Start(GameMode mode)
        {
            Auto._globalStepFactor = (double)Config.gameTickBase / Config.gameTicksPS;

            Auto.objects = new ObjBox[Config.maxObjs];

            Auto.player1 = new Point(0, 0);
            for (int i = 0; i < Auto.objects.Length; i++)
            {
                Auto.objects[i] = new ObjBox(Config.rand.Next(-500, 500), Config.rand.Next(-500, 500));
            }


            StaticKeyboard.AddKeyUpListener(Events.KeyUp);
            StaticKeyboard.AddKeyDownListener(Events.KeyDown);
            StaticMouse.AddMouseDownListener(Events.MouseClick);
            StaticMouse.AddMouseWheelListener(Events.MouseWheel);
        }
Ejemplo n.º 18
0
        private void settings_MouseDown(object sender, MouseButtonEventArgs e)
        {
            UIElement esc = LogicalTreeHelper.FindLogicalNode(App.WindowInstance.mainGrid, "escMenu") as UIElement;

            if (esc != null)
            {
                App.WindowInstance.ClearMenus();
                if (App.WindowInstance.GameRunning)
                {
                    StaticMouse.Enable(true);
                }
            }
            else
            {
                App.WindowInstance.AddMenu(new EscMenu());
                if (App.WindowInstance.GameRunning)
                {
                    StaticMouse.Enable(false);
                }
            }
        }
Ejemplo n.º 19
0
 public void GameEnded()
 {
     ShutdownServerIfExists();
     StaticMouse.Enable(false);
     ShowStartScreen();
 }
Ejemplo n.º 20
0
 public void OnCanvasMouseMove(Point point)
 {
     point = (StaticMouse.Instance != null && StaticMouse.ALLOWED) ? StaticMouse.GetPosition() : point;
     moveListeners.ForEach(l => l.OnMouseMove(point));
 }
Ejemplo n.º 21
0
        private void OnKeyDown(object sender, KeyEventArgs e)
        {
            switch (e.Key)
            {
            case Key.Escape:
                UIElement uc;
                if ((uc = LogicalTreeHelper.FindLogicalNode(menuGrid, "botSelection") as UIElement) != null)
                {
                    ClearMenus();
                    if (GameRunning)
                    {
                        StaticMouse.Enable(true);
                    }
                }
                else if ((uc = LogicalTreeHelper.FindLogicalNode(menuGrid, "colorPicker") as UIElement) != null)
                {
                    AddMenu(new PlayerSettings());
                }
                else if ((uc = LogicalTreeHelper.FindLogicalNode(menuGrid, "mouseMenu") as UIElement) != null)
                {
                    ShowOptionsMenu();
                }
                else if ((uc = LogicalTreeHelper.FindLogicalNode(menuGrid, "soundMenu") as UIElement) != null)
                {
                    ShowOptionsMenu();
                }
                else if ((uc = LogicalTreeHelper.FindLogicalNode(menuGrid, "playerSettings") as UIElement) != null)
                {
                    ShowOptionsMenu();
                }
                else if ((uc = LogicalTreeHelper.FindLogicalNode(menuGrid, "keyBindingsMenu") as UIElement) != null)
                {
                    ShowOptionsMenu();
                }
                else if ((uc = LogicalTreeHelper.FindLogicalNode(menuGrid, "optionsUC") as UIElement) != null)
                {
                    AddMenu(new EscMenu());
                    if (GameRunning)
                    {
                        StaticMouse.Enable(false);
                    }
                }
                else if ((uc = LogicalTreeHelper.FindLogicalNode(menuGrid, "escMenu") as UIElement) != null)
                {
                    ClearMenus();
                    if (GameRunning)
                    {
                        StaticMouse.Enable(true);
                    }
                }
                else if (menuGrid.Children.Count == 0)
                {
                    AddMenu(new EscMenu());
                    if (GameRunning)
                    {
                        StaticMouse.Enable(false);
                    }
                }
                else
                {
                    ClearMenus();
                }
                break;

            case Key.Tab:
                if (tabDown)
                {
                    return;
                }

                tabDown = true;
                GameOverviewUC go = LogicalTreeHelper.FindLogicalNode(menuGrid, "gameOverview") as GameOverviewUC;
                if (go != null)
                {
                    menuGrid.Children.Remove(go);
                }
                break;
            }

            App.Instance.OnKeyEvent(e);
        }
Ejemplo n.º 22
0
 public void InitStaticMouse()
 {
     StaticMouse.Init(this);
     StaticMouse.Enable(true);
     StateMgr.AddGameState(StaticMouse.Instance);
 }