[Ajuda] DOF2 nгo salva os dados
#1

estou com esse problema , cria a conta e tudo mais salva tudo assim, senha nгo salva e quando o player escolhe o que quer ser que й o vida nгo salva tambйm:

Senha=0
Vida=0
Membro=0
Cargo=0

Код:
enum Informacoes
{
  pSenha,
  pVida,
  pMembro,
  pCargo
}

public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
  new arquivo[40]; new pName[MAX_PLAYER_NAME];
    GetPlayerName(playerid, pName, 32);
    format(arquivo, 40, "Contas/%s.ini", pName);
  if(dialogid == DIALOG_REGISTRO)
  {
	if(!response)
	{
	  ShowPlayerDialog(playerid, DIALOG_KICKADO, DIALOG_STYLE_MSGBOX,"{FA0000}AVISO","Vocк Cancelou o Seu Registro Por Isso Foi {FA0000}Kickado","{FA0000}OK","{FA0000}OK");
      SetTimer("CancelouLogin",2000, true);
	  return 1;
	}
	else
	{
      PlayerInfo[playerid][pSenha] = strval(inputtext);
	  DOF2_CreateFile(arquivo);
      DOF2_SetInt(arquivo, "Senha", PlayerInfo[playerid][pSenha]);
      DOF2_SetInt(arquivo, "Vida", PlayerInfo[playerid][pVida]);
      DOF2_SetInt(arquivo, "Membro", PlayerInfo[playerid][pMembro]);
      DOF2_SetInt(arquivo, "Cargo", PlayerInfo[playerid][pCargo]);
      DOF2_SaveFile();
	  ShowPlayerDialog(playerid, DIALOG_LOGIN, DIALOG_STYLE_PASSWORD, "{02BCFA}LOGIN","Status Da Conta: {02F702}Registrado\nDigite Sua Senha Para Logar","{02FA07}CONFIRMA","{FA0000}SAIR");
	}
  }
if(dialogid == DIALOG_LOGIN)
  {
    if(!response)
	{
	  ShowPlayerDialog(playerid, DIALOG_KICKADO, DIALOG_STYLE_MSGBOX,"{FA0000}AVISO","Vocк Cancelou o Seu Login Por Isso Foi {FA0000}Kickado","{FA0000}OK","{FA0000}OK");
	  SetTimer("CancelouLogin",2000, true);
	  return 1;
	}
	else
	{
	  PlayerInfo[playerid][pSenha] = DOF2_GetInt(arquivo, "Senha");
	  if(strval(inputtext) == PlayerInfo[playerid][pSenha])
	  {
	   if(PlayerInfo[playerid][pVida] == 0)
	   {
		ShowPlayerDialog(playerid, DIALOG_ESCOLHADEVIDA, DIALOG_STYLE_LIST,"Escolha Sua Vida","{FA0000}Bandido\n{F5F527}Civнl","{02FA07}Escolher","{FA0000}Sair");
       }
        PlayerInfo[playerid][pVida] = DOF2_GetInt(arquivo, "Vida");
        PlayerInfo[playerid][pMembro] = DOF2_GetInt(arquivo, "Membro");
        PlayerInfo[playerid][pCargo] = DOF2_GetInt(arquivo, "Cargo");
      }
      else
      {
   	    ShowPlayerDialog(playerid, DIALOG_LOGIN, DIALOG_STYLE_PASSWORD, "{02BCFA}LOGIN","Senha Errada Vocк Tem: {02BCFA}5 Chances\nStatus Da Conta: {02F702}Registrado\nDigite Sua Senha Para Logar","{02FA07}CONFIRMA","{FA0000}SAIR");
        Errou[playerid]++;
        if(Errou[playerid] == 1)
        {
          ShowPlayerDialog(playerid, DIALOG_LOGIN, DIALOG_STYLE_PASSWORD, "{02BCFA}LOGIN","Senha Errada Vocк Tem: {02BCFA}4 Chances\nStatus Da Conta: {02F702}Registrado\nDigite Sua Senha Para Logar","{02FA07}CONFIRMA","{FA0000}SAIR");
          return 1;
        }
        if(Errou[playerid] == 2)
        {
          ShowPlayerDialog(playerid, DIALOG_LOGIN, DIALOG_STYLE_PASSWORD, "{02BCFA}LOGIN","Senha Errada Vocк Tem: {02BCFA}3 Chances\nStatus Da Conta: {02F702}Registrado\nDigite Sua Senha Para Logar","{02FA07}CONFIRMA","{FA0000}SAIR");
          return 1;
        }
        if(Errou[playerid] == 3)
        {
          ShowPlayerDialog(playerid, DIALOG_LOGIN, DIALOG_STYLE_PASSWORD, "{02BCFA}LOGIN","Senha Errada Vocк Tem: {02BCFA}2 Chances\nStatus Da Conta: {02F702}Registrado\nDigite Sua Senha Para Logar","{02FA07}CONFIRMA","{FA0000}SAIR");
          return 1;
        }
        if(Errou[playerid] == 4)
        {
          ShowPlayerDialog(playerid, DIALOG_LOGIN, DIALOG_STYLE_PASSWORD, "{02BCFA}LOGIN","Senha Errada Vocк Tem: {02BCFA}1 Chances\n\n{02BCFA}Cuidado {02BCFA}Ultima {02BCFA}Chance\nStatus Da Conta: {02F702}Registrado\nDigite Sua Senha Para Logar","{02FA07}CONFIRMA","{FA0000}SAIR");
          return 1;
        }
        if(Errou[playerid] == 5)
	    {
		  ShowPlayerDialog(playerid, DIALOG_KICKADO, DIALOG_STYLE_MSGBOX,"{FA0000}AVISO","Vocк Errou Sua Senha 5 Vezes Por Isso\nFoi {FA0000}Banido\n\nPoste Sua Revisгo em\ncpb-rpg.forumeiro.com","{FA0000}OK","{FA0000}OK");
          SetTimer("ErrouSenha",2000, true);
	      return 1;
	    }
	   }

	}
	return 1;
   }
   if(dialogid == DIALOG_ESCOLHADEVIDA)
   {
     if(!response)
	 {
	    SendClientMessage(playerid, -1,"Vocк tem que escolher o que quer ser");
		SetTimer("VoltarEscolha",1000, true);
		return 1;
	 }
     switch(listitem)
	 {
	  case 0:
	  {
	    PlayerInfo[playerid][pVida] = 1;
	  }
	  case 1:
	  {
	    PlayerInfo[playerid][pVida] = 2;
	  }
	 }
   }
   return 1;
}

public OnPlayerDisconnect(playerid)
{
	new arquivo[40];
	new pName[MAX_PLAYER_NAME];
    GetPlayerName(playerid, pName, 32);
    format(arquivo, 40, "Contas/%s.ini", pName);
	if(DOF2_FileExists(arquivo))
	{
		DOF2_GetInt(arquivo, "Senha", PlayerInfo[playerid][pSenha]);
		DOF2_GetInt(arquivo, "Vida", PlayerInfo[playerid][pVida]);
		DOF2_GetInt(arquivo, "Membro", PlayerInfo[playerid][pMembro]);
		DOF2_GetInt(arquivo, "Cargo", PlayerInfo[playerid][pCargo]);
		DOF2_SaveFile();
	}
	return 1;
}
Reply
#2

crie a variavel global pra poder chama-la
crie abaixo do enum informacoes

Код:
new PlayerInfo[MAX_PLAYERS][Informacoes]; // variavel global fora de qualquer callback
Reply
#3

Ao jogador desconectar, vocк deve usar o mйtodo SET e nгo GET.
Reply
#4

Falta por 1 detalhe depois dos citados acima:

PHP код:
OnPlayerDisconnect(playerid){
DOF2_Exit();

Reply
#5

Quote:
Originally Posted by Eddye
Посмотреть сообщение
Falta por 1 detalhe depois dos citados acima:

PHP код:
OnPlayerDisconnect(playerid){
DOF2_Exit();

isso nao seria no OnGameModeExit() ?
Reply
#6

AGORA TA ASSIM :
Senha: 0
Vida : 2 >Isso ta salvando
Reply
#7

Quote:
Originally Posted by PauloCPB
Посмотреть сообщение
AGORA TA ASSIM :
Senha: 0
Vida : 2 >Isso ta salvando
no dialog registro mude isto:
Код:
  
DOF2_SetInt(arquivo, "Senha", PlayerInfo[playerid][pSenha]);
por isso:
Код:
DOF2_SetInt(arquivo, "Senha", strval(inputtext));
Reply
#8

Quote:
Originally Posted by moura98
Посмотреть сообщение
isso nao seria no OnGameModeExit() ?
kkkk tem razгo, acabei de acordar nгo me liguei sobre. kkkkk foi mal.
Reply
#9

deu certo?
Reply
#10

PHP код:
enum Informacoes {
  
pSenha[25],
  
Float:pVida,
  
pMembro,
  
pCargo
}
new 
PlayerInfo[MAX_PLAYERS][Informacoes];
public 
OnDialogResponse(playeriddialogidresponselistiteminputtext[])
{
    new 
arquivo[40]; new pName[MAX_PLAYER_NAME];
    
GetPlayerName(playeridpName32);
    
format(arquivo40"Contas/%s.ini"pName);
    if(
dialogid == DIALOG_REGISTRO)
    {
        if(!
response)
        {
            
ShowPlayerDialog(playeridDIALOG_KICKADODIALOG_STYLE_MSGBOX,"{FA0000}AVISO","Vocк Cancelou o Seu Registro Por Isso Foi {FA0000}Kickado","{FA0000}OK","{FA0000}OK");
            
SetTimer("CancelouLogin",2000true);
            return 
1;
        }
        else
        {
            if(!
DOF2_FileExists(arquivo))
            {
                
DOF2_CreateFile(arquivo);
                
PlayerInfo[playerid][pSenha] = inputtext;
                
PlayerInfo[playerid][pVida] = GetPlayerHealth(playerid);
                
DOF2_SetString(arquivo"Senha"PlayerInfo[playerid][pSenha]);
                
DOF2_SetFloat(arquivo"Vida"PlayerInfo[playerid][pVida]);
                
DOF2_SetInt(arquivo"Membro"PlayerInfo[playerid][pMembro]);
                
DOF2_SetInt(arquivo"Cargo"PlayerInfo[playerid][pCargo]);
                
DOF2_SaveFile();
                
ShowPlayerDialog(playeridDIALOG_LOGINDIALOG_STYLE_PASSWORD"{02BCFA}LOGIN","Status Da Conta: {02F702}Registrado\nDigite Sua Senha Para Logar","{02FA07}CONFIRMA","{FA0000}SAIR");
            }
        }
     }
     if(
dialogid == DIALOG_LOGIN)
     {
        if(!
response)
        {
            
ShowPlayerDialog(playeridDIALOG_KICKADODIALOG_STYLE_MSGBOX,"{FA0000}AVISO","Vocк Cancelou o Seu Login Por Isso Foi {FA0000}Kickado","{FA0000}OK","{FA0000}OK");
            
SetTimer("CancelouLogin",2000true);
            return 
1;
        }
        else
        {
            
PlayerInfo[playerid][pSenha] = DOF2_GetInt(arquivo"Senha");
            if(
strcmp(DOF2_GetString(arquivo), PlayerInfo[playerid][pSenha], true) == 0)
            {
                if(
PlayerInfo[playerid][pVida] == 0ShowPlayerDialog(playeridDIALOG_ESCOLHADEVIDADIALOG_STYLE_LIST,"Escolha Sua Vida","{FA0000}Bandido\n{F5F527}Civнl","{02FA07}Escolher","{FA0000}Sair");
                
PlayerInfo[playerid][pVida] = DOF2_GetFloat(arquivo"Vida");
                
PlayerInfo[playerid][pMembro] = DOF2_GetInt(arquivo"Membro");
                
PlayerInfo[playerid][pCargo] = DOF2_GetInt(arquivo"Cargo");
            }
            else
            {
                
ShowPlayerDialog(playeridDIALOG_LOGINDIALOG_STYLE_PASSWORD"{02BCFA}LOGIN","Senha Errada Vocк Tem: {02BCFA}5 Chances\nStatus Da Conta: {02F702}Registrado\nDigite Sua Senha Para Logar","{02FA07}CONFIRMA","{FA0000}SAIR");
                
Errou[playerid]++;
                if(
Errou[playerid] == 1) return ShowPlayerDialog(playeridDIALOG_LOGINDIALOG_STYLE_PASSWORD"{02BCFA}LOGIN","Senha Errada Vocк Tem: {02BCFA}4 Chances\nStatus Da Conta: {02F702}Registrado\nDigite Sua Senha Para Logar","{02FA07}CONFIRMA","{FA0000}SAIR");
                if(
Errou[playerid] == 2) return ShowPlayerDialog(playeridDIALOG_LOGINDIALOG_STYLE_PASSWORD"{02BCFA}LOGIN","Senha Errada Vocк Tem: {02BCFA}3 Chances\nStatus Da Conta: {02F702}Registrado\nDigite Sua Senha Para Logar","{02FA07}CONFIRMA","{FA0000}SAIR");
                if(
Errou[playerid] == 3) return ShowPlayerDialog(playeridDIALOG_LOGINDIALOG_STYLE_PASSWORD"{02BCFA}LOGIN","Senha Errada Vocк Tem: {02BCFA}2 Chances\nStatus Da Conta: {02F702}Registrado\nDigite Sua Senha Para Logar","{02FA07}CONFIRMA","{FA0000}SAIR");
                if(
Errou[playerid] == 4) return ShowPlayerDialog(playeridDIALOG_LOGINDIALOG_STYLE_PASSWORD"{02BCFA}LOGIN","Senha Errada Vocк Tem: {02BCFA}1 Chances\n\n{02BCFA}Cuidado {02BCFA}Ultima {02BCFA}Chance\nStatus Da Conta: {02F702}Registrado\nDigite Sua Senha Para Logar","{02FA07}CONFIRMA","{FA0000}SAIR");
                if(
Errou[playerid] == 5)
                {
                    
ShowPlayerDialog(playeridDIALOG_KICKADODIALOG_STYLE_MSGBOX,"{FA0000}AVISO","Vocк Errou Sua Senha 5 Vezes Por Isso\nFoi {FA0000}Banido\n\nPoste Sua Revisгo em\ncpb-rpg.forumeiro.com","{FA0000}OK","{FA0000}OK");
                    
SetTimer("ErrouSenha",2000true);
                    return 
1;
                }
            }
        }
        return 
1;
    }
    if(
dialogid == DIALOG_ESCOLHADEVIDA)
    {
        if(!
response)
        {
            
SendClientMessage(playerid, -1,"Vocк tem que escolher o que quer ser");
            
SetTimer("VoltarEscolha",1000true);
            return 
1;
        }
        switch(
listitem)
        {
            case 
0PlayerInfo[playerid][pVida] = 1;
            case 
1PlayerInfo[playerid][pVida] = 2;
        }
    }
    return 
1;
}
public 
OnPlayerDisconnect(playerid)
{
    new 
arquivo[40], pName[MAX_PLAYER_NAME];
    
GetPlayerName(playeridpName32);
    
format(arquivo40"Contas/%s.ini"pName);
    if(
DOF2_FileExists(arquivo))
    {
        
DOF2_SetFloat(arquivo"Vida"PlayerInfo[playerid][pVida]);
        
DOF2_SetInt(arquivo"Membro"PlayerInfo[playerid][pMembro]);
        
DOF2_SetInt(arquivo"Cargo"PlayerInfo[playerid][pCargo]);
        
DOF2_SaveFile();
    }
    return 
1;

Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)