←  Pytania

AMXX.pl: Support AMX Mod X i SourceMod

»

CoD Nowy
Dodatkowa Statystyka na pkt

Zablokowany

radek_b11 - zdjęcie radek_b11 21.07.2011

Witam

Umie ktoś dodać dodatkową statystykę np "Grawitacja" czyli 5 statystykę ?
Albo Respekt i wtedy ta opcja nic nie daje a można pkt w nią pakować
Odpowiedz

  • +
  • -
A może sma? - zdjęcie A może sma? 24.07.2011

Ktoś by umiał... Ale by się przydało sma jakieś czy coś, bo to trochę dużo zabawy jest...

Dodanie respektu to jest banał :P Tylko na !@#$ Ci on, skoro nic dodawać nie będzie? Gracze nie będą w niego ładować punktów (ktoś się pokapuje, że to nic nie daje :D)

Przerabiam właśnie do testu CoDa i dodaje grawitacje... Ale zastanawiam się w jaki sposób rozwiązać ustawienie grawitacji oraz ilość punktów za poziom... Jakieś pomysły?

Edit: Yeah - dodałem :D Ale dziś już nie mam czasu na poprawki (których jest sporo) :D Np. ujemna grawitacja przy zbyt dużej ilości punktów)
Aktualnie funkcja, która daje graczu grawitacje wygląda tak:
wartosc_grawitacji_gracza[id] = ((get_user_gravity(id)*800)-PobierzGrawitacje(id, 1, 1, 1))/800

set_user_gravity(id, wartosc_grawitacji_gracza[id])

Ma ktoś lepszy pomysł? Później zastąpię 800 cvarem sv_gravty (czy jakoś tak :D)
Użytkownik kisiel96 edytował ten post 24.07.2011 23:11
Odpowiedz

radek_b11 - zdjęcie radek_b11 25.07.2011

a nie możesz ustawić we float ? np 0.1 = 100 gravitki 0.5 = 500 itd ? tak jak to jest np w kondycji i wytrzymałości ?
a Respekt jest od tego że jak już wbijesz pkt wszędzie na MAX to wtedy ładujesz w respekt i im więcej masz w nim pkt tym widać że masz większy respekt :)
Odpowiedz

  • +
  • -
A może sma? - zdjęcie A może sma? 25.07.2011

Grawitacje ustawia się tak, że mnoży się "float" danego gracza przez sv_gravity
Więc jeżeli ktoś by miał 100 punktów, i miało by to mu dawać współczynnik 0,1 to jego grawitacja wynosiła by 0,1*800(domyślnie)=80
Jeżeli by miał punktów 500 to jego współczynnik równałby się 0,5*800=400 - czyli ktoś kto ma więcej punktów, ma większą grawitacje :D a chyba chodziło, żeby uzyskać odwrotny efekt :D
Aczkolwiek wczoraj w nocy wziąłem kartkę i napisałem "pseudokod" mający wyeliminować ujemną grawitację oraz ustawić minimalny współczynnik na 0,125.

I naszła mnie jeszcze taka myśl, że jeżeli chcesz mieć 6 statystyk, to można by było zamiast 2, dodawać 3 punkty za 1 level... Wtedy dalej można by zachować standardowe limity (tzn. maks_lvl/2) i można by przypisać tyle samo maksymalnie punktów, co w przypadku 4 statystyk, bez żadnych dodatkowych zabaw. A tak btw: macie jakieś pomysły na nowe statystyki? :D)

PS. Oczekujesz bezpłatnej pomocy? :D I by wypadało, żebyś dał swoje sma CoDa :]

Edit: Zapomniałem dodać: oczywiście moje rozwiązanie wiąże się z edycją wszystkich klas i dodaniem do nich nowej "stałej" jaką jest wartość grawitacji gracza (czy tam respektu), oraz zmiana cod_register_class na taki, który uwzględnia dodatkowe statystyki :] No i jest jeszcze inna zasadnicza wada: można kompilować później te klasy tylko lokalnie (choć jak się uprzesz to i przekompilujesz przez WWW, ale to dużo zabawy jest :D), ponieważ trzeba zmodyfikować codmod.inc (albo zrobić sobie drugi plik .*inc, choć i tak będzie trzeba oryginalny inc edytować :]), by dodać odpowiednie natywy :]

Edit2: Zapomniałem dodać również, że klasy ze zmniejszona grawitacją (po przez fun lub fakemete) mogą się wraz z silnikiem CoDa "gryźć" :P Więc zamiast ustawiania im współczynnika w klasie należało by dodać punktów grawitacji na start więcej :]
PS2. Ta wartość i tak musi być floatem, ale jakiś wzór by mi się przydał, który przeliczałby ilość punktów na wartość float :D Bo obecny nie jest jakiś powalający (przynajmniej mi się tak wydaje)
Użytkownik kisiel96 edytował ten post 25.07.2011 11:26
Odpowiedz

  • +
  • -
sharkowy - zdjęcie sharkowy 25.07.2011

@kisiel96 - strasznie to przekombinowałeś, na zlecenie robiłem statystykę grawitacji do nowego coda i kombinowania nie było więcej jak w standardowych statystykach. Popracuj nad optymalizacją kodu.

Sorry za offtop.
Odpowiedz

  • +
  • -
A może sma? - zdjęcie A może sma? 25.07.2011

Wiesz... Ja tam się nie znam więc wziąłem sma CoDa i jechałem linijka po linijce szukając wszystkiego co dotyczy statystyk, kopiowałem to co trzeba oraz zmieniałem odpowiednio :P
A w jaki sposób zamieniałeś punkty na grawitacje? Możesz się tym podzielić? PS. Podzielisz się również informacją ile wziąłeś za taką usługę? :D
Użytkownik kisiel96 edytował ten post 25.07.2011 18:00
Odpowiedz

  • +
  • -
sharkowy - zdjęcie sharkowy 25.07.2011

new Float:gravminus = floatdiv(floatmul(float(Grawitacja[id]),3.0),800.0); 
set_user_gravity(id,get_user_gravity(id)-gravminus);


Tyle podpowiem ^^


Nie powiem ile skasowałem za tę statystykę bo nie wypada tak.
Użytkownik RPK. Shark edytował ten post 25.07.2011 18:36
Odpowiedz

  • +
  • -
A może sma? - zdjęcie A może sma? 25.07.2011

Szczerze? Nie zrozumiałem nic z podpowiedzi :D

Edit: Trochę dokumentacji i... Zaje!@#$% podpowiedź :D
Użytkownik kisiel96 edytował ten post 25.07.2011 20:58
Odpowiedz
Zablokowany