Cygnus Opublikowano 8 Września 2014 Udostępnij Opublikowano 8 Września 2014 Cześć wszystkim Mam taki problem.Otóż mam dwa objekty drabina(obj106 i obj107),no i problem w tym jak to zrobić żebym mógł chodzić po tej drabinie..O to kod bohatera czyli obj_player Bo teraz jak do drabiny podchodze,wykonuje ruch do gory,i jak szybko naciskam klawisz to bohater nie wchodzi po drabinie,tylko tak jakby wykonywał duży skok CREATE GML [/gml] start_x = x; start_y = y; phy_fixed_rotation = true; move_speed = 200; max_xspeed = 2; jumping = false; jump_force = -95; ladder = false; global.prevRoom = SENczB; [gml] STEP GML [/gml] phy_speed_x = max(min(phy_speed_x, max_xspeed) , -max_xspeed); if(phy_speed_x > 0.1 || phy_speed_x < -0.1) { sprite_index = spr_Player_Running; } else{ sprite_index = sprPlayer; } if (phy_speed_y > 1.2) { sprite_index = spr_Player_Falling; } image_speed = phy_speed_x / 10; background_x[0] = -phy_position_x / 5; background_x[0] = -phy_position_y / 5; background_x[1] = -phy_position_x / 5; background_x[1] = -phy_position_y / 5; if keyboard_check(vk_control) { instance_create(x,y,obj_laserek); } if (!place_meeting(x,y,object106)) { ladder = false; } if (ladder = true) { gravity = 0; vspeed = 0; } if (keyboard_check(vk_up) || keyboard_check(vk_down)) { image_speed = 0.2 } else { image_speed = 0; } [gml] --><--Collision objec106 GML [/gml] if (keyboard_check(vk_up)) { ladder = true; if (place_free(x,y-3)) { y -= 2; } } if (keyboard_check(vk_down)) { ladder = true; if (place_free(x,y+3)) { y += 2; } } [gml] Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Fervi_ Opublikowano 9 Września 2014 Udostępnij Opublikowano 9 Września 2014 Ogarnąłbyś ten kod, bo jak go czytam, to taki burdel masz, że nie wiem co ty chcesz wstawić Spróbuj zamienić keyboard_check na keyboard_check_pressed Fervi Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Administratorzy gnysek Opublikowano 9 Września 2014 Administratorzy Udostępnij Opublikowano 9 Września 2014 Jak używasz fizyki (phy_xxx) to nie mieszaj tego z gravity itp. Korzystaj z tamtych zmiennych. A jak chcesz wchodzić po drabinie to wystarczy y-=<wartosc>; No i ogólnie raczej silnik fizyki 2d nie zakłada czegoś takiego jak drabiny, bo skąd ma wiedzieć, kiedy podłoga jeszcze jest przenikalna a kiedy nie? Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Cygnus Opublikowano 9 Września 2014 Autor Udostępnij Opublikowano 9 Września 2014 keyboard_check na keyboard_check_pressed tak zmieniłem,ale nic to nie zmienia:/ wiem,że bałagan mam w tym kodzie:/ Napiszcie chłopaki,co mam wpisać,żeby te chodzenie po drabinie działo:/ 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ę