[Ajuda] NO-LAG - Printable Version
+- SA-MP Forums Archive (
https://sampforum.blast.hk)
+-- Forum: Non-English (
https://sampforum.blast.hk/forumdisplay.php?fid=9)
+--- Forum: Languages (
https://sampforum.blast.hk/forumdisplay.php?fid=33)
+---- Forum: Português/Portuguese (
https://sampforum.blast.hk/forumdisplay.php?fid=34)
+---- Thread: [Ajuda] NO-LAG (
/showthread.php?tid=448280)
NO-LAG -
NuTShoT - 03.07.2013
Olб, boa tarde!!!
Estou usando este cуdigo, porem os kills nгo estгo atribuindo corretamente...
Me ajudem:
pawn Код:
#include <alss>
public OnPlayerGiveDamage(playerid, damagedid, Float:amount, weaponid)
{
new Float:HP, Float:Colete, Float:Dano;
GetPlayerArmour(damagedid, Colete);
GetPlayerHealth(damagedid, HP);
if(weaponid == 24){amount = 10;}//eagle
if(weaponid == 23){amount = 50;}//silencedcolt
if(Colete > 0)
{
if(amount > Colete)
{
Dano = amount - Colete;
HP = HP - Dano;
SetPlayerArmour(damagedid, 0.0);
SetPlayerHealth(damagedid, HP);
return 1;
}
Colete = Colete - amount;
SetPlayerArmour(damagedid, Colete);
}
if(Colete < 1)
{
HP = HP - amount;
SetPlayerHealth(damagedid, HP);
}
return 1;
}
Obrigado!
Respuesta: NO-LAG -
DartakousLien - 03.07.2013
uma vez eu li que nao se deve confiar no OnPlayerGiveDamage, creio que a propria wiki diz o mesmo!
use OnPlayerTakeDamage
Re: NO-LAG -
NuTShoT - 03.07.2013
Olб, boa tarde!
DartakousLien, me ajude por favor! So mudar o nome ali ?! Para "OnPlayerTakeDamage" ?!
Vlw!
Re: NO-LAG -
DannielCooper - 03.07.2013
Sim, mude o nome da callback de OnPlayerGiveDamage para OnPlayerTakeDamage. E tambйm mude a forward OnPlayerGiveDamage para OnPlayerTakeDamage.
Re: NO-LAG -
ProKillerpa - 03.07.2013
Quote:
Originally Posted by DannielCooper
Sim, mude o nome da callback de OnPlayerGiveDamage para OnPlayerTakeDamage. E tambйm mude a forward OnPlayerGiveDamage para OnPlayerTakeDamage.
|
Depois fala que sabe codar nй!
Mudar o nome de forward? Que forward oque! OnPlayerGiveDamage e OnPlayerTakeDamage ambas sгo funзхes nativas do samp.
Re: NO-LAG -
DannielCooper - 03.07.2013
Quote:
Originally Posted by ProKillerpa
Depois fala que sabe codar nй!
Mudar o nome de forward? Que forward oque! OnPlayerGiveDamage e OnPlayerTakeDamage ambas sгo funзхes nativas do samp.
|
Eu acho que em burrice, vocк se empata com a porta, sу acho.
Re: NO-LAG -
NuTShoT - 03.07.2013
Olб, boa noite!
Nгo funcionou. Deu alguns erros.
Vlw!
Re: NO-LAG -
ProKillerpa - 03.07.2013
Posta os erros, pois as callback's tem definiзхes padrхes diferentes...
Respuesta: Re: NO-LAG -
DartakousLien - 03.07.2013
Quote:
Originally Posted by DannielCooper
Eu acho que em burrice, vocк se empata com a porta, sу acho.
|
voce sabe o que que esta falando? nem vou comentar! vai que й doenзa
@TOPIC
nao cara, tem que trocar o nome da callback insverter os valores de playerid e damagedid, se procurasse na wiki seria mais facil, mas eu vou editar seu codigo! sу um instante
@EDIT
pawn Код:
public OnPlayerTakeDamage(playerid, issuerid, Float:amount, weaponid)
{
if(issuerid != INVALID_PLAYER_ID)
{
new Float:HP, Float:Colete;//, Float:Dano;
GetPlayerArmour(playerid, Colete);
GetPlayerHealth(playerid, HP);
if(weaponid == 24){amount = 10;}//eagle
if(weaponid == 23){amount = 50;}//silencedcolt
if(Colete > 0)
{
if(amount > Colete)
{
//Dano = amount - Colete;
//HP = HP - Dano;
SetPlayerArmour(playerid, 0.0);
SetPlayerHealth(playerid, HP - (amount - Colete));//dessa forma й mais seguro
return 1;
}
//Colete = Colete - amount;
SetPlayerArmour(playerid, Colete - amount);
}
else//nao precisa de usar if(Colete < 1) aqui pode usar o else
{
//HP = HP - amount;
SetPlayerHealth(playerid, HP - amount);
}
}
return 1;
}