Rabu, 30 Mei 2018

Finite State Machine (FSM) dan Pseudocode

Finite State Machine (FSM) dan Pseudocode dalam game mencari koin



Assalamu'alaikum wr..wb..

Selamat malam semua, apa kabar? setelah sekian lama akhirnya blog ini dapat diupdate lagi :D
Kesempata kali ini saya akan membahas sedikit mengenai 


Finite State Machine (FSM) dan Pseudocode dalam game mencari koin..

Finite State Machine (FSM) dalam game mencari koin


Pseudocode

using UnityEngine;
using System.Collections;

public class FSM : MonoBehaviour {
  public enum { masuklevel1, diam, berjalan, makan, koin, poin, levelberikutnya, nyawa, energi, musuh, bertahan, tertabrak musuh, gameover }

public TurnStates state;
public bool gameInProgress = true;

void Start () {
 state = FSM.masuklevel1;
 StartCoroutine ("TurnFSM");
}
private IEnumerator TurnFSM (){
 while(gameInProgress){
  switch(state){
  case TurnStates.masuklevel1:
     if( Permainan Star()) {* state = diam:}
    break;
  case TurnStates.diam:
    if(awal()) {* state = berjalan;}
    break;
  case TurnStates.berjalan:
    if( walk()) {* state = makanan;}
    break;
  case TurnStates.makanan:
     if( mencari koin()) {* state = poin;}
if( mencari energi()) {* state = nyawa;}
 if (menghindar ()) {* state = Musuh;}
   break;
  case TurnStates.musuh:
  if( Terkenamusuh ()) {* state = nyawa;}
  Break;
  case TurnStates.nilai:
    if( misi selesai ()) {* state = nextlevel;}
  break;
  case TurnStates.nyawa:
     if(nyawa masih tersedia ()) {* state = diam;}
     else (nyawa habis ()) {* state = GameOver;}
  Break;
  case TurnState.NextGame :
 if (levelakhir ()) {* state = masuklevel1;}
 break;
case TurnState.bertahan:
 if (bertahan ()) {* state = musuh;}
 break;

 }
 yield return null;
    } 
}


Penjelasan:
Jadi dalam game mencari koin ini, saat player memulai permainan, player dalam posisi diam. Kemudian player berjalan untuk mencari koin agar mendapat poin. Apabila dalam perjalanan player menemukan dan memakan energi, maka player akan mendapatkan tambahan nyawa. Apabila player bertemu musuh, player harus menghidar agar nyawanya tidak berkurang, apabila player tertabrak musuh maka nyawa player akan berkurang. Jika misi selesai dan player masih memiliki nyawa, maka player berhak melanjutkan ke level berikutnya. Dan jika nyawa player habis ditengah permainan, maka game over.

Sekian sedikit yang dapat saya bagi, terimakasih atas kunjungannya.. Selamat malam :D

Tidak ada komentar:

Posting Komentar