Прежде чем приступить к оформлению нашего Меню, нам необходимо создать шрифт для меню, назовём его comic_menu.font (создание шрифтов мы рассматривали раньше) и поэтому просто приведу пример моего шрифта:
TTFONT
{
SIZE = 13
FACE = "Comic Sans MS"
BOLD = FALSE
ITALIC = FALSE
UNDERLINE = FALSE
STRIKE = FALSE
CHARSET = 10
COLOR { 193, 143, 39 }
ALPHA = 255
LAYER
{
OFFSET_X = 1
OFFSET_Y = 1
COLOR { 0, 0, 0 }
ALPHA = 255
}
LAYER
{
OFFSET_X = -1
OFFSET_Y = -1
COLOR { 0, 0, 0 }
ALPHA = 255
}
LAYER
{
OFFSET_X = -1
OFFSET_Y = 1
COLOR { 0, 0, 0 }
ALPHA = 255
}
LAYER
{
OFFSET_X = 1
OFFSET_Y = -1
COLOR { 0, 0, 0 }
ALPHA = 255
}
LAYER
{
OFFSET_X = 0
OFFSET_Y = 0
COLOR { 193, 143, 39 }
ALPHA = 255
}
}
Открываем interface\system\start_menu.window
Теперь нам нужно вверху написать меню, для этого жмём "Add static control”
Щелкаем по нашей книге вверху на левой странице, появится квадратик с надписью "Static”, располагаем его по середине. Далее всё просто, работаем с окошком в нижнем левом углу.
В строке "Text” пишем "МЕНЮ”, в ‘Font’ указываем путь к нашему шрифту comic_menu.font, "Name” оставляем без изменения.
Теперь сделаем четыре надписи, которые позволят нам перейти в другое меню, а именно: -начать игру; -загрузить игру; -авторы; -выйти из игры.
Жмём "Add button”
Щелкаем по рабочему полю (книге), создаём 4и таких кнопки, выбираем первую кнопку и пишем следующее: -в "Name” пишем "start”; -в "ParentNotify” должно быть True; -в "Text” пишем "Начать игру”; -и указываем в "Font” путь к шрифту.
Точно также прописываем остальные кнопки:
Загрузить игру: -в "Name” пишем "load”; -в "ParentNotify” должно быть True; -в "Text” пишем "Загрузить игру”; -и указываем в "Font” путь к шрифту.
Авторы: -в "Name” пишем "credits”; -в "ParentNotify” должно быть True; -в "Text” пишем "Авторы”; -и указываем в "Font” путь к шрифту.
Выход из игры: -в "Name” пишем "quit”; -в "ParentNotify” должно быть True; -в "Text” пишем "Выйти из игры”; -и указываем в "Font” путь к шрифту.
Должно получиться примерно так:
В start_menu.script должно быть примерно так:
#include "scripts\base.inc" #include "scripts\keys.inc" //////////////////////////////////////////////////////////////////////////////// on "close" { this.Close(); } //////////////////////////////////////////////////////////////////////////////// on "quit" { Game.QuitGame(); } //////////////////////////////////////////////////////////////////////////////// on "Keypress" { var button;
if(Keyboard.KeyCode==VK_ESCAPE){ button = this.GetControl("quit"); button.Press(); } } //////////////////////////////////////////////////////////////////////////////// on "load" { var WinLoad = Game.LoadWindow("interface\system\load.window"); WinLoad.Center(); WinLoad.GoSystemExclusive(); Game.UnloadObject(WinLoad); } //////////////////////////////////////////////////////////////////////////////// on "start" { Game.ChangeScene("scenes\Room_1\Room_1.scene"); Game.UnloadObject(this); } //////////////////////////////////////////////////////////////////////////////// on "credits" { Game.ChangeScene("scenes\credits\credits.scene"); Game.UnloadObject(this); }