FlacoBey

Untitled

Dec 27th, 2018
166
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 2.08 KB | None | 0 0
  1. new String:vote_target[32];
  2.  
  3. public OnMapStart()
  4. {
  5.     AddCommandListener(CommandListener);
  6. }
  7.  
  8. public Action:CommandListener(client, const String:command[], args)
  9. {
  10.     if (StrEqual(command, "callvote", false))
  11.     {
  12.         new String:arg1[16];
  13.         GetCmdArg(1, arg1, sizeof(arg1));
  14.         if (StrEqual(arg1, "Kick", false))
  15.         {
  16.             GetCmdArg(2, vote_target, sizeof(vote_target));
  17.             DisplayVoteKickMenu(client)
  18.         }
  19.     }
  20.     return Plugin_Continue;
  21. }
  22.  
  23. DisplayVoteKickMenu(client)
  24. {  
  25.     new Handle:menu = CreateMenu(MenuKick);
  26.     if(IsClientInGame(client) && !IsFakeClient(client))
  27.     {
  28.         SetMenuTitle(menu, "Выберите причину кика:");
  29.         AddMenuItem(menu, "Нуб", "Нуб");
  30.         AddMenuItem(menu, "Расист", "Расист");
  31.         AddMenuItem(menu, "Не адекват", "Не адекват");
  32.         AddMenuItem(menu, "Даун", "Даун");
  33.         AddMenuItem(menu, "Я его не знаю и знать не хочу", "Я его не знаю и знать не хочу");
  34.         AddMenuItem(menu, "вай нот?", "вай нот?");
  35.         DisplayMenu(menu, client, MENU_TIME_FOREVER);
  36.     }
  37.     else
  38.     {
  39.         CloseHandle(menu); 
  40.     }
  41. }
  42.  
  43. public MenuKick(Handle:menu, MenuAction:action, param1, param2)
  44. {
  45.     new target = GetClientOfUserId(StringToInt(vote_target));
  46.    
  47.     if (action == MenuAction_Select)
  48.     {
  49.         new String:szBuffer[56];
  50.         char szInfo[64], szTitle[128];
  51.        // (iItem, szInfo, sizeof(szInfo), _, szTitle, sizeof(szTitle));
  52.         GetMenuItem(menu, param2, szInfo, sizeof(szInfo), _, szTitle, sizeof(szTitle))
  53.         Format(szBuffer, sizeof(szBuffer), "%s", szInfo);
  54.        
  55.         if(IsInGame(target))
  56.         {
  57.             FakeClientCommand(param1,"callvote Kick %N", target);
  58.             PrintToChatAll("Началось голосование за кик игрока %N по причине: %s", target, szBuffer);
  59.             CloseHandle(menu);
  60.         }
  61.         else if (action == MenuAction_End)
  62.         {
  63.             CloseHandle(menu)
  64.         }
  65.     }
  66. }
  67.  
  68. stock bool:IsInGame( client )
  69. {
  70.     if ( client < 1 || client > MaxClients ) return false;
  71.     if ( !IsClientConnected( client )) return false;
  72.     if ( !IsClientInGame( client )) return false;
  73.     return true;
  74. }
Advertisement
Add Comment
Please, Sign In to add comment