我正在使用XNA框架中的游戏。 由于某些原因,我在代码中所做的更改并没有改变游戏。 我真的尝试了这段代码变得非常荒谬:
protected override void Update(GameTime gameTime)
{
if (false)
{
// Allows the game to exit
if (GamePad.GetState(PlayerIndex.One).Buttons.Back == ButtonState.Pressed)
this.Exit();
ProcessNetworkMessages();
if (!IsHost)
{
KeyboardState newState = Keyboard.GetState();
localPlayer.Update(gameTime, oldState, newState, board);
}
base.Update(gameTime);
}
}
并且游戏仍然照常运行。
答案 0 :(得分:0)
我很惊讶没有人知道明显的错误......
如果答案为真,则运行if语句,如果答案为false,则会跳过。因此,如果你输入false,很明显它不会运行你的代码。如果将其更改为true,它将始终运行您的代码,无论如何。将true或false直接放入if语句就像是注释掉代码行。
protected override void Update(GameTime gameTime)
{
if (false) //<--- The answer is false, let's not run this code block!
{
// Allows the game to exit
if (GamePad.GetState(PlayerIndex.One).Buttons.Back == ButtonState.Pressed)
this.Exit();
ProcessNetworkMessages();
if (!IsHost)
{
KeyboardState newState = Keyboard.GetState();
localPlayer.Update(gameTime, oldState, newState, board);
}
base.Update(gameTime);
} // Start running code from here -->
}
基本上你没有更新任何东西,这段代码没有运行。在if语句中尝试换行以查看它是否运行。