←  Pytania

AMXX.pl: Support AMX Mod X i SourceMod

»

[ROZWIĄZANE] Jak ustawic Set_user_health m...


Najlepsza odpowiedź Puchate 27.08.2014 23:49

To konwertuj liczbe zmiennoprzecinkowa na calkowita za pomoca floatround. Jezeli jako parametr musisz podac float to mozesz pierw ja zaokraglic a pozniej zmienic na float np. tak -> float(floatround(5.02)) zwroci (w przyblizeniu ;)) 5.00.

Przejdź do postu
Zablokowany

  • +
  • -
Nltj - zdjęcie Nltj 27.08.2014

Tak jak wyżej, może niejasno  dlatego podam przyklad

set_user_health(index, get_user_health(index) + 1/3)

Jak zachowa się gra/HLDS/AMXX ?

Odpowiedz

  • +
  • -
Puchate - zdjęcie Puchate 27.08.2014

Przez modul fun musisz miec zmienna int, ale przez fakemeta/engine musisz miec float.

 

Zawsze istnieja funkcje typu floatround zalatwiajace problemy konwersji typow zmiennych. 

 

W przypadku ktory podales wszystko bedzie dzialac ok, tylko nie bardzo wiem do czego to dzielenie na koncu, bo wychodzi ze dodajesz do obecnego zycia gracza 0,33(3).


Użytkownik Puchate edytował ten post 27.08.2014 23:11
Odpowiedz

  • +
  • -
Nltj - zdjęcie Nltj 27.08.2014

Chodzi mi o takie coś, mam np 40,763 jak zachowa się kompilator

 

A da się to jakoś ogarnąć, aby do życia gracza było dodawane tylko "zero" liczb po przecinku z danej liczby ?

 

22,125125125...

a chce z tego "odcinać 125125125... aby było samo 22

Odpowiedz

  • +
  • -
Nltj - zdjęcie Nltj 27.08.2014

Myslalem o zamienianiu float_to_str potem dzieleniu na Left i Right argumentów wystąpieniem "." i wywalaniu reszty z Right,. a potem zamienianie na num, przeszlo by ?

Odpowiedz

  • +
  • -
Najlepsza odpowiedź Puchate - zdjęcie Puchate 27.08.2014

To konwertuj liczbe zmiennoprzecinkowa na calkowita za pomoca floatround. Jezeli jako parametr musisz podac float to mozesz pierw ja zaokraglic a pozniej zmienic na float np. tak -> float(floatround(5.02)) zwroci (w przyblizeniu ;)) 5.00.

Odpowiedz
Zablokowany