Сегодня мы создадим простенькое меню,а точнее научимся делать.
Сначала создайте глобальную переменную Код:
new Menu:menu1; Потом в паблике OnGameModeInit пропишите:
Code
menu1 == teleportmenu = CreateMenu("Menu", 1, 200.0, 100.0, 150.0, 150.0);
А теперь почешем репу и подумаем что есть что...и вот что это есть:
Code
CreateMenu(название, кол-во колон, положение по Х-координате, положение по У-координате, ширина первой колонны,ширина второй колонны);
два последнего значения я и сам не понял что означают(инфу брал с википедии)
после menu1 ==... добавляем
Code
AddMenuItem(menu1,0,"тут пишем название");
Вот что это все означает:
Code
AddMenuItem(ид меню(в данном случае мы используем переменную),номер колонны(начинается с нуля),название);
вы можете добавить много Item'ов,сколько захотите
Действия,которые происходит при выборе Item'а прописаны в паблике OnPlayerSelectMenuRow,в этом паблоике создаем переменную new
Code
pmenu ==GetPlayerMenu(playerid);
Далее делаем пару проверок:
Code
if(pmenu == menu1)
{
switch(row)
{
тут делаем различные кейсы,соответствующие Item'ам,все ид кейсов начинаются с нуля,например:
Code
case 0:
{
действия
return 1;
}
}
}
Все,урок окончен
союзников). И так, приступим. Сначала нам нужно создать переменные, заменяющие ID команд, с названиями команд с помощью define (define могут заменять любое число или текст на другой текст, который будет ему альтернативой). Создаются они в самом начале мода. Для примера это будут балласы и грувцы:
#define TEAM_GROVE 1
#define TEAM_BALLA 2
Теперь создадим define цветов для команд::
#define TEAM_GROVE_COLOR 0x00FF00AA
#define TEAM_BALLA_COLOR 0xFF00FFAA
Теперь сразу после этих строк добавим новую переменную, которая будет различать тимы:
new gTeam[MAX_PLAYERS];
Теперь добавим в паблик OnPlayerRequestClass (при условии, что у вас уже установлены на выбор 2 скина) проверку на скины. Счёт начинается с 0. Проверим, если это первый скин, то пусть это будет грув:
if(classid == 0)
{
gTeam[playerid] = TEAM_GROVE;
GameTextForPlayer(playerid, "GROVE", 1000, 3);
}
Теперь проделаем тоже самое со вторым скином. Его ID будет уже 1...Сделали? Отлично. Теперь сделаем так, что при выборе определённого скина ему давался определённый цвет. Для этого в паблик OnPlayerSpawn выполним проверку на тиму TEAM_GROVE и при её подтверждении будет даваться цвет, который мы указали в дефайне TEAM_GROVE_COLOR:
if(gTeam[playerid] == TEAM_GROVE)
{
SetPlayerColor(playerid, TEAM_GROVE_COLOR);
}
Потом проделаем тоже самое с тимой балласов...сделали? Отлично. Тимы готовы. Компилируем мод. Если всё прошло удачно, поздравляю. Вы научились создавать Team DeathMatch'и!!!