Приветствую Вас, Гость! Регистрация RSS
Четверг, 28.03.2024
Главная » Статьи » Уроки » Для опытных

Создание игры в внешними ресурсами.
В Game Maker можно "доставать" различные ресурсы из внешних папок. То есть ваш .exe файл не будет ничего содержать кроме строки кода (точнее строки и нескольких кнопок), а весь код, картинки и звуки будут содержатся в другом месте. Собственно зачем это нужно? Ну вот пара примеров: вы создали обновления картинок (или кода) и что-бы не заставлять человека качать всё заново предлагаете ему скачать только картинки (код). Или может кто то хочет создать мод для игры улучшающий АИ врага или заменить спрайты на более красивые. Для начала нужно создать проект в game maker'е и создать один объект (o_controll). В событие создания пишем такой код:
execute_file('bin\bin.txt')
Теперь разберем его: execute_file('папка\файл.txt') то есть этот код загружает в программу наш файл в котором мы будем содержать коды. Теперь создаём объекты o_hero и o_sten (o_sten сделайте твёрдым) и два спрайта с минимальным рисунком, в моём случае это чёрный и белый квадраты. Закрываем проект. создаём папку bin (в ней будут хранится все ресурсы) и в этой папке файл bin.txt (в нём содержатся коды). Шаблон обработки событий такой:
object_event_add(объект для воздействия,событие,для какого объекта, 
тут ваш код
Первое поле содержит тот объект для которого этот код предназначается. Второе это событие (step, create и т.д.) Третье это: (если события аларма) то номер аларма. Если столкновение то с каким объектом и т.д.
Вот виды событий:
ev_create - событие создания объекта
ev_destroy - событие уничтожения
ev_step - шаг, выполняется всегда
ev_alarm - будильник, выполняется в определённый момент
ev_keyboard - событие клавиатуры
ev_mouse - событие мыши
ev_collision - событие столкновения
ev_other - другое
ev_draw - событие рисования
ev_keypress - клавиша нажата
ev_keyrelease - клавиша отпущена. 
ev_trigger - тиггер
Теперь можно заполнять наш файл bin.txt:
object_event_add(o_hero,ev_step,1, 
if keyboard_check(vk_up){y-=4};
if keyboard_check(vk_down){y+=4};
if keyboard_check(vk_left){x-=4};
if keyboard_check(vk_right){x+=4};

object_event_add(o_hero,ev_collision,o_sten, 
speed=0
Как видно тут события столкновения с стеной и движение героя. Дальше подготовим рисунки стены и герой и сохраним их в папку bin. Открываем проект и открываем объект героя. Ему нужно присвоить спрайт 

чёрного кубика. Дальше в событие создания перетащим из вкладки main2 эту кнопочку:--------------->
Она заменяет существующий спрайт на наш из папки bin. Со стеной сделайте ту же самую операцию. Теперь размещаем объекты в комнате и тестим игру. Исходник тут.
                                                                                                          
Категория: Для опытных | Добавил: Stalker5889 (29.11.2011) | Автор: stalker5889 E
Просмотров: 2621 | Комментарии: 1 | Теги: внешние файлы, для опытных, МОДЫ | Рейтинг: 5.0/1
Всего комментариев: 0
Добавлять комментарии могут только зарегистрированные пользователи.
[ Регистрация | Вход ]