[Ajuda] /BanTemp
#1

O Comando estб tudo ok, mais o problema й mostrar quanto falta para o player ser desbanido, me ajudem por favor.

Player Connect
PHP код:
    new string3[37], cStr[300];
    
format(string3sizeof string3"Banidos/%s.ini"Nome(playerid));
    if (
fexist(string3)){
        
format(cStrsizeof cStr"{FFFFFF}Admin que lhe baniu: {FF0000}%s\n{FFFFFF}Motivo: {FF0000}%s\n{FFFFFF}Dias: {FF0000}%d\n{FFFFFF}Restam: {FF0000}%d {FFFFFF}para ser desbanido."DOF2_GetString(string3"Admin"), DOF2_GetString(string3"Motivo"), DOF2_GetInt(string3"Dias"), (((DOF2_GetInt(string3,"Dias")- gettime()) / 60) / 60) / 24);
        
ShowPlayerDialog(playerid1437DIALOG_STYLE_MSGBOX"{FF0000}» {FFFFFF}VOCК ESTБ BANIDO DESTE SERVIDOR {FF0000}«"cStr"Fechar","");
        return 
true;
    } 
COMANDO
PHP код:
CMD:bantemp(playeridparams[])
{
    new 
string[144], idpDiasmotivo[30];
    if(
Logado[playerid] == false)
        return 
SendClientMessage(playerid,-1,"{008B00}[ ATENЗГO ] {FFFFFF}Й preciso logar para executar este comando");
    if(!
IsPlayerAdmin(playerid) && PlayerInfo[playerid][pAdmin] < 3)
        return 
SendClientMessage(playerid, -1"{008B00}[ ATENЗГO ] {FFFFFF}Comando Restrito, apуs 3 tentativas tomarб BAN");
    if(
sscanf(params"uis"idpDiasmotivo))
        return 
SendClientMessage(playerid, -1"{FFA500}[ USE ] /bantemp [ID] [DIAS] [MOTIVO]");
    if(!
IsPlayerConnected(id))
        return 
SendClientMessage(playerid, -1"{FF0000}[ERRO] {FFFFFF}Jogador nгo conectado");
        
    
PlayerInfo[id][pTempBan] = gettime() + (pDias 24 60 60);
    
    
format(stringsizeof string"Banidos/%s.ini"Nome(id) );
    
DOF2_CreateFile(string);
    
DOF2_SetString(string"Admin"Nome(playerid) );
    
DOF2_SetString(string"Motivo"motivo );
    
DOF2_SetInt(string"Dias"pDias );
    
DOF2_SaveFile();
    
format(stringsizeof(string),"{FFFFFF}[ BAN ] O player %s baniu %s por %d pelo [ MOTIVO %s].",      Nome(playerid), Nome(id), pDiasmotivo);
    
SendClientMessageToAll(-1string);
    
Kick(id);
    return 
1;

Creio que o erro esteja nessa parte:
PHP код:
(((DOF2_GetInt(string3,"Dias")- gettime()) / 60) / 60) / 24); 
Mais nгo sei de que forma posso dividir o valor do GetInt .-.
Reply
#2

Esse fуrum jб foi mais ativo, cadк o pessoal que pode ajudar? .-.
Reply
#3

Fazendo..
Reply
#4

OnPlayerConnect...
PHP код:
    new string3[37], cStr[300];
    
format(string3sizeof string3"Banidos/%s.ini"Nome(playerid));
    if(
fexist(string3)
    {
        if(
DOF2_GetInt(string3"Dias") < gettime())
        {
            
DOF2_RemoveFile(string3);
            
SendClientMessage(playerid, -1"[INFO]: Seu Banimento Temporario Acabou!");
        }
        else
        {
            
format(cStrsizeof cStr"{FFFFFF}Admin que lhe baniu: {FF0000}%s\n{FFFFFF}Motivo: {FF0000}%s\n{FFFFFF}Dias: {FF0000}%d\n{FFFFFF}Restam: {FF0000}%d {FFFFFF}para ser desbanido."DOF2_GetString(string3"Admin"), DOF2_GetString(string3"Motivo"), DOF2_GetInt(string3"Dias"), Convert(DOF2_GetInt(string3"Dias")-gettime()));
            
ShowPlayerDialog(playerid1437DIALOG_STYLE_MSGBOX"{FF0000}» {FFFFFF}VOCК ESTБ BANIDO DESTE SERVIDOR {FF0000}«"cStr"Fechar","");
            return 
true;
        }
        return 
true;
    } 
Reply
#5

Erros
Код:
C:\Users\lUCAS\Documents\Little\servidor\gamemodes\ling.pwn(2720) : error 001: expected token: ")", but found "{"
C:\Users\lUCAS\Documents\Little\servidor\gamemodes\ling.pwn(2728) : error 017: undefined symbol "Convert"
Linhas:
PHP код:
2719 >    if(fexist(string3)
2720 >    {
2721 >        if(DOF2_GetInt(string3"Dias") < gettime()) 
Reply
#6

PHP код:
    new string3[37], cStr[300]; 
    
format(string3sizeof string3"Banidos/%s.ini"Nome(playerid)); 
    if(
fexist(string3))
    { 
        if(
DOF2_GetInt(string3"Dias") < gettime())
        { 
            
DOF2_RemoveFile(string3); 
            
SendClientMessage(playerid, -1"[INFO]: Seu Banimento Temporario Acabou!"); 
        } 
        else 
        { 
            
format(cStrsizeof cStr"{FFFFFF}Admin que lhe baniu: {FF0000}%s\n{FFFFFF}Motivo: {FF0000}%s\n{FFFFFF}Dias: {FF0000}%d\n{FFFFFF}Restam: {FF0000}%d {FFFFFF}para ser desbanido."DOF2_GetString(string3"Admin"), DOF2_GetString(string3"Motivo"), DOF2_GetInt(string3"Dias"), Convert(DOF2_GetInt(string3"Dias")-gettime())); 
            
ShowPlayerDialog(playerid1437DIALOG_STYLE_MSGBOX"{FF0000}» {FFFFFF}VOCК ESTБ BANIDO DESTE SERVIDOR {FF0000}«"cStr"Fechar",""); 
            return 
true
        } 
        return 
true
    } 
PHP код:
Convert(number)
{
    new 
hours 0mins 0secs 0string[128];
    
hours floatround(number 3600);
    
mins floatround((number 60) - (hours 60));
    
secs floatround(number - ((hours 3600) + (mins 60)));
    new 
days 0;
    if(
hours >= 24)
    {
        
days floatround((hours/24), floatround_floor);
        
hours hours 24;
    }
    if(
days 0)
    {
        
format(string100"%ddias, %dh %dm e %ds"dayshoursminssecs);
    }
    else if(
hours 0)
    {
        
format(string100"%dh %dm e %ds"hoursminssecs);
    }
    else
    {
        
format(string100"%dm e %ds"minssecs);
    }
    return 
string;

Mals;
Reply
#7

Quote:
Originally Posted by DanDRT
Посмотреть сообщение
PHP код:
    new string3[37], cStr[300]; 
    
format(string3sizeof string3"Banidos/%s.ini"Nome(playerid)); 
    if(
fexist(string3))
    { 
        if(
DOF2_GetInt(string3"Dias") < gettime())
        { 
            
DOF2_RemoveFile(string3); 
            
SendClientMessage(playerid, -1"[INFO]: Seu Banimento Temporario Acabou!"); 
        } 
        else 
        { 
            
format(cStrsizeof cStr"{FFFFFF}Admin que lhe baniu: {FF0000}%s\n{FFFFFF}Motivo: {FF0000}%s\n{FFFFFF}Dias: {FF0000}%d\n{FFFFFF}Restam: {FF0000}%d {FFFFFF}para ser desbanido."DOF2_GetString(string3"Admin"), DOF2_GetString(string3"Motivo"), DOF2_GetInt(string3"Dias"), Convert(DOF2_GetInt(string3"Dias")-gettime())); 
            
ShowPlayerDialog(playerid1437DIALOG_STYLE_MSGBOX"{FF0000}» {FFFFFF}VOCК ESTБ BANIDO DESTE SERVIDOR {FF0000}«"cStr"Fechar",""); 
            return 
true
        } 
        return 
true
    } 
PHP код:
Convert(number)
{
    new 
hours 0mins 0secs 0string[128];
    
hours floatround(number 3600);
    
mins floatround((number 60) - (hours 60));
    
secs floatround(number - ((hours 3600) + (mins 60)));
    new 
days 0;
    if(
hours >= 24)
    {
        
days floatround((hours/24), floatround_floor);
        
hours hours 24;
    }
    if(
days 0)
    {
        
format(string100"%ddias, %dh %dm e %ds"dayshoursminssecs);
    }
    else if(
hours 0)
    {
        
format(string100"%dh %dm e %ds"hoursminssecs);
    }
    else
    {
        
format(string100"%dm e %ds"minssecs);
    }
    return 
string;

Mals;
Eu dou ban por 10 dias e tals, mais quando eu logo no server, fala seu ban temporбrio acabou!
Reply
#8

Na hora de seta ta setando errado !
PHP код:
DOF2_SetInt(string"Dias"gettime() + (pDias 24 60 60)); 
Reply
#9

Continua o mesmo problema, quando logo diz que o ban acabou .-.
Reply
#10

DOF2_SetInt(string, "Dias", gettime()+24*60*60*pDias);

tente salvar assim '-'
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)