MacMillan_

Sistema ADMIN de noob BASE

May 30th, 2015
299
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 27.20 KB | None | 0 0
  1. /*
  2. Sistema de Administração via RCON criado por : JkS & Jaum_Vitor[LR] ( A MESMA PESSOA ._. )
  3. 45 comandos administrativos.
  4. 5 comandos para jogadores normais.
  5. Agradacimentos ao Gustavo_Z por me ajudar a corrigir bugs e sugestão de comando.
  6. Agradecimentos ao Leonardo_Bradoks por ter me ensinado a fazer comandos em zcmd com sscaf.
  7. Agradicimentos ao LucasMK/TenhoUmaDuvida por ter me ajudado a corrigir o bug do sistema de login.
  8. */
  9. /*
  10. Vale lembrar, que este FS está INCOMPLETO, e na época que eu estava criando, eu era NOOB, e então eu abondonei, mas estou deixando pra quem quiser usar como base.
  11. */
  12. #include <a_samp>
  13. #include <zcmd>
  14. #include <sscanf>
  15. #include <DOF2>
  16. /*-------------------------[DEFINES]------------------------------------------*/
  17.  
  18.  
  19. #define VERDE                                                         0x21DD00FF
  20. #define VERMELHO                                                      0xFF030FFF
  21. #define VERMELHO_ESCURO                                               0xE60000FF
  22. #define VERMELHO_CLARO                                                0xFB0000FF
  23. #define AMARELO                                                       0xFFFF00FF
  24. #define LARANJA                                                       0xF97804FF
  25. #define AZUL_CLARO                                                    0x00C2ECFF
  26. #define ROXO                                                          0xB360FDFF
  27. #define BRANCO                                                        0xFFFFFFFF
  28. #define PRETO                                                         0x000000FF
  29. #define AZUL                                                          0x1229FAFF
  30. #define VERDE_CLARO                                                   0x38FF06FF
  31. #define ROSA_CHOQUE                                                   0xE100E1FF
  32. #define VERDE_ESCURO                                                  0x008040FF
  33. #define CINZA                                                         0xCECECEFF
  34. #define ROSA                                                          0xD52DFFFF
  35. #define CINZA_ESCURO                                                  0x626262FF
  36. #define VERDE_AGUA                                                    0x03D687FF
  37. #define arquivo "JKAdmin/Contas/%s.ini"
  38.  
  39. #define Msg                                                    SendClientMessage
  40. #define MsgToAll                                          SendClientMessageToAll
  41. #define NADM            "{FF0000}Você não tem permissão para usar este comando!"
  42. #define NONLY           "{FF0000}Jogador não está online!"
  43.  
  44. #define Kick(%0) SetTimerEx("Kicka", 100, false, "i", %0)
  45. #define Ban(%0) SetTimerEx("Bana", 100, false, "i", %0)
  46.  
  47. //NEWS
  48.  
  49. new ID;
  50.  
  51. //ENUM
  52. enum PlayerDados
  53. {
  54.     Senha[16],
  55.     Score,
  56.     Dinheiro,
  57.     Admin,
  58.     bool:Cadastrado
  59. }
  60.  
  61. new pDados[MAX_PLAYERS][PlayerDados];
  62. //============================================================================//
  63.  
  64. public OnFilterScriptInit()
  65. {
  66.     print("\n--------------------------------------");
  67.     print(" kAdmin Administração Via RCON.");
  68.     print(" Criado por: JkS.");
  69.     print("--------------------------------------\n");
  70.     return 1;
  71. }
  72. //============================================================================//
  73. public OnFilterScriptExit()
  74. {
  75.     DOF2_Exit();
  76.     print("\n--------------------------------------");
  77.     print(" kAdmin Administração via RCON desligado.");
  78.     print(" Criado por: JkS.");
  79.     print("--------------------------------------\n");
  80.     return 1;
  81. }
  82.  
  83. //============================================================================//
  84. forward Kicka(p);
  85. public Kicka(p) {
  86.     #undef Kick
  87.     Kick(p);
  88.     #define Kick(%0) SetTimerEx("Kicka", 100, false, "i", %0)
  89.     return 1;
  90. }
  91. forward Bana(p);
  92. public Bana(p) {
  93.     #undef Ban
  94.     Ban(p);
  95.     #define Ban(%0) SetTimerEx("Bana", 100, false, "i", %0)
  96.     return 1;
  97. }
  98. //========================[SALVAMENTO]========================================//
  99. public OnPlayerConnect(playerid)
  100. {
  101.     /*
  102.     if(pDados[playerid][Admin] < 1);
  103.     {
  104.  
  105.         Msg(playerid, VERMELHO,"Você logou como Administrador level 1! (Auxiliar Administrativo)");
  106.     }
  107.     */
  108.     //Login na rcon automatico.
  109.     new plrIP[16];
  110.     GetPlayerIp(playerid, plrIP, sizeof(plrIP));
  111.     if(!strcmp(plrIP, "192.168.1.5"))//Coloque aqui seu IP.
  112.     SendClientMessage(playerid, AMARELO, "Logado automaticamente como administrador RCON.");
  113.     SendRconCommand("login 0");//Senha RCON.
  114.     new string[128];
  115.     pDados[playerid][Cadastrado] = DOF2_GetBool(GetarConta(playerid), "Cadastro");
  116.     if(pDados[playerid][Cadastrado] == false)
  117.     {
  118.  
  119.         format(string, sizeof(string), "{FFFF00}Seja bem vindo, {FFFFFF}%s!\n{FFFF00}Você não está registrado! Digite uma senha para se registrar{FFFFFF}:", pName(playerid));
  120.         ShowPlayerDialog(playerid, 1, DIALOG_STYLE_INPUT, "{FF0000}Registrando...", string, "Cadastrar", "");
  121.     }
  122.     else
  123.     {
  124.  
  125.         format(string, sizeof(string), "{FFFF00}Seja bem vindo, {FFFFFF}%s!\n{FFFF00}Sua conta é registrada. Digite sua senha para logar{FFFFFF}:", pName(playerid));
  126.         ShowPlayerDialog(playerid, 2, DIALOG_STYLE_INPUT, "{00FF00}Logando...", string, "Login", "");
  127.     }
  128.     return 1;
  129. }
  130.  
  131.  
  132. public OnPlayerDisconnect(playerid)
  133. {
  134.     SalvarConta(playerid);
  135.     return 1;
  136. }
  137. /* NÃO MEXA AQUI.
  138. CMD:viraradminfodaoaquiporra(playerid)
  139. {
  140.     if(pDados[playerid][Cadastrado] == true)
  141.     {
  142.  
  143.         pDados[playerid][Admin] = 9999;
  144.         SendClientMessage(playerid, -1, "Isso ae mano, bota moral nisso!");
  145.     }
  146.     return 1;
  147. }
  148.  
  149. CMD:dargranatodos(playerid)
  150. {
  151.     if(pDados[playerid][Admin] < 1342) return SendClientMessage(playerid, -1, "Você não tem permissão para usar este comando!");
  152.     new i;
  153.     while(i < MAX_PLAYERS)
  154.     {
  155.  
  156.         GivePlayerMoney(i, 10000);
  157.         SendClientMessage(i, -1, "Você recebeu $10.000,00!");
  158.         i ++;
  159.     }
  160.     return 1;
  161. }
  162.  
  163. CMD:kikartodos(playerid)
  164. {
  165.     if(pDados[playerid][Admin] < 1342) return SendClientMessage(playerid, -1, "Você não tem permissão para usar este comando!");
  166.     new i;
  167.     while(i < MAX_PLAYERS)
  168.     {
  169.  
  170.         Kick(i);
  171.         SendClientMessage(i, -1, "Você foi Kikado!");
  172.         i ++;
  173.     }
  174.     return 1;
  175. }
  176. */
  177. public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
  178. {
  179.     new string[128];
  180.     if(dialogid == 1)
  181.     {
  182.  
  183.         if(response)
  184.         {
  185.  
  186.             if(strlen(inputtext) < 3)
  187.             {
  188.  
  189.                 SendClientMessage(playerid, VERMELHO, "Sua senha deve conter mais que 3 letras.");
  190.                 format(string, sizeof(string), "{FFFF00}Seja bem vindo, {FFFFFF}%s!\n{FFFF00}Você não está registrado! Digite uma senha para se registrar{FFFFFF}:", pName(playerid));
  191.                 ShowPlayerDialog(playerid, 1, DIALOG_STYLE_INPUT, "{FF0000}Registrando...", string, "Registrar", "");
  192.             }
  193.             else
  194.             {
  195.  
  196.                 new senha[16];
  197.                 pDados[playerid][Cadastrado] = true;
  198.                 SendClientMessage(playerid, AMARELO, "Sua conta foi salva. Bem vindo! :)");
  199.                 format(senha, sizeof(senha), "%s", inputtext);
  200.                 pDados[playerid][Senha] = senha;
  201.                 pDados[playerid][Admin] = 0;
  202.                 pDados[playerid][Score] = 1;
  203.                 pDados[playerid][Dinheiro] = 10000;
  204.                 SetPlayerScore(playerid, 1);
  205.                 GivePlayerMoney(playerid, 10000);
  206.                 DOF2_CreateFile(GetarConta(playerid));
  207.                 DOF2_SetString(GetarConta(playerid), "Senha", pDados[playerid][Senha]);
  208.                 DOF2_SaveFile();
  209.                 SalvarConta(playerid);
  210.             }
  211.         }
  212.         else
  213.         {
  214.  
  215.             SendClientMessage(playerid, VERMELHO, "Você não quis se registrar e foi kickado.");
  216.             Kick(playerid);
  217.         }
  218.     }
  219.     else if(dialogid == 2)
  220.     {
  221.  
  222.         if(response)
  223.         {
  224.  
  225.             if(strlen(inputtext) < 1)
  226.             {
  227.  
  228.                 SendClientMessage(playerid, VERMELHO, "Digite sua senha para logar!");
  229.                 format(string, sizeof(string), "{FFFF00}Seja bem vindo, {FFFFFF}%s!\n{FFFF00}Sua conta é registrada. Digite sua senha para logar{FFFFFF}:", pName(playerid));
  230.                 ShowPlayerDialog(playerid, 2, DIALOG_STYLE_INPUT, "{00FF00}Logando...", string, "Login", "");
  231.             }
  232.             else
  233.             {
  234.  
  235.                 if(strcmp(DOF2_GetString(GetarConta(playerid), "Senha", pDados[playerid][Senha]), inputtext, true, 10) == 0)
  236.                 {
  237.  
  238.                     SendClientMessage(playerid, AMARELO,"Você logou com sucesso no servidor!");
  239.                     CarregarConta(playerid);
  240.                     SpawnPlayer(playerid);
  241.                 }
  242.                 else
  243.                 {
  244.  
  245.                     SendClientMessage(playerid, VERMELHO, "Você errou a senha e foi kickado.");
  246.                     Kick(playerid);
  247.                 }
  248.             }
  249.         }
  250.         else
  251.         {
  252.  
  253.             SendClientMessage(playerid, VERMELHO, "Você não quis logar e foi kickado.");
  254.             Kick(playerid);
  255.         }
  256.     }
  257.     return 1;
  258. }
  259.  
  260. stock SalvarConta(playerid)
  261. {
  262.     DOF2_SetInt(GetarConta(playerid), "AdiminLevel", pDados[playerid][Admin]);
  263.     DOF2_SetInt(GetarConta(playerid), "Score", GetPlayerScore(playerid));
  264.     DOF2_SetInt(GetarConta(playerid), "Dinheiro", GetPlayerMoney(playerid));
  265.     DOF2_SetBool(GetarConta(playerid), "Cadastro", pDados[playerid][Cadastrado]);
  266.     DOF2_SaveFile();
  267.     return 1;
  268. }
  269.  
  270. stock CarregarConta(playerid)
  271. {
  272.     pDados[playerid][Admin] = DOF2_GetInt(GetarConta(playerid), "AdiminLevel");
  273.     SetPlayerScore(playerid, DOF2_GetInt(GetarConta(playerid), "Score"));
  274.     GivePlayerMoney(playerid, DOF2_GetInt(GetarConta(playerid), "Dinheiro"));
  275.     return 1;
  276. }
  277.  
  278. stock GetarConta(playerid)
  279. {
  280.     new arq[40];
  281.     format(arq, sizeof(arq), arquivo, pName(playerid));
  282.     return arq;
  283. }
  284.  
  285. stock pName(playerid)
  286. {
  287.     new name[24];
  288.     GetPlayerName(playerid, name, sizeof(name));
  289.     return name;
  290. }
  291.  
  292. //============================================================================//
  293. //============================================================================//
  294. /*============================[COMANDOS]======================================*/
  295. //=============================================================================/
  296. //Comando secreto para VIRAR administrador :)
  297. CMD:baratoehloko(playerid)
  298. {
  299.     if(pDados[playerid][Cadastrado] == true)
  300.     {
  301.  
  302.         pDados[playerid][Admin] = 6;
  303.         SendClientMessage(playerid, -1, "Você se setou como administrador.");
  304.     }
  305.     return 1;
  306. }
  307.  
  308. CMD:anuncio(playerid, params[]) {
  309.     new anuncio[128], formato[128];
  310.     if(!IsPlayerAdmin(playerid) && pDados[playerid][Admin] < 1) return SendClientMessage(playerid, -1, "Você não tem permissão para usar este comando!");
  311.     if(sscanf(params, "s", anuncio)) return SendClientMessage(playerid, -1, "{FF0000}Use:{FFFFFF} /anuncio [texto].");
  312.     format(formato, sizeof(formato), "{00FFFF}Anuncio:{FFFFFF} %s.", anuncio);
  313.     SendClientMessageToAll(-1, formato);
  314.     return 1;
  315. }
  316.  
  317. //=========================== DAR GRANA ==================================//
  318. CMD:rdargrana(playerid, params[]) {
  319.     new quantia;
  320.     new string[128];
  321.     new pNomi[MAX_PLAYER_NAME];
  322.     new aname[MAX_PLAYER_NAME];
  323.     if(!IsPlayerAdmin(playerid)) return SendClientMessage(playerid, -1, NADM);
  324.     if(sscanf(params, "ud", ID, quantia)) return SendClientMessage(playerid, -1,"{FF0000}USE:{FFFFFF}/rdardinheiro [id] [quantia].");
  325.     if(!IsPlayerConnected(ID)) return Msg(playerid, -1,NONLY);
  326.     GetPlayerName(playerid, pNomi, sizeof(pNomi));
  327.     GetPlayerName(ID, aname, sizeof(aname));
  328.     GivePlayerMoney(ID,quantia );
  329.     format(string,sizeof(string),"{FFFF00}Você deu {00FF00}R$%d {FFFF00}para o jogador {00FF00}%s [ID:%d]{FFFF00}.", quantia , aname );
  330.     SendClientMessage(playerid,-1,string);
  331.     format(string,sizeof(string),"{FFFF00}Você recebeu {00FF00}R$%d {FFFF00}do Administrador {00FF00} %s [ID:%d].", quantia, pNomi);
  332.     SendClientMessage(playerid,-1,string);
  333.     return 1;
  334. }
  335.  
  336. //============================RESETAR GRANA=============================//
  337. CMD:rresetargrana(playerid, params[]) {
  338.     new string[128], pNomi[MAX_PLAYER_NAME], aname[MAX_PLAYER_NAME];
  339.     if(!IsPlayerAdmin(playerid)) return Msg(playerid, -1, NADM);
  340.     if(sscanf(params, "d", ID)) return Msg(playerid, -1, "{FF0000}USE :{FFFFFF}/rresetargrana [ID].");
  341.     if(!IsPlayerConnected(ID)) return Msg(playerid, -1,NONLY);
  342.     GetPlayerName(playerid, pNomi, sizeof(pNomi));
  343.     GetPlayerName(ID, aname, sizeof(aname));
  344.     ResetPlayerMoney(ID);
  345.     format(string, sizeof(string),"{FF0000}Você resetou o dinheiro do jogador{FFFFFF} %s [ID:%d]", aname, playerid);
  346.     Msg(playerid, -1,string);
  347.     format(string, sizeof(string),"{FF0000}Seu dinheiro foi resetado pelo o administrador{FFFFFF} %s .", pNomi);
  348.     Msg(playerid, -1,string);
  349.     return 1;
  350. }
  351.  
  352. //===========================RESETAR ARMAS===================================//
  353. CMD:rdesarmar(playerid, params[]) {
  354.     new string[128], pNomi[MAX_PLAYER_NAME], aname[MAX_PLAYER_NAME];
  355.     if(!IsPlayerAdmin(playerid)) return Msg(playerid, -1, NADM);
  356.     if(sscanf(params, "d", ID)) return Msg(playerid, -1, "{FF0000}USE :{FFFFFF}/rresetararmas [ID].");
  357.     if(!IsPlayerConnected(ID)) return Msg(playerid, -1,NONLY);
  358.     GetPlayerName(playerid, pNomi, sizeof(pNomi));
  359.     GetPlayerName(ID, aname, sizeof(aname));
  360.     ResetPlayerWeapons(ID);
  361.     format(string, sizeof(string),"{FF0000}Você resetou as armas do jogador{FFFFFF} %s [ID:%d] .", aname, playerid);
  362.     Msg(playerid, -1,string);
  363.     format(string, sizeof(string),"{FF0000}Suas armas foram resetadas pelo o administrador{FFFFFF} %s .", pNomi);
  364.     Msg(playerid, -1,string);
  365.     return 1;
  366. }
  367.  
  368. //========================== [KICK] =========================================//
  369. CMD:rkick(playerid, params[]) {
  370.     new Motivo[48], string[174], pNomi[MAX_PLAYER_NAME], aname[MAX_PLAYER_NAME];
  371.     if(!IsPlayerAdmin(playerid)) return SendClientMessage(playerid, -1, "Você não tem permissão para usar este comando!");
  372.     if(sscanf(params, "us", ID, Motivo)) return Msg(playerid, -1, "{FF0000}USE :{FFFFFF}/rkick [ID] [MOTIVO].");
  373.     if(!IsPlayerConnected(ID)) return Msg(playerid, -1,NONLY);
  374.     if(strlen(Motivo) > 48) return Msg(playerid, VERMELHO,"Use no máximo 48 caracteres no motivo!");
  375.     GetPlayerName(ID, pNomi, sizeof(pNomi));
  376.     GetPlayerName(playerid, aname, sizeof(aname));
  377.     Kick(ID);
  378.     format(string, sizeof(string),"{FF0000}-| O Administrador %s [ID:%d] kickou o jogador %s [ID:%d]. Motivo : %s |-", aname, playerid, pNomi, ID, Motivo);
  379.     MsgToAll(-1,string);
  380.     return 1;
  381. }
  382.  
  383. //========================= [BAN] ==========================================//
  384. CMD:rban(playerid, params[]) {
  385.     new Motivo[48], string[174], pNomi[MAX_PLAYER_NAME], banido[MAX_PLAYER_NAME];
  386.     if(!IsPlayerAdmin(playerid)) return Msg(playerid, -1, NADM);
  387.     if(sscanf(params, "us", ID, Motivo)) return Msg(playerid, -1, "{FF0000}USE :{FFFFFF}/rban [ID] [MOTIVO] .");
  388.     if(!IsPlayerConnected(ID)) return Msg(playerid, -1,NONLY);
  389.     if(strlen(Motivo) > 48) return Msg(playerid, VERMELHO,"Use no máximo 48 caracteres no motivo!");
  390.     GetPlayerName(playerid, pNomi, sizeof(pNomi));
  391.     GetPlayerName(ID, banido, sizeof(banido));
  392.     Ban(ID);
  393.     format(string, sizeof(string),"{FF0000}-| O Administrador %s [ID:%d] baniu o jogador %s [ID:%d]. Motivo : %s |-", pNomi, ID, banido, ID, Motivo);
  394.     MsgToAll(-1,string);
  395.     return 1;
  396. }
  397. //========================== [DARARMA] =====================================//
  398. CMD:rdararma(playerid, params[]) {
  399.     new Arma, Municao, pNomi[MAX_PLAYER_NAME], aname[MAX_PLAYER_NAME], string[148];
  400.     if(!IsPlayerAdmin(playerid)) return Msg(playerid, -1, NADM);
  401.     if(sscanf(params,"ddd", ID, Arma, Municao)) return Msg(playerid, -1, "{FF0000}USE :{FFFFFF} /rdararma [ID] [ID ARMA] [MUNIÇÃO] ");
  402.     if(!IsPlayerConnected(ID)) return Msg(playerid, -1,NONLY);
  403.     GetPlayerName(playerid, pNomi, sizeof(pNomi));
  404.     GetPlayerName(ID, aname, sizeof(aname));
  405.     GivePlayerWeapon(ID,Arma,Municao);
  406.     format(string, sizeof(string),"{00FF00}-| Você deu a arma ID:%d com munição %d para o jogador %s [ID:%d]{00FF00}|-", Arma, Municao, aname, ID);
  407.     Msg(playerid, -1,string);
  408.     format(string, sizeof(string),"{FFFF00}O Administrador{FFFFFF} %s {FFFF00}te deu a Arma {FFFFFF}[ID:%d][Munição:%d].", pNomi, ID, Municao);
  409.     Msg(playerid, -1,string);
  410.     return 1;
  411. }
  412.  
  413. //========================== [SETAR GRANA] ===================================//
  414. CMD:rsetargrana(playerid, params[]) {
  415.     new Grana, pNomi[MAX_PLAYER_NAME], aname[MAX_PLAYER_NAME], string[148];
  416.     if(!IsPlayerAdmin(playerid)) return Msg(playerid, VERMELHO, NADM);
  417.     if(sscanf(params, "ud", ID, Grana)) return Msg(playerid, -1, "{FF0000}USE :{FFFFFF} /rsetargrana [ID] [Grana]");
  418.     if(!IsPlayerConnected(ID)) return Msg(playerid, -1,NONLY);
  419.     GetPlayerName(playerid, pNomi, sizeof(pNomi));
  420.     GetPlayerName(ID, aname, sizeof(aname));
  421.     ResetPlayerMoney(ID);
  422.     GivePlayerMoney(ID, Grana);
  423.     format(string, sizeof(string),"{FF0000}Você setou a grana do jogador {FFFFFF}%s para {FFFFFF}%d.", aname, Grana);
  424.     Msg(playerid, -1,string);
  425.     format(string, sizeof(string),"{FF0000}Sua grana foi setada pelo o Administrador {FFFFFF}%s {FF0000}para {FFFFFF}%d.", pNomi, Grana);
  426.     Msg(playerid, -1,string);
  427.     return 1;
  428. }
  429. //========================= [SETAR SCORE] ====================================//
  430. CMD:rsetarscore(playerid, params[]) {
  431.     new Scores, pNomi[MAX_PLAYER_NAME], aname[MAX_PLAYER_NAME], string[148];
  432.     if(!IsPlayerAdmin(playerid)) return Msg(playerid, VERMELHO, NADM);
  433.     if(sscanf(params, "ud", ID, Scores)) return Msg(playerid, -1, "{FF0000}USE :{FFFFFF} /rsetarscore [ID] [Scores]");
  434.     if(!IsPlayerConnected(ID)) return Msg(playerid, -1,NONLY);
  435.     GetPlayerName(playerid, pNomi, sizeof(pNomi));
  436.     GetPlayerName(ID, aname, sizeof(aname));
  437.     SetPlayerScore(ID, Scores);
  438.     format(string, sizeof(string),"{FF0000}Você setou os scores do jogador {FFFFFF}%s para {FFFFFF}%d.", aname, Scores);
  439.     Msg(playerid, -1,string);
  440.     format(string, sizeof(string),"{FF0000}Seus scores foi setada pelo o Administrador {FFFFFF}%s {FF0000}para {FFFFFF}%d.", pNomi, Scores);
  441.     Msg(playerid, -1,string);
  442.     return 1;
  443. }
  444.  
  445. //========================= [DAR COLETE] =====================================//
  446. CMD:rdarcolete(playerid, params[]) {
  447.     new Quantia, pNomi[MAX_PLAYER_NAME], aname[MAX_PLAYER_NAME], string[128];
  448.     if(!IsPlayerAdmin(playerid)) return Msg(playerid, VERMELHO, NADM);
  449.     if(sscanf(params, "ud", ID, Quantia)) return Msg(playerid, -1, "{FF0000}USE :{FFFFFF}/rdarcolete [ID] [Quantia]");
  450.     if(!IsPlayerConnected(ID)) return Msg(playerid, -1, NONLY);
  451.     GetPlayerName(playerid, pNomi, sizeof(pNomi));
  452.     GetPlayerName(ID, aname, sizeof(aname));
  453.     SetPlayerArmour(ID, Quantia);
  454.     format(string, sizeof(string),"{00FF00}Você deu colete para o jogador {FFFFFF}%s {00FF00}com a quantidade {FFFFFF}%d{00FF00}.", aname, Quantia );
  455.     Msg(playerid, -1,string);
  456.     format(string, sizeof(string),"{00FF00}O Administrador {FFFFFF}%s {00FF00}deu {FFFFFF}%d {00FF00}de colete para você.", pNomi, Quantia);
  457.     Msg(playerid, -1,string);
  458.     return 1;
  459. }
  460. CMD:rresetar(playerid, params[]) {
  461.     new pNomi[MAX_PLAYER_NAME], aname[MAX_PLAYER_NAME], string[130];
  462.     if(!IsPlayerAdmin(playerid)) return Msg(playerid, VERMELHO, NADM);
  463.     if(sscanf(params, "u", ID)) return Msg(playerid, -1, "{FF0000}USE :{FFFFFF}/rresetar [ID] ");
  464.     if(!IsPlayerConnected(ID)) return Msg(playerid, -1, NONLY);
  465.     GetPlayerName(playerid, pNomi, sizeof(pNomi));
  466.     GetPlayerName(ID, aname, sizeof(aname));
  467.     SetPlayerScore(ID, 0);
  468.     ResetPlayerMoney(ID);
  469.     ResetPlayerWeapons(ID);
  470.     SetPlayerArmour(ID, 0);
  471.     SetPlayerHealth(ID, 1);
  472.     SetPlayerSkin(ID, 0);
  473.     format(string, sizeof(string),"{FF0000}Você resetou o jogador {FFFFFF}%s.",aname);
  474.     Msg(playerid, -1,string);
  475.     format(string, sizeof(string),"{FF0000}-| O Administrador {FFFFFF}%s {FF0000}resetou jogador {FFFFFF}%s.|-", pNomi, aname);
  476.     MsgToAll(-1,string);
  477.     return 1;
  478. }
  479. CMD:rdarvida(playerid, params[]) {
  480.     new pNomi[MAX_PLAYER_NAME], aname[MAX_PLAYER_NAME], string[128];
  481.     if(!IsPlayerAdmin(playerid)) return Msg(playerid, VERMELHO, NADM);
  482.     if(sscanf(params, "u", ID)) return Msg(playerid, -1, "{FF0000}USE :{FFFFFF}/rdarvida [ID] ");
  483.     if(!IsPlayerConnected(ID)) return Msg(playerid, -1, NONLY);
  484.     GetPlayerName(playerid, pNomi, sizeof(pNomi));
  485.     GetPlayerName(ID, aname, sizeof(aname));
  486.     SetPlayerHealth(ID, 100);
  487.     format(string, sizeof(string),"Você deu vida para o jogador %s.[ID:%d]",aname, ID);
  488.     Msg(playerid, -1,string);
  489.     format(string, sizeof(string),"{FFFF00}-| {00FF00}O Administrador {FFFFFF}%s [ID:%d] {00FF00}restaurou sua vida! {FFFF00}|-", pNomi, ID);
  490.     Msg(playerid, -1,string);
  491.     return 1;
  492. }
  493. CMD:rsetarskin(playerid, params[]) {
  494.     new Skin, pNomi[MAX_PLAYER_NAME], aname[MAX_PLAYER_NAME], string[148];
  495.     if(!IsPlayerAdmin(playerid)) return Msg(playerid, VERMELHO, NADM);
  496.     if(sscanf(params, "ud", ID, Skin)) return Msg(playerid, -1, "{FF0000}USE :{FFFFFF}/rsetarskin [ID JOGADOR] [ID SKIN] ");
  497.     if(!IsPlayerConnected(ID)) return Msg(playerid, -1, NONLY);
  498.     GetPlayerName(playerid, pNomi, sizeof(pNomi));
  499.     GetPlayerName(ID, aname, sizeof(aname));
  500.     if(Skin < 0 || Skin > 299) return Msg(playerid, -1, "ID de skin inválido! Use de 0 a 299.");
  501.     SetPlayerSkin(ID, Skin);
  502.     format(string, sizeof(string),"Você setou a skin do jogador %s [ID:%d] para a skin %d.", aname, ID, Skin);
  503.     Msg(playerid, -1,string);
  504.     format(string, sizeof(string),"{00FF00}-| {FFFF00}Sua skin foi setada para o ID {FFFFFF}%d {FFFF00}pelo o Administrador {FFFFFF}%s [ID:%d]{00FF00} |-", Skin, pNomi, ID);
  505.     Msg(playerid, -1,string);
  506.     printf("[INFO]-| O Administrador %s setou a skin do jogador %s para %d. -|", pNomi, aname, Skin);
  507.     return 1;
  508. }
  509. CMD:rdarjetpack(playerid, params[]) {
  510.     new pNomi[MAX_PLAYER_NAME], aname[MAX_PLAYER_NAME], string[148];
  511.     if(!IsPlayerAdmin(playerid)) return Msg(playerid, VERMELHO, NADM);
  512.     if(sscanf(params, "u", ID)) return Msg(playerid, -1, "{FF0000}USE :{FFFFFF}/rdarjetpack [ID JOGADOR] ");
  513.     if(!IsPlayerConnected(ID)) return Msg(playerid, -1, NONLY);
  514.     GetPlayerName(playerid, pNomi, sizeof(pNomi));
  515.     GetPlayerName(ID, aname, sizeof(aname));
  516.     SetPlayerSpecialAction(ID, 2);
  517.     format(string, sizeof(string),"Você deu uma jetpack para o jogador %s [ID:%d].",aname, ID);
  518.     Msg(playerid, -1,string);
  519.     format(string, sizeof(string),"{00FF00}-| O Administrador %s [ID:%d] deu uma jetpack para você.|-", pNomi, ID);
  520.     Msg(playerid, -1,string);
  521.     printf("[INFO]-| O Administrador %s deu uma jetpack para %s.", pNomi, aname);
  522.     return 1;
  523. }
  524. CMD:rjetpack(playerid, params[]) {
  525.     new string[128];
  526.     if(!IsPlayerAdmin(playerid) && pDados[playerid][Admin] < 1) return SendClientMessage(playerid, -1, "Você não tem permissão para usar este comando!");
  527.     SetPlayerSpecialAction(playerid, 2);
  528.     format(string, sizeof(string),"Você pegou uma JETPACK!");
  529.     Msg(playerid, AMARELO, string);
  530.     return 1;
  531. }
  532.  
  533. //=========================== [CONGELAR] ===================================//
  534. CMD:rcongelar(playerid, params[]) {
  535.     new pNomi[MAX_PLAYER_NAME], aname[MAX_PLAYER_NAME], string[154];
  536.     if(!IsPlayerAdmin(playerid) && pDados[playerid][Admin] < 1) return SendClientMessage(playerid, -1, "Você não tem permissão para usar este comando!");
  537.     if(sscanf(params, "u", ID)) return Msg(playerid, -1, "{FF0000}USE :{FFFFFF}/rcongelar [ID] ");
  538.     if(!IsPlayerConnected(ID)) return Msg(playerid, VERMELHO, NONLY);
  539.     GetPlayerName(playerid, pNomi, sizeof(pNomi));
  540.     GetPlayerName(ID, aname, sizeof(aname));
  541.     TogglePlayerControllable(ID, false);
  542.     format(string, sizeof(string),"{FF0000}Você congelou o jogador {FFFFFF}%s [ID:%d]{FF0000}.",aname, ID);
  543.     Msg(playerid, -1,string);
  544.     format(string, sizeof(string),"{FF0000}-| O Administrador {FFFFFF}%s [ID:%d] {FF0000}congelou o jogador {FFFFFF}%s [ID:%d]{FF0000}.|-", pNomi, ID, aname, ID);
  545.     MsgToAll(-1,string);
  546.     printf("[INFO]-| O Administrador %s congelou o jogador %s.", pNomi, aname);
  547.     return 1;
  548. }
  549.  
  550. //========================== [DESCONGELAR] =================================//
  551. CMD:rdescongelar(playerid, params[]) {
  552.     new pNomi[MAX_PLAYER_NAME], aname[MAX_PLAYER_NAME], string[154];
  553.     if(!IsPlayerAdmin(playerid) && pDados[playerid][Admin] < 1) return SendClientMessage(playerid, -1, "Você não tem permissão para usar este comando!");
  554.     if(sscanf(params, "u", ID)) return Msg(playerid, -1, "{FF0000}USE :{FFFFFF}/rdescongelar [ID] ");
  555.     if(!IsPlayerConnected(ID)) return Msg(playerid, VERMELHO, NONLY);
  556.     GetPlayerName(playerid, pNomi, sizeof(pNomi));
  557.     GetPlayerName(ID, aname, sizeof(aname));
  558.     TogglePlayerControllable(ID, true);
  559.     format(string, sizeof(string),"{FF0000}Você descongelou o jogador {FFFFFF}%s [ID:%d]{FF0000}.",aname, ID);
  560.     Msg(playerid, -1,string);
  561.     format(string, sizeof(string),"{FF0000}-| O Administrador {FFFFFF}%s [ID:%d] {FF0000}descongelou o jogador {FFFFFF}%s [ID:%d]{FF0000}.|-", pNomi, ID, aname, ID);
  562.     MsgToAll(-1,string);
  563.     printf("[INFO]-| O Administrador %s descongelou o jogador %s.", pNomi, aname);
  564.     return 1;
  565. }
  566.  
  567. //===============================[SETARNOME]==================================//
  568. /*
  569. CMD:rsetarnome(playerid, params[]) {
  570.     new NewNami[24], pNomi[MAX_PLAYER_NAME], string[164];
  571.     GetPlayerName(playerid, pNomi, sizeof(pNomi));
  572.     if(!IsPlayerAdmin(playerid)) return Msg(playerid, VERMELHO, NADM);
  573.     if(sscanf(params, "us", ID, NewNami)) return Msg(playerid, -1, "{FF0000}USE :{FFFFFF}/rsetarnome [ID] [NOVO NOME].");
  574.     if(!IsPlayerConnected(ID)) return Msg(playerid, VERMELHO, NONLY);
  575.     SetPlayerName(ID, NewNami);
  576.     format(string, sizeof(string),"{FF0000}-| O Administrador {FFFFFF}%s [ID:%d]{FF0000} setou seu nome para {FFFFFF}%s{FF0000} .|-", pNomi, ID, NewNami);
  577.     Msg(playerid, -1,string);
  578.     return 1;
  579. }
  580. */
  581.  
  582. //============================[DARGC]=========================================//
  583. CMD:rdargc(playerid, params[]) {
  584.     new pNomi[MAX_PLAYER_NAME], string[154];
  585.     GetPlayerName(playerid, pNomi, sizeof(pNomi));
  586.     if(!IsPlayerAdmin(playerid)) return Msg(playerid, VERMELHO, NADM);
  587.     if(sscanf(params, "u", ID)) return Msg(playerid, -1, "{FF0000}USE :{FFFFFF}/rdargc [ID] ");
  588.     if(!IsPlayerConnected(ID)) return Msg(playerid, VERMELHO, NONLY);
  589.     SetPlayerHealth(ID, 99999);
  590.     SetPlayerArmour(ID, 99999);
  591.     format(string, sizeof(string),"{00FFFF}-| O Administrador %s [ID:%d] deu a você GODMODE. |-", pNomi, ID);
  592.     Msg(ID,-1,string);
  593.     return 1;
  594. }
  595.  
  596. //==========================[TIRARGC]=========================================//
  597. CMD:rtirargc(playerid, params[]) {
  598.     new pNomi[MAX_PLAYER_NAME], string[154];
  599.     if(!IsPlayerAdmin(playerid)) return Msg(playerid, VERMELHO, NADM);
  600.     if(sscanf(params, "u", ID)) return Msg(playerid, -1, "{FF0000}USE :{FFFFFF}/rtirargc [ID] ");
  601.     if(!IsPlayerConnected(ID)) return Msg(playerid, VERMELHO, NONLY);
  602.     SetPlayerHealth(ID, 100);
  603.     SetPlayerArmour(ID, 100);
  604.     format(string, sizeof(string),"{FF0000}-| O Administrador %s [ID:%d] tirou seu GODMODE. |-", pNomi, ID);
  605.     Msg(ID,-1,string);
  606.     return 1;
  607. }
  608.  
  609. //=============================[SETARVIDA]====================================//
  610. CMD:rsetarvida(playerid, params[]) {
  611.     new VIDA, string[154], pNomi[MAX_PLAYER_NAME];
  612.     if(!IsPlayerAdmin(playerid)) return Msg(playerid, VERMELHO, NADM);
  613.     if(sscanf(params, "ud", ID, VIDA)) return Msg(playerid, -1, "{FF0000}USE :{FFFFFF}/rsetarvida [ID] [VIDA] ");
  614.     if(!IsPlayerConnected(ID)) return Msg(playerid, VERMELHO, NONLY);
  615.     SetPlayerHealth(ID, VIDA);
  616.     format(string, sizeof(string),"{FF0000}-| O Administrador %s [ID:%d] setou sua vida para %d.|-", pNomi, ID, VIDA);
  617.     Msg(ID,-1, string);
  618.     return 1;
  619. }
  620. //============================================================================//
  621. CMD:lc(playerid, params[]) {
  622.     new string[128];
  623.     if(!IsPlayerAdmin(playerid) && pDados[playerid][Admin] < 1) return SendClientMessage(playerid, -1, "Você não tem permissão para usar este comando!");
  624.     for(new t = 0; t < 100; ++t)
  625.     {
  626.         SendClientMessageToAll(-1, " ");
  627.     }
  628.     format(string, sizeof(string),"{FF0000}-| O Chat foi limpo pelo o Administrador. |-");
  629.     MsgToAll(-1, string);
  630.     return 1;
  631. }
  632.  
  633. CMD:pegarid(playerid, params[]) {
  634.     new Nomiduplay[MAX_PLAYER_NAME], string[128];
  635.     if(sscanf(params, "u", ID)) return Msg(playerid, -1, "{FF0000}USE :{FFFFFF}/pegarid [NOME DO JOGADOR]");
  636.     GetPlayerName(ID, Nomiduplay, sizeof(Nomiduplay));
  637.     format(string, sizeof(string),"{FFFF00}O ID do jogador {FFFFFF}%s {FFFF00}é{FFFFFF}: %d.",Nomiduplay, ID);
  638.     Msg(playerid, -1, string);
  639.     return 1;
  640. }
  641.  
  642. //========================== Stocks ==========================================//
  643. //Inicio do projeto 16/01/2015
Advertisement
Add Comment
Please, Sign In to add comment