Grela Opublikowano 21 Lutego 2010 Udostępnij Opublikowano 21 Lutego 2010 W evencie colision murku: GML if objectPlayer.y > y {instance_destroy()} jednak to nie działa. Niewiem, dlaczego. Gdzie tu jest błąd? Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Roki Opublikowano 21 Lutego 2010 Udostępnij Opublikowano 21 Lutego 2010 Gracz musi być na murku, tak z tego wynika :P zamień znak z "<" na ">". Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Grela Opublikowano 21 Lutego 2010 Autor Udostępnij Opublikowano 21 Lutego 2010 Dalej nie działa :/. EDIT: 777/666 szatana postów :P Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
CTRL Opublikowano 21 Lutego 2010 Udostępnij Opublikowano 21 Lutego 2010 lepiej w stepie place_meeting(x,y,obj) Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Lord Marcelot Opublikowano 21 Lutego 2010 Udostępnij Opublikowano 21 Lutego 2010 Chyba to powinno być w step murku... Edit: A w ogóle jaki efekt chcesz uzyskać? Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Roki Opublikowano 21 Lutego 2010 Udostępnij Opublikowano 21 Lutego 2010 GML if !place_free(x,y+1) instance_destroy() Daj to w bricka step, jeżeli coś będzie pod brickiem to się zniszczy. To musi zadziałać, przynajmniej mi działało. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Grela Opublikowano 21 Lutego 2010 Autor Udostępnij Opublikowano 21 Lutego 2010 W step murku to odrazu się niszczył. EDIT: jak to pisałem nie było posta Rokiego Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Roki Opublikowano 21 Lutego 2010 Udostępnij Opublikowano 21 Lutego 2010 Niszczył się od razu, bo waunek zawsze był spełniony :P Dodaj mój kod, co do tamtych postów, waszych nie było :P Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Grela Opublikowano 21 Lutego 2010 Autor Udostępnij Opublikowano 21 Lutego 2010 Niestety Twój kod nie działa, ale może przez silnik platformowy Dawiddsa, który użyłem do mojej gry. Spróbuje bez niego. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Roki Opublikowano 21 Lutego 2010 Udostępnij Opublikowano 21 Lutego 2010 Chodzi o to że jak skoczysz w bricka od dołu się rozwala, tak? Mój powinien działać <lol>, dałeś to w bricka step? Co nie działa, nic się nie dzieje? Dobra, teraz mnie nie będzie więc nie odpisze, bo ide do kościoła :P Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Grela Opublikowano 21 Lutego 2010 Autor Udostępnij Opublikowano 21 Lutego 2010 No dałem tak jak mówiłeś, zresztą przed tym jak napisałeś, ten kod próbowałem :P. Pomódl się za mnie tam, żeby działało ;P XD Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
candy Opublikowano 21 Lutego 2010 Udostępnij Opublikowano 21 Lutego 2010 Ja bym to zrobił tak: 1. Ustawiłbym origin spritów na center. 2. W roomie dał tylko jeden murek i postać tak ustawioną nad nim, aby sprity obiektów się ze sobą stykały. 3. Odpalił debug, add expression to... i wpisał murek.y-player.y (zapamętaj wartość) 4. Potem dal w stepie murku: if(y-postac.y==(wartość, którą odczytałeś z debuga)&&abs(x-postac.x)<=(połowa szerokości sprite murka)) instance_destroy() Wtedy murek zniknie, gdy postac będzie na nim stała. Powinno działać, jeżeli Twój murek ma ciągle te same wymiary. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Grela Opublikowano 21 Lutego 2010 Autor Udostępnij Opublikowano 21 Lutego 2010 Ale ja nie chcę, żeby znikał jak będe na nim stał :(. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
candy Opublikowano 21 Lutego 2010 Udostępnij Opublikowano 21 Lutego 2010 Teraz to już nie czaje. Więc co robi to instance_destroy()? Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Grela Opublikowano 21 Lutego 2010 Autor Udostępnij Opublikowano 21 Lutego 2010 Odpowiada za niszczenie murku. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
candy Opublikowano 21 Lutego 2010 Udostępnij Opublikowano 21 Lutego 2010 W evencie colision murku: GML if objectPlayer.y > y {instance_destroy()} Może źle się wyraziłem. Chodziło mi co to instance_destroy() robi w Twoim kodzie, jeżeli nie chcesz nic usuwać? Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
maciej-01 Opublikowano 21 Lutego 2010 Udostępnij Opublikowano 21 Lutego 2010 W evencie colision murku: GML if objectPlayer.y > y {instance_destroy()} jednak to nie działa. Niewiem, dlaczego. Gdzie tu jest błąd? Y idzie w prawo, tak? Jak dajesz twój kod w colision, to trzeba stać na prawej części murku żeby murek zniknął. Ave Ingen. Rip Ingen. OFFTOP: AntY - twoja sygnaturka ma 157 px wysokości =D Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Filar Społeczności ANtY Opublikowano 21 Lutego 2010 Filar Społeczności Udostępnij Opublikowano 21 Lutego 2010 Usuwać jak walnie murek głową, czyli od spodu, jak w mario maciej widzę pro znafca Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
maciej-01 Opublikowano 21 Lutego 2010 Udostępnij Opublikowano 21 Lutego 2010 kurczak, a o to chodzi, ustaw origin na środku sprite :P x biegnie w prawo :bash: Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Grela Opublikowano 21 Lutego 2010 Autor Udostępnij Opublikowano 21 Lutego 2010 Dobra dzięki. :P Jeszcze napisze tu dwa pytania, żeby nie robić nowego tematu Mam taki kod GML (create hera) hero_speed=0 air=0 GML (step hera) if place_free(x,y+1) {gravity=0.5} else {gravity=0} if hero_speed<5 {hero_speed+=0.10} if air=0 if keyboard_check(vk_right) {if place_free(x+hero_speed,y) {x+=hero_speed}} else if keyboard_check(vk_right) {if place_free(x+5,y) {x+=5}} if air=0 if keyboard_check(vk_left) {if place_free(x-hero_speed,y) {x-=hero_speed}} else if keyboard_check(vk_left) {if place_free(x-5,y) {x-=5}} if keyboard_check(vk_up) {if !place_free(x,y+1) {vspeed=-10 air=1}} if keyboard_check_released(vk_right) or keyboard_check_released(vk_left) {hero_speed=0} GML (event kolizji z murkiem) move_contact_solid(270,4) vspeed=0 air=0 Chodzi mi o to, żeby hero nie używał rozpędzania się gdy jest w powietrzu, ale zamiast tego nie moge w powietrzu teraz się wogóle ruszyć. Co zrobiłem źle? I jeszcze jedno. Na podstawie tego kodu co dałem, jak zrobić, że jak puszcze np. klawisz strzałki w prawo, to hero będzie powolutku hamował(tarcie)? :P Z góry dzięki Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
candy Opublikowano 21 Lutego 2010 Udostępnij Opublikowano 21 Lutego 2010 Co do pierwszego... GML if air=0 if keyboard_check(vk_right) {if place_free(x+hero_speed,y) {x+=hero_speed}} else if keyboard_check(vk_right) {if place_free(x+5,y) {x+=5}} Zamiast tego napisz to: GML if(air==0) { if keyboard_check(vk_right) { if place_free(x+hero_speed,y) { x+=hero_speed; } } } else { if keyboard_check(vk_right) { if place_free(x+5,y) { x+=5; } } } Wydaje mi się, że chodzi o te klamry. E. To samo zrób jeżeli chodzi o lewą stronę. E2. Co do drugiego spróbuj tego: if(!keybord_check(vk_left)&&!keybord_check(vk_right)&&hero_speed) hero_speed-=0.1; 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ę