Dъvida sobre melhoramento de codigo -
pedrotvr - 26.12.2013
Entгo gente, eu fiquei pensando aqui o onplayerupdate ele atualiza o jogador toda hora, tranquilo com um jogador agora imagina com varios, acho que poderia comprometer um pouco a velocidade de resposta do servidor, tava pensando em dar uma melhorada nos meus codigos do gm tipo meu
armas nas costas, assim q vc pega arma, jб adiciona um ojbeto nas suas costas no mesmo segundo, isso fazendo puxar a maquina, n seria melhor e como eu faзo, pra tipo de 1 em 1 minuto checa-se se vc tem a arma pra poder adicionar o objeto em vez de adicionar na hora?
Meu codigo
pawn Код:
if(!IsPlayerInAnyVehicle(playerid))
{
new Armas[MAX_PLAYERS],Balas[MAX_PLAYERS];
GetPlayerWeaponData(playerid, 5, Armas[playerid], Balas[playerid]);
if(Armas[playerid] == 30 && Balas[playerid] >= 1)//Ak-47
{
if(GetPlayerWeapon(playerid) == 30) RemovePlayerAttachedObject(playerid,SlotAKeFUZIL);
else SetPlayerAttachedObject(playerid, SlotAKeFUZIL, 355, 1, -0.060921, -0.141673, 0.000000, 0.000000, 35.362735, 0.000000);
}
else if(Armas[playerid] == 31 && Balas[playerid] >= 1) //FUZIL
{
if(GetPlayerWeapon(playerid) == 31) RemovePlayerAttachedObject(playerid,SlotAKeFUZIL);
else SetPlayerAttachedObject(playerid, SlotAKeFUZIL, 356, 1, -0.099681, -0.133408, 0.000000, 1.027592, 19.667785, 0.000000);
}
else
{
RemovePlayerAttachedObject(playerid,SlotAKeFUZIL);
}
GetPlayerWeaponData(playerid, 3, Armas[playerid], Balas[playerid]);
if(Armas[playerid] == 25 && Balas[playerid] >= 1)//escopeta
{
if(GetPlayerWeapon(playerid) == 25) RemovePlayerAttachedObject(playerid,SlotEscopeta);
else SetPlayerAttachedObject(playerid, SlotEscopeta, 349, 1, -0.109260, -0.059651, -0.066210, 186.310729, 42.375362, 6.716565);
}
else if(Armas[playerid] == 27 && Balas[playerid] >= 1) //escopeta de combate
{
if(GetPlayerWeapon(playerid) == 27) RemovePlayerAttachedObject(playerid,SlotEscopeta);
else SetPlayerAttachedObject(playerid, SlotEscopeta, 351, 1, -0.181073, -0.056285, -0.081242, 181.269729, 39.399085, 12.246994);
}
else
{
RemovePlayerAttachedObject(playerid,SlotEscopeta);
}
return 1;
}
Re: Dъvida sobre melhoramento de codigo -
Wellington1999 - 26.12.2013
ta uma base pra vc
coloca a callback onde quiser
pawn Код:
forward AtualizarArmas(playerid);
public AtualizarArmas(playerid)
{
//seu codigo
return 1;
}
OnGameModeInit
SetTimer("AtualizarArmas", 60000,1);//60000 1 min
Re: Dъvida sobre melhoramento de codigo -
silviosdois - 27.12.2013
melhoraria msm o desenvolvimento do sv separado por callbacks de 1 minuto em vez de por em onplayerupdate?
Re: Dъvida sobre melhoramento de codigo -
silviosdois - 27.12.2013
isso melhoraria mesmo o desenvolvimento do sv? ficaria mais rapido? puxaria menos no host?
Re: Dъvida sobre melhoramento de codigo -
DannielCooper - 27.12.2013
Clica
Video Aula de otimizaзгo do PauloR, recomendo!