Game Maker - создание игр | HellRoom Games

Game Maker | GameMaker: Studio [Game-Maker.ru] => Примеры, библиотеки, статьи, уроки, дополнения => Тема начата: Drago от Июнь 05, 2012, 13:33:33



Название: Пример одного объекта на все кнопки
Отправлено: Drago от Июнь 05, 2012, 13:33:33
Всем привет! :xD:
Хочу показать пример одного объекта кнопки с разными надписями и функциями. sm_preved
Смысл в том, что существует один объект obj_button и в нем мы пишем:
В событии мыши Left Button:
Код:
switch(buttonFunction)
{
   case 1:
      room_goto(options);
         break;
   case 2:
      room_goto(main_menu);
         break;
   case 3:
      game_end();
         break;
   case 4:
      window_set_fullscreen(1);
         break;
   case 5:
      window_set_fullscreen(0);
         break;
}
С помощью оператора Switch мы задаем ему разные функции при нажатии на левую кнопку мыши. Создаем шрифт и назовем его f_button.
Draw:
Код:
draw_sprite(sprite_index,0,x,y);
draw_set_color(c_white);
draw_set_font(f_button);
draw_set_halign(fa_center);
draw_set_valign(fa_middle);
draw_text(x,y,buttonName);
buttonName - это имя нашей определенной кнопки. В нашем случае создаем две комнаты main_menu и options. В комнате main_menu ставим два объекта кнопки, одна кнопка отвечает за переход на другую комнату, а вторая за выход. Итак, зажимаем клавишу Ctrl и клацаем правой кнопкой мыши на первую кнопку и нажимаем Create code(Создать код). Там пишем:
Код:
buttonName = 'Options';
buttonFunction = 1;
И на второй кнопке так же само:
Код:
buttonName = 'Exit';
buttonFunction = 3;
Потом переходим в комнату options и там ставим три кнопки. В первой пишем:
Код:
buttonName = 'Full screen';
buttonFunction = 4;
Во второй:
Код:
buttonName = 'Small screen';
buttonFunction = 5;
В третей:
Код:
buttonName = 'Back';
buttonFunction = 2;
Все наше меню готово! Можете запускать игру и радоваться своим произведением! sm_epik


Название: Re: Пример одного объекта на все кнопки
Отправлено: Nick от Июнь 05, 2012, 13:46:52
Довольно изящное решение, не догадался бы, учту на будущее. Но темку-то саму оформи как надо. Да и пример залей сюда, на форум, 10 кб не так уж много.