Как добавить стартовый (заставочный) экран в XNA 4.0? - PullRequest
3 голосов
/ 13 января 2012

Я просто хочу создать простой заставочный экран, содержащий в меню следующее:

"Нажмите" Enter ", чтобы начать" // "Инструкции"

(очевидно, когда вына странице с инструкциями должно быть «нажмите здесь, чтобы вернуться к пункту главного меню»

Игра, которую я создаю, является 2D-гоночной игрой (в ней я не установил время (не знаю, как))

Я пытался реализовать это в своем коде; http://create.msdn.com/en-US/education/catalog/sample/game_state_management

Но я сдался через полчаса (слишком сложно)

Любая помощь приветствуетсяСпасибо !!!

Ответы [ 2 ]

3 голосов
/ 26 марта 2012

Другой способ действий, который вы можете предпринять, - использовать enum для хранения различных состояний игры.

//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 голос
/ 13 января 2012

Вы на правильном пути с примером Microsoft Game State Management. По сути, вам нужно какое-то управление состоянием, чтобы контролировать, что показывает и когда.

Это может быть так же просто, как наличие флага enum, который изменяет игровые объекты (текстуры и т. Д.) В вашем основном методе Draw - "Нажмите Enter, чтобы запустить игру" XNA INTRO SCREEN

Посетите лабораторию Catapult Wars (http://msdn.microsoft.com/en-us/gg266460) для реализации примера GSM, который НАМНОГО более надежное решение.

...