←  Problemy

AMXX.pl: Support AMX Mod X i SourceMod

»

CoD Nowy
Problem - 1/1 HS ze scouta

  • +
  • -
Ashenwall's Photo Ashenwall 28.12.2011

Witam. Chciałbym dać klasie możliwość natychmiastowego zabicia przeciwnika ze scouta, pod warunkiem, że będzie to strzał w głowę. Poczytałem trochę forum, jednak znalezione rozwiązania nie bardzo działają - wciąż nie zabija na strzała.


/* Plugin generated by AMXX-Studio */
#include <amxmodx>
#include <codmod>
#include <engine>
#include <fakemeta>
#include <hamsandwich>
#define DMG_BULLET (1<<1)
new bool:ma_klase[33];
new const nazwa[] = "x";
new const opis[] = "y";
new const bronie = 1<<CSW_SCOUT;
new const zdrowie = 0;
new const kondycja = -10;
new const inteligencja = 0;
new const wytrzymalosc = 0;

public plugin_init() {
register_plugin(nazwa, "1.0", "QTM_Peyote");

cod_register_class(nazwa, opis, bronie, zdrowie, kondycja, inteligencja, wytrzymalosc);
}
public cod_class_enabled(id)
{
set_rendering(id,kRenderFxGlowShell,0,0,0 ,kRenderTransAlpha, 65);
ma_klase[id] = true;
}
public cod_class_disabled(id)
{
set_rendering(id,kRenderFxGlowShell,0,0,0 ,kRenderTransAlpha, 255);
ma_klase[id] = false;
return PLUGIN_CONTINUE;
}
public TraceAttack(Ham_TraceAttack, this, idattacker, Float:damage, Float:direction[3], tracehandle, damagebits)
{
if(!is_user_connected(this) || !is_user_connected(idattacker) || !ma_klase[idattacker] || get_user_weapon(idattacker) == CSW_SCOUT)
return HAM_IGNORED
new iHitbox = get_tr2(tracehandle, TR_iHitgroup)
if(iHitbox != HIT_HEAD || !(damagebits & DMG_BULLET))
return HAM_IGNORED
cod_inflict_damage(idattacker, this, float(get_user_health(this))-damage+1.0, 0.0, get_user_weapon(idattacker), damagebits);
return HAM_HANDLED
}


Byłbym wdzięczny, gdyby ktoś zajrzał w kod i powiedział co jest nie tak, ewentualnie zaproponował inne rozwiązanie.
Pozdrawiam.
Edited by Ashenwall, 28.12.2011 02:18.
Quote