17.12.2010, 02:16
------------------------------------------------------------------------------------------------------------------
FilterScript - Ultimate Login/Registro em Dialog/Box!
------------------------------------------------------------------------------------------------------------------
------------------------------------------------------------------------------------------------------------------
Introduзгo
------------------------------------------------------------------------------------------------------------------
Boa Noite Pessoal, venho aqui disponibilizar o FilterScript de Login/Registro em Box/Dialog da Equipe/Familia Ultimate, vou citar suas funзхes abaixo.
------------------------------------------------------------------------------------------------------------------
Funзхes
------------------------------------------------------------------------------------------------------------------
-Registro/Login em Dialog Box
-Comando /creditos com os crйditos do filterscript
-Ao clicar em um player no TAB aparecem suas informaзхes
-Quando um player sair, aparecesse se foi, kickado/banido, crash/perda de conexгo, ou /q.
-Quando um player logar, aparece [Quantidade de players ON/50]. Nota: Modifique o 50 para o valor mбximo de players do seu servidor.
-Salva e Carrega: Dinheiro,Skin,Score.
-Possibilidade de mudar o local do arquivo dos jogadores(#define LOCAL_JOGADORES "Players/%s.ini")
-Ao realizar o registro aparecesse para o jogador, seu nick registrado e sua senha registrada.
------------------------------------------------------------------------------------------------------------------
Screenshots
------------------------------------------------------------------------------------------------------------------
Informaзхes sobre o player(Clicar nele no TAB):
Sistema de Registro:
Sistema de Login:
Comando /creditos:
------------------------------------------------------------------------------------------------------------------
Cуdigo
------------------------------------------------------------------------------------------------------------------
------------------------------------------------------------------------------------------------------------------
Requerimentos
------------------------------------------------------------------------------------------------------------------
-Include dini
-Include dudb
------------------------------------------------------------------------------------------------------------------
Crйditos
------------------------------------------------------------------------------------------------------------------
Sistema: Giovanni_Ultimate
Includes: dini e dudb
Apoio: Famнlia/Equipe Ultimate.
FilterScript - Ultimate Login/Registro em Dialog/Box!
------------------------------------------------------------------------------------------------------------------
------------------------------------------------------------------------------------------------------------------
Introduзгo
------------------------------------------------------------------------------------------------------------------
Boa Noite Pessoal, venho aqui disponibilizar o FilterScript de Login/Registro em Box/Dialog da Equipe/Familia Ultimate, vou citar suas funзхes abaixo.
------------------------------------------------------------------------------------------------------------------
Funзхes
------------------------------------------------------------------------------------------------------------------
-Registro/Login em Dialog Box
-Comando /creditos com os crйditos do filterscript
-Ao clicar em um player no TAB aparecem suas informaзхes
-Quando um player sair, aparecesse se foi, kickado/banido, crash/perda de conexгo, ou /q.
-Quando um player logar, aparece [Quantidade de players ON/50]. Nota: Modifique o 50 para o valor mбximo de players do seu servidor.
-Salva e Carrega: Dinheiro,Skin,Score.
-Possibilidade de mudar o local do arquivo dos jogadores(#define LOCAL_JOGADORES "Players/%s.ini")
-Ao realizar o registro aparecesse para o jogador, seu nick registrado e sua senha registrada.
------------------------------------------------------------------------------------------------------------------
Screenshots
------------------------------------------------------------------------------------------------------------------
Informaзхes sobre o player(Clicar nele no TAB):
Sistema de Registro:
Sistema de Login:
Comando /creditos:
------------------------------------------------------------------------------------------------------------------
Cуdigo
------------------------------------------------------------------------------------------------------------------
Код:
#include <a_samp> #include <dini> #include <dudb> #pragma tabsize 0 #pragma unused ret_memcpy #define LOCAL_JOGADORES "Players/%s.ini" #define GOLD_COLOR 0xEEC900AA #define ERRO_COLOR 0xFF0000AA #define AVISO_COLOR 0xFF8C00AA enum pInfo { pSenha, pScore, pSkin, pNome, pDinheiro }; new Jogador[MAX_PLAYERS][pInfo]; new logado[MAX_PLAYERS]; new players; public OnFilterScriptInit() { print("\n--------------------------------------"); print(" FilterScript - Login/Registro Dialog"); print(" Por: Giovanni_Ultimate"); print("--------------------------------------\n"); return 1; } public OnPlayerConnect(playerid) { SendClientMessageToAll(GOLD_COLOR, "Esse GameMode usa o Login/Registro feito por Giovanni_Ultimate!"); SendClientMessageToAll(GOLD_COLOR, "Vocк pode retirar essas mensagens se desejar!"); SendClientMessageToAll(GOLD_COLOR, "Cheque o comando /creditos no filterscript!"); SendClientMessageToAll(GOLD_COLOR, "Se quiser usa-lo. Edite-o a seu gosto!"); new nome[MAX_PLAYER_NAME], arquivo[256], string[56]; players += 1; GetPlayerName(playerid,nome, sizeof(nome)); format(arquivo, sizeof(arquivo), LOCAL_JOGADORES, nome); format(string, sizeof(string), "%s connectou-se no servidor. [%d/50]", nome, players, MAX_PLAYERS); SendClientMessageToAll(AVISO_COLOR, string); if(dini_Exists(arquivo)) { ShowPlayerDialog(playerid, 2, DIALOG_STYLE_INPUT, "Logue-se!", "Bem-Vindo ao Filterscript \n Login/Register Dialog \n De Giovanni_Ultimate! \n Logue na sua conta colocando sua senha abaixo:","Logar", "Sair"); } else { ShowPlayerDialog(playerid, 1, DIALOG_STYLE_INPUT, "Registre-se", "Bem-Vindo ao Filterscript \n Login/Register Dialog \n De Giovanni_Ultimate! \n Registre sua conta colocando a senha abaixo:", "Registrar", "Sair"); } return 1; } public OnPlayerDisconnect(playerid, reason) { new nome[MAX_PLAYER_NAME], arquivo[256], string[64]; players -= 1; GetPlayerName(playerid, nome, sizeof(nome)); switch(reason) { case 0: format(string, sizeof(string), "%s saiu do servidor(Crash/Conexгo) [%d/50]", nome, players, MAX_PLAYERS); case 1: format(string, sizeof(string), "%s saiu do servidor(/q) [%d/50]", nome, players, MAX_PLAYERS); case 2: format(string, sizeof(string), "%s saiu do servidor(Kickado/Banido) [%d/50]", nome, players, MAX_PLAYERS); } SendClientMessageToAll(AVISO_COLOR, string); format(arquivo, sizeof(arquivo), LOCAL_JOGADORES, nome); dini_IntSet(arquivo, "Score", Jogador[playerid][pScore]); dini_IntSet(arquivo, "Dinheiro", Jogador[playerid][pDinheiro]); dini_IntSet(arquivo, "Skin", Jogador[playerid][pSkin]); dini_IntSet(arquivo, "Senha", Jogador[playerid][pSenha]); return 1; } public OnPlayerCommandText(playerid, cmdtext[]) { if(strcmp("/creditos", cmdtext, true, 10) == 0) { SendClientMessage(playerid, GOLD_COLOR, "Creditos - Sistema: Giovanni_Ultimate"); SendClientMessage(playerid, GOLD_COLOR, "Creditos - Includes: Dini, Dudb"); SendClientMessage(playerid, GOLD_COLOR, "Creditos - Familia e Apoio: Ultimate"); return 1; } return 0; } public OnPlayerRequestSpawn(playerid) { if(logado[playerid] == 0) { SendClientMessage(playerid, ERRO_COLOR, "Vocк foi kickado por clicar em spawn antes de logar!"); Kick(playerid); } return 1; } public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[]) { if(dialogid == 1) { new nome[MAX_PLAYER_NAME], arquivo[256], string[128]; GetPlayerName(playerid, nome, sizeof(nome)); format(arquivo, sizeof(arquivo), LOCAL_JOGADORES, nome); if(!response) Kick(playerid); if(!strlen(inputtext)) return ShowPlayerDialog(playerid, 1, DIALOG_STYLE_INPUT, "Registre-se", "Bem-Vindo ao Filterscript \n Login/Register Dialog \n De Giovanni_Ultimate! \n Registre sua conta colocando a senha abaixo:", "Registrar", "Sair"); dini_Create(arquivo); dini_IntSet(arquivo, "Senha", udb_hash(inputtext)); dini_IntSet(arquivo, "Dinheiro", Jogador[playerid][pDinheiro] = 100); dini_IntSet(arquivo, "Skin", Jogador[playerid][pSkin] = 0); dini_IntSet(arquivo, "Score", Jogador[playerid][pScore] = 0); format(string, sizeof(string), "Vocк foi logado automaticamente. Nick: %s. Senha: %s", nome, inputtext); Jogador[playerid][pSenha] = dini_Int(arquivo, "Senha"); SendClientMessage(playerid, AVISO_COLOR, string); logado[playerid] = 1; } if(dialogid == 2) { new nome[MAX_PLAYER_NAME], arquivo[256]; GetPlayerName(playerid, nome, sizeof(nome)); format(arquivo, sizeof(arquivo), LOCAL_JOGADORES, nome); if(!response) return Kick(playerid); if(!strlen(inputtext)) return ShowPlayerDialog(playerid, 2, DIALOG_STYLE_INPUT, "Logue-se!", "Bem-Vindo ao Filterscript \n Login/Register Dialog \n De Giovanni_Ultimate! \n Logue na sua conta colocando sua senha abaixo:","Logar", "Sair"); new senha; senha = dini_Int(arquivo, "Senha") if(udb_hash(inputtext) != senha) { SendClientMessage(playerid, ERRO_COLOR, "[Erro] Vocк errou a senha. Tente novamente!"); ShowPlayerDialog(playerid, 2, DIALOG_STYLE_INPUT, "Logue-se!", "Bem-Vindo ao Filterscript \n Login/Register Dialog \n De Giovanni_Ultimate! \n Logue na sua conta colocando sua senha abaixo:","Logar", "Sair"); } if(udb_hash(inputtext) == senha) { logado[playerid] = 1; printf("%s logou no server.", nome); Jogador[playerid][pDinheiro] = dini_Int(arquivo, "Dinheiro"); GivePlayerMoney(playerid, Jogador[playerid][pDinheiro]); Jogador[playerid][pScore] = dini_Int(arquivo, "Score"); Jogador[playerid][pSkin] = dini_Int(arquivo, "Skin"); SetPlayerSkin(playerid, Jogador[playerid][pSkin]); Jogador[playerid][pSenha] = dini_Int(arquivo, "Senha"); SendClientMessage(playerid, AVISO_COLOR, "[Aviso] Logado com sucesso!"); } } return 1; } public OnPlayerClickPlayer(playerid, clickedplayerid, source) { new info[512],info0[70],info1[600],info2[70],info3[70],info4[512], nome[MAX_PLAYER_NAME]; GetPlayerName(clickedplayerid, nome, sizeof(nome)); Jogador[clickedplayerid][pSkin] = GetPlayerSkin(clickedplayerid); Jogador[clickedplayerid][pScore] = GetPlayerScore(clickedplayerid); Jogador[clickedplayerid][pDinheiro] = GetPlayerMoney(clickedplayerid); format(info0, 70, "Nome: %s", nome); format(info1, 70, "Dinheiro: %d", Jogador[clickedplayerid][pDinheiro]); format(info2, 70, "Skin: %d", Jogador[clickedplayerid][pSkin]); format(info3, 70, "Score: %d", Jogador[clickedplayerid][pScore]); format(info4, 70, "%s", nome); format(info, 70, "%s\n%s\n%s\n%s",info0,info1,info2,info3); ShowPlayerDialog(playerid, 13444, DIALOG_STYLE_MSGBOX, info4, info, "Ok","Sair"); return 1; }
Requerimentos
------------------------------------------------------------------------------------------------------------------
-Include dini
-Include dudb
------------------------------------------------------------------------------------------------------------------
Crйditos
------------------------------------------------------------------------------------------------------------------
Sistema: Giovanni_Ultimate
Includes: dini e dudb
Apoio: Famнlia/Equipe Ultimate.