Заказать Сервер Заказать Плагин Контакты Поиск

[ вход ]
[ последние сообщения ]

Страница 1 из 6123456»
Форум » SourceMod - Counter Strike Source && CS GO » Обсуждение » MENU
MENU
Nahal Дата: Среда, 01.07.2015, 16:17:42 | Сообщение # 1
Сообщений: 205
Репутация: 8 [ +/- ]
Добрый день, Помогите написать код в меню..
при написание в чат !wf или лучше чтобы меню само вылезало
Далее в меню должны быть классы Медик, снайпер, Инженер, Штурмовик,
какой человек выберет класс дается скин указанный в коде, далее дается оружие указанно в коде, и все кто поможет, а лучше готовый код кому не сложно kotek
 
«SeReGa»☆ Дата: Среда, 01.07.2015, 17:10:32 | Сообщение # 2
Сообщений: 395
Репутация: 37 [ +/- ]
Nahal, по этому поводу тебе сюда! если не сложно! http://world-source.ru/index/zakaz/0-82 ulibka


Сообщение отредактировал «SeReGa»☆ - Среда, 01.07.2015, 17:12:38
 
BarD Дата: Среда, 01.07.2015, 17:29:55 | Сообщение # 3
Сообщений: 944
Репутация: 132 [ +/- ]
Походу, кто-то хочет Варфейс запилить.

Добавлено (01.07.2015, 17:29:55)
---------------------------------------------
"я просто сайты учусь делать) не для меня pawno" ©Nahal

 
Nahal Дата: Среда, 01.07.2015, 17:42:32 | Сообщение # 4
Сообщений: 205
Репутация: 8 [ +/- ]
BarD, ulibka

Добавлено (01.07.2015, 17:42:32)
---------------------------------------------
«SeReGa»☆, Очень смешно)

 
Jon4ik Дата: Среда, 01.07.2015, 18:30:43 | Сообщение # 5
Сообщений: 279
Репутация: 7 [ +/- ]
new playerclass[MAXPLAYERS+1];

создаешь меню

проверяешь какой пункт был выбран

playerclass[client] = тут зависит от выбранного класса;

выдаем оружие сразу
хукаем рождения игрока

if(playerclass[client] == класс)
{
выдаем все что надо
}

p.s могу ошибаться
 
Nahal Дата: Среда, 01.07.2015, 18:51:39 | Сообщение # 6
Сообщений: 205
Репутация: 8 [ +/- ]
Jon4ik, Вот только как проерить пункт у меня минус незнаю
 
Jon4ik Дата: Среда, 01.07.2015, 18:56:23 | Сообщение # 7
Сообщений: 279
Репутация: 7 [ +/- ]
Nahal, я все таки немного не прав был(так нельзя задать. сижу думаю как по другому реализовать можно)

знаю только как в панели проверить

new Handle:class = CreatePanel();
SetPanelTitle(class, "Выбирите себе класс:\n");
DrawPanelItem(class, "Медик");
DrawPanelItem(class, "Снайпер");
SetPanelCurrentKey(class, 9);
DrawPanelItem(class, "Закрыть меню");
SendPanelToClient(class, client, InfoMenuHandler, MENU_TIME_FOREVER);
CloseHandle(class);

public InfoMenuHandler(Handle:hMenu, MenuAction:action, client, iSlot)
{
if(iSlot == 1)
{
//тут код
}
else if(iSlot == 2)
{
// код
}
}

вот кусок кода

попробуй так

Прикрепления: plugin.txt(1Kb)


Сообщение отредактировал Jon4ik - Среда, 01.07.2015, 19:04:57
 
Nahal Дата: Среда, 01.07.2015, 19:45:35 | Сообщение # 8
Сообщений: 205
Репутация: 8 [ +/- ]
Jon4ik, Напиши код здесь, а то там кодировка не та
 
Jon4ik Дата: Среда, 01.07.2015, 19:46:53 | Сообщение # 9
Сообщений: 279
Репутация: 7 [ +/- ]
Nahal, я лично нормально вижу

Код
new playerclass[MAXPLAYERS+1];

public OnPluginStart()
{

RegConsoleCmd("sm_wf", wf);
HookEvent("player_spawn", Event_player_spawn);

}
public Action:wf(client, args)
{
new Handle:class = CreatePanel();
SetPanelTitle(class, "Выбирите себе класс:\n");
DrawPanelItem(class, "Медик");  
DrawPanelItem(class, "Снайпер");
SetPanelCurrentKey(class, 9);
DrawPanelItem(class, "Закрыть меню");    
SendPanelToClient(class, client, InfoMenuHandler, MENU_TIME_FOREVER);
CloseHandle(class);
}

public Action:Event_player_spawn(Handle:event, const String:name[], bool:dontBroadcast)
{
   new client = GetClientOfUserId(GetEventInt(event,"userid"));
      
   if(playerclass[client] == 0)
   {
   giveweaponmedic(client);
   }
   else if(playerclass[client] == 1)
   {
   giveweaponspayper(client);
   }  
}
public InfoMenuHandler(Handle:hMenu, MenuAction:action, client, iSlot)
{
if(iSlot == 1)  
{
playerclass[client] = 0;
giveweaponmedic(client);
}
else if(iSlot == 2)  
{
playerclass[client] = 1;
giveweaponspayper(client);
}
}

stock giveweaponmedic(client)
{
//прибомбасы
}

stock giveweaponspayper(client)
{
//прибомбасы
}
 
Nahal Дата: Среда, 01.07.2015, 20:03:14 | Сообщение # 10
Сообщений: 205
Репутация: 8 [ +/- ]
Jon4ik, А прибомбасы?
decl String:choice[40];
GetMenuItem(menu, param2, choice, sizeof(choice));
if (StrEqual(choice, "ak47", false))
{
pweaponid[param1] = 1;
SecondaryWeapons(param1, 0);
}
else if (StrEqual(choice, "m4a1", false))
{
pweaponid[param1] = 2;
SecondaryWeapons(param1, 0);
}
else if (StrEqual(choice, "famas", false))
{
pweaponid[param1] = 7;
SecondaryWeapons(param1, 0);
}
 
Jon4ik Дата: Среда, 01.07.2015, 20:16:32 | Сообщение # 11
Сообщений: 279
Репутация: 7 [ +/- ]
stock giveweaponmedic(client)
{
globalmedic(client);
}

globalmedic()
{
new Handle:medicweapon = CreatePanel();
SetPanelTitle(medicweapon, "Выбирите себе оружие:\n");
DrawPanelItem(medicweapon, "AK-47");
DrawPanelItem(medicweapon, "M41a");
SetPanelCurrentKey(medicweapon, 9);
DrawPanelItem(medicweapon, "Закрыть меню");
SendPanelToClient(medicweapon, client, InfoMenuHandler2, MENU_TIME_FOREVER);
CloseHandle(medicweapons);
}

public InfoMenuHandler2(Handle:hMenu, MenuAction:action, client, iSlot)
{
if(iSlot == 1)
{
выдаем ак47
}
else if(iSlot == 2)
{
выдаем мку
}
}

как то так
 
Nahal Дата: Среда, 01.07.2015, 20:43:31 | Сообщение # 12
Сообщений: 205
Репутация: 8 [ +/- ]
Jon4ik, А как выдать то?
 
Jon4ik Дата: Среда, 01.07.2015, 22:02:41 | Сообщение # 13
Сообщений: 279
Репутация: 7 [ +/- ]
Nahal, используй этот инклюд http://world-source.ru/forum/141-3817-1
 
«SeReGa»☆ Дата: Среда, 01.07.2015, 23:51:02 | Сообщение # 14
Сообщений: 395
Репутация: 37 [ +/- ]


Сообщение отредактировал «SeReGa»☆ - Четверг, 02.07.2015, 00:42:39
 
Nahal Дата: Четверг, 02.07.2015, 13:01:28 | Сообщение # 15
Сообщений: 205
Репутация: 8 [ +/- ]
Как сделать кнопку назад?
 
Форум » SourceMod - Counter Strike Source && CS GO » Обсуждение » MENU
Страница 1 из 6123456»
Поиск: