13.08.2011, 13:05
alguem podia me passar ou me indicar 1 sistema de registro bom pro meu gm..
#include <a_samp>
#include <dini>
//Defines
#define FileUsers "%s.ini"
#define DIALOG_LOGIN 10
#define DIALOG_REGISTER 11
#define CINZA4 0xD8D8D8FF
//Newґs ._.
new bool:Logado[MAX_PLAYERS];
// stockґs
stock ReturnFileUser(playerid)
{
new File[256],Name[MAX_PLAYER_NAME];
GetPlayerName(playerid,Name,sizeof(Name));
format(File,sizeof(File),FileUsers,Name);
return File;
}
public OnGameModeInit()
{
// Don't use these lines if it's a filterscript
SetGameModeText("Blank Script");
AddPlayerClass(0, 1958.3783, 1343.1572, 15.3746, 269.1425, 0, 0, 0, 0, 0, 0);
return 1;
}
public OnPlayerConnect(playerid)
{
if(dini_Exists(ReturnFileUser(playerid))) { // logar
ShowPlayerDialog(playerid,DIALOG_LOGIN,DIALOG_STYLE_INPUT, "Login","{ABA6A7}Bem Vindo De Volta\n{ABA6A7}Digite Sua senha para logar","Confirmar","Sair");
}
else { // registrar
ShowPlayerDialog(playerid,DIALOG_REGISTER,DIALOG_STYLE_INPUT, "Registrar","Digite uma senha para obter um registro:","Confirmar","Sair");
}
return true;
}
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
if(dialogid==DIALOG_LOGIN) {
if(response) {
if(strcmp(dini_Get(ReturnFileUser(playerid),"Senha"),inputtext,true)==0) {
Logado[playerid]=true;
// ae aqui tu loga as infos dele
// Kills[playerid]=dini_Int(ReturnFileUser(playerid),"Kills");
// etc.
}
else {
ShowPlayerDialog(playerid,DIALOG_LOGIN,DIALOG_STYLE_INPUT, "Login Failed","{ABA6A7}Sua senha estava errada\n{ABA6A7}Digite a senha correta por favor:","Confirmar","Sair");
}
}
else {
new pName[MAX_PLAYER_NAME],lString[256];
GetPlayerName(playerid,pName,sizeof(pName));
format(lString,256," %s(%d) foi kickado por nгo responder ao box para logar.",pName,playerid);
SendClientMessageToAll(CINZA4,lString);
Kick(playerid);
}
return 1;
}
if(dialogid==DIALOG_REGISTER) {
if(response) {
if(!strlen(inputtext)) return ShowPlayerDialog(playerid,DIALOG_REGISTER,DIALOG_STYLE_INPUT, "Registrar","{EAFF00}Digite uma senha para se Registrar\n{EAFF00}Digite uma senha que Vocк nгo esquecerб:","Confirmar","Sair");
Logado[playerid]=true;
dini_Create(ReturnFileUser(playerid));
dini_Set(ReturnFileUser(playerid),"Senha",inputtext);
// ae aqui tu vai vendo quais locais vai usar para salvar
// dini_IntSet(ReturnFileUser(playerid),"Kills",0);
}
else {
new pName[MAX_PLAYER_NAME],lString[256];
GetPlayerName(playerid,pName,sizeof(pName));
format(lString,256," %s(%d) foi kickado por nгo responder ao box para registrar.",pName,playerid);
SendClientMessageToAll(CINZA4,lString);
Kick(playerid);
}
return 1;
}
return 1;
}