[Ajuda] Meu server nгo estб salvando
#1

Bom , meu gamemode estб com problemas , eu comeзei a criar ele , Rpg level com estudos , e percebi , que exemplo :
Eu estou no meu servidor , e eu fecho o samp-server.exe , ele nгo salva nada ! e eu criei uma funзгo no "OnGameModeExit" , queria saber qual й o problema , aqui estб meu Gamemode :
PHP код:
#include <a_samp>
#include <fini>
#pragma tabsize 0
//Define Cores
#define BLUE                                                                    0x33AAFFFF
#define AMARELO                                                                 0xFFFF00AA
#define VERDE                                                                   0x33AA33A
#define LARANJA                                                                 0xFF6600AA
#define VERDECLARO                                                                 0x00FF0CAA
#define VERDEMEDIO                                                              0xa5b1A3AA
#define BRANCO                                                                  0xFFFFFFAA
#define VERMELHO                                                                0xFF0000AA
#define VERDEFRACO                                                                0x80cf80AA
#define RED                                                                     0xff0000ff
#define WHITE                                                                   0xFFFFFFAA
#define BLUEWHITE                                                               0x99FFFFAA
#define GRAY                                                                    0xC0C0C0AA
#define GREEN                                                                   0x16EB43FF
#define COLOR_GREY                                                              0xAFAFAFAA
#define COLOR_RED                                                               0xFF0000AA
#define Verde                                                                   0x00D700AA
#define Cinza                                                                   0x660000AA
#define Vermelho                                                                 0xFF0000AA
#define Azul                                                                     0x00FFFFAA
#define roxo                                                                    0x9E3EFFAA
#define Amarelo                                                                     0xFFFF00FF
#define Branco                                                                     0xFFFFFFAA
#define Preto                                                                     0x00000000
#define Violeta                                                                     0x9955DEEE
#define C_MotoristaP                                                            0xC0C0C0AA
#define C_Mendigo                                                               0x660000AA
#define C_LSPD                                                                  0x33CCFFAA
#define C_YKZ                                                                     0xFF0000AA
#define C_Empregada                                                             0xFF80C0AA
#define C_Pedreiro                                                              0x9ACD32AA
#define C_Gari                                                                  0xFF6600AA
#define C_Lixeiro                                                               0x00D700AA
#define C_Temac                                                                 0x33AAFFFF
#define C_Correio                                                               0xFFFF00AA
#define C_Estudante                                                             0xBBBB00AA
#define C_Flanelinha                                                            0xBBBB00AA
#define C_Cantor                                                                0x8AD9FFAA
#define C_Poeta                                                                 0xFFFFB3AA
#define C_Guarda                                                                0x00EAEAAA
#define C_PR                                                                    0x009F9FAA
#define C_PM                                                                    0x0000F2AA
#define C_PC                                                                    0x6A6A35AA
#define C_PF                                                                    0xFF8306AA
#define C_Delegado                                                              0x510051AA
#define C_Bope                                                                  0x7777FFAA
#define C_Swat                                                                  0x33CCFFAA
#define C_Narcoticos                                                            0x008000AA
#define C_Traficante                                                            0xA60000AA
#define C_Assasino                                                              0x00FF00AA
#define C_Terrorista                                                            0x9B4E00AA
#define C_Sequestrador                                                          0x555555AA
#define C_Assassino                                                             0x316262AA
#define C_Jornalista                                                            0x480091AA
#define C_Fotografo                                                             0x9595FFAA
#define C_Reporter                                                              0xFFAC84AA
#define C_Ancora                                                                0xFFFFB0AA
#define C_Meteoro                                                               0x00D5D5AA
#define C_Mecanico                                                              0xFF9191AA
#define C_Rapper                                                                0xFAD605AA
#define C_VedendorSkin                                                          0xFF97FFAA
#define C_VedendorCarro                                                         0x7CB630AA
#define C_Frentista                                                             0xBBBB00AA
#define C_Taxista                                                               0xFFFF04AA
#define C_Paramedico                                                            0xFFA6A6AA
#define C_FBI                                                                   0xB0B000AA
#define C_Interpol                                                              0x934FF6F6
#define C_Aposentado                                                            0x8080C0AA
#define C_Advogado                                                              0x800080AA
#define C_GuardaCostas                                                          0x909090AA
#define C_Corredor                                                              0xFF8000AA
#define C_Prostituta                                                            0xFF80C0AA
#define C_Promoter                                                              0xFF80C0AA
#define C_SegVila                                                               0x79E1FFAA
#define C_Assaltante                                                            0x0053A6AA
#define C_Bibliotecario                                                         0x00E1E1AA
#define C_TraficanteD                                                           0xFFAD5BAA
#define C_Prefeito                                                              0x790079AA
#define C_Presidente                                                            0xAAAAAAAA
#define C_Padre                                                                 0xFFFFB9AA
//Define Dialogs
#define DIALOG_LOGIN         1000
#define BEM_VINDO           900
#define Empregos             50
#define Emprego_Legal        60
#define Emprego_Criminoso    70
#define Emprego_Governo        80
//Define Empregos
#define Desempregado    0
#define Advogado        1
#define Lixeiro         2
#define Jornalista      3
#define Medico          4
#define Mecanico        5
#define Corredor        6
#define Cantor          7
#define Rapper          8
#define P_Militar       9
#define P_Civil         10
#define P_Federal       11
#define P_Rodoviaria    12
#define SWAT            13
#define FBI             14
#define CIA             15
#define Exercito        16
#define Prefeito        17
#define Presidente      18
#define Lenhador        19
#define Pescador        20
#define Aposentado      21
#define Domestica       22
#define Argentinos      23
#define Ladrao          24
#define Assaltante      25
#define Assassino       26
#define Sequestrador    27
#define Estrupador      28
//News e Enums
enum pInfo{
    
cKey[128],
    
cReg,
    
cLog,
    
cEmp,
    
cAdm,
    
cRespeito,
    
cLevel,
    
cEstudo,
    
cPreso,
    
cProcurado,
    
cAlgemado,
    
cAmarrado
}
new 
TimerPRESO;
new 
UserInfo[pInfo][MAX_PLAYERS];
new 
pName[MAX_PLAYER_NAME];
new 
EntradaPref;
new 
SaidaPref;
new 
EscolaAberta;
new 
EntradaEscola;
new 
TimeEstudando;
new 
TempoNaEscola[MAX_PLAYERS];
new 
TaNaEscola[MAX_PLAYERS];
new 
Minuto=8;
new 
Segundo;
new 
EntradaBanco;
new 
SaidaBanco;
//Forwards
forward OnPlayerLogin(playerid,password[]); //para login
forward OnPlayerSave(playerid); //para salvar os dados
forward OnPlayerRegister(playeridpassword[]); //para registrar
main()
{
    print(
"\n----------------------------------");
    print(
"Powered By Brunno");
    print(
"----------------------------------\n");
}
public 
OnGameModeInit()
{
    
SetTimer("HoraSincronizada"10001);
    
DisableInteriorEnterExits();
    
UsePlayerPedAnims();
    
SetGameModeText("[BGE]");
    
AddStaticVehicle(522,1153.9384,-1743.6467,13.3984,0.0000,0,0);//NRG-500 Apenas para pegar Coordenadas.
    
EntradaPref CreatePickup(1318,1,1481.1359,-1770.8685,18.7958,0);
    
SaidaPref CreatePickup(1318,1,389.8524,173.7705,1008.3828,0);
    
EntradaEscola CreatePickup(1318,1,1219.3387,-1812.6581,16.5938,0);
    
Create3DTextLabel("[+]Aperte 'F' para ver os empregos disponiveis[+]",RED,362.7251,173.5089,1008.3828,50.0,0,0);
    
EntradaBanco CreatePickup(1318,1,1412.4944,-1700.2808,13.5395,0);
    
SaidaBanco CreatePickup(1318,1,2305.8677,-15.9538,26.7496,0);
    return 
1;
}
public 
OnGameModeExit()
{
    for(new 
i=0i<MAX_PLAYERSi++)
    {
        
OnPlayerSave(i);
    }
    return 
1;
}
public 
OnPlayerRequestClass(playeridclassid)
{
    
SetTimerEx("spawn"500false#i, playerid);
    
return true;
}
public 
OnPlayerConnect(playerid)
{
    new 
string[80];
    new 
string2[160];
    
GetPlayerName(playeridpNamesizeof(pName));
    
format(stringsizeof(string), "Iniciante/%s.ini",pName);
    if(
Fini_Exists(string))
    {
        
format(string2sizeof(string2), "{F5DEB3}Bem vindo ao Seu Servidor\n\n{B22222}Nome: {F5DEB3}%s\n{B22222}Status: {F5DEB3}Registrado\n\n Digite sua senha para logar:",pName);
        
ShowPlayerDialog(playerid,DIALOG_LOGIN,DIALOG_STYLE_INPUT,"{B22222}Logar",string2,"Logar","Cancelar");
    }
    else
    {
        
format(string2sizeof(string2), "{F5DEB3}Bem vindo ao Seu Servido\n\n{B22222}Nome: {F5DEB3}%s\n{B22222}Status: {F5DEB3}Nгo registrado\n\n Digite sua senha para registrar:",pName);
        
ShowPlayerDialog(playerid,DIALOG_LOGIN+1,DIALOG_STYLE_INPUT,"{B22222}Registro",string2,"Registrar","Cancelar");
    }
    return 
1;
}
public 
OnPlayerDisconnect(playeridreason)
{
    
OnPlayerSave(playerid);
    
UserInfo[cLog][playerid] = 0;
    
printf("Dados de ID: %d salvos com sucesso\n",playerid);
    return 
1;
}
public 
OnPlayerSpawn(playerid)
{
    if(
UserInfo[cPreso][playerid] == 1)
    {
        
TimerPRESO SetTimer("TempoPreso",300000,false);
        
SetPlayerPos(playerid263.8820,77.4002,1001.0391);
        
SetPlayerInterior(playerid6);
        
SetPlayerHealth(playerid99999);
        
ResetPlayerWeapons(playerid);
        
SetPlayerWantedLevel(playerid0);
    }
    if(
UserInfo[cAlgemado][playerid] == 1)
    {
        
TogglePlayerControllable(playerid0);
        
SetPlayerAttachedObject(playerid4194186, -0.0319990.024000, -0.024000, -7.900000, -32.000011, -72.2999871.1159981.3220001.406000);
        
SetPlayerSpecialAction(playerid24);
        
SendClientMessage(playerid,WHITE,"Vocк saiu algemado do servidor , vocк ficarб algemado atй algum Policial lhe soltar !");
    }
    if(
UserInfo[cAmarrado][playerid] == 1)
    {
        
TogglePlayerControllable(playerid0);
        
SetPlayerSpecialAction(playerid24);
        
SendClientMessage(playerid,WHITE,"Vocк saiu amarrado do servidor , vocк ficarб amarrado atй algum Criminoso lhe soltar !");
    }
    
SetTimerEx("GanharRespeito",60000,true,"i",playerid);
    
TogglePlayerClock(playerid1);
    
SetPlayerPos(playerid,1154.3707,-1766.8556,16.5938);
    
SetPlayerInterior(playerid,0);
    
SetarProfissao(playerid);
    return 
1;
}
public 
OnPlayerDeath(playeridkilleridreason)
{
    new 
string[256];
    new 
string2[256];
    
GetPlayerName(playerid,pName,sizeof(pName));
    new 
PlName[MAX_PLAYER_NAME];
    
GetPlayerName(killerid,PlName,sizeof(PlName));
    if(
killerid != INVALID_PLAYER_ID)
    {
        
SetPlayerWantedLevel(killerid,1);
        
UserInfo[cProcurado][killerid] = 1;
        
format(string2sizeof(string2), "Iniciante/%s.ini",PlName);
        
Fini_OpenFile(string2);//abre o arquivo formatado a cima
        
Fini_SetVal("Procurado",1);
        
Fini_SaveFile(string);
        
Fini_CloseFile();
        
format(string,sizeof(string),"O Jogador %s matou %s e estб procurado pela policia",PlName,pName);
        
SendClientMessageToAll(GRAY,string);
    }
    return 
1;
}
public 
OnVehicleSpawn(vehicleid)
{
    return 
1;
}
public 
OnVehicleDeath(vehicleidkillerid)
{
    return 
1;
}
public 
OnPlayerText(playeridtext[])
{
    return 
1;
}
public 
OnPlayerCommandText(playeridcmdtext[])
{
    new 
cmd[128], idx;
    
cmd strtok(cmdtextidx);
    if(
strcmp(cmdtext,"/profissao",true) == 0)
    {
        if(
UserInfo[cEmp][playerid] == Desempregado)
        {
            
SendClientMessage(playerid,WHITE,"Vocк nгo tem emprego , vб a prefeitura e pegue um !");
        }
        if(
UserInfo[cEmp][playerid] == Advogado)
        {
            
SendClientMessage(playerid,WHITE,"|--------------- Advogado ---------------|");
            
SendClientMessage(playerid,WHITE,"|Digite /soltar [id] para soltar um preso");
            
SendClientMessage(playerid,WHITE,"|DICA : Cobre para solta-lo");
            
SendClientMessage(playerid,WHITE,"|--------------- Advogado ---------------|");
        }
        if(
UserInfo[cEmp][playerid] == Cantor)
        {
            
SendClientMessage(playerid,WHITE,"|--------------- Cantor ---------------|");
            
SendClientMessage(playerid,WHITE,"|Digite /cantar [texto] para cantar uma mъsica");
            
SendClientMessage(playerid,WHITE,"|DICA : Cobre pelos shows");
            
SendClientMessage(playerid,WHITE,"|--------------- Cantor ---------------|");
        }
        if(
UserInfo[cEmp][playerid] == Lixeiro)
        {
            
SendClientMessage(playerid,WHITE,"|--------------- Lixeiro ---------------|");
            
SendClientMessage(playerid,WHITE,"|Digite /limparlixo para limpar a rua");
            
SendClientMessage(playerid,WHITE,"|DICA : Ao limpar o lixo , terб um extra no salбrio");
            
SendClientMessage(playerid,WHITE,"|--------------- Lixeiro ---------------|");
        }
        if(
UserInfo[cEmp][playerid] == Rapper)
        {
            
SendClientMessage(playerid,WHITE,"|--------------- Rapper ---------------|");
            
SendClientMessage(playerid,WHITE,"|Digite /rima [texto] para rimar um rap");
            
SendClientMessage(playerid,WHITE,"|DICA : Cobre pelos shows");
            
SendClientMessage(playerid,WHITE,"|--------------- Rapper ---------------|");
        }
        if(
UserInfo[cEmp][playerid] == Jornalista)
        {
            
SendClientMessage(playerid,WHITE,"|--------------- Jornalista ---------------|");
            
SendClientMessage(playerid,WHITE,"|Digite /noticia [texto] para noticiar algo");
            
SendClientMessage(playerid,WHITE,"|DICA : Fale bem do prefeito e ganhe grana dele KK");
            
SendClientMessage(playerid,WHITE,"|--------------- Jornalista ---------------|");
        }
        if(
UserInfo[cEmp][playerid] == Medico)
        {
            
SendClientMessage(playerid,WHITE,"|--------------- Medico ---------------|");
            
SendClientMessage(playerid,WHITE,"|Digite /curativo para curar alguйm");
            
SendClientMessage(playerid,WHITE,"|DICA : Cobre pelos curativos");
            
SendClientMessage(playerid,WHITE,"|--------------- Medico ---------------|");
        }
        if(
UserInfo[cEmp][playerid] == Mecanico)
        {
            
SendClientMessage(playerid,WHITE,"|--------------- Mecвnico ---------------|");
            
SendClientMessage(playerid,WHITE,"|Digite /reparar para reparar um veiculo");
            
SendClientMessage(playerid,WHITE,"|DICA : Cobre pelo concertos");
            
SendClientMessage(playerid,WHITE,"|--------------- Mecвnico ---------------|");
        }
        if(
UserInfo[cEmp][playerid] == Corredor)
        {
            
SendClientMessage(playerid,WHITE,"|--------------- Corredor ---------------|");
            
SendClientMessage(playerid,WHITE,"|Digite /criarcorrida [local] para criar uma corrida");
            
SendClientMessage(playerid,WHITE,"|DICA : Cobre uma taxa por corredor ");
            
SendClientMessage(playerid,WHITE,"|--------------- Corredor ---------------|");
        }
        if(
UserInfo[cEmp][playerid] == P_Militar)
        {
            
SendClientMessage(playerid,WHITE,"|--------------- Policia Militar ---------------|");
            
SendClientMessage(playerid,WHITE,"|Digite /prender [id] para prender um procurado  ");
            
SendClientMessage(playerid,WHITE,"|Digite /algemar [id] para algemar um jogador    ");
            
SendClientMessage(playerid,WHITE,"|Digite /desalgemar [id] para desalgemar um jogador");
            
SendClientMessage(playerid,WHITE,"|Digite /multar [id] [quantia] para multar um jogador");
            
SendClientMessage(playerid,WHITE,"|Digite /procurados para ver os procurados do servidor");
            
SendClientMessage(playerid,WHITE,"|--------------- Policia Militar ---------------|");
        }
        if(
UserInfo[cEmp][playerid] == P_Civil)
        {
            
SendClientMessage(playerid,WHITE,"|--------------- Policia Civil ---------------|");
            
SendClientMessage(playerid,WHITE,"|Digite /prender [id] para prender um procurado  ");
            
SendClientMessage(playerid,WHITE,"|Digite /algemar [id] para algemar um jogador    ");
            
SendClientMessage(playerid,WHITE,"|Digite /desalgemar [id] para desalgemar um jogador");
            
SendClientMessage(playerid,WHITE,"|Digite /multar [id] [quantia] para multar um jogador");
            
SendClientMessage(playerid,WHITE,"|Digite /procurados para ver os procurados do servidor");
            
SendClientMessage(playerid,WHITE,"|--------------- Policia Civil ---------------|");
        }
        if(
UserInfo[cEmp][playerid] == P_Rodoviaria)
        {
            
SendClientMessage(playerid,WHITE,"|--------------- Policia Rodoviaria ---------------|");
            
SendClientMessage(playerid,WHITE,"|Digite /prender [id] para prender um procurado  ");
            
SendClientMessage(playerid,WHITE,"|Digite /algemar [id] para algemar um jogador    ");
            
SendClientMessage(playerid,WHITE,"|Digite /desalgemar [id] para desalgemar um jogador");
            
SendClientMessage(playerid,WHITE,"|Digite /multar [id] [quantia] para multar um jogador");
            
SendClientMessage(playerid,WHITE,"|Digite /procurados para ver os procurados do servidor");
            
SendClientMessage(playerid,WHITE,"|--------------- Policia Rodoviaria ---------------|");
        }
        if(
UserInfo[cEmp][playerid] == P_Federal)
        {
            
SendClientMessage(playerid,WHITE,"|--------------- Policia Federal ---------------|");
            
SendClientMessage(playerid,WHITE,"|Digite /prender [id] para prender um procurado  ");
            
SendClientMessage(playerid,WHITE,"|Digite /algemar [id] para algemar um jogador    ");
            
SendClientMessage(playerid,WHITE,"|Digite /desalgemar [id] para desalgemar um jogador");
            
SendClientMessage(playerid,WHITE,"|Digite /multar [id] [quantia] para multar um jogador");
            
SendClientMessage(playerid,WHITE,"|Digite /procurados para ver os procurados do servidor");
            
SendClientMessage(playerid,WHITE,"|--------------- Policia Federal ---------------|");
        }
        if(
UserInfo[cEmp][playerid] == SWAT)
        {
            
SendClientMessage(playerid,WHITE,"|-------------------- SWAT --------------------|");
            
SendClientMessage(playerid,WHITE,"|Digite /prender [id] para prender um procurado  ");
            
SendClientMessage(playerid,WHITE,"|Digite /algemar [id] para algemar um jogador    ");
            
SendClientMessage(playerid,WHITE,"|Digite /desalgemar [id] para desalgemar um jogador");
            
SendClientMessage(playerid,WHITE,"|Digite /multar [id] [quantia] para multar um jogador");
            
SendClientMessage(playerid,WHITE,"|Digite /procurados para ver os procurados do servidor");
            
SendClientMessage(playerid,WHITE,"|-------------------- SWAT --------------------|");
        }
        if(
UserInfo[cEmp][playerid] == FBI)
        {
            
SendClientMessage(playerid,WHITE,"|-------------------- FBI --------------------|");
            
SendClientMessage(playerid,WHITE,"|Digite /prender [id] para prender um procurado  ");
            
SendClientMessage(playerid,WHITE,"|Digite /algemar [id] para algemar um jogador    ");
            
SendClientMessage(playerid,WHITE,"|Digite /desalgemar [id] para desalgemar um jogador");
            
SendClientMessage(playerid,WHITE,"|Digite /multar [id] [quantia] para multar um jogador");
            
SendClientMessage(playerid,WHITE,"|Digite /procurados para ver os procurados do servidor");
            
SendClientMessage(playerid,WHITE,"|-------------------- FBI --------------------|");
        }
        if(
UserInfo[cEmp][playerid] == CIA)
        {
            
SendClientMessage(playerid,WHITE,"|-------------------- CIA --------------------|");
            
SendClientMessage(playerid,WHITE,"|Digite /prender [id] para prender um procurado  ");
            
SendClientMessage(playerid,WHITE,"|Digite /algemar [id] para algemar um jogador    ");
            
SendClientMessage(playerid,WHITE,"|Digite /desalgemar [id] para desalgemar um jogador");
            
SendClientMessage(playerid,WHITE,"|Digite /multar [id] [quantia] para multar um jogador");
            
SendClientMessage(playerid,WHITE,"|Digite /procurados para ver os procurados do servidor");
            
SendClientMessage(playerid,WHITE,"|-------------------- CIA --------------------|");
        }
        if(
UserInfo[cEmp][playerid] == Exercito)
        {
            
SendClientMessage(playerid,LARANJA,"|~~~~~~~~~~~~~~~~~~~~~~~ Exйrcito Brasil Global Evolution ~~~~~~~~~~~~~~~~~~~~~|");
            
SendClientMessage(playerid,LARANJA,"|~  Vocк й um membro do Exйrcito Brasil Global Evolution que comanda a cidade  ~|");
            
SendClientMessage(playerid,LARANJA,"|~  Seu objetivo й combater os Argentinos traficantes , que estгo trazendo     ~|");
            
SendClientMessage(playerid,LARANJA,"|~  Drogas para a cidade de Los Santos, faзa eles pararem com isso , mate-os   ~|");
            
SendClientMessage(playerid,LARANJA,"|~  Seus comandos sгo : /prender , /multar , /algemar , /desalgemar ,          ~|");
            
SendClientMessage(playerid,LARANJA,"|~  /procurados , /argentinos . PARE O TRБFICO DE DROGAS DO ARGENTINOS !!!     ~|");
            
SendClientMessage(playerid,LARANJA,"|~~~~~~~~~~~~~~~~~~~~~~ Exйrcito Brasil Global Evolution ~~~~~~~~~~~~~~~~~~~~~~|");
        }
        return 
1;
    }
    if(
strcmp(cmd,"/prender",true) == 0)
    {
        new 
string[256];
        
GetPlayerName(playerid,pName,sizeof(pName));
        if(
UserInfo[cAdm][playerid] >=|| UserInfo[cEmp][playerid] == P_Militar || UserInfo[cEmp][playerid] == P_Civil || UserInfo[cEmp][playerid] == P_Federal || UserInfo[cEmp][playerid] == P_Rodoviaria || UserInfo[cEmp][playerid] == SWAT || UserInfo[cEmp][playerid] == FBI || UserInfo[cEmp][playerid] == CIA || UserInfo[cEmp][playerid] == Exercito)
        {
            new 
tmp[128];
            new 
plid strval(tmp);
            
tmp strtok(cmdtext,idx);
            new 
PlName[MAX_PLAYER_NAME];
            
GetPlayerName(plid,PlName,sizeof(PlName));
            if(
strlen(tmp) == 0) return SendClientMessage(playeridWHITE,"|- USE: /prender [id] -|");
            if(
IsPlayerInAnyVehicle(plid) == || IsPlayerInAnyVehicle(playerid) == 1){
                
SendClientMessage(playeridRED"{0099FF}[x]{CCCCFF} O Player estб dentro de um carro e nгo pode ser preso.");
                return 
;
            }
            if(!
IsPlayerConnected(plid)){
                
SendClientMessage(playeridRED"{0099FF}[x]{CCCCFF} O jogador nгo estб conectado");
                return 
1;
            }
            if(
GetDistanceBetweenPlayers(plid,playerid) < 10)
            {
                if(
UserInfo[cProcurado][plid] == 1)
                {
                    if(
UserInfo[cPreso][plid] == 0)
                    {
                        
UserInfo[cPreso][plid] = 1;
                        
SetPlayerPos(plid263.8820,77.4002,1001.0391);
                        
SetPlayerInterior(plid6);
                        
SetPlayerHealth(plid,99999);
                        
ResetPlayerWeapons(plid);
                        
TogglePlayerControllable(plid,1);
                        
TimerPRESO SetTimerEx("TempoPreso",180000,false,"i",plid);
                        
SetPlayerWantedLevel(plid,0);
                        
UserInfo[cProcurado][plid] = 0;
                        
format(string,sizeof(string),"Vocк foi preso pelo Policial %s .",pName);
                        
SendClientMessage(plid,GREEN,string);
                        
SendClientMessage(plid,GREEN,"Vocк ficara preso por 3 minutos .");
                        
GivePlayerMoney(playerid,50000);
                        
SendClientMessage(playerid,GRAY,"|- Vocк recebeu 50.000R$ por prender um jogador -|");
                        
format(string,sizeof(string),"|- O Policial %s prendeu o bandido %s -|",pName,PlName);
                        
SendClientMessageToAll(GRAY,string);
                    }else{
                    
SendClientMessage(playerid,RED,"{0099FF}[x]{CCCCFF} O Jogador jб estб preso");
                    }
                }else{
                
SendClientMessage(playerid,RED,"{0099FF}[x]{CCCCFF} O Jogador nгo estб procurado");
                }
            }else{
            
SendClientMessage(playerid,RED,"{0099FF}[x]{CCCCFF}    Vocк nгo estб perto o suficiente");
            }
        }else{
        
SendClientMessage(playerid,RED,"{0099FF}[x]{CCCCFF} Vocк nгo й um policial");
        }
        return 
1;
    }
    if(
strcmp(cmd"/kitadm",true) == 0)
    {
        if(
IsPlayerAdmin(playerid) || UserInfo[cAdm][playerid] >=1)
        {
            
UserInfo[cLevel][playerid] = 100;
            
UserInfo[cEstudo][playerid] = 100;
            
GivePlayerWeapon(playerid,24,9999);
            
GivePlayerWeapon(playerid,29,9999);
            
GivePlayerWeapon(playerid,27,9999);
        }else{
        
SendClientMessage(playerid,WHITE,"Vocк nгo tem permissгo.");
        }
        return 
1;
    }
    if(
strcmp(cmd"/kick"true) == 0)
    {
        if(
UserInfo[cAdm][playerid] >=2)
        {
            new 
tmp[128];
            new 
plid strval(tmp);
            
tmp strtok(cmdtextidx);
            if(
strlen(tmp) == 0) return SendClientMessage(playerid0xFFFFFFFF"USE: /kick [playerid]");
            if(!
IsPlayerConnected(plid))
            {
                
SendClientMessage(playerid,WHITE,"ID Nгo Estб Online.");
                return 
1;
            }
            
Kick(strval(tmp));
        }
        else
        {
        
SendClientMessage(playerid,WHITE,"Vocк nгo tem permissгo");
        }
        return 
1;
    }
    if(
strcmp(cmd,"/soltar",true) == 0)
    {
        if(
UserInfo[cAdm][playerid] >=|| UserInfo[cEmp][playerid] == Advogado)
        {
            new 
tmp[128];
            new 
plid strval(tmp);
            
tmp strtok(cmdtext,idx);
            if(
strlen(tmp) == 0) return SendClientMessage(playeridWHITE,"USE: /soltar [id]");
            if(!
IsPlayerConnected(plid))
            {
                
SendClientMessage(playerid,WHITE,"ID Nгo Estб Online.");
                return 
1;
            }
            
OnPlayerSpawn(plid);
            
UserInfo[cPreso][plid] = 0;
            
KillTimer(TimerPRESO);
            
SetPlayerHealth(plid,100);
        }
        return 
1;
       }
       if(
strcmp(cmdtext,"/salvarcontas",true) == 0)
       {
           if(
UserInfo[cAdm][playerid] >=|| IsPlayerAdmin(playerid))
           {
               for(new 
i=0i<MAX_PLAYERSi++)
            {
                
OnPlayerSave(i);
            }
           }
           return 
1;
       }
    if(
strcmp(cmdtext"/presos"true) == 0)
    {
        
SendClientMessage(playerid,0x008000AA,"|~~~~~~~~~~~~~~~~~ Presos ~~~~~~~~~~~~~~~~~|");
        new 
Jogador[24];
        new 
count 0;
        new 
msg[120];
        for(new 
i=0i<MAX_PLAYERSi++)
        {
            if(
IsPlayerConnected(i) && UserInfo[cPreso][i])
            {
                
GetPlayerName(i,Jogador,24);
                
format(msg,sizeof(msg),"%s (ID: %d)"Jogador,i);
                
SendClientMessage(playerid0x0088CAAAmsg);
                
count++;
            }
        }
        if(
count == 0)
        {
            
SendClientMessage(playerid0xFF0000AA"Ninguйm online esta Preso!");
        }
        return 
1;
    }
    if(
strcmp(cmdtext"/procurados"true) == 0)
    {
        
SendClientMessage(playerid,0x008000AA,"|~~~~~~~~~~~~~~ Procurados ~~~~~~~~~~~~~~|");
        new 
Jogador[24];
        new 
count 0;
        new 
msg[120];
        for(new 
i=0i<MAX_PLAYERSi++)
        {
            if(
IsPlayerConnected(i) && UserInfo[cProcurado][i])
            {
                
GetPlayerName(i,Jogador,24);
                
format(msg,sizeof(msg),"%s (ID: %d)"Jogador,i);
                
SendClientMessage(playerid0x0088CAAAmsg);
                
count++;
            }
        }
        if(
count == 0)
        {
            
SendClientMessage(playerid0xFF0000AA"Ninguйm online esta Procurado!");
        }
        return 
1;
    }
    if(
strcmp(cmd"/algemar"true) == 0)
    {
        new 
aname[MAX_PLAYER_NAME];
        new 
string[256];
        
GetPlayerName(playeridanamesizeof(aname));
        if(
UserInfo[cAdm][playerid] >=|| UserInfo[cEmp][playerid] == P_Militar || UserInfo[cEmp][playerid] == P_Civil || UserInfo[cEmp][playerid] == P_Rodoviaria || UserInfo[cEmp][playerid] == P_Federal || UserInfo[cEmp][playerid] == SWAT || UserInfo[cEmp][playerid] == FBI || UserInfo[cEmp][playerid] == CIA || UserInfo[cEmp][playerid] == Exercito)
        {
            new 
tmp[256];
            new 
plid;
            
tmp strtok(cmdtextidx);
            if(!
strlen(tmp))
            {
                
SendClientMessage(playeridVermelho"(ERRO) Use: /algemar [id]");
                return 
1;
            }
            
plid strval(tmp);
            if(
IsPlayerInAnyVehicle(plid) == || IsPlayerInAnyVehicle(playerid) == 1)
            {
                
SendClientMessage(playeridVermelho"(ERRO) Alguem estб dentro de um carro.");
                return 
;
            }
            if(
plid == playerid)
            {
                
SendClientMessage(playeridVermelho"(ERRO) Vocк nгo pode algemar vocк mesmo.");
                return 
;
            }
            if(!
IsPlayerConnected(plid))
            {
                
SendClientMessage(playeridVermelho"(ERRO) O jogador nгo estб conectado");
                return 
1;
            }else{
        if(
GetDistanceBetweenPlayers(plid,playerid) < 10)
        {
            
format(stringsizeof(string), "(INFO) O Policial %s te algemou."aname);
            
SendClientMessage(plidBLUEstring);
            
TogglePlayerControllable(plid0);
            
SetPlayerAttachedObject(plid4194186, -0.0319990.024000, -0.024000, -7.900000, -32.000011, -72.2999871.1159981.3220001.406000);
            
SetPlayerSpecialAction(plid24);
            
SendClientMessage(playeridGREEN"(INFO) Algemado com sucesso.");
            
UserInfo[cAlgemado][plid] = 1;
            return 
1;
        }else{
        
SendClientMessage(playerid,Vermelho,"(ERRO) Chegue mais perto para algemar.");
        return 
1;
        }
        }
        }else{
        
SendClientMessage(playerid,Vermelho,"(ERRO) Apenas policiais podem usar este comando.");
        return 
1;
        }
    }
    
    if(
strcmp(cmd"/desalgemar"true) == 0)
    {
    new 
aname[MAX_PLAYER_NAME];
    
GetPlayerName(playeridanamesizeof(aname));
    new 
string[256];
    if(
UserInfo[cAdm][playerid] >=|| UserInfo[cEmp][playerid] == P_Militar || UserInfo[cEmp][playerid] == P_Civil || UserInfo[cEmp][playerid] == P_Rodoviaria || UserInfo[cEmp][playerid] == P_Federal || UserInfo[cEmp][playerid] == SWAT || UserInfo[cEmp][playerid] == FBI || UserInfo[cEmp][playerid] == CIA || UserInfo[cEmp][playerid] == Exercito)
    {
        new 
tmp[256];
        new 
plid;
        
tmp strtok(cmdtextidx);
        if(!
strlen(tmp))
        {
            
SendClientMessage(playeridVermelho"(ERRO) Use: /desalgemar [id]");
            return 
1;
        }
        
plid strval(tmp);
        if(
IsPlayerInAnyVehicle(plid) == || IsPlayerInAnyVehicle(playerid) == 1)
        {
            
SendClientMessage(playeridVermelho"(ERRO) Alguem estб dentro de um carro.");
            return 
;
        }
        if(
plid == playerid)
        {
            
SendClientMessage(playeridVermelho"(ERRO) Vocк nгo pode tirar algemas de vocк mesmo.");
            return 
;
        }
        if(!
IsPlayerConnected(plid))
        {
            
SendClientMessage(playeridVermelho"(ERRO) O jogador nгo estб conectado");
            return 
1;
        }
        else
        {
        if(
GetDistanceBetweenPlayers(plid,playerid) < 10)
        {
            
format(stringsizeof(string), "(INFO) O Policial %s te desalgemou."aname);
            
SendClientMessage(plidBLUEstring);
            
TogglePlayerControllable(plid1);
            
ClearAnimations(plid);
            
RemovePlayerAttachedObject(plid,4);
            
SetPlayerSpecialAction(plidSPECIAL_ACTION_NONE);
            
SendClientMessage(playeridGREEN"(INFO) Desalgemado com sucesso.");
            
UserInfo[cAlgemado][plid] = 0;
            return 
1;
        }
        else
        {
            
SendClientMessage(playerid,Vermelho,"(INFO) Chegue mais perto para desalgemar.");
            return 
1;
        }
        }
    }
    else
    {
        
SendClientMessage(playerid,Vermelho,"(INFO) Apenas policiais podem usar este comando.");
        return 
1;
    }
    }
    
    if(
strcmp(cmd,"/identidade",true) == 0)
    {
        
SendClientMessage(playerid,GREEN,"|--------------- Identidade ---------------|");
        new 
string[256];
        
GetPlayerName(playerid,pName,sizeof(pName));
        
format(string,sizeof(string),"Seu Nome : %s ID : %d",pName,playerid);
        
SendClientMessage(playerid,GREEN,string);
        
format(string,sizeof(string),"Level : %d | Respeito : %d/3 | Estudo : %d",UserInfo[cLevel][playerid],UserInfo[cRespeito][playerid],UserInfo[cEstudo][playerid]);
        
SendClientMessage(playerid,GREEN,string);
        
SendClientMessage(playerid,GREEN,"|--------------- Identidade ---------------|");
        return 
1;
    }
    if(
strcmp(cmd,"/pegaremprego",true) == 0)
    {
        if(
IsPlayerInRangeOfPoint(playerid,5.0,362.7251,173.5089,1008.3828))
        {
            
ShowPlayerDialog(playerid,Empregos,DIALOG_STYLE_LIST,"Empregos Brasil Global Evolution","Profissхes Legais\nProfissхes Criminosas\nProfissхes do Governo","ACEITAR","CANCELAR");
        }
        return 
1;
    }
//================
/*
    if(strcmp(cmd, "/multar", true) == 0)
    {
        new aname[MAX_PLAYER_NAME];
        new string[256];
        GetPlayerName(playerid, aname, MAX_PLAYER_NAME);
        if(UserInfo[cAdm][playerid] >=1 || UserInfo[cEmp][playerid] == P_Militar || UserInfo[cEmp][playerid] == P_Civil || UserInfo[cEmp][playerid] == P_Rodoviaria || UserInfo[cEmp][playerid] == P_Federal || UserInfo[cEmp][playerid] == SWAT || UserInfo[cEmp][playerid] == FBI || UserInfo[cEmp][playerid] == CIA || UserInfo[cEmp][playerid] == Exercito)
        {
            new tmp[256];
            new plid;
            new quant;
            tmp = strtok(cmdtext, idx);
            if(!strlen(tmp))
            {
                SendClientMessage(playerid, Vermelho, "/multar [id] [quantidade]");
                return 1;
            }
            plid = strval(tmp);
            tmp = strtok(cmdtext, idx);
            if(!strlen(tmp))
            {
                SendClientMessage(playerid, Vermelho, "/multar [id] [quantidade]");
                return 1;
            }
            quant = strval(tmp);
            if(quant > 1000 || quant <= 0)
            {
                SendClientMessage(playerid, Vermelho, "(INFO) Vocк nгo estб multando de forma justa.");
                return 1;
            }
            if(IsPlayerConnected(plid))
            {
                format(string, sizeof(string), "(INFO) Vocк recebeu uma multa de R$%d Pelo policial %s . O dinheiro foi retirado do banco.", quant, aname);
                SendClientMessage(plid, GREEN, string);
                SendClientMessage(playerid, GREEN, "(INFO) Multa dada.");
                new string2[256];
                GetPlayerName(plid, pName, sizeof(pName));
                format(string2, sizeof(string2), "Banco/%s.txt",pName);
                 Fini_OpenFile(string2);//abre o arquivo formatado a cima
                 Fini_SetVal("Saldo",-quant);
                 Fini_SaveFile(string2);
                 Fini_CloseFile();
                return 1;
            }
            else
            {
                SendClientMessage(playerid, Vermelho, "(INFO) O jogador nгo estб conectado!");
                return 1;
            }
        }
        return 1;
    }
*/
//================
    
if(strcmp(cmd,"/horarios"true) == 0)
    {
        
SendClientMessage(playerid,RED,"|--------------- Horarios de Aula ---------------|");
        
SendClientMessage(playerid,RED,"|Tarde : 13:00 as 17:00");
        
SendClientMessage(playerid,RED,"|Noite : 19:00 as 23:00");
        
SendClientMessage(playerid,RED,"|Manhг : 8:00 as 12:00");
        
SendClientMessage(playerid,RED,"|O salario sempre й recebido as 19:00 horas");
        
SendClientMessage(playerid,RED,"|--------------- Horarios de Aula ---------------|");
        return 
1;
    }
    if(
strcmp(cmd,"/pref"true) == || strcmp(cmd,"/prefeitura",true) == 0)
    {
        if(
TaNaEscola[playerid] == 0)
        {
            
SetPlayerPos(playerid,1481.0881,-1767.5732,18.7958);
            
SetPlayerInterior(playerid,0);
        }else{
        
SendClientMessage(playerid,RED,"Vocк estб na escola e nгo pode usar comandos de Teleportes.");
        }
        return 
1;
    }
    if(
strcmp(cmd"/irb"true) == 0)
    {
        
SetPlayerPos(playerid2316.6208,-9.7189,26.7422);
        
SetPlayerInterior(playerid,0);
        return 
1;
    }
//===================================
    
if(strcmp(cmd"/amarrar"true) == 0)
    {
        new 
aname[MAX_PLAYER_NAME];
        new 
string[256];
        
GetPlayerName(playeridanamesizeof(aname));
        if(
UserInfo[cAdm][playerid] >=|| UserInfo[cEmp][playerid] == Ladrao || UserInfo[cEmp][playerid] == Assaltante || UserInfo[cEmp][playerid] == Assassino || UserInfo[cEmp][playerid] == Sequestrador || UserInfo[cEmp][playerid] == Estrupador)
        {
            new 
tmp[256];
            new 
plid;
            
tmp strtok(cmdtextidx);
            if(!
strlen(tmp))
            {
                
SendClientMessage(playeridVermelho"(ERRO) Use: /amarrar [id]");
                return 
1;
            }
            
plid strval(tmp);
            if(
IsPlayerInAnyVehicle(plid) == || IsPlayerInAnyVehicle(playerid) == 1)
            {
                
SendClientMessage(playeridVermelho"(ERRO) Alguem estб dentro de um carro.");
                return 
;
            }
            if(
plid == playerid)
            {
                
SendClientMessage(playeridVermelho"(ERRO) Vocк nгo pode amarrar vocк mesmo.");
                return 
;
            }
            if(!
IsPlayerConnected(plid))
            {
                
SendClientMessage(playeridVermelho"(ERRO) O jogador nгo estб conectado");
                return 
1;
            }else{
        if(
GetDistanceBetweenPlayers(plid,playerid) < 10)
        {
            
format(stringsizeof(string), "(INFO) O criminoso %s te algemou."aname);
            
SendClientMessage(plidBLUEstring);
            
TogglePlayerControllable(plid0);
            
SetPlayerSpecialAction(plid24);
            
SendClientMessage(playeridGREEN"(INFO) Amarrado com sucesso.");
            
UserInfo[cAmarrado][plid] = 1;
            return 
1;
        }else{
        
SendClientMessage(playerid,Vermelho,"(ERRO) Chegue mais perto para amarrar.");
        return 
1;
        }
        }
        }else{
        
SendClientMessage(playerid,Vermelho,"(ERRO) Apenas criminosos podem usar este comando.");
        return 
1;
        }
    }
//===================================
    
if(strcmp(cmd"/desamarrar"true) == 0)
    {
    new 
aname[MAX_PLAYER_NAME];
    
GetPlayerName(playeridanamesizeof(aname));
    new 
string[256];
    if(
UserInfo[cAdm][playerid] >=|| UserInfo[cEmp][playerid] == Ladrao || UserInfo[cEmp][playerid] == Assaltante || UserInfo[cEmp][playerid] == Assassino || UserInfo[cEmp][playerid] == Sequestrador || UserInfo[cEmp][playerid] == Estrupador)
    {
        new 
tmp[256];
        new 
plid;
        
tmp strtok(cmdtextidx);
        if(!
strlen(tmp))
        {
            
SendClientMessage(playeridVermelho"(ERRO) Use: /desamarrar [id]");
            return 
1;
        }
        
plid strval(tmp);
        if(
IsPlayerInAnyVehicle(plid) == || IsPlayerInAnyVehicle(playerid) == 1)
        {
            
SendClientMessage(playeridVermelho"(ERRO) Alguem estб dentro de um carro.");
            return 
;
        }
        if(
plid == playerid)
        {
            
SendClientMessage(playeridVermelho"(ERRO) Vocк nгo pode desamarrar vocк mesmo.");
            return 
;
        }
        if(!
IsPlayerConnected(plid))
        {
            
SendClientMessage(playeridVermelho"(ERRO) O jogador nгo estб conectado");
            return 
1;
        }
        else
        {
        if(
GetDistanceBetweenPlayers(plid,playerid) < 10)
        {
            
format(stringsizeof(string), "(INFO) O Criminoso %s te desamarrou."aname);
            
SendClientMessage(plidBLUEstring);
            
TogglePlayerControllable(plid1);
            
ClearAnimations(plid);
            
SetPlayerSpecialAction(plidSPECIAL_ACTION_NONE);
            
SendClientMessage(playeridGREEN"(INFO) Desamarrado com sucesso.");
            
UserInfo[cAmarrado][plid] = 0;
            return 
1;
        }
        else
        {
            
SendClientMessage(playerid,Vermelho,"(INFO) Chegue mais perto para desamarrar.");
            return 
1;
        }
        }
    }
    else
    {
        
SendClientMessage(playerid,Vermelho,"(INFO) Apenas criminosos podem usar este comando.");
        return 
1;
    }
    }
//===================================
    
return 1;
}
public 
OnPlayerEnterVehicle(playeridvehicleidispassenger)
{
    return 
1;
}
public 
OnPlayerExitVehicle(playeridvehicleid)
{
    return 
1;
}
public 
OnPlayerStateChange(playeridnewstateoldstate)
{
    return 
1;
}
public 
OnPlayerEnterCheckpoint(playerid)
{
    return 
1;
}
public 
OnPlayerLeaveCheckpoint(playerid)
{
    return 
1;
}
public 
OnPlayerEnterRaceCheckpoint(playerid)
{
    return 
1;
}
public 
OnPlayerLeaveRaceCheckpoint(playerid)
{
    return 
1;
}
public 
OnRconCommand(cmd[])
{
    return 
1;
}
public 
OnPlayerRequestSpawn(playerid)
{
    if(
UserInfo[cLog][playerid] == 0)
    {
        
SendClientMessage(playeridGREEN"Impossнvel ter spawn sem antes de logar.");//avisa o player
        
return 0;
    }
    return 
1;
}
public 
OnObjectMoved(objectid)
{
    return 
1;
}
public 
OnPlayerObjectMoved(playeridobjectid)
{
    return 
1;
}
public 
OnPlayerPickUpPickup(playeridpickupid)
{
    if(
pickupid == EntradaPref)
    {
        
SetPlayerPos(playerid,386.0952,173.6843,1008.3828);
        
SetPlayerInterior(playerid,3);
    }
    if(
pickupid == SaidaPref)
    {
        
SetPlayerPos(playerid,1481.0881,-1767.5732,18.7958);
        
SetPlayerInterior(playerid,0);
    }
    if(
pickupid == EntradaEscola)
    {
        if(
EscolaAberta == 1)
        {
        
SetPlayerPos(playerid,1494.325195,1304.942871,1093.289062);
        
SetPlayerInterior(playerid,3);
        
TaNaEscola[playerid] = 1;
        
TimeEstudando SetTimer("Estudando",60000,true);
        }else{
        
SendClientMessage(playerid,GREEN,"A escola estб fechada no momento, veja os horarios em /horarios");
        }
    }
    if(
pickupid == EntradaBanco)
    {
        
SetPlayerPos(playerid,2309.3179,-15.8236,26.7496);
        
SendClientMessage(playerid,GREEN,"|- Bem vindo ao Banco -|");
    }
    if(
pickupid == SaidaBanco)
    {
        
SetPlayerPos(playerid,1415.2400,-1702.1987,13.5395);
        
SendClientMessage(playerid,GREEN,"|- Volte sempre -|");
    }
    return 
1;
}
public 
OnVehicleMod(playeridvehicleidcomponentid)
{
    return 
1;
}
public 
OnVehiclePaintjob(playeridvehicleidpaintjobid)
{
    return 
1;
}
public 
OnVehicleRespray(playeridvehicleidcolor1color2)
{
    return 
1;
}
public 
OnPlayerSelectedMenuRow(playeridrow)
{
    return 
1;
}
public 
OnPlayerExitedMenu(playerid)
{
    return 
1;
}
public 
OnPlayerInteriorChange(playeridnewinterioridoldinteriorid)
{
    return 
1;
}
public 
OnPlayerKeyStateChange(playeridnewkeysoldkeys)
{
    if(
newkeys == 16 && GetPlayerState(playerid) == PLAYER_STATE_ONFOOT)  // Se o manolo tiver fora de um veнculo e apertar F
    
{
        if(
IsPlayerInRangeOfPoint(playerid,5.0,362.7251,173.5089,1008.3828))  // Se o manolo tiver nessa posiзгo
        
{
            
OnPlayerCommandText(playerid,"/pegaremprego"); // Vai executar o comando /equiparm
        
}
    }
    return 
1;
}
public 
OnRconLoginAttempt(ip[], password[], success)
{
    return 
1;
}
public 
OnPlayerUpdate(playerid)
{
    new 
Hora,Minutos;
    
GetPlayerTime(playerid,Hora,Minutos);
    if(
Hora == 13 && Minutos == 00)
    {
        
EscolaAberta 1;
        
GameTextForAll("~r~Escola ~g~Aberta",5000,1);
    }
    if(
Hora == 17 && Minutos == 00)
    {
        
EscolaAberta 0;
        
GameTextForAll("~r~Escola ~g~Fechada",5000,1);
    }
    return 
1;
}
public 
OnPlayerStreamIn(playeridforplayerid)
{
    return 
1;
}
public 
OnPlayerStreamOut(playeridforplayerid)
{
    return 
1;
}
public 
OnVehicleStreamIn(vehicleidforplayerid)
{
    return 
1;
}
public 
OnVehicleStreamOut(vehicleidforplayerid)
{
    return 
1;
}
public 
OnDialogResponse(playeriddialogidresponselistiteminputtext[])
{
    if(
dialogid == Empregos)
    {
        if(
listitem == 0)
        {
            
ShowPlayerDialog(playerid,Emprego_Legal,DIALOG_STYLE_LIST,"Empregos Legais Brasil Global Evolution","Advogado - Level : 25 Estudo : 30\nCantor - Level : 20 Estudo : 25\nLixeiro - Level : 5 Estudo : 0","ACEITAR","CANCELAR");
            return 
1;
        }
        if(
listitem == 1)
        {
            
ShowPlayerDialog(playerid,Emprego_Criminoso,DIALOG_STYLE_LIST,"Empregos Criminosos Brasil Global Evolution","Ladrгo - Level : 10 Estudo : 0\nAssaltante - Level : 20 Estudo : 0\nAssassino - Level : 30 Estudo : 0\nSequestrador - Level : 40 Estudo : 0\nEstrupador - Level : 50 Estudo : 0","ACEITAR","CANCELAR");
            return 
1;
        }
        if(
listitem == 2)
        {
            
ShowPlayerDialog(playerid,Emprego_Governo,DIALOG_STYLE_LIST,"Empregos do Governo Brasil Global Evolution","Policia Militar - Level : 45 Estudo : 40\nPolicia Civil - Level : 50 Estudo : 45\nPolicia Rodoviaria - Level : 65 Estudo : 60\nPolicia Federal - Level : 80 Estudo : 75\nSWAT Corporation - Level : 100 Estudo : 90\nFBI - Level : 125 Estudo : 100\nExercito - Level : 500 Estudo : 200","ACEITAR","CANCELAR");
            return 
1;
        }
        return 
1;
    }
    if(
dialogid == Emprego_Legal)
    {
        if(
listitem == 0)
        {
            if(
UserInfo[cLevel][playerid] >=25 && UserInfo[cEstudo][playerid] >=30)
            {
            
UserInfo[cEmp][playerid] = Advogado;
            
SetarProfissao(playerid);
            
SendClientMessage(playerid,GREEN,"Vocк й um Advogado, digite /profissao para ver os comandos da sua profissгo");
            }else{
            
SendClientMessage(playerid,WHITE,"Vocк nгo tem level suficiente");
            }
            return 
1;
        }
        if(
listitem == 1)
        {
            if(
UserInfo[cLevel][playerid] >=20 && UserInfo[cEstudo][playerid] >=25)
            {
            
UserInfo[cEmp][playerid] = Cantor;
            
SetarProfissao(playerid);
            
SendClientMessage(playerid,GREEN,"Vocк й um Cantor , digite /profissao para ver os comandos da sua profissгo!");
            }else{
            
SendClientMessage(playerid,WHITE,"Vocк precisa de 20 level e 25 estudos");
            }
            return 
1;
        }
        if(
listitem == 2)
        {
            if(
UserInfo[cLevel][playerid] >=&& UserInfo[cEstudo][playerid] >=0)
            {
            
UserInfo[cEmp][playerid] = Lixeiro;
            
SetarProfissao(playerid);
            
SendClientMessage(playerid,GREEN,"Vocк й um Lixeiro , digite /profissao para ver os comandos da sua profissгo!");
            }else{
            
SendClientMessage(playerid,GREEN,"Vocк precisa de 5 level e 0 estudos");
            }
            return 
1;
        }
        return 
1;
    }
    if(
dialogid == Emprego_Criminoso)
    {
        if(
listitem == 0)
        {
            if(
UserInfo[cLevel][playerid] >=10 && UserInfo[cEstudo][playerid] >=0)
            {
            
UserInfo[cEmp][playerid] = Ladrao;
            
SetarProfissao(playerid);
            
SendClientMessage(playerid,RED,"Vocк й um Ladrгo , digite /profissao para ver os comandos da sua profissгo!");
            }else{
            
SendClientMessage(playerid,WHITE,"Vocк precisa de 10 level e 0 estudos");
            }
            return 
1;
        }
        if(
listitem == 1)
        {
            if(
UserInfo[cLevel][playerid] >=20 && UserInfo[cEstudo][playerid] >=0)
            {
            
UserInfo[cEmp][playerid] = Assaltante;
            
SetarProfissao(playerid);
            
SendClientMessage(playerid,RED,"Vocк й um Assaltante , digite /profissao para ver os comandos da sua profissгo!");
            }else{
            
SendClientMessage(playerid,WHITE,"Vocк precisa de 20 level e 0 estudos");
            }
            return 
1;
        }
        if(
listitem == 2)
        {
            if(
UserInfo[cLevel][playerid] >=30 && UserInfo[cEstudo][playerid] >=0)
            {
            
UserInfo[cEmp][playerid] = Assassino;
            
SetarProfissao(playerid);
            
SendClientMessage(playerid,RED,"Vocк й um Assassino , digite /profissao para ver os comandos da sua profissгo!");
            }else{
            
SendClientMessage(playerid,WHITE,"Vocк precisa de 30 level e 0 estudos");
            }
            return 
1;
        }
        if(
listitem == 3)
        {
            if(
UserInfo[cLevel][playerid] >=40 && UserInfo[cEstudo][playerid] >=0)
            {
            
UserInfo[cEmp][playerid] = Sequestrador;
            
SetarProfissao(playerid);
            
SendClientMessage(playerid,RED,"Vocк й um Sequestrador , digite /profissao para ver os comandos da sua profissгo!");
            }else{
            
SendClientMessage(playerid,WHITE,"Vocк precisa de 40 level e 0 estudos");
            }
            return 
1;
        }
        if(
listitem == 4)
        {
            if(
UserInfo[cLevel][playerid] >=50 && UserInfo[cEstudo][playerid] >=0)
            {
            
UserInfo[cEmp][playerid] = Estrupador;
            
SetarProfissao(playerid);
            
SendClientMessage(playerid,RED,"Vocк й um Estrupador , digite /profissao para ver os comandos da sua profissгo!");
            }else{
            
SendClientMessage(playerid,WHITE,"Vocк precisa de 50 level e 0 estudos");
            }
            return 
1;
        }
        return 
1;
    }
    if(
dialogid == Emprego_Governo)
    {
        if(
listitem == 0)
        {
            if(
UserInfo[cLevel][playerid] >= 45 && UserInfo[cEstudo][playerid] >=40)
            {
            
UserInfo[cEmp][playerid] = P_Militar;
            
SetarProfissao(playerid);
            
SendClientMessage(playerid,GRAY,"Vocк й um Policial Militar , digite /profissao para ver os comandos da sua profissгo!");
            }else{
            
SendClientMessage(playerid,WHITE,"Vocк precisa de 45 level e 40 estudos");
            }
            return 
1;
        }
        if(
listitem == 1)
        {
            if(
UserInfo[cLevel][playerid] >= 50 && UserInfo[cEstudo][playerid] >=45)
            {
            
UserInfo[cEmp][playerid] = P_Civil;
            
SetarProfissao(playerid);
            
SendClientMessage(playerid,GRAY,"Vocк й um Policial Civil , digite /profissao para ver os comandos da sua profissгo!");
            }else{
            
SendClientMessage(playerid,WHITE,"Vocк precisa de 50 level e 40 estudos");
            }
            return 
1;
        }
        if(
listitem == 2)
        {
            if(
UserInfo[cLevel][playerid] >= 65 && UserInfo[cEstudo][playerid] >=60)
            {
            
UserInfo[cEmp][playerid] = P_Rodoviaria;
            
SetarProfissao(playerid);
            
SendClientMessage(playerid,GRAY,"Vocк й um Policial Rodoviario , digite /profissao para ver os comandos da sua profissгo!");
            }else{
            
SendClientMessage(playerid,WHITE,"Vocк precisa de 65 level e 60 estudos");
            }
            return 
1;
        }
        if(
listitem == 3)
        {
            if(
UserInfo[cLevel][playerid] >= 80 && UserInfo[cEstudo][playerid] >=75)
            {
            
UserInfo[cEmp][playerid] = P_Federal;
            
SetarProfissao(playerid);
            
SendClientMessage(playerid,GRAY,"Vocк й um Policial Federal , digite /profissao para ver os comandos da sua profissгo!");
            }else{
            
SendClientMessage(playerid,WHITE,"Vocк precisa de 80 level e 60 estudos");
            }
            return 
1;
        }
        if(
listitem == 4)
        {
            if(
UserInfo[cLevel][playerid] >=100 && UserInfo[cEstudo][playerid] >=90)
            {
            
UserInfo[cEmp][playerid] = SWAT;
            
SetarProfissao(playerid);
            
SendClientMessage(playerid,GRAY,"Vocк й um membro da SWAT Corporation , digite /profissao para ver os comandos da sua profissгo!");
            }else{
            
SendClientMessage(playerid,WHITE,"Vocк precisa de 100 level e 90 estudos");
            }
            return 
1;
        }
        if(
listitem == 5)
        {
            if(
UserInfo[cLevel][playerid] >=125 && UserInfo[cEstudo][playerid] >=100)
            {
            
UserInfo[cEmp][playerid] = FBI;
            
SetarProfissao(playerid);
            
SendClientMessage(playerid,GRAY,"Vocк й um membro do FBI , digite /profissao para ver os comandos da sua profissгo!");
            }else{
            
SendClientMessage(playerid,WHITE,"Vocк precisa de 125 level e 100 estudos");
            }
            return 
1;
        }
        if(
listitem == 6)
        {
            if(
UserInfo[cLevel][playerid] >=200 && UserInfo[cEstudo][playerid] >100)
            {
            
UserInfo[cEmp][playerid] = CIA;
            
SetarProfissao(playerid);
            
SendClientMessage(playerid,GRAY,"Vocк й um membro da C.I.A. , digite /profissao para ver os comandos da sua profissao!");
            }else{
            
SendClientMessage(playerid,WHITE,"Vocк precisa de 200 level e 100 estudos");
            }
            return 
1;
        }
        if(
listitem == 7)
        {
            if(
UserInfo[cLevel][playerid] >=500 && UserInfo[cEstudo][playerid] >=200)
            {
            
UserInfo[cEmp][playerid] = Exercito;
            
SetarProfissao(playerid);
            
SendClientMessage(playerid,GRAY,"|~~~~~~~~~~~~~~~~~~~~~ Exйrcito ~~~~~~~~~~~~~~~~~~~~~|");
            
SendClientMessage(playerid,BLUE,"|Parabйns vocк chegou ao cargo mais forte do governo |");
            
SendClientMessage(playerid,BLUE,"|Agora vocк terб de combater os Traficantes de drogas|");
            
SendClientMessage(playerid,BLUE,"|da Argentina , vб e ajude seus companheiros a matar |");
            
SendClientMessage(playerid,BLUE,"|todos esses traficantes. Seus comandos : /profissao |");
            
SendClientMessage(playerid,GRAY,"|~~~~~~~~~~~~~~~~~~~~~ Exйrcito ~~~~~~~~~~~~~~~~~~~~~|");
            }else{
            
SendClientMessage(playerid,WHITE,"Vocк precisa de 500 level e 200 estudos");
            }
            return 
1;
        }
        return 
1;
    }
    if(
dialogid == DIALOG_LOGIN)
    {
            if(
strlen(inputtext) == 0//caso naum escreva nada retorna o login informando o erro da senha
            
{
                
ShowPlayerDialog(playerid,DIALOG_LOGIN,DIALOG_STYLE_INPUT,"{B22222}Registro","\n{B22222}Senha incorreta!\n{F5DEB3}Insira sua senha novamente:","Logar","Cancelar");
            }else{
                
OnPlayerLogin(playerid,inputtext); //se escrever algo chama a public de login e passa a senha e o id da player
            
}
           return 
1;
    }
//aki embaixo vai verificar o registro
    
if(dialogid == DIALOG_LOGIN+1//DIALOG_LOGIN+1 й o ID da dialod de registro
    
{
            if(
strlen(inputtext) == 0//caso naum escreva nada retorna o registro informando q precisa de senha
            
{
                
ShowPlayerDialog(playerid,DIALOG_LOGIN+1,DIALOG_STYLE_INPUT,"{B22222}Registro","\n{F5DEB3}Para registrar й necessбrio uma senha:","Registrar","Cancelar");
            }else{
                
OnPlayerRegister(playerid,inputtext); //se escrever algo chama a public de registro e passa a senha e o id da player
            
}
        return 
1;
    }
    return 
1;
}
public 
OnPlayerClickPlayer(playeridclickedplayeridsource)
{
    return 
1;
}
public 
OnPlayerLogin(playerid,password[])
{
    new 
string[256]; //string para o nome do player
    
GetPlayerName(playeridpNamesizeof(pName)); //pega o noem do player pelo ID que foi passado
    
format(stringsizeof(string), "Iniciante/%s.ini",pName); //formata a onde esta o arquivo de registro, se quiser mudar o local de salvamento antere o contas sу nгo apague o %s
    
Fini_OpenFile(string);//abre o arquivo
    
if(strcmp(password,Fini_GetStr("Senha"), true) == 0//verifica se a senha q foi passada
    
{
        
UserInfo[cEmp][playerid] = Fini_GetValue("Emprego");
        
UserInfo[cAdm][playerid] = Fini_GetValue("Admin");
        
UserInfo[cReg][playerid] = Fini_GetValue("Reg");
        
UserInfo[cRespeito][playerid] = Fini_GetValue("Respeito");
        
UserInfo[cLevel][playerid] = Fini_GetValue("Level");
        
UserInfo[cEstudo][playerid] = Fini_GetValue("Estudo");
        
GivePlayerMoney(playerid,Fini_GetValue("Grana"));
        
UserInfo[cPreso][playerid] = Fini_GetValue("Preso");
        
UserInfo[cProcurado][playerid] = Fini_GetValue("Procurado");
        
SetPlayerWantedLevel(playerid,Fini_GetValue("NivelProcurado"));
        
UserInfo[cAlgemado][playerid] = Fini_GetValue("Algemado");
        
UserInfo[cAmarrado][playerid] = Fini_GetValue("Amarrado");
        
UserInfo[cLog][playerid] = 1;
        
SetPlayerPos(playerid,1154.3707,-1766.8556,16.5938);
        
ShowPlayerDialog(playerid,BEM_VINDO,DIALOG_STYLE_MSGBOX,"[BGE]Brasil Global Evolution[BGE]","{CCCCEE}Seja Bem Vindo Ao Brasil Global Evolution RPG\n{CCCCAA}Respeite as regras\n{FFFFEE}Seja RPG e Divirta-se","Ok","Ok");
    }
    else
    {
        
//caso a senha nгo seja igual ele manda pro login de novo
        
ShowPlayerDialog(playerid,DIALOG_LOGIN,DIALOG_STYLE_INPUT,"{B22222}Logar","{B22222}Senha incorreta!\n{F5DEB3}Insira sua senha novamente:","Logar","Cancelar");
    }
    
Fini_CloseFile();//fecha o arquivo do player
}
public 
OnPlayerSave(playerid)
{
//public q efetua o salvamento
//coisas que tem no login e aqui sгo iguais nгo vou repetir[
    
new string[256];
    
GetPlayerName(playeridpNamesizeof(pName));
    
format(stringsizeof(string), "Iniciante/%s.ini",pName);
    
Fini_OpenFile(string);//abre o arquivo formatado a cima
    
Fini_SetVal("Reg"UserInfo[cReg][playerid]);//salva se foi registrado
    
Fini_SetVal("Emprego",UserInfo[cEmp][playerid]);
    
Fini_SetVal("Admin",UserInfo[cAdm][playerid]);
    
Fini_SetVal("Respeito",UserInfo[cRespeito][playerid]);
    
Fini_SetVal("Level",UserInfo[cLevel][playerid]);
    
Fini_SetVal("Estudo",UserInfo[cEstudo][playerid]);
    
Fini_SetVal("Grana",GetPlayerMoney(playerid));
    
Fini_SetVal("Preso",UserInfo[cPreso][playerid]);
    
Fini_SetVal("Procurado",UserInfo[cProcurado][playerid]);
    
Fini_SetVal("NivelProcurado",GetPlayerWantedLevel(playerid));
    
Fini_SetVal("Algemado",UserInfo[cAlgemado][playerid]);
    
Fini_SetVal("Amarrado",UserInfo[cAmarrado][playerid]);
    
Fini_SaveFile(string);//salva o arquivo para efetuar as mudanзas
    
Fini_CloseFile();//fecha o arquivo, 1є salva depois fecha :@
}
public 
OnPlayerRegister(playeridpassword[])
{
//por ultimo o registro
    
new string[256];
    
GetPlayerName(playeridpNamesizeof(pName));
    
format(stringsizeof(string), "Iniciante/%s.ini",pName);
    
Fini_Create(string);//cria o arquivo do player
    
Fini_OpenFile(string);//abre o arquivo do player
    
Fini_SetStr("Senha"password);//salva a senha
    
Fini_SetVal("Reg"1);//salva se foi registrado
    
Fini_SetVal("Emprego",0);
    
Fini_SetVal("Admin",0);
    
Fini_SetVal("Respeito",0);
    
Fini_SetVal("Level",40);
    
Fini_SetVal("Estudo",40);
    
Fini_SetVal("Grana",10000);
    
Fini_SetVal("Preso",0);
    
Fini_SetVal("Procurado",0);
    
Fini_SetVal("NivelProcurado",0);
    
Fini_SetVal("Algemado",0);
    
Fini_SetVal("Amarrado",0);
    
Fini_SaveFile(string);//salva o arquivo
    
Fini_CloseFile();// fecha o arquivo
    
new string2[160];//string para definir o login, pq apos registrar temos q logar :D
    // \/ formata o q aparecera no login
    
format(string2sizeof(string2), "{F5DEB3}Bem vindo ao Seu Servidor\n\n{B22222}Nome: {F5DEB3}%s\n{B22222}Status: {F5DEB3}Registrado\n\n Digite sua senha para logar:",pName);
    
//Dialog que efetua o login :D
    
ShowPlayerDialog(playerid,DIALOG_LOGIN,DIALOG_STYLE_INPUT,"{B22222}Logar",string2,"Logar","Cancelar");
}
strtok(const string[], &index)
{
    new 
length strlen(string);
    while ((
index length) && (string[index] <= ' '))
    {
        
index++;
    }
    new 
offset index;
    new 
result[20];
    while ((
index length) && (string[index] > ' ') && ((index offset) < (sizeof(result) - 1)))
    {
        
result[index offset] = string[index];
        
index++;
    }
    
result[index offset] = EOS;
    return 
result;
}
forward GanharRespeito(playerid);
public 
GanharRespeito(playerid)
{
    if(
IsPlayerConnected(playerid))
    {
        
SendClientMessage(playerid,roxo,"Vocк recebeu mais 1 respeito !");
        
UserInfo[cRespeito][playerid]++;
        if(
UserInfo[cRespeito][playerid] == 3)
        {
            
UserInfo[cLevel][playerid]++;
            
UserInfo[cRespeito][playerid] = 0;
            
SendClientMessage(playerid,roxo,"Vocк recebeu mais 1 level ! ");
        }
    }
    return 
1;
}
forward Estudando(playerid);
public 
Estudando(playerid)
{
    
TempoNaEscola[playerid] ++;
    if(
TempoNaEscola[playerid] == 1)
    {
        
SendClientMessage(playerid,GREEN,"Vocк estб estudando a 1 minuto");
    }
    if(
TempoNaEscola[playerid] == 2)
    {
        
UserInfo[cEstudo][playerid]++;
        
TempoNaEscola[playerid] = 0;
        
KillTimer(TimeEstudando);
        
TaNaEscola[playerid] = 0;
        new 
string[256];
        
format(string,sizeof(string),"|-Vocк recebeu +1 estudo | Agora vocк tem %d estudos-|",UserInfo[cEstudo][playerid]);
        
SendClientMessage(playerid,GREEN,string);
        
SetPlayerPos(playerid,1481.0881,-1767.5732,18.7958);
        
SetPlayerInterior(playerid,0);
    }
    return 
1;
}
forward spawn(playerid);
public 
spawn(playerid)
{
    
SpawnPlayer(playerid);
}
forward HoraSincronizada();
public 
HoraSincronizada()
{
  
Segundo++;
  if(
Segundo == 60)
  {
    
Minuto++;
    
Segundo 0;
  }
  if(
Minuto >= 24Minuto 0;
  for(new 
ii<GetMaxPlayers(); i++) SetPlayerTime(iMinutoSegundo);
  return 
1;
}
forward Float:GetDistanceBetweenPlayers(playerid,targetplayerid);
public 
Float:GetDistanceBetweenPlayers(playerid,targetplayerid)
{
    new 
Float:x1,Float:y1,Float:z1,Float:x2,Float:y2,Float:z2;
    if(!
IsPlayerConnected(playerid) || !IsPlayerConnected(targetplayerid)) {
        return -
1.00;
    }
    
GetPlayerPos(playerid,x1,y1,z1);
    
GetPlayerPos(targetplayerid,x2,y2,z2);
    return 
floatsqroot(floatpower(floatabs(floatsub(x2,x1)),2)+floatpower(floatabs(floatsub(y2,y1)),2)+floatpower(floatabs(floatsub(z2,z1)),2));
}
forward TempoPreso(playerid);
public 
TempoPreso(playerid)
{
    
OnPlayerSpawn(playerid);
    
SetPlayerHealth(playerid,100);
    
SendClientMessage(playerid,GRAY,"|- Vocк foi solto ! Nгo faзa coisas erradas ou irб preso novamente ! -|");
    return 
1;
}
forward SetarProfissao(playerid);
public 
SetarProfissao(playerid)
{
    if(
UserInfo[cEmp][playerid] == Desempregado)
    {
        
SetPlayerColor(playerid,WHITE);
    }
    if(
UserInfo[cEmp][playerid] == Advogado)
    {
        
SetPlayerColor(playerid,C_Advogado);
        
GivePlayerWeapon(playerid,24,9999);
    }
    if(
UserInfo[cEmp][playerid] == Lixeiro)
    {
        
SetPlayerColor(playerid,C_Lixeiro);
        
GivePlayerWeapon(playerid,6,9999);
    }
    if(
UserInfo[cEmp][playerid] == Jornalista)
    {
        
SetPlayerColor(playerid,C_Jornalista);
        
GivePlayerWeapon(playerid,43,9999);
    }
    if(
UserInfo[cEmp][playerid] == Medico)
    {
        
SetPlayerColor(playerid,C_Paramedico);
        
GivePlayerWeapon(playerid,46,9999);
    }
    if(
UserInfo[cEmp][playerid] == Mecanico)
    {
        
SetPlayerColor(playerid,C_Mecanico);
        
GivePlayerWeapon(playerid,41,9999);
    }
    if(
UserInfo[cEmp][playerid] == Corredor)
    {
        
SetPlayerColor(playerid,C_Corredor);
        
GivePlayerWeapon(playerid,22,9999);
    }
    if(
UserInfo[cEmp][playerid] == Cantor)
    {
        
SetPlayerColor(playerid,C_Cantor);
        
GivePlayerWeapon(playerid,2,9999);
    }
    if(
UserInfo[cEmp][playerid] == Rapper)
    {
        
SetPlayerColor(playerid,C_Rapper);
        
GivePlayerWeapon(playerid,24,9999);
    }
    if(
UserInfo[cEmp][playerid] == P_Militar)
    {
        
SetPlayerColor(playerid,C_PM);
        
GivePlayerWeapon(playerid31);
        
GivePlayerWeapon(playerid24300);
        
GivePlayerWeapon(playerid28300);
        
GivePlayerWeapon(playerid31300);
        
GivePlayerWeapon(playerid27300);
    }
    if(
UserInfo[cEmp][playerid] == P_Civil)
    {
        
SetPlayerColor(playerid,C_PC);
        
GivePlayerWeapon(playerid31);
        
GivePlayerWeapon(playerid24350);
        
GivePlayerWeapon(playerid28350);
        
GivePlayerWeapon(playerid31350);
    }
    if(
UserInfo[cEmp][playerid] == P_Rodoviaria)
    {
        
GivePlayerWeapon(playerid31);
        
GivePlayerWeapon(playerid28200);
        
GivePlayerWeapon(playerid27200);
        
SetPlayerColor(playeridC_PR);
    }
    if(
UserInfo[cEmp][playerid] == P_Federal)
    {
        
GivePlayerWeapon(playerid31);
        
GivePlayerWeapon(playerid26400);
        
GivePlayerWeapon(playerid28400);
        
GivePlayerWeapon(playerid24400);
        
SetPlayerColor(playeridC_PF);
    }
    if(
UserInfo[cEmp][playerid] == SWAT)
    {
        
SetPlayerColor(playerid,C_Swat);
        
GivePlayerWeapon(playerid31);
        
GivePlayerWeapon(playerid26500);
        
GivePlayerWeapon(playerid28500);
        
GivePlayerWeapon(playerid24500);
        
GivePlayerWeapon(playerid31500);
    }
    if(
UserInfo[cEmp][playerid] == FBI)
    {
        
GivePlayerWeapon(playerid31);
        
GivePlayerWeapon(playerid261000);
        
GivePlayerWeapon(playerid281000);
        
GivePlayerWeapon(playerid241000);
        
GivePlayerWeapon(playerid311000);
        
GivePlayerWeapon(playerid341000);
        
SetPlayerColor(playerid,C_FBI);
    }
    if(
UserInfo[cEmp][playerid] == CIA)
    {
        
SetPlayerColor(playerid,C_YKZ);
        
GivePlayerWeapon(playerid,24,9999);
        
GivePlayerWeapon(playerid,27,9999);
        
GivePlayerWeapon(playerid,29,9999);
        
GivePlayerWeapon(playerid,16,100);
        
GivePlayerWeapon(playerid,34,9999);
        
GivePlayerWeapon(playerid,45,9999);
        
GivePlayerWeapon(playerid,43,9999);
    }
    if(
UserInfo[cEmp][playerid] == Exercito)
    {
        
GivePlayerWeapon(playerid31);
        
GivePlayerWeapon(playerid26800);
        
GivePlayerWeapon(playerid28800);
        
GivePlayerWeapon(playerid24800);
        
GivePlayerWeapon(playerid31800);
        
GivePlayerWeapon(playerid34200);
        
SetPlayerColor(playeridC_Interpol);
    }
    if(
UserInfo[cEmp][playerid] == Prefeito)
    {
        
SetPlayerColor(playerid,C_Prefeito);
        
GivePlayerWeapon(playerid151);
    }
    if(
UserInfo[cEmp][playerid] == Presidente)
    {
        
GivePlayerWeapon(playerid151);
        
SetPlayerColor(playeridC_Presidente);
    }
    if(
UserInfo[cEmp][playerid] == Ladrao)
    {
        
GivePlayerWeapon(playerid24,9999);
        
SetPlayerColor(playerid,GRAY);
    }
    if(
UserInfo[cEmp][playerid] == Assaltante)
    {
        
GivePlayerWeapon(playerid24,9999);
        
GivePlayerWeapon(playerid27,9999);
        
GivePlayerWeapon(playerid28,9999);
        
GivePlayerWeapon(playerid30,9999);
        
SetPlayerColor(playerid,C_Assaltante);
    }
    if(
UserInfo[cEmp][playerid] == Assassino)
    {
        
GivePlayerWeapon(playerid24,9999);
        
GivePlayerWeapon(playerid27,9999);
        
GivePlayerWeapon(playerid28,9999);
        
GivePlayerWeapon(playerid30,9999);
        
SetPlayerColor(playerid,C_Assassino);
    }
    if(
UserInfo[cEmp][playerid] == Sequestrador)
    {
        
GivePlayerWeapon(playerid24,9999);
        
GivePlayerWeapon(playerid27,9999);
        
GivePlayerWeapon(playerid28,9999);
        
GivePlayerWeapon(playerid30,9999);
        
SetPlayerColor(playerid,C_Sequestrador);
    }
    if(
UserInfo[cEmp][playerid] == Estrupador)
    {
        
GivePlayerWeapon(playerid12,9999);
        
GivePlayerWeapon(playerid24,9999);
        
GivePlayerWeapon(playerid27,9999);
        
GivePlayerWeapon(playerid28,9999);
        
GivePlayerWeapon(playerid30,9999);
        
SetPlayerColor(playerid,C_Terrorista);
    }
    return 
1;

Erros : 0
Warnings : 0
Por favor preciso muito da ajuda de vocкs !
Eu uso Fini , porque acho mais simples de usar :]
Reply
#2

Criou as Pasta tudo certo?
Reply
#3

OnGameMode exit nгo й chamado ao fechar o samp server.
Reply
#4

Tenta escrever exit no console.
Reply
#5

Pastas tudo criada !
Vou testar o exit , depois eu volto aqui.

#Edit:
Digite exit no console , ele fechou e resetou a minha conta -.-'
Reply
#6


Percebi agora , que quando o player sai normal , Esc >> Sair do Jogo >> Sim , ele salva , entгo serб que se eu
por um cmd /kickall pra min desligar o servidor ele salvara as contas pelo kick ? ou nгo ? '-'
Reply
#7

Note que se vocк digitar /Q e tiver a funзгo de salvar no OnPlayerDisconnect e ela nгo tiver com problemas, irб salvar, mas fechando o samp-server ele nгo salva mesmo, deve ser normal...

Imagina sу, vocк hospeda seu servidor na sua prуpria net e tem 50 players online, de repente vocк resolve fechar o samp-server, ele na mesma hora para de executar tudo, nгo irб salvar nenhuma conta!

O que vocк pode fazer й criar um timer repetindo de 3,4 minutos salvando as contas.


@Edit:
Se vocк fizer um /kickall irб funcionar! Ou vocк pode fazer um /Gmx que salve todas contas antes de reiniciar o servidor...


#Dica:
Jб que seu GM й novo, dб tempo de passб-lo pra ZCMD+Sscanf, й bem fбcil e rбpido!
Reply
#8

Entendi , vejo vocк falarem neste "zcmd e sscanf" oque eles melhoram no meu gamemode ? '-'
Obrigado , vou fazer o comando /gmx para admin logado na rcon , dai salvara e terei tempo de desligar o servidor...
Obrigado a todos !
Reply
#9

Quote:
Originally Posted by darkxdll
Посмотреть сообщение
Entendi , vejo vocк falarem neste "zcmd e sscanf" oque eles melhoram no meu gamemode ? '-'
Obrigado , vou fazer o comando /gmx para admin logado na rcon , dai salvara e terei tempo de desligar o servidor...
Obrigado a todos !
melhoram quase tudo.. performace, rapidez em criar os comandos etc.. zcmd й bem simples..

por exemplo um comando do tipo /comando [id] motivo]

em strcmp + strtock vc gastaria um monte de linhas, ja em zcmd+sscanf ficaria assim:
pawn Код:
CMD:comando(playerid,params[])
{
    new id,motivo[50];
    if(sscanf(params,"is",id,motivo)) return SendClientMessage(playerid,-1, "uso,/comando [id] motivo]");
    format(string, sizeof string, "vc kickou o id: %i, pelo motivo: %s",id,motivo);
    SendClientMessage(playerid,-1,string);
    Kick(id);
    return 1;
}
simples, ^^
vc pode buscar outros comandos deste tipo em stcmp+strtock e vai perceber que vc usa muito mais coisas.
Reply
#10

Quote:
Originally Posted by darkxdll
Посмотреть сообщение
Entendi , vejo vocк falarem neste "zcmd e sscanf" oque eles melhoram no meu gamemode ? '-'
Obrigado , vou fazer o comando /gmx para admin logado na rcon , dai salvara e terei tempo de desligar o servidor...
Obrigado a todos !
Alйm de serem 1000 vezes melhor na facilidade eles sгo tambйm mais rбpidos!
Olha sу a diferenзa (facilidade):
strcmp:
pawn Код:
if(strcmp(cmd,"/daradmin", true) == 0)
zcmd:
pawn Код:
CMD:daradmin(playerid, params[])//nota: zcmd nao podem ser postos dentro de publics/stocks,nenhuma callback
strtok (usado para dar espaзo, colocando parametros nos comandos strcmp)
pawn Код:
tmp = strtok(cmdtext, idx); //tem q fazer isso pra cada parametro, esse й o ID
if(!strval(tmp)) return SendClientMessage(playerid,-1,"Use: /daradmin [ID] [Nivel]");//verifica se digitou ID
tmp = strtok(cmdtext, idx);// esse й o do nivel
if(!strval(tmp)) return SendClientMessage(playerid,-1,"Use: /daradmin [ID] [Nivel]");//verifica se digitou o nivel
E ainda existe um cуdigo enorme usado para frases para comandos como /Radio [Texto]
Agora sscanf:
pawn Код:
new ID, nivel;
if(sscanf(params,"ud", ID, nivel)) return SendClientMesage(playerid,-1,"Use: /daradmin [Id] [Nivel]");
E o bom do sscanf tambйm й que usando "u" ali, ele pega o player pelo ID ou pelo nome, tanto faz
Jб com strtok vocк teria que usar ReturnUser, hehe.
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)