Muchaszewski Opublikowano 13 Października 2008 Udostępnij Opublikowano 13 Października 2008 Mam kolejny problem moja ryba pływa w wodzie i nie chce by z niej wypływała próbowałem zrobić tak GML w step if !place_meeting(x,y,woda) { direction = -direction } ale coś mi nie wyszło i wylatuje z wody a potem lata jak opętana zasada działania bota tu przykład Rewlisz-aPobierz Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Crackkk-GM Opublikowano 13 Października 2008 Udostępnij Opublikowano 13 Października 2008 if !collision_rectangle(...) then x=xprevious y=yprevious Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Muchaszewski Opublikowano 13 Października 2008 Autor Udostępnij Opublikowano 13 Października 2008 A dało by się to jakoś zrobć inaczej żebym do każdej wody nie musiał ustawiać od początku???? Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
copoconaco Opublikowano 13 Października 2008 Udostępnij Opublikowano 13 Października 2008 kurde czlowieku jesli nie chcesz zeby obiekt opuszczal room daj na krawedzi niewidoczny obiekt po kolizji z ktorym ryba zmieni kierunek na przeciwny, albo niech ryba sprawdza czy x>0 (jesli x jest mniejsze niz 0 to znaczy ze jest poza plansza w lewo) i x<room_width (jasli x jest wieksze niz r_w to ryba poszla se poza prawa krawedz)... aaa i jeszcze jedno: czy jesli zrobisz ptaka to zrobisz mu tez powietrze zeby mogl latac? Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Dawidds Opublikowano 14 Października 2008 Udostępnij Opublikowano 14 Października 2008 Copoconaco: A po cholerę robić masę zbędnych obiektów :P ? @Topic: Naucz się znajdować błędy... Robisz taki bajer, że jeśli to place_meeting() zwraca 1, to ustawia zmienną global.test na 1, a jeśli zwraca 0, to ustawia tą zmienną na... no zgadnij...? W ten sposób przetestujesz, czy kod zmiany kątu w ogóle się wykonuje, czy funkcja place_meeting działa jak należy. Uruchamiając grę w Debug Mode i klikając na taki zielony plusik możesz dodać zmienną, która ma być "sprawdzana". I kolejno, jeśli: a) Zmienna global.test będzie działać, jak należy, tzn zieniać swoją wartość w odpowiednim momencie, to znaczy, ze funkcja place_meeting jest OK. Więc problem musi tkwić w twoim "direction = -direction" B) Zmienna global.test będzie zawsze miała taką samą wartość, to znaczy, że musisz użyć innej funkcji. I na koniec rada: direction = kąt. Może posiadać wartości od 0 do 359.999... . Co prawda GM uznaje kąty mniejsze niż i większe niż 360, ale tak po prostu nie powinno być - utrudnia to wszelkiego rodzaju "obliczenia" vspeed = prędkość w pionie hspeed = prędkość w poziomie speed = ogólna Redkowic bohatera. Te wszystkie 4 zmienne są od siebie "uzależnione". Jeśli nadasz obiektowi speed = 10 i direction = 17.3, to zmienne hspeed i vspeed odpowiednio zmienią swoje wartości. A teraz biorąc pod uwagę to, co napisałem, sprawdź działanie swojego kodu. PS: A jakbyś i tak nie znalazł błędu, to sprawdzaj w Debug Mode wartość zmiennej direction ryby... Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Rekomendowane odpowiedzi
Jeśli chcesz dodać odpowiedź, zaloguj się lub zarejestruj nowe konto
Jedynie zarejestrowani użytkownicy mogą komentować zawartość tej strony.
Zarejestruj nowe konto
Załóż nowe konto. To bardzo proste!
Zarejestruj sięZaloguj się
Posiadasz już konto? Zaloguj się poniżej.
Zaloguj się