Dwie gry w Javie: FreeBreakout i FreeSnake

Napisano dnia 26.12.2013 r. o godzinie 17:00
Autor: Piotr Sperka

FreeBreakoutFreeSnake

Wstęp

Tym razem mam do zaprezentowania dwie bardzo proste gry napisane w Javie. Są one dla mnie pierwszym podejściem, zarówno w Javie, jak i ogólnie do napisania gry komputerowej i prostej animacji. Prócz gotowych programów załączam także ich kody źródłowe. Nie należy ich raczej traktować jako jakiegokolwiek wzorca (jak pisałem – pierwsze podejście do tego  typu aplikacji), jednak gdyby ktoś bardziej obeznany w temacie ode mnie miał jakieś uwagi to chętnie wysłucham konstruktywnej krytyki.

FreeBreakout

Jak sama nazwa wskazuje, jest to prosta implementacja gry Breakout. Grę tę napisałem na początku listopada i była to moja pierwsza styczność z programowaniem nawet najprostszych gier. Gra daje do wyboru cztery prędkości piłeczki, która odbija się od ścianek i klocków tylko pod jednym, z góry ustalonym kątem, stąd czasem ciężko jest trafić w ostatnie klocki. Gracz rozpoczyna z trzema „życiami”, które traci, gdy piłeczka spadnie oraz dostaje dodatkowe, gdy zbije wszystkie klocki. Grę obsługuje się przy pomocy myszy – ruchem steruje się położeniem paletki, natomiast kliknięcie lewym przyciskiem rozpoczyna grę (wybija piłeczkę).  Ilość i rozmieszczenie klocków jest generowane pseudolosowo. Główną wadą jest sposób odbijania się piłeczki, i żeby w miarę dobrze się grało trzeba by go w jakiś sposób zmieniać.

FreeSnake

Druga gra, napisana przeze mnie wczoraj w ciągu około dwóch godzin, to prosta implementacja gry Snake. Jest to gra, którą chyba zna każdy, choćby z telefonów sprzed kilku lat. Gra oferuje cztery prędkości poruszania się węża. Sterowanie odbywa się przy pomocy strzałek na klawiaturze. W tej wersji gry wąż może „przechodzić” przez krawędzie okna gry (pojawia się na przeciwnym końcu okna). Grę można by urozmaicić np. poprzez dodanie dodatkowych przeszkód.

Pliki do pobrania

Uwaga! Gry do działania potrzebują Wirtualnej Maszyna Java, którą za darmo można pobrać TUTAJ.

Free Breakout

FreeBreakout – źródła

FreeSnake

FreeSnake – źródła