Приставки
Nintendo (Dendy)
Nintendo 64
Sega Genesis
Sega CD / 32x
Master System
Super Nintendo
Turbo Grafx 16
Sega Saturn
Sony PlayStation
GameBoy Advance
GameBoy / Color
Game Gear
Atari
Другие

Утилиты
Системные утилиты
GoodXXXX
Sega CD / 32x
Nintendo 64
Переводы, хакинг
Музыка

Мир приставочных игр

Версия 2.00a

Leonis © 2002-2009
Команда Новости Помощь Ссылки
ПОМОЩЬ
Литература про игры
Предыдущая Следующая

//=========================================================================

#region Using Statements using System;

using System.Collections.Generic; using Microsoft.Xna.Framework; using Microsoft.Xna.Framework.Audio; using Microsoft.Xna.Framework.Content; using Microsoft.Xna.Framework.Graphics; using Microsoft.Xna.Framework.Input; using Microsoft.Xna.Framework.Storage; #endregion

namespace Menu

{

class HelpScreen

340 Последние штрихи

Создаем меню игры 341

{

public Texture2D screen; public Texture2D title; 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(2 0, x - 60); position[i].Y = rand.Next(100, y - 60);

}

for (int i = 0; ball.Length > i; {

ball[i] = new ModelClass();

}

Позиции для мячей заданы, что называется, с потолка, главным здесь было одно условие: не задавать слишком большие значения по двум осям X и Y, дабы мячики при вращении не вышли из области видимости экрана.

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>

public void DrawScreen(SpriteBatch spriteBatch, GraphicsDeviceManager graphics, int x, int y, GameTime gameTime)

{

graphics.GraphicsDevice.Clear(Color.DarkGreen); spriteBatch.Begin(SpriteBlendMode.AlphaBlend);


Предыдущая Следующая

Горяченькое

Друзья

Hosted by uCoz