Skocz do zawartości

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.
  • Rozpoczynaj nowe tematy i odpowiedaj na inne
  • Zapisz się do tematów i for, aby otrzymywać automatyczne uaktualnienia
  • Dodawaj wydarzenia do kalendarza społecznościowego
  • Stwórz swój własny profil i zdobywaj nowych znajomych
  • Zdobywaj nowe doświadczenia

Dołączona grafika Dołączona grafika

Guest Message by DevFuse
 

Zdjęcie

Problem z pobieraniem zmiennej entu.


  • Zamknięty Temat jest zamknięty
5 odpowiedzi w tym temacie

#1 Kubaczek <3

    Zaawansowany

  • Użytkownik

Reputacja: 17
Początkujący

  • Postów:116
  • Steam:steam
  • Lokalizacja::)
Offline

Napisano 07.06.2010 14:44

Witam, mam mały problem, mianowicie coś nie działa mi pobieranie zmiennej entu.
Kod:
new ent=-1;
while ((ent = find_ent_by_class(ent, gszBlockClassname)))
{
new Float:Value = entity_get_float(ent, EV_FL_fuser3);
if( onHighTrampoline[ id ] )
{
actionTrampolinahigh(id, Value);
onHighTrampoline[ id ] = false;
}
else if( onLowTrampoline[ id ] )
{
actionTrampolinasmall(id,Value);
onLowTrampoline[ id ] = false;
}
else if(onTrampoline[id])
{
client_print(id,print_chat,"%f",Value);
actionTrampoline(id, Value);
onTrampoline[ id ] = false;
}
}

Jak widać dodałem napis, lecz pokazuje się 0.00000. Jednak jestem pewien, że ta funkcja działa źle, ponieważ np. w pfn_touch ładnie pobiera.

Użytkownik kubaku4 edytował ten post 07.06.2010 14:44

  • +
  • -
  • 0

#2 grankee

    Godlike

  • Support Team

Reputacja: 517
Wszechwiedzący

  • Postów:1 500
  • Lokalizacja:Radom
Offline

Napisano 11.06.2010 11:09

A jesteś pewny, że ta wartość (fuser3) ma inną wartość niż 0? Użyj pluginu Micza- Engine Entity Lab i sprawdź wartość fuser3 danego entity.

Spróbuj użyć fakemety
new Float:Value
pev(ent,pev_fuser3,Value)

Użytkownik grankee edytował ten post 12.06.2010 00:13

  • +
  • -
  • 0

#3 R3X

    Godlike

  • Przyjaciel

Reputacja: 2 987
Godlike

  • Postów:4 248
  • Lokalizacja:Nie
Offline

Napisano 11.06.2010 18:28

Sprawdź kiedy coś zapisujesz do fuser3, może już tam wpisujesz 0.0 albo nie robisz tego nigdy
BTW
Floaty w pev() pobiera się przez referencję:
new Float:Value;
pev(ent,pev_fuser3, Value);

  • +
  • -
  • 0

#4 grankee

    Godlike

  • Support Team

Reputacja: 517
Wszechwiedzący

  • Postów:1 500
  • Lokalizacja:Radom
Offline

Napisano 12.06.2010 00:13

Mało używam pev, mój błąd, poprawiłem. Na logikę wydaje się, że returnem zwraca...
  • +
  • -
  • 0

#5 Kubaczek <3

    Zaawansowany

  • Autor tematu
  • Użytkownik

Reputacja: 17
Początkujący

  • Postów:116
  • Steam:steam
  • Lokalizacja::)
Offline

Napisano 12.06.2010 07:29

Heh musiałem zrobić to na zmiennej globalnej i do niej zapisywać z innej funkcji. Okazało się, że to "coś" bierze sobie byle jakiego blocka.
  • +
  • -
  • 0

#6 R3X

    Godlike

  • Przyjaciel

Reputacja: 2 987
Godlike

  • Postów:4 248
  • Lokalizacja:Nie
Offline

Napisano 12.06.2010 13:15

Zarówno entity_get_* jak i pev pobierają wartości z podanego bytu, więc zwraca dokładnie to co było tam zapisane. Może próbowałeś wpisać inta do pola float?
  • +
  • -
  • 0




Użytkownicy przeglądający ten temat: 0

0 użytkowników, 0 gości, 0 anonimowych