Предыдущая Следующая
{
menuTexture = content.Load<Texture2D>("Content\\Textures\\menu"); cursorGame = content.Load<Texture2D>("Content\\Textures\\cursorGame"); cursorExit = content.Load<Texture2D>("Content\\Textures\\cursorExit");
}
//=========================================================================
/// <summary>
/// <summary> /// Рисуем меню
170 Создаем игровое меню
Проект Menu 171
/// <surrüTLary>
public void DrawMenu(SpriteBatch spriteBatch, int state) {
spriteBatch.Draw(menuTexture, menuPosition, Color.White);
switch(state)
{
case 1:
spriteBatch.Draw(cursorGame, cursorPositionGame, Color.White); spriteBatch.Draw(cursorExit, cursorPositionExit, Color.Yellow); break;
case 2:
spriteBatch.Draw(cursorGame, cursorPositionGame, Color.Yellow);
spriteBatch.Draw(cursorExit, cursorPositionExit, Color.White);
break;
}
}
cursorPositionGame cursorPositionExit
new Vector2(650, 400); new Vector2(700, 550);
Заметьте, что верхняя табличка с командой Игра изначально сдвинута влево по отношению к нижней табличке. Это говорит о том, что при входе в меню команда Игра будет активироваться первой. Впоследствии, естественно, мы добавим код для этой команды меню в классе Gamel, а также закрасим неактивную команду желтым цветом.
В методе Load() происходит загрузка всех трех графических изображений в игру, которые предварительно явно добавляются в каталог проекта в папку Content\Textures. И в самом конце исходного кода класса Menu создается метод DrawMenu() для вывода графики на экран монитора.
public void DrawMenu(SpriteBatch spriteBatch, int state) {
spriteBatch.Draw(menuTexture, menuPosition, Color.White);
switch(state)
С помощью класса Menu нам необходимо загрузить в игру общий фон меню, а также две дополнительные таблички, или доски, с командами Игра и Выход. Для этих целей необходимо определить ряд объектов и переменных. Поэтому в начале исходного файла Menu.cs в области глобальных переменных следует шесть строк кода.
// Фон меню и его позиция на экране public Texture2D menuTexture; public Vector2 menuPosition;
// Доска с командой Игра и ее позиция на экране
public Texture2D cursorGame;
public Vector2 cursorPositionGame;
// Доска с командой Выход и ее позиция на экране
public Texture2D cursorExit;
public Vector2 cursorPositionExit;
Затем в конструкторе класса Menu мы задаем позиции на экране как для фона, так и для табличек. Поскольку фон меню идет с размером в 1024 х 768 пикселей (в размер 17-дюймового экрана монитора), то в качестве точки отсчета для фона назначаются нулевые координаты по обеим осям системы. Предыдущая Следующая
|