[Silnik] Wytrzymalosc
Kmf!p
08.12.2016
Witajcie,
chcialbym dodac cos takiego w silniku coda ze podczas strzelania sie tracimy tez wytrzymalosc, bo standardowo jest ona stala. gdzie dodac i co zeby taki efekt uzyskac ?
Kmf!p
09.12.2016
Wydaje mi sie ze gdzies w tym miejscu:
public Obrazenia(this, idinflictor, idattacker, Float:damage, damagebits) { if(!is_user_alive(idattacker)) return HAM_IGNORED; if(get_user_team(this) == get_user_team(idattacker)) return HAM_IGNORED; if(get_user_health(this) <= 1) return HAM_IGNORED; if(PobierzWytrzymalosc(this, 1, 1, 1) <= 0) return HAM_IGNORED; SetHamParamFloat(4, damage*(1.0-redukcja_obrazen_gracza[this])); return HAM_IGNORED; }
trzeba dodac cos z tym:
cod_set_user_bonus_stamina(this, cod_get_user_stamina(this, 1, 1, 1) - damage*(1.0-redukcja_obrazen_gracza[this]));
tak bedzie dobrze ?
Użytkownik Kmf!p edytował ten post 09.12.2016 14:32
AwIlL^^
09.12.2016
bonusowa_wytrzymalosc_gracza[this] -= damage*(1.0-redukcja_obrazen_gracza[this]));
ale wiesz do czego służy ta statystyka, prawda??
potem będziesz musiał w public Odrodzenie(id)
zmieniać tą wytrzymałość na standardową, a to wymaga kolejnej tablicy globalnej i zapisywania w niej właśnie wytrzymałości przed strzelaniem się graczy
tylko wytrzymałość zmienia się kiedy dostaniemy perk z wytrzymałością
więc musiałbyś wykombinować jak po każdej rundzie wytrzymałość wracała do swojego pierwotnego stanu
jeżeli coś źle zrobisz to wytrzymałość przestanie wogóle działać (graczom spadnie wytrzymałość poniżej zera)
Kmf!p
09.12.2016
zmniejsza obrazenia, tylko widze ze wytrzymalosc pobierana jest na starcie rundy. trzeba bylo by pobierac podczas obrazen, zeby ta statystyka dzialala tak jak chce. chce tez pobrac cala wytrzymalosc gracza, a nie tylko bonusowa. dasz rade cos napisac jak to ma mniej wiecej wygladac ?
z ta wytrzymaloscia to chce zrobic tak jak z kamizelka/armorem w cs, zeby zmniejszal sie. dziwne troche ze trzeba robic dodatkowa tablice, bo statystyke zdrowie sie traci, a na starcie znow mamy tyle ile mielismy wczesniej. perki z hp tez sa wiec ta statystyka sie zmienia. wlasnie chce zrobic wytrzymalosc tak jak jest zrobione zdrowie.
Użytkownik Kmf!p edytował ten post 09.12.2016 21:06
AwIlL^^
10.12.2016
if(redukcja_obrazen_gracza[this]>0) redukcja_obrazen_gracza[this] -= 0.03 else if(redukcja_obrazen_gracza[this]<0) redukcja_obrazen_gracza[this] = 0.0
ja bym to tak zrobił a nie bawił się wytrzymałością bo diabła narobisz
a punkty hp w cod modzie to nie to samo co hp gracza
hp gracza to 100+pkt hp gracza z coda
jak zrobisz tak jak podałem wyżej to będzie miodzio
około 10-15 strzałów i przeciwnik nie redukuje dmg
zamiast tego 0.03 możesz wstawić coś z użyciem zmiennej damage (jak ci się chce)
Kmf!p
10.12.2016
tylko ze ty tu piszesz o redukcji obrazen, a ja nie chce zmieniac redukcji w ogóle. chce pobrac i zmieniac wytrzymalosc klasy zalozmy za 1 strzal / obrazenie odjac np. "damage/2" pkt wytrzymalosci. tylko chce tez zeby na start rundy wytrzymalosc byla spowrotem tyle ile bylo na poczatku.
nowa tablica na pewno bedzie potrzebna zeby zapisac wytrzymalosc klasy standardowa. jesli dalbys rade pokazac jak zrobic z ta tablica i co gdzie dodac zeby dzialalo to bylo by dobrze.