0

在我的 CS 课程中,我一直在开发一个非常简单的游戏作为项目的基础,但是在映射移动命令时,我一直无法让角色精灵向上移动以及交换纹理。每当我尝试向上移动时,角色都会向上移动一个空格并交换纹理,然后在我释放按钮时重置到之前的位置。我尝试了几种不同的方法,最终得到几乎相同的结果。任何建议将不胜感激。

public static void Update ()
    {
        // Query gamepad for current state
        var gamePadData = GamePad.GetData (0);
        pnut = pnutDefault;
        pnutDown.Position = pnut.Position;

        if ((gamePadData.Buttons & GamePadButtons.Left) != 0)
        {
            pnut.Position.X--;
        }

        if ((gamePadData.Buttons & GamePadButtons.Right) != 0)
        {
            pnut.Position.X++;
        }

        if ((gamePadData.Buttons & GamePadButtons.Down) != 0)
        {
            pnut.Position.Y++;
        }

            if ((gamePadData.Buttons & GamePadButtons.Up) != 0)
        {
            //pnutDown.Position = pnut.Position;

            pnutDown.Position.Y--;
            pnut.Position.Y--;

        }
    }
4

0 回答 0