Advertisement
Guest User

385gtamaster

a guest
Mar 12th, 2011
2,414
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Pawn 43.23 KB | None | 0 0
  1. //Sistema de helpers e admins || By: 385gtamaster
  2. #include <a_samp>
  3. #include <a_samp>
  4. #include <Dini>
  5. #include <dudb>
  6. #include <utils>
  7. #include <morphinc>
  8. #include <cpstream>
  9. #include <core>
  10.  
  11. #pragma unused ret_memcpy
  12.  
  13. //CORES
  14. #define COLOR_HELPER 0x68FFC2AA
  15. #define COLOR_ADMIN 0xF800DFAA
  16. #define COLOR_WHITE 0xFFFFFFAA
  17. //OUTRAS CORES
  18. #define COLOR_BLUE 0x004CFFAA
  19. #define COLOR_DBLUE 0x0800A8AA
  20. #define COLOR_PINK 0xFF48FFAA
  21. #define COLOR_PINK1 0xDF00E0AA
  22. #define COLOR_GREY 0xC190FFAA
  23. #define COLOR_BLACK 0x000000AA
  24. #define COLOR_YELLOW 0xE8D000AA
  25. #define COLOR_YELLOW1 0xD09C00AA
  26. #define COLOR_ORANGE 0xF08400AA
  27. #define COLOR_ORANGE1 0xFF2600AA
  28. #define COLOR_GREEN 0x18F000AA
  29. #define COLOR_GREEN1 0x085800AA
  30. #define COLOR_WARNING 0xFF3620AA
  31. #define COLOR_LIGHTBLUE 0x18F3FFAA
  32. #define COLOR_RED 0xE00000AA
  33. #define COLOR_RED1 0x980000AA
  34.  
  35. //HELPER
  36. new HelperTrabalhando[MAX_PLAYERS];
  37. //ADMIN
  38. new AdminTrabalhando[MAX_PLAYERS];
  39. //LEVEL
  40. enum lInfo
  41. {
  42.     Admin,
  43.     Helper,
  44.     Avisos,
  45. };
  46. new LevelInfo[MAX_PLAYERS][lInfo];
  47. //OUTROS
  48. new nome[MAX_PLAYER_NAME];
  49.  
  50. forward SendMessageToAdmins(color,const string[]);
  51. forward SendMessageToHelper(color,const string[]);
  52.  
  53. public OnFilterScriptInit()
  54. {
  55.     print("-------------------------------------------------");
  56.     print(" Sistema de helpers carregado || By: 385gtamaster");
  57.     print("-------------------------------------------------");
  58.     return 1;
  59. }
  60.  
  61. public OnFilterScriptExit()
  62. {
  63.     print("----------------------------------------------------");
  64.     print(" Sistema de helpers descarregado || By: 385gtamaster");
  65.     print("----------------------------------------------------");
  66.     return 1;
  67. }
  68.  
  69. public OnGameModeInit()
  70. {
  71.     return 1;
  72. }
  73.  
  74. public OnGameModeExit()
  75. {
  76.     return 1;
  77. }
  78.  
  79. public OnPlayerRequestClass(playerid, classid)
  80. {
  81.     return 1;
  82. }
  83.  
  84. public OnPlayerConnect(playerid)
  85. {
  86.     return 1;
  87. }
  88.  
  89. public OnPlayerDisconnect(playerid, reason)
  90. {
  91.     return 1;
  92. }
  93.  
  94. public OnPlayerSpawn(playerid)
  95. {
  96.     return 1;
  97. }
  98.  
  99. public OnPlayerDeath(playerid, killerid, reason)
  100. {
  101.     return 1;
  102. }
  103.  
  104. public OnVehicleSpawn(vehicleid)
  105. {
  106.     return 1;
  107. }
  108.  
  109. public OnVehicleDeath(vehicleid, killerid)
  110. {
  111.     return 1;
  112. }
  113.  
  114. public OnPlayerText(playerid, text[])
  115. {
  116.     return 1;
  117. }
  118.  
  119. public OnPlayerCommandText(playerid, cmdtext[])
  120. {
  121.     new cmd[256];
  122.     new idx;
  123.     new string[256];
  124.     cmd = strtok(cmdtext, idx);
  125.     if(strcmp(cmd, "/darhelper", true) == 0)
  126.     {
  127.         if(LevelInfo[playerid][Helper] < 5) return SendClientMessage(playerid, COLOR_WHITE, "Você não é um Helper ou não tem level suficiente!");
  128.         if(HelperTrabalhando[playerid] < 1) return SendClientMessage(playerid, COLOR_WHITE, "Você não está trabalhando (/profhelper)");
  129.         if(!IsPlayerConnected(playerid)) return SendClientMessage(playerid, COLOR_WHITE, "Você não está conetado!");
  130.         new tmp[256];
  131.         new NomeDado[256];
  132.         new NomeDado1[256];
  133.         tmp = strtok(cmdtext, idx);
  134.         if(!strlen(tmp)) return SendClientMessage(playerid, COLOR_WHITE, "USE: /darhelper [id] [Nivel]");
  135.         new para1;
  136.         new level;
  137.         para1 = ReturnUser(tmp);
  138.         tmp = strtok(cmdtext, idx);
  139.         if(!strlen(tmp)) return SendClientMessage(playerid, COLOR_WHITE, "USE: /darhelper [id] [Nivel]");
  140.         level = strval(tmp);
  141.         GetPlayerName(para1, NomeDado, sizeof(NomeDado));
  142.         GetPlayerName(playerid, NomeDado1, sizeof(NomeDado1));
  143.         if(para1 == INVALID_PLAYER_ID) return SendClientMessage(playerid, COLOR_WHITE, "Player não conetado!");
  144.         format(string, sizeof string, "Você deu Helper Nível %d para %s", level, NomeDado);
  145.         SendClientMessage(playerid, COLOR_LIGHTBLUE, string);
  146.         format(string, sizeof string, "Você ganhou Helper Nível %d do admin %s", level, NomeDado1);
  147.         SendClientMessage(para1, COLOR_LIGHTBLUE, string);
  148.         LevelInfo[para1][Helper] = level;
  149.         return 1;
  150.     }
  151. //-------------------------------------------
  152.     if(strcmp(cmd, "/helper", true) == 0 || strcmp(cmd, "/h", true) == 0)
  153.     {
  154.         if(!IsPlayerConnected(playerid)) return SendClientMessage(playerid, COLOR_WHITE, "Você não está conetado!");
  155.         if(LevelInfo[playerid][Helper] < 1) return SendClientMessage(playerid, COLOR_WHITE, "Você não é um Helper ou não tem level suficiente!");
  156.         if(HelperTrabalhando[playerid] < 1) return SendClientMessage(playerid, COLOR_WHITE, "Você não está trabalhando (/trabalhar)");
  157.         GetPlayerName(playerid, nome, sizeof(nome));
  158.         new length = strlen(cmdtext);
  159.         while ((idx < length) && (cmdtext[idx] <= ' '))
  160.         {
  161.             idx++;
  162.         }
  163.         new offset = idx;
  164.         new result[64];
  165.         while ((idx < length) && ((idx - offset) < (sizeof(result) - 1)))
  166.         {
  167.             result[idx - offset] = cmdtext[idx];
  168.             idx++;
  169.         }
  170.         result[idx - offset] = EOS;
  171.         if(!strlen(result))
  172.         {
  173.             SendClientMessage(playerid, COLOR_WHITE, "USO: /helper [TEXTO]");
  174.             return 1;
  175.         }
  176.         format(string,sizeof(string),"Helper %s: %s", nome, result);
  177.         SendMessageToAdmins(COLOR_HELPER,string);
  178.         return 1;
  179.     }
  180. //-------------------------------------------
  181.     if(strcmp(cmd, "/irhelp", true) == 0)
  182.     {
  183.         if(!IsPlayerConnected(playerid)) return SendClientMessage(playerid, COLOR_WHITE, "Você não está conetado!");
  184.         if(LevelInfo[playerid][Helper] < 1) return SendClientMessage(playerid, COLOR_WHITE, "Você não é um Helper ou não tem level suficiente!");
  185.         if(HelperTrabalhando[playerid] < 1) return SendClientMessage(playerid, COLOR_WHITE, "Você não está trabalhando (/profhelper)");
  186.         new tmp[256];
  187.         new NomeDestino[256];
  188.         new NomeDestinado[256];
  189.         new Float:x, Float:y, Float:z;
  190.         tmp = strtok(cmdtext,idx);
  191.         if(!strlen(tmp)) return SendClientMessage(playerid, COLOR_WHITE, "USO: /irhelp [playerid]");
  192.         if(strval(tmp) == INVALID_PLAYER_ID || !IsPlayerConnected(strval(tmp))) return SendClientMessage(playerid, COLOR_WHITE, "Player não conetado!");
  193.         GetPlayerName(strval(tmp), NomeDestino, sizeof(NomeDestino));
  194.         GetPlayerName(playerid, NomeDestinado, sizeof(NomeDestinado));
  195.         new interior = GetPlayerInterior(strval(tmp));
  196.         GetPlayerPos(strval(tmp), x, y, z);
  197.         SetPlayerPos(playerid, x+0.5, y, z);
  198.         SetPlayerInterior(playerid, interior);
  199.         format(string,sizeof(string),"HELPER CMD: O Helper %s se teleportou até você!",NomeDestinado);
  200.         SendClientMessage(playerid, COLOR_YELLOW,string);
  201.         format(string,sizeof(string),"HELPER CMD: Você se teleportou ao player %s",NomeDestino);
  202.         SendClientMessage(playerid, COLOR_YELLOW,string);
  203.         return 1;
  204.     }
  205. //-------------------------------------------
  206.     if(strcmp(cmd, "/trazerhelp", true) == 0)
  207.     {
  208.         if(!IsPlayerConnected(playerid)) return SendClientMessage(playerid, COLOR_WHITE, "Você não está conetado!");
  209.         if(LevelInfo[playerid][Helper] < 1) return SendClientMessage(playerid, COLOR_WHITE, "Você não é um Helper ou não tem level suficiente!");
  210.         if(HelperTrabalhando[playerid] < 1) return SendClientMessage(playerid, COLOR_WHITE, "Você não está trabalhando (/profhelper)");
  211.         new tmp[256];
  212.         new NomeDestino[256];
  213.         new NomeDestinado[256];
  214.         new Float:x, Float:y, Float:z;
  215.         tmp = strtok(cmdtext,idx);
  216.         if(!strlen(tmp)) return SendClientMessage(playerid, COLOR_WHITE, "USO: /trazerhelp [playerid]");
  217.         if(strval(tmp) == INVALID_PLAYER_ID || !IsPlayerConnected(strval(tmp))) return SendClientMessage(playerid, COLOR_WHITE, "Player não conetado!");
  218.         GetPlayerName(strval(tmp), NomeDestino, sizeof(NomeDestino));
  219.         GetPlayerName(playerid, NomeDestinado, sizeof(NomeDestinado));
  220.         new interior = GetPlayerInterior(strval(tmp));
  221.         GetPlayerPos(playerid, x, y, z);
  222.         SetPlayerPos(strval(tmp), x+0.5, y, z);
  223.         SetPlayerInterior(strval(tmp), interior);
  224.         format(string,sizeof(string),"HELPER CMD: O Helper %s se trouce você até ele!",NomeDestinado);
  225.         SendClientMessage(playerid, COLOR_YELLOW,string);
  226.         format(string,sizeof(string),"HELPER CMD: Você trouce %s até você",NomeDestino);
  227.         SendClientMessage(playerid, COLOR_YELLOW,string);
  228.         return 1;
  229.     }
  230. //-------------------------------------------
  231.     if(strcmp(cmd, "/avh", true) == 0 || strcmp(cmd, "/avisohelper", true) == 0)
  232.     {
  233.         if(!IsPlayerConnected(playerid)) return SendClientMessage(playerid, COLOR_WHITE, "Você não está conetado!");
  234.         if(LevelInfo[playerid][Helper] < 1) return SendClientMessage(playerid, COLOR_WHITE, "Você não é um Helper ou não tem level suficiente!");
  235.         if(HelperTrabalhando[playerid] < 1) return SendClientMessage(playerid, COLOR_WHITE, "Você não está trabalhando (/profhelper)");
  236.         GetPlayerName(playerid, nome, sizeof(nome));
  237.         new length = strlen(cmdtext);
  238.         while ((idx < length) && (cmdtext[idx] <= ' '))
  239.         {
  240.             idx++;
  241.         }
  242.         new offset = idx;
  243.         new result[64];
  244.         while ((idx < length) && ((idx - offset) < (sizeof(result) - 1)))
  245.         {
  246.             result[idx - offset] = cmdtext[idx];
  247.             idx++;
  248.         }
  249.         result[idx - offset] = EOS;
  250.         if(!strlen(result))
  251.         {
  252.             SendClientMessage(playerid, COLOR_WHITE, "USO: /avh [texto]");
  253.             return 1;
  254.         }
  255.         SendClientMessage(playerid, COLOR_WHITE, "|_________Helper Avisa__________|");
  256.         format(string,sizeof(string),"Helper %s: %s",nome, (result));
  257.         SendClientMessageToAll(COLOR_HELPER,string);
  258.         return 1;
  259.     }
  260. //-------------------------------------------
  261.     if(strcmp(cmd, "/ajudahelper", true) == 0 || strcmp(cmd, "/ah", true) == 0)
  262.     {
  263.             if(LevelInfo[playerid][Helper] < 0) return SendClientMessage(playerid, COLOR_WARNING, "Você não é um Helper!");
  264.             if(HelperTrabalhando[playerid] < 1) return SendClientMessage(playerid, COLOR_WHITE, "Você não está trabalhando (/trabalhar)");
  265.             if(LevelInfo[playerid][Helper] == 1)
  266.             {
  267.                 SendClientMessage(playerid, COLOR_GREEN, "=&=&=&=&=&=&=&=&=&==Ajuda Helper==&=&=&=&=&=&=&=&=&=&=&");
  268.                 SendClientMessage(playerid, COLOR_BLUE, "[Helper] /irhelp | /trazerhelp | /profhelper | /avh");
  269.                 SendClientMessage(playerid, COLOR_BLUE, "[Helper] /helper | /darhelper");
  270.                 SendClientMessage(playerid, COLOR_GREEN, "=&=&=&=&=&=&=&=&=&=&=&=&=&=&=&=&=&=&=&=&=&=&=&=&=&=&=&");
  271.             }
  272.             return 1;
  273.     }
  274. //-------------------------------------------
  275.     if(strcmp(cmd, "/profhelper", true) == 0)
  276.     {
  277.             if(LevelInfo[playerid][Helper] < 0) return SendClientMessage(playerid, COLOR_WARNING, "Você não é um Helper!");
  278.             if(HelperTrabalhando[playerid] == 1)
  279.             {
  280.                 SendClientMessage(playerid, COLOR_LIGHTBLUE, "Você entrou em modo de jogo e seus comandos administrativos foram-lhe retirados.");
  281.                 HelperTrabalhando[playerid] = 0;
  282.                 SetPlayerHealth(playerid, 100);
  283.                 SetPlayerArmour(playerid, 0);
  284.                 return 1;
  285.             }
  286.             if(HelperTrabalhando[playerid] == 0)
  287.             {
  288.                 SendClientMessage(playerid, COLOR_LIGHTBLUE, "Você entrou em modo de admin e seus comandos administrativos foram-lhe devolvidos.");
  289.                 HelperTrabalhando[playerid] = 1;
  290.                 SetPlayerHealth(playerid, 9999999);
  291.                 SetPlayerArmour(playerid, 9999999);
  292.                 return 1;
  293.             }
  294.             return 1;
  295.     }
  296. //=========================[COMANDOS ADMIN]=====================================
  297.     if(strcmp(cmd, "/kick", true) == 0)
  298.     {
  299.         if(!IsPlayerConnected(playerid)) return SendClientMessage(playerid, COLOR_WHITE, "Você não está conetado!");
  300.         if(LevelInfo[playerid][Admin] < 1) return SendClientMessage(playerid, COLOR_WHITE, "Você não é um Admin ou não tem level suficiente!");
  301.         if(AdminTrabalhando[playerid] < 1) return SendClientMessage(playerid, COLOR_WHITE, "Você não está trabalhando (/trabalhar)");
  302.         new tmp[256];
  303.         new NomeKickado[256];
  304.         new NomeKickador[256];
  305.         tmp = strtok(cmdtext,idx);
  306.         if(!strlen(tmp)) return SendClientMessage(playerid, COLOR_WHITE, "USO: /kick [playerid] [motivo]");
  307.         if(strval(tmp) == INVALID_PLAYER_ID || !IsPlayerConnected(strval(tmp))) return SendClientMessage(playerid, COLOR_WHITE, "Player não conetado!");
  308.         GetPlayerName(strval(tmp), NomeKickado, sizeof(NomeKickado));
  309.         GetPlayerName(playerid, NomeKickador, sizeof(NomeKickador));
  310.         new length = strlen(cmdtext);
  311.         while ((idx < length) && (cmdtext[idx] <= ' '))
  312.         {
  313.             idx++;
  314.         }
  315.         new offset = idx;
  316.         new result[64];
  317.         while ((idx < length) && ((idx - offset) < (sizeof(result) - 1)))
  318.         {
  319.             result[idx - offset] = cmdtext[idx];
  320.             idx++;
  321.         }
  322.         result[idx - offset] = EOS;
  323.         if(!strlen(result))
  324.         {
  325.             SendClientMessage(playerid, COLOR_WHITE, "USO: /kick [playerid] [motivo]");
  326.             return 1;
  327.         }
  328.         format(string,sizeof(string),"ADMIN CMD: O player %s fez alguma merda e foi kickado pelo Admin %s. || Motivo: %s.",NomeKickado, NomeKickador, (result));
  329.         SendClientMessageToAll(COLOR_WARNING,string);
  330.         Kick(strval(tmp));
  331.         return 1;
  332.     }
  333. //-------------------------------------------
  334.     if(strcmp(cmd, "/ban", true) == 0)
  335.     {
  336.         if(!IsPlayerConnected(playerid)) return SendClientMessage(playerid, COLOR_WHITE, "Você não está conetado!");
  337.         if(LevelInfo[playerid][Admin] < 3) return SendClientMessage(playerid, COLOR_WHITE, "Você não é um Admin ou não tem level suficiente!");
  338.         if(AdminTrabalhando[playerid] < 1) return SendClientMessage(playerid, COLOR_WHITE, "Você não está trabalhando (/trabalhar)");
  339.         new tmp[256];
  340.         new NomeBanidoIP[256];
  341.         new NomeBanidorIP[256];
  342.         tmp = strtok(cmdtext,idx);
  343.         if(!strlen(tmp)) return SendClientMessage(playerid, COLOR_WHITE, "USO: /ban [playerid] [motivo]");
  344.         if(strval(tmp) == INVALID_PLAYER_ID || !IsPlayerConnected(strval(tmp))) return SendClientMessage(playerid, COLOR_WHITE, "Player não conetado!");
  345.         GetPlayerName(strval(tmp), NomeBanidoIP, sizeof(NomeBanidoIP));
  346.         GetPlayerName(playerid, NomeBanidorIP, sizeof(NomeBanidorIP));
  347.         new length = strlen(cmdtext);
  348.         while ((idx < length) && (cmdtext[idx] <= ' '))
  349.         {
  350.             idx++;
  351.         }
  352.         new offset = idx;
  353.         new result[64];
  354.         while ((idx < length) && ((idx - offset) < (sizeof(result) - 1)))
  355.         {
  356.             result[idx - offset] = cmdtext[idx];
  357.             idx++;
  358.         }
  359.         result[idx - offset] = EOS;
  360.         if(!strlen(result))
  361.         {
  362.             SendClientMessage(playerid, COLOR_WHITE, "USO: /ban [playerid] [motivo]");
  363.             return 1;
  364.         }
  365.         format(string,sizeof(string),"ADMIN CMD: O player %s fez alguma merda e foi banido pelo Admin %s. || Motivo: %s || Modo: [IP]",NomeBanidoIP, NomeBanidorIP, (result));
  366.         SendClientMessageToAll(COLOR_WARNING,string);
  367.         GameTextForPlayer(strval(tmp), "~r~BANIDO!", 60000, 6);
  368.         Ban(strval(tmp));
  369.         return 1;
  370.     }
  371. //-------------------------------------------
  372.     if(strcmp(cmd, "/avisar", true) == 0)
  373.     {
  374.         if(!IsPlayerConnected(playerid)) return SendClientMessage(playerid, COLOR_WHITE, "Você não está conetado!");
  375.         if(LevelInfo[playerid][Admin] < 1) return SendClientMessage(playerid, COLOR_WHITE, "Você não é um Admin ou não tem level suficiente!");
  376.         if(AdminTrabalhando[playerid] < 1) return SendClientMessage(playerid, COLOR_WHITE, "Você não está trabalhando (/trabalhar)");
  377.         new tmp[256];
  378.         new NomeAvisado[256];
  379.         new NomeAvisador[256];
  380.         tmp = strtok(cmdtext,idx);
  381.         if(!strlen(tmp)) return SendClientMessage(playerid, COLOR_WHITE, "USO: /avisar [playerid] [motivo]");
  382.         if(strval(tmp) == INVALID_PLAYER_ID || !IsPlayerConnected(strval(tmp))) return SendClientMessage(playerid, COLOR_WHITE, "Player não conetado!");
  383.         GetPlayerName(strval(tmp), NomeAvisado, sizeof(NomeAvisado));
  384.         GetPlayerName(playerid, NomeAvisador, sizeof(NomeAvisador));
  385.         new length = strlen(cmdtext);
  386.         while ((idx < length) && (cmdtext[idx] <= ' '))
  387.         {
  388.             idx++;
  389.         }
  390.         new offset = idx;
  391.         new result[64];
  392.         while ((idx < length) && ((idx - offset) < (sizeof(result) - 1)))
  393.         {
  394.             result[idx - offset] = cmdtext[idx];
  395.             idx++;
  396.         }
  397.         result[idx - offset] = EOS;
  398.         if(!strlen(result))
  399.         {
  400.             SendClientMessage(playerid, COLOR_WHITE, "USO: /avisar [playerid] [motivo]");
  401.             return 1;
  402.         }
  403.         if(LevelInfo[playerid][Avisos] != 3)
  404.         {
  405.             format(string,sizeof(string),"ADMIN CMD: O player %s foi avisado pelo Admin %s. || Motivo: %s [Mais 3 é BAN!]",NomeAvisado, NomeAvisador, (result));
  406.             SendClientMessageToAll(COLOR_WARNING,string);
  407.             LevelInfo[playerid][Avisos]++;
  408.             return 1;
  409.         }
  410.         if(LevelInfo[playerid][Avisos] == 3)
  411.         {
  412.             format(string,sizeof(string),"ADMIN CMD: O player %s foi avisado 3 vezes pelo Admin %s e foi banido. || Motivo: %s",NomeAvisado, NomeAvisador, (result));
  413.             SendClientMessageToAll(COLOR_WARNING,string);
  414.             GameTextForPlayer(strval(tmp), "~r~BANIDO!", 60000, 6);
  415.             Ban(strval(tmp));
  416.         }
  417.         return 1;
  418.     }
  419. //-------------------------------------------
  420.     if(strcmp(cmd, "/admin", true) == 0 || strcmp(cmd, "/a", true) == 0)
  421.     {
  422.         if(!IsPlayerConnected(playerid)) return SendClientMessage(playerid, COLOR_WHITE, "Você não está conetado!");
  423.         if(LevelInfo[playerid][Admin] < 1) return SendClientMessage(playerid, COLOR_WHITE, "Você não é um Admin ou não tem level suficiente!");
  424.         if(AdminTrabalhando[playerid] < 1) return SendClientMessage(playerid, COLOR_WHITE, "Você não está trabalhando (/trabalhar)");
  425.         GetPlayerName(playerid, nome, sizeof(nome));
  426.         new length = strlen(cmdtext);
  427.         while ((idx < length) && (cmdtext[idx] <= ' '))
  428.         {
  429.             idx++;
  430.         }
  431.         new offset = idx;
  432.         new result[64];
  433.         while ((idx < length) && ((idx - offset) < (sizeof(result) - 1)))
  434.         {
  435.             result[idx - offset] = cmdtext[idx];
  436.             idx++;
  437.         }
  438.         result[idx - offset] = EOS;
  439.         if(!strlen(result))
  440.         {
  441.             SendClientMessage(playerid, COLOR_WHITE, "USO: /admin [TEXTO]");
  442.             return 1;
  443.         }
  444.         new atext[64];
  445.         if(LevelInfo[playerid][Admin] == 1) { atext = "Moderador"; }
  446.         else if(LevelInfo[playerid][Admin] == 2) { atext = "Fixo"; }
  447.         else if(LevelInfo[playerid][Admin] == 3) { atext = "Master"; }
  448.         else if(LevelInfo[playerid][Admin] == 4) { atext = "Scripter/Mapper"; }
  449.         else if(LevelInfo[playerid][Admin] == 5) { atext = "Dono"; }
  450.         else { atext = ""; }
  451.         format(string,sizeof(string),"Admin %s %s: %s",atext, nome, result);
  452.         SendMessageToAdmins(COLOR_ADMIN,string);
  453.         return 1;
  454.     }
  455. //-------------------------------------------
  456.     if(strcmp(cmd, "/daradmin", true) == 0)
  457.     {
  458.         if(LevelInfo[playerid][Admin] < 5) return SendClientMessage(playerid, COLOR_WHITE, "Você não é um Admin ou não tem level suficiente!");
  459.         if(AdminTrabalhando[playerid] < 1) return SendClientMessage(playerid, COLOR_WHITE, "Você não está trabalhando (/trabalhar)");
  460.         if(!IsPlayerConnected(playerid)) return SendClientMessage(playerid, COLOR_WHITE, "Você não está conetado!");
  461.         new tmp[256];
  462.         new NomeDado[256];
  463.         new NomeDado1[256];
  464.         tmp = strtok(cmdtext, idx);
  465.         if(!strlen(tmp)) return SendClientMessage(playerid, COLOR_WHITE, "USE: /daradmin [id] [Nivel]");
  466.         new para1;
  467.         new level;
  468.         para1 = ReturnUser(tmp);
  469.         tmp = strtok(cmdtext, idx);
  470.         if(!strlen(tmp)) return SendClientMessage(playerid, COLOR_WHITE, "USE: /daradmin [id] [Nivel]");
  471.         level = strval(tmp);
  472.         GetPlayerName(para1, NomeDado, sizeof(NomeDado));
  473.         GetPlayerName(playerid, NomeDado1, sizeof(NomeDado1));
  474.         if(para1 == INVALID_PLAYER_ID) return SendClientMessage(playerid, COLOR_WHITE, "Player não conetado!");
  475.         if(level == 0) return SendClientMessage(playerid, COLOR_WHITE, "Para tirar admin a alguem use: /tiraradmin");
  476.         if(level > 5) return SendClientMessage(playerid, COLOR_WHITE, "Você não pode dar admin level 5+ a ninguem!");
  477.         format(string, sizeof string, "Você deu Admin Nível %d para %s", level, NomeDado);
  478.         SendClientMessage(playerid, COLOR_LIGHTBLUE, string);
  479.         format(string, sizeof string, "Você ganhou Admin Nível %d do admin %s", level, NomeDado1);
  480.         SendClientMessage(para1, COLOR_LIGHTBLUE, string);
  481.         LevelInfo[para1][Admin] = level;
  482.         return 1;
  483.     }
  484. //-------------------------------------------
  485.     if(strcmp(cmd, "/dargrana", true) == 0)
  486.     {
  487.         if(LevelInfo[playerid][Admin] < 3) return SendClientMessage(playerid, COLOR_WHITE, "Você não é um Admin ou não tem level suficiente!");
  488.         if(AdminTrabalhando[playerid] < 1) return SendClientMessage(playerid, COLOR_WHITE, "Você não está trabalhando (/trabalhar)");
  489.         if(!IsPlayerConnected(playerid)) return SendClientMessage(playerid, COLOR_WHITE, "Você não está conetado!");
  490.         new tmp[256];
  491.         new NomeDado[256];
  492.         new NomeDado1[256];
  493.         tmp = strtok(cmdtext, idx);
  494.         if(!strlen(tmp)) return SendClientMessage(playerid, COLOR_WHITE, "USE: /dargrana [id] [quantia]");
  495.         new para1;
  496.         new quantia;
  497.         para1 = ReturnUser(tmp);
  498.         tmp = strtok(cmdtext, idx);
  499.         if(!strlen(tmp)) return SendClientMessage(playerid, COLOR_WHITE, "USE: /dargrana [id] [quantia]");
  500.         quantia = strval(tmp);
  501.         GetPlayerName(para1, NomeDado, sizeof(NomeDado));
  502.         GetPlayerName(playerid, NomeDado1, sizeof(NomeDado1));
  503.         if(para1 == INVALID_PLAYER_ID) return SendClientMessage(playerid, COLOR_WHITE, "Player não conetado!");
  504.         format(string, sizeof string, "Você deu %dR$ para %s", quantia, NomeDado);
  505.         SendClientMessage(playerid, COLOR_LIGHTBLUE, string);
  506.         format(string, sizeof string, "Você ganhou %dR$ do admin %s", quantia, NomeDado1);
  507.         SendClientMessage(para1, COLOR_LIGHTBLUE, string);
  508.         GivePlayerMoney(para1, quantia);
  509.         return 1;
  510.     }
  511. //-------------------------------------------
  512.     if(strcmp(cmd, "/darlevel", true) == 0)
  513.     {
  514.         if(LevelInfo[playerid][Admin] < 3) return SendClientMessage(playerid, COLOR_WHITE, "Você não é um Admin ou não tem level suficiente!");
  515.         if(AdminTrabalhando[playerid] < 1) return SendClientMessage(playerid, COLOR_WHITE, "Você não está trabalhando (/trabalhar)");
  516.         if(!IsPlayerConnected(playerid)) return SendClientMessage(playerid, COLOR_WHITE, "Você não está conetado!");
  517.         new tmp[256];
  518.         new NomeDado[256];
  519.         new NomeDado1[256];
  520.         tmp = strtok(cmdtext, idx);
  521.         if(!strlen(tmp)) return SendClientMessage(playerid, COLOR_WHITE, "USE: /darlevel [id] [quantia]");
  522.         new para1;
  523.         new level;
  524.         para1 = ReturnUser(tmp);
  525.         tmp = strtok(cmdtext, idx);
  526.         if(!strlen(tmp)) return SendClientMessage(playerid, COLOR_WHITE, "USE: /darlevel [id] [quantia]");
  527.         level = strval(tmp);
  528.         GetPlayerName(para1, NomeDado, sizeof(NomeDado));
  529.         GetPlayerName(playerid, NomeDado1, sizeof(NomeDado1));
  530.         if(para1 == INVALID_PLAYER_ID) return SendClientMessage(playerid, COLOR_WHITE, "Player não conetado!");
  531.         format(string, sizeof string, "Você deu %d niveis para %s", level, NomeDado);
  532.         SendClientMessage(playerid, COLOR_LIGHTBLUE, string);
  533.         format(string, sizeof string, "Você ganhou %d niveis do admin %s", level, NomeDado1);
  534.         SendClientMessage(para1, COLOR_LIGHTBLUE, string);
  535.         SetPlayerScore(para1, level);
  536.         return 1;
  537.     }
  538. //-------------------------------------------
  539.     if(strcmp(cmd, "/tiraradmin", true) == 0)
  540.     {
  541.         if(LevelInfo[playerid][Admin] < 5) return SendClientMessage(playerid, COLOR_WHITE, "Você não é um Admin ou não tem level suficiente!");
  542.         if(AdminTrabalhando[playerid] < 1) return SendClientMessage(playerid, COLOR_WHITE, "Você não está trabalhando (/trabalhar)");
  543.         if(!IsPlayerConnected(playerid)) return SendClientMessage(playerid, COLOR_WHITE, "Você não está conetado!");
  544.         new NomeDado[256];
  545.         new tmp[256];
  546.         new NomeDado1[256];
  547.         tmp = strtok(cmdtext, idx);
  548.         if(!strlen(tmp)) return SendClientMessage(playerid, COLOR_WHITE, "USO: /tiraradmin [playerid]");
  549.         if(strval(tmp) == INVALID_PLAYER_ID || !IsPlayerConnected(strval(tmp))) return SendClientMessage(playerid, COLOR_WHITE, "Player não conetado!");
  550.         GetPlayerName(strval(tmp), NomeDado, sizeof(NomeDado));
  551.         GetPlayerName(playerid, NomeDado1, sizeof(NomeDado1));
  552.         LevelInfo[strval(tmp)][Admin] = 0;
  553.         format(string, sizeof(string), "Você tirou o cargo de admin a %s.", NomeDado);
  554.         SendClientMessage(strval(tmp), COLOR_LIGHTBLUE, string);
  555.         format(string, sizeof(string), "Você foi tirado de admin pelo Admin %s.",NomeDado1);
  556.         SendClientMessage(playerid, COLOR_LIGHTBLUE, string);
  557.         return 1;
  558.     }
  559. //-------------------------------------------
  560.     if(strcmp(cmd, "/gmx", true) == 0)
  561.     {
  562.         if(!IsPlayerConnected(playerid)) return SendClientMessage(playerid, COLOR_WHITE, "Você não está conetado!");
  563.         if(LevelInfo[playerid][Admin] < 4) return SendClientMessage(playerid, COLOR_WHITE, "Você não é um Admin ou não tem level suficiente!");
  564.         if(AdminTrabalhando[playerid] < 1) return SendClientMessage(playerid, COLOR_WHITE, "Você não está trabalhando (/trabalhar)");
  565.         SendRconCommand("gmx");
  566.         return 1;
  567.     }
  568. //-------------------------------------------
  569.     if(strcmp(cmd, "/ir", true) == 0)
  570.     {
  571.         if(!IsPlayerConnected(playerid)) return SendClientMessage(playerid, COLOR_WHITE, "Você não está conetado!");
  572.         if(LevelInfo[playerid][Admin] < 1) return SendClientMessage(playerid, COLOR_WHITE, "Você não é um Admin ou não tem level suficiente!");
  573.         if(AdminTrabalhando[playerid] < 1) return SendClientMessage(playerid, COLOR_WHITE, "Você não está trabalhando (/trabalhar)");
  574.         new tmp[256];
  575.         new NomeDestino[256];
  576.         new NomeDestinado[256];
  577.         new Float:x, Float:y, Float:z;
  578.         tmp = strtok(cmdtext,idx);
  579.         if(!strlen(tmp)) return SendClientMessage(playerid, COLOR_WHITE, "USO: /ir [playerid]");
  580.         if(strval(tmp) == INVALID_PLAYER_ID || !IsPlayerConnected(strval(tmp))) return SendClientMessage(playerid, COLOR_WHITE, "Player não conetado!");
  581.         GetPlayerName(strval(tmp), NomeDestino, sizeof(NomeDestino));
  582.         GetPlayerName(playerid, NomeDestinado, sizeof(NomeDestinado));
  583.         new interior = GetPlayerInterior(strval(tmp));
  584.         GetPlayerPos(strval(tmp), x, y, z);
  585.         SetPlayerPos(playerid, x+0.5, y, z);
  586.         SetPlayerInterior(playerid, interior);
  587.         format(string,sizeof(string),"ADMIN CMD: O Admin %s se teleportou até você!",NomeDestinado);
  588.         SendClientMessage(playerid, COLOR_YELLOW,string);
  589.         format(string,sizeof(string),"ADMIN CMD: Você se teleportou ao player %s",NomeDestino);
  590.         SendClientMessage(playerid, COLOR_YELLOW,string);
  591.         return 1;
  592.     }
  593. //-------------------------------------------
  594.     if(strcmp(cmd, "/trazer", true) == 0)
  595.     {
  596.         if(!IsPlayerConnected(playerid)) return SendClientMessage(playerid, COLOR_WHITE, "Você não está conetado!");
  597.         if(LevelInfo[playerid][Admin] < 1) return SendClientMessage(playerid, COLOR_WHITE, "Você não é um Admin ou não tem level suficiente!");
  598.         if(AdminTrabalhando[playerid] < 1) return SendClientMessage(playerid, COLOR_WHITE, "Você não está trabalhando (/trabalhar)");
  599.         new tmp[256];
  600.         new NomeDestino[256];
  601.         new NomeDestinado[256];
  602.         new Float:x, Float:y, Float:z;
  603.         tmp = strtok(cmdtext,idx);
  604.         if(!strlen(tmp)) return SendClientMessage(playerid, COLOR_WHITE, "USO: /trazer [playerid]");
  605.         if(strval(tmp) == INVALID_PLAYER_ID || !IsPlayerConnected(strval(tmp))) return SendClientMessage(playerid, COLOR_WHITE, "Player não conetado!");
  606.         GetPlayerName(strval(tmp), NomeDestino, sizeof(NomeDestino));
  607.         GetPlayerName(playerid, NomeDestinado, sizeof(NomeDestinado));
  608.         new interior = GetPlayerInterior(strval(tmp));
  609.         GetPlayerPos(playerid, x, y, z);
  610.         SetPlayerPos(strval(tmp), x+0.5, y, z);
  611.         SetPlayerInterior(strval(tmp), interior);
  612.         format(string,sizeof(string),"ADMIN CMD: O Admin %s se trouce você até ele!",NomeDestinado);
  613.         SendClientMessage(playerid, COLOR_YELLOW,string);
  614.         format(string,sizeof(string),"ADMIN CMD: Você trouce %s até você",NomeDestino);
  615.         SendClientMessage(playerid, COLOR_YELLOW,string);
  616.         return 1;
  617.     }
  618. //-------------------------------------------
  619.     if(strcmp(cmd, "/av", true) == 0 || strcmp(cmd, "/aviso", true) == 0)
  620.     {
  621.         if(!IsPlayerConnected(playerid)) return SendClientMessage(playerid, COLOR_WHITE, "Você não está conetado!");
  622.         if(LevelInfo[playerid][Admin] < 1) return SendClientMessage(playerid, COLOR_WHITE, "Você não é um Admin ou não tem level suficiente!");
  623.         if(AdminTrabalhando[playerid] < 1) return SendClientMessage(playerid, COLOR_WHITE, "Você não está trabalhando (/trabalhar)");
  624.         GetPlayerName(playerid, nome, sizeof(nome));
  625.         new length = strlen(cmdtext);
  626.         while ((idx < length) && (cmdtext[idx] <= ' '))
  627.         {
  628.             idx++;
  629.         }
  630.         new offset = idx;
  631.         new result[64];
  632.         while ((idx < length) && ((idx - offset) < (sizeof(result) - 1)))
  633.         {
  634.             result[idx - offset] = cmdtext[idx];
  635.             idx++;
  636.         }
  637.         result[idx - offset] = EOS;
  638.         if(!strlen(result))
  639.         {
  640.             SendClientMessage(playerid, COLOR_WHITE, "USO: /av [texto]");
  641.             return 1;
  642.         }
  643.         SendClientMessage(playerid, COLOR_WHITE, "|_________Admin Avisa__________|");
  644.         format(string,sizeof(string),"Admin %s: %s",nome, (result));
  645.         SendClientMessageToAll(COLOR_DBLUE,string);
  646.         return 1;
  647.     }
  648. //-------------------------------------------
  649.     if(strcmp(cmd, "/ajudaadmin", true) == 0 || strcmp(cmd, "/aa", true) == 0)
  650.     {
  651.             if(!IsPlayerConnected(playerid)) return SendClientMessage(playerid, COLOR_WHITE, "Você não está conetado!");
  652.             if(LevelInfo[playerid][Admin] < 0) return SendClientMessage(playerid, COLOR_WARNING, "Você não é um Admin!");
  653.             if(AdminTrabalhando[playerid] < 1) return SendClientMessage(playerid, COLOR_WHITE, "Você não está trabalhando (/trabalhar)");
  654.             if(LevelInfo[playerid][Admin] == 1)
  655.             {
  656.                 SendClientMessage(playerid, COLOR_GREEN, "=&=&=&=&=&=&=&=&=&==Ajuda Admin==&=&=&=&=&=&=&=&=&=&=&");
  657.                 SendClientMessage(playerid, COLOR_BLUE, "[Admin 1] /kick | /ir | /trazer | /avisar | /a");
  658.                 SendClientMessage(playerid, COLOR_BLUE, "[Admin 1] /trabalhar | /av");
  659.                 SendClientMessage(playerid, COLOR_GREEN, "=&=&=&=&=&=&=&=&=&=&=&=&=&=&=&=&=&=&=&=&=&=&=&=&=&=&=&");
  660.             }
  661.             if(LevelInfo[playerid][Admin] == 2)
  662.             {
  663.                 SendClientMessage(playerid, COLOR_GREEN, "=&=&=&=&=&=&=&=&=&==Ajuda Admin==&=&=&=&=&=&=&=&=&=&=&");
  664.                 SendClientMessage(playerid, COLOR_BLUE, "[Admin 2] /kick | /ban | /ir | /trazer | /avisar | /a");
  665.                 SendClientMessage(playerid, COLOR_BLUE, "[Admin 2] /trabahar | /av");
  666.                 SendClientMessage(playerid, COLOR_GREEN, "=&=&=&=&=&=&=&=&=&=&=&=&=&=&=&=&=&=&=&=&=&=&=&=&=&=&=&");
  667.             }
  668.             if(LevelInfo[playerid][Admin] == 3)
  669.             {
  670.                 SendClientMessage(playerid, COLOR_GREEN, "=&=&=&=&=&=&=&=&=&==Ajuda Admin==&=&=&=&=&=&=&=&=&=&=&");
  671.                 SendClientMessage(playerid, COLOR_BLUE, "[Admin 3] /kick | /ban | /banip | /ir | /trazer | /av");
  672.                 SendClientMessage(playerid, COLOR_BLUE, "[Admin 3] /avisar | /dargold | /darresets | /dargrana");
  673.                 SendClientMessage(playerid, COLOR_BLUE, "[Admin 3] /darlevel | /darrespeito | /a | /trabalhar");
  674.                 SendClientMessage(playerid, COLOR_GREEN, "=&=&=&=&=&=&=&=&=&=&=&=&=&=&=&=&=&=&=&=&=&=&=&=&=&=&=&");
  675.             }
  676.             if(LevelInfo[playerid][Admin] == 4)
  677.             {
  678.                 SendClientMessage(playerid, COLOR_GREEN, "=&=&=&=&=&=&=&=&=&==Ajuda Admin==&=&=&=&=&=&=&=&=&=&=&");
  679.                 SendClientMessage(playerid, COLOR_BLUE, "[Admin 4] /kick | /ban | /banip | /gmx | /ir | /trazer ");
  680.                 SendClientMessage(playerid, COLOR_BLUE, "[Admin 4] /ir | /trazer | /avisar | /dargold | /darresets");
  681.                 SendClientMessage(playerid, COLOR_BLUE, "[Admin 4] /dargrana | /darlevel | /darrespeito | /a");
  682.                 SendClientMessage(playerid, COLOR_BLUE, "[Admin 4] /trabalhar | /av");
  683.                 SendClientMessage(playerid, COLOR_GREEN, "=&=&=&=&=&=&=&=&=&=&=&=&=&=&=&=&=&=&=&=&=&=&=&=&=&=&=&");
  684.             }
  685.             if(LevelInfo[playerid][Admin] == 5)
  686.             {
  687.                 SendClientMessage(playerid, COLOR_GREEN, "=&=&=&=&=&=&=&=&=&==Ajuda Admin==&=&=&=&=&=&=&=&=&=&=&");
  688.                 SendClientMessage(playerid, COLOR_BLUE, "[Admin 5] /kick | /ban | /banip | /gmx | /ir | /trazer");
  689.                 SendClientMessage(playerid, COLOR_BLUE, "[Admin 5] /daradmin | /tiraradmin | /darvip | /dargold");
  690.                 SendClientMessage(playerid, COLOR_BLUE, "[Admin 5] /darresets | /dargrana | /darrespeito | /a");
  691.                 SendClientMessage(playerid, COLOR_BLUE, "[Admin 5] /darlevel | /trabalhar | /avisar | /av");
  692.                 SendClientMessage(playerid, COLOR_GREEN, "=&=&=&=&=&=&=&=&=&=&=&=&=&=&=&=&=&=&=&=&=&=&=&=&=&=&=&");
  693.             }
  694.             return 1;
  695.     }
  696. //-------------------------------------------
  697.     if(strcmp(cmd, "/trabalhar", true) == 0)
  698.     {
  699.             if(!IsPlayerConnected(playerid)) return SendClientMessage(playerid, COLOR_WHITE, "Você não está conetado!");
  700.             if(LevelInfo[playerid][Admin] < 0) return SendClientMessage(playerid, COLOR_WARNING, "Você não é um Admin!");
  701.             if(AdminTrabalhando[playerid] == 1)
  702.             {
  703.                 SendClientMessage(playerid, COLOR_LIGHTBLUE, "Você entrou em modo de jogo e seus comandos administrativos foram-lhe retirados.");
  704.                 AdminTrabalhando[playerid] = 0;
  705.                 SetPlayerHealth(playerid, 100);
  706.                 SetPlayerArmour(playerid, 0);
  707.                 return 1;
  708.             }
  709.             if(AdminTrabalhando[playerid] == 0)
  710.             {
  711.                 SendClientMessage(playerid, COLOR_LIGHTBLUE, "Você entrou em modo de admin e seus comandos administrativos foram-lhe devolvidos.");
  712.                 AdminTrabalhando[playerid] = 1;
  713.                 SetPlayerHealth(playerid, 9999999);
  714.                 SetPlayerArmour(playerid, 9999999);
  715.                 return 1;
  716.             }
  717.             return 1;
  718.     }
  719. //-------------------------------------------
  720.     if(strcmp(cmd, "/afk", true) == 0)
  721.     {
  722.             if(!IsPlayerConnected(playerid)) return SendClientMessage(playerid, COLOR_WHITE, "Você não está conetado!");
  723.             if(LevelInfo[playerid][Admin] < 0) return SendClientMessage(playerid, COLOR_WARNING, "Você não é um Admin!");
  724.             if(AdminTrabalhando[playerid] < 1) return SendClientMessage(playerid, COLOR_WHITE, "Você não está trabalhando (/trabalhar)");
  725.             if(AdminTrabalhando[playerid] == 2)
  726.             {
  727.                 SendClientMessage(playerid, COLOR_LIGHTBLUE, "Você voltou!");
  728.                 AdminTrabalhando[playerid] = 1;
  729.                 SetPlayerHealth(playerid, 100);
  730.                 SetPlayerArmour(playerid, 0);
  731.                 return 1;
  732.             }
  733.             if(AdminTrabalhando[playerid] == 1)
  734.             {
  735.                 SendClientMessage(playerid, COLOR_LIGHTBLUE, "Você está AFK!");
  736.                 AdminTrabalhando[playerid] = 2;
  737.                 SetPlayerHealth(playerid, 9999999);
  738.                 SetPlayerArmour(playerid, 9999999);
  739.                 return 1;
  740.             }
  741.             return 1;
  742.     }
  743. //========================[COMANDOS PLAYER]=====================================
  744.     if(strcmp(cmd, "/reportar", true) == 0)
  745.     {
  746.         if(!IsPlayerConnected(playerid)) return SendClientMessage(playerid, COLOR_WHITE, "Você não está conetado!");
  747.         new tmp[256];
  748.         new NomeReportador[256];
  749.         new NomeReportado[256];
  750.         tmp = strtok(cmdtext,idx);
  751.         if(!strlen(tmp)) return SendClientMessage(playerid, COLOR_WHITE, "USO: /reportar [playerid] [denuncia]");
  752.         if(strval(tmp) == INVALID_PLAYER_ID || !IsPlayerConnected(strval(tmp))) return SendClientMessage(playerid, COLOR_WHITE, "Player não conetado!");
  753.         GetPlayerName(strval(tmp), NomeReportado, sizeof(NomeReportado));
  754.         GetPlayerName(playerid, NomeReportador, sizeof(NomeReportador));
  755.         new length = strlen(cmdtext);
  756.         while ((idx < length) && (cmdtext[idx] <= ' '))
  757.         {
  758.             idx++;
  759.         }
  760.         new offset = idx;
  761.         new result[64];
  762.         while ((idx < length) && ((idx - offset) < (sizeof(result) - 1)))
  763.         {
  764.             result[idx - offset] = cmdtext[idx];
  765.             idx++;
  766.         }
  767.         result[idx - offset] = EOS;
  768.         if(!strlen(result))
  769.         {
  770.             SendClientMessage(playerid, COLOR_WHITE, "USO: /reportar [playerid] [denuncia]");
  771.             return 1;
  772.         }
  773.         format(string,sizeof(string),"Reportagem de %s: %s || Reportado: %s",NomeReportador, (result), NomeReportado);
  774.         SendMessageToAdmins(COLOR_YELLOW,string);
  775.         SendClientMessage(playerid, COLOR_LIGHTBLUE, "Reportagem enviada com sucesso!");
  776.         return 1;
  777.     }
  778. //-------------------------------------------
  779.     if(strcmp(cmd, "/duvida", true) == 0)
  780.     {
  781.         if(!IsPlayerConnected(playerid)) return SendClientMessage(playerid, COLOR_WHITE, "Você não está conetado!");
  782.         GetPlayerName(playerid, nome, sizeof(nome));
  783.         new length = strlen(cmdtext);
  784.         while ((idx < length) && (cmdtext[idx] <= ' '))
  785.         {
  786.             idx++;
  787.         }
  788.         new offset = idx;
  789.         new result[64];
  790.         while ((idx < length) && ((idx - offset) < (sizeof(result) - 1)))
  791.         {
  792.             result[idx - offset] = cmdtext[idx];
  793.             idx++;
  794.         }
  795.         result[idx - offset] = EOS;
  796.         if(!strlen(result))
  797.         {
  798.             SendClientMessage(playerid, COLOR_WHITE, "USO: /duvida [duvida]");
  799.             return 1;
  800.         }
  801.         format(string,sizeof(string),"Duvida de %s: %s",nome, (result));
  802.         SendMessageToHelper(COLOR_YELLOW,string);
  803.         SendClientMessage(playerid, COLOR_LIGHTBLUE, "Duvida enviada com sucesso!");
  804.         return 1;
  805.     }
  806. //-------------------------------------------
  807.     if(strcmp(cmd, "/admins", true) == 0)
  808.     {
  809.         if(IsPlayerConnected(playerid))
  810.         {
  811.             SendClientMessage(playerid, COLOR_ADMIN, "Admins Online:");
  812.             for(new i = 0; i < MAX_PLAYERS; i++)
  813.             {
  814.                 if(IsPlayerConnected(i))
  815.                 {
  816.                 if(AdminTrabalhando[playerid] == 1)
  817.                 {
  818.                     if(LevelInfo[i][Admin] == 1)
  819.                     {
  820.                         GetPlayerName(i, nome, sizeof(nome));
  821.                         format(string, 256, "Admin: %s || Nivel: [Moderador] || Modo: [Admin]", nome);
  822.                         SendClientMessage(playerid, COLOR_WHITE, string);
  823.                     }
  824.                     else if(LevelInfo[i][Admin] == 2)
  825.                     {
  826.                         GetPlayerName(i, nome, sizeof(nome));
  827.                         format(string, 256, "Admin: %s || Nivel: [Admin Fixo] || Modo: [Admin]", nome);
  828.                         SendClientMessage(playerid, COLOR_WHITE, string);
  829.                     }
  830.                     else if(LevelInfo[i][Admin] == 3)
  831.                     {
  832.                         GetPlayerName(i, nome, sizeof(nome));
  833.                         format(string, 256, "Admin: %s || Nivel: [Admin Master] || Modo: [Admin]", nome);
  834.                         SendClientMessage(playerid, COLOR_WHITE, string);
  835.                     }
  836.                     else if(LevelInfo[i][Admin] == 4)
  837.                     {
  838.                         GetPlayerName(i, nome, sizeof(nome));
  839.                         format(string, 256, "Admin: %s || Nivel: [Admin Scripter/Mapper] || Modo: [Admin]", nome);
  840.                         SendClientMessage(playerid, COLOR_WHITE, string);
  841.                     }
  842.                     else if(LevelInfo[i][Admin] == 5)
  843.                     {
  844.                         GetPlayerName(i, nome, sizeof(nome));
  845.                         format(string, 256, "Admin: %s || Nivel: [Admin Dono] || Modo: [Admin]", nome);
  846.                         SendClientMessage(playerid, COLOR_WHITE, string);
  847.                     }
  848.                 }
  849.                 if(AdminTrabalhando[playerid] == 2)
  850.                 {
  851.                     if(LevelInfo[i][Admin] == 1)
  852.                     {
  853.                         GetPlayerName(i, nome, sizeof(nome));
  854.                         format(string, 256, "Admin: %s || Nivel: [Moderador] || Modo: [AFK]", nome);
  855.                         SendClientMessage(playerid, COLOR_WHITE, string);
  856.                     }
  857.                     else if(LevelInfo[i][Admin] == 2)
  858.                     {
  859.                         GetPlayerName(i, nome, sizeof(nome));
  860.                         format(string, 256, "Admin: %s || Nivel: [Admin Fixo] || Modo: [AFK]", nome);
  861.                         SendClientMessage(playerid, COLOR_WHITE, string);
  862.                     }
  863.                     else if(LevelInfo[i][Admin] == 3)
  864.                     {
  865.                         GetPlayerName(i, nome, sizeof(nome));
  866.                         format(string, 256, "Admin: %s || Nivel: [Admin Master] || Modo: [AFK]", nome);
  867.                         SendClientMessage(playerid, COLOR_WHITE, string);
  868.                     }
  869.                     else if(LevelInfo[i][Admin] == 4)
  870.                     {
  871.                         GetPlayerName(i, nome, sizeof(nome));
  872.                         format(string, 256, "Admin: %s || Nivel: [Admin Scripter/Mapper] || Modo: [AFK]", nome);
  873.                         SendClientMessage(playerid, COLOR_WHITE, string);
  874.                     }
  875.                     else if(LevelInfo[i][Admin] == 5)
  876.                     {
  877.                         GetPlayerName(i, nome, sizeof(nome));
  878.                         format(string, 256, "Admin: %s || Nivel: [Admin Dono] || Modo: [AFK]", nome);
  879.                         SendClientMessage(playerid, COLOR_WHITE, string);
  880.                     }
  881.                 }
  882.                 if(AdminTrabalhando[playerid] == 0)
  883.                 {
  884.                     if(LevelInfo[i][Admin] == 1)
  885.                     {
  886.                         GetPlayerName(i, nome, sizeof(nome));
  887.                         format(string, 256, "Admin: %s || Nivel: [Moderador] || Modo: [Jogo]", nome);
  888.                         SendClientMessage(playerid, COLOR_WHITE, string);
  889.                     }
  890.                     else if(LevelInfo[i][Admin] == 2)
  891.                     {
  892.                         GetPlayerName(i, nome, sizeof(nome));
  893.                         format(string, 256, "Admin: %s || Nivel: [Admin Fixo] || Modo: [Jogo]", nome);
  894.                         SendClientMessage(playerid, COLOR_WHITE, string);
  895.                     }
  896.                     else if(LevelInfo[i][Admin] == 3)
  897.                     {
  898.                         GetPlayerName(i, nome, sizeof(nome));
  899.                         format(string, 256, "Admin: %s || Nivel: [Admin Master] || Modo: [Jogo]", nome);
  900.                         SendClientMessage(playerid, COLOR_WHITE, string);
  901.                     }
  902.                     else if(LevelInfo[i][Admin] == 4)
  903.                     {
  904.                         GetPlayerName(i, nome, sizeof(nome));
  905.                         format(string, 256, "Admin: %s || Nivel: [Admin Scripter/Mapper] || Modo: [Jogo]", nome);
  906.                         SendClientMessage(playerid, COLOR_WHITE, string);
  907.                     }
  908.                     else if(LevelInfo[i][Admin] == 5)
  909.                     {
  910.                         GetPlayerName(i, nome, sizeof(nome));
  911.                         format(string, 256, "Admin: %s || Nivel: [Admin Dono] || Modo: [Jogo]", nome);
  912.                         SendClientMessage(playerid, COLOR_WHITE, string);
  913.                     }
  914.                 }
  915.                 }
  916.             }
  917.         }
  918.         return 1;
  919.     }
  920.     if(strcmp(cmd, "/helpers", true) == 0)
  921.     {
  922.         if(IsPlayerConnected(playerid))
  923.         {
  924.             SendClientMessage(playerid, COLOR_HELPER, "Helpers Online:");
  925.             for(new i = 0; i < MAX_PLAYERS; i++)
  926.             {
  927.                 if(IsPlayerConnected(i))
  928.                 {
  929.                 if(HelperTrabalhando[playerid] == 1)
  930.                 {
  931.                     if(LevelInfo[i][Helper] == 1)
  932.                     {
  933.                         GetPlayerName(i, nome, sizeof(nome));
  934.                         format(string, 256, "Helper: %s || Nivel: [%s] || Modo: [Ajuda]", nome, LevelInfo[playerid][Helper]);
  935.                         SendClientMessage(playerid, COLOR_WHITE, string);
  936.                     }
  937.                 }
  938.                 if(HelperTrabalhando[playerid] == 0)
  939.                 {
  940.                     if(LevelInfo[i][Helper] == 1)
  941.                     {
  942.                         GetPlayerName(i, nome, sizeof(nome));
  943.                         format(string, 256, "Helper: %s || Nivel: [%s] || Modo: [Jogo]", nome, LevelInfo[playerid][Helper]);
  944.                         SendClientMessage(playerid, COLOR_WHITE, string);
  945.                     }
  946.                 }
  947.                 }
  948.             }
  949.         }
  950.         return 1;
  951.     }
  952.     return 0;
  953. }
  954.  
  955. public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)
  956. {
  957.     return 1;
  958. }
  959.  
  960. public OnPlayerExitVehicle(playerid, vehicleid)
  961. {
  962.     return 1;
  963. }
  964.  
  965. public OnPlayerStateChange(playerid, newstate, oldstate)
  966. {
  967.     return 1;
  968. }
  969.  
  970. public OnPlayerEnterCheckpoint(playerid)
  971. {
  972.     return 1;
  973. }
  974.  
  975. public OnPlayerLeaveCheckpoint(playerid)
  976. {
  977.     return 1;
  978. }
  979.  
  980. public OnPlayerEnterRaceCheckpoint(playerid)
  981. {
  982.     return 1;
  983. }
  984.  
  985. public OnPlayerLeaveRaceCheckpoint(playerid)
  986. {
  987.     return 1;
  988. }
  989.  
  990. public OnRconCommand(cmd[])
  991. {
  992.     return 1;
  993. }
  994.  
  995. public OnPlayerRequestSpawn(playerid)
  996. {
  997.     return 1;
  998. }
  999.  
  1000. public OnObjectMoved(objectid)
  1001. {
  1002.     return 1;
  1003. }
  1004.  
  1005. public OnPlayerObjectMoved(playerid, objectid)
  1006. {
  1007.     return 1;
  1008. }
  1009.  
  1010. public OnPlayerPickUpPickup(playerid, pickupid)
  1011. {
  1012.     return 1;
  1013. }
  1014.  
  1015. public OnVehicleMod(playerid, vehicleid, componentid)
  1016. {
  1017.     return 1;
  1018. }
  1019.  
  1020. public OnVehiclePaintjob(playerid, vehicleid, paintjobid)
  1021. {
  1022.     return 1;
  1023. }
  1024.  
  1025. public OnVehicleRespray(playerid, vehicleid, color1, color2)
  1026. {
  1027.     return 1;
  1028. }
  1029.  
  1030. public OnPlayerSelectedMenuRow(playerid, row)
  1031. {
  1032.     return 1;
  1033. }
  1034.  
  1035. public OnPlayerExitedMenu(playerid)
  1036. {
  1037.     return 1;
  1038. }
  1039.  
  1040. public OnPlayerInteriorChange(playerid, newinteriorid, oldinteriorid)
  1041. {
  1042.     return 1;
  1043. }
  1044.  
  1045. public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
  1046. {
  1047.     return 1;
  1048. }
  1049.  
  1050. public OnRconLoginAttempt(ip[], password[], success)
  1051. {
  1052.     return 1;
  1053. }
  1054.  
  1055. public OnPlayerUpdate(playerid)
  1056. {
  1057.     return 1;
  1058. }
  1059.  
  1060. public OnPlayerStreamIn(playerid, forplayerid)
  1061. {
  1062.     return 1;
  1063. }
  1064.  
  1065. public OnPlayerStreamOut(playerid, forplayerid)
  1066. {
  1067.     return 1;
  1068. }
  1069.  
  1070. public OnVehicleStreamIn(vehicleid, forplayerid)
  1071. {
  1072.     return 1;
  1073. }
  1074.  
  1075. public OnVehicleStreamOut(vehicleid, forplayerid)
  1076. {
  1077.     return 1;
  1078. }
  1079.  
  1080. public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
  1081. {
  1082.     return 1;
  1083. }
  1084.  
  1085. public OnPlayerClickPlayer(playerid, clickedplayerid, source)
  1086. {
  1087.     return 1;
  1088. }
  1089.  
  1090. strtok(const string[], &index)
  1091. {
  1092.     new length = strlen(string);
  1093.     while ((index < length) && (string[index] <= ' '))
  1094.     {
  1095.         index++;
  1096.     }
  1097.     new offset = index;
  1098.     new result[20];
  1099.     while ((index < length) && (string[index] > ' ') && ((index - offset) < (sizeof(result) - 1)))
  1100.     {
  1101.         result[index - offset] = string[index];
  1102.         index++;
  1103.     }
  1104.     result[index - offset] = EOS;
  1105.     return result;
  1106. }
  1107.  
  1108. public SendMessageToAdmins(color,const string[])
  1109. {
  1110.     for(new i = 0; i < MAX_PLAYERS; i++)
  1111.     {
  1112.         if (LevelInfo[i][Admin] >= 1)
  1113.         {
  1114.             SendClientMessage(i, color, string);
  1115.         }
  1116.     }
  1117.     return 1;
  1118. }
  1119.  
  1120. public SendMessageToHelper(color,const string[])
  1121. {
  1122.     for(new i = 0; i < MAX_PLAYERS; i++)
  1123.     {
  1124.         if (LevelInfo[i][Helper] >= 1)
  1125.         {
  1126.             SendClientMessage(i, color, string);
  1127.         }
  1128.     }
  1129.     return 1;
  1130. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement