Otwieramy sma klasy którą chcemy edytować a następnie:
Na górze znajdź:
#include <amxmodx>Dodaj pod:
#include <hamsandwich>I pod tym wyżej dodaj:
#define DMG_BULLET (1<<1)Do plugin_init:
RegisterHam(Ham_TakeDamage, "player", "TakeDamage");
*Jeżeli klasa ma już te dwie opcje dodane to już nie trzeba
Najlepiej na dół:
public TakeDamage(this, idinflictor, idattacker, Float:damage, damagebits)
{
if(!is_user_connected(idattacker))
return HAM_IGNORED;
if(!ma_klase[idattacker])
return HAM_IGNORED;
if(damagebits & DMG_BULLET)
{
new weapon = get_user_weapon(idattacker);
if(weapon == CSW_BRON && damage > 20.0 && random_num(1,2) == 1)
cod_inflict_damage(idattacker, this, float(get_user_health(this))-damage+1.0, 0.0, idinflictor, damagebits);
}
return HAM_IGNORED;
}Gdy zdarzy się że dana klasa ma już 1/x z jakieś broni dodajemy tylko:
if(weapon == CSW_BRON && damage > 20.0 && random_num(1,2) == 1) cod_inflict_damage(idattacker, this, float(get_user_health(this))-damage+1.0, 0.0, idinflictor, damagebits);
BRON - z jakiej broni masz szanse na natychmiastowe zabicie...nazwy itd:
Nazwy broni i ammo do give_item (+ speed) - AMXX.pl: Support AMX Mod X
1,2-szansa 1/2 czyli 50% jeżeli chcesz zmienić np. na 25% dajemy 1,4 itd. itd...
Jeśli po prostu ma zabijać na 100% bez losowania to zamieniamy to:
if(weapon == CSW_BRON && damage > 20.0 && random_num(1,2) == 1)
Na to:
if(weapon == CSW_BRON && damage > 20.0)
Męczy mnie tu:
damage > 20.0Funkcja ma być "uaktywniona" jeżeli z noża zadamy więcej obrażeń niż 20 HP , myślałem o usunięciu ale wole nie kombinować
Jeżeli już skończyliśmy to plik amxx ładnie podmienić/dodać
Użytkownik KariiO edytował ten post 12.02.2011 13:26


Dodatki SourceMod
















