[Ajuda] 3 Avisos = Cadeia
#1

Oi, eu queria ajuda nesse comando, quando desse 3 avisos em alguem, a pessoa n ser kickada, queria que ela fosse presa por 10 minutos, e quando relogasse o aviso continuasse, pq qd a pessoa ta relogando, ta saindo os kick '-'

PHP код:
    if( strcmpcmd"/avisar"true ) == )
    {
        if( 
aInfoplayerid ][ Admin ] == || aInfoplayerid ][ Moderador ] == || aInfoplayerid ][ Ajudante ] == )
        {
            
tmp strtokcmdtextidx );
            if( !
strlentmp ))
            {
                
SendClientMessageplayeridCOLOR_ERRO"[ x ] Uso correto: /avisar [ ID ] [ aviso ]" );
                return 
1;
            }
            new 
id strvaltmp );
            
MSG strrestcmdtextidx );
            if( !
strlenMSG ))
            {
                
SendClientMessageplayeridCOLOR_ERRO"[ x ] Uso correto: /avisar [ ID ] [ aviso ]" );
                return 
1;
             }
            if( !
IsPlayerConnectedid ))
            {
                
SendClientMessageplayeridCOLOR_ERRO"[ x ] Ninguйm online com esse ID !" );
                return 
1;
            }
            ++ 
avisoid ];
            if( 
avisoid ] >= )
            {
                
GameTextForPlayerid"~y~~h~Kickado(a)~w~~h~!"15000);
                
formatstringsizeof( string ), "[ > ] Vocк foi kickado do servidor ( Motivo: %s ) ( %d/3 )"MSGavisoid ] );
                
SendClientMessageidCOLOR_ERROstring );
                return 
Kickid );
            }
            if( 
aInfoplayerid ][ Moderador ] == )
            {
                
formatstringsizeof( string ), "* O(A) Moderador(a) %s deu um aviso para %s ( Motivo: %s ) ( %d/3 )"PlayerNameplayerid ), PlayerNameid ), MSGavisoid ] );
                
SendClientMessageToAll0xCCFF00AAstring );
                
formatstringsizeof( string ), "( AVISO ) Vocк foi avisado %d/3, 3/3 vocк serб kickado !"avisoid ] );
                
SendClientMessageidCOLOR_BRANCOstring );
            }
            if( 
aInfoplayerid ][ Admin ] == )
            {
                
formatstringsizeof( string ), "* O(A) Administrador(a) %s deu um aviso para %s ( Motivo: %s ) ( %d/3 )"PlayerNameplayerid ), PlayerNameid ), MSGavisoid ] );
                
SendClientMessageToAll0xCCFF00AAstring );
                
formatstringsizeof( string ), "( AVISO ) Vocк foi avisado %d/3, 3/3 vocк serб kickado !"avisoid ] );
                
SendClientMessageidCOLOR_BRANCOstring );
            }
        }
        else
        {
            
SendClientMessageplayeridCOLOR_ERRO"[ x ] Vocк nгo tem permissгo!" );
        }
        return 
1;
    } 
Reply
#2

pawn Код:
if( aviso[ id ] >= 3 )
            {
                GameTextForPlayer( id, "~y~~h~Kickado(a)~w~~h~!", 15000, 5 );
                format( string, sizeof( string ), "[ > ] Vocк foi kickado do servidor ( Motivo: %s ) ( %d/3 )", MSG, aviso[ id ] );
                SendClientMessage( id, COLOR_ERRO, string );
                return Kick( id );
Use sua vбriavel de prender trocando pelo kick.
Reply
#3

Eu ja toquei o Kick ali pelo de prender, mais ai a pessoa foi presa e solta na mesmo hora '-' E quando ela relogava saia os avisos que adm tinha dado '-'
Reply
#4

gravou os avisos no arquivo do player?
Reply
#5

Pois entгo, gravou, mais nгo gravou '-'
Reply
#6

podes postar os codes para gravar e para mandar para a jail?
Reply
#7

Ai mano:

PHP код:
    if( !strcmpcmd"/aprender"true ))
    {
        if( 
aInfoplayerid ][ Admin ] == || aInfoplayerid ][ Moderador ] == )
        {
            
tmp strtokcmdtextidx );
              if( !
strlentmp ))
               {
                
SendClientMessageplayeridCOLOR_ERRO"[ x ] Uso correto: /aPrender [ ID ] [ Tempo ] [ Motivo ]" );
                return 
1;
               }
               new
                   
id strvaltmp )
               ;
            
tmp strtokcmdtextidx );
              if( !
strlentmp ))
               {
                
SendClientMessageplayeridCOLOR_ERRO"[ x ] Uso correto: /aPrender [ ID ] [ Tempo ] [ Motivo ]" );
                return 
1;
               }
               new
                   
iTempo strvaltmp )
               ;
               if( 
iTempo || iTempo 1200 )
               {
                
SendClientMessageplayeridCOLOR_ERRO"[ x ] Tempo somente de 1 а 1200 minutos !" );
                return 
1;
               }
            new 
length strlencmdtext );
            while (( 
idx length ) && ( cmdtextidx ] <= ' ' ))
            {
                
idx++;
            }
            new 
offset idx;
            new 
result64 ];
            while (( 
idx length ) && (( idx offset ) < ( sizeofresult ) - )) )
            {
                
resultidx offset ] = cmdtextidx ];
                
idx++;
            }
            
resultidx offset ] = EOS;
              if( !
strlenresult ))
            {
                
SendClientMessageplayeridCOLOR_ERRO"[ x ] Uso correto: /aPrender [ ID ] [ Tempo ] [ Motivo ]" );
                  return 
1;
            }
               if( !
IsPlayerConnectedid ))
             {
                 
SendClientMessageplayeridCOLOR_ERRO"[ x ] Ninguйm online com esse ID !" );
                  return 
1;
              }
             if( 
pInfoid ][ Preso ] == )
            {
                
MensagemFormatadaplayeridCOLOR_SISTEMA"[ x ] O jogador %s jб estб preso !"PlayerNameid ));
                return 
1;
             }
              
GameTextForPlayerid"~w~~h~SE FUDEU!"3000);
             
MensagemFormatadaid0x3366FFAA"( PA ) Vocк foi preso pelo(A) Administrador(a) %s ( Motivo: %s, Tempo: %d Minutos )"PlayerNameplayerid ), resultiTempo );
            
MensagemFormatadaplayerid0x33CCFFAA"( PA ) Vocк prendeu o(a) jogador(a) %s ( Motivo: %s, Tempo: %d Minutos )"PlayerNameid ), resultiTempo );
             
MensagemFormatadaAllCOLOR_AMARELOCLARO"( PA ) O(A) Administrador(a) %s prendeu %s ( Motivo: %s, Tempo: %d Minutos )"PlayerNameplayerid ), PlayerNameid ), resultiTempo );
            
formatgFilesizeofgFile ), "Contas/%s.ini"PlayerNameid ));
            
dini_IntSetgFile"Abuser");
            
Algemadoid ] = 0;
             
SetPlayerWantedLevelid);
            
pInfoid ][ Preso ] = iTempo*60;
            
ResetPlayerWeaponsid );
            
SetPlayerInteriorid);
            
SetPlayerPosid264.599677.73671001.0391 );
            
KillTimerT_Presoid ] );
            
T_Presoid ] = SetTimerEx"LiberarPrisao"1000false"d"id );
            
pInfoplayerid ][ Abuser ] = 1;
        }
        else
        {
            
SendClientMessageplayeridCOLOR_ERRO"[ x ] Vocк nгo tem permissгo!" );
        }
        return 
1;
    } 
Reply
#8

Voce podia mandar o code para gravar os dados dos players

Acho que devia ser true. Manda tambem a funзгo liberarprisao
pawn Код:
T_Preso[ id ] = SetTimerEx( "LiberarPrisao", 1000, true, "d", id );
Reply
#9

Ai mano:
PHP код:
    if( !strcmpcmd"/asoltar"true ))
    {
        if( 
aInfoplayerid ][ Admin ] == || aInfoplayerid ][ Moderador ] == )
        {
            
tmp strtokcmdtextidx );
            if( !
strlentmp ))
            {
                
SendClientMessageplayeridCOLOR_ERRO"[ x ] Uso correto: /aSoltar [ ID ]" ) ;
                return 
1;
              }
               new
                 
id strvaltmp )
            ;
              if( !
IsPlayerConnectedid ))
              {
                 
SendClientMessageplayeridCOLOR_ERRO"[ x ] Ninguйm online com esse ID !" );
                   return 
1;
              }
             if( 
pInfoid ][ Preso ] == )
            {
                
MensagemFormatadaplayeridCOLOR_SISTEMA"[ x ] O jogador %s nгo estб preso !"PlayerNameid ));
                return 
1;
            }
               
GameTextForPlayerid"~w~A VAZA!"3000);
             
MensagemFormatadaid0x3366FFAA"[ INFO ] O(A) Administrador(a) %s soltou vocк. Nгo cometa mais nenhum abuser ou serб preso por mais tempo !"PlayerNameplayerid ));
              
MensagemFormatadaplayerid0x33CCFFAA"[ INFO ] Vocк soltou da prisгo o(a) jogador(a) %s"PlayerNameid ));
            
pInfoid ][ Preso ] = 0;
            
pInfoid ][ Abuser ] = 0;
        }
        else
        {
            
SendClientMessageplayeridCOLOR_ERRO"[ x ] Vocк nгo tem permissгo!" );
        }
        return 
1;
    } 
O de salvar й sу criar uma "file" com nome de "Aviso" , tipo assim: ( creio eu )
PHP код:
                new
                     
Avisos dini_Intfplayerid ), "Avisos" )
                 ;
                 if( 
Avisos >= 
Reply
#10

UP !
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)