←  Pytania

AMXX.pl: Support AMX Mod X i SourceMod

»

CoD Nowy
Zamiana publicu takedamage na fwtakedamage

  • +
  • -
sebo97's Photo sebo97 10.03.2013

Witam, jak zmienić public z take damage na fwtakedawage

public TakeDamage(this, idinflictor, idattacker, Float:damage, damagebits)
{
if(!is_user_connected(idattacker))
return HAM_IGNORED;

if(!ma_perk[idattacker])
return HAM_IGNORED;

if(get_user_team(this) != get_user_team(idattacker) && get_user_weapon(idattacker) == CSW_SCOUT && damagebits & DMG_BULLET)
cod_inflict_damage(idattacker, this, float(get_user_health(this))-damage+1.0, 0.0, idinflictor, damagebits);

return HAM_IGNORED;
}


Bo w silniku coda zmieniłem to na fwtakedamage, żeby odbijało pociski od perków takich jak awp/scout itp, ale teraz są errory z tym publicem :D

Pomoże ktoś tutaj przykład klasy z fwtakedamage:
public fwTakeDamage(iVictim, iEnt, iAttacker, Float:fDamage, iDamageBits)
{
if(!is_user_connected(iAttacker) || !g_bHasItem[iVictim])
return HAM_IGNORED;

if(!ile[iVictim])
return HAM_IGNORED;

if(iDamageBits & DMG_CODSKILL || iDamageBits & (1<<1) || iDamageBits & (1<<24)){
ile[iVictim]--;
return HAM_SUPERCEDE;
}

return HAM_IGNORED;
}
Quote

  • +
  • -
d0naciak's Photo d0naciak 10.03.2013

w plugin init musisz mienić jeszcze w RegisterHam trzeci parametr, na nazwę publica, czyli
RegisterHam(Ham_TakeDamage, "player", "TakeDamage");
na
RegisterHam(Ham_TakeDamage, "player", "fwTakeDamage");
Quote

  • +
  • -
ZeusHD's Photo ZeusHD 10.03.2013

Kolega Wyżej ma Racje Inaczej bd ciapa
Quote