Предыдущая Следующая
using Microsoft.Xna.Framework.Content;
using Microsoft.Xna.Framework.Graphics;
#endregion
namespace Menu {
class Menu
{
public Texture2D menuTexture; public Vector2 menuPosition;
public Texture2D cursorGame; public Vector2 cursorPositionGame;
public Texture2D cursorExit; public Vector2 cursorPositionExit;
/// <summary> /// Конструктор /// <summary> public Menu()
{
menuPosition = new Vector2(0, 0); cursorPositionGame = new Vector2(850, 380); cursorPositionExit = new Vector2(900, 500);
}
/// <summary>
/// Загрузка спрайтов
/// <summary>
public void Load(ContentManager content)
{
menuTexture = content.Load<Texture2D>(«Content\\Textures\\menu»); cursorGame = content.Load<Texture2D>(«Content\\Textures\\cursorGame»); cursorExit = content.Load<Texture2D>(«Content\\Textures\\cursorExit»);
}
/// <summary> /// Рисуем меню /// <summary>
public void DrawMenu(SpriteBatch spriteBatch, int state)
Проект Menu 219
{
spriteBatch.Draw(meriuTextuire, menuPosition, Color.White); switch(state)
{
case 1:
spriteBatch.Draw(cursorGame, cursorPositionGame, Color.Yellow); spriteBatch.Draw(cursorExit, cursorPositionExit, Color.White);
break; case 2:
spriteBatch.Draw(cursorGame, cursorPositionGame, Color.White); spriteBatch.Draw(cursorExit, cursorPositionExit, Color.Yellow);
break;
} }
С помощью класса Menu нам необходимо загрузить в игру общий фон меню, а также две дополнительные таблички, или доски, с командами Игра и Выход. Для этих целей нужно определить ряд объектов и переменных. Поэтому в начале исходного файла Menu.cs в области глобальных переменных следует шесть строк кода.
// Фон меню и его позиция на экране public Texture2D menuTexture; public Vector2 menuPosition;
// Доска с командой Игра и ее позиция на экране
public Texture2D cursorGame;
public Vector2 cursorPositionGame;
// Доска с командой Выход и ее позиция на экране
public Texture2D cursorExit;
public Vector2 cursorPositionExit;
Затем в конструкторе класса Menu мы задаем позиции на экране как для фона, так и для табличек. Поскольку фон меню идет с размером в 1280 х 720 пикселей (HD 720p), то в качестве точки отсчета для фона назначаются нулевые координаты по обеим осям системы.
menuPosition = new Vector2(0, 0);
Для дощечек с командами Игра и Выход позиции задаются в правой части экрана и чуть ближе к его нижней кромке. Эти значения были вычислены еще на этапе проектирования меню, но их всегда можно подкорректировать в исходном коде, если вам вдруг не понравилось их расположение. Предыдущая Следующая
|