我只是想在菜单中创建一个包含以下内容的简单启动画面;
“按”输入“开始”// “说明”
(显然当你在说明页面时,应该有一个“点击此处返回主菜单选项”
我正在制作的游戏是2D赛车游戏(我还没有实现时间安排(不知道如何))
我试图在我的代码中实现它; http://create.msdn.com/en-US/education/catalog/sample/game_state_management
但我半小时后放弃了(太复杂了)
欢迎任何帮助。谢谢!!!
答案 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示例的实现,这是一个更强大的解决方案。