Всем привет! Не совсем давно Lqunchik спрашивал, как реализовать добавление оружия в игру, не изменяя её исходник. Начал делать его, но потом забыл. Вот, вчера дошли руки до программы для добавления\изменения оружия в TDS.
Содержание архива:
game.gmk;
prog.gmk;
weapons.gmc;
папка "weapons" с двумя папками оружий. В каждой папке по одному оружию (спрайты для него).
Я понимаю, что опытный пользователь, сможет сделать такое, возможно, лучше, сам. Но тем, кто не в силах такое реализовать, этот архив будет полезен. Steel Standoff - 2D аркада. Мои статьи
Сообщение отредактировал аТнОтХоАн - Суббота, 27 Августа 2011, 11:19
У тебя так комната называется?!?! Измени название хотя бы на такое: r_3. А также, лучше делай проверку не =, а >=. Т.к. если за что-нибудь даётся 2 очка, а очков у тебя уже 1399, тогда получится 1401, и проверка не сработает. В общем, код такой:
Я так понял, что для фруктов и жирной еды будет не по одному объекту. Значит, нужно делить объекты по группам. Создай два объекта: o_frui_parent, o_meat_parent.
В событии создания объекта o_frui_parent пиши:
Code
// назначаем объектам-фруктам одного общего родителя. Перечисляем объекты фруктов object_set_parent(o_apple,object_index) // o_apple - объект-фрукт, object_index - объект-родитель - текущий объект object_set_parent(o_orange,object_index) // и т.д.
В событии создания объекта o_meat_parent почти то же самое, только объекты другие будут:
Code
// назначаем объектам-*жирным продуктам* одного общего родителя. Перечисляем объекты жирной еды object_set_parent(o_kotleta,object_index) // o_apple - объект-фрукт, object_index - объект-родитель - текущий объект object_set_parent(o_kurica,object_index) // и т.д.
В событии столкновения игрока с объектом o_fruit_parent (с фруктами):
Code
score += 1 // 1 - на сколько повысить очки with other instance_destroy() // уничтожаем объект с которым столкнулся игрок
В событии столкновения игрока с объектом o_meat_parent (с жирной едой):
Code
score -= 1 // 1 - на сколько понизить очки with other instance_destroy() // уничтожаем объект с которым столкнулся игрок
Alexino, в справке есть раздел Game Maker Language (GML). Там достаточно всего, чтобы, изучив данный раздел, отлично знать GML. Steel Standoff - 2D аркада. Мои статьи
thecheater, предлагаю полностью переделать оформление конструктора, чтобы выглядел, как авторский. Также, код свой напиши.
Уже второго такого наивного человека встречаю. Если материал неактуален, это не значит, что можно его выдавать за свой. Первый "супер хакер" просто декомпилировал игру, но не выдал её за свою. Второй - декомпилировал, изменил, и выдал за своё.
Пока, т.к. он в разработке, так и есть. Но вообще, если многие параметры игра настраивать можно, то это уже движок, если я не ошибаюсь. Steel Standoff - 2D аркада. Мои статьи
аТнОтХоАн, в условии задания приведено число, а не строка. Логичнее будет выполнять операции над числом, а не строкой.. По-моему в этом была главная суть задания.
Можно тогда сделать так. Тогда будет, как требовалось, только на GML.
Code
a = 12345; // число for (i=1; i<=string_length(string(a)); i+=1) b[i] = real(string_char_at(string(a),i));