[FilterScript] r_Administration System 1.0
#1


r_Administration System 1.5
Olб pessoal, venho a postagem de uma mais novo filterscript de admin no qual foi colocado alguns comandos administrativos, saves e loads, e futuramente serб adicionado mais comandos. Sistema de salvamento dof2 e comandos foram feitos em zcmd e sscanf espero que gostem.

Versхes
Nas seguintes versхes pretendo criar mas comandos e mais salvamentos como: salvar skin, armas etc. Comandos: /congelar , /descongelar , /calar , /descalar etc. Aceito sugestхes e criticas construtivas .

Prints
Estou tirando alguns prints net aqui fail .

Comandos adicionados
Foram adicionados os seguintes comandos creio que eles sejam os mais precisos para comeзar com a administraзгo .
Administrador level 1: /cadm , /cplayers , /tapa , /tapao , /explodir , /ir , /trazer , /avisar.
Administrador level 2: /dararma , /darvida , /darcolete , /dardinheiro , /desarmar , /kickar , /banir , /congelar , /descongelar + comandos admin level 1.
Administrador level 3: /vidatodos , /coletetodos , /armartodos , /desarmall + comandos admin level 1 e 2.
Administrador rcon: /setaradmin , /gmx + comandos admin level 1, 2 e 3.
Players: /admins, /report.

Salvamentos
Foram acrescentados salvamentos de dinheiro, adminlevel, score, deaths.
Banimentos: Ao banir um player automaticamente й criado um arquivo com o nome do player no seguinte diretorio: "\Contas\Banidos\%s.ini", dentro dele estarб quem baniu, motivo, hora, data.
Kicks: Ao kickar um player automaticamente й criado um arquivo com o nome do player no seguinte diretorio: "\Contas\Kickados\%.ini", dentro dele estarб quem kickou, motivo, hora, data.

Istalaзгo
Simples apenas basta criar uma pasta com o nome "Contas" na scriptfiles, e dentro da pasta "Contas" crie mais trкs pastas que serгo: "Kickados" , "Banidos" e "Contas".

Download
PHP код:
/*
Descriзгo:
    r_Administration System 1.5
Developer:
    RoacH`
Change Log:
    29/04/2012:
        Versгo: 1.0
    01/05/2012:
        Versгo: 1.1
            Administrador level 1: /explodir, /ir, /trazer.
            Administrador level 2: /dararma, /darvida, /darcolete, /dardinheiro, /kickar, /banir, /congelar, /descongelar + comandos admin level 1.
            Administrador level 3: /vidatodos, /coletetodos, /armartodos, /setaradmin + comandos admin level 1 e 2.
            Administrador rcon: /setaradmin, /gmx + comandos admin level 1, 2 e 3.
            Players: /admins, /report.
        Versгo: 1.5
            Novas optimizaзхes foram adicionadas, bugs corrigidos ( /admins, /vidatodos, /coletetodos ), novos comandos adicionados.
            Administrador level 1: /cadm , /cplayers , /tapa , /tapao , /explodir , /ir , /trazer , /avisar.
            Administrador level 2: /dararma , /darvida , /darcolete , /dardinheiro , /desarmar , /kickar , /banir , /congelar , /descongelar  + comandos admin level 1.
            Administrador level 3: /vidatodos , /coletetodos , /armartodos , /desarmall + comandos admin level 1 e 2.
            Administrador rcon: /setaradmin , /gmx + comandos admin level 1, 2 e 3.
            Players: /admins, /report.
Agradecimentos:
    ZeeX - Processador de comandos ZCMD.
    ****** - Sscanf2.
    Double-O-Seven - DOF2.
    SA-MP Team - For all.
*/
#include     <  a_samp  > //Include
#include     <  dof2    > //Include
#include     <  zcmd    > //Include
#include     <  sscanf2 > //Include
#define DIALOG_LOGIN 1015 //Caso este id jб esteja definido em seu gm ou algum fs troque-o
#define DIALOG_REGISTRO 1014 //Caso este id jб esteja definido em seu gm ou algum fs troque-o
#define r_Loop(%1,%2) for (new %2 = 0, %1 = MAX_PLAYERS; %2 != %1; ++%2) //Loop
#define Contas  "/Contas/Contas/%s.ini" //Diretorio
#define Banidos "/Contas/Banidos/%s.ini" //Diretorio
#define Kicks "/Contas/Kickados/%s.ini" //Diretorio
#define BRN  "{FFFFFF}" //Branco
#define VRM  "{F81414}" //Vermelho
enum r_DataCenter r_DataKills r_DataDeaths r_DataMoney r_DataAdmin } ;
new 
r_SubCenter MAX_PLAYERS ] [ r_DataCenter ] , bool:r_Spawn MAX_PLAYERS ] , bool:r_Logou MAX_PLAYERS ] , r_Avisos MAX_PLAYERS ] ;
public 
OnFilterScriptExit ( ) DOF2_Exit ( ) ;
public 
OnPlayerRequestClass playerid classid ) {
    if ( 
r_Logou playerid ] == false ) {
        if ( 
DOF2_FileExists r_DataCenterExist playerid ) ) ) {
            
ShowPlayerDialog playerid DIALOG_LOGIN DIALOG_STYLE_PASSWORD ""BRN"Login:" ,
                
""BRN"Bem vindo ao "VRM"servidor "BRN"novamente porfavor digite a senha abaixo: " #Logar , #Sair ) ;
        
}
        else {
            
ShowPlayerDialog playerid DIALOG_REGISTRO DIALOG_STYLE_INPUT ""BRN"Registro:" ,
                
""BRN"Bem vindo ao "VRM"servidor "BRN"porfavor digite a senha abaixo para se registrar: " #Registrar , #Sair ) ;
        
}
    }
    
r_Spawn playerid ] = true ;
    if ( 
r_Logou playerid ] == true )
        return 
;
    return 
1;
}
public 
OnPlayerConnect playerid r_Logou playerid ] = false ;
public 
OnPlayerDisconnect playerid reason ) if ( r_SubCenter playerid ] [ r_DataAdmin ] > )
    
r_Avisos playerid ] = r_Logou playerid ] = false r_DataCenterSave playerid ) ;
public 
OnPlayerDeath(playeridkilleridreason) {
    if ( 
killerid == INVALID_PLAYER_ID r_SubCenter playerid ] [ r_DataDeaths ] ++ ;
    else {
           
r_SubCenter killerid ] [ r_DataKills ] ++ ;
    }
    return 
1;
}
public 
OnPlayerSpawn playerid r_Spawn playerid ] = false ;
public 
OnPlayerRequestSpawn playerid )
{
    if ( 
r_Logou playerid ] == false ) {
        
SendClientMessage playerid 0xFF0000FF "[ERRO]: Vocк nгo estб logado/registrado." );
        return 
;
    }
    if ( 
r_Logou playerid ] == true )
        return 
;
    return 
1;
}
public 
OnDialogResponse playerid dialogid response listitem inputtext [ ] ) {
    switch ( 
dialogid ) {
        case 
DIALOG_REGISTRO: {
            if ( !
response ) return
                
SendClientMessage playerid 0xFF0000FF "[INFO]: Vocк foi kickado. (Nгo registrou)." ) , Kick playerid ) ;
            if ( 
response ) {
                if ( 
strlen inputtext ) < || strlen inputtext ) > 20 ) return
                    
ShowPlayerDialog(playeridDIALOG_REGISTRO DIALOG_STYLE_INPUT ""BRN"Registro:" ""BRN"Sua senha tem que ter no minimo "VRM"4 letras/numeros e maximo 20"BRN"." #Registrar , #Sair ) ;
                
if ( !strlen inputtext ) ) return
                    
ShowPlayerDialog(playeridDIALOG_REGISTRO DIALOG_STYLE_INPUT ""BRN"Registro:" ""BRN"Senha "VRM"invalida"BRN"." #Registrar , #Sair ) ;
                
DOF2_CreateFile r_DataCenterExist playerid ) , inputtext ) ;
                
DOF2_SetInt r_DataCenterExist playerid ) , "Kills" ) ;
                
DOF2_SetInt r_DataCenterExist playerid ) , "Deaths" ) ;
                
DOF2_SetInt r_DataCenterExist playerid ) , "Money" ) ;
                
DOF2_SetInt r_DataCenterExist playerid ) , "AdminLevel" ) ;
                
DOF2_SaveFile ( ) ;
                
//SpawnPlayer ( playerid ) ;
                
GivePlayerMoney playerid 1000 ) ;
                
SendClientMessage playerid 0xFF0000FF "[CONTA]: Registrado com sucesso." ) , r_Logou playerid ] = true ;
            }
        }
        case 
DIALOG_LOGIN: {
            if ( !
response ) return
                
SendClientMessage playerid 0xFF0000FF "[INFO]: Vocк foi kickado. (Nгo logou)." ) , Kick playerid ) ;
            if( 
response ) {
                   if ( 
strlen inputtext ) < || strlen inputtext ) > 20 ) return
                    
ShowPlayerDialog(playeridDIALOG_LOGIN DIALOG_STYLE_PASSWORD ""BRN"Login:" ""BRN"Sua senha tem que ter no minimo "VRM"4 letras/numeros e maximo 20"BRN"." #Logar , #Sair ) ;
                
if ( DOF2_CheckLogin r_DataCenterExist playerid ) , inputtext ) ) {
                    
r_DataCenterLoad playerid ) ;
                    if ( 
r_SubCenter playerid ] [ r_DataAdmin ] > SendClientMessage playerid 0xFF0000FF "[CONTA]: Logado como administrador." ) ;
                    if ( 
r_SubCenter playerid ] [ r_DataAdmin ] == SendClientMessage playerid 0xFF0000FF "[CONTA]: Logado com sucesso." ) ;
                    
//SpawnPlayer ( playerid ) ;
                    
if ( DOF2_FileExists r_DataCenterExistBans playerid ) ) ) {
                        
SendClientMessage playerid 0xFF0000FF "[INFO]: Desculpe vocк estб banido." ) ;
                        
Kick playerid ) ;
                    }
                    else {
                        
SendClientMessage playerid 0xFF0000FF "[INFO]: Seja bem vindo ao servidor :D." ) , r_Logou playerid ] = true ;
                    }
                }
                else {
                    
ShowPlayerDialog(playeridDIALOG_LOGINDIALOG_STYLE_PASSWORD ""BRN"Login:",""BRN"Senha "VRM"incorreta "BRN"tente novamente:" ,#Logar , #Sair ) ;
                
}
                return 
1;
            }
        }
    }
    return 
1;
}
CMD:admins playerid ) {
    new 
r_Admin r_StrinG 128 ] , r_Nome MAX_PLAYER_NAME ] ;
    
SendClientMessage playerid 0xFF0000FF "[INFO]: Checando administradores online..." ) ;
    
r_Loop r_Player ) if ( r_Spawn ] == false && r_SubCenter ] [ r_DataAdmin ] > ) {
        
GetPlayerName r_Nome MAX_PLAYER_NAME ) ;
        
format r_StrinG sizeof r_StrinG ) , "Administrador: %s(id:%d) || Nнvel: %d" r_Nome r_SubCenter ] [ r_DataAdmin ] ) ;
        
SendClientMessage playerid 0xFF0000FF r_StrinG ) ;
        
r_Admin ++ ;
    }
    if ( 
r_Admin == SendClientMessage playerid 0xFF0000FF "[ERRO]: Nenhum administrador online." ) ;
    return 
1;
}
CMD:report playerid params [ ] ) {
    if ( 
r_Spawn playerid ] == true ) return SendClientMessage playerid 0xFF0000FF "[ERRO]: Vocк estб no spawn." ) ;
    new 
r_Player r_Reason 15 ] ;
    if ( 
sscanf params "us" r_Player r_Reason ) ) return SendClientMessage playerid 0xFF0000FF "[ERRO]: /report [playerid] [reason]");
    if ( !
IsPlayerConnected r_Player ) || r_Player == playerid ) return SendClientMessage playerid 0xFF0000FF "[ERRO]: Jogador inativo ou estб usando em si mesmo." ) ;
    if ( 
r_Spawn r_Player ] == true ) return SendClientMessage playerid 0xFF0000FF "[ERRO]: Este jogador estб no spawn." ) ;
    if ( 
strlen (r_Reason) > 10 || strlen (r_Reason) < ) return SendClientMessage playerid 0xFF0000FF "[ERRO]: Limite de caracteres 10 minimo 4." ) ;
    
    new 
r_StrinG 128 ] , r_Nome MAX_PLAYER_NAME ] , r_Nomer MAX_PLAYER_NAME ] ;
    
GetPlayerName playerid r_Nome MAX_PLAYER_NAME ) ; GetPlayerName r_Player r_Nomer MAX_PLAYER_NAME ) ;
    
format r_StrinG sizeof r_StrinG ) , "[Report]: %s reportou %s pelo motivo: %s" r_Nome r_Nomer r_Reason ) ;
    
SendClientMessageEx 0xFF0000FF r_StrinG ) ;
    return 
;
}
CMD:cmdall playerid params [ ] ) {
    if ( 
r_Spawn playerid ] == true ) return SendClientMessage playerid 0xFF0000FF "[ERRO]: Vocк estб no spawn." ) ;
    if ( 
r_SubCenter playerid ] [ r_DataAdmin ] == ) return SendClientMessage playerid 0xFF0000FF "[ERRO]: Vocк nгo й administrador." ) ;
    if ( 
r_SubCenter playerid ] [ r_DataAdmin ] == )
        
SendClientMessage playerid 0xFF0000FF ,  "[Level 1]: /cadm , /cplayers , /tapa , /tapao , /explodir , /ir , /trazer , /avisar." ) ;
    if ( 
r_SubCenter playerid ] [ r_DataAdmin ] == )
        
SendClientMessage playerid 0xFF0000FF ,  "[Level 1]: /cadm , /cplayers , /tapa , /tapao , /explodir , /ir , /trazer , /avisar." ) ,
        
SendClientMessage playerid 0xFF0000FF ,  "[Level 2]: /dararma , /darvida , /darcolete , /dardinheiro , /desarmar , /kickar , /banir." ) ,
        
SendClientMessage playerid 0xFF0000FF ,  "[Level 2]: /congelar , /descongelar." ) ;
    if ( 
r_SubCenter playerid ] [ r_DataAdmin ] == )
        
SendClientMessage playerid 0xFF0000FF ,  "[Level 1]: /cadm , /cplayers , /tapa , /tapao , /explodir , /ir , /trazer , /avisar." ) ,
        
SendClientMessage playerid 0xFF0000FF ,  "[Level 2]: /dararma , /darvida , /darcolete , /dardinheiro , /desarmar , /kickar , /banir." ) ,
        
SendClientMessage playerid 0xFF0000FF ,  "[Level 2]: /congelar , /descongelar." ) ,
        
SendClientMessage playerid 0xFF0000FF ,  "[Level 3]: /vidatodos , /coletetodos , /armartodos , /desarmall." ) ;
    if ( 
IsPlayerAdmin playerid ) )
        
SendClientMessage playerid 0xFF0000FF ,  "[Level 1]: /cadm , /cplayers , /tapa , /tapao , /explodir , /ir , /trazer , /avisar." ) ,
        
SendClientMessage playerid 0xFF0000FF ,  "[Level 2]: /dararma , /darvida , /darcolete , /dardinheiro , /desarmar , /kickar , /banir." ) ,
        
SendClientMessage playerid 0xFF0000FF ,  "[Level 2]: /congelar , /descongelar." ) ,
        
SendClientMessage playerid 0xFF0000FF ,  "[Level 3]: /vidatodos , /coletetodos , /armartodos , /desarmall." ) ,
        
SendClientMessage playerid 0xFF0000FF ,  "[Rcon]: /setaradmin , /gmx" ) ;
    return 
1;
}
CMD:cadm playerid params [ ] ) {
    if ( 
r_Spawn playerid ] == true ) return SendClientMessage playerid 0xFF0000FF "[ERRO]: Vocк estб no spawn." ) ;
    if ( 
r_SubCenter playerid ] [ r_DataAdmin ] == ) return SendClientMessage playerid 0xFF0000FF "[ERRO]: Vocк nгo й administrador." ) ;
    new 
r_Texto 50 ] ;
    if ( 
sscanf params "s" r_Texto ) ) return SendClientMessage playerid 0xFF0000FF "[ERRO]: /cadm [text]");
    new 
r_StrinG 128 ] , r_Nome MAX_PLAYER_NAME ] ;
    
GetPlayerName playerid r_Nome MAX_PLAYER_NAME ) ;
       
format r_StrinG sizeof r_StrinG ) , "[ChatAdmin]: %s diz: %s" r_Nome r_Texto ) ;
    
SendClientMessageEx 0xFF0000FF r_StrinG ) ;
    return 
1;
}
CMD:cplayers playerid params [ ] ) {
    if ( 
r_Spawn playerid ] == true ) return SendClientMessage playerid 0xFF0000FF "[ERRO]: Vocк estб no spawn." ) ;
    if ( 
r_SubCenter playerid ] [ r_DataAdmin ] == ) return SendClientMessage playerid 0xFF0000FF "[ERRO]: Vocк nгo й administrador." ) ;
    new 
r_Texto 50 ] ;
    if ( 
sscanf params "s" r_Texto ) ) return SendClientMessage playerid 0xFF0000FF "[ERRO]: /cplayers [text]");
    
    new 
r_StrinG 128 ] , r_Nome MAX_PLAYER_NAME ] ; GetPlayerName playerid r_Nome MAX_PLAYER_NAME ) ;
       
format r_StrinG sizeof r_StrinG ) , "%s: %s" r_Nome r_Texto ) ;
    
GameTextForAll r_StrinG 10000 ) ;
    return 
1;
}
CMD:tapa playerid params [ ] ) {
    if ( 
r_Spawn playerid ] == true ) return SendClientMessage playerid 0xFF0000FF "[ERRO]: Vocк estб no spawn." ) ;
    if ( 
r_SubCenter playerid ] [ r_DataAdmin ] == ) return SendClientMessage playerid 0xFF0000FF "[ERRO]: Vocк nгo й administrador." ) ;
    new 
r_Player ;
    if ( 
sscanf params "u" r_Player ) ) return SendClientMessage playerid 0xFF0000FF "[ERRO]: /tapa [playerid]");
    if ( !
IsPlayerConnected r_Player ) ) return SendClientMessage playerid 0xFF0000FF "[ERRO]: Jogador inativo." ) ;
    if ( 
r_Spawn r_Player ] == true ) return SendClientMessage playerid 0xFF0000FF "[ERRO]: Este jogador estб no spawn." ) ;
    new 
r_StrinG 128 ] , r_Nome MAX_PLAYER_NAME ] , r_Nomer MAX_PLAYER_NAME ] ;
    
GetPlayerName playerid r_Nome MAX_PLAYER_NAME ) ; GetPlayerName r_Player r_Nomer MAX_PLAYER_NAME ) ;
    new 
Float:rX Float:rY Float:rZ ;
       
GetPlayerPos r_Player rX rY rZ ) ;
     
SetPlayerPos r_Player rX rY rZ+) ;
       
format r_StrinG sizeof r_StrinG ) , "[r_Admin]: %s deu um tapa no jogador %s" r_Nome r_Nomer ) ;
    
SendClientMessageEx 0xFF0000FF r_StrinG ) ;
    return 
1;
}
CMD:tapao playerid params [ ] ) {
    if ( 
r_Spawn playerid ] == true ) return SendClientMessage playerid 0xFF0000FF "[ERRO]: Vocк estб no spawn." ) ;
    if ( 
r_SubCenter playerid ] [ r_DataAdmin ] == ) return SendClientMessage playerid 0xFF0000FF "[ERRO]: Vocк nгo й administrador." ) ;
    new 
r_Player ;
    if ( 
sscanf params "u" r_Player ) ) return SendClientMessage playerid 0xFF0000FF "[ERRO]: /tapao [playerid]");
    if ( !
IsPlayerConnected r_Player ) ) return SendClientMessage playerid 0xFF0000FF "[ERRO]: Jogador inativo." ) ;
    if ( 
r_Spawn r_Player ] == true ) return SendClientMessage playerid 0xFF0000FF "[ERRO]: Este jogador estб no spawn." ) ;
    new 
r_StrinG 128 ] , r_Nome MAX_PLAYER_NAME ] , r_Nomer MAX_PLAYER_NAME ] ;
    
GetPlayerName playerid r_Nome MAX_PLAYER_NAME ) ; GetPlayerName r_Player r_Nomer MAX_PLAYER_NAME ) ;
    new 
Float:rX Float:rY Float:rZ ;
       
GetPlayerPos r_Player rX rY rZ ) ;
     
SetPlayerPos r_Player rX rY rZ+90 ) ;
       
format r_StrinG sizeof r_StrinG ) , "[r_Admin]: %s deu um tapao no jogador %s" r_Nome r_Nomer ) ;
    
SendClientMessageEx 0xFF0000FF r_StrinG ) ;
    return 
1;
}
CMD:explodir playerid params [ ] ) {
    if ( 
r_Spawn playerid ] == true ) return SendClientMessage playerid 0xFF0000FF "[ERRO]: Vocк estб no spawn." ) ;
    if ( 
r_SubCenter playerid ] [ r_DataAdmin ] == ) return SendClientMessage playerid 0xFF0000FF "[ERRO]: Vocк nгo й administrador." ) ;
    new 
r_Player ;
    if ( 
sscanf params "u" r_Player ) ) return SendClientMessage playerid 0xFF0000FF "[ERRO]: /explodir [playerid]");
    if ( !
IsPlayerConnected r_Player ) ) return SendClientMessage playerid 0xFF0000FF "[ERRO]: Jogador inativo." ) ;
    if ( 
r_Spawn r_Player ] == true ) return SendClientMessage playerid 0xFF0000FF "[ERRO]: Este jogador estб no spawn." ) ;
    
    new 
FloatrX FloatrY FloatrZ ;
    
GetPlayerPos r_Player rX rY rZ ) ;
    
CreateExplosion rX rY rZ 10 ) ;
    new 
r_StrinG 128 ] , r_Nome MAX_PLAYER_NAME ] , r_Nomer MAX_PLAYER_NAME ] ;
    
GetPlayerName playerid r_Nome MAX_PLAYER_NAME ) ; GetPlayerName r_Player r_Nomer MAX_PLAYER_NAME ) ;
    
format r_StrinG sizeof r_StrinG ) , "[r_Admin]: %s explodiu o jogador %s" r_Nome r_Nomer ) ;
    
SendClientMessageEx 0xFF0000FF r_StrinG ) ;
    return 
;
}
CMD:ir playerid params [ ] ) {
    if ( 
r_Spawn playerid ] == true ) return SendClientMessage playerid 0xFF0000FF "[ERRO]: Vocк estб no spawn." ) ;
    if ( 
r_SubCenter playerid ] [ r_DataAdmin ] == ) return SendClientMessage playerid 0xFF0000FF "[ERRO]: Vocк nгo й administrador." ) ;
    new 
r_Player ;
    if ( 
sscanf params "u" r_Player ) ) return SendClientMessage playerid 0xFF0000FF "[ERRO]: /ir [playerid]");
    if ( !
IsPlayerConnected r_Player ) || r_Player == playerid ) return SendClientMessage playerid 0xFF0000FF "[ERRO]: Jogador inativo ou estб usando em si mesmo." ) ;
    if ( 
r_Spawn r_Player ] == true ) return SendClientMessage playerid 0xFF0000FF "[ERRO]: Este jogador estб no spawn." ) ;
    
    new 
FloatrX FloatrY FloatrZ ;
    
GetPlayerPos r_Player rX rY rZ ) ;
    
SetPlayerPos playerid rX rY rZ ) ;
    new 
r_StrinG 128 ] , r_Nome MAX_PLAYER_NAME ] , r_Nomer MAX_PLAYER_NAME ] ;
    
GetPlayerName playerid r_Nome MAX_PLAYER_NAME ) ; GetPlayerName r_Player r_Nomer MAX_PLAYER_NAME ) ;
    
format r_StrinG sizeof r_StrinG ) , "[r_Admin]: %s se teleportou atй o jogador %s" r_Nome r_Nomer ) ;
    
SendClientMessageEx 0xFF0000FF r_StrinG ) ;
    
format r_StrinG sizeof r_StrinG ) , "[r_Admin]: %s se teleportou atй vocк." r_Nome ) ;
    
SendClientMessage r_Player 0xFF0000FF r_StrinG ) ;
    return 
;
}
CMD:trazer playerid params [ ] ) {
    if ( 
r_Spawn playerid ] == true ) return SendClientMessage playerid 0xFF0000FF "[ERRO]: Vocк estб no spawn." ) ;
    if ( 
r_SubCenter playerid ] [ r_DataAdmin ] == ) return SendClientMessage playerid 0xFF0000FF "[ERRO]: Vocк nгo й administrador." ) ;
    new 
r_Player ;
    if ( 
sscanf params "u" r_Player ) ) return SendClientMessage playerid 0xFF0000FF "[ERRO]: /trazer [playerid]");
    if ( !
IsPlayerConnected r_Player || r_Player == playerid ) ) return SendClientMessage playerid 0xFF0000FF "[ERRO]: Jogador inativo ou estб usando em si mesmo." ) ;
    if ( 
r_Spawn r_Player ] == true ) return SendClientMessage playerid 0xFF0000FF "[ERRO]: Este jogador estб no spawn." ) ;
    
    new 
FloatrX FloatrY FloatrZ ;
    
GetPlayerPos playerid rX rY rZ ) ;
    
SetPlayerPos r_Player rX rY rZ ) ;
    new 
r_StrinG 128 ] , r_Nome MAX_PLAYER_NAME ] , r_Nomer MAX_PLAYER_NAME ] ;
    
GetPlayerName playerid r_Nome MAX_PLAYER_NAME ) ; GetPlayerName r_Player r_Nomer MAX_PLAYER_NAME ) ;
    
format r_StrinG sizeof r_StrinG ) , "[r_Admin]: %s puxou o jogador %s" r_Nome r_Nomer ) ;
    
SendClientMessageEx 0xFF0000FF r_StrinG ) ;
    
format r_StrinG sizeof r_StrinG ) , "[r_Admin]: %s puxou vocк." r_Nome ) ;
    
SendClientMessage r_Player 0xFF0000FF r_StrinG ) ;
    return 
;
}
CMD:avisar playerid params [ ] ) {
    if ( 
r_Spawn playerid ] == true ) return SendClientMessage playerid 0xFF0000FF "[ERRO]: Vocк estб no spawn." ) ;
    if ( 
r_SubCenter playerid ] [ r_DataAdmin ] == ) return SendClientMessage playerid 0xFF0000FF "[ERRO]: Vocк nгo й administrador." ) ;
    new 
r_Player r_Reason 50 ] ;
    if ( 
sscanf params "us[49]" r_Player r_Reason ) ) return SendClientMessage playerid 0xFF0000FF "[ERRO]: /avisar [playerid] [reason]");
    if ( !
IsPlayerConnected r_Player ) ) return SendClientMessage playerid 0xFF0000FF "[ERRO]: Jogador inativo ou estб usando em si mesmo." ) ;
    if ( 
r_Spawn r_Player ] == true ) return SendClientMessage playerid 0xFF0000FF "[ERRO]: Este jogador estб no spawn." ) ;
    new 
r_StrinG 128 ] , r_Nome MAX_PLAYER_NAME ] , r_Nomer MAX_PLAYER_NAME ] ;
    
GetPlayerName playerid r_Nome MAX_PLAYER_NAME ) ; GetPlayerName r_Player r_Nomer MAX_PLAYER_NAME ) ;
    
r_Avisos r_Player ] ++ ;
    if ( 
r_Avisos r_Player ] == ) {
        
format r_StrinG sizeof r_StrinG ) , "[r_Admin]: %s avisou o jogador %s pelo motivo: %s || (1/3)" r_Nome r_Nomer r_Reason ) ;
        
SendClientMessageToAll 0xFF0000FF r_StrinG ) ;
    }
    if ( 
r_Avisos r_Player ] == ) {
        
format r_StrinG sizeof r_StrinG ) , "[r_Admin]: %s avisou o jogador %s pelo motivo: %s || (2/3)" r_Nome r_Nomer r_Reason ) ;
        
SendClientMessageToAll 0xFF0000FF r_StrinG ) ;
    }
    if ( 
r_Avisos r_Player ] == ) {
        
format r_StrinG sizeof r_StrinG ) , "[r_Admin]: %s kickou o jogador %s pelo motivo: %s || (3/3)" r_Nome r_Nomer r_Reason ) ;
        
SendClientMessageToAll 0xFF0000FF r_StrinG ) ;
          
Kick r_Player ) ;
    }
    return 
;
}
CMD:dararma playerid params [ ] ) {
    if ( 
r_Spawn playerid ] == true ) return SendClientMessage playerid 0xFF0000FF "[ERRO]: Vocк estб no spawn." ) ;
    if ( 
r_SubCenter playerid ] [ r_DataAdmin ] == ) return SendClientMessage playerid 0xFF0000FF "[ERRO]: Vocк nгo й administrador." ) ;
    if ( 
r_SubCenter playerid ] [ r_DataAdmin ] < ) return SendClientMessage playerid 0xFF0000FF "[ERRO]: Vocк nгo tem permissгo." ) ;
    new 
r_Player r_Arma ;
    if ( 
sscanf params "ud" r_Player r_Arma ) ) return SendClientMessage playerid 0xFF0000FF "[ERRO]: /dararma [playerid] [armaid]");
    if ( !
IsPlayerConnected r_Player ) ) return SendClientMessage playerid 0xFF0000FF "[ERRO]: Jogador inativo." ) ;
    if ( 
r_Spawn r_Player ] == true ) return SendClientMessage playerid 0xFF0000FF "[ERRO]: Este jogador estб no spawn." ) ;
    
    new 
r_StrinG 128 ] , r_Nome MAX_PLAYER_NAME ] , r_Nomer MAX_PLAYER_NAME ] ;
    
GetPlayerName playerid r_Nome MAX_PLAYER_NAME ) ; GetPlayerName r_Player r_Nomer MAX_PLAYER_NAME ) ;
    
format r_StrinG sizeof r_StrinG ) , "[r_Admin]: %s deu uma armaid: %d para %s" r_Nome r_Arma r_Nomer ) ;
    
SendClientMessageEx 0xFF0000FF r_StrinG ) ;
    
format r_StrinG sizeof r_StrinG ) , "[r_Admin]: Vocк recebeu uma armaid: %d do admin %s" r_Arma r_Nome ) ;
    
SendClientMessage r_Player 0xFF0000FF r_StrinG ) ;
    
GivePlayerWeapon r_Player r_Arma 999999 ) ;
    return 
;
}
CMD:darvida playerid params [ ] ) {
    if ( 
r_Spawn playerid ] == true ) return SendClientMessage playerid 0xFF0000FF "[ERRO]: Vocк estб no spawn." ) ;
    if ( 
r_SubCenter playerid ] [ r_DataAdmin ] == ) return SendClientMessage playerid 0xFF0000FF "[ERRO]: Vocк nгo й administrador." ) ;
    if ( 
r_SubCenter playerid ] [ r_DataAdmin ] < ) return SendClientMessage playerid 0xFF0000FF "[ERRO]: Vocк nгo tem permissгo." ) ;
    new 
r_Player r_Vida ;
    if ( 
sscanf params "ud" r_Player r_Vida ) ) return SendClientMessage playerid 0xFF0000FF "[ERRO]: /darvida [playerid] [healthid]");
    if ( !
IsPlayerConnected r_Player ) ) return SendClientMessage playerid 0xFF0000FF "[ERRO]: Jogador inativo." ) ;
    if ( 
r_Spawn r_Player ] == true ) return SendClientMessage playerid 0xFF0000FF "[ERRO]: Este jogador estб no spawn." ) ;
    if ( 
r_Vida || r_Vida 100 ) return SendClientMessage playerid 0xFF0000FF "[ERRO]: Quantia invalida." ) ;
    
    new 
r_StrinG 128 ] , r_Nome MAX_PLAYER_NAME ] , r_Nomer MAX_PLAYER_NAME ] ;
    
GetPlayerName playerid r_Nome MAX_PLAYER_NAME ) ; GetPlayerName r_Player r_Nomer MAX_PLAYER_NAME ) ;
    
format r_StrinG sizeof r_StrinG ) , "[r_Admin]: %s deu %d de vida para %s" r_Nome r_Vida r_Nomer ) ;
    
SendClientMessageEx 0xFF0000FF r_StrinG ) ;
    
format r_StrinG sizeof r_StrinG ) , "[r_Admin]: Vocк recebeu %d%% de vida do admin %s" r_Vida r_Nome ) ;
    
SendClientMessage r_Player 0xFF0000FF r_StrinG ) ;
    
SetPlayerHealth r_Player r_Vida ) ;
    return 
;
}
CMD:darcolete playerid params [ ] ) {
    if ( 
r_Spawn playerid ] == true ) return SendClientMessage playerid 0xFF0000FF "[ERRO]: Vocк estб no spawn." ) ;
    if ( 
r_SubCenter playerid ] [ r_DataAdmin ] == ) return SendClientMessage playerid 0xFF0000FF "[ERRO]: Vocк nгo й administrador." ) ;
    if ( 
r_SubCenter playerid ] [ r_DataAdmin ] < ) return SendClientMessage playerid 0xFF0000FF "[ERRO]: Vocк nгo tem permissгo." ) ;
    new 
r_Player r_Colete ;
    if ( 
sscanf params "ud" r_Player r_Colete ) ) return SendClientMessage playerid 0xFF0000FF "[ERRO]: /darcolete [playerid] [armourid]");
    if ( !
IsPlayerConnected r_Player ) ) return SendClientMessage playerid 0xFF0000FF "[ERRO]: Jogador inativo." ) ;
    if ( 
r_Spawn r_Player ] == true ) return SendClientMessage playerid 0xFF0000FF "[ERRO]: Este jogador estб no spawn." ) ;
    if ( 
r_Colete || r_Colete 100 ) return SendClientMessage playerid 0xFF0000FF "[ERRO]: Quantia invalida." ) ;
    
    new 
r_StrinG 128 ] , r_Nome MAX_PLAYER_NAME ] , r_Nomer MAX_PLAYER_NAME ] ;
    
GetPlayerName playerid r_Nome MAX_PLAYER_NAME ) ; GetPlayerName r_Player r_Nomer MAX_PLAYER_NAME ) ;
    
format r_StrinG sizeof r_StrinG ) , "[r_Admin]: %s deu %d de colete para %s" r_Nome r_Colete r_Nomer ) ;
    
SendClientMessageEx 0xFF0000FF r_StrinG ) ;
    
format r_StrinG sizeof r_StrinG ) , "[r_Admin]: Vocк recebeu %d%% de colete do admin %s" r_Colete r_Nome ) ;
    
SendClientMessage r_Player 0xFF0000FF r_StrinG ) ;
    
SetPlayerArmour r_Player r_Colete ) ;
    return 
;
}
CMD:dardinheiro playerid params [ ] ) {
    if ( 
r_Spawn playerid ] == true ) return SendClientMessage playerid 0xFF0000FF "[ERRO]: Vocк estб no spawn." ) ;
    if ( 
r_SubCenter playerid ] [ r_DataAdmin ] == ) return SendClientMessage playerid 0xFF0000FF "[ERRO]: Vocк nгo й administrador." ) ;
    if ( 
r_SubCenter playerid ] [ r_DataAdmin ] < ) return SendClientMessage playerid 0xFF0000FF "[ERRO]: Vocк nгo tem permissгo." ) ;
    new 
r_Player r_Grana ;
    if ( 
sscanf params "ud" r_Player r_Grana ) ) return SendClientMessage playerid 0xFF0000FF "[ERRO]: /dardinheiro [playerid] [quantia]");
    if ( !
IsPlayerConnected r_Player ) ) return SendClientMessage playerid 0xFF0000FF "[ERRO]: Jogador inativo." ) ;
    if ( 
r_Spawn r_Player ] == true ) return SendClientMessage playerid 0xFF0000FF "[ERRO]: Este jogador estб no spawn." ) ;
    
    new 
r_StrinG 128 ] , r_Nome MAX_PLAYER_NAME ] , r_Nomer MAX_PLAYER_NAME ] ;
    
GetPlayerName playerid r_Nome MAX_PLAYER_NAME ) ; GetPlayerName r_Player r_Nomer MAX_PLAYER_NAME ) ;
    
format r_StrinG sizeof r_StrinG ) , "[r_Admin]: %s deu %d de grana para %s" r_Nome r_Grana r_Nomer ) ;
    
SendClientMessageEx 0xFF0000FF r_StrinG ) ;
    
format r_StrinG sizeof r_StrinG ) , "[r_Admin]: Vocк recebeu %d de grana do admin %s" r_Grana r_Nome ) ;
    
SendClientMessage r_Player 0xFF0000FF r_StrinG ) ;
    
GivePlayerMoney r_Player r_Grana ) ;
    return 
;
}
CMD:desaramar playerid params [ ] ) {
    if ( 
r_Spawn playerid ] == true ) return SendClientMessage playerid 0xFF0000FF "[ERRO]: Vocк estб no spawn." ) ;
    if ( 
r_SubCenter playerid ] [ r_DataAdmin ] == ) return SendClientMessage playerid 0xFF0000FF "[ERRO]: Vocк nгo й administrador." ) ;
    if ( 
r_SubCenter playerid ] [ r_DataAdmin ] < ) return SendClientMessage playerid 0xFF0000FF "[ERRO]: Vocк nгo tem permissгo." ) ;
    new 
r_Player ;
    if ( 
sscanf params "u" r_Player ) ) return SendClientMessage playerid 0xFF0000FF "[ERRO]: /desaramar [playerid]");
    if ( !
IsPlayerConnected r_Player ) ) return SendClientMessage playerid 0xFF0000FF "[ERRO]: Jogador inativo." ) ;
    if ( 
r_Spawn r_Player ] == true ) return SendClientMessage playerid 0xFF0000FF "[ERRO]: Este jogador estб no spawn." ) ;
    new 
r_StrinG 128 ] , r_Nome MAX_PLAYER_NAME ] , r_Nomer MAX_PLAYER_NAME ] ;
    
GetPlayerName playerid r_Nome MAX_PLAYER_NAME ) ; GetPlayerName r_Player r_Nomer MAX_PLAYER_NAME ) ;
    
format r_StrinG sizeof r_StrinG ) , "[r_Admin]: %s desarmou o jogador %s" r_Nome r_Nomer ) ;
    
SendClientMessageEx 0xFF0000FF r_StrinG ) ;
    
format r_StrinG sizeof r_StrinG ) , "[r_Admin]: %s desarmou vocк." r_Nome ) ;
    
SendClientMessage r_Player 0xFF0000FF r_StrinG ) ;
    
ResetPlayerWeapons r_Player ) ;
    return 
;
}
CMD:kickar playerid params [ ] ) {
    if ( 
r_Spawn playerid ] == true ) return SendClientMessage playerid 0xFF0000FF "[ERRO]: Vocк estб no spawn." ) ;
    if ( 
r_SubCenter playerid ] [ r_DataAdmin ] == ) return SendClientMessage playerid 0xFF0000FF "[ERRO]: Vocк nгo й administrador." ) ;
    if ( 
r_SubCenter playerid ] [ r_DataAdmin ] < ) return SendClientMessage playerid 0xFF0000FF "[ERRO]: Vocк nгo tem permissгo." ) ;
    new 
r_Player r_Reason 10 ] ;
    if ( 
sscanf params "us" r_Player r_Reason ) ) return SendClientMessage playerid 0xFF0000FF "[ERRO]: /kickar [playerid] [reason]");
    if ( !
IsPlayerConnected r_Player ) || r_Player == playerid ) return SendClientMessage playerid 0xFF0000FF "[ERRO]: Jogador inativo ou estб usando em si mesmo." ) ;
    if ( 
strlen (r_Reason) > 10 || strlen (r_Reason) < ) return SendClientMessage playerid 0xFF0000FF "[ERRO]: Limite de caracteres 10 minimo 4." ) ;
    
    new 
r_StrinG 128 ] , r_Nome MAX_PLAYER_NAME ] , r_Nomer MAX_PLAYER_NAME ] ;
    
GetPlayerName playerid r_Nome MAX_PLAYER_NAME ) ; GetPlayerName r_Player r_Nomer MAX_PLAYER_NAME ) ;
    
format r_StrinG sizeof r_StrinG ) , "[r_Admin]: %s kickou o jogador %s motivo: %s" r_Nome r_Nomer r_Reason ) ;
    
SendClientMessageToAll 0xFF0000FF r_StrinG ) ;
    if ( !
DOF2_FileExists r_DataCenterKicks r_Player ) ) ) {
        
DOF2_CreateFile r_DataCenterKicks r_Player ) ) ;
        new 
ano mes dia hora minuto segundo ;
           
getdate ano mes dia ) ; gettime hora minuto segundo ) ;
        
DOF2_SetString r_DataCenterKicks r_Player ) , "Administrador:"r_Nome ) ;
        
DOF2_SetString r_DataCenterKicks r_Player ) , "Motivo/Razгo:" r_Reason ) ;
        
DOF2_SetInt r_DataCenterKicks r_Player ) , "Dia:"dia ) ;
        
DOF2_SetInt r_DataCenterKicks r_Player ) , "Mes:"mes ) ;
        
DOF2_SetInt r_DataCenterKicks r_Player ) , "Ano:"ano ) ;
        
DOF2_SetInt r_DataCenterKicks r_Player ) , "Hora:"hora ) ;
        
DOF2_SetInt r_DataCenterKicks r_Player ) , "Minuto:"minuto ) ;
        
DOF2_SaveFile ( ) ;
        
Kick r_Player ) ;
    }
    else {
        new 
ano mes dia hora minuto segundo ;
           
getdate ano mes dia ) ; gettime hora minuto segundo ) ;
        
DOF2_SetString r_DataCenterKicks r_Player ) , "Administrador:"r_Nome ) ;
        
DOF2_SetString r_DataCenterKicks r_Player ) , "Motivo/Razгo:" r_Reason ) ;
        
DOF2_SetInt r_DataCenterKicks r_Player ) , "Dia:"dia ) ;
        
DOF2_SetInt r_DataCenterKicks r_Player ) , "Mes:"mes ) ;
        
DOF2_SetInt r_DataCenterKicks r_Player ) , "Ano:"ano ) ;
        
DOF2_SetInt r_DataCenterKicks r_Player ) , "Hora:"hora ) ;
        
DOF2_SetInt r_DataCenterKicks r_Player ) , "Minuto:"minuto ) ;
        
DOF2_SaveFile ( ) ;
        
Kick r_Player ) ;
    }
    return 
;
}
CMD:banir playerid params [ ] ) {
    if ( 
r_Spawn playerid ] == true ) return SendClientMessage playerid 0xFF0000FF "[ERRO]: Vocк estб no spawn." ) ;
    if ( 
r_SubCenter playerid ] [ r_DataAdmin ] == ) return SendClientMessage playerid 0xFF0000FF "[ERRO]: Vocк nгo й administrador." ) ;
    if ( 
r_SubCenter playerid ] [ r_DataAdmin ] < ) return SendClientMessage playerid 0xFF0000FF "[ERRO]: Vocк nгo tem permissгo." ) ;
    new 
r_Player r_Reason 20 ] ;
    if ( 
sscanf params "us" r_Player r_Reason ) ) return SendClientMessage playerid 0xFF0000FF "[ERRO]: /banir [playerid] [reason]");
    if ( !
IsPlayerConnected r_Player ) || r_Player == playerid ) return SendClientMessage playerid 0xFF0000FF "[ERRO]: Jogador inativo ou estб usando em si mesmo." ) ;
    if ( 
strlen (r_Reason) > 10 || strlen (r_Reason) < ) return SendClientMessage playerid 0xFF0000FF "[ERRO]: Limite de caracteres 10 minimo 4." ) ;
    
    new 
r_StrinG 128 ] , r_Nome MAX_PLAYER_NAME ] , r_Nomer MAX_PLAYER_NAME ] ;
    
GetPlayerName playerid r_Nome MAX_PLAYER_NAME ) ; GetPlayerName r_Player r_Nomer MAX_PLAYER_NAME ) ;
    
format r_StrinG sizeof r_StrinG ) , "[r_Admin]: %s baniu o jogador %s motivo: %s" r_Nome r_Nomer r_Reason ) ;
    
SendClientMessageToAll 0xFF0000FF r_StrinG ) ;
    
DOF2_CreateFile r_DataCenterExistBans r_Player ) ) ;
    new 
ano mes dia hora minuto segundo ;
       
getdate ano mes dia ) ; gettime hora minuto segundo ) ;
    
DOF2_SetString r_DataCenterExistBans r_Player ) , "Administrador:"r_Nome ) ;
    
DOF2_SetString r_DataCenterExistBans r_Player ) , "Motivo/Razгo:" r_Reason ) ;
    
DOF2_SetInt r_DataCenterExistBans r_Player ) , "Dia:"dia ) ;
    
DOF2_SetInt r_DataCenterExistBans r_Player ) , "Mes:"mes ) ;
    
DOF2_SetInt r_DataCenterExistBans r_Player ) , "Ano:"ano ) ;
    
DOF2_SetInt r_DataCenterExistBans r_Player ) , "Hora:"hora ) ;
    
DOF2_SetInt r_DataCenterExistBans r_Player ) , "Minuto:"minuto ) ;
    
DOF2_SetInt r_DataCenterExist r_Player ) , "Kills" ) ;
    
DOF2_SetInt r_DataCenterExist r_Player ) , "Deaths" ) ;
    
DOF2_SetInt r_DataCenterExist r_Player ) , "Money" ) ;
    
DOF2_SetInt r_DataCenterExist r_Player ) , "AdminLevel" ) ;
    
DOF2_SaveFile ( ) ;
    
Kick r_Player ) ;
    return 
;
}
CMD:congelar playerid params[ ] ) {
    if ( 
r_Spawn playerid ] == true ) return SendClientMessage playerid 0xFF0000FF "[ERRO]: Vocк estб no spawn." ) ;
    if ( 
r_SubCenter playerid ] [ r_DataAdmin ] == ) return SendClientMessage playerid 0xFF0000FF "[ERRO]: Vocк nгo й administrador." ) ;
    if ( 
r_SubCenter playerid ] [ r_DataAdmin ] < ) return SendClientMessage playerid 0xFF0000FF "[ERRO]: Vocк nгo tem permissгo." ) ;
    new 
r_Player ;
    if ( 
sscanf params "u" r_Player ) ) return SendClientMessage playerid 0xFF0000FF "[ERRO]: /congelar [playerid]");
    if ( !
IsPlayerConnected r_Player ) ) return SendClientMessage playerid 0xFF0000FF "[ERRO]: Jogador inativo." ) ;
    
     new 
r_StrinG 100 ] , r_Nome MAX_PLAYER_NAME ] , r_Nomer MAX_PLAYER_NAME ] ;
    
GetPlayerName playerid r_Nome MAX_PLAYER_NAME ) ; GetPlayerName r_Player r_Nomer MAX_PLAYER_NAME ) ;
    
format r_StrinG sizeof r_StrinG ) , "[r_Admin]: %s congelou o jogador %s" r_Nome r_Nomer ) ;
    
SendClientMessageEx 0xFF0000FF r_StrinG ) ;
    
format r_StrinG sizeof r_StrinG ) , "[r_Admin]: %s congelou vocк." r_Nome ) ;
    
SendClientMessage r_Player 0xFF0000FF r_StrinG ) ;
    
TogglePlayerControllable r_Player ) ;
    return 
1;
}
CMD:descongelar playerid params[ ] ) {
    if ( 
r_Spawn playerid ] == true ) return SendClientMessage playerid 0xFF0000FF "[ERRO]: Vocк estб no spawn." ) ;
    if ( 
r_SubCenter playerid ] [ r_DataAdmin ] == ) return SendClientMessage playerid 0xFF0000FF "[ERRO]: Vocк nгo й administrador." ) ;
    if ( 
r_SubCenter playerid ] [ r_DataAdmin ] < ) return SendClientMessage playerid 0xFF0000FF "[ERRO]: Vocк nгo tem permissгo." ) ;
    new 
r_Player ;
    if ( 
sscanf params "u" r_Player ) ) return SendClientMessage playerid 0xFF0000FF "[ERRO]: /congelar [playerid]");
    if ( !
IsPlayerConnected r_Player ) ) return SendClientMessage playerid 0xFF0000FF "[ERRO]: Jogador inativo." ) ;
    
     new 
r_StrinG 128 ] , r_Nome MAX_PLAYER_NAME ] , r_Nomer MAX_PLAYER_NAME ] ;
    
GetPlayerName playerid r_Nome MAX_PLAYER_NAME ) ; GetPlayerName r_Player r_Nomer MAX_PLAYER_NAME ) ;
    
format r_StrinG sizeof r_StrinG ) , "[r_Admin]: %s descongelou o jogador %s" r_Nome r_Nomer ) ;
    
SendClientMessageEx 0xFF0000FF r_StrinG ) ;
    
format r_StrinG sizeof r_StrinG ) , "[r_Admin]: %s descongelou vocк." r_Nome ) ;
    
SendClientMessage r_Player 0xFF0000FF r_StrinG ) ;
    
TogglePlayerControllable r_Player ) ;
    return 
1;
}
CMD:vidatodos playerid params [ ] ) {
    if ( 
r_Spawn playerid ] == true ) return SendClientMessage playerid 0xFF0000FF "[ERRO]: Vocк estб no spawn." ) ;
    if ( 
r_SubCenter playerid ] [ r_DataAdmin ] == ) return SendClientMessage playerid 0xFF0000FF "[ERRO]: Vocк nгo й administrador." ) ;
    if ( 
r_SubCenter playerid ] [ r_DataAdmin ] < ) return SendClientMessage playerid 0xFF0000FF "[ERRO]: Vocк nгo tem permissгo." ) ;
    new 
r_Vida ;
    if ( 
sscanf params "d" r_Vida ) ) return SendClientMessage playerid 0xFF0000FF "[ERRO]: /vidatodos [healthid]");
    if ( 
r_Vida || r_Vida 100 ) return SendClientMessage playerid 0xFF0000FF "[ERRO]: Quantia invalida." ) ;
    
    new 
r_StrinG 128 ] , r_Nome MAX_PLAYER_NAME ] ;
    
GetPlayerName playerid r_Nome MAX_PLAYER_NAME ) ;
    
format r_StrinG sizeof r_StrinG ) , "[r_Admin]: %s deu %d de vida para todos." r_Nome r_Vida ) ;
    
SendClientMessageToAll 0xFF0000FF r_StrinG ) ;
    
r_Loop r_Player SetPlayerHealth r_Vida ) ;
    return 
;
}
CMD:coletetodos playerid params [ ] ) {
    if ( 
r_Spawn playerid ] == true ) return SendClientMessage playerid 0xFF0000FF "[ERRO]: Vocк estб no spawn." ) ;
    if ( 
r_SubCenter playerid ] [ r_DataAdmin ] == ) return SendClientMessage playerid 0xFF0000FF "[ERRO]: Vocк nгo й administrador." ) ;
    if ( 
r_SubCenter playerid ] [ r_DataAdmin ] < ) return SendClientMessage playerid 0xFF0000FF "[ERRO]: Vocк nгo tem permissгo." ) ;
    new 
r_Colete ;
    if ( 
sscanf params "d" r_Colete ) ) return SendClientMessage playerid 0xFF0000FF "[ERRO]: /coletetodos [armourid]");
    if ( 
r_Colete || r_Colete 100 ) return SendClientMessage playerid 0xFF0000FF "[ERRO]: Quantia invalida." ) ;
    
    new 
r_StrinG 128 ] , r_Nome MAX_PLAYER_NAME ] ;
    
GetPlayerName playerid r_Nome MAX_PLAYER_NAME ) ;
    
format r_StrinG sizeof r_StrinG ) , "[r_Admin]: %s deu %d de colete para todos." r_Nome r_Colete ) ;
    
SendClientMessageToAll 0xFF0000FF r_StrinG ) ;
    
r_Loop r_Player SetPlayerArmour r_Colete ) ;
    return 
;
}
CMD:armartodos playerid params [ ] ) {
    if ( 
r_Spawn playerid ] == true ) return SendClientMessage playerid 0xFF0000FF "[ERRO]: Vocк estб no spawn." ) ;
    if ( 
r_SubCenter playerid ] [ r_DataAdmin ] == ) return SendClientMessage playerid 0xFF0000FF "[ERRO]: Vocк nгo й administrador." ) ;
    if ( 
r_SubCenter playerid ] [ r_DataAdmin ] < ) return SendClientMessage playerid 0xFF0000FF "[ERRO]: Vocк nгo tem permissгo." ) ;
    new 
r_Arma r_Ammo ;
    if ( 
sscanf params "dd" r_Arma r_Ammo ) ) return SendClientMessage playerid 0xFF0000FF "[ERRO]: /dararma [armaid] [ammoid]");
    
    new 
r_StrinG 128 ] , r_Nome MAX_PLAYER_NAME ] ;
    
GetPlayerName playerid r_Nome MAX_PLAYER_NAME ) ;
    
format r_StrinG sizeof r_StrinG ) , "[r_Admin]: %s deu arma de [ID:%d] [Ammo:%d] para todos." r_Nome r_Arma ,  r_Ammo ) ;
    
SendClientMessageToAll 0xFF0000FF r_StrinG ) ;
    
r_Loop r_Player GivePlayerWeapon r_Arma r_Ammo ) ;
    return 
;
}
CMD:desarmall playerid params [ ] ) {
    if ( 
r_Spawn playerid ] == true ) return SendClientMessage playerid 0xFF0000FF "[ERRO]: Vocк estб no spawn." ) ;
    if ( 
r_SubCenter playerid ] [ r_DataAdmin ] == ) return SendClientMessage playerid 0xFF0000FF "[ERRO]: Vocк nгo й administrador." ) ;
    if ( 
r_SubCenter playerid ] [ r_DataAdmin ] < ) return SendClientMessage playerid 0xFF0000FF "[ERRO]: Vocк nгo tem permissгo." ) ;
    new 
r_StrinG 128 ] , r_Nome MAX_PLAYER_NAME ] ;
    
GetPlayerName playerid r_Nome MAX_PLAYER_NAME ) ;
    
format r_StrinG sizeof r_StrinG ) , "[r_Admin]: %s desarmou todos." r_Nome ) ;
    
SendClientMessageToAll 0xFF0000FF r_StrinG ) ;
    
r_Loop r_Player ResetPlayerWeapons ) ;
    return 
;
}
CMD:setaradmin playerid params [ ] ) {
    if ( 
r_Spawn playerid ] == true ) return SendClientMessage playerid 0xFF0000FF "[ERRO]: Vocк estб no spawn." ) ;
    if ( 
r_SubCenter playerid ] [ r_DataAdmin ] == && !IsPlayerAdmin playerid ) ) return SendClientMessage playerid 0xFF0000FF "[ERRO]: Vocк nгo й administrador." ) ;
    if ( 
r_SubCenter playerid ] [ r_DataAdmin ] < && !IsPlayerAdmin playerid ) ) return SendClientMessage playerid 0xFF0000FF "[ERRO]: Vocк nгo tem permissгo." ) ;
    new 
r_Player r_Level ;
    if ( 
sscanf params "ui" r_Player r_Level ) ) return SendClientMessage playerid 0xFF0000FF "[ERRO]: /setaradmin [playerid] [level]");
    if ( !
IsPlayerConnected r_Player ) ) return SendClientMessage playerid 0xFF0000FF "[ERRO]: Jogador inativo." ) ;
    if ( 
r_Spawn r_Player ] == true ) return SendClientMessage playerid 0xFF0000FF "[ERRO]: Este jogador estб no spawn." ) ;
    if ( 
r_Level || r_Level ) return SendClientMessage playerid 0xFF0000FF "[ERRO]: Level invalido." ) ;
    if ( 
r_Level == r_SubCenter r_Player ] [ r_DataAdmin ] ) return SendClientMessage playerid 0xFF0000FF "[ERRO]: Este jogador jб tem este level." ) ;
    
    new 
r_StrinG 128 ] ;
    new 
r_Nome MAX_PLAYER_NAME ] , r_Nomer MAX_PLAYER_NAME ] ;
    
GetPlayerName playerid r_Nome MAX_PLAYER_NAME ) ; GetPlayerName r_Player r_Nomer MAX_PLAYER_NAME ) ;
    
format r_StrinG sizeof r_StrinG ) , "[r_Admin]: %s deu admin level %d para %s" r_Nome r_Level r_Nomer ) ;
    
SendClientMessageEx 0xFF0000FF r_StrinG ) ;
    
format r_StrinG sizeof r_StrinG ) , "[r_Admin]: %s deu admin level %d para vocк." r_Nome r_Level ) ;
    
SendClientMessage r_Player 0xFF0000FF r_StrinG ) ;
     
r_SubCenter r_Player ] [ r_DataAdmin ] = DOF2_SetInt r_DataCenterExist r_Player ) , "AdminLevel"r_Level ) ;
     
DOF2_SaveFile ( ) ;
     
r_SubCenter r_Player ] [ r_DataAdmin ] = DOF2_GetInt r_DataCenterExist r_Player ) , "AdminLevel" ) ;
    return 
;
}
CMD:gmx playerid params [ ] ) {
    if ( !
IsPlayerAdmin playerid ) ) return SendClientMessage playerid 0xFF0000FF "[ERRO]: Vocк nгo tem permissгo." ) ;
    new 
r_StrinG 70 ] , r_Nome MAX_PLAYER_NAME ] ;
    
GetPlayerName playerid r_Nome MAX_PLAYER_NAME ) ;
    
format r_StrinG sizeof r_StrinG ) , "[r_Admin]: %s desligou o servidor." r_Nome ) ;
    
SendClientMessageToAll 0xFF0000FF r_StrinG ) ;
    
SendRconCommand "gmx" ) ;
    return 
;
}
stock r_DataCenterLoad playerid ) {
    
r_SubCenter playerid ] [ r_DataKills ] = DOF2_GetInt r_DataCenterExist playerid ) , "Kills" ) ;
    
r_SubCenter playerid ] [ r_DataDeaths ] = DOF2_GetInt r_DataCenterExist playerid ) , "Deaths" ) ;
    
r_SubCenter playerid ] [ r_DataMoney ] = DOF2_GetInt r_DataCenterExist playerid ) , "Money" ) ;
    
r_SubCenter playerid ] [ r_DataAdmin ] = DOF2_GetInt r_DataCenterExist playerid ) , "AdminLevel" ) ;
    
GivePlayerMoney playerid r_SubCenter playerid ] [ r_DataMoney ] ) ;
}
stock r_DataCenterSave playerid ) {
    
DOF2_SetInt r_DataCenterExist playerid ) , "Kills"r_SubCenter playerid ] [ r_DataKills ] ) ;
    
DOF2_SetInt r_DataCenterExist playerid ) , "Deaths"r_SubCenter playerid ] [ r_DataDeaths ] ) ;
    
DOF2_SetInt r_DataCenterExist playerid ) , "Money"GetPlayerMoney playerid ) ) ;
    
DOF2_SetInt r_DataCenterExist playerid ) , "AdminLevel"r_SubCenterplayerid ] [ r_DataAdmin ] ) ;
    
DOF2_SaveFile ( ) ;
}
stock SendClientMessageEx color string [ ] ) {
    
r_Loop r_Player ) if ( r_Spawn ] == false && r_SubCenter ] [ r_DataAdmin ] > ) {
        
SendClientMessage color string ) ;
    }
       return 
;
}
stock r_DataCenterExist playerid ) {
    new 
r_String 128 ] , r_Nome MAX_PLAYER_NAME ] ;
    
GetPlayerName playeridr_Nome ,  sizeof r_Nome ) ) ;
    
format r_String sizeof r_String ) , Contas r_Nome ) ;
    return 
r_String ;
}
stock r_DataCenterExistBans playerid ) {
    new 
r_String 128 ] , r_Nome MAX_PLAYER_NAME ] ;
    
GetPlayerName playeridr_Nome ,  sizeof r_Nome ) ) ;
    
format r_String sizeof r_String ) , Banidos r_Nome ) ;
    return 
r_String ;
}
stock r_DataCenterKicks playerid ) {
    new 
r_String 128 ] , r_Nome MAX_PLAYER_NAME ] ;
    
GetPlayerName playeridr_Nome ,  sizeof r_Nome ) ) ;
    
format r_String sizeof r_String ) , Kicks r_Nome ) ;
    return 
r_String ;

Aceito criticas construtivas e sugestхes para as prуximas versхes. Caso encontre bugs favor postar aqui para a correзгo ou mande-me um MP. Obrigado.
Reply
#2

Nice =) +rep pra vc
Reply
#3

nossa cara simples demais =S
с tem nem 10 comandos pra admin
fora q essa sua maneira de codar, colocando espaзo em tudo, dexa o code MUITO mais confuso...
Reply
#4

Como eu dizia bem simples com poucos comandos e saves, e futuramente serбs adicionado mais elementos e.e ao mesmo obrigado. Nгo acho que isso deixaria o code mas confuso ;S
Reply
#5

olha, seu code ta assim:
pawn Код:
CMD:admins ( playerid , params [ ] )
quando poderia ser simplesmente assim:
pawn Код:
CMD:admins(playerid)
no mais estб legal
Reply
#6

Ficou Bom =)
Com ou sem espaзo, Da no mesmo , creio que ninguem aqui й cego,
Reply
#7

Muito Bom parabens ae mlk continue fazenu bons projetos como esse
Reply
#8

Concordo com o Break, bom script.
Reply
#9

Bom Filterscrip, oque "quebra" й os espacinhos irritantes.
Reply
#10

Bom ne, agora e vc melhorar ele pq tem poco CMD completar ele mais
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)