10.07.2011, 21:30
Й o seguinte, aparece a login box na tela de seleзгo de skin, aн quando vc loga, e clica na seta pro lado pra mudar a skin, troca a skin e aparece a login box novamente! vou postar o FS inteiro, ja que foi retirado daqui do forum.
Falcon, seu nome ja esta no /creditos! SendClientMessage(playerid,COLOR_GREEN,"Login/Registro: Falcon");
pawn Code:
/*MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
MMMM MMMM
MMMM [FLB]Falcon's Login Box MMMM
MMMM & salvamento de dados MMMM
MMMM========================================================================MMMM
MMMM MMMM
MMMM ...::: Desenvolvimento :::... MMMM
MMMM Falcon MMMM
MMMM MMMM
MMMM Baixado em: https://sampforum.blast.hk/showthread.php?tid=192519 MMMM
MMMM MMMM
MMMM Й livre a ediзгo do mesmo desde que adicione os devidos crйditos ao MMMM
MMMM local que serб usado !! MMMM
MMMM MMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM*/
#include <a_samp>
#include <dini>
#define FILTERSCRIPT
#define DialogRegistro 696
#define DialogLogin 697
#define DialogSaidaA 698
#define DialogSaidaB 699
//MMMMMMMMMMMMM|| [FLB]Config ||MMMMMMMMMMMMMMM//
#define ContasPlayers "/ContasPlayers/%s.ini"//Caso altere lembre-se de contar os caracteres e alterar em ( new arquivo[]; )
#define VALOR_MAXIMO_VIDA 100//Caso o seu servidor contenha algum valor maximo de vida altere aqui para o determinado valor
#define VALOR_MAXIMO_COLETE 100//Caso o seu servidor contenha algum valor maximo de colete altere aqui para o determinado valor
#define ATIVAR_CASE_SENSITIVE false //false = ATIVADO || true = DESATIVADO
#define MAXIMO_TLOGAR 4//Quantidade de vezes que o player pode tentar logar ao errar a senha
new TentativasDeLogar[MAX_PLAYERS];
new TotalMorreu[MAX_PLAYERS];
new TotalMatou[MAX_PLAYERS];
new nome[MAX_PLAYER_NAME];
new arquivo[44];
stock SalvarDadosPlayer(playerid)
{
GetPlayerName(playerid, nome, sizeof(nome));
format(arquivo, sizeof(arquivo), ContasPlayers, nome);
if(!dini_Exists(arquivo)) dini_Create(arquivo);
new Float:Vida, Float:Colete;
GetPlayerHealth(playerid, Vida);
GetPlayerArmour(playerid, Colete);
dini_IntSet(arquivo, "TotalMorreu", TotalMorreu[playerid]);
dini_IntSet(arquivo, "TotalMatou", TotalMatou[playerid]);
return 0x1;
}
stock CarregarDadosPlayer(playerid)
{
GetPlayerName(playerid, nome, sizeof(nome));
format(arquivo, sizeof(arquivo), ContasPlayers, nome);
if(!dini_Exists(arquivo)) return 0x1;
TotalMorreu[playerid] = dini_Int(arquivo, "TotalMorreu");
TotalMatou[playerid] = dini_Int(arquivo, "TotalMatou");
return 0x1;
}
public OnFilterScriptInit()
{
print("MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM");
print("MM");
print("MM [FLB]Falcon's Login Box");
print("MM");
print("MM (FilterScript Carregado)");
print("MM");
print("MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM");
return 1;
}
public OnFilterScriptExit()
{
print("MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM");
print("MM");
print("MM [FLB]Falcon's Login Box");
print("MM");
print("MM (FilterScript Descarregado)");
print("MM");
print("MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM");
return 1;
}
public OnPlayerRequestClass(playerid, classid)
{
new string[124];
GetPlayerName(playerid, nome, sizeof(nome));
format(arquivo, sizeof(arquivo), ContasPlayers, nome);
if(!dini_Exists(arquivo))
{
format(string, sizeof(string), "Vocк ainda nгo possui registro em nosso servidor\n\nNome: %s\n\nInsira uma senha para registrar-se:", nome);
ShowPlayerDialog(playerid, DialogRegistro, DIALOG_STYLE_INPUT, "- Registro", string, "Registrar", "Sair");
return 0x1;
}
if(dini_Exists(arquivo))
{
TentativasDeLogar[playerid] = 0;
format(string, sizeof(string), "Vocк jб possui registro em nosso servidor\n\nNome: %s\n\nInsira sua senha para logar-se:", nome);
ShowPlayerDialog(playerid, DialogLogin, DIALOG_STYLE_INPUT, "- Login", string, "Logar", "Sair");
return 0x1;
}
return 1;
}
public OnPlayerDisconnect(playerid, reason)
{
SalvarDadosPlayer(playerid);
return 1;
}
public OnPlayerDeath(playerid, killerid, reason)
{
TotalMorreu[playerid] ++;
TotalMatou[killerid] ++;
return 1;
}
public OnPlayerCommandText(playerid, cmdtext[])
{
if(!strcmp(cmdtext, "/salvardados", true))
{
SalvarDadosPlayer(playerid);
SendClientMessage(playerid, 0xFFFFFFAA, "Dados Salvos com sucesso !!");
return 0x1;
}
return 0;
}
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
new string[124];
if(dialogid == DialogRegistro)
{
if(!response) ShowPlayerDialog(playerid, DialogSaidaA, DIALOG_STYLE_MSGBOX, "Confirmar Saida", "Vocк ainda nгo estб registrado. Tem certeza que deseja sair ?", "Sair", "Voltar");
if(response)
{
if(strlen(inputtext) == 0)
{
SendClientMessage(playerid, 0xFF0000AA, "Senha invбlida...Insira uma senha para que possa registrar !!");
format(string, sizeof(string), "Vocк ainda nгo possui registro em nosso servidor\n\nNome: %s\n\nInsira uma senha para registrar-se:", nome);
return ShowPlayerDialog(playerid, DialogRegistro, DIALOG_STYLE_INPUT, "- Registro", string, "Registrar", "Sair");
}
GetPlayerName(playerid, nome, sizeof(nome));
format(arquivo, sizeof(arquivo), ContasPlayers, nome);
dini_Create(arquivo);
dini_Set(arquivo, "Senha", inputtext);
dini_IntSet(arquivo, "TotalMorreu", 0);
dini_IntSet(arquivo, "TotalMatou", 0);
SendClientMessage(playerid, 0xFFFFFFAA, "Registro concluido com sucesso !!");
}
}
if(dialogid == DialogLogin)
{
if(!response) ShowPlayerDialog(playerid, DialogSaidaB, DIALOG_STYLE_MSGBOX, "Confirmar Saida", "Vocк ainda nгo estб logado. Tem certeza que deseja sair ?", "Sair", "Voltar");
if(response)
{
if(strlen(inputtext) == 0)
{
SendClientMessage(playerid, 0xFF0000AA, "Senha invбlida...Insira uma senha para que possa logar !!");
format(string, sizeof(string), "Vocк jб possui registro em nosso servidor\n\nNome: %s\n\nInsira sua senha para logar-se:", nome);
return ShowPlayerDialog(playerid, DialogLogin, DIALOG_STYLE_INPUT, "- Login", string, "Logar", "Sair");
}
GetPlayerName(playerid, nome, sizeof(nome));
format(arquivo, sizeof(arquivo), ContasPlayers, nome);
if(!strcmp(inputtext, dini_Get(arquivo, "Senha"), ATIVAR_CASE_SENSITIVE))
{
SendClientMessage(playerid, 0xFFFFFFAA, "Login efetuado com sucesso!!");
CarregarDadosPlayer(playerid);
}
else
{
TentativasDeLogar[playerid] ++;
if(TentativasDeLogar[playerid] < MAXIMO_TLOGAR)
{
SendClientMessage(playerid, 0xFF0000AA, "Senha INCORRETA !! Caso nгo acerte a senha vocк serб kickado por motivos de seguranзa !!");
format(string, sizeof(string), "Vocк jб possui registro em nosso servidor\n\nNome: %s\n\nInsira sua senha para logar-se:", nome);
ShowPlayerDialog(playerid, DialogLogin, DIALOG_STYLE_INPUT, "- Login", string, "Logar", "Sair");
return 0x1;
}
if(TentativasDeLogar[playerid] >= MAXIMO_TLOGAR)
{
SendClientMessage(playerid, 0xFF0000AA, "Vocк nгo acertou a senha em um numero maximo de tentativas. Por isto foi kickado");
Kick(playerid);
return 0x1;
}
}
}
}
if(dialogid == DialogSaidaA)
{
if(response)
{
SendClientMessage(playerid, 0xFF0000AA, "Vocк decidiu sair do servidor sem se registrar !! Volte Sempre...");
Kick(playerid);
}
else
{
format(string, sizeof(string), "Vocк ainda nгo possui registro em nosso servidor\n\nNome: %s\n\nInsira uma senha para registrar-se:", nome);
ShowPlayerDialog(playerid, DialogRegistro, DIALOG_STYLE_INPUT, "- Registro", string, "Registrar", "Sair");
}
}
if(dialogid == DialogSaidaB)
{
if(response)
{
SendClientMessage(playerid, 0xFF0000AA, "Vocк decidiu sair do servidor sem se logar !! Volte Sempre...");
Kick(playerid);
}
else
{
format(string, sizeof(string), "Vocк jб possui registro em nosso servidor\n\nNome: %s\n\nInsira sua senha para logar-se:", nome);
ShowPlayerDialog(playerid, DialogLogin, DIALOG_STYLE_INPUT, "- Login", string, "Logar", "Sair");
}
}
return 1;
}