Witam. Jak mogę procentowo obliczyć ile gracz ma HP? Albo jak by wyglądała funkcja, że jeżeli gracz ma 50% hp to ma wykonać daną funkcję?
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.
|
Guest Message by DevFuse
Procentowe HP
Temat rozp.
GoldeN
, 03.02.2011 22:57
4 odpowiedzi w tym temacie
#1
Napisano 03.02.2011 22:57
#2
Napisano 03.02.2011 23:28
100 HP - 100%
50 HP - X
100HP*X= 50HP*100%
X=50%
100% - 1
50% - 0,5 = 1/2
A jako iż to diablo 100% odczytujemy na początku rundy po załadowaniu klasy (czyli moce, lvl, Hp, itp).
Następnie przy obrażeniach sprawdzamy czy ilość Hp wynosi początkowe/2.
Np. [pseudokod] -> nie pamiętam kodu diablo (a nie mam zbytnio jak sprawdzić teraz) tak więc ogólnie napiszę. Mam nadzieje, że się przyda
50 HP - X
100HP*X= 50HP*100%
X=50%
100% - 1
50% - 0,5 = 1/2
A jako iż to diablo 100% odczytujemy na początku rundy po załadowaniu klasy (czyli moce, lvl, Hp, itp).
Następnie przy obrażeniach sprawdzamy czy ilość Hp wynosi początkowe/2.
Np. [pseudokod] -> nie pamiętam kodu diablo (a nie mam zbytnio jak sprawdzić teraz) tak więc ogólnie napiszę. Mam nadzieje, że się przyda
new zycie[33] //tablica w sekcji globalnej public start() [petla for] { zycie[id]=set_user_health(id, lvl*jakis_mnoznik_diablo) // szukamy czegoś gdzie jest ustawiane HP i o ile nie jest to w tablicy zapisywane to sami zapisujemy } public damage(victim,attacker,itd) { //gdy juz utracimy HP sprawdzamy ile mamy zycia if(get_user_health(id))<=zycie[id]/2) // jezlei utracislismy 50% hp lub wiecej wykonaj { //kod funkcj, ktora ma cos robic } }
Użytkownik Agent edytował ten post 03.02.2011 23:29
Unikalna sieć serwerów CS 1.6 && TF2 FearLex.pl
Serwery CS 1.6: JailBreak, ZombieMod Ultimate (nowe ZP), DiabloMod 201 lvl, TeamPlay
ORAZ
Serwer TF2 FFA
#3
Napisano 03.02.2011 23:48
Dziękuję. Teraz mam kolejne pytanie. W jakim evencie mogę zrobić operację na ofierze? Czyli w trakcie np. strzelaniny.
#4
Napisano 04.02.2011 00:04
hmm.. na przykład podczas zadawania dmg: Ham_TakeDamage
RegisterHam(Ham_TakeDamage,"player","funkcja_publiczna")
#5
Napisano 04.02.2011 00:38
Mam takie coś, ale rejestracja wygląda tak:
Jest to post czy pre? I kiedy jest przed obliczeniami a kiedy po? W pre czy post?
RegisterHam(Ham_TakeDamage, "player", "TakeDamage");
Jest to post czy pre? I kiedy jest przed obliczeniami a kiedy po? W pre czy post?
Użytkownik GoldeN edytował ten post 04.02.2011 00:41
Użytkownicy przeglądający ten temat: 0
0 użytkowników, 0 gości, 0 anonimowych