Mam problem, gdyż mam klase która na nożu jest 1,5x szybsza niż normalnie
ale:
jeśli dam w public CmdStart
if(klasa_gracza[id] == KLASA && get_user_weapon(id) == CSW_KNIFE) { szybkosc_gracza[id] += 0.5; } else { szybkosc_gracza[id] -= 0.5; }to klasa się buguje, tzn "trzęsie się" - nie da się tego inaczej opisać - stoi w miejscu i jak się ruszasz to się obraz trzęsie
natomiast jeśli dam to samo ale w public CurWeapon
to klasa:
albo ma wszystko ciągle tak samo - ani nie biega szybciej ani wolniej
albo co zmianę broni przyspiesza?
a może to nie ta komenda? = szybkosc_gracza[id]
_______________________________________________________
Prosiłbym o zrobienie kodu który właśnie na nożu da 1.5x szybkości klasy podanej w new const Float:szybkosc_klasy[]
ale jeszcze zeby było to na zasadzie że nie pomija kondycji gracza, bo np jeśli owa klasa bd miala 100pkt w kondycje i jej wartość poruszania się to już 2.0 to zeby nie zmieniło na wolniejsze - 1.5
tempo poruszania się gdy mamy nóż 1.5 RAZA większe od obecnie posiadanej
a jeśli zmienimy na inną broń - wartość ta wraca do posiadanej przed zmianą
@@@EDIT
już sobie z tym poradziłem :
dorobiłem szybkość_gracza1[id] która wynosi tyle samo co szybkość_gracza zwykła = czyli szybkosc[250]*1.3*szybkosc_klasy*kondycja
czyli:
if(klasa_gracza[id] == KLASA && get_user_weapon(id) == CSW_KNIFE) { szybkosc_gracza[id] *= 1.5; } else { szybkosc_gracza[id] = szybkosc_gracza1[id]; }
i działa
---
PS
nie wiem czy potrzebnie robiłem tą nową szybkość_gracza - ktoś ma jakiś pomysł żeby to jakoś zoptymalizować czy wystarczy to co naskrobałem.. ?
Użytkownik NieMaMnie edytował ten post 08.04.2011 21:49