PHP:
void DealDamage(victim,damage,attacker=0,dmg_type=DMG_GENERIC,String:weapon[]="")
{
if(victim>0 && IsValidEdict(victim) && IsClientInGame(victim) && IsPlayerAlive(victim) && damage>0)
{
new String:dmg_str[16];
IntToString(damage,dmg_str,16);
new String:dmg_type_str[32];
IntToString(dmg_type,dmg_type_str,32);
new pointHurt=CreateEntityByName("point_hurt");
if(pointHurt)
{
DispatchKeyValue(victim,"targetname","war3_hurtme");
DispatchKeyValue(pointHurt,"DamageTarget","war3_hurtme");
DispatchKeyValue(pointHurt,"Damage",dmg_str);
DispatchKeyValue(pointHurt,"DamageType",dmg_type_str);
if(!StrEqual(weapon,""))
{
DispatchKeyValue(pointHurt,"classname",weapon);
}
DispatchSpawn(pointHurt);
AcceptEntityInput(pointHurt,"Hurt",(attacker>0)?attacker:-1);
DispatchKeyValue(pointHurt,"classname","point_hurt");
DispatchKeyValue(victim,"targetname","war3_donthurtme");
RemoveEdict(pointHurt);
}
}
}
Давным давно где-то нарыл эту функцию и без запар ею пользовался.. однако сейчас возникла необходимость сымитировать урон игроку в 0 хп. Т.е как будто бы нанеся урон но ХП не снялось.. подскажите как это сделать?