示例#1
0
 /// <summary>
 /// Fired when a key is up on the main window
 /// </summary>
 /// <param name="sender"></param>
 /// <param name="e"></param>
 private void CoreWindow_KeyUp(Windows.UI.Core.CoreWindow sender, Windows.UI.Core.KeyEventArgs e)
 {
     if (e.VirtualKey == Windows.System.VirtualKey.Control)
     {
         m_isControlKeyDown = false;
     }
 }
示例#2
0
        private void CoreWindow_KeyUp(Windows.UI.Core.CoreWindow sender, Windows.UI.Core.KeyEventArgs args)
        {
            switch (args.VirtualKey)
            {
            case VirtualKey.Up:
                UpPressed = false;
                break;

            case VirtualKey.Down:
                DownPressed = false;
                break;

            case VirtualKey.Left:
                LeftPressed = false;
                break;

            case VirtualKey.Right:
                RightPressed = false;
                break;

            case VirtualKey.Z:
                ZPressed = false;
                break;
            }
        }
示例#3
0
        // For 2nd player control
        private void Dark_KeyPressed(Sprite me, Windows.UI.Core.KeyEventArgs what)
        {
            me.PointTowards(Player.Position);
            Player.PointTowards(me.Position);

            var leftmax  = me.GetVariable <double>("leftmax");
            var rightmax = me.GetVariable <double>("rightmax");

            if (what.VirtualKey == Windows.System.VirtualKey.Z)
            {
                me.ChangeXby(-80);
                if (me.Position.X < leftmax)
                {
                    me.SetX(leftmax);
                }
            }
            if (what.VirtualKey == Windows.System.VirtualKey.C)
            {
                me.ChangeXby(80);
                if (me.Position.X > rightmax)
                {
                    me.SetX(rightmax);
                }
            }
            if (what.VirtualKey == Windows.System.VirtualKey.X)
            {
                Broadcast("fire");
            }
        }
示例#4
0
 private void HandleKeyDown(Windows.UI.Core.CoreWindow sender, Windows.UI.Core.KeyEventArgs args)
 {
     if (args.VirtualKey == Windows.System.VirtualKey.Right)
     {
         driver.TurnRight();
     }
     else if (args.VirtualKey == Windows.System.VirtualKey.Left)
     {
         driver.TurnLeft();
     }
     else if (args.VirtualKey == Windows.System.VirtualKey.Up)
     {
         driver.MoveForward();
     }
     else if (args.VirtualKey == Windows.System.VirtualKey.Down)
     {
         driver.MoveBackward();
     }
     if (args.VirtualKey == Windows.System.VirtualKey.Escape)
     {
         driver.Stop();
     }
     if (args.VirtualKey == Windows.System.VirtualKey.A)
     {
         driver.RotateRight();
     }
     if (args.VirtualKey == Windows.System.VirtualKey.Z)
     {
         driver.RotateLeft();
     }
 }
示例#5
0
 private void CoreWindow_KeyDown(Windows.UI.Core.CoreWindow sender, Windows.UI.Core.KeyEventArgs e)
 {
     if (e.VirtualKey == Windows.System.VirtualKey.Escape)
     {
         if (PauseMenu.Visibility == Visibility.Collapsed)
         {
             PauseMenu.Visibility = Visibility.Visible;
         }
         else
         {
             PauseMenu.Visibility = Visibility.Collapsed;
         }
     }
     if (e.VirtualKey == Windows.System.VirtualKey.Tab)
     {
         if (TabMenu.Visibility == Visibility.Collapsed)
         {
             TabMenu.Visibility = Visibility.Visible;
         }
         else
         {
             TabMenu.Visibility = Visibility.Collapsed;
         }
     }
 }
        private void CoreWindow_KeyDown(Windows.UI.Core.CoreWindow sender, Windows.UI.Core.KeyEventArgs args)
        {
            if (IsAnotherPage)
            {
                return;
            }

            switch (args.VirtualKey) //Detecta qual direção o personagem irá ir
            {
            case Windows.System.VirtualKey.Up:
                Up     = true;
                YSpeed = -Player.Speed;
                break;

            case Windows.System.VirtualKey.Down:
                Down   = true;
                YSpeed = Player.Speed;
                break;

            case Windows.System.VirtualKey.Left:
                Left   = true;
                XSpeed = -Player.Speed;
                break;

            case Windows.System.VirtualKey.Right:
                Right  = true;
                XSpeed = Player.Speed;
                break;
            }
        }
 private void CoreWindow_KeyDown(Windows.UI.Core.CoreWindow sender, Windows.UI.Core.KeyEventArgs args)
 {
     if (args.VirtualKey == Windows.System.VirtualKey.Delete && al.SelectedAnnotation != null)
     {
         al.Annotations.Remove(al.SelectedAnnotation);
     }
 }
 private void CoreWindow_KeyDown(Windows.UI.Core.CoreWindow sender, Windows.UI.Core.KeyEventArgs args)
 {
     if (MasterViewModel.Settings.GazePlusClickMode)
     {
         gazePointer.Click();
     }
 }
示例#9
0
 public static void SendKeyPressed(Windows.UI.Core.KeyEventArgs keys)
 {
     foreach (var sprite in All)
     {
         sprite.KeyPressed?.Invoke(sprite, keys);
     }
 }
示例#10
0
        void CoreWindow_KeyDown(Windows.UI.Core.CoreWindow sender, Windows.UI.Core.KeyEventArgs e)
        {
            var heroCellObject = Game.Instance.PlayableCharacter;


            KeyboardInputHandler.HandleInput(e.VirtualKey, heroCellObject);
        }
示例#11
0
        private async void TrackGameMulti_KeyUp(Windows.UI.Core.CoreWindow sender, Windows.UI.Core.KeyEventArgs e)
        {
            Window.Current.CoreWindow.KeyUp -= TrackGameMulti_KeyUp;
            foreach (Player player in parameter.players)
            {
                if (e.VirtualKey == player.key.Key && playerError.Contains(player) == false)
                {
                    textTry.IsEnabled = true;
                    textTry.Focus(FocusState.Keyboard);
                    playerGuesser.Visibility = Visibility.Visible;
                    playerGuess      = player;
                    textGuesser.Text = player.name + " to guess";
                    if (playerError.Count > 0)
                    {
                        string allPlayerError = "";
                        foreach (Player playerError in playerError)
                        {
                            allPlayerError += playerError.name + " ";
                        }
                        textErrorPlayer.Visibility = Visibility.Visible;
                        textErrorPlayer.Text       = allPlayerError + "can't play yet";
                    }
                    await Task.Delay(2000);

                    playerGuesser.Visibility = Visibility.Collapsed;
                    break;
                }
            }
            if (playerGuess == null)
            {
                Window.Current.CoreWindow.KeyUp += TrackGameMulti_KeyUp;
            }
        }
示例#12
0
        /// <summary>
        /// register for key up events
        /// </summary>
        /// <param name="sender">event sender</param>
        /// <param name="args">event parameters</param>
        private void CoreWindow_KeyUp(Windows.UI.Core.CoreWindow sender, Windows.UI.Core.KeyEventArgs args)
        {
            switch (args.VirtualKey)
            {
            case Windows.System.VirtualKey.N:
                this.SwitchCameraView(Direction.Back);
                break;

            case Windows.System.VirtualKey.M:
                this.SwitchCameraView(Direction.Forward);
                break;

            case Windows.System.VirtualKey.Right:
                this.SwitchTechView(Direction.Forward);
                break;

            case Windows.System.VirtualKey.Left:
                this.SwitchTechView(Direction.Back);
                break;

            case Windows.System.VirtualKey.Enter:
                this.SwitchToTechFullscreen();
                break;

            case Windows.System.VirtualKey.Space:
                this.SwitchToCameraFullscreen();
                break;

            default:
                break;
            }
        }
示例#13
0
 //Sends user back to title screen when ESC is pressed.
 private void CoreWindow_KeyDown(Windows.UI.Core.CoreWindow sender, Windows.UI.Core.KeyEventArgs args)
 {
     if (args.VirtualKey == Windows.System.VirtualKey.Escape)
     {
         this.Frame.Navigate(typeof(MainPage), String.Format("{0},{1},{2},{3}", 255, (int)redSlider.Value, (int)greenSlider.Value, (int)blueSlider.Value));
     }
 }
示例#14
0
        public void PlayerMove(Windows.UI.Core.KeyEventArgs e)
        {
            switch (e.VirtualKey)
            {
            case Windows.System.VirtualKey.Right:
                if (IsUnitCanMove(GetPlayerX(), GetPlayerY(), 0, 1))
                {
                    PlayerMoveOne(0, 1);
                }
                break;

            case Windows.System.VirtualKey.Left:
                if (IsUnitCanMove(GetPlayerX(), GetPlayerY(), 0, -1))
                {
                    PlayerMoveOne(0, -1);
                }
                break;

            case Windows.System.VirtualKey.Up:
                if (IsUnitCanMove(GetPlayerX(), GetPlayerY(), -1, 0))
                {
                    PlayerMoveOne(-1, 0);
                }
                break;

            case Windows.System.VirtualKey.Down:
                if (IsUnitCanMove(GetPlayerX(), GetPlayerY(), 1, 0))
                {
                    PlayerMoveOne(1, 0);
                }
                break;
            }
        }
 private void CoreWindow_KeyDown(Windows.UI.Core.CoreWindow sender, Windows.UI.Core.KeyEventArgs args)
 {
     if (counterPress == 21) // after that we unblock agai
     {
         counterPress = 0;
     }
     if (args.VirtualKey == VirtualKey.Left) // if its left it moves left
     {
         player.Move("Left");
     }
     if (args.VirtualKey == VirtualKey.Right) // if its right we move right
     {
         player.Move("Right");
     }
     if (args.VirtualKey == VirtualKey.Space) // if he presses space it creates a new bullet for the player
     {
         ////cooldown
         if (counterPress >= 9 && counterPress <= 20) // if he got to the 10 - we check it before the keys to block key pressing
         {
             counterPress++;                          //  we keep uploading and block him 10 times from checking the other keys so he blocks the keys from pressing
             return;
         }
         else // if he is not on cooldown
         {
             //first place the bullet on the canvas places in the middle of the ship
             bullet = new Bullet(player.getPlayerLocation()[0] + (player.GetWidth() / 2), player.getPlayerLocation()[1], canvas, data_of_player.player_Bullet, data_of_player.player_SpaceShip_Level);
             bullet_Control.Add(bullet); // add to the control list the current bullet
             counterPress++;             // each press we count how much time it was pressed
         }
     }
 }
示例#16
0
        private void CoreWindowKeyDown(Windows.UI.Core.CoreWindow sender,
                                       Windows.UI.Core.KeyEventArgs args)
        {
            Window.Current.CoreWindow.GetKeyState(args.VirtualKey);

            _msrService.ReadKey(args.VirtualKey, args.KeyStatus);
        }
示例#17
0
        private void CoreWindow_KeyDown(Windows.UI.Core.CoreWindow sender,
                                        Windows.UI.Core.KeyEventArgs args)
        {
            if (_isRunning == false)
            {
                return;
            }

            if ((args.VirtualKey == Windows.System.VirtualKey.Up) ||
                (args.VirtualKey == VirtualKey.GamepadLeftThumbstickUp))
            {
                movePiece.SetValue(Canvas.TopProperty,
                                   (double)movePiece.GetValue(Canvas.TopProperty) - 1);
            }
            else if (args.VirtualKey == Windows.System.VirtualKey.Down)
            {
                movePiece.SetValue(Canvas.TopProperty,
                                   (double)movePiece.GetValue(Canvas.TopProperty) + 1);
            }
            else if (args.VirtualKey == Windows.System.VirtualKey.Left)
            {
                movePiece.SetValue(Canvas.LeftProperty,
                                   (double)movePiece.GetValue(Canvas.LeftProperty) - 1);
            }
            else if (args.VirtualKey == Windows.System.VirtualKey.Right)
            {
                movePiece.SetValue(Canvas.LeftProperty,
                                   (double)movePiece.GetValue(Canvas.LeftProperty) + 1);
            }
        }
示例#18
0
        private void CoreWindow_KeyDown(Windows.UI.Core.CoreWindow sender, Windows.UI.Core.KeyEventArgs args)
        {
            if (gameOver)
            {
                return;
            }

            if (rowClearingAnimation.IsAnimating())
            {
                return;
            }

            if (args.VirtualKey == Windows.System.VirtualKey.Down)
            {
                bool forcedDrop = true;
                var  dropResult = grid.DropPiece(forcedDrop);

                if (dropResult == Grid.DropPieceResult.None || dropResult == Grid.DropPieceResult.PieceLanded)
                {
                    forcingDrop = true;
                    SetCameraTargetXY();
                    SetCameraTargetRotation();
                }
                else if (dropResult == Grid.DropPieceResult.GameOver)
                {
                    gameOver = true;
                }
                else
                {
                    Debug.Assert(dropResult == Grid.DropPieceResult.RowsCleared);
                    rowClearingAnimation.Start();
                }
            }
        }
        private void CoreWindow_KeyUp(Windows.UI.Core.CoreWindow sender, Windows.UI.Core.KeyEventArgs args)
        {
            //Método para checar quando a tecla é levantada, e cancelar a animação que acontecia
            switch (args.VirtualKey)
            {
            case Windows.System.VirtualKey.Up:
                Person1.Source = Player.IdleUp;
                Up             = false;
                YSpeed         = 0;
                break;

            case Windows.System.VirtualKey.Down:
                Person1.Source = Player.IdleDown;
                Down           = false;
                YSpeed         = 0;
                break;

            case Windows.System.VirtualKey.Left:
                Person1.Source = Player.IdleLeft;
                Left           = false;
                XSpeed         = 0;
                break;

            case Windows.System.VirtualKey.Right:
                Person1.Source = Player.IdleRight;
                Right          = false;
                XSpeed         = 0;
                break;
            }
        }
示例#20
0
        private void CoreWindow_KeyDown(Windows.UI.Core.CoreWindow sender, Windows.UI.Core.KeyEventArgs args)
        {
            if (state == Game_state.Over)
            {
                SetMenu();
            }
            else
            {
                switch (args.VirtualKey)
                {
                case Windows.System.VirtualKey.Left:
                    world.GravityX = -Options.ACCg;
                    world.GravityY = 0;
                    break;

                case Windows.System.VirtualKey.Right:
                    world.GravityX = +Options.ACCg;
                    world.GravityY = 0;
                    break;

                case Windows.System.VirtualKey.Up:
                    world.GravityX = 0;
                    world.GravityY = -Options.ACCg;
                    MoveInMenu();
                    break;

                case Windows.System.VirtualKey.Down:
                    world.GravityX = 0;
                    world.GravityY = +Options.ACCg;
                    MoveInMenu();
                    break;

                case Windows.System.VirtualKey.Back:
                case Windows.System.VirtualKey.Escape:
                    if (state == Game_state.Game)
                    {
                        SetGameOver();
                    }
                    else if (state == Game_state.Menu)
                    {
                        Application.Current.Exit();
                    }
                    break;

                case Windows.System.VirtualKey.Enter:
                    if (selected == play)
                    {
                        Play_Click(null, null);
                    }
                    else if (selected == quit)
                    {
                        Quit_Click(null, null);
                    }
                    break;

                default:
                    break;
                }
            }
        }
 void CoreWindow_KeyUp(Windows.UI.Core.CoreWindow sender, Windows.UI.Core.KeyEventArgs args)
 {
     if (args.VirtualKey == VirtualKey.A)
     {
         App.StopNoise();
     }
 }
        private void CoreWindow_KeyDown(Windows.UI.Core.CoreWindow sender, Windows.UI.Core.KeyEventArgs args)
        {
            switch (args.VirtualKey)
            {
            case VirtualKey.Left:
                JoyPads["LEFT"].IsDown = true;
                break;

            case VirtualKey.Right:
                JoyPads["RIGHT"].IsDown = true;
                break;

            case VirtualKey.Up:
                JoyPads["UP"].IsDown = true;
                break;

            case VirtualKey.Down:
                JoyPads["DOWN"].IsDown = true;
                break;

            case VirtualKey.Space:
                JoyPads["FIRE"].IsDown = true;
                break;
            }
        }
示例#23
0
 private async void CoreWindow_KeyDown(Windows.UI.Core.CoreWindow sender, Windows.UI.Core.KeyEventArgs e)
 {
     if (_files.Count == 0)
     {
         Debug.WriteLine("No more files to show!");
         return;
     }
     switch (e.VirtualKey)
     {
         case Windows.System.VirtualKey.Number1:
             await MoveTo(_folderOne);
             break;
         case Windows.System.VirtualKey.Number2:
             await MoveTo(_folderTwo);
             break;
         case Windows.System.VirtualKey.Number3:
             await MoveTo(_folderThree);
             break;
         case Windows.System.VirtualKey.Number4:
             await MoveTo(_folderFour);
             break;
         default:
             return;
     }
     AdvanceFile();
 }
示例#24
0
        //buttons down
        private void CoreWindow_KeyDown(Windows.UI.Core.CoreWindow sender, Windows.UI.Core.KeyEventArgs args)
        {
            switch (args.VirtualKey)
            {
            case VirtualKey.Left:               //move left
                player.MoveLeft();
                break;

            case VirtualKey.Right:              //move right
                player.MoveRight();
                break;

            case VirtualKey.Space:              //space to shoot
                SpacePressed = false;
                Bullet bullet = new Bullet()
                {
                    LocationX = player.LocationX + 30,
                    LocationY = player.LocationY + 5,
                };
                //add bullet to canvas
                MyCanvas.Children.Add(bullet);

                //set bullet location
                bullet.SetLocation();

                //add to list
                bullets.Add(bullet);

                //play pew audio
                mediaElement.Play();
                break;
            }
        }
示例#25
0
 //Navigates back to title screen when ESC is pressed. Also passes colorString for the Pacman color
 //back to title screen.
 private void CoreWindow_KeyDown(Windows.UI.Core.CoreWindow sender, Windows.UI.Core.KeyEventArgs args)
 {
     if (args.VirtualKey == Windows.System.VirtualKey.Escape)
     {
         this.Frame.Navigate(typeof(MainPage), colorString);
     }
 }
示例#26
0
 private void CoreWindow_KeyDown(Windows.UI.Core.CoreWindow sender, Windows.UI.Core.KeyEventArgs args)
 {
     switch (args.KeyStatus.ScanCode)
     {
     case 14: this.Frame.Navigate(typeof(MainPage), null); break;
     }
 }
示例#27
0
        private void CoreWindow_KeyDown(Windows.UI.Core.CoreWindow sender, Windows.UI.Core.KeyEventArgs args)
        {
            switch (args.VirtualKey)
            {
            case VirtualKey.Up:
                UpPressed = true;
                break;

            case VirtualKey.Down:
                DownPressed = true;
                break;

            case VirtualKey.Left:
                LeftPressed = true;
                break;

            case VirtualKey.Right:
                RightPressed = true;
                break;

            case VirtualKey.Z:
                // ProjectileActive = true;
                ZPressed = true;
                break;
            }
        }
示例#28
0
        /// <summary>
        /// Gamepad shortcuts for navigation. The X button refreshes the page, and Y goes to the search page.
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="args"></param>
        private void CoreWindow_KeyUp(Windows.UI.Core.CoreWindow sender, Windows.UI.Core.KeyEventArgs args)
        {
            if (args != null)
            {
                try
                {
                    switch (args.VirtualKey)
                    {
                    case Windows.System.VirtualKey.GamepadX:
                        if ((_context != null) && (_context.RefreshCommand != null))
                        {
                            _context.RefreshCommand.Execute(null);
                        }
                        args.Handled = true;
                        break;

                    case Windows.System.VirtualKey.GamepadY:
                        if ((_context != null) && (_context.NavigateSearchPageCommand != null))
                        {
                            _context.NavigateSearchPageCommand.Execute(null);
                        }
                        args.Handled = true;
                        break;

                    default:
                        break;
                    }
                }
                catch (Exception e)
                {
                    Serilog.Log.Error("Exception thrown trying to use gamepad shortcut", e);
                }
            }
        }
示例#29
0
 private void CoreWindowKeyDown(Windows.UI.Core.CoreWindow sender, Windows.UI.Core.KeyEventArgs args)
 {
     if (VM.IsInSokoban)
     {
         VM.SokobanBL.PlayerMove(args);
     }
 }
示例#30
0
        private void CoreWindow_KeyDown(Windows.UI.Core.CoreWindow sender, Windows.UI.Core.KeyEventArgs args)
        {
            switch (args.VirtualKey)
            {
            case Windows.System.VirtualKey.Left:
                Canvas.SetLeft(placement.ellList[0], Math.Max(0, placement.GetX(0) - 10));
                placement.SetX(Math.Max(0, placement.GetX(0) - 10), 0);
                placement.SetY(placement.GetY(0), 0);
                break;

            case Windows.System.VirtualKey.Up:
                Canvas.SetTop(placement.ellList[0], Math.Max(0, placement.GetY(0) - 10));
                placement.SetY(Math.Max(0, placement.GetY(0) - 10), 0);
                placement.SetX(placement.GetX(0), 0);
                break;

            case Windows.System.VirtualKey.Right:
                Canvas.SetLeft(placement.ellList[0], Math.Min(cnv.Width - placement.GetSize(0), placement.GetX(0) + 10));
                placement.SetX((int)Math.Min(cnv.Width - placement.GetSize(0), placement.GetX(0) + 10), 0);
                placement.SetY(placement.GetY(0), 0);
                break;

            case Windows.System.VirtualKey.Down:
                Canvas.SetTop(placement.ellList[0], Math.Min(cnv.Height - placement.GetSize(0), placement.GetY(0) + 10));
                placement.SetY((int)Math.Min(cnv.Height - placement.GetSize(0), placement.GetY(0) + 10), 0);
                placement.SetX(placement.GetX(0), 0);
                break;

            default:
                break;
            }
        }