Siemanko
Mam śmieszny problem. Próbowałem dziś zrobić sobie byt, którego pozycja jest zależna od bytu gracza. Podzielę się z wami kawałkiem kodu, który na razie znajduje się w PreThinku (potem zrobię może think bytu osobno). Przykładowo linijka obliczania origin dla osi X wygląda tak:
Origin2[0] = Origin1[0] + floatmul(10.0, floatcos(Angles[1], degrees))
Gdzie Origin2 to tablica typu Float przechowująca współrzędne tego bytu, Origin1 to tablica też Float, przechowująca współrzędne gracza, Angles to też tablica w której jest kąt między osią Y a wektorem, wzdłuż którego idzie wzrok gracza. Pozostałych współrzędnych nie wrzucam, bo są to bardzo podobne przekształcenia matematyczne i to w sumie jeden pies. Próbowałem też w ten sposób:
Origin2[0] = Origin1[0] + (10.0 * floatcos(Angles[1], degrees))
No i wszystko by było spoko, ale takie współrzędne otrzymuje ten byt:
i nie tylko, że są to kolosalne liczby, to jeszcze daleko poza mapą. Na HUD Angles to kąty tego wektora patrzenia gracza (pev_v_angle). Origin to współrzędne gracza, Origin2 to współrzędne tego bytu, o którym mowa, a sin to sinus kąta który mamy przy Y w Angles (dodałem bo chciałem sprawdzić, czy może to nie funkcje trygonometryczne zwracają mi dziwne wyniki, ale jak widać jest prawidłowo).
Co może być przyczyną takiego zachowania? Wydaje mi się, że zapis matematyczny jest jak najbardziej poprawny..