marcibaumel / SpeedCards

Szoftvertechnológia c. tárgy (GEIAL314B kurzus)-hoz tartozó beadandó feladat Verziókövető Oldala.
https://marcibaumel.github.io/SpeedCards/
1 stars 0 forks source link

3.6. Az analízis modell osztályainak listája. #78

Open marcibaumel opened 4 years ago

MrDxD-SoulAdmin commented 3 years ago

Bocsi de ezt most beve... khmm beteszem ide :D Main Osztály: User Osztály: Level Osztaly: CardObject Osztály: Hand osztály: EffectCard Object Osztály: SoundManager osztály:// GroundCardObject Osztály: AirCardObject Osztály: Dealer Osztály: Deck Osztály: DbContext Osztály: CardUnitOfWork Osztály: UserUnitOfWork Osztály:// ShopUnitOfWork Osztály: UserLoginController Osztály:// RegistrationController Osztály:// EffectCardController Osztály: MainMenuViewController Osztály:// HandController Osztály: OptionsViewController Osztály:// PlayGroundViewController: PlayControllerOsztály: CardDescriptionController osztály: ShopController osztály: Display managger:// UserData MAnagger:// OnGroundCardObject Osztály: DestroyedCardObject Osztály:

Rokli02 commented 3 years ago

3.6 Az analízis modell osztályainak listája

3.6.1

MainMenuViewController

Felelőssége, feladata:

Lekezeli a főmenüben a az adott gombok lenyomását követő metódusokat

Együttműködők:

User

Felelőssége, feladata:

A felhasználó adatait kéri le, adja át más osztályoknak, amik igényt tartanak rá.

Együttműködők:

Level

Felelőssége, feladata:

A felhasználó szintjéhez kötődik, meghatározza, hogy milyen szintbe esik hogyha egy adott mennyiségű Xp-t kap. Meccsek végén ennek az osztálynak adódik a meccsből jövő Xp.

Együttműködők:

CardObject

Felelőssége, feladata:

A játékban a kártya objektumok erre az osztályra épülnek, ebbe van definiálva és itt található néhány elemi metódusa.

Együttműködők:

Hand

Felelőssége, feladata:

A játékos kezében levő kártyákat tartja számon és adja vissza.

Együttműködők:

EffectCardObject

Felelőssége, feladata:

Ez az osztály foglalkozik az effekt kártyák példányosításáért, továbbá hogy milyen képességei, tulajdonságai vannak az adott kártyáknak.

Együttműködők:

SoundManager

Felelőssége, feladata:

Kezeli a játékban történő minden hang beállítását, némítását, zene hangerő beállítását, némítását, stb.

Együttműködők:

GroundCardObject

Felelőssége, feladata:

Ez az osztály foglalkozik az földi kártyák példányosításáért, kezeli az életét, és hogy mekkora támadó erővel bír.

Együttműködők:

AirCardObject

Felelőssége, feladata:

Ez az osztály foglalkozik az légi kártyák példányosításáért, kezeli az életét, és hogy mekkora támadó erővel bír.

Együttműködők:

Dealer

Felelőssége, feladata:

Kezeli a játékteret, ő osztja ki véletlenszerűen a két játékosnak a kártyáit a játék elején és -közben, a játékosnak minden kör elején a függvénye által számított kristályt ad, de elvenni a játékos kezéből nem tud semmit, ahhoz csak hozzáadni tud.

Együttműködők:

Deck

Felelőssége, feladata:

A felhasználók itt tudják kiválasztani, hogy mely kártyákat rakják be a paklijukba, amivel csatlakoznak majd a játékba.

Együttműködők:

DbContext

Felelőssége, feladata:

Az adatbázis és a program osztályai közötti adatfolyamot lebonyolító osztály, gyakorlatilag egy köztes réteg.

Együttműködők:

CardUnitOfWork

Felelőssége, feladata:

A kártyákat kezelő adatbázisból vesz ki, rak be, kezeli az adatokat.

Együttműködők:

UserUnitOfWork

Felelőssége, feladata:

A felhasználókat kezelő adatbázisból vesz ki, rak be, kezeli az adatokat.

Együttműködők:

ShopUnitOfWork

Felelőssége, feladata:

A boltot kezelő adatbázisból vesz ki, rak be, kezeli az adatokat.

Együttműködők:

LoginController

Felelőssége, feladata:

A már regisztrált felhasználók belépését végizi

Együttműködők:

RegistrationController

Felelőssége, feladata:

Még a rendszerben bent nem lévő játékosokat felviszi az adatbázisba (regisztrálja őket).

Együttműködők:

HandController

Felelőssége, feladata:

Kezeli a játékos kezében levő lapokat, a játékos kristályainak a számát.

Együttműködők:

OptionsViewController

Felelőssége, feladata:

A beállítások menüt kezeli, ez egy grafikus felületet kezelő osztály.

Együttműködők:

PlayGroundViewController

Felelőssége, feladata:

Kezeli a játék harcterének a grafikus megjelenítését.

Együttműködők:

PlayController

Felelőssége, feladata:

Kezeli a játék match közbeni történéseiket, számolja, hogy mennyi idő telt el a játék kezdete óta, figyeli, hogy a játékosok a kör időkön ne tudjanak túlcsúszni, stb.

Együttműködők:

CardDescriptionController

Felelőssége, feladata:

Leírja a kártyák tulajdonságát, mint a nevét és egy rövidebb leírást.

Együttműködők:

ShopController

Felelőssége, feladata:

Ez is egy grafikus felületet kezelő osztály, a boltnak az adott funkcióit kezeli le.

Együttműködők:

DisplayManager

Felelőssége, feladata:

Beállítja a játék felbontását, hogy teljes képernyőben legyen-e kiterjesztve, vagy sem.

Együttműködők:

UserDataManager

Felelőssége, feladata:

Változtatni lehet a játékos felhasználóképét, a felhasználói nevét és a jelszavát.

Együttműködők:

OnGroundCardObject

Felelőssége, feladata:

A harctéren levő kártyákat kezeli, figyeli melyikek vannak lent és hogy hány darab.

Együttműködők:

DestroyedCardObject

Felelőssége, feladata:

Itt állítódik át az elpusztított, vagy pedig kijátszott kártya elpusztított/elhasználtra.

Együttműködők:

Rokli02 commented 3 years ago

1.5 óra, majd később folytatom +2 óra +15 perc +pénzfa +levi munkadílj

MrDxD-SoulAdmin commented 3 years ago

<!DOCTYPE html>

3.6 Az analízis modell osztályainak listája

3.6.1 MainMenuViewController

Felelőssége, feladata:

Lekezeli a főmenüben a az adott gombok lenyomását követő metódusokat

Együttműködők: Attribútumok:
Név Típus Leírás
Login boolean

Operációk:
Név Argomentumok Működés/Leírás
playButton() - A játékot elindítja

3.6.2 User

Felelőssége, feladata:

A felhasználó adatait kéri le, adja át más osztályoknak, amik igényt tartanak rá.

Együttműködők: Attribútumok:
Név Típus Leírás
FID INT
Name STRING
Password STRING
BirthDay DATE
Permission ENUM

Operációk:
Név Argomentumok Működés/Leírás
getName() Object : i_where Lekéri a felhasználó nevét, az "i_where" rámutat az adatbázisban az adott név helyére.
getLevel() Object : i_where Lekéri a felhasználó profiljának a szintjét, az "i_where" rámutat az adatbázisban az adott név helyére.
setXP() int : xp A Level osztály által kapott értékkel növeli a profil xp szintjét.
OwnedCards() user : person A felhasználó által birtokolt kártyák vannak letárolva itt.

3.6.3 Level

Felelőssége, feladata:

A felhasználó szintjéhez kötődik, meghatározza, hogy milyen szintbe esik hogyha egy adott mennyiségű Xp-t kap. Meccsek végén ennek az osztálynak adódik a meccsből jövő Xp.

Együttműködők: Attribútumok:
Név Típus Leírás
WinExp INT
LoseExp INT
Multiplier DOUBLLE

Operációk:
Név Argomentumok Működés/Leírás
setLevel() Object : i_where & int : szint Lekéri a felhasználó által szerzett xp mennyiség helyét, az "i_where", és beállítja, hogy a felhasználó hanyas szintű lesz/marad, ha ezt megkapja.
rangeLevelByXp() int : xp Meghatározza, hogy mekkora xp mennyiségek milyen szintbe rakja a játékost.
matchXpCalculator() Boolean : win & int : hoszz Kiszámolja, hogy nyert, vagy vesztett meccsért mennyi Xp jár, az érték függ a játék hosszától.

3.6.4 CardObject

Felelőssége, feladata:

A játékban a kártya objektumok erre az osztályra épülnek, ebbe van definiálva és itt található néhány elemi metódusa.

Együttműködők: Attribútumok:
Név Típus Leírás
DefPoint INT
AtcPoint INT
HealthPoint INT
Destroyed BOOLEAN

Operációk:
Név Argomentumok Működés/Leírás
playButton() - Kijátsza a kártyát, így vagy egy effektet rakva egy másik kártyára, vagy pedig támad.
backButton() - Visszavonja a kártya kijátszásának lehetőségét
crystalConsumption() - Azt mondja meg, hogy mennyi kristályért cserébe tudjuk kijátszani a kártyát.

3.6.5 Hand

Felelőssége, feladata:

A játékos kezében levő kártyákat tartja számon és adja vissza.

Együttműködők: Attribútumok:
Név Típus Leírás
CardDb INT
Cards INT[5]

Operációk:
Név Argomentumok Működés/Leírás
getHandCard() - Megadja, hogy melyik kártya/kártyák vannak a játékos kezében.

3.6.6 EffectCardObject

Felelőssége, feladata:

Ez az osztály foglalkozik az effekt kártyák példányosításáért, továbbá hogy milyen képességei, tulajdonságai vannak az adott kártyáknak.

Együttműködők: Attribútumok:
Név Típus Leírás
ECID INT
Name STRING
Image IMAGE ICON
Description STRIG
HpEffect INT
ApEffect INT
OtherEffect STRING

Operációk:
Név Argomentumok Működés/Leírás
getEffect() - Ez lekérdezi, hogy az adott kártya milyen effekttel lát el egy másik kártyát, esetleg sebzi-e azt.

3.6.7 SoundManager

Felelőssége, feladata:

Kezeli a játékban történő minden hang beállítását, némítását, zene hangerő beállítását, némítását, stb.

Együttműködők: Attribútumok:
Név Típus Leírás
MusicVolume INT
SoundVolume INT
Mute BOOLEAN

Operációk:
Név Argomentumok Működés/Leírás
changeVolume() Sound : vol Felelős a játék hangok beállításáért.
changeMusic() Sound : mus Felelős a játék zenéinek hangerőjének a beállításáért.

3.6.8 GroundCardObject

Felelőssége, feladata:

Ez az osztály foglalkozik az földi kártyák példányosításáért, kezeli az életét, és hogy mekkora támadó erővel bír.

Együttműködők: Attribútumok:
Név Típus Leírás
TKID INT
Name STRING
Image IMAGE ICON
Description STRING
TypeID INT
DefPoint INT
AtcPoint INT
HealthPoint INT

Operációk:
Név Argomentumok Működés/Leírás
getAttackPower() - Lekérdezi, hogy az adott kártya mekkora támadóerővel bír.
getCardHP() - Lekérdezi, hogy az adott kártyának mekkora élete (HP-ja) van még.

3.6.9 AirCardObject

Felelőssége, feladata:

Ez az osztály foglalkozik az légi kártyák példányosításáért, kezeli az életét, és hogy mekkora támadó erővel bír.

Együttműködők: Attribútumok:
Név Típus Leírás
TKID INT
Name STRING
Image IMAGE ICON
Description STRING
TypeID INT
DefPoint INT
AtcPoint INT
HealthPoint INT

Operációk:
Név Argomentumok Működés/Leírás
getAttackPower() - Lekérdezi, hogy az adott kártya mekkora támadóerővel bír.
getCardHP() - Lekérdezi, hogy az adott kártyának mekkora élete (HP-ja) van még.

3.6.10 Dealer

Felelőssége, feladata:

Kezeli a játékteret, ő osztja ki véletlenszerűen a két játékosnak a kártyáit a játék elején és -közben, a játékosnak minden kör elején a függvénye által számított kristályt ad, de elvenni a játékos kezéből nem tud semmit, ahhoz csak hozzáadni tud.

Együttműködők: Attribútumok:
Név Típus Leírás
Cards ArrayList(card)
Cristay INT
NextCardIndex INT

Operációk:
Név Argomentumok Működés/Leírás
shuffleDeck() Card : ArrayList Összekavarja a megkapott kártyák sorrendjét.
getCard() - A játékosnak ez a függvény adja a kör elején a kártyákat (mindig a soron következőt kapja).
setCrystal() - Beállítja a játékosok kristályszámát.

3.6.11 Deck

Felelőssége, feladata:

A felhasználók itt tudják kiválasztani, hogy mely kártyákat rakják be a paklijukba, amivel csatlakoznak majd a játékba.

Együttműködők: Attribútumok:
Név Típus Leírás
Cards ArrayList(card)

Operációk:
Név Argomentumok Működés/Leírás
setDeck() Card : ArrayList Beállítja, hogy melyik kártya lista kerüljön be a játékos paklijába.
getDeck() - Lekérdezi milyen kártyák vannak a pakliba.
destroyDeck() - Törli a paklit, és így nem kell egyesével kiszedni belőle azokat, így újra lehet azt építeni.

3.6.12 DbContext

Felelőssége, feladata:

Az adatbázis és a program osztályai közötti adatfolyamot lebonyolító osztály, gyakorlatilag egy köztes réteg.

Együttműködők: Operációk:
Név Argomentumok Működés/Leíás
save() DbContext : DbAccess Lementi az adatbázisba a játékos által, vagy a játék által kapott új/változott adatokat.
Load() Object : i_where Betölti az adatbázisból a megfelelő adatokat.

3.6.13 CardUnitOfWork

Felelőssége, feladata:

A kártyákat kezelő adatbázisból vesz ki, rak be, kezeli az adatokat.

Együttműködők: Operációk:
Név Argomentumok Működés/Leírás
get() Object : i_where Lekérdezi, az adott helyen lévő adatot az adatbázisból.
post() CardUOWork : CUOW Frissíti az adott helyen lévő adatot az adatbázisban.
put CardUOWork : CUOW Belerakja az adatbázisba az adatot a soron következő szabad helyre.
delete Object : i_where Törli az adatbázisból a megadott helyen található adatot.

3.6.14 UserUnitOfWork

Felelőssége, feladata:

A felhasználókat kezelő adatbázisból vesz ki, rak be, kezeli az adatokat.

Együttműködők: Operációk:
Név Argomentumok Működés/Leírás
get() Object : i_where Lekérdezi, az adott helyen lévő adatot az adatbázisból.
post() UserUOWork : UUOW Frissíti az adott helyen lévő adatot az adatbázisban.
put UserUOWork : UUOW Belerakja az adatbázisba az adatot a soron következő szabad helyre.
delete Object : i_where Törli az adatbázisból a megadott helyen található adatot.

3.6.15 ShopUnitOfWork

Felelőssége, feladata:

A boltot kezelő adatbázisból vesz ki, rak be, kezeli az adatokat.

Együttműködők: Operációk:
Név Argomentumok Működés/Leírás
get() Object : i_where Lekérdezi, az adott helyen lévő adatot az adatbázisból.
post() ShopUOWork : SUOW Frissíti az adott helyen lévő adatot az adatbázisban.
put ShopUOWork : SUOW Belerakja az adatbázisba az adatot a soron következő szabad helyre.
delete Object : i_where Törli az adatbázisból a megadott helyen található adatot.

3.6.16 LoginController

Felelőssége, feladata:

A már regisztrált felhasználók belépését végizi

Együttműködők: Attribútumok:
Név Típus Leírás
Username STRING
Password STRING

Operációk:
Név Argomentumok Működés/Leírás
loginUser() String : Name & String : Password & String : Email Bekéri a felhasználó nevét, vagy e-mail címét, és a jelszavát.

3.6.17 RegistrationController

Felelőssége, feladata:

Még a rendszerben bent nem lévő játékosokat felviszi az adatbázisba (regisztrálja őket).

Együttműködők: Attribútumok:
Név Típus Leírás
Name STRING
BirthDay DATE
Username STRING
Password STRING
Email STRING

Operációk:
Név Argomentumok Működés/Leírás
newUser() String : Name & String : Password & String : Email Kér egy felhasználó nevet, egy email címet és egy jelszót. Ezekkel tud majd a felhasználó bejelentkezni a későbbiekben.

3.6.18 HandController

Felelőssége, feladata:

Kezeli a játékos kezében levő lapokat, a játékos kristályainak a számát.

Együttműködők: Attribútumok:
Név Típus Leírás
Cristay INT
CardInHand INT

Operációk:
Név Argomentumok Működés/Leírás
handCounter() - Számolja, hogy a játékos kezében mennyi kártya van, ha kap egyet hozzáad, ha lerak, akkor pedig elvesz.
getCrystal() - Lekérdezi, hogy éppen mennyi kristálya van a játékosnak.

3.6.19 OptionsViewController

Felelőssége, feladata:

A beállítások menüt kezeli, ez egy grafikus felületet kezelő osztály.

Együttműködők:

3.6.20 PlayGroundViewController

Felelőssége, feladata:

Kezeli a játék harcterének a grafikus megjelenítését.

Együttműködők:

3.6.21 PlayController

Felelőssége, feladata:

Kezeli a játék match közbeni történéseiket, számolja, hogy mennyi idő telt el a játék kezdete óta, figyeli, hogy a játékosok a kör időkön ne tudjanak túlcsúszni, stb.

Együttműködők: Attribútumok:
Név Típus Leírás
OnGroundCardDB INT
BonusEffect INT
RoundCounter INT
WinPlayer BOOLEAN
Matchbeg DATE
RoundBeg INT
RoundEnd INT
MatchEnd DATE

Operációk:
Név Argomentumok Működés/Leírás
startGame Controll : cont Elindítja a játékot és meghívja a szükséges metódusokat
timeCounter() - Számolja az időt másodpercben az indítástól kezdve.

3.6.22 CardDescriptionController

Felelőssége, feladata:

Leírja a kártyák tulajdonságát, mint a nevét és egy rövidebb leírást.

Együttműködők: Attribútumok:
Név Típus Leírás
Descripotion STRING

Operációk:
Név Argomentumok Működés/Leírás
getCardName() - Lekérdezi az adott kártyának a nevét.
getDescription() - Lekérdez egy rövidebb leírást az adott kártyáról, ami elmondja, hogy mit tud, mire képes.

3.6.23 ShopController

Felelőssége, feladata:

Ez is egy grafikus felületet kezelő osztály, a boltnak az adott funkcióit kezeli le.

Együttműködők: Operációk:
Név Argomentumok Működés/Leírás
buyDeck() - Kártya paklik vásárlását hajtja végre, véletlenszerűen kiválasztott paklit csinál és azt a felhasználó kártya adatbázisára irattatja.
buyGameCurrency() - A játékban használatos pénznemet lehet így venni, amivel paklikat lehet vásárolni.

3.6.24 DisplayManager

Felelőssége, feladata:

Beállítja a játék felbontását, hogy teljes képernyőben legyen-e kiterjesztve, vagy sem.

Együttműködők: Attribútumok:
Név Típus Leírás
Resolution ENUM
FullScreen BOOLEAN

Operációk:
Név Argomentumok Működés/Leírás
changeResolution Enum : res Beállítja, hogy a játék milyen felbontásba legyen megnyitva.
fullscreen Boolean : on Teljes képernyős módba tudja rakni a játékot és vissza tudja azt állítani egy ablakba.

3.6.25 UserDataManager

Felelőssége, feladata:

Változtatni lehet a játékos felhasználóképét, a felhasználói nevét és a jelszavát.

Együttműködők: Operációk:
Név Argomentumok Működés/Leírás
setName STRING : uname Megváltoztatja a felhasználó nevét, újat ad neki.
setProfilePic Image : img Új, vagy pedig más profilképet állít be.
setPassword String : Pass Átállítja, új jelszót állít be a játékosnak.

3.6.26 OnGroundCardObject

Felelőssége, feladata:

A harctéren levő kártyákat kezeli, figyeli melyikek vannak lent és hogy hány darab.

Együttműködők: Attribútumok:
Név Típus Leírás
CardDb INT
Effected BOOLEAN

Operációk:
Név Argomentumok Működés/Leírás
getCardNumber() - Lekérdezi, hogy mennyi kártya található a harctéren.

3.6.27 DestroyedCardObject

Felelőssége, feladata:

Itt állítódik át az elpusztított, vagy pedig kijátszott kártya elpusztított/elhasználtra.

Együttműködők: Operációk:
Rokli02 commented 3 years ago

<!DOCTYPE html>

3.6 Az analízis modell osztályainak listája

3.6.1 MainMenuViewController

Felelőssége, feladata:

Lekezeli a főmenüben a az adott gombok lenyomását követő metódusokat

Együttműködők:
  • RegistrationController
  • LoginController
  • ShopController
  • PlayController
  • User
  • OptionsViewController
Attribútumok:
Név Argomentumok Működés/Leírás
isDestroyed() - Átállítja a kártyának a tulajdonságát elpusztultra/elhasználtra.
Név Típus Leírás
Login boolean Megjegyzi, hogy a felhasználó már bejelentkezett-e

Operációk:
Név Argomentumok Működés/Leírás
playButton() - A játékot elindítja

3.6.2 User

Felelőssége, feladata:

A felhasználó adatait kéri le, adja át más osztályoknak, amik igényt tartanak rá.

Együttműködők: Attribútumok:
Név Típus Leírás
FID INT Tárolja a felhasználó ID-jét
Name STRING Tárolja a felhasználó nevét
Password STRING Tárolja a felhasználó jelszavát
BirthDay DATE Tárolja a felhasználó születési dátumát
Permission ENUM Tárolja a felhasználó bizonyos funkciókhoz való jogát

Operációk:
Név Argomentumok Működés/Leírás
getName() Object : i_where Lekéri a felhasználó nevét, az "i_where" rámutat az adatbázisban az adott név helyére.
getLevel() Object : i_where Lekéri a felhasználó profiljának a szintjét, az "i_where" rámutat az adatbázisban az adott név helyére.
setXP() int : xp A Level osztály által kapott értékkel növeli a profil xp szintjét.
OwnedCards() user : person A felhasználó által birtokolt kártyák vannak letárolva itt.

3.6.3 Level

Felelőssége, feladata:

A felhasználó szintjéhez kötődik, meghatározza, hogy milyen szintbe esik hogyha egy adott mennyiségű Xp-t kap. Meccsek végén ennek az osztálynak adódik a meccsből jövő Xp.

Együttműködők: Attribútumok:
Név Típus Leírás
WinExp INT Ez a változó kapja meg a játék megnyerésekor kapott XP-t
LoseExp INT Ez a változó kapja meg a játék elvesztésekor kapott XP-t
Multiplier DOUBLLE Egy olyan szorzó tényező, ami a játékban Eventek-kor megsokszorozza a nyeréskor, vagy vesztéskor kapott XP mennyiséget

Operációk:
Név Argomentumok Működés/Leírás
setLevel() Object : i_where & int : szint Lekéri a felhasználó által szerzett xp mennyiség helyét, az "i_where", és beállítja, hogy a felhasználó hanyas szintű lesz/marad, ha ezt megkapja.
rangeLevelByXp() int : xp Meghatározza, hogy mekkora xp mennyiségek milyen szintbe rakja a játékost.
matchXpCalculator() Boolean : win & int : hoszz Kiszámolja, hogy nyert, vagy vesztett meccsért mennyi Xp jár, az érték függ a játék hosszától.

3.6.4 CardObject

Felelőssége, feladata:

A játékban a kártya objektumok erre az osztályra épülnek, ebbe van definiálva és itt található néhány elemi metódusa.

Együttműködők: Attribútumok:
Név Típus Leírás
DefPoint INT Tárolja a kártyák védekezési pontjának az értékét
AtcPoint INT Tárolja a kártyák támadási pontjának az értékét
HealthPoint INT Tárolja a kártyák élet pontjának (HP-jának) az értékét
Destroyed BOOLEAN Figyeli, hogy a kártya el van-e pusztítva, vagy használva

Operációk:
Név Argomentumok Működés/Leírás
playButton() - Kijátsza a kártyát, így vagy egy effektet rakva egy másik kártyára, vagy pedig támad.
backButton() - Visszavonja a kártya kijátszásának lehetőségét
crystalConsumption() - Azt mondja meg, hogy mennyi kristályért cserébe tudjuk kijátszani a kártyát.

3.6.5 Hand

Felelőssége, feladata:

A játékos kezében levő kártyákat tartja számon és adja vissza.

Együttműködők: Attribútumok:
Név Típus Leírás
CardDb INT Tárolja a kézben tartott kártyák darabszámát
Cards INT[5] Tárolja a kézben tartott 5 darab kártyának az ID-jét

Operációk:
Név Argomentumok Működés/Leírás
getHandCard() - Megadja, hogy melyik kártya/kártyák vannak a játékos kezében.

3.6.6 EffectCardObject

Felelőssége, feladata:

Ez az osztály foglalkozik az effekt kártyák példányosításáért, továbbá hogy milyen képességei, tulajdonságai vannak az adott kártyáknak.

Együttműködők: Attribútumok:
Név Típus Leírás
ECID INT Tárolja az effekt kártyának az ID-jét
Name STRING Az effekt kártyának a nevét tárolja.
Image IMAGE ICON Az effekt kártyához tartozó képet tárolja egy objektumban
Description STRING Leírást ad az adott effekt kártyáról
HpEffect INT Egész számban megadja, hogy mennyi HP effektet ad egy kiválasztott kártyának
ApEffect INT Egész számban megadja, hogy mennyi támadási pont effektet ad egy kiválasztott kártyának
OtherEffect STRING Tárolja, hogy milyen egyéb effektet ad egy másik kiválasztott kártyának

Operációk:
Név Argomentumok Működés/Leírás
getEffect() - Ez lekérdezi, hogy az adott kártya milyen effekttel lát el egy másik kártyát, esetleg sebzi-e azt.

3.6.7 SoundManager

Felelőssége, feladata:

Kezeli a játékban történő minden hang beállítását, némítását, zene hangerő beállítását, némítását, stb.

Együttműködők: Attribútumok:
Név Típus Leírás
MusicVolume INT Eltárolja, hogy milyen hangos legyen a zene
SoundVolume INT Eltárolja, hogy milyen hangos legyen a játék hangereje
Mute BOOLEAN Tárolja, hogy le van-e némítva a játékos mikrofonja

Operációk:
Név Argomentumok Működés/Leírás
changeVolume() Sound : vol Felelős a játék hangok beállításáért.
changeMusic() Sound : mus Felelős a játék zenéinek hangerőjének a beállításáért.

3.6.8 GroundCardObject

Felelőssége, feladata:

Ez az osztály foglalkozik az földi kártyák példányosításáért, kezeli az életét, és hogy mekkora támadó erővel bír.

Együttműködők: Attribútumok:
Név Típus Leírás
TKID INT Eltárolja egy adott földi kártya ID-jét
Name STRING Eltárolja egy adott földi kártyának a nevét
Image IMAGE ICON A földi kártyához tartozó képet tárolja egy objektumban
Description STRING Ad egy rövid leírást az adott földi kártyáról
TypeID INT Tárolja, hogy milyen típusú az adott földi kártya
DefPoint INT Eltárolja a földi kártya védekezési pontjának az értékét
AtcPoint INT Eltárolja a földi kártya támadási pontjának az értékét
HealthPoint INT Tárolja a földi kártyának az életpontját (HP-ját)

Operációk:
Név Argomentumok Működés/Leírás
getAttackPower() - Lekérdezi, hogy az adott kártya mekkora támadóerővel bír.
getCardHP() - Lekérdezi, hogy az adott kártyának mekkora élete (HP-ja) van még.

3.6.9 AirCardObject

Felelőssége, feladata:

Ez az osztály foglalkozik az légi kártyák példányosításáért, kezeli az életét, és hogy mekkora támadó erővel bír.

Együttműködők: Attribútumok:
Név Típus Leírás
TKID INT Eltárolja a légi kártyának az ID-jét
Name STRING Tárolja az adott légi kártyának a nevét.
Image IMAGE ICON A légi kártyához tartozó képet tárolja egy objektumban
Description STRING Rövid leírást tárol az adott légi kártyáról
TypeID INT Tárolja, hogy milyen típusú az adott légi kártya
DefPoint INT Tárolja a légi egység védekezési pontjának az értékét
AtcPoint INT Tárolja a légi egység támadási pontjának az értékét
HealthPoint INT Eltárolja a légi kártyák életerejének a pontját (HP-ját)

Operációk:
Név Argomentumok Működés/Leírás
getAttackPower() - Lekérdezi, hogy az adott kártya mekkora támadóerővel bír.
getCardHP() - Lekérdezi, hogy az adott kártyának mekkora élete (HP-ja) van még.

3.6.10 Dealer

Felelőssége, feladata:

Kezeli a játékteret, ő osztja ki véletlenszerűen a két játékosnak a kártyáit a játék elején és -közben, a játékosnak minden kör elején a függvénye által számított kristályt ad, de elvenni a játékos kezéből nem tud semmit, ahhoz csak hozzáadni tud.

Együttműködők: Attribútumok:
Név Típus Leírás
Cards ArrayList(card) Egy listában tárolva van a szétosztandó kártya, amit a játékos majd megkap
Crystal INT Azt tárolja, hogy mennyi kristályt fog kapni a körök elején a játékos
NextCardIndex INT Tárolja annak a kártyának az indexét, amit a játékos a következő kör elején kapni fog

Operációk:
Név Argomentumok Működés/Leírás
shuffleDeck() Card : ArrayList Összekavarja a megkapott kártyák sorrendjét.
getCard() - A játékosnak ez a függvény adja a kör elején a kártyákat (mindig a soron következőt kapja).
setCrystal() - Beállítja a játékosok kristályszámát.

3.6.11 Deck

Felelőssége, feladata:

A felhasználók itt tudják kiválasztani, hogy mely kártyákat rakják be a paklijukba, amivel csatlakoznak majd a játékba.

Együttműködők: Attribútumok:
Név Típus Leírás
Cards ArrayList(card) Letárolja a felhasználó paklijában összerakott kártyákat egy listában

Operációk:
Név Argomentumok Működés/Leírás
setDeck() Card : ArrayList Beállítja, hogy melyik kártya lista kerüljön be a játékos paklijába.
getDeck() - Lekérdezi milyen kártyák vannak a pakliba.
destroyDeck() - Törli a paklit, és így nem kell egyesével kiszedni belőle azokat, így újra lehet azt építeni.

3.6.12 DbContext

Felelőssége, feladata:

Az adatbázis és a program osztályai közötti adatfolyamot lebonyolító osztály, gyakorlatilag egy köztes réteg.

Együttműködők: Operációk:
Név Argomentumok Működés/Leíás
save() DbContext : DbAccess Lementi az adatbázisba a játékos által, vagy a játék által kapott új/változott adatokat.
Load() Object : i_where Betölti az adatbázisból a megfelelő adatokat.

3.6.13 CardUnitOfWork

Felelőssége, feladata:

A kártyákat kezelő adatbázisból vesz ki, rak be, kezeli az adatokat.

Együttműködők: Operációk:
Név Argomentumok Működés/Leírás
get() Object : i_where Lekérdezi, az adott helyen lévő adatot az adatbázisból.
post() CardUOWork : CUOW Frissíti az adott helyen lévő adatot az adatbázisban.
put CardUOWork : CUOW Belerakja az adatbázisba az adatot a soron következő szabad helyre.
delete Object : i_where Törli az adatbázisból a megadott helyen található adatot.

3.6.14 UserUnitOfWork

Felelőssége, feladata:

A felhasználókat kezelő adatbázisból vesz ki, rak be, kezeli az adatokat.

Együttműködők: Operációk:
Név Argomentumok Működés/Leírás
get() Object : i_where Lekérdezi, az adott helyen lévő adatot az adatbázisból.
post() UserUOWork : UUOW Frissíti az adott helyen lévő adatot az adatbázisban.
put UserUOWork : UUOW Belerakja az adatbázisba az adatot a soron következő szabad helyre.
delete Object : i_where Törli az adatbázisból a megadott helyen található adatot.

3.6.15 ShopUnitOfWork

Felelőssége, feladata:

A boltot kezelő adatbázisból vesz ki, rak be, kezeli az adatokat.

Együttműködők: Operációk:
Név Argomentumok Működés/Leírás
get() Object : i_where Lekérdezi, az adott helyen lévő adatot az adatbázisból.
post() ShopUOWork : SUOW Frissíti az adott helyen lévő adatot az adatbázisban.
put ShopUOWork : SUOW Belerakja az adatbázisba az adatot a soron következő szabad helyre.
delete Object : i_where Törli az adatbázisból a megadott helyen található adatot.

3.6.16 LoginController

Felelőssége, feladata:

A már regisztrált felhasználók belépését végizi

Együttműködők: Attribútumok:
Név Típus Leírás
Username STRING Tárolja a felhasználó felhasználónevét
Password STRING Tárolja a felhasználó jelszavát

Operációk:
Név Argomentumok Működés/Leírás
loginUser() String : Name & String : Password & String : Email Bekéri a felhasználó nevét, vagy e-mail címét, és a jelszavát.

3.6.17 RegistrationController

Felelőssége, feladata:

Még a rendszerben bent nem lévő játékosokat felviszi az adatbázisba (regisztrálja őket).

Együttműködők: Attribútumok:
Név Típus Leírás
Name STRING Tárolja a felhasználó rendes nevét
BirthDay DATE Eltárolja a felhasználó születési dátumát
Username STRING Tárolja a felhasználó felhasználónevét
Password STRING Tárolja a felhasználó jelszavát
Email STRING Eltárolja a felhasználó email címét

Operációk:
Név Argomentumok Működés/Leírás
newUser() String : Name & String : Password & String : Email Kér egy felhasználó nevet, egy email címet és egy jelszót. Ezekkel tud majd a felhasználó bejelentkezni a későbbiekben.

3.6.18 HandController

Felelőssége, feladata:

Kezeli a játékos kezében levő lapokat, a játékos kristályainak a számát.

Együttműködők: Attribútumok:
Név Típus Leírás
Crystal INT Tárolja hogy a játékos kezében mennyi kristály van
CardInHand INT Megadja, hogy a játékos kezében mennyi kártya van

Operációk:
Név Argomentumok Működés/Leírás
handCounter() - Számolja, hogy a játékos kezében mennyi kártya van, ha kap egyet hozzáad, ha lerak, akkor pedig elvesz.
getCrystal() - Lekérdezi, hogy éppen mennyi kristálya van a játékosnak.

3.6.19 OptionsViewController

Felelőssége, feladata:

A beállítások menüt kezeli, ez egy grafikus felületet kezelő osztály.

Együttműködők:

3.6.20 PlayGroundViewController

Felelőssége, feladata:

Kezeli a játék harcterének a grafikus megjelenítését.

Együttműködők:

3.6.21 PlayController

Felelőssége, feladata:

Kezeli a játék match közbeni történéseiket, számolja, hogy mennyi idő telt el a játék kezdete óta, figyeli, hogy a játékosok a kör időkön ne tudjanak túlcsúszni, stb.

Együttműködők: Attribútumok:
Név Típus Leírás
OnGroundCardDB INT Tartalmazza az asztalon levő kártyáknak a darabszámát
BonusEffect BOOLEAN Ha a boolean aktív értéket vesz fel, akkor van event effekt a játékban, különben nincs
RoundCounter INT Itt van letárolva a körök számossága
WinPlayer BOOLEAN Ha igaz érték van benne, akkor a fő helyre belépett játékos nyert, különben a másik
Matchbeg DATE Itt van elmentve a meccs kezdeti ideje
RoundBeg INT Itt van lementve a kör kezdeti időpontja percben
RoundEnd INT Itt van lementve a kör végének az időpontja percben
MatchEnd DATE Itt van elmentve a meccs végének az időpontja

Operációk:
Név Argomentumok Működés/Leírás
startGame Controll : cont Elindítja a játékot és meghívja a szükséges metódusokat
timeCounter() - Számolja az időt másodpercben az indítástól kezdve.

3.6.22 CardDescriptionController

Felelőssége, feladata:

Leírja a kártyák tulajdonságát, mint a nevét és egy rövidebb leírást.

Együttműködők: Attribútumok:
Név Típus Leírás
Description STRING A kártya leírásáról tárol részletesebb információkat

Operációk:
Név Argomentumok Működés/Leírás
getCardName() - Lekérdezi az adott kártyának a nevét.
getDescription() - Lekérdez egy rövidebb leírást az adott kártyáról, ami elmondja, hogy mit tud, mire képes.

3.6.23 ShopController

Felelőssége, feladata:

Ez is egy grafikus felületet kezelő osztály, a boltnak az adott funkcióit kezeli le.

Együttműködők: Operációk:
Név Argomentumok Működés/Leírás
buyDeck() - Kártya paklik vásárlását hajtja végre, véletlenszerűen kiválasztott paklit csinál és azt a felhasználó kártya adatbázisára irattatja.
buyGameCurrency() - A játékban használatos pénznemet lehet így venni, amivel paklikat lehet vásárolni.

3.6.24 DisplayManager

Felelőssége, feladata:

Beállítja a játék felbontását, hogy teljes képernyőben legyen-e kiterjesztve, vagy sem.

Együttműködők: Attribútumok:
Név Típus Leírás
Resolution ENUM Itt van letárolva a jelenleg alkalmazott képernyő felbontás
FullScreen BOOLEAN Ha igaz érték van benne akkor teljes képernyős módban van a játék, különben egy ablakban van

Operációk:
Név Argomentumok Működés/Leírás
changeResolution Enum : res Beállítja, hogy a játék milyen felbontásba legyen megnyitva.
fullscreen Boolean : on Teljes képernyős módba tudja rakni a játékot és vissza tudja azt állítani egy ablakba.

3.6.25 UserDataManager

Felelőssége, feladata:

Változtatni lehet a játékos felhasználóképét, a felhasználói nevét és a jelszavát.

Együttműködők: Operációk:
Név Argomentumok Működés/Leírás
setName STRING : uname Megváltoztatja a felhasználó nevét, újat ad neki.
setProfilePic Image : img Új, vagy pedig más profilképet állít be.
setPassword String : Pass Átállítja, új jelszót állít be a játékosnak.

3.6.26 OnGroundCardObject

Felelőssége, feladata:

A harctéren levő kártyákat kezeli, figyeli melyikek vannak lent és hogy hány darab.

Együttműködők: Attribútumok:
Név Típus Leírás
CardDb INT Az asztalon lévő kártyák darabszámat van lementve itt
Effected BOOLEAN Eldönti, hogy a kártyákon van-e valamilyen effekt, vagy sem

Operációk:
Név Argomentumok Működés/Leírás
getCardNumber() - Lekérdezi, hogy mennyi kártya található a harctéren.

3.6.27 DestroyedCardObject

Felelőssége, feladata:

Itt állítódik át az elpusztított, vagy pedig kijátszott kártya elpusztított/elhasználtra.

Együttműködők: Operációk:
Név Argomentumok Működés/Leírás
isDestroyed() - Átállítja a kártyának a tulajdonságát elpusztultra/elhasználtra.