Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- //Creditos Pedro xD~ editar
- //Drakins pelo sistema de level exp
- #include <a_samp>
- #include <dudb>
- #include <dini>
- new Text:Textdraw1[MAX_PLAYERS];
- new Text:Textdraw0[MAX_PLAYERS];
- new Level[MAX_PLAYERS];
- new Exp[MAX_PLAYERS];
- #define WELCOME3 5
- #define WELCOME2 1
- #define WELCOME1 2
- #define Register 3
- #define Login 4
- #define COLOR_GREEN 0x00FF00FF
- #define COLOR_RED 0xFF0000FF
- #define COLOR_GREEN2 0x18FF18FF
- #define VERDE 0x33AA33AA
- new Real[MAX_PLAYERS];
- new Text:TextReal[MAX_PLAYERS];
- forward GivePlayerReal(playerid, real);
- forward GetPlayerReal(playerid);
- forward ResetPlayerReal(playerid);
- enum pInfo
- {
- Deaths,
- Kills,
- ServerTime
- }
- new PlayerName[MAX_PLAYER_NAME];
- new PlayerInfo[MAX_PLAYERS][pInfo];
- new IsLogged[MAX_PLAYERS];
- new TimeTimer;
- public OnPlayerSpawn(playerid)
- {
- SetTimerEx("Timer",1000*60,true,"i",playerid);
- SetTimer("ActualizarTextDraws",true,1000*60);
- ///////////////////////// Level ////////////////////////////////////////////////
- Textdraw0[playerid] = TextDrawCreate(551.000000, 291.000000, "Level: 0");
- TextDrawBackgroundColor(Textdraw0[playerid], 255);
- TextDrawFont(Textdraw0[playerid], 3);
- TextDrawLetterSize(Textdraw0[playerid], 0.500000, 1.000000);
- TextDrawColor(Textdraw0[playerid], 65535);
- TextDrawSetOutline(Textdraw0[playerid], 0);
- TextDrawSetProportional(Textdraw0[playerid], 1);
- TextDrawSetShadow(Textdraw0[playerid], 1);
- //////////////////////////Exp//////////////////////////////////////////////
- Textdraw1[playerid] = TextDrawCreate(551.000000, 268.000000, "Exp: 0/5");
- TextDrawBackgroundColor(Textdraw1[playerid], 255);
- TextDrawFont(Textdraw1[playerid], 1);
- TextDrawLetterSize(Textdraw1[playerid], 0.280000, 2.100000);
- TextDrawColor(Textdraw1[playerid], -16776961);
- TextDrawSetOutline(Textdraw1[playerid], 0);
- TextDrawSetProportional(Textdraw1[playerid], 1);
- TextDrawSetShadow(Textdraw1[playerid], 1);
- return 1;
- }
- forward ActualizarTextDraws();
- public ActualizarTextDraws()
- {
- new String[100];
- for(new playerid = 0; playerid < MAX_PLAYERS; playerid ++)
- {
- if(IsPlayerConnected(playerid))
- {
- format(String, sizeof(String), "Level: %d", Level[playerid]);
- TextDrawSetString(Textdraw0[playerid], String);
- TextDrawShowForPlayer(playerid, Textdraw0[playerid]);
- format(String, sizeof(String), "Exp: %d", Exp[playerid]);
- TextDrawSetString(Textdraw1[playerid], String);
- TextDrawShowForPlayer(playerid, Textdraw1[playerid]);
- }
- }
- }
- public OnPlayerConnect(playerid)
- {
- TogglePlayerSpectating(playerid, 1);
- IsLogged[playerid] = 0;
- new file[128], string[128];
- new name[MAX_PLAYER_NAME];
- GetPlayerName(playerid, name, sizeof(name));
- format(file,sizeof(file),"/Contas/%s.ini",name);
- if(!fexist(file)) {
- ShowPlayerDialog(playerid, WELCOME1, DIALOG_STYLE_MSGBOX, "Bem Vindo Ao Rs Gang Wars!", string, "Logar!", "Registrar");
- }
- if(fexist(file)) {
- ShowPlayerDialog(playerid, WELCOME2, DIALOG_STYLE_MSGBOX, "Bem Vindo Ao Rs Gang Wars!", string, "Logar!", "Registrar");
- }
- return 1;
- }
- public OnPlayerDisconnect(playerid, reason)
- {
- new file[128];
- new name[MAX_PLAYER_NAME];
- GetPlayerName(playerid, name, sizeof(name));
- format(file,sizeof(file),"/Contas/%s.ini",name);
- if(fexist(file)) {
- dini_IntSet(file,"Score", GetPlayerScore(playerid));
- dini_IntSet(file,"Money", GetPlayerMoney(playerid));
- dini_IntSet(file,"Real", GetPlayerReal(playerid));
- dini_IntSet(file,"Deaths", PlayerInfo[playerid][Deaths]);
- dini_IntSet(file,"Kills", PlayerInfo[playerid][Kills]);
- dini_IntSet(file,"ServerTime", PlayerInfo[playerid][ServerTime]);
- dini_IntSet(file,"Level",Level[playerid]);
- dini_IntSet(file,"Exp",Exp[playerid]);
- }
- IsLogged[playerid] = 0;
- KillTimer(TimeTimer);
- return 1;
- }
- public OnPlayerDeath(playerid, killerid)
- {
- PlayerInfo[playerid][Deaths] ++;
- PlayerInfo[killerid][Kills] ++;
- Exp[killerid]++;
- if(Exp[playerid] == 5)
- {
- Level[playerid]++;
- }
- return 1;
- }
- public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
- {
- if(dialogid == WELCOME2) {
- if(response) {
- ShowPlayerDialog(playerid,WELCOME2,DIALOG_STYLE_MSGBOX,"Erro","Você ja é registrado!","Cancelar","Logar");
- }
- else {
- TogglePlayerSpectating(playerid, 1);
- IsLogged[playerid] = 0;
- new file[128], string[128];
- new name[MAX_PLAYER_NAME];
- GetPlayerName(playerid, name, sizeof(name));
- format(file,sizeof(file),"/Contas/%s.ini",name);
- if(fexist(file)) {
- format(string, sizeof string, "Bem Vindo! %s! \nSua conta foi Registrada! \n\nPor favor logue na sua conta!!", name);
- ShowPlayerDialog(playerid, Login, DIALOG_STYLE_INPUT, "Conta", string, "Logar", "Cancelar.");
- }
- }
- }
- if(dialogid == WELCOME1) {
- if(response) {
- ShowPlayerDialog(playerid,WELCOME1,DIALOG_STYLE_MSGBOX,"Erro","Sua conta nao é registrada!","Cancelar","Registrar");
- }
- else {
- TogglePlayerSpectating(playerid, 1);
- IsLogged[playerid] = 0;
- new file[128], string[128];
- new name[MAX_PLAYER_NAME];
- GetPlayerName(playerid, name, sizeof(name));
- format(file,sizeof(file),"/Contas/%s.ini",name);
- if(!fexist(file)) {
- format(string, sizeof string, "Bem Vindo! %s! \nSua conta nao esta registrada! \n\nPor favor, registre-se!!", name);
- ShowPlayerDialog(playerid, Register, DIALOG_STYLE_MSGBOX, "Conta", string, "Registrar", "Cancelar.");
- }
- }
- }
- if(dialogid == Register) {
- if(response) {
- new file[128];
- new string[128];
- new name[MAX_PLAYER_NAME];
- GetPlayerName(playerid, name, sizeof(name));
- if(strlen(inputtext) == 0) {
- format(string, sizeof string, "Por favor, coloque sua senha! \n\nBem Vindo! %s! \nSua conta nao esta registrada! \n\nPor favor registre-se!", name);
- ShowPlayerDialog(playerid, Register, DIALOG_STYLE_INPUT, "Conta", string, "Registrar!", "Cancelar.");
- return 0;
- }
- format(file,sizeof(file),"/Contas/%s.ini",name);
- if(!fexist(file)) {
- dini_Create(file);
- dini_IntSet(file,"Password", udb_hash(inputtext));
- dini_IntSet(file,"Score", GetPlayerScore(playerid));
- dini_IntSet(file,"Money", GetPlayerMoney(playerid));
- dini_IntSet(file,"Real", GetPlayerReal(playerid));
- dini_IntSet(file,"Deaths", PlayerInfo[playerid][Deaths]);
- dini_IntSet(file,"Kills", PlayerInfo[playerid][Kills]);
- dini_IntSet(file,"ServerTime", PlayerInfo[playerid][ServerTime]);
- dini_IntSet(file,"Level", Level[playerid]);
- dini_IntSet(file,"Exp", Exp[playerid]);
- format(string, sizeof string, "Conta registrada! \n\nBem Vindo! %s! \nSua conta esta registrada! \n\nPor favor Logue!", name);
- ShowPlayerDialog(playerid, Login, DIALOG_STYLE_INPUT, "Conta", string, "Logar!", "Cancelar.");
- PlayerPlaySound(playerid,1057,0.0,0.0,0.0);
- GetPlayerName(playerid, name, sizeof(name));
- printf("%s Registrou a conta!!", name);
- }
- }
- }
- if(dialogid == Login) {
- if(response) {
- new file[128];
- new string[128];
- if(strlen(inputtext) == 0) {
- GetPlayerName(playerid, PlayerName, sizeof PlayerName);
- format(string, sizeof string, "Por favor coloque sua senha! \n\nBem Vindo! %s! \nSua conta esta registrada \n\nPor favor Logue!", PlayerName);
- ShowPlayerDialog(playerid, Login, DIALOG_STYLE_INPUT, "Conta", string, "Logar!", "Cancelar.");
- return 0;
- }
- new name[MAX_PLAYER_NAME];
- GetPlayerName(playerid, name, sizeof(name));
- format(file,sizeof(file),"/Contas/%s.ini",name);
- if(fexist(file)) {
- new password = dini_Int(file, "Password");
- if(udb_hash(inputtext) != password) {
- SendClientMessage(playerid, COLOR_RED, "Erro - Senha incorreta!");
- }
- else {
- IsLogged[playerid] = 1;
- ResetPlayerMoney(playerid);
- SetPlayerScore(playerid, dini_Int(file,"Score"));
- GivePlayerMoney(playerid, dini_Int(file,"Money"));
- new real = dini_Int(file,"Real");
- GivePlayerReal(playerid, real);
- PlayerInfo[playerid][Deaths] = dini_Int(file,"Deaths");
- PlayerInfo[playerid][Kills] = dini_Int(file,"Kills");
- PlayerInfo[playerid][ServerTime] = dini_Int(file,"ServerTime");
- Level[playerid] = dini_Int(file, "Level");
- Exp[playerid] = dini_Int(file,"Exp");
- TimeTimer = SetTimerEx("TimeOnServer", 1000, 1, "i", playerid);
- SendClientMessage(playerid, COLOR_GREEN, "Sucesso! ~ Você foi logado!");
- TogglePlayerSpectating(playerid, 0);
- new pName[MAX_PLAYER_NAME];
- GetPlayerName(playerid, pName, sizeof(pName));
- format(string, sizeof(string), "[SERVER] %s Logou com sucesso!", name );
- SendClientMessageToAll(COLOR_GREEN2, string);
- }
- }
- }
- }
- return 0;
- }
- forward TimeOnServer(playerid);
- public TimeOnServer(playerid)
- {
- PlayerInfo[playerid][ServerTime] ++;
- }
- stock GivePlayerReal(playerid, real)
- {
- TextDrawHideForPlayer(playerid, TextReal[playerid]);
- Real[playerid] += real;
- new str[256];
- format(str, 256, "~g~R$~r~:~w~%d", Real[playerid]);
- TextReal[playerid] = TextDrawCreate(499.600,101.0000,str);
- TextDrawColor(TextReal[playerid], VERDE);
- TextDrawLetterSize(TextReal[playerid], 0.575, 2.1);
- TextDrawFont(TextReal[playerid], 3);
- TextDrawBackgroundColor(TextReal[playerid], 0x00000AA);
- TextDrawSetOutline(TextReal[playerid], 2);
- TextDrawShowForPlayer(playerid,TextReal[playerid]);
- }
- public GetPlayerReal(playerid)
- {
- return Real[playerid];
- }
- public ResetPlayerReal(playerid)
- {
- Real[playerid] = 0;
- return Real[playerid];
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement