Предыдущая Следующая
namespace Menu {
class HelpScreen
{
public Texture2D screen; public Texture2D title;
Название текстуры для клавиши было оставлено прежним - esc. Нет смысла изменять одно название во всех классах игры. Если вы создаете игру одновре-
Заставки Помощь, Об игре и Книги 345
менно для ПК и консоли, то можно придумать универсальные названия командам, текстурам, но это особого значения не имеет, поскольку предназначено, так сказать, для внутреннего пользования. Игрок всего этого не видит, и ему абсолютно все равно, как вы в программном коде обозвали ту или иную команду, важно, чтобы вы могли вспомнить через полгода-год, для чего эта команда предназначалась.
public Texture2D esc;
public Texture2D[] hole = new Texture2D[30]; public Vector2[] position = new Vector2[30]; Random rand = new Random();
private ModelClass[] ball = new ModelClass[3];
static float aspectRatio;
static float FOV = MathHelper.PiOver4;
static float nearClip = 1.0f;
static float farClip = 1000.0f;
float angle;
Matrix view;
Matrix proj;
Matrix world;
Matrix rotationMatrixY;
Matrix rotationMatrixZ;
/// <summary>
/// Загрузка компонентов заставки /// <summary>
public void InitializeHelpScreen(ContentManager content, int x, int y) {
screen = content.Load<Texture2D>(«Content\\Textures\\help»); title = content.Load<Texture2D>(«Content\\Textures\\title»); esc = content.Load<Texture2D>(«Content\\Textures\\esc»); for (int i = 0; hole.Length > i;
{
hole[i] = content.Load<Texture2D>(«Content\\Textures\\hole»);
}
for (int i = 0; position.Length > i;
{
position[i].X = rand.Next(20, x - 60); position[i].Y = rand.Next(100, y - 60);
}
for (int i = 0; ball.Length > i; {
ball[i] = new ModelClass();
}
Позиции для мячей заданы, что называется, с потолка, главным было здесь одно условие: не задавать слишком большие значения по двум осям X и Y, дабы мячики при вращении не вышли из области видимости экрана.
346 Последние штрихи
ball[0].Load(content, «Content\\Models\\Soccerball»); ball[0].position = new Vector3(-30, 40, -30); ball[1].Load(content, «Content\\Models\\SoccerballGreen»); ball[1].position = new Vector3(50, 30, -50); ball[2].Load(content, «Content\\Models\\SoccerballRed»); ball[2].position = new Vector3(-50, -30, 40); aspectRatio = (float)x / (float)y;
}
/// <summary>
/// Рисуем заставку
/// <summary> Предыдущая Следующая
|