Quote:
Originally Posted by WagnerSantosTexudo
Код:
public OnPlayerGiveDamage(playerid, damagedid, Float: amount, weaponid, bodypart)
{
if(weaponid == WEAPON_SNIPER)
{
new Float:Life;
GetPlayerHealth(playerid,health);
SetPlayerHealth(damageid,Life - 100);
}
return 1;
}
assim ? ta certo?
|
Em se tratando de programaзгo, sim,
parcialmente!
Digo isso porque cada um usa seu raciocнnio (lуgica) para chegar a um objetivo, porйm com um algoritmo diferente.
No seu cуdigo, vc usou playerid onde o correto й damagedid.
Dentro desta condicional, precisamos ainda criar outra, para verificar o colete:
Код:
public OnPlayerGiveDamage(playerid, damagedid, Float: amount, weaponid, bodypart)
{
if(weaponid == WEAPON_SNIPER)
{
new Float:Colete, Float:Vida;
GetPlayerArmour(damagedid, Colete);
if(Colete > 0)
{
GetPlayerHealth(damagedid, Vida);
SetPlayerArmour(damagedid, 0.0);
SetPlayerHealth(damagedid, Vida - 50);
}
else
{
SetPlayerHealth(damagedid, 0.0);
}
}
return 1;
}