Rapport Objektorienteret Pacman - Portfolio - Tommy Andersen
Rapport Objektorienteret Pacman - Portfolio - Tommy Andersen
Rapport Objektorienteret Pacman - Portfolio - Tommy Andersen
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
<strong>Rapport</strong> – Objekt Orienteret <strong>Pacman</strong> spil<br />
5.3.1.2. Entiteter<br />
Selve klassediagrammet over vores entiteter. Vores entititer i spillet består af de levende objekter<br />
som kræver noget grafik og logisk behandling. Måden selve strukturen virker på er at alle objekter<br />
nedarver fra ’Interfacet’ CGameEntity således at alle underklasser er tvunget til at have metoden<br />
Draw() og Handle(). Så kort sagt er et interface blevet bestemt som alle skal overholde.<br />
Den næste klasse i arkivet er ’CGameObject’ som håndterer standard egenskaberne i et spil objekt.<br />
Dette er ting som kollision check op mod banen og bevægelse af objektet. Denne klasse er<br />
’Abstrakt’ da den indeholder en del kode og attributter i forhold til interfacet. Selve klassen kan<br />
man dog ikke oprette en instance af da den er abstrakt og kræver at et andet objekt har nedarvet og<br />
overskrevet nogle af dens metoder.<br />
Dette kan vi se på klassediagramet hvor en masse klasse objekter nedarver og overloader med deres<br />
egne metoder. Dette er ting som <strong>Pacman</strong>, Frugt, Powerup, Teleport og spøgelserne. Det smarte ved<br />
hele denne struktur er at man ved overordnet at alle klasser har Draw() og Handle() metoderne da<br />
interfacet tvinger dem ind. Dette kan man udnytte i koden og bruge når man skal tegne og opdaterer<br />
alle objekter på en gang. Så behøver man ikke spekulerer på hvilke type objekt det er, da de alle har<br />
egenskaberne fra CGameEntity.<br />
Side 35 af 50