Приветствую Вас, Гость
Главная » Статьи » Мои статьи

Урок 1
ЧТо же,приступим.Первым нашим обьектом будет турель(башня,пушка,кто как называет).Создаем обьект и подписываем его objTower.Наша цель сделать так,что бы она повырачивалась вслед за мышью.Для этого в событии Step у нашего обьекта прописуем код:

Code
image_angle=point_direction(x,y,mouse_x,mouse_y)

Проверяем.Башня поварачивает вслед за мышью.

Теперь создадим обьект ObjBul,который будет являться пулей для нашей башни. в событии Create у него прописуем:
Code

direction=point_direction(objTower.x,objTower.y,mouse_x,mouse_y)
speed=10

Таким образом мы задали начальные координаты для нашей пули,а также скорость.ТЕперь нужно сделать,Что бы наша пуля стреляла.для этого нам неробходимо в Событии Global Mouse Left button(или в любом другом событии с нажатием клавиш)у обьекта objTower прописать код:

Code
instance_create(x,y,objBul)

Но как вы можете заметить,Что при удержании левой кнопки мыши пули летят безперерывно.Исправим это.В событии Create у objTower пропишим строчку кода

Code
shoot=1

Тоесть,если shoot=1,то стрелять можно,в любои другом случае-нет.А в событии Global Mouse Left button пропишим такой код:

Code
if shoot=1
{instance_create(x,y,objBul)
shoot = 0
alarm[0]=20}

Рассмотрим его.Его можно перевести в принципе до словно.Этот код звучит как:

Если shoot=1(стрелять можно)
{создаем обьект
стрелять нельзя
будильник[0]=20 шагов}

А в Alarm'e[0] прописываем
Code
shoot = 1

Тоесть,таким образом мы создалм некую перезарядку,которая позваляет стрелять не меньше,чем через каждые 20 шагов.

ТЕперь противники.Создадим самых тупых ИИ,которые будут просто двигаться на вас.Пускай это будет так.Обьект назовем objEnemy.

В Creat'e пишем:

Code
direction=point_direction(x,y,objTower.x,objTower.y)

speed=5

ПОдобный код мы писали у нашей пули.

В Step'e:

Code
image_angle=direction

Что бы наш танк поварачивал в сторону нас.
ВНИМВНИЕ!Что бы это работало првильно необходимо,что бы лицевая сторона спрайта смотрела в право!Это же касается и нашей башни!

А в событии столкновения с башней и пулей пишем:

Code
instance_destroy()

Теперь создадим контроллер,который будет саздовать нам наших противников через определенное количиство шагов.

Назовем обьект contr.

В событии Create Пишем:
Code

instance_create(680,100,objEnemy)

alarm[0] = 30

Тоесть,мы задали действие создать обьект врага,с координатами 680,100(тоесть если размер вашего "полигона" 640 на 480,то противик будет создаваться за пределами экрана,и двигаться на вас.

В Alarm0 прописываем
Code

instance_create(680,200,objEnemy)

alarm[1] = 30

В Alarm1

Code
instance_create(680,300,objEnemy)

alarm[2] = 30

Alarm2
Code

instance_create(680,400,objEnemy)

alarm[3] = 30

И в Alarm3

Code
instance_create(680,500,objEnemy)

alarm[0] = 30

Заметте,что в последнем нашем действии мы заводим будильник 0,что будет производить все что мы написали снова и снова.
Теперь добавляем обьект contr в нашу комнату.Тоесть,таким образом у нас изначально в комнате два обьекта контроллер и башня,а все остальные создаются в ходе игры.Ну что же,основа готова.Теперь вам необходимо лишь пофантазировать,что бы из всего этого собрать полноценную игру.Удачи!

Скачать исходник и урок:

http://gcup.ru/go?http://depositfiles.com/files/rk07q0wfh
Категория: Мои статьи | Добавил: GubiteL (13.07.2011)
Просмотров: 679 | Рейтинг: 0.0/0
Всего комментариев: 0
Добавлять комментарии могут только зарегистрированные пользователи.
[ Регистрация | Вход ]