[Pedido] Base de /trocarnick
#1

Em minha GM, fiz um /TrocarNick porйm na parte do DOF2_RenameFile nгo entendi como usar pra alterar o nome do arquivo dentro da pasta '-'
Entгo queria uma base pra ver o modo de usar DOF2_RenameFile em um /TrocarNick. ^^
Reply
#2

Olб ja que vocк quer uma base vou mandar a minha,

PHP код:
@removed 
Reply
#3

Quote:
Originally Posted by IlanZ
Посмотреть сообщение
Olб ja que vocк quer uma base vou mandar a minha,

PHP код:
CMD:mudarnick(playeridparams[])
{
    new 
nome[24];
    if(
sscanf(params,"s[24]",nome)) return SendClientMessage(playeridCorretamente"Use corretamente: /mudarnick [Novo nick]");
    if(
DOF2_FileExists(PlayerConta(playerid))) return SendClientMessage(playeridVermelho"ERROR: Esse nome jб estб registrado no servidor");
    if(
strfind(nome"Luiiz"true) != -|| strfind(nome"nelsu"true) != -|| strfind(nome"blabla"true) != -|| strfind(nome"blabla"true) != -1)
    {
        
SendClientMessage(playeridVermelho"ERROR: Vocк nгo pode botar esse nome");
        return 
1;
    }
    if(
strlen(nome) < || strlen(nome) > 24)
     {
           
SendClientMessage(playeridVermelho"ERROR: Digite um nome entre 3 a 24 caracteres.");
         return 
1;
    }
    else
    {
        new 
String[90], string[90],stringold[90], ilan[80];
        
format(stringoldsizeof(stringold), "Contas/%s.ini",PlayerName(playerid));
        
format(Stringsizeof(String), "Vocк mudou seu nick para '%s' nгo esqueзa de mudar no SA-MP Client",nome);
        
format(ilansizeof(ilan), "%s acabou de mudar o nick para '%s'"PlayerName(playerid), nome);
        
SendClientMessageToAll(-1ilan);
        
SendClientMessage(playerid, -1String);
        
format(stringsizeof(string), "Contas/%s.ini"nome);
        
DOF2_RenameFile(stringoldstring);
        
SetPlayerName(playeridnome);
    }
    return 
1;

Pelo o que eu entendi, sу tinha que criar 2 new(nickantigo e nicknovo) e definir elas. Fiz o mesmo mas nгo tб alterando o nick na pasta. Continua o mesmo ;-;
PHP код:
CMD:mudarnick(playeridparams[])
{
    new 
nickn[20], nickold[20], pname[20], Ano1Mes1Dia1Hora1Minuto1Segundo1string[200];
    
getdate(Ano1Mes1Dia1);
    
gettime(Hora1Minuto1Segundo1);
    
GetPlayerName(playeridpname20);
    
format(nickoldsizeof(nickold), "Contas/%s.ini"pname);
    if(
NickLiberado[playerid] == 0) return SendClientMessage(playerid0xFF0000FF"| ERRO | Vocк nгo estб liberado para mudar nick. Peзa pelo /Duvida.");
    if(
NickLiberado[playerid] == 1)
    {
        
format(stringsizeof(string), "Contas/%s.ini"pname);
        
DOF2_RenameFile(nickoldstring);
        if(
sscanf(params"s[128]"nickn)) return SendClientMessage(playerid0xFF0000FF"| ERRO | Use: /MudarNick (novo nick).");
        
SetPlayerName(playeridnickn);
        
format(stringsizeof(string), "| NICK | O(A) %s %s(%d) trocou de nick. Novo nick: %s (%02d/%02d/%02d %02d:%02d:%02d)"CargoAdm(playerid), pnameplayeridnicknDia1Mes1Ano1Hora1Minuto1Segundo1);
        
SendClientMessageToAll(0xF3FF00AAstring);
        
NickLiberado[playerid] = 0;
    }
    return 
1;

Edit: Vi que criou um arquivo na pasta scriptfiles. Arquivo com o nick sу que sem .ini. Apenas um arquivo sem extensгo '-'
Reply
#4

PHP код:

CMD
:mudarnick(playeridparams[]) 

    new 
nickn[20], nickold[24], pname[20], Ano1Mes1Dia1Hora1Minuto1Segundo1string[70], string2[80], string3[70]; 
    if(
sscanf(params"s[20]"nickn)) return SendClientMessage(playerid0xFF0000FF"| ERRO | Use: /MudarNick (novo nick).");
    
getdate(Ano1Mes1Dia1); 
    
gettime(Hora1Minuto1Segundo1); 
    
GetPlayerName(playeridpname20); 
    
GetPlayerName(playerid,nickold,24)
    
format(nickoldsizeof(nickold), "Contas/%s.ini"pname); 
    if(
NickLiberado[playerid] == 0) return SendClientMessage(playerid0xFF0000FF"| ERRO | Vocк nгo estб liberado para mudar nick. Peзa pelo /Duvida."); 
    if(
NickLiberado[playerid] == 1
    { 
        
format(stringsizeof(string), "Contas/%s.ini"nickold); 
        
format(string3sizeof(string3),"Contas/%s.ini"nickn);
        
format(string2,sizeof(string2), "| NICK | O(A) %s %s(%d) trocou de nick. Novo nick: %s (%02d/%02d/%02d %02d:%02d:%02d)"CargoAdm(playerid), pnameplayeridnicknDia1Mes1Ano1Hora1Minuto1Segundo1); 
        
SendClientMessageToAll(0xF3FF00AAstring2); 
        
NickLiberado[playerid] = 0
        
DOF2_RenameFile(stringstring3);  
        
SetPlayerName(playeridnickn); 
    } 
    return 
1

Reply
#5

Quote:
Originally Posted by IlanZ
Посмотреть сообщение
PHP код:

CMD
:mudarnick(playeridparams[]) 

    new 
nickn[20], nickold[24], pname[20], Ano1Mes1Dia1Hora1Minuto1Segundo1string[70], string2[80], string3[70]; 
    if(
sscanf(params"s[20]"nickn)) return SendClientMessage(playerid0xFF0000FF"| ERRO | Use: /MudarNick (novo nick).");
    
getdate(Ano1Mes1Dia1); 
    
gettime(Hora1Minuto1Segundo1); 
    
GetPlayerName(playeridpname20); 
    
GetPlayerName(playerid,nickold,24)
    
format(nickoldsizeof(nickold), "Contas/%s.ini"pname); 
    if(
NickLiberado[playerid] == 0) return SendClientMessage(playerid0xFF0000FF"| ERRO | Vocк nгo estб liberado para mudar nick. Peзa pelo /Duvida."); 
    if(
NickLiberado[playerid] == 1
    { 
        
format(stringsizeof(string), "Contas/%s.ini"nickold); 
        
format(string3sizeof(string3),"Contas/%s.ini"nickn);
        
format(string2,sizeof(string2), "| NICK | O(A) %s %s(%d) trocou de nick. Novo nick: %s (%02d/%02d/%02d %02d:%02d:%02d)"CargoAdm(playerid), pnameplayeridnicknDia1Mes1Ano1Hora1Minuto1Segundo1); 
        
SendClientMessageToAll(0xF3FF00AAstring2); 
        
NickLiberado[playerid] = 0
        
DOF2_RenameFile(stringstring3);  
        
SetPlayerName(playeridnickn); 
    } 
    return 
1

Msm coisa. Agr nem cria mais da scriptfiles nem na pasta Contas.
Reply
#6

Percebeu que Geta o nome do player no pname e nгo utiliza? haha
Pode ser o problema!
PHP код:
CMD:mudarnick(playeridparams[]) 

    new 
nickn[20], nickold[24], pname[20], Ano1Mes1Dia1Hora1Minuto1Segundo1string[70], string2[80], string3[70]; 
    if(
sscanf(params"s[20]"nickn)) return SendClientMessage(playerid0xFF0000FF"| ERRO | Use: /MudarNick (novo nick).");
    
getdate(Ano1Mes1Dia1); 
    
gettime(Hora1Minuto1Segundo1); 
    
GetPlayerName(playeridpname,20); 
    
GetPlayerName(playerid,nickold,24)
    
format(nickoldsizeof(nickold), "Contas/%s.ini"pname); 
    if(
NickLiberado[playerid] == 0) return SendClientMessage(playerid0xFF0000FF"| ERRO | Vocк nгo estб liberado para mudar nick. Peзa pelo /Duvida."); 
    if(
NickLiberado[playerid] == 1
    { 
        
format(stringsizeof(string), "Contas/%s.ini"pname); 
        
format(string3sizeof(string3),"Contas/%s.ini"nickn);
        
format(string2,sizeof(string2), "| NICK | O(A) %s %s(%d) trocou de nick. Novo nick: %s (%02d/%02d/%02d %02d:%02d:%02d)"CargoAdm(playerid), pnameplayeridnicknDia1Mes1Ano1Hora1Minuto1Segundo1); 
        
SendClientMessageToAll(0xF3FF00AAstring2); 
        
NickLiberado[playerid] = 0
        
DOF2_RenameFile(stringstring3);  
        
SetPlayerName(playeridnickn); 
    } 
    return 
1

Reply
#7

Quote:
Originally Posted by IlanZ
Посмотреть сообщение
Percebeu que Geta o nome do player no pname e nгo utiliza? haha
Pode ser o problema!
PHP код:
CMD:mudarnick(playeridparams[]) 

    new 
nickn[20], nickold[24], pname[20], Ano1Mes1Dia1Hora1Minuto1Segundo1string[70], string2[80], string3[70]; 
    if(
sscanf(params"s[20]"nickn)) return SendClientMessage(playerid0xFF0000FF"| ERRO | Use: /MudarNick (novo nick).");
    
getdate(Ano1Mes1Dia1); 
    
gettime(Hora1Minuto1Segundo1); 
    
GetPlayerName(playeridpname,20); 
    
GetPlayerName(playerid,nickold,24)
    
format(nickoldsizeof(nickold), "Contas/%s.ini"pname); 
    if(
NickLiberado[playerid] == 0) return SendClientMessage(playerid0xFF0000FF"| ERRO | Vocк nгo estб liberado para mudar nick. Peзa pelo /Duvida."); 
    if(
NickLiberado[playerid] == 1
    { 
        
format(stringsizeof(string), "Contas/%s.ini"pname); 
        
format(string3sizeof(string3),"Contas/%s.ini"nickn);
        
format(string2,sizeof(string2), "| NICK | O(A) %s %s(%d) trocou de nick. Novo nick: %s (%02d/%02d/%02d %02d:%02d:%02d)"CargoAdm(playerid), pnameplayeridnicknDia1Mes1Ano1Hora1Minuto1Segundo1); 
        
SendClientMessageToAll(0xF3FF00AAstring2); 
        
NickLiberado[playerid] = 0
        
DOF2_RenameFile(stringstring3);  
        
SetPlayerName(playeridnickn); 
    } 
    return 
1

Na verdade usa sim. No format do SendClientMessageToAll '-'
Reply
#8

Cara eu passei minutos refazendo e acho que agora vai funcionar, nгo й possivel kkk

PHP код:
CMD:mudarnick(playeridparams[]) 

    new 
nickn[24], data[6];
    if(
sscanf(params"s[24]"nickn)) return SendClientMessage(playerid0xFF0000FF"| ERRO | Use: /MudarNick (novo nick).");
    
getdate(data[0], data[1], data[2]); 
    
gettime(data[3], data[4], data[5]); 
    if(
NickLiberado[playerid] == 0)
    {
        
SendClientMessage(playerid0xFF0000FF"| ERRO | Vocк nгo estб liberado para mudar nick. Peзa pelo /Duvida.");
    } 
    else
    { 
        new 
nicknovo[70], string[80], nickantigo[70]; 
        
format(nickantigo,sizeof(nickantigo), "Contas/%s.ini"PlayerName(playerid)); 
        
format(nicknovo,sizeof(nicknovo),"Contas/%s.ini",nickn);
        
format(string,sizeof(string),"| NICK | O(A) %s %s(%d) trocou de nick. Novo nick: %s (%02d/%02d/%02d %02d:%02d:%02d)"CargoAdm(playerid), PlayerName(playerid), playeridnickndata[2], data[1], data[0], data[3], data[4], data[5]); 
        
SendClientMessageToAll(0xF3FF00AAstring); 
        
DOF2_RenameFile(nickantigonicknovo);  
        
SetPlayerName(playeridnickn); 
        
NickLiberado[playerid] = 0
    } 
    return 
1
}  

stock PlayerName(playerid){
    new 
aname[24];
    
GetPlayerName(playeridanamesizeof(aname));
    return 
aname;

Reply
#9

Quote:
Originally Posted by IlanZ
Посмотреть сообщение
Cara eu passei minutos refazendo e acho que agora vai funcionar, nгo й possivel kkk

PHP код:
CMD:mudarnick(playeridparams[]) 

    new 
nickn[24], data[6];
    if(
sscanf(params"s[24]"nickn)) return SendClientMessage(playerid0xFF0000FF"| ERRO | Use: /MudarNick (novo nick).");
    
getdate(data[0], data[1], data[2]); 
    
gettime(data[3], data[4], data[5]); 
    if(
NickLiberado[playerid] == 0)
    {
        
SendClientMessage(playerid0xFF0000FF"| ERRO | Vocк nгo estб liberado para mudar nick. Peзa pelo /Duvida.");
    } 
    else
    { 
        new 
nicknovo[70], string[80], nickantigo[70]; 
        
format(nickantigo,sizeof(nickantigo), "Contas/%s.ini"PlayerName(playerid)); 
        
format(nicknovo,sizeof(nicknovo),"Contas/%s.ini",nickn);
        
format(string,sizeof(string),"| NICK | O(A) %s %s(%d) trocou de nick. Novo nick: %s (%02d/%02d/%02d %02d:%02d:%02d)"CargoAdm(playerid), PlayerName(playerid), playeridnickndata[2], data[1], data[0], data[3], data[4], data[5]); 
        
SendClientMessageToAll(0xF3FF00AAstring); 
        
DOF2_RenameFile(nickantigonicknovo);  
        
SetPlayerName(playeridnickn); 
        
NickLiberado[playerid] = 0
    } 
    return 
1
}  
stock PlayerName(playerid){
    new 
aname[24];
    
GetPlayerName(playeridanamesizeof(aname));
    return 
aname;

Agora funcionou. Darei +REP se jб nгo tiver dado
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)