Space Invaders Dokumentacio 0. Tartalomjegyzék 0. Tartalomjegyzék .............................................................................................................................. 1 1. Követelmény feltárás....................................................................................................................... 2 1.1. Célkitűzés, projektindító dokumentum .................................................................................... 2 1.2. Szakterületi tartalomjegyzék .................................................................................................... 2 1.3. Használatieset-modell, funkcionális követelmények ............................................................... 2 1.4. Szakterületi követelmények ..................................................................................................... 3 1.5. Nem funkcionális követelmények ............................................................................................ 3 2. Tervezés ........................................................................................................................................... 3 2.1. A program architektúrája ......................................................................................................... 3 2.2. Osztálymodell ........................................................................................................................... 4 2.4. Felhasználói-felület modell ...................................................................................................... 5 2.5. Részletes programterv.............................................................................................................. 6 3. Implementáció................................................................................................................................. 7 3.1. Forráskód, futtatható kód ........................................................................................................ 7 4. Tesztelés .......................................................................................................................................... 8 4.1 Játék tesztelése.......................................................................................................................... 8 5. Felhasználói dokumentáció ........................................................................................................... 10 5.1. A futtatáshoz ajánlott hardver-, szoftver konfiguráció .......................................................... 10 5.2. Telepítés ................................................................................................................................. 10 5.3. A program használata ............................................................................................................. 10
Fertetics Gergő – Alkalmazások fejlesztése
1
1. Követelmény feltárás
1.1. Célkitűzés, projektindító dokumentum A hagyományos Space Invaderhez hasonló játék elkészítése. A játékot egérrel lehessen irányítani, használata egyszerű és könnyű legyen. A játék adjon folyamatos visszajelzést a felhasználónak.
1.2. Szakterületi tartalomjegyzék A szoftverben megjelenő objektumok fikcionálisak, egy televíziós sorozat „szereplői”) TARDIS (A játékos irányítja): http://en.wikipedia.org/wiki/TARDIS Dalek (Az ellenség): http://en.wikipedia.org/wiki/Dalek
1.3. Használatieset-modell, funkcionális követelmények Játék:
Használati eset: Játék: Lehetőség van játék alatt, vagy két játék között megnézni az eredménylistát, játék a kurzor mozgatásával történik, a bal gomb lenyomásával pedig lőhetünk.
Fertetics Gergő – Alkalmazások fejlesztése
2
1.4. Szakterületi követelmények Szabályok: A képernyő alsó részén lévő dobozt irányítva pusztítsuk el az idegeneket. Az ellenfeleket el is pusztíthatjuk, ha eltaláljuk az ellenséget, az eltűnik. Amint az összes idegen eltűnt a játéktérről, a következő pályára jutunk, ahol az ellenfelek gyorsabban mozognak és lőnek, de ennek megfelelően több pontot is szerezhetünk.
1.5. Nem funkcionális követelmények A fejlesztéshez szükséges hardver:
-
CPU: Intel Core 2 Duo RAM: 2 GB Videó: 1280x800
A fejlesztéshez használt szoftverek:
-
Operációs rendszer: Windows 7 Követelményelemzés: Word 2010 Java fejlesztőeszköz: Eclipse Indigo
A futtatáshoz szükséges operációs rendszer:
-
Tetszőleges operációs rendszer, melyhez létezik JRE 6 implementáció
A futtatáshoz szükséges hardver:
-
RAM: 1 GB CPU: 2 GHz
Egyéb követelmények:
-
Intuitív felhasználói felület, könnyű kezelhetőség
2. Tervezés
2.1. A program architektúrája A program főosztálya a GamePanel.java, amely egy kibővített JPanel, az játékelemek megjelenítésére szolgál. Indításkor létrejön a StatPanel egy példánya, mely az eredményeket hivatott kiírni, ennek statikus függvényeit éri el a főosztály. A játék emellett tartalmaz egy menüt is, ahol elérhetők a fontosabb funkciók, ilyen pl.: az eredménytábla. A program tartalmaz textúrákat, valamint több segédosztályt, melyek külön – külön csomagokban kaptak helyet.
Fertetics Gergő – Alkalmazások fejlesztése
3
2.2. Osztálymodell A diagram mérete miatt külön fájlba került, amely megtekinthető ITT; GamePanel Sztereotípia: vegyes Ős: JPanel Példány: gamePanel Feladat: A játék lebonyolítása, lövések és ütközések kezelése StatPanel Sztereotípia: vegyes Ős: JPanel Példány: statPanel Feladat: A játék pontjainak kezelése, kiírása Player Sztereotípia: Konténer Ős: Object Példány: tardis Feladat: Játékos megjelenítése, mozgatása Dalek Sztereotípia: Konténer Ős: Object Példány: dalek Feladat: Ellenfél megjelenítése, mozgatása Shot Sztereotípia: Konténer Ős: Object Példány: shot Feladat: Lövések megjelenítése és mozgatása
Fertetics Gergő – Alkalmazások fejlesztése
4
2.4. Felhasználói-felület modell
Fertetics Gergő – Alkalmazások fejlesztése
5
2.5. Részletes programterv GamePanel Sztereotípia: vegyes Ős: JPanel Példány: gamePanel Feladat: A játék lebonyolítása, lövések és ütközések kezelése Metódusok: -
disableCursor() Láthatatlanná teszi a kurzort
-
timing() Időzítő, kezeli a mozgatásokat
-
paintComponent(Graphics g) Itt hajtódnak végre a rajzolások
-
detectCollision(Shot s, DalekList d) Az ütközések kezelését végzi
Player / Dalek Sztereotípia: vegyes Ős: Object Példány: tardis / dalek Feladat: Játékos / ellenfelek megjelenítése, mozgatása Metódusok: -
generateShot() Lövés pédányosítása
-
drawPlayer / drawDalek Kirajzolj a az objektumot
Fertetics Gergő – Alkalmazások fejlesztése
6
3. Implementáció
3.1. Forráskód, futtatható kód Osztályok: Csomag: graphicalObjects Fájlok: Dalek, DalekShot, Player, Shot Csomag: logic Fájlok: DalekList, FileManager, PointHandler, ScoreReader Csomag: Menus: Fájlok: MyMenu Csomag: panels Fájlok: GamePanel, MySideBar, PreGamePanel, StatPanel, UnitePanel Csomag: ui Fájlok: MyFrame Csomag: default Fájlok: Main Képek: Fájlok: dalek.jpg, menuBG.jpg, tardis.gif Egyéb fájlok: results.txt
Fertetics Gergő – Alkalmazások fejlesztése
7
4. Tesztelés
4.1 Játék tesztelése Új játék indítása:
Indításkor az első pálya jelenik meg, ahol kezdetben 4 sor ellenfelet kell elpusztítanunk, ha ez megtörtént a következő pályára ugrunk, ahol a feladat ugyan az.
Fertetics Gergő – Alkalmazások fejlesztése
8
A játl folyamatosan írja a fontosabb adatokat, statisztikákat:
Időbel az ellenfelek lejjebb jönnek, ha eléri a játékost, akkor a játéknak vége
A játék végén egy üzenet jelenik meg az aktuális pontszámmal, bekéri a nevünket, amiből eredménytáblát készít
Fertetics Gergő – Alkalmazások fejlesztése
9
Az eredménytábla megtekinthető a menüből:
A játék akkor is befejeződik, ha az életek száma nullára csökken. Ez úgy érhető el, hogy háromszor eltalálnak az ellenfelek 5. Felhasználói dokumentáció
5.1. A futtatáshoz ajánlott hardver-, szoftver konfiguráció Futtatáshoz ajánlott hardverek: -
RAM: 1 GB vagy nagyobb CPU: 2 GHz vagy nagyobb VGA: Geforce 8600 vagy jobb teljesítményű
Futtatáshoz ajánlott szoftverek: -
Tetszőleges operációs rendszer, melyhez létezik JRE 6 implementáció
5.2. Telepítés A játékot nem kell telepíteni, a SpaceInvaders.jar fájllal futtatható.
5.3. A program használata Szabályok: A képernyő alsó részén lévő dobozt irányítva pusztítsuk el az idegeneket. Az ellenfeleket el is pusztíthatjuk, ha eltaláljuk az ellenséget, az eltűnik. Amint az összes idegen eltűnt a játéktérről, a következő pályára jutunk, ahol az ellenfelek gyorsabban mozognak és lőnek, de ennek megfelelően több pontot is szerezhetünk. Irányítás: A kék „dobozt” (TARDIS) irányítjuk. Az egér jobbra, illetve balra húzásával tudjuk azt mozgatni. Lőni a bal és jobb egérgombok lenyomásával van lehetőségünk. Fertetics Gergő – Alkalmazások fejlesztése
10