Skip to content

Latest commit

聽

History

History
77 lines (63 loc) 路 4.23 KB

README.md

File metadata and controls

77 lines (63 loc) 路 4.23 KB

馃殌 Dokumentacja projektu / Project Documentation

馃嚨馃嚤 Polski

Jak zaimplementowa膰 projekt?

Aplikacja zosta艂a napisana w 艣rodowisku CLion i zaleca si臋 jej uruchamianie bezpo艣rednio w tym 艣rodowisku. Aplikacja implementuje jedn膮 bibliotek臋: nlohmann/json, kt贸ra jest dodana w pliku CMakeLists.txt.

Jak uruchomi膰 projekt?

Nale偶y utworzy膰 pusty folder, w kt贸rym b臋dzie znajdowa膰 si臋 plik wykonywalny. Nast臋pnie wystarczy uruchomi膰 plik wykonywalny .exe (zaleca si臋 korzystanie z aplikacji w trybie pe艂noekranowym).

Opis aplikacji

Po uruchomieniu gry u偶ytkownikowi wy艣wietla si臋 menu g艂贸wne, w kt贸rym mo偶e wybra膰 jedn膮 z pi臋ciu opcji:

  1. Nowa gra - rozpocz臋cie nowej gry.
  2. Wczytaj gr臋 - wczytanie zapisanej gry.
  3. Statystyki graczy - wy艣wietlenie statystyk graczy oraz odblokowanych przez nich osi膮gni臋膰. Pojawi膮 si臋 tam tylko u偶ytkownicy zapisani - tacy, kt贸rzy zagrali ju偶 w gr臋.
  4. Osi膮gni臋cia - wy艣wietlenie wszystkich osi膮gni臋膰 wraz z ich opisem.
  5. Wyj艣cie - wyj艣cie z gry.

Funkcjonalno艣膰

Do gry dodano kilka dodatkowych funkcji, kt贸re urozmaicaj膮 rozgrywk臋:

  1. Odblokowywanie osi膮gni臋膰.
  2. Gra z komputerem - w艂膮cza si臋 automatycznie, gdy wprowadzony zostanie tylko jeden gracz.
  3. Zapisywanie u偶ytkownik贸w wraz z ich osi膮gni臋ciami i statystykami.
  4. Poziomy trudno艣ci - gracz mo偶e wybra膰 poziom trudno艣ci, na kt贸rym chce gra膰.
  5. Wy艣wietlanie statystyk graczy.
  6. Wy艣wietlanie osi膮gni臋膰.
  7. Mo偶liwo艣膰 wyboru rozmiaru planszy.
  8. Mo偶liwo艣膰 grania w trybie hot-seat, a偶 do 10 graczy.
  9. Zapisywanie gry w dowolnym momencie poprzez wpisanie !zapisz. Gr臋 mo偶na wczyta膰 w menu g艂贸wnym. Gra obs艂uguj臋 wiele zapis贸w, kt贸re s膮 zapisywane w folderze resources.

Dodatkowe informacje

  • Aplikacja sama generuje folder resources w katalogu, w kt贸rym zosta艂a uruchomiona gra.
  • Ca艂a gra jest napisana w j臋zyku C++ z wykorzystaniem biblioteki JSON do zapisu danych.
  • Aplikacja zawiera 3200 linii kodu, a jej napisanie zaj臋艂o prawie 27 godzin.

Autor

  • Autorem aplikacji jest Karol Dronia.
馃嚞馃嚙 English

How to implement the project?

The application was written in the CLion environment, and it is recommended to run it directly in this environment. The application implements one library: nlohmann/json, which is added in the CMakeLists.txt file.

How to run the project?

Create an empty folder where the executable file will be located. Then simply run the .exe executable file (it is recommended to use the application in full-screen mode).

Application description

After launching the game, the main menu is displayed to the user, where they can choose one of five options:

  1. New game - start a new game.
  2. Load game - load a saved game.
  3. Player statistics - display player statistics and achievements they have unlocked. Only saved users will appear there - those who have already played the game.
  4. Achievements - display all achievements along with their descriptions.
  5. Exit - exit the game.

Functionality

Several additional functions have been added to the game to enhance gameplay:

  1. Unlocking achievements.
  2. Playing against the computer - automatically enabled when only one player is entered.
  3. Saving users along with their achievements and statistics.
  4. Difficulty levels - the player can choose the difficulty level they want to play at.
  5. Displaying player statistics.
  6. Displaying achievements.
  7. Ability to choose the board size.
  8. Ability to play in hot-seat mode with up to 10 players.
  9. Saving the game at any time by typing !save. The game can be loaded from the main menu. The game supports multiple saves, which are stored in the resources folder.

Additional information

  • The application automatically generates a resources folder in the directory where the game was launched.
  • The entire game is written in C++ using the JSON library for data storage.
  • The application contains 3,200 lines of code, and it took almost 27 hours to write.

Author

  • The author of the application is Karol Dronia.