[Allegro] Blokowanie Ruchu Postaci - kolizja
Ostatnio zmodyfikowano 2009-10-04 19:19
Saiph Temat założony przez niniejszego użytkownika |
[Allegro] Blokowanie Ruchu Postaci - kolizja » 2009-10-04 19:02:32 Witam wszystkich. Tak bawię się teraz w allegro i pisze se takiego rpga 2d... Postać jest ustawiona na środku ekranu(nie może się poruszać), jeśli gracz kliknie strzałkę do góry, to mapa przesuwa się do góry jeśli w dol to w dol i tak dalej... Kłopot mam niestety z zrobieniem blokowania. Żeby np. Nie można było wejść w 1 w mapie(mapa jest w tablicy 2 wymiarowej). Zastanawiałem się nad kolizja, ale cos nie wiem jak mozna to napisać bo: 1. Jak wejdziemy to nie wyjdzimy. 2. Jakos to trzeba tak zrobić ze jeśli się wejdzie z prawej strony to dalsze posowanie w prawo jest niemozliwe, mozna sie tylko wycofać. Widziałem taki blokowanie w jakiejś gre tutaj bojarze lord of demon czy jakos tam, ale nie wiem jak coś takiego zrobić prosze o pomoc. |
|
lynx |
» 2009-10-04 19:19:43 Nie wiem dokładnie o co Ci chodzi. Wiem że masz problem z kolizją. :) Obiekty na które nie mozna wejść są zapisane na mapie (tablicy) w postaci 1, tak? Więc: Zamień współrzędne postaci określoną kratkę na mapie (wymiary kratki) Później to już tylko nie dopuszczasz do wejścia na siebie postaci i obiektu. Na kodzie: int ludzik_x_na_tablicy = ludzik_x / szer_kratki_mapy; int ludzik_y_na_tablicy = ludzik_y / wys_kratki_mapy;
if( key( KEY_LEFT ) && mapa[ ludzik_x_na_tablicy + 1 ][ ludzik_y_na_tablicy ] ) { } |
|
« 1 » |