如何在XNA 4.0中添加启动(启动)屏幕?

时间:2012-01-13 00:03:46

标签: xna-4.0

我只是想在菜单中创建一个包含以下内容的简单启动画面;

“按”输入“开始”//       “说明”

(显然当你在说明页面时,应该有一个“点击此处返回主菜单选项”

我正在制作的游戏是2D赛车游戏(我还没有实现时间安排(不知道如何))

我试图在我的代码中实现它; http://create.msdn.com/en-US/education/catalog/sample/game_state_management

但我半小时后放弃了(太复杂了)

欢迎任何帮助。谢谢!!!

2 个答案:

答案 0 :(得分:3)

您可以采取的另一种行动方式是使用枚举来存储不同的游戏状态。

//Don't forget to put this above the Game1 class!
public enum GameState
{
    Menu,
    Game, 
    Credits,
    Etc
}

初始化:

GameState gameState = new GameState();
gameState = GameState.Menu;

然后在你的绘画方法:

if(gameState == GameState.Menu)
{
// Draw your menu, do other stuff for other gamestates.
}

最后在更新中:

if(gameState == GameState.Menu)
{
// check if keyboard is pressed and continue if it is
}
else if(gameState == GameState.Game)
{
// Your main game update logic
}

希望这有帮助!

答案 1 :(得分:1)

您正在使用Microsoft Game State Management示例走上正轨。基本上,您需要某种状态管理来控制显示和何时显示。

这可能就像在主Draw方法中使用枚举标志更改游戏对象(纹理等)一样简单 - "Press Enter to start the game" XNA INTRO SCREEN

查看Catapult Wars实验室(http://msdn.microsoft.com/en-us/gg266460),了解GSM示例的实现,这是一个更强大的解决方案。