[Dъvida] Melhor mйtodo para salvar posiзхes e outros. -
xyu3xx - 16.09.2010
Se eu quero salvar por exemplo a posiзгo de um jogador no jogo, eu faзo isso
Veja abaixo
Код:
public OnPlayerDisconnect(playerid, reason) {
GetPlayerHealth(playerid, playerInfo[playerid][pVida]); // Me retorna 0.000 porque o jogador jб desconectou
playerInfo[playerid][pDinheiro] = GetPlayerMoney(playerid); // Aqui me retorna certinho
GetPlayerPos(playerid, playerInfo[playerid][pPosX], playerInfo[playerid][pPosY], playerInfo[playerid][pPosZ]); // Retorna tudo 0.000
playerInfo[playerid][pSkin] = GetPlayerSkin(playerid); // Retorna 0
playerInfo[playerid][pInterior] = GetPlayerInterior(playerid); // Retorna tambйm 0
SaveData(playerid);
return 1;
}
Entгo tive outra idйia
Rodar um timer a cada 1 segundo, ele procura os players online e salva os dados deles.
Код:
setTimer("SaveData".... 1000
public SaveData() {
for(new i = 0; i < MAX_PLAYERS; i++) {
if(IsPlayerConnected(i)) {
GetPlayerHealth(i, playerInfo[i][pVida]);
playerInfo[i][pDinheiro] = GetPlayerMoney(i);
GetPlayerPos(i, playerInfo[i][pPosX], playerInfo[i][pPosY], playerInfo[i][pPosZ]);
playerInfo[i][pSkin] = GetPlayerSkin(i);
playerInfo[i][pInterior] = GetPlayerInterior(i);
SaveData(playerid);
}
}
return 1;
}
Agora imagine isso rodando a cada 1 segundo!? Aff, jб era meu servidor.
Alguem me oferece uma soluзгo melhor?
------------------------------------- EDITADO
Bem, eu resolvi deixar assim e rodar um anti cheat junto, dai eu aproveito e verifico de 1 em 1 seg se o player ganhou dinheiro de uma forma inapropiada. Bem, no fim atй que й isso msm
Respuesta: [Dъvida] Melhor mйtodo para salvar posiзхes e outros. -
Lipepva - 16.09.2010
Dб pra colocar tambem em OnPlayerUpdate :P
Re: [Dъvida] Melhor mйtodo para salvar posiзхes e outros. - [BEP]AcerPilot - 16.09.2010
Aн sim que vocк racha o servidor, OnPlayerUpdate й chamado umas 30 vezes por segundo, timer de 1 segundo й bem melhor em comparaзгo ao OnPlayerUpdate.
Respuesta: [Dъvida] Melhor mйtodo para salvar posiзхes e outros. -
BiieL - 16.09.2010
setTimer("SaveData".... 1000/100
esse vai ser 10 milesimos, acho q eh isso, melhorou ?
Re: [Dъvida] Melhor mйtodo para salvar posiзхes e outros. -
John_Race - 16.09.2010
Colocar SetTimers de poucos segundos sу laga o servidor (claro se nгo for o caseiro 1/1)
Coloque o SetTimer de 30 segundos e pronto.
Respuesta: [Dъvida] Melhor mйtodo para salvar posiзхes e outros. -
BiieL - 16.09.2010
30 eh muito tempo, 10 segundos
Re: [Dъvida] Melhor mйtodo para salvar posiзхes e outros. -
Ivan_xD - 16.09.2010
pow coloca ai pra salva os dados a cada 1 min e qnd o player sai e quando fecha o gamemode(GMX);
Re: [Dъvida] Melhor mйtodo para salvar posiзхes e outros. -
xyu3xx - 17.09.2010
Quote:
Originally Posted by Ivan_xD
pow coloca ai pra salva os dados a cada 1 min e qnd o player sai e quando fecha o gamemode(GMX);
|
Nгo dб pra salvar as posiзхes do player quando ele desconecta. Esse й o problema. E isso inlcui o dinheiro tambem