Csoport neve: HALSEQ

Feladat sorszáma: 6

Feladat címe: Stratégiai játék

 

 

 

 

 

Analízis modell

 

 

 

 

 

Gyakorlatvezető:

Répási Tibor

 

 

 

 

 

 

 

 

 

Csoport tagok:

Molnár Róbert

ABWPRJ

molnar22@gmail.com

Barczi Judit

EA1W60

barczi@iit.uni-miskolc.hu

Kürti Áron

Q0U0NM

kurti@iit.uni-miskolc.hu

Mayer Gábor

LLIFO4

mayer@chello.hu

Nagy Viktor

SGGG8D

nv@atramail.hu

Danyi Dávid

H4VTBK

ddaved@freemail.hu

 

2006.04.19

 

 


     

Történet

 

Dátum

Verzió

Leírás

Szerző

 2006.04.19.

 2006.04.21.

 

 Diagrammok készítése

 Diagrammok készítése

 Diagrammok készítése

 Attribútumok és metódusok tervezése.

 Attribútumok és metódusok tervezése.

 Attribútumok és metódusok tervezése.

Molnár Róbert

Barczi Judit

Kürti Áron

Mayer Gábor

Nagy Viktor

Danyi Dávid

 

 

 

 

 

 

 

 

 


 

Tartalomjegyzék:

1. Bevezetés

2. Első osztályterv

            2.1 Osztálydiagram 1.0

            2.2 Osztályok felsorolása

            2.3 Attribútumok és metódusok típusai

                        2.3.1 Globális attribútumok és metódusok

                        2.3.2 Bázis osztályok

            2.4 Dinamikus modellek

                        2.4.1 Game modell

                        2.4.2 Attribútumok és metódusok

3. A felhasználói rendszer modellje (GUI)

            3.1 GUI. Dinamikus modellje

            3.2 GUI osztályainak részletezése

                        3.2.1 Attribútumok és metódusok

4. Adatelérési rendszer

            4.1 Adat osztály

                        4.1.1 Attribútumok és metódusok

 

1. Bevezetés

 

Ez a dokumentum az implementációs fázist előkészítő osztály terveket tartalmazza. Megadja a fontosabb osztályok nevét, funkcióját, adattagjaikat és metódusaikat. A dokumentumban körvonalazódik a program egy lehetséges váza.

 

A dokumentumban szereplő modellek típusai:

 

 

2. Első osztályterv

         2.1 Osztálydiagram 1.0

        

 

 

         2.2 Osztályok felsorolása

 

Osztály neve

Funkciója

Tolt

A játék betöltöttségi szintjét jelzi ki grafikusan.

Fomenu

A program indító felülete. A programrendszer ált. nyújtott szolgáltatásokat ezen keresztül érheti el a felhasználó.

alalplap

A játékvezérlő osztály. A játék felületét és logikáját irányító egység. Ebből adódóan a legnagyobb méretű.

newgame

Új játék létrehozását végzi.

options

A program rendszerrel kapcsolatos minimális beállításáért felelő grafikus elem.

load

A mentett játék állások visszatöltése a feladata.

fomenu2

A főmenü játék közben elérhető változata. Egy menüpontban módosul csak : új játék helyett menteni lehet.

end

A program szabályos leállásáért felelős egység

keresogo

A HELP vezérlése a feladata

save

A játék állások automatikus mentése és a beállítások mentése a fő feladata.

maindatamaneger

A program rendszer adat fájlaival kapcsolatot tartó egység.

reklam

A szponzorok reklámjainak megjelenítése a szerepe.

 

 

         2.3 Attribútumok és metódusok típusai

 

                   2.3.1 Globális attribútumok és metódusok

 

Név

Típus

Feladata

w, h

Int

A képméret tárolása

GMatrix

N*N integer tömb

A játéktér tárolása

-hwndmain

HWND

Ablakkezelő pointer változó.

 

 

 

 

 

 

 

 

 

 

 

                   2.3.2 Bázis osztályok (2.4.2-ben részletezve)

 

·         Displ : a grafikus vezérlő elemek bázis osztálya (Pl. Fomenu, load … )

·         Displgameoject: a játékban szereplő grafikus elemek osztálya

·         Game

 

         2.4 Dinamikus modellek

 

                   2.4.1 Game modell

 

 

2.4.2 Attribútumok és metódusok

 

 

                        Attribútumok:

                                   

Név

Típus

Feladata

 GMatrixNxN

 [N][N] int

 A pálya mátrix. (lehet, hogy ez a változó kikerül globális változóba)

 vw,vh

 int

 Az érvényes képméret. Az a terület, ahová a játék rajzolhat)

 px,py,

 int

 A grafikus objektum mátrixra konvertált koordinátája

 vw2,vh2

 int

  Az érvényes képméret. Az a terület, ahová a játék rajzolhat)

 objlistfile

 string

 A grafikus objektumok fileneveit tartalmazó file helye

 objektdirectori

 string

 Az grafikus objektumok file -ainak helye.

 w10,h10

 int

 A grafikus objektum koordinátája.

_hwnd 

 HWND

 A windows ablakkezelő változója

 defaultdirectori

 string

 Az alapértelmezett jegyzék

 color

 int

 vm. szín paraméter

 lx,ly

 int

 Tartalék x,y

 errorcode

 int

 Hibakód

 

                        Metódusok:

                                  

Név

Argumentumai

Feladata

 game()

 

·        A game objektum konstruktora.

·        Az inditás utáni inicializáció.

 ~game()

 

·        A game objektum destruktora.

·        Kilépéskor takarítás, memória felszabadítása.

 action():void

 

A felhasználó lépéseit kezelő függvény.

 reaction():void

 

A gépi reakciókat generáló metódus. A Válasz  lépéseket és a természeti hatásokat állítja elő.

 MKcontrol():void

 

 Az egér és billentyű kezelő függvény.

 other():void

 

 Egyéb események kezeléséért felelős.

 dsplgameoject()

 

·        A játék grafikus objektumait megjelenítő osztály konstruktora.

·        A  objektum képének az útvonalát beállítja.  

 ~dsplgameoject()

 

 Takarítás

 show():void

 x:int,y:int

 A grafikus objektum megjelenítése x,y koordinátapontban.

 hiden():void

 

 A grafikus objektum rejtése.

 animation():void

 

 Ha van animáció a grafikus elemhez, akkor animált megjelenítés.

 onclick():int

 

 A grafikus objektumra való kattintás eseménykezelője.

 mozgas()void

 x1:int,y1:int,x2:int,y2:int

 A grafikus elem x1,y1 –ből x2,y2 –be mozgatása animáltan.

 displerror():viod

 s:int

 Hibaüzent kiíratása a képernyőre.

 erroraction():void

 s2:int

 A hibakezelő függvény.

 displ()

 mod:int

·        A menü objektumok megjelenítéséért felelős osztály konstruktora.

·        Inicializálás.

 ~displ()

 

·        A menü objektumok megjelenítéséért felelős osztály destruktora.

·        Takarítás

 DrawE

 x:int,y:int

 Menü objektum rajzolása x,y pontba.

 onclick():int

 

 A menü objektumra való kattintás eseménykezelője.

 ondock():int

 

 A menü objektum rejtése

 animated():void

 

 A menü animáció megjelenítése.

 show():void

 

 Menü elem megjelenítése.

 hiden():void

 

 Menü elem rejtése.

 

 

3. A felhasználói rendszer modellje (GUI)

 

         3.1 GUI. Dinamikus modellje

 

                   Objektumok felsorolása

                       

Név

Feladata

 IDLEState1

Várakozó állapot 

 Loading

 File betöltése

Fmenu1

 Kiválaszthatók rajta a főbb szolgáltatások.

 saving

 File mentése ellenőrzése

 options

 Beállítások módosítása

 error

 Hibák kezelése

 exit

 Kilépés a programból.

 IDLEState2

 Várakozó állapot

 exit2

 Kilépés a programból

 alaplap

 A játék irányítása és újabb almenük érhetők el rajta keresztül

 consol

 Parancsos vezérlés

 bordj

 Jobb oldali alsó főpanel irányítása.

 bordb

 Bal oldali alsó főpanel irányítása.

 game

 A játék.

 keresogo

 A helprendszer.

 fmenu2

 Kiválaszthatók rajta a főbb szolgáltatások.

 ifp1

 Információs panel 1 vezérlése.

 ifp2

 Információs panel 2 vezérlése.

 saved

 File mentése

 error2

 A hibakezelő.

 

 

         3.2 GUI osztályinak részletezése

 

                   3.2.1 Attribútumok és metódusok

 

                        Attribútumok:

                       

Név

Típus

Feladata

 h7,w7

 int

 a főmenü (kezdő) koordinátája

 savedstat

 int

 A mentettség állapotjelzője

 h6,w6

 int

 A help koordinátája

 matfilenev

 string

 A mentések és pályák jegyzékének útvonala

 h.w

 int

 A játék tér mérete.

 svedstat

 int

 A mentettség állapotjelzője

 mxf

 string

 Az aktuálisan betöltött pálya mátrixának idéglenes tárolási helye.  

 speedcs

 int

 Sebesség faktor.

 BordMvalues

 int

 A választó alsó panel állapotának értéke.

 DispBvalue

 int

 A kijelző alsó panel állapotának értéke.

 utvon

 string

 Az előre megírt pályákat tartalmazó jegyzék útvonala.

 savedstate4

 int

 A mentettség állapotjelzője

 h3,w3

 int

 A New Game menü koordinátája.

 h4,w4

 int

 A töltés koordinátája

 savedstat2

 int

 A mentettség állapotjelzője

 aktut

 string

 fenntartott

 h8,w8

 int

 A főmenü2 koordinátája

 savedstate

 int

 A mentettség állapotjelzője

 h5,w5

 int

 A töltés menüpont koordinátája

 aktut

 string

 A mentési jegyzék.

 opf

 string

 A beállítási fileok helye.

 h2,w2

 int

 Az options menüpont koordinátái

 speed

 int

 Sebesség faktor

 color

 int

 Kontraszt mértéke

 feny

 int

 Fényerősség

 

                        Metódusok:

                       

Név

Argumentumok

Feladata

 Savedbut():void

 

 A mentés gombhoz tartozó akció.

 Loadbut():void

 

 A töltés gombhoz tartozó akció.

 optin():void

 

 A beállítások gombhoz tartozó akció.

 exit():void

 

 Az kilépés gombhoz tartozó akció.

 Fomenu()

 

·        A Fomenu osztályhoz tartozó konstruktor.

·        Alap beállításokkal történő incializáció.

 ~ Fomenu()

 

  • A Fomenu osztályhoz tartozó destruktor.
  • Mentettség ellenőrzése
  • Takarítás

 

 alaplap()

 

 Az alaplap osztályhoz tartozó konstruktor.

 ~ alaplap()

 

 Az alaplap osztályhoz tartozó destruktor.

 init():void

 

 Az alaplap első kirajzolása és inicializálása.  

 control():void

 

 A vezérlő perifériákat kezelő metódus.

 gamemetod():void

 

 A játék metódus.

 ifp1():void

 

 Információs panelhez tartozó akció

 ifp2():void

 

 Információs panelhez tartozó akció

 fomenu2():void

 

 A főmenü 2-őt megvalósító eljárás.

 bordj():void

 

 A jobb oldali panelhez tartozó kezelő függvény.

 bordb():void

 

 A bal oldali panelhez tartozó kezelő függvény.

 consol():void

 

 A konzol kezelő függvénye

 f1hlp():void

 

 A F1 billentyű megnyomását kezelő függvény.

 NewBut():void

 

 Az új játék gombhoz tartozó akció

 RandBut():void

 

 A véletlen játék gombhoz tartozó akció

 newgame()

 

 A newgame osztály konstruktora  

 ~ newgame()

 

 A newgame osztály destruktora

 tolt():void

 

 A töltöttségi mértékét számító függvény

 rajz():void

 sz.sztring

 A töltöttséget kirajzoló függvény.

 Tolt()

 

 A Tolt osztály konstruktora

 ~ Tolt()

 

 A Tolt osztály destruktora

 keresogo()

 

 A keresogo osztály konstruktora.

 ~ keresogo()

 

 A keresogo osztály

destruktora.

 disp():void

 x: int

 A help ablak kezelője.

 KeresBut():void

 

 A keres gombhoz tartozó akció.

 input2():void

 

 Az input mező kezelője

 Grid():void

 

 A görgetősáv függvénye.

 ok():void

 

 Az oké gombhoz tartozó akció.

 input():void

 

 Az input mező kezelője

 esc():void

 

 Az esc gombhoz tartozó akció.

 grid():void

 

 A görgetősáv függvénye.

 load()

 

 A load osztályhoz tartozó

konstruktor.

 ~ load()

 

 A load osztályhoz tartozó destruktor.

 cancel():void

 

 A cancel gombhoz tartozó akció.

 ok():void

 

 Az oké gombhoz tartozó akció.

 scrol1..4():void

 

 A csuszkákat kezelő függvény.

 control():void

 

 VM

 options()

 

 Az optons osztály konstruktora.

 ~options()

 

 Az optoins osztály destruktora.

 SaveBut():void

 

 A mentés gombhoz tartozó akció

 Loadbut():void

 

 A töltés gombhoz tartozó akció

 exit():void

 

 Az kilépés gombhoz tartozó akció

 fomenu2()

 

 A fomenu2 osztály konstruktora.

 ~fomenu2()

 

 A fomenu2 osztály destruktora.

 

 

4. Adatelérési rendszer

 

         4.1 Adat osztály

 

                        A programrendszer adat file –aival való kapcsolattartásért felelős objektum.

 

 

 

                   4.1.1 Attribútumok és metódusok

 

                        Attribútumok:

                       

Név

Típus

Feladata

 s,c,f,w,h

 int

 A beállításokat ideiglenesen tároló változók.

 matrixNxN

 int

 A játék állás mátrixa

 defutv

 string

 A program alapértelmezett jegyzékének útvonala.

 smatrixNxN

 [N][N] int

 A mentés mátrixa.

 utv

 string

 A mentett fileok útvonala.

 

                        Metódusok:

                       

Név

Argumentumok

Feladata

 Loadopt():void

 

 A beállítások betöltése file - ból

 saveopt():void

 

 A beállítások mentése fileba.

 LoadDat():void

 s:string

 A pálya betöltése.

 Saveddat():void

 s2:string

 A pálya mentése

 mkoordread():int

 x:int,y:int

 A koordinátából mátrix koordinátát csinál és kiolvassa az értékét.

 mkoordwrit():void

 x:int,y:int,z:int

 Az előző fordítva.

 saveddattosav():void

 s4:string

 A felhasználó ált megadott saját flieba menti a játékállást.

 loaddattosav():void

 s3:string

 Betölti a játékállást.