15.01.2012, 01:37
Galera quando o player loga da server close Connection ajuda ai plz...
PHP Code:
#include <a_samp>
#include <dudb>
#include <dini>
//================== DEFINES ============================
#define Registro 0
#define Login 1
//==================== NEWS =============================
new arquivo[128];
new nome[MAX_PLAYER_NAME];
public OnFilterScriptInit()
{
print("\n--------------------------------------");
print(" Blank Filterscript by your name here");
print("--------------------------------------\n");
return 1;
}
main()
{
print("\n----------------------------------");
print(" Blank Gamemode by your name here");
print("----------------------------------\n");
}
public OnGameModeInit()
{
SetGameModeText("Blank Script");
AddPlayerClass(0, 1958.3783, 1343.1572, 15.3746, 269.1425, 0, 0, 0, 0, 0, 0);
return 1;
}
public OnGameModeExit()
{
return 1;
}
public OnPlayerRequestClass(playerid, classid)
{
SetPlayerPos(playerid, 1958.3783, 1343.1572, 15.3746);
SetPlayerCameraPos(playerid, 1958.3783, 1343.1572, 15.3746);
SetPlayerCameraLookAt(playerid, 1958.3783, 1343.1572, 15.3746);
return 1;
}
public OnPlayerConnect(playerid)
{
new string[128];
GetPlayerName(playerid, nome, sizeof(nome));
format(arquivo,sizeof(arquivo),"Contas/%s.ini",nome);
if(!fexist(arquivo))
{
format(string, sizeof string, "Vocк Nгo Possui Registro\n\nNome: %s\n\nInsira uma Senha para se Registrar", nome);
ShowPlayerDialog(playerid, Registro, DIALOG_STYLE_INPUT, "-(Servidor)-", string, "Registrar", "Sair");
}
if(fexist(arquivo))
{
format(string, sizeof string, "Vocк jб Possui Registro\n\nNome: %s\n\nInsira sua senha para que possa logar:", nome);
ShowPlayerDialog(playerid, Login, DIALOG_STYLE_INPUT, "-(Servidor)-", string, "Logar", "Sair");
}
return 1;
}
public OnPlayerDisconnect(playerid, reason)
{
GetPlayerName(playerid, nome, sizeof(nome));
format(arquivo,sizeof(arquivo),"Contas/%s.ini",nome);
if(fexist(arquivo))
{
dini_IntSet(arquivo,"Dinheiro",GetPlayerMoney(playerid));
dini_IntSet(arquivo,"Level", GetPlayerScore(playerid));
dini_IntSet(arquivo,"Skin", GetPlayerSkin(playerid));
dini_IntSet(arquivo,"LevelProcurado", GetPlayerWantedLevel(playerid));
}
return 1;
}
public OnPlayerSpawn(playerid)
{
SetPlayerSkin(playerid, dini_Int(arquivo,"Skin"));
return 1;
}
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
new string[128];
if(dialogid == Registro)
{
if(response)
{
GetPlayerName(playerid, nome, sizeof(nome));
if(strlen(inputtext) == 0)
{
format(string, sizeof string, "Vocк Nгo Possui Registro\n\nNome: %s\n\nInsira uma Senha para se Registrar", nome);
ShowPlayerDialog(playerid, Registro, DIALOG_STYLE_INPUT, "-(Servidor)-", string, "Registrar", "Sair");
return 0;
}
format(arquivo,sizeof(arquivo),"Contas/%s.ini",nome);
if(!fexist(arquivo))
{
dini_Create(arquivo);
dini_IntSet(arquivo,"Password", udb_hash(inputtext));
format(string, sizeof string, "Vocк jб Possui Registro\n\nNome: %s\n\nInsira sua senha para que possa logar:", nome);
ShowPlayerDialog(playerid, Login, DIALOG_STYLE_INPUT, "-(Servidor)-", string, "Logar", "Sair");
PlayerPlaySound(playerid,1057,0.0,0.0,0.0);
GetPlayerName(playerid, nome, sizeof(nome));
printf("[Registro] %s se Registrou-se", nome);
}
}
else
{
SendClientMessage(playerid, 0xFF0000FF, "Vocк saiu do Servidor sem Se Registrar !!");
SendClientMessage(playerid, 0x80FF00AA, "Volte Sempre...");
Kick(playerid);
}
}
if(dialogid == Login)
{
if(response)
{
if(strlen(inputtext) == 0)
{
GetPlayerName(playerid, nome, sizeof(nome));
format(string, sizeof string, "Vocк jб Possui Registro\n\nNome: %s\n\nInsira sua senha para que possa logar:", nome);
ShowPlayerDialog(playerid, Login, DIALOG_STYLE_INPUT, "-(Servidor)-", string, "Logar", "Sair");
return 0;
}
GetPlayerName(playerid, nome, sizeof(nome));
format(arquivo,sizeof(arquivo),"Contas/%s.ini",nome);
if(fexist(arquivo))
{
new password = dini_Int(arquivo, "Password");
if(udb_hash(inputtext) != password)
{
GetPlayerName(playerid, nome, sizeof(nome));
format(string, sizeof string, "Vocк jб Possui Registro\n\nNome: %s\n\nInsira sua senha para que possa logar:", nome);
ShowPlayerDialog(playerid, Login, DIALOG_STYLE_INPUT, "-(Servidor)-", string, "Logar", "Sair");
SendClientMessage(playerid, 0xFF0000FF, "-(Servidor)- Senha Incorreta. Tente Novamente");
return 1;
}
if(udb_hash(inputtext) == password)
{
SpawnPlayer(playerid);
SetPlayerScore(playerid, dini_Int(arquivo,"Level"));
SetPlayerMoney(playerid, dini_Int(arquivo,"Dinheiro"));
SetPlayerWantedLevel(playerid, dini_Int(arquivo,"LevelProcurado"));
GetPlayerName(playerid, nome, sizeof(nome));
printf("[Login] %s Logou no Servidor", nome);
return 1;
}
}
}
else
{
SendClientMessage(playerid, 0xFF0000FF, "Vocк saiu do Servidor sem Se Logar !!");
SendClientMessage(playerid, 0x80FF00AA, "Volte Sempre...");
Kick(playerid);
}
}
return 1;
}
public OnPlayerDeath(playerid, killerid, reason)
{
return 1;
}
public OnVehicleSpawn(vehicleid)
{
return 1;
}
public OnVehicleDeath(vehicleid, killerid)
{
return 1;
}
public OnPlayerText(playerid, text[])
{
return 1;
}
public OnPlayerCommandText(playerid, cmdtext[])
{
if (strcmp("/mycommand", cmdtext, true, 10) == 0)
{
// Do something here
return 1;
}
return 0;
}
public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)
{
return 1;
}
public OnPlayerExitVehicle(playerid, vehicleid)
{
return 1;
}
public OnPlayerStateChange(playerid, newstate, oldstate)
{
return 1;
}
public OnPlayerEnterCheckpoint(playerid)
{
return 1;
}
public OnPlayerLeaveCheckpoint(playerid)
{
return 1;
}
public OnPlayerEnterRaceCheckpoint(playerid)
{
return 1;
}
public OnPlayerLeaveRaceCheckpoint(playerid)
{
return 1;
}
public OnRconCommand(cmd[])
{
return 1;
}
public OnPlayerRequestSpawn(playerid)
{
return 1;
}
public OnObjectMoved(objectid)
{
return 1;
}
public OnPlayerObjectMoved(playerid, objectid)
{
return 1;
}
public OnPlayerPickUpPickup(playerid, pickupid)
{
return 1;
}
public OnVehicleMod(playerid, vehicleid, componentid)
{
return 1;
}
public OnVehiclePaintjob(playerid, vehicleid, paintjobid)
{
return 1;
}
public OnVehicleRespray(playerid, vehicleid, color1, color2)
{
return 1;
}
public OnPlayerSelectedMenuRow(playerid, row)
{
return 1;
}
public OnPlayerExitedMenu(playerid)
{
return 1;
}
public OnPlayerInteriorChange(playerid, newinteriorid, oldinteriorid)
{
return 1;
}
public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
{
return 1;
}
public OnRconLoginAttempt(ip[], password[], success)
{
return 1;
}
public OnPlayerUpdate(playerid)
{
return 1;
}
public OnPlayerStreamIn(playerid, forplayerid)
{
return 1;
}
public OnPlayerStreamOut(playerid, forplayerid)
{
return 1;
}
public OnVehicleStreamIn(vehicleid, forplayerid)
{
return 1;
}
public OnVehicleStreamOut(vehicleid, forplayerid)
{
return 1;
}
public OnPlayerClickPlayer(playerid, clickedplayerid, source)
{
return 1;
}