Предыдущая Следующая
Что касается задания координаты по оси Y, то она, как вы заметили, отрицательна. Это позволяет рисовать спрайт в верхней части дисплея за пределами видимости экрана и затем перемещать спрайт вниз (рис. 8.2). Таким образом достигается эффект плавного появления, или выезда, спрайта из верхней части экрана и всего игрового пространства. Это красиво, эффектно, и если этого не делать и рисовать спрайт в положительных значениях оси Y, то объекты будут появляться резко и как бы ни с того ни с сего. Так делать нельзя, по крайней мере, в нашей игре точно. В других играх могут быть свои задачи, поэтому этот подход имеет право на жизнь.
После создания метода MoveSprite() необходимо поместить вызов этого метода в метод Update(GameTime gameTime) класса Gamel. Тогда на каждой итерации игрового цикла будет происходить вызов метода MoveSprite() и соответственно обновление состояния спрайта, а также обработка ситуации с выходом спрайта из зоны видимости. Исходный код проекта вы найдете на компакт-диске в папке Code\Chapter8\MoveSprite, а мы переходим к рассмотрению следующего проекта MoveSpriteArray.
8.2. Проект MoveSpriteArray
Задача этого проекта заключается в том, чтобы добавить в игру дополнительные объекты. Сделать это можно несколькими способами, но самый «продвинутый» и профессиональный способ сводится к организации простого массива данных. Поэтому в проекте MoveSpriteArray мы реорганизуем способ объявления и создания спрайта на создание массива данных, состоящего из пяти спрайтов. Для этого в исходном коде класса Gamel проекта MoveSpriteArray вместо одиночного объявления спрайта появляется объявление массива спрайтов.
Рис. 8.2. Назначение спрайту новой позиции в игровом пространстве
Sprite[] sprite = new Sprite[5];
Здесь мы объявляем массив данных, исчисляемый пятью спрайтами. Все эти пять спрайтов, а точнее каждый из спрайтов будет загружать в игру свое уникальное изображение и представлять тот или иной объект. Каждый спрайт использует анимационную последовательность для создания динамики в игре, посмотрите на рис. 8.3, где представлены пять изображений, загружаемых в игру.
Все изображения, загружаемые в игру, размещаются в рабочем каталоге проекта в папках Content\Textures. Не забывайте, что все пять рисунков необходимо явно добавить в проект посредством команд Add = Exiting Item, как мы это делали в предыдущих главах.
Далее в конструкторе класса Gamel происходит создание пяти объектов. Для этих целей используется обычный цикл for. Предыдущая Следующая
|