11.05.2013, 04:14
Entгo, estou com um sйrio problema no meu servidor de sa-mp, preciso muito da ajuda de vocкs, no meu server tem 2 Sistema de Mudar Nick e de Mudar Senha, tem um bug na бrea de registro que vocк pode mudar o nick ou a senha de algum Administrador sem saber a senha dele.
Como й esse bug?
Quando vocк entra no servidor com o nick de algum Administrador , vai ter a tela inicial certo, pra vocк escolher бs opзхes se vocк quer se "Registrar" ou "Logar" , nessa tela se vocк der "ESC" vocк nгo toma disconnect, ai й so vocк aperta "T" e escrever /mudarsenha "A senha que vocк quer" e fica com a conta do administrador, da ban's.
Entгo o certo era vocк apertar "Esc" e tomar disconnect automaticamente, estб faltando alguma coisa na бrea de registro, pois quando aperta "Esc" nгo da disconnect, isso acontece apenas na tela inicial, se vocк clica em "Logar" e da "ESC" vocк toma kick, serб que alguйm poderia me ajudar nesse bug?
Estб faltando adaptar o Kick(playerid); em algum lugar da бrea de registro.
Vou deixar б бrea de registro aqui, quem souber resolver, porfavor me ajude, preciso muito.
БREA DE REGISTRO
-----------------------------
PUBLIC
----------------------------
DIALOG
Desde jб agradeзo, abraзos.
Como й esse bug?
Quando vocк entra no servidor com o nick de algum Administrador , vai ter a tela inicial certo, pra vocк escolher бs opзхes se vocк quer se "Registrar" ou "Logar" , nessa tela se vocк der "ESC" vocк nгo toma disconnect, ai й so vocк aperta "T" e escrever /mudarsenha "A senha que vocк quer" e fica com a conta do administrador, da ban's.
Entгo o certo era vocк apertar "Esc" e tomar disconnect automaticamente, estб faltando alguma coisa na бrea de registro, pois quando aperta "Esc" nгo da disconnect, isso acontece apenas na tela inicial, se vocк clica em "Logar" e da "ESC" vocк toma kick, serб que alguйm poderia me ajudar nesse bug?
Estб faltando adaptar o Kick(playerid); em algum lugar da бrea de registro.
Vou deixar б бrea de registro aqui, quem souber resolver, porfavor me ajude, preciso muito.
БREA DE REGISTRO
-----------------------------
PUBLIC
Код:
public OnPlayerRequestClass(playerid, classid) { SetPlayerPos(playerid, 1958.3783, 1343.1572, 15.3746); SetPlayerCameraPos(playerid, 1303.0870,2105.7612,39.0228); SetPlayerCameraLookAt(playerid, 1380.7771,2195.2405,22.5776); new string[25]; format(string, 25, "%s", getPName(playerid)); ShowPlayerDialog(playerid,COREIA_EO_PODER,DIALOG_STYLE_LIST, string, "Logar\nRegistrar\nSair","Selecionar",""); return 1; }
DIALOG
Код:
if(dialogid == COREIA_EO_PODER) { new String[260]; switch(response) { case 1: { switch(listitem) { case 0: { if(DOF2_FileExists(ContaLog(playerid))) { new Nome[MAX_PLAYER_NAME]; GetPlayerName(playerid, Nome, sizeof(Nome)); format(String, sizeof(String), "{E3E3E3}Nick: %s\nConta: {32CD32}Registrada\n\n{E3E3E3}Digite a senha que vocк registrou.\nLembre-se, nгo passe sua senha para ninguйm.", Nome); ShowPlayerDialog(playerid,LOGIN,DIALOG_STYLE_INPUT,"Logar", String, "Logar","Voltar"); return 1; } else { new string[25]; format(string, 25, "%s", getPName(playerid)); ShowPlayerDialog(playerid,COREIA_EO_PODER,DIALOG_STYLE_LIST, string, "Logar\nRegistrar\nSair","Selecionar",""); return 1; } } case 1: { new Nome[MAX_PLAYER_NAME]; GetPlayerName(playerid, Nome, sizeof(Nome)); format(String, sizeof(String),CONTAS,Nome); if(!DOF2_FileExists(ContaLog(playerid))) { format(String, sizeof(String), "{E3E3E3}Nick: %s\nConta: {FF0000}Nгo Registrada\n\n{E3E3E3}Digite uma senha abaixo para se registrar.", Nome); ShowPlayerDialog(playerid,REGISTRO,DIALOG_STYLE_INPUT, "Registro", String, "Registrar","Voltar"); return 1; } else { new string[25]; format(string, 25, "%s", getPName(playerid)); ShowPlayerDialog(playerid,COREIA_EO_PODER,DIALOG_STYLE_LIST, string, "Logar\nRegistrar\nSair","Selecionar",""); return 1; } } case 2: { Kick(playerid); } } return 1; } } return 1; }