Az előadás letöltése folymat van. Kérjük, várjon

Az előadás letöltése folymat van. Kérjük, várjon

V 1.0 Programozás III. Gyakorlás. V 1.0ÓE-NIK, 2014 Gyakorlás –Feladat: Tic Tac Toe játék –Szabályok: A játékosok felváltva teszik le a jelöléseiket.

Hasonló előadás


Az előadások a következő témára: "V 1.0 Programozás III. Gyakorlás. V 1.0ÓE-NIK, 2014 Gyakorlás –Feladat: Tic Tac Toe játék –Szabályok: A játékosok felváltva teszik le a jelöléseiket."— Előadás másolata:

1 V 1.0 Programozás III. Gyakorlás

2 V 1.0ÓE-NIK, 2014 Gyakorlás –Feladat: Tic Tac Toe játék –Szabályok: A játékosok felváltva teszik le a jelöléseiket. Amelyiküknek előbb összegyűlik 3 jelölése vízszintesen, függőlegesen vagy átlósan, az győz. –Ha betelik a pálya anélkül, hogy 3 összegyűlne bármelyik játékosnak, akkor egyikük sem győzött. 2

3 V 1.0ÓE-NIK, 2014 Tervezés Válasszunk grafikai módszert –Shape-ek? –Drawingok? –Visualok? –Akár a Shape-ek, akár a Drawingok megfelelőek a játék megvalósításához. (Természetesen a bonyolultabb Visualok is nyugodtan használhatók.) A diasor további részében Drawingokkal dolgozunk. Shape-ek és Drawingok esetében egyaránt adatkötéssel szoktunk dolgozni. –Drawingok: legyen egy Image vezérlő, ami egy rajzolt képet (DrawingImage) jelenítsen meg az aktuális játékállásról. A DrawingImage-t Converterrel csináljuk egy pályát reprezentáló adatból! Ugyanúgy, mint a labirintus esetében (8. óra) 3

4 V 1.0ÓE-NIK, 2014 Tervezés Osztályok –Tehát kell egy osztály, ami reprezentálja a játékpályát (Pálya osztály) Pl. egy 2D tömbbel reprezentálhatjuk a mezőket Lehessen lépni, ellenőrizni, hogy tele van-e, ellenőrizni, hogy nyert-e valamelyik játékos –Jó lenna, ha lenne egy osztály, ami reprezentálná az egész játékot (Játék osztály) Legyen benne a pálya mint adattag, és hogy melyik játékos az, aki éppen lép… Jó, ha van benne tulajdonság ahhoz, hogy vége van-e már a játéknak Lehessen lépni, jelezze valahogy vissza, ha az éppen lépő játékos nyert Adatkötés: –Image vezérlő Source tulajdonsága  az ablakban adattagként szereplő játék objektum Pálya tulajdonsága 4

5 V 1.0ÓE-NIK, 2014 Egérkattintás Hogyan kapjuk meg, hogy a felhasználó melyik pixelre kattintott az Image vezérlőn belül? –Egyrészt lehet MouseMove, MouseDown segítségével –Egyszerűbb: Point kurzor = Mouse.GetPosition(image); A kurzor pozícióját az image vezérlőhöz relatívan adja meg (bal felső sarok) –Figyelem, ez pixelben van, nekünk az kell, hogy melyik mezőbe kattintott bele. –Ez egyszerűen kiszámítható (egészosztással), ha tudjuk 1 mező szélességét. Egy mező szélessége = image vezérlő szélessége / hány mező van a pályán széltében 5

6 V 1.0ÓE-NIK, 2014 Így érdemes haladni Osztályok létrehozása, de még csak minimális funkcionalitással… –Pálya osztály: egy darab üres 2D tömbbel –Játék osztály: csak a pálya legyen benne –Converter (Pálya->DrawingImage). Egyelőre a játékosokkal ne foglalkozzon, csak annyit tudjon, hogy kirajzolja a rácsot –Bindable Összekötés, tesztelés (rácsot rajzolja-e) Fokozatos kiegészítés további funkciókkal: –Játékosok kirajzolása (a 2D tömbbe mesterségesen teszünk jelöléseket tesztelési célra) –Játék kialakítása (nyerés ellenőrzése, tele van-e, játékoscsere…) –Egérrel való kattintásra rakjon le új jelölést 6


Letölteni ppt "V 1.0 Programozás III. Gyakorlás. V 1.0ÓE-NIK, 2014 Gyakorlás –Feladat: Tic Tac Toe játék –Szabályok: A játékosok felváltva teszik le a jelöléseiket."

Hasonló előadás


Google Hirdetések