13.02.2010, 14:10
Pessoal estou com problemas quando o player desloga e logar de salvar e setar os dados de algumas coisas tipo udb de posiзгo etc. vou mostrar meu logarplayer e o playerdisconect.
Code:
public LogarPlayer(playerid) //Quando Logar pega os dados logando
{
GivePlayerMoney(playerid, udb_getAccState(PlayerName(playerid)) - GetPlayerMoney(playerid));
Profissao[playerid] = udb_getProf(PlayerName(playerid));
Petrol[playerid] = udb_getGasoline(PlayerName(playerid));
Level[playerid] = pap_CarregarInt(playerid, "level");
SendClientMessage(playerid, COLOR_GREEN, "Logado");
SendClientMessage(playerid, COLOR_GREEN, "Dinheiro Carregado.");
SendClientMessage(playerid, COLOR_GREEN, "Primeramente digite /profs e /ajuda, ou pessa ajuda a um ADMIN");
if(udb_getPrisao(PlayerName(playerid)) == 1 || Procurados[playerid] == 1){
Procurados[playerid] = 0;
new cela;
Presos[playerid] = 1;
cela = random(4);
SetPlayerFacingAngle(playerid,0);
if(cela == 1){
SetPlayerPos(playerid,227.6684,110.1895,999.0156);
SetPlayerInterior(playerid,10);
}
else if(cela == 2){
SetPlayerPos(playerid,223.0134,110.3193,999.0156);
SetPlayerInterior(playerid,10);
}
else if(cela == 3){
SetPlayerPos(playerid,219.3730,110.2772,999.0156);
SetPlayerInterior(playerid,10);
}
else if(cela == 4){
SetPlayerPos(playerid,214.9654,109.4626,999.0156);
SetPlayerInterior(playerid,10);
}
SendClientMessage(playerid,COLOR_RED,"Vocк deve ter cometido algum crime, por isso foi preso.");
SendClientMessage(playerid,COLOR_RED,"Para sair mais cedo da prisгo, vocк pode pagar a fianзa de $1500,");
SendClientMessage(playerid,COLOR_RED,"escrevendo /fianca.");
}
else{
SpawnPlayer(playerid);
}
}
Code:
public OnPlayerDisconnect(playerid, reason)
{
if (PLAYERLIST_authed[playerid] == 1) {
// Was loggedin, so save the data!
udb_setAccState(PlayerName(playerid),GetPlayerMoney(playerid));//Dinheiro
new Float:health;
Presos[playerid] = 0; //obs: Deixa o cara livre?
Procurados[playerid] = 0; //obs: o cara procurado fica livre?
GetPlayerHealth(playerid, health); //Vida Pega a atual vida do personagem
udb_setHealth(PlayerName(playerid), health); //Seta a vida no SAVE ??? talves
udb_setGasoline(PlayerName(playerid), Petrol[playerid]);//Seta Gasolina
udb_setProf(PlayerName(playerid), Profissao[playerid]);//Seta profissao?
pap_SalvarInt(playerid, "level", Level[playerid]); // salvar level final player.txt
PLAYERLIST_authed[playerid] = 0; //zera algo que nгo sei o que й sera o ID?
TextDrawHideForPlayer(playerid, SPClock); // linha adicionada para o tempo real.
printf("Jogador %s (ID: %d) deixou o servidor. Seus dados foram salvos com sucesso",PlayerName(playerid),playerid);
printf("Jogador %s (ID: %d) saiu do server. OnPlayerDisconnect processou",PlayerName(playerid),playerid);
}
else {
printf("Jogador %s (ID: %d) deixou o servidor sem se registrar/logar",PlayerName(playerid),playerid);
return 0;
}
return 1;
}
Bem eu sou bem leigo entгo seria o sequinte quais as linhas de comando corretas pra por no disconnect e no logarplayer?
Obs: Meu GM й RPG mas й similar a quase todos de salvar e pegar dados de udb,s
Desde ja agradeзo Muito quem souber e puder me falar



se vc puder me ajudar agradeceria o logarplayer e o disconnect esta ali acima mas nгo sei as linhas corretas e o que escrever talvez se eu souber como eu faзo o dinheiro com pap e mais algum deles tipo salvar skin eu consiga atravez dos exemplos fazer nos outros, e eu nгo sei o limite do PAP e como ficariam os arquivos, entгo se puder ajudar agradeзo, abraзos