Skip to content

acostin643/GwentStoneLite

Repository files navigation

Baltag Constantin - 325CA Tema 0 POO

fileio: am adaugat un camp used si altul frozen in CardInput pentru a facilita actiunile de atac/abilitate

Player.java: O clasa suplimentara creata pentru facilitarea desfasurarii actiunilor. Am pus un boolean care are valoarea 0 in caz ca instanta obiectului apartine jucatorului unu si 1 in caz negativ. Campurile deck, hand, hero si mana corespund informatiilor din cerinta data.

Constants.java: O clasa creata pentru evitarea erorilor de checkstyle de tip "magic number".

CardTable.java: O clasa creata pentru interactiunea cu masa de joc. Aceasta are un grid de carti de joc, alaturi de informatii legate de cate tankuri sunt per rand, capacitatea fiecaruia, etc.

Main.java: Aici doar folosesc clasa Flow, in care sunt gestionate pregatirea mesei de joc si tratarea fiecarui caz

Flow.java: La inceput sunt definite variabilele necesare pentru derularea jocului (jucatori, deckuri, indici etc), alaturi de niste getteri si setteri. Am adaugat comentarii JavaDoc pentru evitarea erorilor de checkstyle. Este de asemenea definita o functie pentru validarea atacurilor si abilitatilor, care returneaza 0 pentru un atac valid si diverse coduri de erori in caz negativ. In functia processGame este realizata intai pregatirea jocului (resetarea manei, vietii, cartilor etc), dupa care se verifica pentru fiecare joc seria de comenzi si se executa corespunzator. Comenzile de atacuri si de abilitati nu pot fi executate decat atat timp cat jocul este inca in desfasurare, prin urmare am adaugat conditia corespunzatoare.

CaseHandler.java: Aici este scris codul pentru executarea efectiva a comenzilor. Fiecare metoda are comentarii care explica cum este gestionata actiunea asociata ei.

About

A simple card game inspired by Hearthstone and Gwent

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages