[C++] Gra "Wieża"

Leogict
Użytkownik
Użytkownik
Posty: 40
Rejestracja: 21 mar 2008, o 20:01
Płeć: Mężczyzna
Podziękował: 14 razy

[C++] Gra "Wieża"

Post autor: Leogict »

Witam, napisałem grę w C++ polegająca na dojściu od startu do mety.
Tryb tekstowy. Rozmiar planszy dowolny (ale może się krzaczyć wyświetlanie jak wpiszemy duży rozmiar planszy bo za małe okienko konsoli jest i brzydko to wygląda powyżej ok. 30). Program napisany obiektowo.

Plansza jest listą 4-kierunkową (np. pole wewnątrz planszy ma wskaźniki do lewego elementu, prawego, górnego i dolnego).

Sterowanie: WSAD, można wpisać całą sekwencję ruchów naraz (np sssdd oznacza 3 ruchy w dół i 2 w prawo), do gry dorobiłem drobną fabułę, przejścia między polami są punktowane (od każdego pola w 4 strony nie liczba skrajnych pól gdzie można iść w 2 lub 3 kierunkach). Jak wyjdziemy poza planszę, to game over. Jak 2 razy wejdziemy na to samo pole, to game over (jak w snake'u), ruchy w górę i w lewo są punktowane podwójnie (utrudnienie bo meta jest w prawym dolnym rogu i żeby zdobyć dużo pkt trzeba się trochę nakombinować).


Kod: Zaznacz cały

http://www.speedyshare.com/files/20349750/Wieza.zip


Czekam na komentarze, oceny, uwagi, ogólnie chciałbym wiedzieć co robię źle, co można poprawić (może nie tyle w samej grze ale jeżeli chodzi o mój styl pisania bo wiem że jest daleki od ideału), będę bardzo wdzięczny za wszelkie wskazówki.
Pozdrawiam.
Awatar użytkownika
kadiii
Użytkownik
Użytkownik
Posty: 642
Rejestracja: 20 gru 2005, o 21:04
Płeć: Mężczyzna
Lokalizacja: Wrocław
Pomógł: 130 razy

[C++] Gra "Wieża"

Post autor: kadiii »

Jeżeli mam się odnieść do samego kodu anie do gry(nieintuicyjne nazwy kierunków, nieurozmaicone zakończenie) to:
- to nie jest program, który wykorzystuje obiektowość w sensie koncepcyjnym - to, że stworzysz jakąś klasę i funkcje składowe nic nie zmienia - to jest typowe programowanie strukturalne
- tej enkapsulacji właściwie u ciebie nie ma bo oprócz jednej funkcji wszystkie inne mają dostęp do wszystkich danych
Moja rada jeśli ma to być ćwiczenie obiektowości i pisania jakiś mniejszych programów - przerzuć sie na ten czas na Javę. Wymusi ona naturalnie wykorzystywanie obiektowości, złapiesz dobre nawyki a nie będziesz mógł nadal pracowac w trybie tekstowym.
Leogict
Użytkownik
Użytkownik
Posty: 40
Rejestracja: 21 mar 2008, o 20:01
Płeć: Mężczyzna
Podziękował: 14 razy

[C++] Gra "Wieża"

Post autor: Leogict »

Kilka poprawek:
- poprawione odświeżanie (czyszczenie ekranu po każdym ruchu);
- dodane pułapki na 10% pól;
- zapętlenie gry;


ODPOWIEDZ