Salvamento com loop? -
SukMathcuck - 08.12.2016
O problema й salvar, nгo estб salvando, por que quero salvar? Quando eu logo, mostra "Vazio" no espaзo para criar personagem, ae eu vou nos arquivos e crio um personagem, mais esse personagem apareзe na textdraw apenas quando eu desligo e ligo novamente o gamemode, no console.
PHP код:
enum pInfo2
{
pSenha,
pPersonagem1[80],
pPersonagem2[80],
pPersonagem3[80],
PlayerText:pTextDraws[18]
};
new Account[MAX_PLAYERS][pInfo2];
for (new i = 0; i < 19; i++)
{
DOF2_SetInt(arquivo, "TextDraws%s", i, Account[playerid][pTextDraws][i]);
}
Re: Salvamento com loop? -
SukMathcuck - 08.12.2016
Beleza, estou apenas tentando esclarecer ideias com a comunidade, up! como posso criar essa loop de salvamento, que salva 18 textdraws no total, mais queria salvar do modo abaixo? Nгo estб salvando por que?
Код:
TextDraws0 = 0
TextDraws1 = 1
TextDraws2 = 2
TextDraws3 = 3
TextDraws4 = 4
TextD....
PHP код:
for (new i = 0; i < 19; i++)
{
DOF2_SetInt(arquivo, "TextDraws%s", i, Account[playerid][pTextDraws][i]);
}
Re: Salvamento com loop? -
iLordGG - 08.12.2016
for (new i = 0; i < 19; i++)
{
DOF2_SetInt(arquivo, "TextDraws%s", i, Account[i][pTextDraws]);
}
testa assim
Re: Salvamento com loop? -
SukMathcuck - 08.12.2016
Nгo deu certo por que esse ae й pra definir apenas textdraws de 0 a 18, sendo assim o playerid nгo й utilizado, sу quero dar um jeito de salvar do jeito que mostrei, fiz deste modo, pois o tуpico poderб ajudar futuros no samp tambйm..
Re: Salvamento com loop? -
SukMathcuck - 08.12.2016
Como eu faзo? Estб tipo assim, na hora de logar na primeira vez, loga certo, mostra os nomes dos personagens nas textdraws, mais se eu ir atй as scriptfiles e trocar o nome e logar novamente no servidor sem desligado, fica do mesmo jeito de antes, como se eu nгo tivesse colocado um novo personagem nas scriptfiles para ser clicavel na textdraw, mostra vazio ou o personagem que jб tinha salva na textdraw ao logar na primeira vez, ae pensei que precisava salvar a textdraw, mais nгo consigo salvar por falta de experiкncia.
O problema й salvar, nгo estб salvando, por que quero salvar? Quando eu logo, mostra "Vazio" no espaзo para criar personagem, ae eu vou nos arquivos e crio um personagem, mais esse personagem apareзe na textdraw apenas quando eu desligo e ligo novamente o gamemode, no console.
Re: Salvamento com loop? -
AuhMaru - 08.12.2016
Se nao funcionar explique melhor.
Pelo o que eu entendi й isso, tente ai:
PHP код:
new str[40];
for(new i; i < 19; i ++)
{
format(str, sizeof str, "TextDraws%d", i);
DOF2_SetInt(arquivo, str, Account[playerid][pTextDraws]);
DOF2_SaveFile();
}
Ou intгo tente assim:
PHP код:
new PlayerText: pTextDraws[MAX_PLAYERS][18];
//
new str[40];
for(new i; i < 19; i ++)
{
format(str, sizeof str, "TextDraws%d", i);
DOF2_SetInt(arquivo, str, pTextDraws[playerid][i]);
DOF2_SaveFile();
}
Re: Salvamento com loop? -
SukMathcuck - 08.12.2016
Vocк foi reputado com sucesso, 50 por cento do nosso problema foi resolvido, vamos lб.
Por que eu salvo em um enum?
Код HTML:
//enum atualizada:
enum pInfo2
{
pSenha,
pPersonagem1[80],
pPersonagem2[80],
pPersonagem3[80],
PlayerText:pTextDraws[9]
};
new Account[MAX_PLAYERS][pInfo2];
Peguei o sistema de TextDraw de uma outra gamemode Mysql, entгo meu deu um bom trabalho para converter.
Na enum carrega todas as TextDraw e salva nos arquivos, nгo sei pra que, mais coloquei por que estava bugando quando eu logo, mostra "Vazio" no espaзo para criar personagem, ae eu vou nos arquivos e crio um personagem manualmente, mais esse personagem aparece na textdraw apenas quando eu desligo o servidor e ligo novamente,
ae pensei em deixar em enum, mais nгo consigo salvar do modo certo, nessa seguinte parte:
Код HTML:
new str[40];
for(new i; i < 19; i ++)
{
format(str, sizeof str, "TextDraws%d", i);
DOF2_SetInt(arquivo, str, pTextDraws[playerid][i]);
DOF2_SaveFile();
}
Resolveu metade do meu problema, porйm falta resolver metade do problema, a enum, creio eu.
Os 9 textdraw sгo carregadas normalmente em Onplayerconect.
@edit
Quote:
Senha = pVazio
Personagem1 = Vazio
Personagem2 = Vazio
Personagem3 = Vazio
TextDraws0 = 0
TextDraws1 = 0
TextDraws2 = 0
TextDraws3 = 0
TextDraws4 = 0
TextDraws5 = 0
TextDraws6 = 0
TextDraws7 = 0
TextDraws8 = 0
TextDraws9 = 0
|
A parte da senha se encontra bugada por que? afs, essa parte da enum tб me matando, pesquiso em wiki e tudo, nada me trбs informaзхes para deixar funcional.
Re: Salvamento com loop? -
AuhMaru - 08.12.2016
Eu nгo entendi bem a parte da textdraw, vocк quer salvб-las ou nгo?
A parte da senha n acho necessбrio usar uma enum, a nгo ser que seja em Hash o sistema de login/registro.
Tente isso na dialog de registro e login, para salvar sua senha:
PHP код:
//Salvar a senha no Registro:
new str[45];
format(str, sizeof str, "Contas/%s.ini", GetName(playerid)); //Mude para seu local de salvamento.
DOF2_CreateFile(str);
DOF2_SetString(str, "Senha", inputtext);
DOF2_SaveFile();
//
//Verificar a senha salva, para fazer o login:
new str[45];
format(str, sizeof str, "Contas/%s.ini", GetName(playerid)); //Mude para seu local de salvamento.
if(strcmp(DOF2_GetString(str, "Senha"), inputtext, true) == 0)
{
SpawnPlayer(playerid);
}
//
GetName(playerid) {
static nickplayer[MAX_PLAYER_NAME];
GetPlayerName(playerid, nickplayer, sizeof nickplayer);
return nickplayer;
}
Re: Salvamento com loop? -
SukMathcuck - 08.12.2016
Quote:
Originally Posted by AuhMaru
Eu nгo entendi bem a parte da textdraw, vocк quer salvб-las ou nгo?
A parte da senha n acho necessбrio usar uma enum, a nгo ser que seja em Hash o sistema de login/registro.
Tente isso na dialog de registro e login, para salvar sua senha:
PHP код:
//Salvar a senha no Registro:
new str[45];
format(str, sizeof str, "Contas/%s.ini", GetName(playerid)); //Mude para seu local de salvamento.
DOF2_CreateFile(str);
DOF2_SetString(str, "Senha", inputtext);
DOF2_SaveFile();
//
//Verificar a senha salva, para fazer o login:
new str[45];
format(str, sizeof str, "Contas/%s.ini", GetName(playerid)); //Mude para seu local de salvamento.
if(strcmp(DOF2_GetString(str, "Senha"), inputtext, true) == 0)
{
SpawnPlayer(playerid);
}
//
GetName(playerid) {
static nickplayer[MAX_PLAYER_NAME];
GetPlayerName(playerid, nickplayer, sizeof nickplayer);
return nickplayer;
}
|
Na enum carrega todas as TextDraw e salva nos arquivos, nгo sei pra que, mais coloquei por que estava bugando quando eu logo, mostra "Vazio" no espaзo para criar personagem, ae eu vou nos arquivos e crio um personagem manualmente, mais esse personagem aparece na textdraw apenas quando eu desligo o servidor e ligo novamente,
ae pensei em deixar em enum, mais nгo consigo salvar do modo certo, nessa seguinte parte:
Precisa de uma enum para carregar, como vou carregar os nomes dos personagens? mais como vou salvar as textdraw de um modo que nгo de erro?
Acredito que o erro estб na enum na parte PlayerText
TextDraws:
PHP код:
enum pInfo2
{
pSenha,
pPersonagem1[80],
pPersonagem2[80],
pPersonagem3[80],
PlayerText:pTextDraws[9]
};
new Account[MAX_PLAYERS][pInfo2];
Como faзo para aumentar adicionar as linhas corretamente, nove no total?
Re: Salvamento com loop? -
AuhMaru - 08.12.2016
@EDIT