воскресенье, 9 августа 2015 г.

[GM:S] Создание меню

Нашлось немного времени, чтобы отдохнуть... Но отдых для слабаков! Поэтому мы с вами сегодня рассмотрим как создать меню для своей любимой игры в Game maker: Studio!

Ну для начала мы создаем свой проект, ну и затем конечно же создаем...ШРИФТ!!!
Выбирайте любой понравившийся, в своем случае я выбрал Comic Sans, для нашего примера выберем 16 размер шрифта. Ну а остальное выбирайте по цвету и запаху :)


Главным элементом меню являются- КНОПКИ, поэтому давайте создадим спрайт размерами 185х40, ну и нарисуем стандартными средствами Game maker'a два изображения кнопки (1-неактивная кнопка, 2-активная). Ставим центр спрайта x=0, y=20 - это важно, товарищи игроделы!


Ну а теперь перейдем непосредственно к созданию объекта МЕНЮ(просто создайте объект с именем menu и закройте его, к нему мы вернемся чуть позже).
Создаем вспомогательный скрипт с именем  scr_draw_text и вбиваем туда следующий код:

Если что-то тут непонятно, вперед и с песней изучать справку!!!
Создадим еще один вспомогательный скрипт text_sd. Используется он для рисования текста с тенью. Он содержит следующий код:

Ну и последний и самый важный на сегодня скрипт scr_button. Код представлен на картинке:

Смысл этого скрипта понятен, да и комментарии существенно все разъясняют. Как видно, что при нажатии ЛКМ, происходит создание объекта room_start_eff_end. Этот объект создает эффект перехода из комнаты в комнату. Так давайте его создадим! Задаем ему глубину -1001 (можно и меньше, но и этого будет довольно достаточно) и в событии создания задаем код:
 Ну и в событии рисования пишем это:










Для дополнения этого эффекта создаем еще один объект room_start_eff_st, ну и смотрим его код ниже:

В конце посмотрим на получившийся эффект :)
Теперь перейдем к объекту menu. Создадим событие рисования и пишем туда такой код:

На нажатие "R" поставьте перезагрузку игры, дабы можно было по сто раз не закрывать игру и запускать ее через Game maker. Ну и для завершения нашей проделанной работы создайте несколько комнат с именами: r_menu, r_author, r_settings, r_01 ну и другие. Комнату r_menu ставим первой в списке комнат, ну и ставим в ней объект menu. Объект room_start_eff_st ставим в каждой комнате для эффектности :)
Если вы все сделали правильно, то должно получиться что-то типо этого:

Выглядит довольно неплохо!!! Думаю код весь понятен, ну если нет то задавайте свои вопросы под топиком!

Ну на этом все, делайте качественный продукт, товарищи! Всем удачи!!!

Комментариев нет:

Отправить комментарий