コード例 #1
0
 private void SetupCursorKeyInput()
 {
     BrokerToScene(ConsoleKey.UpArrow, () => { SceneHelpers.MoveThingSafeBy(PreviewScene, Cursor, 0, -ScenePanel.PixelSize.H); });
     BrokerToScene(ConsoleKey.DownArrow, () => { SceneHelpers.MoveThingSafeBy(PreviewScene, Cursor, 0, ScenePanel.PixelSize.H); });
     BrokerToScene(ConsoleKey.LeftArrow, () => { SceneHelpers.MoveThingSafeBy(PreviewScene, Cursor, -ScenePanel.PixelSize.W, 0); });
     BrokerToScene(ConsoleKey.RightArrow, () => { SceneHelpers.MoveThingSafeBy(PreviewScene, Cursor, ScenePanel.PixelSize.W, 0); });
 }
コード例 #2
0
        public void MoveRight()
        {
            if (FreeAimCursor != null)
            {
                SceneHelpers.MoveThingSafeBy(Scene, FreeAimCursor, 1, 0);
                return;
            }

            if (Speed.SpeedX > Math.Abs(Speed.SpeedY))
            {
                Speed.SpeedX = 0;
                Speed.SpeedY = 0;
                this.RoundToNearestPixel();
            }
            else
            {
                Speed.SpeedX = 12;
                Speed.SpeedY = 0;
                this.RoundToNearestPixel();
            }
        }
コード例 #3
0
        public void MoveUp()
        {
            if (FreeAimCursor != null)
            {
                SceneHelpers.MoveThingSafeBy(Scene, FreeAimCursor, 0, -1);
                return;
            }

            if (Speed.SpeedY < 0 && Math.Abs(Speed.SpeedY) > Math.Abs(Speed.SpeedX))
            {
                Speed.SpeedY = 0;
                Speed.SpeedX = 0;
                this.RoundToNearestPixel();
            }
            else
            {
                Speed.SpeedY = -7;
                Speed.SpeedX = 0;
                this.RoundToNearestPixel();
            }
        }