/********************************************************************* *
* *
* SISTEMA DE REGISTRO/LOGIN *
* hRegister/Login *
* Criado por o_Hated *
* *
**********************************************************************/
//==Includes==//
#include <a_samp>
#include <zcmd>
#include <Dini>
//==Defines==//
#define Register 0
#define Logged 1
#pragma tabsize 0
//==News==//
new Text:topblack, Text:bottomblack;
new Text:Textdraw0;
new Login[MAX_PLAYERS];
new contador;
new reply[MAX_PLAYERS];
//==Forwards==//
forward ClearChatbox(playerid, lines);
//==Publics==//
public OnFilterScriptInit()
{
if(!fexist("/Players/Nivel.ini")) dini_Create("/Players/Nivel.ini");
if(!fexist("/Players/Money.ini")) dini_Create("/Players/Money.ini");
topblack = TextDrawCreate(1.000000,-45.000000,"__");
bottomblack = TextDrawCreate(-2.000000,371.000000,"__");
TextDrawUseBox(topblack,1);
TextDrawBoxColor(topblack,0x000000ff);
TextDrawTextSize(topblack,655.000000,80.000000);
TextDrawUseBox(bottomblack,1);
TextDrawBoxColor(bottomblack,0x000000ff);
TextDrawTextSize(bottomblack,840.000000,240.000000);
TextDrawAlignment(topblack,0);
TextDrawAlignment(bottomblack,0);
TextDrawBackgroundColor(topblack,0x000000ff);
TextDrawBackgroundColor(bottomblack,0x000000ff);
TextDrawFont(topblack,3);
TextDrawLetterSize(topblack,1.000000,14.000000);
TextDrawFont(bottomblack,3);
TextDrawLetterSize(bottomblack,1.000000,24.000000);
TextDrawColor(topblack,0xffffffff);
TextDrawColor(bottomblack,0xffffffff);
TextDrawSetOutline(topblack,1);
TextDrawSetOutline(bottomblack,1);
TextDrawSetProportional(topblack,1);
TextDrawSetProportional(bottomblack,1);
TextDrawSetShadow(topblack,1);
TextDrawSetShadow(bottomblack,1);
Textdraw0 = TextDrawCreate(3.000000, 433.000000, "~g~hRegister/Logincoloca uma msg aqui .. sei lб '-'");
TextDrawBackgroundColor(Textdraw0, 255);
TextDrawFont(Textdraw0, 1);
TextDrawLetterSize(Textdraw0, 0.529999, 1.300001);
TextDrawColor(Textdraw0, -65281);
TextDrawSetOutline(Textdraw0, 1);
TextDrawSetProportional(Textdraw0, 1);
TextDrawUseBox(Textdraw0, 1);
TextDrawBoxColor(Textdraw0, 255);
TextDrawTextSize(Textdraw0, 655.000000, -95.000000);
for(new i; i < MAX_PLAYERS; i ++)
{
if(IsPlayerConnected(i))
{
TextDrawShowForPlayer(i, Textdraw0);
}
}
return 1;
}
public OnFilterScriptExit()
{
TextDrawHideForAll(Textdraw0);
TextDrawDestroy(Textdraw0);
return 1;
}
public OnPlayerConnect(playerid)
{
new pName[MAX_PLAYER_NAME];
Login[playerid] = 0;
new nombre[MAX_PLAYER_NAME], archivo[256];
GetPlayerName(playerid, nombre, sizeof(nombre));
GetPlayerName(playerid, pName, MAX_PLAYER_NAME);
if(dini_Isset("/Players/Nivel.ini",PlayerName(playerid))) SetPlayerScore(playerid,dini_Int("/Players/Nivel.ini",PlayerName(playerid)));
if(dini_Isset("/Players/Money.ini",PlayerName(playerid))) GivePlayerMoney(playerid,dini_Int("/Players/Money.ini",PlayerName(playerid)));
format(archivo, sizeof(archivo), "/Players/%s.ini", nombre);
if (!dini_Exists(archivo))
{
ShowPlayerDialog(playerid, Register, DIALOG_STYLE_INPUT, "Registro", "Bem Vindo ao COLOQUE O NOME DO SEU SERVIDOR! \nEscolha uma senha para poder Logar\nNOME DO SEU SERVIDOR", "Registrar", "Cancelar");
}
else
{
ShowPlayerDialog(playerid, Logged, DIALOG_STYLE_INPUT, "Logar", "Bem Vindo ao COLOQUE O NOME DO SEU SERVIDOR\nFaзa Seu Login e Seja Feliz No Nosso Servidor", "Logar", "Cancelar");
}
PlayerPlaySound(playerid,1097, 0.0, 0.0, 0.0);
TextDrawShowForPlayer(playerid, Textdraw0);
TextDrawShowForPlayer(playerid, topblack);
TextDrawShowForPlayer(playerid, bottomblack);
SendClientMessage(playerid, 0xFFFFFFAA, "~> Essa GameMode tem uma FilterScript feita por o_Hated!! <~");
contador++;
new contadorxd[128];
format(contadorxd, sizeof(contadorxd), "~> Parabйns! vocк й o player nъmero %d online no servidor <~",contador);
SendClientMessage(playerid,0xFFFFFFAA, contadorxd);
new string[48];
GetPlayerName(playerid, pName, sizeof(pName));
format(string, sizeof(string), "O player %s acabou de entrar no servidor", pName);
SendClientMessageToAll(0xAAAAAAAA, string);
reply[playerid] = 0;
return 1;
}
public OnPlayerDisconnect(playerid, reason)
{
new pName[MAX_PLAYER_NAME];
contador--;
GetPlayerName(playerid, pName, MAX_PLAYER_NAME);
dini_IntSet("/Players/Nivel.ini",PlayerName(playerid),GetPlayerScore(playerid));
dini_IntSet("/Players/Money.ini",PlayerName(playerid),GetPlayerMoney(playerid));
new string[48];
GetPlayerName(playerid, pName, sizeof(pName));
format(string, sizeof(string), "O player %s saio do servidor por vontade propria! ", pName);
SendClientMessageToAll(0xAAAAAAAA, string);
return 1;
}
public OnPlayerSpawn(playerid)
{
PlayerPlaySound(playerid,1098, 0.0, 0.0, 0.0);
TextDrawHideForPlayer(playerid, topblack);
TextDrawHideForPlayer(playerid, bottomblack);
return 1;
}
CMD:creditosfs(playerid, params[])
{
SendClientMessage( playerid, 0xFFFFFFAA, "••••••••••••••••••••••••••••••••[ Crйditos ]••••••••••••••••••••••••••••••••" );
SendClientMessage( playerid, 0xFFFFFFAA, "~ Crйditos а Hated , e а todos do Fуrum SAMP ;) !" );
return 1;
}
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
if (dialogid == Register)
{
new nombrejugador[MAX_PLAYER_NAME], archivo[256];
if (!strlen(inputtext)) return ShowPlayerDialog(playerid, Register, DIALOG_STYLE_INPUT, "Registro", "Bem Vindo ao COLOQUE O NOME DO SEU SERVIDOR! \nEscolha Sua Senha Preferia e Divirta-se\nEste GM й Apenas Para Estudos! !", "Registrar", "Cancelar");
if (!response) return ShowPlayerDialog(playerid, Register, DIALOG_STYLE_INPUT, "Registro", "Bem Vindo ao COLOQUE O NOME DO SEU SERVIDOR! \nEscolha Sua Senha Preferia e Divirta-se\nEste GM й Apenas Para Estudos! !", "Registrar", "Cancelar");
GetPlayerName(playerid, nombrejugador, sizeof(nombrejugador));
format(archivo, sizeof(archivo), "/Players/%s.ini", nombrejugador);
dini_Create(archivo);
dini_Set(archivo, "User", nombrejugador);
dini_Set(archivo, "Password", inputtext);
ShowPlayerDialog(playerid, Logged, DIALOG_STYLE_INPUT, "Logar", "Bem Vindo ao COLOQUE O NOME DO SEU SERVIDOR\nFaзa Seu Login e Seja Feliz No Nosso Servidor", "Logar", "Cancelar");
}
if (dialogid == Logged)
{
new nombrejugador[MAX_PLAYER_NAME], archivo[256], comprobante[256];
if (!strlen(inputtext)) return ShowPlayerDialog(playerid, Logged, DIALOG_STYLE_INPUT, "Registro", "Bem Vindo ao COLOQUE O NOME DO SEU SERVIDOR! \nEscolha Sua Senha Preferia e Divirta-se\nEste GM й Apenas Para Estudos! !", "Registrar", "Cancelar");
if (!response) return ShowPlayerDialog(playerid, Logged, DIALOG_STYLE_INPUT, "Logar", "Bem Vindo ao COLOQUE O NOME DO SEU SERVIDOR\nFaзa Seu Login e Seja Feliz No Nosso Servidor", "Logar", "Cancelar");
GetPlayerName(playerid, nombrejugador, sizeof(nombrejugador));
format(archivo, sizeof(archivo), "/Players/%s.ini", nombrejugador);
format(comprobante, sizeof(comprobante), "%s", dini_Get(archivo, "Password"));
if (!strcmp (inputtext, comprobante))
{
Login[playerid] = 1;
}
else
{
ShowPlayerDialog(playerid, Logged, DIALOG_STYLE_INPUT, "Logar", "Bem Vindo ao COLOQUE O NOME DO SEU SERVIDOR\nFaзa Seu Login e Seja Feliz No Nosso Servidor", "Logar", "Cancelar");
}
}
return 0;
}
new HatedhMsgs[1][256] =
{
"REGISTRO/LOGIN ~> Para ver os creditos pela FS -> /creditosfs <~"
};
forward HatedRANDOMmsgs();
public HatedRANDOMmsgs()
{
SendClientMessageToAll(0x33CCFFAA, HatedhMsgs[random(sizeof(HatedhMsgs))]);
return 1;
}
stock PlayerName(playerid)
{
new Name[MAX_PLAYERS];
GetPlayerName(playerid, Name, sizeof(Name));
return Name;
}
public ClearChatbox(playerid, lines)
{
if (IsPlayerConnected(playerid))
{
for(new i=0; i<lines; i++)
{
SendClientMessage(playerid, 0x33CCFFAA, " ");
}
}
return 1;
}
stock strrest(const string[], &index)
{
new length = strlen(string);
while ((index < length) && (string[index] <= ' '))
{
index++;
}
new offset = index;
new result[128];
while ((index < length) && ((index - offset) < (sizeof(result) - 1)))
{
result[index - offset] = string[index];
index++;
}
result[index - offset] = EOS;
return result;
}
stock GetPlayerID(const Name[])
{
for(new i; i<MAX_PLAYERS; i++)
{
if(IsPlayerConnected(i))
{
GetPlayerName(i, pName, sizeof(pName));
if(strcmp(Name, pName, true)==0)
{
return i;
}
}
}
return -1;
}
#include <DOF2>
public OnFilterScriptExit()
{
DOF2_Exit();
return 1;
}
#include <a_samp>
#include <zcmd>
#include <sscanf>
#include <DOF2>
#include <Dini>
#include <a_samp>
#include <Dini>
bem
estas sao as includes que vc declarou: pawn Код:
pawn Код:
e poderia ter feito uso da include DOF2 em vez da dini, pq DOF2 e mais eficiente e rapido que dini # nao leve a mal e apenas pra vc melhorar para a proxima.. |
#include <a_samp>
#include <zcmd> //Adicionando o ZCMD
#include <sscanf> //Adicionando o sscanf
#include <DOF2> //Adicionando o DOF2
Legal, sу nгo entendi o uso das text draw no login o.O
Mas parabйns, continue evoluindo |