Giter Club home page Giter Club logo

war-game's Introduction

Zadanie: Gry Wojenne

Termin oddania Punkty
30.04.2021 23:00 10

Przekroczenie terminu o n zajęć wiąże się z karą:

  • punkty uzyskania za realizację zadania są dzielone przez 2n.

W grze biorą udział dwaj generałowie ze swoimi armiami. Każdy generał posiada armię żołnierzy oraz worek ze złotymi monetami.

Żołnierze posiadają:

  • stopień wojskowy: szeregowy (wartość: 1), kapral (wartość: 2), kapitan (wartość: 3) i major (wartość: 4)
  • doświadczenie
  • siła żołnierza jest obliczana jako iloczyn jego stopnia i doświadczenia
  • żołnierz ginie, gdy jego doświadczenie = 0
  • jeżeli doświadczenie osiągnie pięciokrotność wartości stopnia, awansuje na kolejny stopień oraz jego doświadczenie = 1.

Generałowie posiadają początkową (ograniczoną) liczbę złotych monet. Celem generała jest posiadanie największej i najlepiej wyszkolonej armii.

Generał może:

  • zarządzić manewry swojej armii (lub jej części), które powiększają doświadczenie uczestniczących w nich żołnierzy o 1; manewry kosztują: za każdego żołnierza biorącego udział w manewrach generał płaci wartość (liczbę monet) przypisaną do stopnia wojskowego
  • zaatakować drugiego generała; wygrywa generał, który posiada armię o większej łącznej sile; przegrany przekazuje 10% swojego złota wygrywającemu; każdy żołnierz z armii przegrywającej traci 1 punkt doświadczenia, a z wygrywającej zyskuje jeden; w przypadku remisu każdy generał musi rozstrzelać jednego swojego losowo wybranego żołnierza
  • kupić żołnierzy; koszt żołnierza = 10 *(jego stopień); zakupieni żołnierze posiadają doświadczenie = 1

Walczącym generałom przygląda się sekretarz prezydenta. Pisze on raporty dotyczące obu armii. Opisuje wszelkie akcje podjęte przez generałów oraz zmiany poszczególnych żołnierzy. Generał wraz ze swoimi zasobami powinien mieć możliwość zapisu i odczytu swojego stanu na / z dysku.


W zadaniu oceniane będą:

  • Tworzenie klas: 10%
  • Kompozycja: 10%
  • Dziedziczenie: 20%
  • Implementacje odpowiednich wzorców projektowych: 30%
  • Implementacja opisanych algorytmów: 20%
  • Polimorfizm: 10%

Uwaga

Projekt powinien również zawierać odpowiednie testy jednostkowe do implementowanej funkcjonalności.

war-game's People

Contributors

szymonwilczewski avatar github-classroom[bot] avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.