if(gPlayerLogged[playerid] == 0) return SendClientMessage(playerid, COLOR_LIGHTRED, " [AVISO] Vocк precisa logar antes do Spawn"); |
public OnPlayerRequestSpawn(playerid)
{
if(Logadoo[playerid] == 0)
{
SendClientMessage(playerid, -1, "NГO VAI ENTRAR ATЙ REGISTRA/LOGAR");
return 0;
}
return 1;
}
static Logadoo[MAX_PLAYERS];
public OnPlayerConnect(playerid)
{
Logadoo[playerid] = 0;
return 1;
}
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
//Local que vai verificar se o que vocк digitou й a senha, se sim, vai acontecer o que estб aн em baixo.
{
Logadoo[playerid] = 1;
}
return 1;
}
public OnPlayerRequestSpawn(playerid)
{
if(Logadoo[playerid] == 0)
{
SendClientMessage(playerid, -1, "Registre-se/logue para spawnar!");
return 0;
}
if(Logadoo[playerid] == 1)
{
return 1;
}
return 1;
}
enum e_PLAYER_INFO
{
bool:Logado,
}
new
Player[MAX_PLAYERS][e_PLAYER_INFO];
public OnPlayerRequestClass(playerid, classid)
{
if(!Player[playerid][Logado])
{
TogglePlayerSpectating(playerid, true); // esconde o botгo de spawn
return true;
}
return true;
}
public OnPlayerSpawn(playerid)
{
if(!Player[playerid][Logado])
{
Player[playerid][Logado] = true;
}
return true;
}
public OnPlayerRequestSpawn(playerid)
{
return Player[playerid][Logado];
}
public OnPlayerLogin(playerid) // Onde serб executado a query de login para carregar as informaзхes/dados do banco de dados.
{
if(Player[playerid][Logado])
return false;
// Preencha a funзгo abaixo.
SetSpawnInfo(playerid, 0, skin, x, y, z, rotation, weapon1, weapon1_ammo, weapon2, weapon2_ammo, weapon3, weapon3_ammo); // seta a posiзгo do spawn e +
SendClientMessage(playerid, -1, "autenticado com sucesso.");
TogglePlayerSpectating(playerid, false); // "spawna" o jogador
return true;
}
new errado[MAX_PLAYERS];
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[]){
new string[100];
switch(dialogid){
case 5555:{ //ID do Dialog
if(!response) SendClientMessage(playerid, SuaCor, "Vocк nгo quis Logar por isso foi Kickado!"), SetTimerEx("KickPublic", 1000, false, "i", playerid); // Se der Sair vai ser kickado automaticamente
else {
if(strlen(inputtext) < 4){
format(string, sizeof(string), "SEU NOME: %s\n\n\nDigite sua senha para Logar!\n", GetName(playerid)); //Oque vai aparecer no Dialog
ShowPlayerDialog(playerid, DIALOG_LOGIN, DIALOG_STYLE_PASSWORD, "Servidor", string, "Ir", "sair"); //Os Botхes
SendClientMessage(playerid, COR_VERMELHO, "Sua senha deve ter mais de 4 Digitos!"); //Tem que digitar mais de 4 digitos
}
else
MySqlLogin(playerid, inputtext); //Public da Senha
}
}
}
return 1;
}
//MySql Login й a public que seleciona б conta,e depois na public de resposta do mysql
public r@MySQlLogin(playerid){
new rows, fields, string[256]; //as news
cache_get_data(rows, fields, MysqlC);
if(rows) Conta(playerid); //Se б senha for certa chama para cadastrar
else { //Se caso nгo existir a senha
errrado[playerid] += 1;
if(errado[playerid] == 5)
return SendClientMessage(playerid, SuaCor, "Vocк nгo quis Logar por isso foi Kickado!"), SetTimerEx("KickPublic", 1000, false, "i", playerid); // Se der Sair vai ser kickado automaticamente
SendClientMessage(playerid, SuaCor, "Senha errada, Se errar 5 vezes !"),
format(string, sizeof(string), "SEU NOME: %s\n\n\nDigite sua senha para Logar!\n", GetName(playerid));
ShowPlayerDialog(playerid, 5555, DIALOG_STYLE_PASSWORD, "Servidor", string, "Ir", "Sair");
}
return 1;
}