Activity Diagram menampilkan menu credits

51 Gambar 3.9. Activity Diagram memainkan level 1 Pemain Sistem Memilih tombol Menu permainan Menampilkan halaman Menu permainan Memilih tombol Main Memilih tombol Kembali Menampilkan arena permainan Mulai permainan level 1 Kendalikan karakter Karakter bergerak Jalankan AI Musuh muncul dan bergerak Cek objek kilat Cek collision pada 1 objek kilat Power bertambah ya Power tetap tidak Karakter menembak Menghancurkan musuh Score dan target bertambah Lanjutkan permainan Cek collision pada peluru musuh Darah berkurang ya Darah tetap tidak Cek darah apakah habis ? tidak Game over ya Menyelesaikan level Menampilkan tombol level 2 Menampilkan scene 1 Memilih tombol lanjut Menampilkan scene 2 Memilih tombol lanjut Menampilkan scene 3 Memilih tombol lanjut Menampilkan scene 4 Memilih tombol lanjut Memilih tombol main Menampilkan scene 5 Memilih tombol main 52

6. Activity Diagram memainkan level 2

Berikut ini adalah diagram yang menunjukan alur aksi pada aktivitas memainkan level 2 yang dapat dilihat pada gambar berikut ini. Gambar 3.10. Activity Diagram memainkan level 2

7. Activity Diagram memainkan level 3

Berikut ini adalah diagram yang menunjukan alur aksi pada aktivitas memainkan level 3 yang dapat dilihat pada gambar berikut ini. Pemain Sistem Menampilkan arena permainan level 2 Mulai permainan level 2 Kendalikan karakter Karakter bergerak Musuh muncul dan bergerak Cek objek kilat Cek collision pada 1 objek kilat Cek collision pada peluru musuh Score dan target bertambah Lanjutkan permainan Power tetap Power bertambah ya tidak Darah berkurang Darah tetap ya tidak Cek darah apakah habis ? ya tidak Game over Karakter menembak Menghancurkan musuh Menyelesaikan level Menampilkan tombol level 3 53 Gambar 3.11. Activity Diagram memainkan level 3

3.1.5.3 Class Diagram

Class Diagram adalah inti dari proses pemodelan objek. Class Diagram menggambarkan struktur dan hubungan antar objek-objek yang ada pada sistem. Struktur itu meliputi atribut dan method yang ada pada masing- masing class. Di bawah ini merupakan Class Diagram game Gatotkaca Evolution. Pemain Sistem Menampilkan arena permainan level 3 Mulai permainan level 3 Kendalikan karakter Karakter bergerak Musuh muncul dan bergerak Cek objek kilat Cek collision pada 1 objek kilat Cek collision pada peluru musuh Score dan target bertambah Lanjutkan permainan Power tetap Power bertambah ya tidak Darah berkurang Darah tetap ya tidak Cek darah apakah habis ? ya tidak Game over Karakter menembak Menghancurkan musuh Menyelesaikan level Menampilkan scene ending 54 G a m b ar 3.1

2. Diag ra

m K elas Game +name +menu +bantuan +levelsatu +scene1 +scene2 +credits +menuGame +levels +leveldua +leveltiga +pauselv1 +pausebos1 +gameover +scene3 +gameover2 +loadlv1 +pauselv3 +gameover3 +ending +frameWidth +frameHeight +GameString name: void +initStatesListGameContainer gc: void +mainString[] args: void Menu +playMenu +background +SoundOff +Credits +mouse +Volume +logo +sirip +SoundOn +playMenuOver +SoundOnOver +SoundOffOver +CreditsOver +cloud +cloud2 +soundmusic +playerSheet +gatotSheet +gatotSheet2 +birdSheet +birdSheet2 +whaleSheet +turtleSheet +ufoSheet +playerAnimation +gatotAnim +gatotAnim2 +birdAnim +birdAnim2 +whaleAnim +turtleAnim +ufoAnimation +mouseX +mouseY +cloudX +cloudY +ufoX +ufoY +soundX +soundY +playerX +birdX +birdY +bird2X +bird2Y +gatotX +gatotY +gatot2X +gatot2Y +siripX +siripY +logoX +logoY +soundPlay +music +sound +sound2 +playMenuX +playMenuY +creditsX +creditsY +Menuint state: void +initGameContainer gc, StateBasedGame game: void +renderGameContainer gc, StateBasedGame game, Graphics g: void +updateGameContainer gc, StateBasedGame game, int delta: void +keyPressedint key, char c: void +isMouseOverPlayButton1 +isMouseOverPlayButton2 +isMouseOverPlayButton3 +isMouseOverPlayButton4 +isMouseOverPlayButton5 +enterState +getID Bantuan +background +Kembali +sisiBantuan +KembaliOver +isiBantuanOver +cloud +cloud2 +mouseX +mouseY +cloudX +cloudY +sound +gatotSheet +gatotAnim +Bantuanint state: void +initgc, game: void +rendergc, game, g: void +updategc, game, delta: void +isMouseOverPlayButton +isMouseOverPlayButton1 +enterState +getID AlienBullet3 -bulletSheet: SpriteSheet -bulletAnimation: Animation create+AlienBullet3pos: Vector2f, dir: Vector2f create+AlienBullet3 +initpos: Vector2f, dir: Vector2f: AlienBullet3 +rendergc: GameContainer, g: Graphics Bullet pos: Vector2f dir: Vector2f lived: int = 0 aktiv: boolean = true MAX_LIFETIME: int = 1100 RADIUS_SQARED: int = 400 +DAMAGE: int = 5 -bulletSheet: SpriteSheet -bulletAnimation: Animation create+Bulletpos: Vector2f, dir: Vector2f create+Bullet +initpos: Vector2f, dir: Vector2f: Bullet +updatet: int +rendergc: GameContainer, g: Graphics +isAktiv: boolean +setAktivaktiv: boolean +collideWithotherPos: Vector2f, otherRadiusSqared: int: boolean +getDamage: int AlienBullet4 -bulletSheet: SpriteSheet -bulletAnimation: Animation create+AlienBullet4pos: Vector2f, dir: Vector2f create+AlienBullet4 +initpos: Vector2f, dir: Vector2f: AlienBullet4 +rendergc: GameContainer, g: Graphics AlienBullet -bulletSheet: SpriteSheet -bulletAnimation: Animation create+AlienBulletpos: Vector2f, dir: Vector2f create+AlienBullet +initpos: Vector2f, dir: Vector2f: AlienBullet +rendergc: GameContainer, g: Graphics AlienBullet2 -bulletSheet: SpriteSheet -bulletAnimation: Animation create+AlienBullet2pos: Vector2f, dir: Vector2f create+AlienBullet2 +initpos: Vector2f, dir: Vector2f: AlienBullet2 +rendergc: GameContainer, g: Graphics EnemyBullet -bulletSheet: SpriteSheet -bulletAnimation: Animation create+EnemyBulletpos: Vector2f, dir: Vector2f create+EnemyBullet +initpos: Vector2f, dir: Vector2f: EnemyBullet +rendergc: GameContainer, g: Graphics Enemy2Bullet -bulletSheet: SpriteSheet -bulletAnimation: Animation create+Enemy2Bulletpos: Vector2f, dir: Vector2f create+Enemy2Bullet +initpos: Vector2f, dir: Vector2f: Enemy2Bullet +rendergc: GameContainer, g: Graphics Credits +background +Kembali +isiCredits +KembaliOver +mouseX +mouseY +sound +backgroundX +backgroundY +initgc, game: void +rendergc, game, g: void +updategc, game, delta: void +isMouseOverPlayButton +enterState +getID MenuGame +playNow +background +Story +Bantuan +Kembali +logo +playNowOver +StoryOver +BantuanOver +KembaliOver +cloud +cloud2 +gatotX +gatotY +mouseX +mouseY +cloudX +cloudY +sound +playNowX +playNowY +storyX +storyY +bantuanX +bantuanY +kembaliX +kembaliY +logoX +logoY +music +MenuGameint state: void +initgc, game: void +rendergc, game, g: void +updategc, game, delta: void +isMouseOverPlayButton1 +isMouseOverPlayButton2 +isMouseOverPlayButton3 +isMouseOverPlayButton4 +isMouseOverPlayButton5 +isMouseOverPlayButton6 +enterState +getID Scene1 +background +Skip +Next +SkipOver +NextOver +cloud +cloud2 +hiker +moon +text +mastabaSheet +tandaSheet +mastabaAnimation +tandaAnim +mouseX +mouseY +cloudX +cloudY +hikerX +hikerY +moonX +moonY +textX +textY +sound +music +music2 +Scene1int state: void +initgc, game: void +rendergc, game, g: void +updategc, game, delta: void +isMouseOverPlayButton1 +isMouseOverPlayButton2 +enterState +getID Scene2 +background +Skip +Next +SkipOver +NextOver +cloud +cloud2 +moon +text +gatotSheet +gatotAnimation +mouseX +mouseY +cloudX +cloudY +gatotkacaX +gatotkacaY +textX +textY +sound +music2 +Scene2int state: void +initgc, game: void +rendergc, game, g: void +updategc, game, delta: void +isMouseOverPlayButton1 +isMouseOverPlayButton2 +enterState +getID Scene3 +background +text +earth +satelit +Skip +SkipOver +gatotSheet +helpSheet +gatot2Sheet +signalSheet +gatotAnimation +helpAnim +gatot2Animation +signalAnimation +mouseX +mouseY +gatotkacaX +gatotkacaY +gatotX +gatotY +textX +textY +satelitX +satelitY +earthX +earthY +sound +music2 +Scene3int state: void +initgc, game: void +rendergc, game, g: void +updategc, game, delta: void +isMouseOverPlayButton1 +enterState +getID LevelSatu +background +background2 +road +road2 +cloud +cloud1 +level1 +jet +mainCursor +scoreImg +darah +targetImg +powerImg +Next +NextOver +blackLayer +r +enemys +enemies +powerUp +SPAWN_CHANCE +SPAWN_CHANCE2 +SPAWN_OBJEK +mouseX +mouseY +p +b +h +power +target +sound +sound2 +sound3 +sound4 +Delta +score +music +music2 +LevelSatuint state: void +initgc, game: void +rendergc, game, g: void +updategc, game, delta: void +isMouseOverPlayButton2 +enterState +getID Soldier +DELAY +delta +pos +bullets +current +RADIUS_SQARED +lives +alive +sound +SoldierVector2f pos, int maxBullets +rendergc, g: void +initgc: void +updategc, t: void +fireBulletvector2f vec, Bullet b: void +checkBulletCollisionBullet[] otherBullets: void +checkBulletCollision2Bullet2[] otherBullets: void +checkBulletCollision3Bullet3[] otherBullets: void +checkBulletCollision4Bullet4[] otherBullets: void +Bullet[] getBullets: void +Vector2f getPos: void +die: void +boolean isAlive: void +getID Player +DELAY +gatotkaca +isKeyPressed1 +isKeyPressed2 +sound +playerSheet +playerAnimation +PlayerVector2f pos: void +initgc: void +rendergc, g: void +updategc, t: void +die: void +getID Enemy +DELAY +p +gatot +alienSheet +alienAnimation +EnemyVector2f pos, Player p: void +rendergc, g: void +updategc, t: void +initgc: void Enemy2 +DELAY +p +gatot +alienSheet +alienAnimation +Enemy2Vector2f pos, Player p: void +rendergc, g: void +updategc, t: void +initgc: void EnemyLv2 +DELAY +p +gatot +alienSheet +alienAnimation +EnemyLv2Vector2f pos, Player p: void +rendergc, g: void +updategc, t: void +initgc: void SphareUfo +DELAY +p +gatot +alienSheet +alienAnimation +SphareUfoVector2f pos, Player p: void +rendergc, g: void +updategc, t: void +initgc: void SuicideEnemy +DELAY +p +gatot +alienSheet +alienAnimation +SuicideEnemyVector2f pos, Player p: void +rendergc, g: void +updategc, t: void +initgc: void Ufo +DELAY +p +gatot +alienSheet +alienAnimation +UfoVector2f pos, Player p: void +rendergc, g: void +updategc, t: void +initgc: void Ufo2 +DELAY +p +gatot +alienSheet +alienAnimation +Ufo2Vector2f pos, Player p: void +rendergc, g: void +updategc, t: void +initgc: void Meteor +mastabaSheet +mastabaAnimation +MeteorVector2f pos, Player p: void +rendergc, g: void +updategc, t: void +initgc: void Head +mastabaSheet +mastabaAnimation +HeadVector2f pos, Player p: void +rendergc, g: void +updategc, t: void +initgc: void PowerUp +mastabaSheet +mastabaAnimation +PowerUpVector2f pos, Player p: void +rendergc, g: void +updategc, t: void +initgc: void SkaterBoy +DELAY +playerSheet +playerAnimation +SkaterBoyVector2f pos: void +initgc: void +rendergc, g: void +updategc, t: void +die: void +getID: void Soldier2 +DELAY +delta +pos +bullets2 +current +RADIUS_SQARED +lives +alive +sound +Soldier2Vector2f pos, int maxBullets: void +rendergc, g: void +initgc: void +updategc, t: void +fireBulletVector2f vec, Bullet2 b: void +checkBulletCollisionBullet2[] otherBullets: void +getBullets2: void +getPos: void +die: void +isAlive: void +getID: void LevelDua +r +enemys +enemies +ufos +powerUp +meteorobj +SPAWN_CHANCE1 +SPAWN_CHANCE2 +SPAWN_OBJEK +mouseX +mouseY +p +b +re +power +target +sound +sound2 +sound3 +sound4 +Delta +score +music +LevelDuaint state: void +initgc, game: void +rendergc, game, g: void +updategc, game, delta: void +isMouseOverPlayButton2 +enterState +getID: void LevelTiga +r +enemys +enemies +headobj +powerUp +SPAWN_CHANCE +SPAWN_CHANCE2 +SPAWN_OBJEK +SPAWN_ROCKET +mouseX +mouseY +p +b +j +power +target +sound +sound2 +sound3 +Delta +score +music +music2 +LevelTigaint state: void +initgc, game: void +rendergc, game, g: void +updategc, game, delta: void +enterState +getID: void Soldier4 +DELAY +delta +pos +bullets4 +current +RADIUS_SQARED +lives +alive +sound +Soldier4Vector2f pos, int maxBullets: void +rendergc, g: void +initgc: void +updategc, t: void +fireBulletVector2f vec, Bullet4 b: void +checkBulletCollisionBullet4[] otherBullets: void +getBullets4: void +getPos: void +die: void +isAlive: void +getID: void HeroChilds +DELAY +playerSheet +playerAnimation +HeroChildsVector2f pos: void +initgc: void +rendergc, g: void +updategc, t: void +die: void +getID: void Pause +mouseX +mouseY +music +sound +Pauseint state: void +initgc, game: void +rendergc, game, g: void +updategc, game, delta: void +isMouseOverPlayButton1 +isMouseOverPlayButton2 +enterState +getID: void GameOver +mouseX +mouseY +music2 +sound +GameOverint state: void +initcontainer, game: void +rendercontainer, game, g: void +updatecontainer, game, delta: void +isMouseOverPlayButton1 +isMouseOverPlayButton2 +enterState +getID: void Pause2 +mouseX +mouseY +music +sound +Pause2int state: void +initgc, game: void +rendergc, game, g: void +updategc, game, delta: void +isMouseOverPlayButton1 +isMouseOverPlayButton2 +enterState +getID: void GameOver2 +mouseX +mouseY +music2 +sound +GameOver2int state: void +initcontainer, game: void +rendercontainer, game, g: void +updatecontainer, game, delta: void +isMouseOverPlayButton1 +isMouseOverPlayButton2 +enterState +getID: void Pause3 +mouseX +mouseY +music +sound +Pause3int state: void +initgc, game: void +rendergc, game, g: void +updategc, game, delta: void +isMouseOverPlayButton1 +isMouseOverPlayButton2 +enterState +getID: void GameOver3 +mouseX +mouseY +music2 +sound +GameOver3int state: void +initcontainer, game: void +rendercontainer, game, g: void +updatecontainer, game, delta: void +isMouseOverPlayButton1 +isMouseOverPlayButton2 +enterState +getID: void Soldier3 +DELAY +delta +pos +bullets3 +current +RADIUS_SQARED +lives +alive +sound +Soldier3Vector2f pos, int maxBullets: void +rendergc, g: void +initgc: void +updategc, t: void +fireBulletVector2f vec, Bullet3 b: void +checkBulletCollisionBullet3[] otherBullets: void +getBullets3: void +getPos: void +die: void +isAlive: void +getID: void Jet +DELAY +playerSheet +playerAnimation +JetVector2f pos: void +initgc: void +rendergc, g: void +updategc, t: void +die: void +getID: void Bullet2 pos: Vector2f dir: Vector2f lived: int = 0 aktiv: boolean = true MAX_LIFETIME: int = 1100 RADIUS_SQARED: int = 400 +DAMAGE: int = 2 -bulletSheet: SpriteSheet -bulletAnimation: Animation create+Bullet2pos: Vector2f, dir: Vector2f create+Bullet2 +initpos: Vector2f, dir: Vector2f: Bullet2 +updatet: int +rendergc: GameContainer, g: Graphics +isAktiv: boolean +setAktivaktiv: boolean +collideWithotherPos: Vector2f, otherRadiusSqared: int: boolean +getDamage: int Bullet4 pos: Vector2f dir: Vector2f lived: int = 0 aktiv: boolean = true MAX_LIFETIME: int = 1100 RADIUS_SQARED: int = 400 +DAMAGE: int = 2 -bulletSheet: SpriteSheet -bulletAnimation: Animation create+Bullet4pos: Vector2f, dir: Vector2f create+Bullet4 +initpos: Vector2f, dir: Vector2f: Bullet4 +updatet: int +rendergc: GameContainer, g: Graphics +isAktiv: boolean +setAktivaktiv: boolean +collideWithotherPos: Vector2f, otherRadiusSqared: int: boolean +getDamage: int Bullet4 pos: Vector2f dir: Vector2f lived: int = 0 aktiv: boolean = true MAX_LIFETIME: int = 1100 RADIUS_SQARED: int = 400 +DAMAGE: int = 2 -bulletSheet: SpriteSheet -bulletAnimation: Animation create+Bullet4pos: Vector2f, dir: Vector2f create+Bullet4 +initpos: Vector2f, dir: Vector2f: Bullet4 +updatet: int +rendergc: GameContainer, g: Graphics +isAktiv: boolean +setAktivaktiv: boolean +collideWithotherPos: Vector2f, otherRadiusSqared: int: boolean +getDamage: int EndingScene +gatotSheet +gatotAnim +mouseX +mouseY +sound +music +music2 +EndingSceneint state: void +initgc, game: void +rendergc, game, g: void +updategc, game, delta: void +isMouseOverPlayButton1 +isMouseOverPlayButton2 +getID: void Scene3 +background +text +earth +satelit +Skip +SkipOver +gatotSheet +helpSheet +gatot2Sheet +signalSheet +gatotAnimation +helpAnim +gatot2Animation +signalAnimation +mouseX +mouseY +gatotkacaX +gatotkacaY +gatotX +gatotY +textX +textY +satelitX +satelitY +earthX +earthY +sound +music2 +Scene3int state: void +initgc, game: void +rendergc, game, g: void +updategc, game, delta: void +isMouseOverPlayButton1 +enterState +getID Scene3 +background +text +earth +satelit +Skip +SkipOver +gatotSheet +helpSheet +gatot2Sheet +signalSheet +gatotAnimation +helpAnim +gatot2Animation +signalAnimation +mouseX +mouseY +gatotkacaX +gatotkacaY +gatotX +gatotY +textX +textY +satelitX +satelitY +earthX +earthY +sound +music2 +Scene3int state: void +initgc, game: void +rendergc, game, g: void +updategc, game, delta: void +isMouseOverPlayButton1 +enterState +getID