Четверг, 16.05.2024, 01:26

World My Games

Меню сайта
Каталог файлов
Game Maker [7]
Битва за Олейрент: Первая война [2]
Вселенная Олейрент [1]
Терминатор [3]
-=Конструктор=-
-=Игроделу=-
-=Разное=-
  • Игры
    • Action
    • RPG / РПГ
    • Квесты
    • Симуляторы
    • Adventure
    • MMORPG
    • Shooter
    • Аддоны
    • Аркады
    • Браузерные игры
    • Гонки
    • Квест
    • Симуляторы
    • Спортивные игры
  • Софт
Наш опрос
Какой ближе вам, жанр игр?
Всего ответов: 85
Статистика

Онлайн всего: 1
Гостей: 1
Пользователей: 0
Форма входа
Вселенная Олейрент
Первая война
  • Герои
    • Силы зла
    • Силы добра
  • Воины
    • Силы добра
    • Силы зла
  • Постройки
    • Сила добра
    • Силы зла
  • Скриншоты
  • Скачать
-=Терминатор=-
Block title
Block content
Главная » Статьи » Game Maker

Создаем стрелялку, первые шаги - часть № 1

1. Основы.


Game Maker - вещь, с помощью этой проги можно создать неплохую аркаду. У этого движка графику можно задать самому, т.е. как спрайты нарисуешь, такая и графика будет. У этого движка есть отличительные способности, о которых нельзя не упомянуть: 
  1) В общем, там для создания игрушки не нужно писать ни одной строчки (только если игра сложная, то там все-таки нужно, но для простых игр не надо). 
  2) Как уже говорил, какой спрайт нарисуешь - такова будет и графика (ну вообще графика зависит не только от спрайта, но и от разрешения). 
  3) Полностью интуитивный интерфейс. 
Мы будем создавать аркадную игру и на ее примере вы сможете создавать и другие интересные игры. 

2. Вот основные определения:

  1. Sprites - спайты - изображения, которыми мы будем оперировать. 
  2. Sounds - звуки, которые можно назначать. 
  3. Backgrounds - изображения, используемые как фон. 
  4. Paths - путь, линия вдоль которой движется объект. 
  5. Scripts - скрипты или сценарии работы программы. 
  6. Objects - объекты. 
  7. Rooms - комнаты, где будут происходить действия. 

№ 1 


Назначаем спрайты: 
Нажмем кнопку Add Sprite и назначим спрайт Fighter1 (находится в папке Space) назовем его "корабль1". Назначим Fighter2 нажмем Edit Sprite далее Transform \ Rotate 180 (Rotate: можно назначить направление спрайта, а щелкнув еще раз на изображение мы можем его изменить) назовем корабль2. Ну и dot (папка Pacman) назовем его выстрел и explode2 (Varius) назовем взрыв. 

№ 2 


Назначаем объект Add Object - спрайт "корабль1" и называем его корабль1. 
Назначаем объект Add Object - спрайт "корабль2" и называем его корабль2. 
Назначаем объект Add Object - спрайт "Выстрел" и называем его выстрел. 
Назначаем объект Add Object - спрайт "взрыв" и называем его взрыв. 

№ 3 


Аналогично назначаем звуки, их нам надо 2 штуки. 1 для взрыва, 2 для выстрела. 

№ 4 


Далее назначаем фон он может быть любым. 

№ 5 


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

  1) Add Event \ Key press (и назначаем кнопки лево, право, пробел); (т.е. при нажатии выполняются действия). 

  2) В лево переводим действие Start moving in a direction и нажимаем на стрелку влево (ниже находится скорость по умолчанию - 8) . 

  3) Тоже с право. 

  4) Add Event \Key release (лево, право); (т.е. при отжатии клавиши) нажимаем Start moving in a direction и ставим стрелку посередине ( т.е. при отжатии останавливается). 

  5) Переходим к выстрелу Add Event \ Create. 

  6) Далее в вкладке и ставим звук (т.е. Misk \ Play a sound ) выстрела. 

  7) Start moving in a direction и нажимаем направление движения пули т.е. вверх и со скоростью 16 и галочку Relative. 

  8) Вернемся к "корабль1" и при нажатие пробела (т.е. press пробел) ставим object \ Create:(лампочка) ставим объект выстрел и галочку Relative. (т.е. при нажатии пробела выстрел). 

  9) Далее создаем комнату в вкладке Backgrounds ставим свое изображение. 

  10) Там же (т.е. в этой комнате в вкладке Object) кликаем объект "корабль1" и ставим его снизу. 

  11) Нажимаем F5 и балдеем он летает и стреляет с характерным звуком.

рис.1 Вот что должно получится!

12) Теперь нужно сделать противников. Это будет "корабль2" этот противник будет только летать строго вперед и ваша задача его поразить или увернуться. Действовать будем так сначала он или они появляться сверху, при выходе за пределы комнаты появится сверху (0 по вертикали и любой по горизонтали) если встречается с пулей -то он возникает в новой позиции как уже писал и нужно его заменить на объект "взрыв" который при окончании анимации удалит этот объект. А и не забыть удалить выстрел и зачислить на счет одно очко. И при столкновение с нашим героем вывести счет и начать игру заново. Фу: кажется все. Задача не особо простая, но реальная, главное - логика! Если все логично - то игра будет работать как надо. 

  13) Теперь переходим к "корабль2" добавляем создание объекта (т.е. Add Event \ Create \ Set the vertical speed и ставим значение 4 (т.е. вниз со скоростью 4 если -4 то будет лететь в другую сторону). 

  14) Далее Add Event \ collision и выбираем объект "корабль2" (т.е. событие столкновения "корабль1" c "корабль2" если помните то при этом мы перезапускаем и выводим счет. Т.е. в вкладке Misc \ Show the highscore table и Restart the game. 

  15) Add Event\ collision "выстрел" Set the score в той-же вкладке и набираем +1. Там-же Play a sound и звук взрыва. В вкладке Move \ Jumb to a given position и пишем в x (random(1+640)) . 

  16) Add Event \ other \ Outside room (т.е. при покидании границ комнаты) следующее действие вкладке Move \ Jumb to a given position и пишем в x (random(1+640)) . 

  17) Теперь осталось сделать взрыв. Он выглядит так при столкновении объекта с выстрелом мы должны заменить выстрел на взрыв и когда анимация кончится просто его удалить. Сделаем это так в выстреле Add Event \ collision и выбираем объект "корабль2" и далее в вкладке Object \ Change the instanse и выбираем объект "взрыв" (мы меняем "выстрел" на "взрыв"). И удаляем deatroy the instanse. 

  18) Осталось лишь расположить объекты. И получится примерно так.

Вот принципе и все!!! Далее я лишь объясню как ее улучшить. 
3.
Все! Игры кончились! Приступаем, теперь мы будем улучшать. Первая цель - строка состояния. 
  1) Add Script и набираем текст: 


brush_color = c_black; 
pen_color = c_black; 
draw_rectangle(argument0,argument1,argument0 + 200,argument1 + 25); 
brush_color = make_color(200 - global.health*2,global.health*2,0); 
draw_rectangle(argument0,argument1,argument0 + global.health*2, argument1 + 25); 
font_color = c_white; 
font_size = 12; 
font_name = 'Courier'; 
font_style = fs_bold; 
font_align = fa_center; 
draw_text(argument0 + 100,argument1 + 5,'Здоровье:' + string(global.health) + '%'); 


Набрали? Ok. 
  2) Создаем объект без спрайта или с ним не важно. 
Теперь Add Event \ Create в вкладке Code \ Execute a piece of code пишем global.health = 100; Далее Add Event \ Draw \ Code \ Execute script и назначаем наш скрипт. 
  3) Переходим к нашему главному герою: Add Event \ collision "корабль2" \ Code \ Execute a piece of code пишем: if global.health = 0 room_restart() global.health-=25; (25 значит при столкновение с объектом "корабль2" -25%). Во вкладке Object \ Create an instanse of an object ставим "взрыв" и галочку relative.(теперь при столкновение с противником появлялся взрыв и -25% жизни, а если кончилось здоровье то игра перезапускается). 
  4) Должно получиться что-то вроде этого:


На вашем месте я бы удалил из спрайта "взрыв" все кадры до 7. Так красивей ;)! 
Красота, но это еще не все! 
  5) Наши противники не стреляют! Исправим. Берем противника, Add Event \ Step и в question \ if a dice lands on one значение 40. Теперь делаем новый объект "выстрел2" там ставим все тоже что и в выстреле только направление в другую сторону. Вернемся к противнику в Step \ object \ Create an instanse of an object там выстрел2. 
  6) Жмем F5! Все должно пройти так он летит и стреляет по тебе но здоровье не отнимается! Будем исправлять ситуацию. При столкновении с выстрелом2 пишем все тоже что и при столкновении с "корабль2" только -5% , хотя кому как нравится. 
  7) Надо решить проблему управления! Но это для кого как можно мышью, а можно клавиатурой. Я покажу как мышью. Ну для начала удалим предыдущее управление. Теперь Add Event \ Step \ jumb to diven position пишем в x mouse_x , а в y -460. Все теперь в опциях игры отставляем галочку в показе курсора. Там-же можно поставить фоновую картинку и картинку при загрузке, и ярлык для игры. Нажимаем file \ create stand-alone и конвертируем игру. Теперь загружаем!

Конечно можно совершенствовать ее просто бесконечно, в следующей части будут основы как создать простенькое RPG, а пока до новых встреч!

Категория: Game Maker | Добавил: Don_Alexey (19.06.2010)
Просмотров: 3598 | Комментарии: 4 | Рейтинг: 5.0/2
Всего комментариев: 4
4 Evstignei8400  
0
у нас на интернет-блоге собран большой набор умных статей про http://medbaz.com/news-more-911.html - таблетки от беременности.

3 Gleb6282  
0
у нас на официальном веб-ресурсе подобран большой набор умных статей про http://ublaze.ru/forum/ftopic1181.html - Прошивка EKEN W70 на VIA WM8850

2 влад  
0
прикольно

1 серега  
0
у меня пишет ероу скрипи что делать помогите пишите в асю 569943413

Добавлять комментарии могут только зарегистрированные пользователи.
[ Регистрация | Вход ]