Enter no dialog sem a senha...spawna caindo. -
best95 - 14.01.2015
Seguinte tinha criado um antes mais nгo e o mesmo.. pois agora eu descobri o verdadeiro erro... eu entro no meu server.. e cliko enter sem por a senha no dialog de login.. ele nгo vai.. obvio ai apareзe o login dnv eu boto a senha e ele loga normal.. quando eu vou spawnar ele cai pra debaixo do mapa.. OBS: so aconteзe quando eu clico enter primeiro sem por a senha na dialog.. tem como alguem me dizer como solucionar isso?? se precisar de algum codigo me avise q posto aqui..
Re: Enter no dialog sem a senha...spawna caindo. -
ipsLuan - 14.01.2015
Nunca aconteceu isso comigo, mas tenta postar o cуdigo aqui, pode ser o erro no seu cуdigo.
Re: Enter no dialog sem a senha...spawna caindo. -
best95 - 14.01.2015
ONPLAYERCONNECT
pawn Код:
format(StringRegistro, sizeof(StringRegistro), "ZP/Contas/%s.txt", Nome(playerid));
if(!DOF2_FileExists(StringRegistro))
{
format(String, sizeof(String), "{FFFFFF}Bem - Vindo а ZonePerfect \n\nNick: {2E8B57}%s!\n\n{FFFFFF}Registre-se:", Nome(playerid));
ShowPlayerDialog(playerid, REGISTRO, DIALOG_STYLE_INPUT, "Registro - ZonePerfect", String, "Registrar", "Sair");
Logado[playerid] = false;
return 1;
}
else
{
format(String, sizeof(String), "{FFFFFF}Bem - Vindo Novamente! \n\nNick: {2E8B57}%s\n\n{FFFFFF}Digite Sua Senha Para Logar:", Nome(playerid));
ShowPlayerDialog(playerid, LOGIN, DIALOG_STYLE_PASSWORD, "Login - ZonePerfect", String, "Logar", "Sair");
ONDIALOGRESPONSE
pawn Код:
if(dialogid == REGISTRO)
{
if(response)
{
if(!strlen(inputtext))
{
format(String, sizeof(String), "{FFFFFF}Bem - Vindo а ZonePerfect \n\nNick: {2E8B57}%s\n\n{FFFFFF} Registre-se:", Nome(playerid));
ShowPlayerDialog(playerid, REGISTRO, DIALOG_STYLE_INPUT, "Registro", String, "Registrar", "Sair");
return 1;
}
new StrIp[300];
GetPlayerIp(playerid, StrIp, 300);
format(StringRegistro, sizeof(StringRegistro), "ZP/Contas/%s.txt", Nome(playerid));
DOF2_CreateFile(StringRegistro);
DOF2_SetString(StringRegistro, "Senha", inputtext);
DOF2_SetInt(StringRegistro, "Dinheiro", 50000);
DOF2_SetInt(StringRegistro, "Score", 0);
DOF2_SetInt(StringRegistro, "Skin", 0);
DOF2_SetString(StringRegistro, "IP", StrIp);
DOF2_SetInt(StringRegistro, "SavePos", 1);
DOF2_SaveFile();
ContaNova[playerid] = true;
GivePlayerMoney(playerid, 50000);
ContaPlayer[playerid][Dinheiro] = DOF2_GetInt(StringRegistro, "Dinheiro");
ContaPlayer[playerid][Score] = DOF2_GetInt(StringRegistro, "Score");
new str[50];
format(str, sizeof(str), "ZP/ADM/%s.sav", Nome(playerid));
ContaPlayer[playerid][Level] = DOF2_GetInt(str, "Level");
Msg(playerid, cortag, "{FF0000} - CONTA - {FFFFFF}Bem Vindo Vocк Foi Registrado e Logado Automaticamente!");
CarregarVariaveis(playerid);
return 1;
}
else
{
format(String, sizeof(String), "{FF0000} - REGISTRO -{FFFFFF} O Player {2E8B57}%s{FFFFFF} Foi Kickado [Sem Registro.]", Nome(playerid));
MsgToAll(cortag, String);
ZPKick(playerid);
return 1;
}
}
if (dialogid == LOGIN)
{
if(response)
{
if(!strlen(inputtext))
{
format(String, sizeof(String), "{FFFFFF}Bem - Vindo Novamente \n\nNick: {2E8B57}%s\n\n{FFFFFF}Digite Sua Senha Para Logar:", Nome(playerid));
ShowPlayerDialog(playerid, LOGIN, DIALOG_STYLE_PASSWORD, "Login", String, "Logar", "Sair");
return 1;
}
format(StringRegistro, sizeof(StringRegistro), "ZP/Contas/%s.txt", Nome(playerid));
if(strcmp(inputtext, DOF2_GetString(StringRegistro, "Senha"), true))
{
if(ErrouSenha[playerid] == 4)
{
format(String, sizeof(String), "{FF0000} - LOGIN - {FFFFFF}O Player {2E8B57}%s{FFFFFF} Foi Kickado [Motivo: Senha Errada]", Nome(playerid));
MsgToAll(cortag, String);
ZPKick(playerid);
return 1;
}
ShowPlayerDialog(playerid, LOGIN, DIALOG_STYLE_PASSWORD, "Senha Errada!", "{FFFFFF}A Senha Que Vocк Digitou Estб {2E8B57}Errada!\n\n{FFFFFF}Digite Sua Senha:", "Logar", "Sair");
ErrouSenha[playerid]++;
return 1;
}
else
{
new str[50];
format(str, 50, "ZP/ADM/%s.sav", Nome(playerid));
if(DOF2_FileExists(str))
{
if(DOF2_IsSet(str, "Level"))
{
format(String, sizeof(String), "{FF0000} - CONTA - {FFFFFF}Sua Conta Possui ADM Level {2E8B57}%d{FFFFFF}, Logue Como ADMIN {2E8B57} /LogarAdm [SENHA]", DOF2_GetInt(str, "Level"));
Msg(playerid, cortag, String);
}
}
ContaPlayer[playerid][Dinheiro] = DOF2_GetInt(StringRegistro, "Dinheiro");
ContaPlayer[playerid][Score] = DOF2_GetInt(StringRegistro, "Score");
GivePlayerMoney(playerid, ContaPlayer[playerid][Dinheiro]);
SetPlayerScore(playerid, ContaPlayer[playerid][Score]);
ContaPlayer[playerid][Skin] = DOF2_GetInt(StringRegistro, "Skin");
new StrIp[300];
GetPlayerIp(playerid, StrIp, 300);
DOF2_SetString(StringRegistro, "IP", StrIp);
DOF2_SaveFile();
ContaNova[playerid] = false;
CarregarVariaveis(playerid);
return 1;
}
}
else
{
format(String, sizeof(String), "{FF0000} - LOGIN -{FFFFFF} O Player {2E8B57}%s{FFFFFF} Foi Kickado [Motivo: Sem Login.]", Nome(playerid));
MsgToAll(cortag, String);
ZPKick(playerid);
return 1;
}
}
Re: Enter no dialog sem a senha...spawna caindo. -
MultiKill - 14.01.2015
Tente:
pawn Код:
if(inputtext[0] == EOS)
{
format(String, sizeof(String), "{FFFFFF}Bem - Vindo а ZonePerfect \n\nNick: {2E8B57}%s\n\n{FFFFFF} Registre-se:", Nome(playerid));
ShowPlayerDialog(playerid, REGISTRO, DIALOG_STYLE_INPUT, "Registro", String, "Registrar", "Sair");
return 1;
}
Re: Enter no dialog sem a senha...spawna caindo. -
ipsLuan - 14.01.2015
Este cуdigo tem alguns erros e alem tem exagero de strings.
pawn Код:
new StrIp[300];
GetPlayerIp(playerid, StrIp, 300);
Um IP e composto por 4 octetos, entгo a sua capacidade mбxima e 16 caracteres.
Deveria ficar assim:
pawn Код:
new StrIp[16];
GetPlayerIp(playerid, StrIp, 16);
Re: Enter no dialog sem a senha...spawna caindo. -
best95 - 14.01.2015
So esse?? e o bug que ta dando tem haver?
Re: Enter no dialog sem a senha...spawna caindo. -
PT - 14.01.2015
usa o
strlen para ver se o tamanho do texto inserido e maior que 0.
Re: Enter no dialog sem a senha...spawna caindo. -
best95 - 14.01.2015
PT meu codigo esta com strlen olhe acima ali!! eu postei ele...
Re: Enter no dialog sem a senha...spawna caindo. -
[BOPE]Seu._.Madruga - 14.01.2015
Tenta assim:
PHP код:
public OnPlayerRequestClass(playerid, classid)
{
new aname[MAX_PLAYER_NAME], file[155], string[155];
GetPlayerName(playerid, aname,sizeof(aname));
format(file, sizeof(file), "ZP/Contas/%s.txt", aname);
if(!DOF2_FileExists(file))
{
format(string, sizeof(string), "{FFFFFF}Bem - Vindo а ZonePerfect \n\nNick: {2E8B57}%s!\n\n{FFFFFF}Registre-se:", aname);
ShowPlayerDialog(playerid, REGISTRO, DIALOG_STYLE_INPUT, "Registro - ZonePerfect", string, "Registrar", "Sair");
Logado[playerid] = false;
return 1;
}
else
{
format(string, sizeof(string), "{FFFFFF}Bem - Vindo Novamente! \n\nNick: {2E8B57}%s\n\n{FFFFFF}Digite Sua Senha Para Logar:", aname);
ShowPlayerDialog(playerid, LOGIN, DIALOG_STYLE_PASSWORD, "Login - ZonePerfect", string, "Logar", "Sair");
}
return 1;
}
PHP код:
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
if(dialogid == REGISTRO)
{
static aname[MAX_PLAYER_NAME], file[155], string[155];
GetPlayerName(playerid, aname,sizeof(aname));
format(file, sizeof(file), "ZP/Contas/%s.txt", aname);
if(response)
{
if(!strlen(inputtext))
{
format(string, sizeof(string), "{FFFFFF}Bem - Vindo а ZonePerfect \n\nNick: {2E8B57}%s\n\n{FFFFFF} Registre-se:", aname);
ShowPlayerDialog(playerid, REGISTRO, DIALOG_STYLE_INPUT, "Registro", string, "Registrar", "Sair");
}
static StrIp[16], str[50];
GetPlayerIp(playerid, StrIp, 16);
DOF2_CreateFile(file);
DOF2_Setstring(file, "Senha", inputtext);
DOF2_SetInt(file, "Dinheiro", 50000);
DOF2_SetInt(file, "Score", 0);
DOF2_SetInt(file, "Skin", 0);
DOF2_Setstring(file, "IP", StrIp);
DOF2_SetInt(file, "SavePos", 1);
DOF2_SaveFile();
ContaNova[playerid] = true;
GivePlayerMoney(playerid, 50000);
ContaPlayer[playerid][Dinheiro] = DOF2_GetInt(file, "Dinheiro");
ContaPlayer[playerid][Score] = DOF2_GetInt(file, "Score");
format(str, sizeof(str), "ZP/ADM/%s.sav", aname);
ContaPlayer[playerid][Level] = DOF2_GetInt(str, "Level");
Msg(playerid, cortag, "{FF0000} - CONTA - {FFFFFF}Bem Vindo Vocк Foi Registrado e Logado Automaticamente!");
CarregarVariaveis(playerid);
return 1;
}
else
{
format(string, sizeof(string), "{FF0000} - REGISTRO -{FFFFFF} O Player {2E8B57}%s{FFFFFF} Foi Kickado [Sem Registro.]", aname);
MsgToAll(cortag, string);
ZPKick(playerid);
return 1;
}
}
if(dialogid == LOGIN)
{
static aname[MAX_PLAYER_NAME], file[155], string[155];
GetPlayerName(playerid, aname,sizeof(aname));
format(file, sizeof(file), "ZP/Contas/%s.txt", aname);
if(response)
{
if(!strlen(inputtext))
{
format(string, sizeof(string), "{FFFFFF}Bem - Vindo Novamente \n\nNick: {2E8B57}%s\n\n{FFFFFF}Digite Sua Senha Para Logar:", aname);
ShowPlayerDialog(playerid, LOGIN, DIALOG_STYLE_PASSWORD, "Login", string, "Logar", "Sair");
}
else
{
if(strcmp(DOF2_Getstring(file, "Senha"),inputtext, false ) == 0 )
{
if(ErrouSenha[playerid] == 4)
{
format(string, sizeof(string), "{FF0000} - LOGIN - {FFFFFF}O Player {2E8B57}%s{FFFFFF} Foi Kickado [Motivo: Senha Errada]", aname);
MsgToAll(cortag, string);
ZPKick(playerid);
return 1;
}
ShowPlayerDialog(playerid, LOGIN, DIALOG_STYLE_PASSWORD, "Senha Errada!", "{FFFFFF}A Senha Que Vocк Digitou Estб {2E8B57}Errada!\n\n{FFFFFF}Digite Sua Senha:", "Logar", "Sair");
ErrouSenha[playerid]++;
return 1;
}
else
{
static str[50], StrIp[16];
format(str, 50, "ZP/ADM/%s.sav", aname);
if(DOF2_FileExists(str))
{
if(DOF2_IsSet(str, "Level"))
{
format(string, sizeof(string), "{FF0000} - CONTA - {FFFFFF}Sua Conta Possui ADM Level {2E8B57}%d{FFFFFF}, Logue Como ADMIN {2E8B57} /LogarAdm [SENHA]", DOF2_GetInt(str, "Level"));
Msg(playerid, cortag, string);
}
}
ContaPlayer[playerid][Dinheiro] = DOF2_GetInt(file, "Dinheiro");
ContaPlayer[playerid][Score] = DOF2_GetInt(file, "Score");
GivePlayerMoney(playerid, ContaPlayer[playerid][Dinheiro]);
SetPlayerScore(playerid, ContaPlayer[playerid][Score]);
ContaPlayer[playerid][Skin] = DOF2_GetInt(file, "Skin");
GetPlayerIp(playerid, StrIp, 16);
DOF2_Setstring(file, "IP", StrIp);
DOF2_SaveFile();
ContaNova[playerid] = false;
CarregarVariaveis(playerid);
SpawnPlayer(playerid);
return 1;
}
}
}
else
{
format(string, sizeof(string), "{FF0000} - LOGIN -{FFFFFF} O Player {2E8B57}%s{FFFFFF} Foi Kickado [Motivo: Sem Login.]", aname);
MsgToAll(cortag, string);
ZPKick(playerid);
return 1;
}
}
return 1;
}
Re: Enter no dialog sem a senha...spawna caindo. -
PT - 14.01.2015
Faz a condicao positiva primeiro.
Uma vez tive um problema parecido.
if(strlen(inputtext) > 0)
Ja agora tens a identacao mal feita esta a fazer com que o if(!response) talvez esteja no local errado e o player nao seja kickado.