Создание графического меню
от heavenzip
В этой статье будет рассмотрено создание графического меню. Многим хочется чтобы их приложение или игра были оформлены красиво, так же меню должно обеспечивать удобное взаимодействие пользователя и приложения.
Я опишу метод создания меню без использования множества спрайтов и проверки их столкновений.
Нам понадобится два графических файла: курсор, картинка меню(к примеру размер 128-160) с нарисованными прямоугольными кнопками(у нас будет 3 кнопки: СТАРТ, ПОМОЩЬ, ВЫХОД).
Нам понадобятся координаты верхнего левого и нижнего правого углов каждой кнопки.
Например:
СТАРТ-координаты 20,10;100,30
ПОМОЩЬ-координаты 30,40; 90,60
ВЫХОД-координаты 20,70; 100,90Эти координаты понадобятся нам в дальнейшем.
И так, начнём писать код..
Загружаем картинку курсора
Загружаем картинку меню
Сопоставляем спрайт с гелем
Пишем начальные координаты по которым будет выведен на экран курсор.
Рисуем (выводим на экран) картинку меню
Выводим на экран спрайт курсора
Прописываем движение спрайта(курсора) при нажатии на кнопки клавиатуры-4,6,2,8
Не даём курсору уходить за пределы экрана.
Если курсор находится в пределах кнопки СТАРТ и нажата 5, то переход на строку 1000(предполагается что на строке 1000 начинается код игры)
Если курсор находится в пределах кнопки ПОМОЩЬ и нажата 5, то переход на строку 500
Если курсор находится в пределах кнопки ВЫХОД и нажата 5, то завершение выполнения программы
Пауза для того чтобы движение курсора не было быстрым, переход на строку 60
Вот и всё, таким образом мы получили графическое меню...
Оригинал: http://mbteam.ru
Я опишу метод создания меню без использования множества спрайтов и проверки их столкновений.
Нам понадобится два графических файла: курсор, картинка меню(к примеру размер 128-160) с нарисованными прямоугольными кнопками(у нас будет 3 кнопки: СТАРТ, ПОМОЩЬ, ВЫХОД).
Нам понадобятся координаты верхнего левого и нижнего правого углов каждой кнопки.
Например:
СТАРТ-координаты 20,10;100,30
ПОМОЩЬ-координаты 30,40; 90,60
ВЫХОД-координаты 20,70; 100,90Эти координаты понадобятся нам в дальнейшем.
И так, начнём писать код..
- 10 gelload "kur","kur.png"
- 20 gelload "menu","menu.png"
- 30 spritegel "Y","kur"
- 40 x%=50:y%=30
- 50 drawgel "menu",0,0
- 60 spritemove "Y",x%,y%
- 70 if left(0) then x%=x%-3
- 80 if right(0) then x%=x%+3
- 90 if up(0) then y%=y%-3
- 100 if down(0) then y%=y%+3
- 110 if x%<1 then x%=1
- 120 if x%>127 then x%=127
- 130 if y%<1 then y%=1
- 140 if y%>159 then y%=159
- 150 if x%>20 and y%>10 and x%<100 and y%<30 and fire(0) then goto 1000
- 160 if x%>30 and y%>40 and x%<90 and y%<60 and fire(0) then goto 500
- 170 if x%>20 and y%>70 and x%<100 and y%<90 and fire(0) then end
- 180 sleep 20:goto 60
Вот и всё, таким образом мы получили графическое меню...
Оригинал: http://mbteam.ru