uzywam
stock TakeDamage(victim, attacker, Float:fDamage, damagebits, const szWeapon[] = "",ent = 0){
static info_target = 0;
if(!info_target)
info_target = engfunc(EngFunc_AllocString, "info_target");
if(pev_valid(ent))
ExecuteHamB(Ham_TakeDamage, victim, ent, attacker, fDamage, damagebits);
else{
ent = engfunc(EngFunc_CreateNamedEntity, info_target);
set_pev(ent, pev_classname, szWeapon);
ExecuteHamB(Ham_TakeDamage, victim, ent, attacker, fDamage, damagebits);
set_pev(ent, pev_flags, FL_KILLME);
}
}Wywoływanie nazwy broni w deathmsg
public DeathMsg(id)
{
new weaponname[20]
new kid = read_data(1)
new vid = read_data(2)
new headshot = read_data(3)
read_data(4,weaponname,31)
Pokazywanie dmg
register_event("Damage", "on_damage", "b", "2!0", "3=0", "4!0")
public on_damage(id)
{
static attacker; attacker = get_user_attacker(id)
static damage; damage = read_data(2)
set_hudmessage(255, 0, 0, 0.45, 0.50, 2, 0.1, 4.0, 0.1, 0.1, -1)
ShowSyncHudMsg(id, g_hudmsg2, "%i^n", damage)
if(is_user_connected(attacker))
{
if (pev(id,pev_rendermode) == kRenderTransTexture || player_b_inv[id] < 70 && player_b_inv[id] != 0|| player_class[id] == Ninja || invisible_cast[id] == 1||!fm_is_ent_visible(attacker,id))
return PLUGIN_CONTINUE
set_hudmessage(0, 100, 200, -1.0, 0.55, 2, 0.1, 4.0, 0.02, 0.02, -1)
ShowSyncHudMsg(attacker, g_hudmsg1, "%i^n", damage)
}
return PLUGIN_HANDLED
}i teraz tak jesli uzyje tego:
TakeDamage(victim, attacker, fDamage, DMG_BULLET, "rakieta",0);
Nazwa broni jest prawidlowo odczytywana lecz nie widac zadanego z niej dmg
Jesli dam tak
TakeDamage(victim, attacker, fDamage, DMG_BULLET, "rakieta",attacker);
To widac zadawane dmg lecz nie pobiera nazwy broni .
Potrzebne jest to mi do kilku innych funkcij (nazwa broni ) . A zalezy mi tez na widocznym dmg . Jbc moge zaplacic ;]
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Mozna colse.Rozwiazane
Użytkownik Zielarz. edytował ten post 18.12.2011 17:00


Dodatki SourceMod













