[ROZWIĄZANE] Pobranie tymu obrażeń (damage...
Najlepsza odpowiedź ^Grzyboo 06.03.2014 13:28
* Nie musimy bawić się w read_data(x)
* Prosto sprawdzamy typ obrażeń, czyli właśnie DamageBits
* Możemy wychwycić "take damage" i "post take damage"
* Łatwe zmienianie parametrów. Np. odbicie obrażeń = zamiana atakującego z ofiarą. Także tyczy się to modyfikowania wartości zadanych obrażeń.
Przejdź do postu
Rivit
05.03.2014
Jak pobrać typ obrażeń nie używając Ham_TakeDamage?
Chodzi o DMG_BULLET itp.
Aemiksowy 05.03.2014
register_event("Damage","event_damage","b")
public event_damage(id){ new damage; damage = read_data(2) client_print(id, print_chat, "Zadales %i dmg", damage) }
Używanie TakeDamage do pobierania zadanych dmg, nie jest zbyt dobre i sam to testowałem. Nie zawsze pokazywało prawidłowy wynik.
Użytkownik Aemiksowy edytował ten post 05.03.2014 20:02
^Grzyboo
05.03.2014
Ale on pyta o typ obrażeń, poza tym TakeDamage jest o niebo lepszy moim skromnym zdaniem.
Rivit
05.03.2014
2. Czy w TakeDamage idinflictor odpowiada za id gracza atakujacego?
Drago36
05.03.2014
http://amxx.pl/topic...e-na-obrazenia/
this - atakowany gracz
idinflictor - byt zadający obrażenia
idattacker - byt powodujący obrażenia
damage - wielkość obrażeń
damagebits - typ obrażeń
jeśli idattacker to gracz zazwyczaj idinflictor to również id atakującego, wyjątek stanowi granat: w tym przypadku idinflictor to indeks bytu granatu
w przeciwnym razie (!is_user_connected(idattacker)), idinflictor może być bytem typu trigger_hurt lub po prostu 0
Użytkownik Drago36 edytował ten post 05.03.2014 21:27
Rivit
05.03.2014
^Grzyboo
05.03.2014
new attacker = get_user_attacker(victim)
albo w TakeDamage sprawdzasz
if(BitDamage & (1<<24)) // to jest warunek na obrazenia z HE
Aemiksowy 06.03.2014
1. Chodzi mi o typ obrazen a nie wartosc.
Oj Źle zrozumiałem od początku, ech. Proszę o wydzielenie moich postów i najmocniej przepraszam.
Ale on pyta o typ obrażeń, poza tym TakeDamage jest o niebo lepszy moim skromnym zdaniem.
Użytkownik Aemiksowy edytował ten post 06.03.2014 00:01
Najlepsza odpowiedź
^Grzyboo
06.03.2014
* Nie musimy bawić się w read_data(x)
* Prosto sprawdzamy typ obrażeń, czyli właśnie DamageBits
* Możemy wychwycić "take damage" i "post take damage"
* Łatwe zmienianie parametrów. Np. odbicie obrażeń = zamiana atakującego z ofiarą. Także tyczy się to modyfikowania wartości zadanych obrażeń.
Użytkownik ^Grzyboo edytował ten post 06.03.2014 13:30