Projekt: tworzymy własną grę w (6)-2: Spacerem po grze

Pierwsza część projektu      Poprzednia część projektu

Dokończenie pierwszej części artykułu. Dzisiaj opiszę wreszcie obiecywany ruch gracza, oraz gra uzyska status alfa1, co znaczy, że będzie grywalna z wykorzystaniem podstawowych funkcji. Dzisiejszym zadaniem jest:

Poruszanie w grze.

W tym odcinku zostanie dodany ruch postaci pomiędzy obszarami wraz z pełną informacją opisową dla gracza. Na sam początek gra informuje gracza o tym, gdzie może iść, przy okazji przypominając zasady sterowania. Sprawdzone zostanie to, które drzwi są otwarte, więc można z nich skorzystać.

Następnie zostanie z klawiatury odczytana decyzja gracza i przekazana do metody klasy Player. Można to zrobić na dwa, w gruncie rzeczy identyczne sposoby: Klasycznie wykorzystując komendy if – else if:

lub wykorzystując operator ?:

Oba te sposoby są poprawne i działają identycznie. Dobrze jest znać oba te sposoby zapisu. Na tym etapie sprawdzane jest jaki klawisz został wciśnięty, analizowane są zarówno duże, jak i małe litery, oraz wykluczana jest możliwość przejścia przez drzwi zamknięte.

Na zakończenie należy dodać funkcjonalność, która wykorzysta tę informację do przemieszczenia gracza, dopisując odpowiednią metodę do klasy Player:

Oczywiście trzeba wpisać jeszcze wywołanie do funkcji i metody w główną pętlę gry. Po wykonaniu ruchu wszystko zaczyna się od nowa… albo kończy. Jeszcze brakuje właściwego zakończenia gry, ale ten moduł zostanie dopisany w następnej części. Można już poruszać się po obszarze gry, sprawdzić, czy opisy pomieszczeń, zamykanie drzwi i inne elementy działają. W następnej części: wynik gry oraz zapis i odczyt pliku. Dzięki temu uzyskamy w pełni grywalną grę, do której będzie można już tylko dodawać kolejne funkcjonalności. 

Link do projektu na GitHub (W kodzie „wykomentowane” są części kodu, które będą dołączone i omówione w następnej części).

Następna część projektu.

2 myśli na temat “Projekt: tworzymy własną grę w (6)-2: Spacerem po grze

    Dodaj komentarz