Skocz do zawartości

Witamy w Nieoficjalnym polskim support'cie AMX Mod X

Witamy w Nieoficjalnym polskim support'cie AMX Mod X, jak w większości społeczności internetowych musisz się zarejestrować aby móc odpowiadać lub zakładać nowe tematy, ale nie bój się to jest prosty proces w którym wymagamy minimalnych informacji.
  • Rozpoczynaj nowe tematy i odpowiedaj na inne
  • Zapisz się do tematów i for, aby otrzymywać automatyczne uaktualnienia
  • Dodawaj wydarzenia do kalendarza społecznościowego
  • Stwórz swój własny profil i zdobywaj nowych znajomych
  • Zdobywaj nowe doświadczenia

Dołączona grafika Dołączona grafika

Guest Message by DevFuse
 

NariHari - zdjęcie

NariHari

Rejestracja: 16.05.2012
Aktualnie: Nieaktywny
Poza forum Ostatnio: 26.05.2012 20:30
-----

#413630 Obrażenia w zależności od dystansu

Napisane przez diablix w 23.05.2012 15:08

Przepisując quakemoda wpadłem na pomysł modyfikacji strzelby.
Celem jej było określenie bazowych obrażeń (jeszcze przed ustaleniem miejsca trafienia)
w zależności od odległości między ofiarą a atakującym.

_dmgR(Float:fOdleglosc, Float:fDamage, Float:fMnoznik, Float:fProcent){
new Float:fMaxDmg = fDamage*fMnoznik;
new Float:fIle, Float:fIloraz;

fIloraz = fProcent/0x64;

fIle = fMaxDmg - fOdleglosc*fIloraz;

if(fIle > fMaxDmg) fIle = fMaxDmg;

return floatround(floatmax(fIle, fDamage*random_float(0.1, 0.25)));
}


Przykładowe zastosowanie

new iDmg = _dmgR(entity_range(iPlayer, iTarget), 55.0, 2.0, 30.0); //Maksymalny dmg = 110 (fDamage*fMnoznik), fProcent = 30, obrazenia zostana obnizone o 30% dystansu


W przypadku ujemnych obrażeń (osiągnięty maksymalny dystans) obrażenia będą równe 10~25% parametru fDamage
  • +
  • -
  • 4