02.09.2012, 21:38
Cara ta certo olha aqui
pawn Код:
#include <a_samp>
#include <zcmd>
#include <sscanf2>
#include <dof2>
#define Vermelho 0xFF0000FF
#define Azul 0x00BFFFFF
#define Verde 0x00FF00FF
#define Amarelo 0xF2FF00FF
#define contas "gAdmin/Contas/%s.ini"
#define MAXAVISO 3
#define MAXLEVEL 5
#define DIALOG_REGISTER 1
#define DIALOG_LOGIN 2
//--------------------
enum pInfo
{
Admin,
}
new PlayerInfo[MAX_PLAYERS][pInfo];
//--------------------
//--------------------
public OnFilterScriptInit()
{
print("\n--------------------------------------");
print(" Sistema de Administraзгo - Carregado");
print("--------------------------------------\n");
return 1;
}
//==============================================================================
public OnPlayerConnect(playerid)
{
PlayerInfo[playerid][Admin] = 0;
//Login e Registro
new nome[90];
format(nome,sizeof(nome),contas,GetPlayerNameEx(playerid));
if(DOF2_FileExists(nome))
{
ShowPlayerDialog(playerid, DIALOG_LOGIN, DIALOG_STYLE_INPUT,"Logando-se","{FFFFFF}Bem vindo novamente. para pode jogar digite sua senha abaixo:","Logar","Sair");
}
else
{
ShowPlayerDialog(playerid, DIALOG_REGISTER, DIALOG_STYLE_INPUT,"Registrando-se","{FFFFFF}Bem vindo ao servidor, para pode jogar registre\numa conta e assim tambйm seus dados serгo salvos.","Registrar","Cancelar");
}
return 1;
}
//------------------------------------------------------------------------------
public OnPlayerDisconnect(playerid, reason)
{
new file[80];
DOF2_SetInt(file,"Admin",PlayerInfo[playerid][Admin]);
DOF2_SaveFile();
return 1;
}
//------------------------------------------------------------------------------
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
switch(dialogid)
{
case DIALOG_REGISTER:
{
if(!response) Kick(playerid);
if(!strlen(inputtext)) return ShowPlayerDialog(playerid, DIALOG_REGISTER, DIALOG_STYLE_INPUT,"Registrando-se","{FFFFFF}Bem vindo ao servidor, para pode jogar registre\numa conta e assim tambйm seus dados serгo salvos.","Registrar","Sair");
if(response)
{
new file[80];
format(file,sizeof(file),contas,GetPlayerNameEx(playerid));
DOF2_CreateFile(file, inputtext);
DOF2_SetInt(file,"Admin", 0);
DOF2_SaveFile();
}
}
case DIALOG_LOGIN:
{
if(!response) Kick(playerid);
if(response)
{
new file[80];
format(file,sizeof(file),contas,GetPlayerNameEx(playerid));
if(DOF2_FileExists(file))
{
if(DOF2_CheckLogin(file,inputtext))
{
PlayerInfo[playerid][Admin] = DOF2_GetInt(file,"Admin");
DOF2_SaveFile();
new string[50];
format(string,sizeof(string),"CONTA: Logado com sucesso (Level:%d)",PlayerInfo[playerid][Admin]);
SendClientMessage(playerid,Verde,string);
return 1;
}
else
{
ShowPlayerDialog(playerid, DIALOG_LOGIN, DIALOG_STYLE_INPUT,"Senha Incorreta","{FFFFFF}Vocк digitou a senha errada para essa conta!","Logar","Cancelar");
return 1;
}
}
}
}
}
return 1;
}
//----------------------------- Comandos de Admin ------------------------------
//------------------------------------------------------------------------------
public OnFilterScriptExit()
{
print("\n--------------------------------------");
print(" Sistema de Administraзгo - Descarregado");
print("--------------------------------------\n");
DOF2_Exit();
return 1;
}
//------------------------------------------------------------------------------
stock GetPlayerNameEx(playerid)
{
new N[25];
GetPlayerName(playerid,N,sizeof(N));
return N;
}
//------------------------------------------------------------------------------
stock Load_Player_Stats(playerid)
{
PlayerInfo[playerid][Admin] = DOF2_GetInt(USER_FILE(playerid),"Admin");
}
//------------------------------------------------------------------------------
stock SetPlayerMoney(playerid,money)
{
ResetPlayerMoney(playerid);
GivePlayerMoney(playerid,money);
}
/*------------------------------------------------------------------------------
||||||| || ||||||||||||
|| || || || ||
|||||| || || || ||
|| || || || ||
|| || || || ||
|| || || || ||
*/