Jump to content

Recommended Posts

event onClientRender + funkcja getScreenFromWorldPosition no i rysujesz tekst w tamtym miejscu (skoro i tak używasz onClientRender to można do tego użyć dxDrawText zamiast labeli - są szybsze). wydawalo mi sie ze byla na to funkcja, ale na szybko nie znalazłem - możesz za to sam zapakować to w formie funkcji.

oczywiście tekstu nie pokazuj jeżeli player jest zbyt daleko.

najbardziej optymalnym rozwiazaniem jest utworzenie colShape'a, w momencie jak player w niego wlezie - dodać obsługę eventu onClientRender i rysować tekst - a gdy player wyjdzie z colShape'a - usunąć event onClientRender. mniej optymalnym (ale krótszym i łatwiejszym) rozwiązaniem jest po prostu zwykły if i getDistanceBetweenPoints3D już w funkcji obsługującej onClientRender - z tym, że jak w taki brzydki sposób będziesz pisał cały kod - to szybko serwer zacznie Ci "znikąd" zmulać.

Link to comment
  • 1 month later...

W tym konkretnym przypadku nie jest używany żaden colshape, a lista elementów do wyświetlenia pobierana jest poprzez getElementsByType("tekst", root, true) - wtedy zwracane są tylko te w zasięgu streamingu.

Tworzenie colshape nie nada się do tego zbytnio, gdyż po stronie klienta elementy nie są zaliczane do obrębu colshape dopóki się nie poruszą.

Na community znajdziesz dziesiątki zasobów realizujących tą funkcjonalność, poszukaj pod hasłem text.

Link to comment

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...