XNA Combo移动。

时间:2014-03-11 00:58:19

标签: xna xna-4.0

我正在为我的游戏动作制作教程部分。

每次移动都需要按一个或多个键盘键 按下移动后,屏幕上将显示下一个要按下的移动。

如何根据最后一个是否正确输入来创建这些预定义列表并循环显示这些列表? (我有一些很长的序列......我应该用XML编写它们吗?这是一个基于组合序列的游戏。如何为它创建某种类型的系统?

非常感谢您对优秀教程的任何建议或建议!

谢谢!

1 个答案:

答案 0 :(得分:0)

无法创建Keys个对象数组:

Keys[] TutorialMove = new Keys[6];    // <- 7 Key Stroke Combo for move

然后填充它或:

Keys[] TutorialMove = {
    Keys.Left,
    Keys.Up,
    Keys.Space
    }
// A three combo move in that order.

然后你可以用:

来调用它
short Strokes = 0;
short MoveLen = TutorialMove.Length();
public override void Update(GameTime gameTime)
{
// Hopefully you already created this variable in Initialize()
currentKeyboardState = Keyboard.GetState();

if (currentKeyboardState.IsKeyDown(TutorialMove[Strokes]))
    {
    Strokes += 1;
    if (Strokes == MoveLen)
        {
        // End Tutorial (or change move sequence)
        }
    }
}

这应该做你想要的。这样,您可以轻松地将组合定义为第二个建议格式的列表。或者在文本文件中写入按键,并创建一个方法来读取它们并将其分配给您的数组。

希望这有帮助,莫娜。