Advertisement
MarlonCS

Sistema de Polícia

Jul 10th, 2012
406
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Pawn 27.35 KB | None | 0 0
  1. /* ------------------ FilterScript de Policial 1.5 ----------------------------
  2.  
  3.             Criador: [XPG]MarlonCS
  4.             ~Não retire os créditos~
  5.             (Ah foda-se, faço o que quiser com ele)
  6. -----------------------------------------------------------------------------*/
  7.  
  8. // ________________ Includes _________________
  9. #include <a_samp>
  10. #include <zcmd>
  11. #include <DOF2>
  12.  
  13. // ________________ Defines ________________
  14. #define COR_CINZA 0xBFC0C2FF
  15. #define COR_BRANCO 0xFAFAFAFF
  16. #define COR_VERMELHO 0xFF0000AA
  17. #define COR_AZUL 0x00A5FFFF
  18. #define DialogBoxEx 1
  19.  
  20. // ________________ News ________________
  21.  
  22. new
  23.    quantidade[MAX_PLAYERS],
  24.    procurando[MAX_PLAYERS],
  25.    procurado[MAX_PLAYERS],
  26.    policial[MAX_PLAYERS],
  27.    nome[MAX_PLAYER_NAME],
  28.    Prisao[MAX_PLAYERS],
  29.    mortes[MAX_PLAYERS],
  30.    level[MAX_PLAYERS],
  31.    time[MAX_PLAYERS],
  32.    giveplayerid,
  33.    playermoney,
  34.    arquivo[50],
  35.    texto[256],
  36.    timer[500],
  37.    cmd[256],
  38.    carro,
  39.    idx
  40. ;
  41. public OnFilterScriptInit()
  42. {
  43.     print("\n--------------|||||--------------------------");
  44.     print(" Sistema de Policia ---- made by [XPG]MarlonCS");
  45.     print(" .........................Carregado com sucesso!");
  46.     print("-----------------------------------------------\n");
  47.     return 1;
  48. }
  49. public OnFilterScriptExit()
  50. {
  51.     DOF2_Exit();
  52.     return 1;
  53. }
  54. public OnPlayerConnect(playerid)
  55. {
  56. //  ___________________ Carregar Informações do Player ___________________
  57.     format(arquivo, sizeof(arquivo), "PolicialSys/%s.ini", pnome(playerid));
  58.     policial[playerid] = DOF2_GetInt(arquivo, "Policial");
  59.     procurado[playerid] = DOF2_GetInt(arquivo, "Procurado");
  60.     level[playerid] = DOF2_GetInt(arquivo, "LevelProcura");
  61.     Prisao[playerid] = DOF2_GetInt(arquivo, "Preso");
  62.     quantidade[playerid] = DOF2_GetInt(arquivo, "Contagem");
  63.     SetPlayerWantedLevel(playerid, level[playerid]);
  64.     DOF2_SaveFile();
  65.     return 1;
  66. }
  67. public OnPlayerDisconnect(playerid, reason)
  68. {
  69.     format(arquivo, sizeof(arquivo), "PolicialSys/%s.ini", pnome(playerid));
  70.     level[playerid] = GetPlayerWantedLevel(playerid);
  71.     DOF2_SetInt(arquivo, "LevelProcura", level[playerid]);
  72.     DOF2_SetInt(arquivo, "Procurado", procurado[playerid]);
  73.     DOF2_SetInt(arquivo, "Preso", Prisao[playerid]);
  74.     DOF2_SetInt(arquivo,"Contagem",quantidade[playerid]);
  75.     DOF2_SaveFile();
  76.     return 1;
  77. }
  78. public OnPlayerDeath(playerid, killerid, reason)
  79. {
  80.     mortes[playerid]++;
  81.     quantidade[killerid]++;
  82.     new arquivok[32];
  83.     new tmatador[32];
  84.     format(arquivo, sizeof(arquivo), "PolicialSys/%s.ini",pnome(playerid));
  85.    
  86.     if(policial[playerid]==1) { // Se o player matar um policial
  87.         if(policial[killerid]==0) {
  88.             new condenado[MAX_PLAYER_NAME];
  89.             GetPlayerName(killerid, condenado, MAX_PLAYER_NAME);
  90.             procurado[killerid]=1;
  91.             level[killerid]=GetPlayerWantedLevel(killerid);
  92.             if(level[killerid]==0)SetPlayerWantedLevel(killerid, 1);
  93.             if(level[killerid]==1)SetPlayerWantedLevel(killerid, 2);
  94.             if(level[killerid]==2)SetPlayerWantedLevel(killerid, 3);
  95.             if(level[killerid]==3)SetPlayerWantedLevel(killerid, 4);
  96.             if(level[killerid]==4)SetPlayerWantedLevel(killerid, 5);
  97.             if(level[killerid]==5)SetPlayerWantedLevel(killerid, 6);
  98.             if(level[killerid]==6)SetPlayerWantedLevel(killerid, 6);
  99.             SendClientMessage(killerid,COR_VERMELHO,"[SERVER] Seu nível de procurado aumentou.");
  100.             level[playerid] = GetPlayerWantedLevel(killerid);
  101.             format(arquivo, sizeof(arquivo), "infos/%s.ini",condenado);
  102.             DOF2_SetInt(arquivo,"Procurado",procurado[killerid]);
  103.             DOF2_SetInt(arquivo,"LevelProcura",level[killerid]);
  104.             DOF2_SetInt(arquivo,"Contagem",quantidade[killerid]);
  105.             DOF2_SaveFile();
  106.             format(texto,sizeof(texto),"[SERVER] Player %s matou o policial %s.",condenado,pnome(playerid));
  107.             SendClientMessageToAll(COR_VERMELHO, texto);
  108.         }
  109.     }
  110.  
  111.     if(policial[killerid]==1 && procurado[playerid]==1 && GetPlayerWantedLevel(playerid) > 0) { // Se o policial matar um procurado
  112.         new pmnome[MAX_PLAYER_NAME];
  113.         GetPlayerName(killerid, pmnome, MAX_PLAYER_NAME);
  114.         level[playerid] = GetPlayerWantedLevel(killerid);
  115.         if(level[playerid]==1)GivePlayerMoney(killerid, 1000);
  116.         if(level[playerid]==2)GivePlayerMoney(killerid, 2000);
  117.         if(level[playerid]==3)GivePlayerMoney(killerid, 3000);
  118.         if(level[playerid]==4)GivePlayerMoney(killerid, 4000);
  119.         if(level[playerid]==5)GivePlayerMoney(killerid, 5000);
  120.         if(level[playerid]==6)GivePlayerMoney(killerid, 6000);
  121.         GivePlayerMoney(playerid, -500);
  122.         format(texto, sizeof(texto), "[SERVER] Policial %s matou o procurado %s [%i].",pmnome,pnome(playerid),playerid);
  123.         SendClientMessageToAll(COR_AZUL,texto);
  124.         procurado[playerid]=0;
  125.         quantidade[playerid]=0;
  126.         level[playerid] = SetPlayerWantedLevel(playerid, 0);
  127.         DOF2_SetInt(arquivo,"Procurado",procurado[playerid]);
  128.         DOF2_SetInt(arquivo,"LevelProcura",level[playerid]);
  129.         DOF2_SetInt(arquivo,"Contagem",quantidade[playerid]);
  130.         DOF2_SaveFile();
  131.     }
  132.  
  133.     if(GetPlayerState(killerid) == PLAYER_STATE_DRIVER) { // Se alguém cometer DB
  134.         if(policial[killerid]==0) {
  135.             procurado[killerid]=1;
  136.             new acusado[MAX_PLAYER_NAME];
  137.             new vitima[MAX_PLAYER_NAME];
  138.             GetPlayerName(killerid, acusado, MAX_PLAYER_NAME);
  139.             GetPlayerName(playerid, vitima, MAX_PLAYER_NAME);
  140.             SendClientMessage(killerid,COR_VERMELHO,"[SERVER] Seu nível de procurado aumentou.");
  141.             GameTextForPlayer(playerid,"~r~Atropelado",5000,3);
  142.             format(texto, sizeof(texto), "[SERVER] %s Fez Drive-By (DB) em %s.",acusado,vitima);
  143.             format(arquivo, sizeof(arquivo), "PolicialSys/%s.ini",acusado);
  144.             DOF2_SetInt(arquivo,"Procurado",procurado[killerid]);
  145.             DOF2_SaveFile();
  146.             level[killerid] = GetPlayerWantedLevel(killerid);
  147.             //Aumentar level de procurado do player
  148.             if(level[killerid]==0)SetPlayerWantedLevel(killerid, 1);
  149.             if(level[killerid]==1)SetPlayerWantedLevel(killerid, 2);
  150.             if(level[killerid]==2)SetPlayerWantedLevel(killerid, 3);
  151.             if(level[killerid]==3)SetPlayerWantedLevel(killerid, 4);
  152.             if(level[killerid]==4)SetPlayerWantedLevel(killerid, 5);
  153.             if(level[killerid]==5)SetPlayerWantedLevel(killerid, 6);
  154.             if(level[killerid]==6)SetPlayerWantedLevel(killerid, 6);
  155.             for(new i; i < MAX_PLAYERS; i++)
  156.                 if(policial[i]==1){SendClientMessage(i, 0xCECE00AA, texto);}
  157.         }
  158.     }
  159.  
  160.     // Quanto mais matar, mais procurado fica
  161.     GetPlayerName(killerid,tmatador,sizeof(tmatador));
  162.     format(arquivok, sizeof(arquivok), "infos/%s.ini",tmatador);
  163.     DOF2_SetInt(arquivok,"Contagem",quantidade[killerid]);
  164.     if(quantidade[playerid] == 10) {
  165.         if(policial[killerid]==0) {
  166.             new matador[MAX_PLAYER_NAME];
  167.             GetPlayerName(killerid, matador, MAX_PLAYER_NAME);
  168.             format(arquivo, sizeof(arquivo), "PolicialSys/%s.ini",matador);
  169.             procurado[killerid]=1;
  170.             DOF2_SetInt(arquivo,"Procurado",procurado[killerid]);
  171.             DOF2_SaveFile();
  172.             SendClientMessage(killerid,COR_VERMELHO,"[SERVER] Seu nível de procurado aumentou.");
  173.             SetPlayerWantedLevel(killerid, 1);
  174.         }
  175.     }
  176.     if(quantidade[killerid] == 20) {
  177.         if(policial[killerid]==0) {
  178.             new matador[MAX_PLAYER_NAME];
  179.             GetPlayerName(killerid, matador, MAX_PLAYER_NAME);
  180.             format(arquivo, sizeof(arquivo), "PolicialSys/%s.ini",matador);
  181.             procurado[killerid]=1;
  182.             DOF2_SetInt(arquivo,"Procurado",procurado[killerid]);
  183.             DOF2_SaveFile();
  184.             SendClientMessage(killerid,COR_VERMELHO,"[SERVER] Seu nível de procurado aumentou.");
  185.             SetPlayerWantedLevel(killerid, 2);
  186.         }
  187.     }
  188.     if(quantidade[killerid] == 30) {
  189.         if(policial[killerid]==0) {
  190.             new matador[MAX_PLAYER_NAME];
  191.             GetPlayerName(killerid, matador, MAX_PLAYER_NAME);
  192.             format(arquivo, sizeof(arquivo), "PolicialSys/%s.ini",matador);
  193.             procurado[killerid]=1;
  194.             DOF2_SetInt(arquivo,"Procurado",procurado[killerid]);
  195.             DOF2_SaveFile();
  196.             SendClientMessage(killerid,COR_VERMELHO,"[SERVER] Seu nível de procurado aumentou.");
  197.             SetPlayerWantedLevel(killerid, 3);
  198.         }
  199.     }
  200.     if(quantidade[killerid] == 40) {
  201.         if(policial[killerid]==0) {
  202.             new matador[MAX_PLAYER_NAME];
  203.             GetPlayerName(killerid, matador, MAX_PLAYER_NAME);
  204.             format(arquivo, sizeof(arquivo), "PolicialSys/%s.ini",matador);
  205.             procurado[killerid]=1;
  206.             DOF2_SetInt(arquivo,"Procurado",procurado[killerid]);
  207.             DOF2_SaveFile();
  208.             SendClientMessage(killerid,COR_VERMELHO,"[SERVER] Seu nível de procurado aumentou.");
  209.             SetPlayerWantedLevel(killerid, 4);
  210.         }
  211.     }
  212.     if(quantidade[killerid] == 50) {
  213.         if(policial[killerid]==0) {
  214.             new matador[MAX_PLAYER_NAME];
  215.             GetPlayerName(killerid, matador, MAX_PLAYER_NAME);
  216.             format(arquivo, sizeof(arquivo), "PolicialSys/%s.ini",matador);
  217.             procurado[killerid]=1;
  218.             DOF2_SetInt(arquivo,"Procurado",procurado[killerid]);
  219.             DOF2_SaveFile();
  220.             SendClientMessage(killerid,COR_VERMELHO,"[SERVER] Seu nível de procurado aumentou.");
  221.             SetPlayerWantedLevel(killerid, 5);
  222.         }
  223.     }
  224.     if(quantidade[killerid] == 60) {
  225.         if(policial[killerid]==0) {
  226.             new matador[MAX_PLAYER_NAME];
  227.             GetPlayerName(killerid, matador, MAX_PLAYER_NAME);
  228.             format(arquivo, sizeof(arquivo), "PolicialSys/%s.ini",matador);
  229.             procurado[killerid]=1;
  230.             DOF2_SetInt(arquivo,"Procurado",procurado[killerid]);
  231.             DOF2_SaveFile();
  232.             SendClientMessage(killerid,COR_VERMELHO,"[SERVER] Seu nível de procurado aumentou.");
  233.             SetPlayerWantedLevel(killerid, 6);
  234.         }
  235.     }
  236.     if(quantidade[killerid] > 61) { // Nível crítico. Aqui o Player pode ser preso
  237.         if(policial[killerid]==0) {
  238.             new matador[MAX_PLAYER_NAME];
  239.             GetPlayerName(killerid, matador, MAX_PLAYER_NAME);
  240.             format(arquivo, sizeof(arquivo), "PolicialSys/%s.ini",matador);
  241.             procurado[killerid]=1;
  242.             DOF2_SetInt(arquivo,"Procurado",procurado[killerid]);
  243.             DOF2_SaveFile();
  244.             SendClientMessage(killerid,COR_VERMELHO,"[SERVER] Cuidado, você pode ser preso agora.");
  245.             SetPlayerWantedLevel(killerid, 7);
  246.         }
  247.     }
  248.     return 1;
  249. }
  250. public OnPlayerSpawn(playerid)
  251. {
  252.     if(Prisao[playerid]==1) {
  253.         SetPlayerPos(playerid, 197.6661, 173.8179, 1003.0233);
  254.         SetPlayerInterior(playerid, 3);
  255.         SetTimerEx("SetPlayerPrisao", 1800000, 0, "i", playerid);
  256.         SendClientMessage(playerid, COR_VERMELHO, "[SERVER] Aguarde 3 minutos para se libertar.");
  257.     }
  258.     return 1;
  259. }
  260. stock pnome(playerid)
  261. {
  262. GetPlayerName(playerid, nome, sizeof(nome));
  263. return nome;
  264. }
  265. public OnPlayerCommandReceived(playerid, cmdtext[])
  266. {
  267. cmd = strtok(cmdtext, idx);
  268. cmd = #;
  269. strcat(cmd, cmdtext);
  270. return 1;
  271. }
  272. strtok(const string[], &index)
  273. {
  274.     new length = strlen(string);
  275.     while ((index < length) && (string[index] <= ' '))
  276.     {
  277.         index++;
  278.     }
  279.  
  280.     new offset = index;
  281.     new result[20];
  282.     while ((index < length) && (string[index] > ' ') && ((index - offset) < (sizeof(result) - 1)))
  283.     {
  284.         result[index - offset] = string[index];
  285.         index++;
  286.     }
  287.     result[index - offset] = EOS;
  288.     return result;
  289. }
  290. forward SetPlayerPrisao(playerid);
  291. public SetPlayerPrisao(playerid)
  292. {
  293.     SetPlayerInterior(playerid,0);
  294.     Prisao[playerid] = 0;
  295.     GameTextForPlayer(playerid, "~g~Voce esta livre!", 1000,1);
  296.     level[playerid]=0;
  297.     SetPlayerWantedLevel(playerid, level[playerid]);
  298.     procurado[playerid]=0;
  299.     quantidade[playerid]=0;
  300.     format(arquivo, sizeof(arquivo), "infos/%s.ini",pnome(playerid));
  301.     DOF2_SetInt(arquivo,"Procurado",procurado[playerid]);
  302.     DOF2_SetInt(arquivo,"LevelProcura",level[playerid]);
  303.     DOF2_SetInt(arquivo,"Preso",Prisao[playerid]);
  304.     DOF2_SetInt(arquivo,"Contagem",quantidade[playerid]);
  305.     DOF2_SaveFile();
  306.     SpawnPlayer(playerid);
  307.     SendClientMessage(playerid,0x00FF00FF,"[SERVER] Pronto, você está livre.");
  308.     return 1;
  309. }
  310. // ____________________________ ZCMDs ____________________________
  311. CMD:pmcmds(playerid, params[])
  312. {
  313.     if(policial[playerid]==1) {
  314.         new strdialog[2024];
  315.         format(strdialog, sizeof(strdialog),"%s%s",strdialog, "{00FF00}/pmc [texto]{FFFFFF} => Chat Policial.\n");
  316.         format(strdialog, sizeof(strdialog),"%s%s",strdialog, "{00FF00}/procurar [ID]{FFFFFF} => Procure um Player por ID.\n");
  317.         format(strdialog, sizeof(strdialog),"%s%s",strdialog, "{00FF00}/v{FFFFFF} => Crie um veículo policial.\n");
  318.         format(strdialog, sizeof(strdialog),"%s%s",strdialog, "{00FF00}/procurados{FFFFFF} => Ver lista de procurados.\n");
  319.         format(strdialog, sizeof(strdialog),"%s%s",strdialog, "{00FF00}/moto{FFFFFF} => Crie uma moto policial.\n");
  320.         format(strdialog, sizeof(strdialog),"%s%s",strdialog, "{00FF00}/dizer{FFFFFF} => Diga algo em destaque para os players.\n");
  321.         format(strdialog, sizeof(strdialog),"%s%s",strdialog, "{00FF00}/helicoptero{FFFFFF} => Crie um helicóptero policial.\n");
  322.         format(strdialog, sizeof(strdialog),"%s%s",strdialog, "{00FF00}/prender [ID]{FFFFFF} => Prenda um Player por 3 minutos.\n");
  323.         format(strdialog, sizeof(strdialog),"%s%s",strdialog, "{00FF00}/desprender [ID]{FFFFFF} => Liberte um player que esteja preso.\n");
  324.         return ShowPlayerDialog(playerid, DialogBoxEx, DIALOG_STYLE_MSGBOX, "===== {00FF00}Comandos de Policial{FFFFFF} =====", strdialog, "OK", "");
  325.     }
  326.     return SendClientMessage(playerid, COR_CINZA, "[SERVER] Você não é policial!");
  327. }
  328. CMD:policiais(playerid, params[])
  329. {
  330.     new arm[500]; arm[0] = '\0';
  331.     new str[500];  str[0] = '\0';
  332.     new Nome[24]; Nome[0] = '0';
  333.     new count;
  334.     for(new i=0;i<MAX_PLAYERS;i++) {
  335.         if(policial[i] > 0 && IsPlayerConnected(i)) {
  336.             count++;
  337.             GetPlayerName(i, Nome, sizeof(Nome));
  338.             format(str, sizeof(str),"{FFFFFF}Nome: {00FF00}%s {FFFFFF}[%i]\n", Nome, i);
  339.             strcat(arm, str);
  340.         }
  341.     }
  342.     if(count<=0)return ShowPlayerDialog(playerid, 10, DIALOG_STYLE_MSGBOX, "===== {00FF00}Policiais{FFFFFF} ======", "{FF0000}Nenhum policial online", "OK", "");
  343.     if(count>0)ShowPlayerDialog(playerid, 10, DIALOG_STYLE_MSGBOX, "===== {00FF00}Policiais{FFFFFF} ======", arm, "OK", "");
  344.     return 1;
  345. }
  346. CMD:procurados(playerid, params[])
  347. {
  348.     static arm[500]; arm[0] = '\0';
  349.     static str[500];  str[0] = '\0';
  350.     static Nome[24]; Nome[0] = '0';
  351.     new count;
  352.     new preso[32];
  353.     for(new i=0;i<MAX_PLAYERS;i++) {
  354.         if(procurado[i] > 0 && IsPlayerConnected(i) && policial[i]==0 && GetPlayerWantedLevel(i) > 0) {
  355.             count++;
  356.             GetPlayerName(i, Nome, sizeof(Nome));
  357.             if(Prisao[i]==1)preso="{00FF00}Sim";
  358.             if(Prisao[i]==0)preso="{FF0000}Não";
  359.             format(str, sizeof(str),"{FFFFFF}Nome: {FF0000}%s {FFFFFF}[%i] {FF0000}(Nível: %d) {FFFFFF}| Preso: %s{FFFFFF}\n", Nome, i, GetPlayerWantedLevel(i), preso);
  360.             strcat(arm, str);
  361.         }
  362.     }
  363.     if(count<=0)return ShowPlayerDialog(playerid, 10, DIALOG_STYLE_MSGBOX, "===== {FF0000}Procurados{FFFFFF} ======", "{00FF00}Nenhum suspeito online", "OK", "");
  364.     if(count>0)ShowPlayerDialog(playerid, 10, DIALOG_STYLE_MSGBOX, "===== {FF0000}Procurados{FFFFFF} ======", arm, "OK", "");
  365.     return 1;
  366. }
  367. CMD:pmc(playerid, params[])
  368. {
  369.     if(policial[playerid]==1) {
  370.         if(!cmd[3])return SendClientMessage(playerid, 0xFF0000FF, "[SERVER] USO: /chat [texto]");
  371.         format(texto, sizeof(texto), "[Policiais] %s: {FFFFFF}%s", pnome(playerid), cmd[5]);
  372.         for(new i=0;i<MAX_PLAYERS;i++)
  373.             if(policial[i]==1)SendClientMessage(i,0x1E90FFFF,texto);
  374.         return 1;
  375.     }
  376.     return SendClientMessage(playerid, COR_CINZA, "[SERVER] Você não é policial!");
  377. }
  378. CMD:procurar(playerid, params[])
  379. {
  380.     if(policial[playerid]==1) {
  381.         if(procurando[playerid]==0) {
  382.             new tmp[128];
  383.             tmp = strtok(cmd, idx);
  384.             giveplayerid = strval(tmp);
  385.             if(!strlen(tmp)) return SendClientMessage(playerid,0xFF0000FF,"[SERVER] USO: /procurar [ID]");
  386.             if(!IsPlayerConnected(giveplayerid)) return SendClientMessage(playerid, COR_BRANCO, "[SERVER] Id invalido.");
  387.             SendClientMessage(playerid, COR_AZUL, "[SERVER] Para desativar o GPS use /procurar d");
  388.             format(texto,sizeof(texto),"[SERVER] Policial %s está a sua procura.", pnome(playerid));
  389.             SendClientMessage(giveplayerid,COR_VERMELHO,texto);
  390.             new Float:X,Float:Y,Float:Z;
  391.             procurando[playerid]=1;
  392.             GetPlayerPos(giveplayerid, X,Y,Z);
  393.             SetPlayerCheckpoint(playerid, X,Y,Z, 6);
  394.             timer[playerid] = SetTimerEx("Procurar",100,true,"ii",playerid,giveplayerid);
  395.         }
  396.         if (procurando[playerid]==1) {
  397.             switch (cmd[10]) {
  398.                 case 'd': DisablePlayerCheckpoint(playerid), KillTimer(timer[playerid]), procurando[playerid]=0, SendClientMessage(playerid, COR_BRANCO, "[SERVER] GPS Desativado.");
  399.             }
  400.         }
  401.         return 1;
  402.     }
  403.     return SendClientMessage(playerid, COR_CINZA, "[SERVER] Você não é policial!");
  404. }
  405. CMD:dizer(playerid, params[])
  406. {
  407.     if(policial[playerid]==1) {
  408.         if(!cmd[5])return SendClientMessage(playerid, 0xFF0000FF, "[SERVER] USO: /dizer [texto]");
  409.         format(texto, sizeof(texto), "[POLICIAL] %s: {FFFFFF}%s", pnome(playerid), cmd[7]);
  410.         SendClientMessageToAll(0x00FF00AA, texto);
  411.         return 1;
  412.     }
  413.     return SendClientMessage(playerid, COR_CINZA, "[SERVER] Você não é policial!");
  414. }
  415. CMD:prender(playerid, params[])
  416. {
  417.     new tmp[128];
  418.     new variavel[256];
  419.     new nomep[32];
  420.     new Float:x, Float:y, Float:z;
  421.     if(policial[playerid]==1) {
  422.         tmp = strtok(cmd, idx);
  423.         giveplayerid = strval(tmp);
  424.         if(policial[giveplayerid]==1)return SendClientMessage(playerid, COR_CINZA, "[SERVER] Player é um policial!");
  425.         if(!strlen(tmp)) return SendClientMessage(playerid,0xFF0000FF,"[SERVER] USO: /prender [ID]");
  426.         if(!IsPlayerConnected(giveplayerid)) return SendClientMessage(playerid, COR_BRANCO, "[SERVER] Id invalido.");
  427.         if(Prisao[giveplayerid]==1) return SendClientMessage(playerid, COR_CINZA, "[SERVER] Player já está preso!");
  428.         level[giveplayerid] = GetPlayerWantedLevel(giveplayerid);
  429.         GetPlayerPos(giveplayerid, x, y, z);
  430.         if(IsPlayerConnected(giveplayerid) && IsPlayerInRangeOfPoint(playerid, 10, x, y, z)) {
  431.             if(level[giveplayerid] == 5) {
  432.                 Prisao[giveplayerid] = 1;
  433.                 GetPlayerName(giveplayerid,nomep,sizeof(nomep));
  434.                 SetPlayerPos(giveplayerid, 197.6661, 173.8179, 1003.0233);
  435.                 SetPlayerInterior(giveplayerid, 3);
  436.                 time[giveplayerid] = SetTimerEx("SetPlayerPrisao", 180000, 0, "i", giveplayerid);
  437.                 format(variavel,sizeof(variavel),"[SERVER] Você foi preso pelo policial %s",pnome(playerid));
  438.                 format(texto,sizeof(texto),"[SERVER] %s foi preso por 3 minutos pelo policial %s",nomep,pnome(playerid));
  439.                 SendClientMessage(giveplayerid, COR_VERMELHO, variavel);
  440.                 SendClientMessageToAll(COR_VERMELHO, texto);
  441.             }
  442.             if(level[giveplayerid] < 5){ return SendClientMessage(playerid, COR_CINZA, "[SERVER] O Player não tem level de procurado suficiente!"); }
  443.         }
  444.     }
  445.     return SendClientMessage(playerid, COR_CINZA, "[SERVER] Você não é policial!");
  446. }
  447. CMD:desprender(playerid, params[])
  448. {
  449.     new tmp[128];
  450.     new nomep[32];
  451.     if(policial[playerid]==1) {
  452.         tmp = strtok(cmd, idx);
  453.         giveplayerid = strval(tmp);
  454.         if(!strlen(tmp)) return SendClientMessage(playerid,0xFF0000FF,"[SERVER] USO: /desprender [ID]");
  455.         if(!IsPlayerConnected(giveplayerid)) return SendClientMessage(playerid, COR_BRANCO, "[SERVER] Id invalido.");
  456.         if(Prisao[giveplayerid]==0) return SendClientMessage(playerid, COR_CINZA, "[SERVER] Player não está preso!");
  457.         GetPlayerName(giveplayerid,nomep,sizeof(nomep));
  458.         SetPlayerInterior(giveplayerid,0);
  459.         SpawnPlayer(giveplayerid);
  460.         Prisao[giveplayerid] = 0;
  461.         GameTextForPlayer(giveplayerid, "~g~Voce esta livre!", 1000,1);
  462.         level[giveplayerid]=0;
  463.         SetPlayerWantedLevel(giveplayerid, level[giveplayerid]);
  464.         GetPlayerWantedLevel(giveplayerid);
  465.         KillTimer(time[giveplayerid]);
  466.         procurado[giveplayerid]=0;
  467.         quantidade[giveplayerid]=0;
  468.         format(arquivo, sizeof(arquivo), "infos/%s.ini",nomep);
  469.         DOF2_SetInt(arquivo,"Procurado",procurado[giveplayerid]);
  470.         DOF2_SetInt(arquivo,"LevelProcura",level[giveplayerid]);
  471.         DOF2_SetInt(arquivo,"Preso",Prisao[giveplayerid]);
  472.         DOF2_SetInt(arquivo,"Contagem",quantidade[giveplayerid]);
  473.         DOF2_SaveFile();
  474.         format(texto,sizeof(texto),"[SERVER] %s foi solto pelo policial %s",nomep,pnome(playerid));
  475.         SendClientMessageToAll(COR_AZUL,texto);
  476.         SendClientMessage(giveplayerid,0x00FF00FF,"[SERVER] Pronto, você está livre.");
  477.         return 1;
  478.     }
  479.     return SendClientMessage(playerid, COR_CINZA, "[SERVER] Você não é policial!");
  480. }
  481. CMD:v(playerid, params[])
  482. {
  483.     if(policial[playerid]==1) {
  484.         if(IsPlayerInAnyVehicle(playerid)) {
  485.             return SendClientMessage(playerid, 0x33AA33AA, "[SERVER] Você já está em um veículo");
  486.         }
  487.         playermoney = GetPlayerMoney(playerid);
  488.         if(playermoney > 1000) {
  489.             new Float:var0 = 0, Float:var1 = 0, Float:var2 = 0, Float:var3 = 0;
  490.             GetPlayerPos(playerid, var0, var1, var2);
  491.             GetPlayerFacingAngle(playerid, var3);
  492.             GivePlayerMoney(playerid,-1000);
  493.             SendClientMessage(playerid, 0x33AA33AA, "[SERVER] Você gastou R$ 1.000,00 pelo veículo.");
  494.             carro = CreateVehicle(596, var0 + 1, var1 + 1, var2, var3, 103, 1, 60);
  495.             SendClientMessage(playerid, 0x33AA33AA, "[SERVER] Você gastou R$ 1.000,00 pelo veículo.");
  496.             PutPlayerInVehicle(playerid, carro, 0);
  497.         }
  498.         else {
  499.             SendClientMessage(playerid, COR_CINZA, "[SERVER] Você não tem dinheiro suficiente");
  500.         }
  501.         return 1;
  502.     }
  503.     return SendClientMessage(playerid, COR_CINZA, "[SERVER] Você não é policial!");
  504. }
  505. CMD:moto(playerid, params[])
  506. {
  507.     if(policial[playerid]==1) {
  508.         if(IsPlayerInAnyVehicle(playerid)) {
  509.             return SendClientMessage(playerid, 0x33AA33AA, "[SERVER] Você já está em um veículo");
  510.         }
  511.         playermoney = GetPlayerMoney(playerid);
  512.         if(playermoney > 1000) {
  513.             new Float:var0 = 0, Float:var1 = 0, Float:var2 = 0, Float:var3 = 0;
  514.             GetPlayerPos(playerid, var0, var1, var2);
  515.             GetPlayerFacingAngle(playerid, var3);
  516.             GivePlayerMoney(playerid,-1000);
  517.             SendClientMessage(playerid, 0x33AA33AA, "[SERVER] Você gastou R$ 1.000,00 pelo veículo.");
  518.             carro = CreateVehicle(523, var0 + 1, var1 + 1, var2, var3, 103, 1, 60);
  519.             SendClientMessage(playerid, 0x33AA33AA, "[SERVER] Você gastou R$ 1.000,00 pelo veículo.");
  520.             PutPlayerInVehicle(playerid, carro, 0);
  521.         }
  522.         else {
  523.             SendClientMessage(playerid, COR_CINZA, "[SERVER] Você não tem dinheiro suficiente");
  524.         }
  525.         return 1;
  526.     }
  527.     return SendClientMessage(playerid, COR_CINZA, "[SERVER] Você não é policial!");
  528. }
  529. CMD:helicoptero(playerid, params[])
  530. {
  531.     if(policial[playerid] == 1) {
  532.         if(IsPlayerInAnyVehicle(playerid)) {
  533.             return SendClientMessage(playerid, 0x33AA33AA, "[SERVER] Você já está em um veículo");
  534.         }
  535.         playermoney = GetPlayerMoney(playerid);
  536.         if(playermoney > 4000) {
  537.             new Float:var0 = 0, Float:var1 = 0, Float:var2 = 0, Float:var3 = 0;
  538.             GetPlayerPos(playerid, var0, var1, var2);
  539.             GetPlayerFacingAngle(playerid, var3);
  540.             GivePlayerMoney(playerid,-4000);
  541.             SendClientMessage(playerid, 0x33AA33AA, "[SERVER] Você gastou R$ 4.000,00 pelo veículo.");
  542.             carro = CreateVehicle(497, var0 + 1, var1 + 1, var2, var3, 103, 1, 60);
  543.             PutPlayerInVehicle(playerid, carro, 0);
  544.         }
  545.         else {
  546.             SendClientMessage(playerid, COR_CINZA, "[SERVER] Você não tem dinheiro suficiente.");
  547.         }
  548.         return 1;
  549.     }
  550.     return SendClientMessage(playerid, COR_CINZA, "[SERVER] Você não é policial!");
  551. }
  552. // _______________________________ RCON _______________________________
  553. CMD:darpm(playerid, params[])
  554. {
  555.     new tmp[128];
  556.     new nomep[32];
  557.     if(IsPlayerAdmin(playerid)) {
  558.         tmp = strtok(cmd, idx);
  559.         giveplayerid = strval(tmp);
  560.         GetPlayerName(giveplayerid,nomep,sizeof(nomep));
  561.         if(!strlen(tmp)) return SendClientMessage(playerid,0xFF0000FF,"[SERVER] USO: /darpm [ID]");
  562.         if(!IsPlayerConnected(giveplayerid)) return SendClientMessage(playerid, COR_BRANCO, "[SERVER] Id invalido.");
  563.         if(policial[giveplayerid]==1){return SendClientMessage(playerid, COR_CINZA, "[SERVER] Player já é Policial!");}
  564.         if(procurado[giveplayerid]==1){return SendClientMessage(playerid, COR_CINZA, "[SERVER] O player é um procurado.");}
  565.         policial[giveplayerid]=1;
  566.         format(arquivo, sizeof(arquivo), "infos/%s.ini", nomep);
  567.         DOF2_SetInt(arquivo,"Policial",policial[giveplayerid]);
  568.         DOF2_SaveFile();
  569.         format(texto,sizeof(texto),"[SERVER] %s [%d] foi feito policial pelo Admin %s",nomep,giveplayerid,pnome(playerid));
  570.         SendClientMessage(giveplayerid, COR_AZUL, "[SERVER] Para ver os comandos de PMs, use /pmcmds");
  571.         SendClientMessageToAll(COR_AZUL, texto);
  572.     }
  573.     else if(IsPlayerAdmin(playerid)) {
  574.         return SendClientMessage(playerid, COR_CINZA, "[SERVER] Você não é Admin!");
  575.     }
  576.     return 1;
  577. }
  578. CMD:tirarpm(playerid, params[])
  579. {
  580.     new tmp[128];
  581.     new nomep[32];
  582.     if(IsPlayerAdmin(playerid)) {
  583.         tmp = strtok(cmd, idx);
  584.         giveplayerid = strval(tmp);
  585.         GetPlayerName(giveplayerid,nomep,sizeof(nomep));
  586.         if(!strlen(tmp)) return SendClientMessage(playerid,0xFF0000FF,"[SERVER] USO: /tirarpm [ID]");
  587.         if(!IsPlayerConnected(giveplayerid)) return SendClientMessage(playerid, COR_BRANCO, "[SERVER] Id invalido.");
  588.         if(policial[giveplayerid]==1) {
  589.             policial[giveplayerid]=0;
  590.             format(arquivo, sizeof(arquivo), "infos/%s.ini", nomep);
  591.             DOF2_SetInt(arquivo,"Policial",policial[giveplayerid]);
  592.             DOF2_SaveFile();
  593.             format(texto,sizeof(texto),"[SERVER] %s [%d] foi retirado dos policiais pelo admin %s",nomep,giveplayerid,pnome(playerid));
  594.             SendClientMessageToAll(COR_VERMELHO, texto);
  595.         }
  596.         if(policial[giveplayerid]==0){return SendClientMessage(playerid, COR_CINZA, "[SERVER] Player não é Policial!");}
  597.     }
  598.     return 1;
  599. }
  600. // _______________________________________________________________ FIM DO CÓDIGO
  601. // Bugs? Ajuda?
  602. // marloncs_22 << Skype
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement