[Ajuda] me ajuda com string
#1

to refazendo meu sistema de login, e nгo vou mais usar DOF2_CreateFile(arquivo, inputtext); pq quero fazer um sistema de redefinir senha pelo email eo dof2 incripta a senha se usar dessa maneira, pensei em fazer algo assim:

PHP код:
format(stringsizeof(string),"%s",inputtext); 
minha duvida й, string й uma variavel global nгo й? tipo pra salvar sу a senha do player ali nгo teria que ser assim: new string[MAX_PLAYERS][24]; (nгo me zoem se tiver viajando)
Reply
#2

Isso nem ta certo string[MAX_PLAYERS][24];

quando vc ta formatando a string ele deve conter caracteres no caso vc ta colocando [MAX_PLAYERS] tbm [24] seria o MAX_PLAYER_NAME '-'

Que eu saiba string pode ser local ou global '-' tipo:

PHP код:
//Exemplo 1:
//Topo do GM
new string[64]; // Global
//Public
public OnPlayerConnect(playerid)
{
    
format(stringsizeof(string), "| INFO-SERVER | O(A) %s (%d) Entrou no servidor!"Nome(playerid), playerid);
    
SendClientMessageToAll(-1string);
    return 
1;
}
//Exemplo 2:
//Public
public OnPlayerConnect(playerid)
{
    new 
string[64]; // Local
    
format(stringsizeof(string), "| INFO-SERVER | O(A) %s (%d) Entrou no servidor!"Nome(playerid), playerid);
    
SendClientMessageToAll(-1string);
    return 
1;

@EDIT1

Se quiser salvar a senha do jogador na conta dele use o DOF2::SetString sem o format mesmo.

@EDIT2

Tambйm nгo entendi muito o que vocк quer realmente!
Reply
#3

Nгo й necessбrio usar usar o inputtext no DOF2_CreateFile,
e nem usar um format.
PHP код:
// Registro
DOF2_CreateFile(arquivo);
DOF2_SetString(arquivo"senha"inputtext);
// Login
if(strlen(inputtext) < || strlen(inputtext) > 24){
      
// retorna a dialog.
}else if(strcmp(inputtextDOF2_GetString(arquivo"senha"), true)){
     
// condiзгo

Reply
#4

Quote:
Originally Posted by AutoMatic2
Посмотреть сообщение
Isso nem ta certo string[MAX_PLAYERS][24];

quando vc ta formatando a string ele deve conter caracteres no caso vc ta colocando [MAX_PLAYERS] tbm [24] seria o MAX_PLAYER_NAME '-'

Que eu saiba string pode ser local ou global '-' tipo:

PHP код:
//Exemplo 1:
//Topo do GM
new string[64]; // Global
//Public
public OnPlayerConnect(playerid)
{
    
format(stringsizeof(string), "| INFO-SERVER | O(A) %s (%d) Entrou no servidor!"Nome(playerid), playerid);
    
SendClientMessageToAll(-1string);
    return 
1;
}
//Exemplo 2:
//Public
public OnPlayerConnect(playerid)
{
    new 
string[64]; // Local
    
format(stringsizeof(string), "| INFO-SERVER | O(A) %s (%d) Entrou no servidor!"Nome(playerid), playerid);
    
SendClientMessageToAll(-1string);
    return 
1;

@EDIT1

Se quiser salvar a senha do jogador na conta dele use o DOF2::SetString sem o format mesmo.

@EDIT2

Tambйm nгo entendi muito o que vocк quer realmente!
Quote:
Originally Posted by Felipealves
Посмотреть сообщение
Nгo й necessбrio usar usar o inputtext no DOF2_CreateFile,
e nem usar um format.
PHP код:
// Registro
DOF2_CreateFile(arquivo);
DOF2_SetString(arquivo"senha"inputtext);
// Login
if(strlen(inputtext) < || strlen(inputtext) > 24){
      
// retorna a dialog.
}else if(strcmp(inputtextDOF2_GetString(arquivo"senha"), true)){
     
// condiзгo

Eudei uma exemplo de string, tipo minha tela de login й em TextDraw ai tem os seguintes campos, Senha, Email, Sexo ai sу cria a conta quando todos campos estiverem preenchido e vocк cliclar naTextDraw Registrar, ai preciso armazenar a senha, email, esexo do jogador em uma string, para quando ele clicar em registrar inserir em sua conta, minha duvida й a seguinta, se eu fizer assim:

PHP код:
new StringS[19];
if(
dialogid == 3)
{
   if(
response)
   {
   
format(StringSsizeof(StringS),"%s",inputtext);
   }
}
[
B]ai se tiver 2 pessoas se registrando ao mesmo temponгo vai dar problema tipo eu coloquei minha senhablzai outra pessoa colocou a senha tbma string n]гo vai armazenar a senha da outra jб que ela й um string global e nгo do player ?[/B
Reply
#5

PHP код:
#define MAX_SENHA  20
new SenhaPlayer[MAX_PLAYERS][MAX_SENHA+1]; 
if(
dialogid == 3

   if(
response
   { 
          
format(SenhaPlayer[playerid], MAX_SENHA), "%s",inputtext); // SenhaPlayer[playerid] agora contem o inputtext.
 
   


Mas o mesmo daria com o que apresentei la em cima , nгo acho que seja necessбrio armazena a senha do cara em uma variбvel, Jб que quando clicar na textdraw vai abrir a dialog, e o que vai precisar la й o inputtext.
Reply
#6

Quote:
Originally Posted by Felipealves
Посмотреть сообщение
PHP код:
#define MAX_SENHA  20
new SenhaPlayer[MAX_PLAYERS][MAX_SENHA+1]; 
if(
dialogid == 3

   if(
response
   { 
          
format(SenhaPlayer[playerid], MAX_SENHA), "%s",inputtext); // SenhaPlayer[playerid] agora contem o inputtext.
 
   


Mas o mesmo daria com o que apresentei la em cima , nгo acho que seja necessбrio armazena a senha do cara em uma variбvel, Jб que quando clicar na textdraw vai abrir a dialog, e o que vai precisar la й o inputtext.
cara mas como vou inserir a senha antes de criar o arquivo ? sу vai criar o arquivo quando ele clicar em registrar, antes disso o file nгo existe, pode isso preciso enserir a senha em uma string '-'
Reply
#7

Quote:
Originally Posted by Santso
Посмотреть сообщение
cara mas como vou inserir a senha antes de criar o arquivo ? sу vai criar o arquivo quando ele clicar em registrar, antes disso o file nгo existe, pode isso preciso enserir a senha em uma string '-'
Cara como vocк vai precisa da senha antes do cara clicar em registrar?-sem nexo.

quando ele se registrar jб vai possuir a senha no arquivo.
PHP код:
DOF2_GetString(ArquivoPlayer(playerid), "senha"); 
PHP код:
if(dialogid == 3)  
{  
    if(
response)  
    {  
        if(
strlen(inputtext) < || strlen(inputtext) > 24){
            
// retorna a dialog registro
        
}
        
DOF2_CreateFile(ArquivoPlayer(playerid)); 
        
DOF2_SetString(ArquivoPlayer(playerid), "senha"inputtext); 
    }  
}
ArquivoPlayer(playerid){
    new 
file[64];
    
format(filesizeof(file), "%s"GetPlayerNome(playerid))
    return 
file;

Reply
#8

Eu entendi o que vocк quer fazer, mas, eu faria a verificaзгo se a conta existe ou nao quando o player conectasse ao servidor, se nгo existir, criaria o arquivo, formataria a conta em questгo e inseria os dados nela de acordo com suas textdraws.
Caso o jogador nгo clicasse no botгo para Registrar ou desconectar do servidor sem acabar de registrar deletaria a conta formatada.
Reply
#9

Quote:
Originally Posted by InsaneBR
Посмотреть сообщение
Eu entendi o que vocк quer fazer, mas, eu faria a verificaзгo se a conta existe ou nao quando o player conectasse ao servidor, se nгo existir, criaria o arquivo, formataria a conta em questгo e inseria os dados nela de acordo com suas textdraws.
Caso o jogador nгo clicasse no botгo para Registrar ou desconectar do servidor sem acabar de registrar deletaria a conta formatada.
boa ideia, mas e se o jogador der /q ? ou se ele sair com o Alt + f4
Reply
#10

PHP код:
public OnPlayerDisconnect(playeridreason)
{
    new 
Nome[24], stg[75];
    
GetPlayerName(playeridNomesizeof(Nome));
    switch(
reason)
    {
        case 
0format(stgsizeof(stg), "%s(%d) saiu do servidor por problemas de conexгo."Nomeplayerid);
        case 
1format(stgsizeof(stg), "%s(%d) saiu do servidor por vontade prуpria."Nomeplayerid);
        case 
2format(stgsizeof(stg), "%s(%d) foi kickado/banido do servidor."Nomeplayerid);
    }
    
SendClientMessageToAll(-1stg);
    return 
1;

https://sampwiki.blast.hk/wiki/OnPlayerDisconnect
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)