Приставки
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
Команда Новости Помощь Ссылки
ПОМОЩЬ
Литература про игры
Предыдущая Следующая

Во втором проекте MoveSpriteArray задача несколько усложнится, и в игру добавятся еще четыре дополнительных спрайта. В итоге в игре задействуются сразу пять различных объектов. Для всех пяти объектов будет организован механизм обработки ситуации выхода за пределы экрана в нижней части телевизора и установка на новые позиции. Теперь перейдем к новому проекту MoveSprite, который вы должны создать на базе последнего проекта предыдущей главы.

Проект MoveSprite 155

8.1. Проект MoveSprite

Прежде всего в новом сформированном проекте MoveSprite в классе Sprite необходимо добавить новую переменную speedSprite, которая будет задавать скорость движения спрайта в пикселях.

public Vector2 speedSprite = new Vector2(0, 6);

В этой строке кода мы задаем скорость по оси X равной нулю, а скорость по оси Y равной 6 пикселям. Это означает, что по оси X положение спрайта будет оставаться всегда неизменным, а вот по оси Y на каждой новой итерации или на одном проходе метода Update() класса Gamel текущее положение спрайта будет увеличиваться на 6 пикселей.

Теперь перейдем к исходному коду класса Gamel проекта MoveSprite. Посмотрим на весь исходный код этого класса в листинге 8.1, после чего приступим к его детальному анализу. Исходный код проекта MoveSprite находится на компакт-диске в папке Code\Chapter8\MoveSprite.

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

/// <summary>

/// Листинг 8.1

/// Исходный код к книге:

/// «Программирование игр для приставки Xbox 360 в XNA Game Studio Express» /// Автор книги: Горнаков С. Г. /// Глава 8

/// Проект: MoveSprite

/// Класс: Gamel

/// Движение спрайта по экрану

/// <summary>

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

#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 MoveSprite

{

public class Gamel : Microsoft.Xna.Framework.Game

{

GraphicsDeviceManager graphics; ContentManager content; SpriteBatch spriteBatch; Sprite sprite;

private Texture2D background;

156 Движение спрайтов в пространстве

int screenWidth, screenHeight; Random rand = new Random();

/// <summary> /// Конструктор /// <summary> public Game1() {


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

Горяченькое

Друзья

Hosted by uCoz