Advertisement
FStralioti

Sistema de Administração 1.1 - Fábio Stralioti

Mar 2nd, 2015
937
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Pawn 17.10 KB | None | 0 0
  1. /* Filterscript Sistema de Administração 1.0 Feito por : Fábio Stralioti
  2. Iniciado dia 02/03/2015 as 10:37
  3.  
  4. ******** ************ *********  **** *************
  5. ******** ************ *********  **** *************
  6. ****     ****    **** ****   **  **** *****   *****
  7. ****     ****    **** ****   **  **** *****   *****
  8. ******** ************ *********  **** *****   *****
  9. ******** ************ *********  **** *****   *****
  10. ****     ****    **** ****   **  **** *****   *****
  11. ****     ****    **** *********  **** *************
  12. ****     ****    **** *********  **** *************
  13.  
  14. */
  15. #include <a_samp>
  16. #include <zcmd>
  17. #include <dof2>
  18. #include <sscanf>
  19.  
  20. #define FILTERSCRIPT
  21.  
  22. public OnFilterScriptInit(){
  23.     print("\n----------------------------------");
  24.     print("Filterscript feito por : Fábio Stralioti");
  25.     print("www.equipegtatorcidas.com/forum");
  26.     print("----------------------------------\n");
  27.     return 1;
  28. }
  29.  
  30. enum pInfo {
  31.     pAdministrador
  32. };
  33. new Stralioti[MAX_PLAYERS][pInfo];
  34. new Id;
  35. new stralioti[128];
  36. new stralioti2[128];
  37. new straliotiadmin[256];
  38. new texto;
  39. new minutos;
  40. new motivo;
  41. new Float:FX, Float:FY, Float:FZ;
  42. new Float:X, Float:Y, Float:Z, Float: Angle;
  43. new Float:vida;
  44. new Float:colete;
  45. new straliotiid[MAX_PLAYERS];
  46.  
  47. #define VEH 1
  48. #define Kick(%0) SetTimerEx("Kicka", 100, false, "i", %0)
  49. #define Ban(%0) SetTimerEx("Bana", 100, false, "i", %0)
  50. #define banido "Banidos\\%s.ini"
  51.  
  52. public OnPlayerConnect(playerid) {
  53.     straliotiid[playerid] = SetTimerEx("StraliotiTag", 5000, true, "d", playerid);
  54.  
  55.     new arquivoadmin[34];
  56.     format(arquivoadmin, sizeof(arquivoadmin), "Admins/%s.ini", PlayerNome(playerid));
  57.  
  58.     SendClientMessage(playerid, -1,"Este servidor usa o sistema de Administração feito por: Fábio Stralioti");
  59.     return 1;
  60. }
  61.  
  62. public OnPlayerDisconnect(playerid) {
  63.     new arquivoadmin[34];
  64.     format(arquivoadmin, sizeof(arquivoadmin), "Admins/%s.ini", PlayerNome(playerid));
  65.     if (!DOF2_FileExists(arquivoadmin)) {
  66.         DOF2_CreateFile(arquivoadmin);
  67.  
  68.         DOF2_SetInt(arquivoadmin, "Level", Stralioti[playerid][pAdministrador]);
  69.         DOF2_SaveFile();
  70.     }
  71.     else {
  72.         DOF2_SetInt(arquivoadmin, "Level", Stralioti[playerid][pAdministrador]);
  73.         DOF2_SaveFile();
  74.     }
  75.     return 0;
  76. }
  77.  
  78. public OnFilterScriptExit()
  79. {
  80.     DOF2_Exit();
  81.     return 1;
  82. }
  83.  
  84. public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[]) {
  85.     if(dialogid == VEH)
  86.     {
  87.         if(response)
  88.         {
  89.             if(listitem == 0)
  90.             {
  91.                 GetPlayerPos(playerid, X, Y, Z);
  92.                 GetPlayerFacingAngle(playerid, Angle);
  93.                 CreateVehicle(560, X+5, Y, Z+1, Angle, random(100), random(100), -1);
  94.                 SendClientMessage(playerid, -1,"Você criou um sultan para deleta-lo use /dc");
  95.             }
  96.             if(listitem == 1)
  97.             {
  98.                 GetPlayerPos(playerid, X, Y, Z);
  99.                 GetPlayerFacingAngle(playerid, Angle);
  100.                 CreateVehicle(411, X+5, Y, Z+1, Angle, random(100), random(100), -1);
  101.                 SendClientMessage(playerid, -1,"Você criou um infernus para deleta-lo use /dc");
  102.             }
  103.             if(listitem == 2)
  104.             {
  105.                 GetPlayerPos(playerid, X, Y, Z);
  106.                 GetPlayerFacingAngle(playerid, Angle);
  107.                 CreateVehicle(522, X+5, Y, Z+1, Angle, random(100), random(100), -1);
  108.                 SendClientMessage(playerid, -1,"Você criou um nrg-500 para deleta-lo use /dc");
  109.             }
  110.             if(listitem == 3)
  111.             {
  112.                 GetPlayerPos(playerid, X, Y, Z);
  113.                 GetPlayerFacingAngle(playerid, Angle);
  114.                 CreateVehicle(431, X+5, Y, Z+1, Angle, random(100), random(100), -1);
  115.                 SendClientMessage(playerid, -1,"Você criou um onibus para deleta-lo use /dc");
  116.             }
  117.             if(listitem == 4)
  118.             {
  119.                 GetPlayerPos(playerid, X, Y, Z);
  120.                 GetPlayerFacingAngle(playerid, Angle);
  121.                 CreateVehicle(506, X+5, Y, Z+1, Angle, random(100), random(100), -1);
  122.                 SendClientMessage(playerid, -1,"Você criou um super-gt para deleta-lo use /dc");
  123.             }
  124.         }
  125.     }
  126.     return 1;
  127. }
  128.  
  129. CMD:setadmin(playerid, params[]) {
  130.     new level, ganhou[MAX_PLAYER_NAME], deu[MAX_PLAYER_NAME];
  131.     if(!IsPlayerAdmin(playerid)) return SendClientMessage(playerid, -1, "Você não é um Administrador Logado Na RCON.");
  132.     if(sscanf(params, "ud", Id, level)) return SendClientMessage(playerid, -1, "Use /setadmin [Id] [LEVEL]");
  133.     if (level < 0 || level > 5) return SendClientMessage(playerid, -1, "Level inválido. Use de 1 á 5 .");
  134.     if(!IsPlayerConnected(Id)) return SendClientMessage(playerid, -1, "Este jogador não está online.");
  135.     GetPlayerName(Id, ganhou, sizeof(ganhou));
  136.     GetPlayerName(playerid, deu, sizeof(deu));
  137.     format(straliotiadmin, sizeof(straliotiadmin), "Você deu admin level %s para o %s", ganhou);
  138.     SendClientMessage(playerid, -1, straliotiadmin);
  139.     format(straliotiadmin, sizeof(straliotiadmin), "O admin %s deu admin level %s para você.", deu);
  140.     SendClientMessage(Id, -1, straliotiadmin);
  141.     Stralioti[Id][pAdministrador] =  level;
  142.     return 1;
  143. }
  144.  
  145. CMD:comandosadmin(playerid) {
  146.     ShowPlayerDialog(playerid, 3, DIALOG_STYLE_MSGBOX, "COMANDOS", "/a\n/reports\n/olhar\n/olharoff\n/vidat\n/vida\n/pinfo\n/asay\n/trazer\n/ir\n/veh\n/dc\n/reparar\n/congelar\n/descongelar\n/tapa\n/prender\n/soltar\n/kick\n/ban\n/coletet\n/colete\n/jetpack", "Ok", "");
  147.     return 1;
  148. }
  149.  
  150. CMD:a(playerid, params[]) {
  151.     if(Stralioti[playerid][pAdministrador] <= 0) return SendClientMessage(playerid, -1,"Você não é um Administrador");
  152. {
  153. for( new i; i < MAX_PLAYERS; i++ )
  154.     {
  155.        
  156.             if(sscanf(params, "s", texto)) return SendClientMessage(playerid, -1,"Use /a [texto]");
  157.             format(stralioti, sizeof(stralioti),"Chat Admin: %s: %s", PlayerNome(playerid),texto);
  158.             SendClientMessage(i,-1,stralioti);
  159.         }
  160. }
  161.     return 1;
  162. }
  163.  
  164. CMD:creditosfs(playerid) {
  165.     SendClientMessage(playerid, -1,"Filterscript feito por : Fábio Stralioti");
  166.     return 1;
  167. }
  168.  
  169. CMD:jetpack(playerid) {
  170.     if(Stralioti[playerid][pAdministrador] <= 0) return SendClientMessage(playerid, -1,"Você não é um Administrador");
  171.     SetPlayerSpecialAction(playerid, 2);
  172.     format(stralioti, sizeof(stralioti),"O Administrador %s criou um jetpack", PlayerNome(playerid));
  173.     SendClientMessageToAll(-1, stralioti);
  174.     return 1;
  175. }
  176.  
  177. CMD:asay(playerid, params[]) {
  178.     if(Stralioti[playerid][pAdministrador] <= 0) return SendClientMessage(playerid, -1,"Você não é um Administrador");
  179.     if(sscanf(params, "s", texto)) return SendClientMessage(playerid, -1, "Use /asay [texto]");
  180.     format(stralioti, sizeof(stralioti), "Administrador: %s: %s", PlayerNome(playerid), params);
  181.     SendClientMessageToAll(-1, stralioti);
  182.     return 1;
  183. }
  184.  
  185. CMD:reports(playerid) {
  186.     if(Stralioti[playerid][pAdministrador] <= 0) return SendClientMessage(playerid, -1,"Você não é um Administrador"); {
  187.         format(stralioti2, sizeof(stralioti2), "%s Viu algo de ilegal? use /reportar id motivo", stralioti2);
  188.         SendClientMessageToAll(-1, stralioti2);
  189.     }
  190.     return 1;
  191. }
  192.  
  193. CMD:tr(playerid, params[])
  194. return cmd_trazer(playerid, params);
  195.  
  196. CMD:trazer(playerid, params[]) {
  197.     if(Stralioti[playerid][pAdministrador] <= 0) return SendClientMessage(playerid, -1,"Você não é um Administrador");
  198.     if(sscanf(params, "u", Id)) return SendClientMessage(playerid, -1,"Use /trazer [id]");
  199.     if(!IsPlayerConnected(Id))
  200.         return SendClientMessage(playerid, -1,"Este jogador não se encontra online");
  201.     GetPlayerPos(playerid, FX, FY, FZ);
  202.     SetPlayerPos(Id, FX, FY, FZ);
  203.     format(stralioti, sizeof(stralioti), "O %s trouxe o %s", PlayerNome(playerid), PlayerNome(Id));
  204.     SendClientMessage(playerid, -1, stralioti);
  205.     return 1;
  206. }
  207.  
  208. CMD:veh(playerid) {
  209.     if(Stralioti[playerid][pAdministrador] <= 0) return SendClientMessage(playerid, -1,"Você não é um Administrador");
  210.     ShowPlayerDialog(playerid, VEH, DIALOG_STYLE_LIST, "VEH", "Sultan\nInfernus\nNRG-500\nOnibus\nSuper-GT", "Escolher", "Sair");
  211.     return 1;
  212. }
  213.  
  214. CMD:dc(playerid) {
  215.     if(Stralioti[playerid][pAdministrador] <= 0) return SendClientMessage(playerid, -1,"Você não é um Administrador");
  216.     if(!IsPlayerInAnyVehicle(playerid)) return SendClientMessage(playerid, -1,"Você não está em um veículo");
  217.     new veiculo;
  218.     veiculo = GetPlayerVehicleID(playerid);
  219.     DestroyVehicle(veiculo);
  220.     SendClientMessage(playerid, -1,"Você deletou o veiculo");
  221.     return 1;
  222. }
  223.  
  224. CMD:kick(playerid, params[]) {
  225.     if(Stralioti[playerid][pAdministrador] <= 0) return SendClientMessage(playerid, -1,"Você não é um Administrador");
  226.     if(sscanf(params, "us", Id, motivo)) return SendClientMessage(playerid, -1,"Use /kick [id] [motivo]");
  227.     if(!IsPlayerConnected(Id))
  228.         return SendClientMessage(playerid, -1,"Este jogador não se enconta online");
  229.     format(stralioti, sizeof(stralioti), "O Administrador %s kikou o %s motivo: %s", PlayerNome(playerid), PlayerNome(Id), motivo);
  230.     SendClientMessageToAll(-1, stralioti);
  231.     Kick(Id);
  232.     return 1;
  233. }
  234.  
  235. CMD:ban(playerid, params[]) {
  236.     if(Stralioti[playerid][pAdministrador] <= 0) return SendClientMessage(playerid, -1,"Você não é um Administrador");
  237.     if(sscanf(params, "us", Id, motivo)) return SendClientMessage(playerid, -1,"Use /ban [id] [motivo]");
  238.     if(!IsPlayerConnected(Id))
  239.         return SendClientMessage(playerid, -1,"Este jogador não se encontra online");
  240.     format(stralioti, sizeof(stralioti), "O Administrador %s baniu o %s motivo: %s", PlayerNome(playerid), PlayerNome(Id), motivo);
  241.     format(stralioti,sizeof(stralioti),banido,PlayerNome(Id));
  242.     DOF2_CreateFile(stralioti);
  243.     Ban(Id);
  244.     return 1;
  245. }
  246.  
  247. CMD:tapa(playerid, params[]) {
  248.     new Float:pos[3];
  249.     if(Stralioti[playerid][pAdministrador] <= 0) return SendClientMessage(playerid, -1,"Você não é um Administrador");
  250.     if(sscanf(params, "u", Id)) return SendClientMessage(playerid, -1,"Use /tapa [id]");
  251.     if(!IsPlayerConnected(Id))
  252.         return SendClientMessage(playerid, -1,"Este jogador não se encontra online");
  253.     GetPlayerHealth(Id, vida);
  254.     SetPlayerHealth(Id, vida-5);
  255.     GetPlayerPos(Id, pos[0], pos[1], pos[2]);
  256.     SetPlayerPos(Id, pos[0], pos[1], pos[2]+5);
  257.     format(stralioti, sizeof(stralioti), "O Administrador %s deu um tapa no %s", PlayerNome(playerid), PlayerNome(Id));
  258.     SendClientMessageToAll(-1, stralioti);
  259.     return 1;
  260. }
  261.  
  262. CMD:reparar(playerid) {
  263.     if(Stralioti[playerid][pAdministrador] <= 0) return SendClientMessage(playerid, -1,"Você não é um Administrador");
  264.     if(!IsPlayerInAnyVehicle(playerid)) return SendClientMessage(playerid, -1,"Você não está em um veículo");
  265.     RepairVehicle(GetPlayerVehicleID(playerid));
  266.     return 1;
  267. }
  268.  
  269. CMD:ir(playerid, params[]) {
  270.     if(Stralioti[playerid][pAdministrador] <= 0) return SendClientMessage(playerid, -1,"Você não é um Administrador");
  271.     if(sscanf(params, "u", Id)) return SendClientMessage(playerid, -1,"Use /ir [id]");
  272.     if(!IsPlayerConnected(Id))
  273.         return SendClientMessage(playerid, -1,"Este jogador não se encontra online");
  274.     GetPlayerPos(Id, FX, FY, FZ);
  275.     SetPlayerPos(playerid, FX, FY, FZ);
  276.     format(stralioti, sizeof(stralioti), "O %s foi até o %s", PlayerNome(playerid), PlayerNome(Id));
  277.     SendClientMessage(playerid, -1, stralioti);
  278.     return 1;
  279. }
  280.  
  281. CMD:olhar(playerid, params[]) {
  282.     if(Stralioti[playerid][pAdministrador] <= 0) return SendClientMessage(playerid, -1,"Você não é um Administrador");
  283.     if(sscanf(params, "u", Id)) return SendClientMessage(playerid, -1,"Use /olhar [id]");
  284.     if(!IsPlayerConnected(Id))
  285.         return SendClientMessage(playerid, -1, "Este jogador não se encontra online");
  286.     SendClientMessage(playerid, -1,"Você entrou no modo espectador");
  287.     TogglePlayerSpectating(Id, 1);
  288.     return 1;
  289. }
  290.  
  291. CMD:olharoff(playerid, params[]) {
  292.     if(Stralioti[playerid][pAdministrador] <= 0) return SendClientMessage(playerid, -1,"Você não é um Administrador");
  293.     SendClientMessage(playerid, -1,"Você saiu do modo espectador");
  294.     TogglePlayerSpectating(Id, 0);
  295.     return 1;
  296. }
  297.  
  298. CMD:prender(playerid, params[]) {
  299.     if(Stralioti[playerid][pAdministrador] <= 0) return SendClientMessage(playerid, -1,"Você não é um Administrador");
  300.     if(sscanf(params, "uds", Id, minutos, motivo)) return SendClientMessage(playerid, -1,"Use /prender [id] [minutos] [motivo]");
  301.     if(!IsPlayerConnected(Id))
  302.         return SendClientMessage(playerid, -1,"Este jogador não se encontra online");
  303.     SetPlayerInterior(playerid, 5);
  304.     SetPlayerPos(playerid, 323.3304, 306.3833, 999.1484);
  305.     format(stralioti, sizeof(stralioti), "O %s foi preso pelo Administrador %s tempo: %d motivo: %s", PlayerNome(playerid), PlayerNome(Id), minutos, motivo);
  306.     SendClientMessageToAll(-1, stralioti);
  307.     return 1;
  308. }
  309.  
  310. CMD:soltar(playerid, params[]) {
  311.     if(Stralioti[playerid][pAdministrador] <= 0) return SendClientMessage(playerid, -1,"Você não é um Administrador");
  312.     if(sscanf(params, "us", Id, motivo)) return SendClientMessage(playerid, -1,"Use /soltar [id] [motivo]");
  313.     if(!IsPlayerConnected(Id))
  314.         return SendClientMessage(playerid, -1,"Este jogador não se encontra online");
  315.     SpawnPlayer(playerid);
  316.     format(stralioti, sizeof(stralioti), "O %s foi solto pelo Administrador %s  motivo: %s", PlayerNome(playerid), PlayerNome(Id), motivo);
  317.     SendClientMessageToAll(-1, stralioti);
  318.     return 1;
  319. }
  320.  
  321. CMD:congelar(playerid, params[]) {
  322.     if(Stralioti[playerid][pAdministrador] <= 0) return SendClientMessage(playerid, -1,"Você não é um Administrador");
  323.     if(sscanf(params, "u", Id)) return SendClientMessage(playerid, -1,"Use /congelar [id]");
  324.     if(!IsPlayerConnected(Id))
  325.         return SendClientMessage(playerid, -1,"Este jogador não se encontra online");
  326.     TogglePlayerControllable(Id,0);
  327.     format(stralioti, sizeof(stralioti), "O Administrador %s congelou o %s", PlayerNome(playerid), PlayerNome(Id));
  328.     SendClientMessage(playerid, -1, stralioti);
  329.     return 1;
  330. }
  331.  
  332. CMD:descongelar(playerid, params[]) {
  333.     if(Stralioti[playerid][pAdministrador] <= 0) return SendClientMessage(playerid, -1,"Você não é um Administrador");
  334.     if(sscanf(params, "u", Id)) return SendClientMessage(playerid, -1,"Use /descongelar [id]");
  335.     if(!IsPlayerConnected(Id))
  336.         return SendClientMessage(playerid, -1,"Este jogador não se encontra online");
  337.     TogglePlayerControllable(Id,1);
  338.     format(stralioti, sizeof(stralioti), "O Administrador %s descongelou o %s", PlayerNome(playerid), PlayerNome(Id));
  339.     SendClientMessage(playerid, -1, stralioti);
  340.     return 1;
  341. }
  342.  
  343. CMD:vidat(playerid) {
  344.     new i;
  345.     if(Stralioti[playerid][pAdministrador] <= 0) return SendClientMessage(playerid, -1,"Você não é um Administrador");
  346.     format(stralioti, sizeof(stralioti), "%s deu vida para todos", PlayerNome(playerid));
  347.     SendClientMessageToAll(-1, stralioti);
  348.     SetPlayerHealth(i, 100);
  349.     return 1;
  350. }
  351.  
  352. CMD:coletet(playerid) {
  353.     new i;
  354.     if(Stralioti[playerid][pAdministrador] <= 0) return SendClientMessage(playerid, -1,"Você não é um Administrador");
  355.     format(stralioti, sizeof(stralioti), "%s deu colete para todos", PlayerNome(playerid));
  356.     SendClientMessageToAll(-1, stralioti);
  357.     SetPlayerArmour(i, 100);
  358.     return 1;
  359. }
  360.  
  361. CMD:pinfo(playerid, params[]) {
  362.     if(Stralioti[playerid][pAdministrador] <= 0) return SendClientMessage(playerid, -1,"Você não é um Administrador");
  363.     if(sscanf(params, "u", Id)) return SendClientMessage(playerid, -1,"Use /pinfo [id]");
  364.     if(!IsPlayerConnected(Id))
  365.         return SendClientMessage(playerid, -1, "Este jogador não se encontra online");
  366.     new ip[24];
  367.     new Float:health;
  368.     new Float:armour;
  369.     new ping = GetPlayerPing(Id);
  370.     GetPlayerHealth(Id, health);
  371.     GetPlayerArmour(Id, armour);
  372.     GetPlayerIp(Id, ip, sizeof ip);
  373.  
  374.     format(stralioti, sizeof(stralioti), "Informações de: %s", PlayerNome(playerid));
  375.     SendClientMessage(playerid, -1, stralioti);
  376.  
  377.     format(stralioti, sizeof(stralioti), "IP: %s", ip);
  378.     SendClientMessage(playerid, -1, stralioti);
  379.     format(stralioti, sizeof(stralioti), "Vida: %.1f", health);
  380.     SendClientMessage(playerid, -1, stralioti);
  381.     format(stralioti, sizeof(stralioti), "Colete: %.1f", armour);
  382.     SendClientMessage(playerid, -1, stralioti);
  383.     format(stralioti, sizeof(stralioti), "Ping: %d", ping);
  384.     SendClientMessage(playerid, -1, stralioti);
  385.     return 1;
  386. }
  387.  
  388. CMD:vida(playerid,params[]) {
  389.     if(Stralioti[playerid][pAdministrador] <= 0) return SendClientMessage(playerid, -1,"Você não é um Administrador");
  390.     if(sscanf(params,"uf",Id,vida)) return SendClientMessage(playerid, -1,"Use /vida [id] [quantidade]");
  391.     if(vida < 0 || vida  > 100) return SendClientMessage(playerid, -1,"Quantidade invalida 0 - 100");
  392.     SetPlayerHealth(Id,vida);
  393.     format(stralioti, sizeof(stralioti), "O Administrador %s setou a vida do %s", PlayerNome(playerid), PlayerNome(Id));
  394.     return 1;
  395. }
  396.  
  397. CMD:colete(playerid,params[]) {
  398.     if(Stralioti[playerid][pAdministrador] <= 0) return SendClientMessage(playerid, -1,"Você não é um Administrador");
  399.     if(sscanf(params,"uf",Id,colete)) return SendClientMessage(playerid, -1,"Use /vida [id] [quantidade]");
  400.     if(colete < 0 || colete  > 100) return SendClientMessage(playerid, -1,"Quantidade invalida 0 - 100");
  401.     SetPlayerArmour(Id,colete);
  402.     format(stralioti, sizeof(stralioti), "O Administrador %s setou a vida do %s", PlayerNome(playerid), PlayerNome(Id));
  403.     return 1;
  404. }
  405.  
  406. PlayerNome(playerid) {
  407.     new nomeplayer[MAX_PLAYER_NAME];
  408.     GetPlayerName(playerid, nomeplayer, sizeof(nomeplayer));
  409.     return nomeplayer;
  410. }
  411.  
  412. forward StraliotiTag(playerid);
  413. public StraliotiTag(playerid) {
  414.     if(Stralioti[playerid][pAdministrador] > 0) {
  415.         SetPlayerChatBubble(playerid, "Administrador", -1, 100.0, 6000);
  416.     }
  417.     return 1;
  418. }
  419.  
  420. forward Kicka(p); public Kicka(p) {
  421.     #undef Kick
  422.     Kick(p);
  423.     #define Kick(%0) SetTimerEx("Kicka", 100, false, "i", %0)
  424.     return 1;
  425. }
  426.  
  427. forward Bana(p); public Bana(p) {
  428.     #undef Ban
  429.     Ban(p);
  430.     #define Ban(%0) SetTimerEx("Bana", 100, false, "i", %0)
  431.     return 1;
  432. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement