MENU 
				  
Nahal 
 
 
Дата: Среда, 01.07.2015, 16:17:42 | Сообщение # 1   
  
 
Сообщений: 205
 
Репутация: 8  [ +/-  ]
 
 
Добрый день, Помогите написать код в меню..   при написание в чат !wf или лучше чтобы меню само вылезало   Далее в меню должны быть классы Медик, снайпер, Инженер, Штурмовик,   какой человек выберет класс дается скин указанный в коде, далее дается оружие указанно в коде, и все кто поможет, а лучше готовый код кому не сложно   
 
 
  
 
BarD 
 
 
Дата: Среда, 01.07.2015, 17:29:55 | Сообщение # 3   
  
 
Сообщений: 943
 
Репутация: 137  [ +/-  ]
 
 
Походу, кто-то хочет Варфейс запилить.Добавлено  (01.07.2015, 17:29:55) --------------------------------------------- "я просто сайты учусь делать) не для меня pawno" ©Nahal
  
 
 
  
 
Jon4ik 
 
 
Дата: Среда, 01.07.2015, 18:30:43 | Сообщение # 5   
  
 
Сообщений: 278
 
Репутация: 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   
  
 
Сообщений: 278
 
Репутация: 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)   {   // код   }   }   вот кусок кода   попробуй так 
 
Гости не могут скачивать файлы
 
Сообщение отредактировал 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   
  
 
Сообщений: 278
 
Репутация: 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   
  
 
Сообщений: 278
 
Репутация: 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   
  
 
Сообщений: 278
 
Репутация: 7  [ +/-  ]
 
 
Nahal, используй этот инклюд http://world-source.ru/forum/141-3817-1 
 
 
  
 
«SeReGa»☆ 
 
 
Дата: Среда, 01.07.2015, 23:51:02 | Сообщение # 14   
  
 
Сообщений: 395
 
Репутация: 37  [ +/-  ]
 
 
Код
GivePlayerItem(client, "weapon_scout");
   API = 
https://sm.alliedmods.net/api/index.php?fastload=show&id=36&   WEAPON = 
http://world-source.ru/forum/100-2305-1   + В переменную нужно записать Классы то-ли Медик,то-ли снайпер,то-ли Инженер,то-ли Штурмовик 
 + Сохранить в переменную Оружие которое выбрал игрок после выбора класса 
 + Выдавать при каждом респауне Оружие Соответствующее классу игрока Которое сохранено ранее при выборе оружия 
 + Некоторые фишки для админа (то-ли сменить класс выбранного игрока). 
 + ещё много всякого!.. 
 а оружие лучше выдавать таким путём!  
ChangeWeapon (
client , 
0 , "
weapon_awp ");  
client = Кому будем выдавать!  
0 = Слот 0=Основной=тут автоматы 1=Вторичный-тут пистолеты. 2=Рукопашная- тут Нож  
weapon_awp  = Название взятое с 
http://world-source.ru/forum/100-2305-1   Код
   ChangeWeapon(client, 0, "weapon_awp");   ChangeWeapon(client, 1, "weapon_deagle");   stock ChangeWeapon(client, slot, String:WP[])   {    new weaponIdx;    if ((weaponIdx = GetPlayerWeaponSlot(client, slot)) > 0)    {     RemovePlayerItem(client, weaponIdx);     AcceptEntityInput(weaponIdx, "Kill");    }    GivePlayerItem(client, WP);   }
    
Сообщение отредактировал «SeReGa»☆  - Четверг, 02.07.2015, 00:42:39 
 
 
  
 
Nahal 
 
 
Дата: Четверг, 02.07.2015, 13:01:28 | Сообщение # 15   
  
 
Сообщений: 205
 
Репутация: 8  [ +/-  ]
 
 
Как сделать кнопку назад?