selamat datang di blognya iblis-dunia.blogspot.com, berisi tentang hal-hal yang tak pernah dimengerti oleh manusia :D BERCANDA BROO

Sabtu, 22 Desember 2018

Membuat Game Maze Menggunakan Aplikasi Processing


Assalamualaikum kawula muda, saya disini akan melanjutkan program apa yang telah dijelaskan pada blog sebelumnya. jika kawula muda belum melihatnya, seilahkan klik pada link dibawah :


Silahkan buat atau copy script dibawah, script dibawah merupakan fungsi untuk berbelok kekiri.

  void goWest () {

     if (_m[_my][_mx-1]==PAS) {

        _step++;

       fill(white);

       rect(_mx*_d, _my*_d, _d, _d);

       _mx--;

       fill(blue);

       rect(_mx*_d, _my*_d, _d, _d);

     }

  }



selanjutnya silahkan ketikkan script dibawah ini, script tersebut merupakan fungsi untuk berbelok kekanan.

       void goEast () {

         if (_m[_my][_mx+1]==PAS) {

            _step++;

           fill(white);

           rect(_mx*_d, _my*_d, _d, _d);

           _mx++;

           fill(blue);

           rect(_mx*_d, _my*_d, _d, _d);

         }

      }



Selanjutnya silahkan ketikkan script dibawah ini, script tersebut merupakan fungsi untuk berbelok keatas.

  void goNorth () {

     if (_m[_my-1][_mx]==PAS) {

        _step++;

       fill(white);

       rect(_mx*_d, _my*_d, _d, _d);

       _my--;

       fill(blue);

       rect(_mx*_d, _my*_d, _d, _d);

     }

  }

 

Lalu ketikkan script dibawah, script tersebut merupakan fungsi untuk berbelok kebawah.

       void goSouth () {

         if (_m[_my+1][_mx]==PAS) {

            _step++;

           fill(white);

           rect(_mx*_d, _my*_d, _d, _d);

           _my++;

           fill(blue);

           rect(_mx*_d, _my*_d, _d, _d);

         }

      }

 

Lalu dilanjutkan dengan script dibawah ini.

  int [][]_m;

  int _h, _w; // H & W

  int _sx, _sy; // Starting point

  int _ex, _ey; // Ending point

 

  int _maxdistance; // Max distance between starting and ending point

 

  int _d; // Drawing size for cells 

 

  // Navigation

  int _step; // user steps

  int _mx, _my; // Current user position

 

  int _dirs;

  int _p; // Change direction probablility : 1->each step, 4-> 1/4 step

  ArrayList _nodes;

};



int [][] dirset = {

    { 1, 2, 3, 4},

    { 1, 2, 4, 3},

    { 1, 3, 2, 4},

    { 1, 3, 4, 2},

    { 1, 4, 2, 3},

    { 1, 4, 3, 2},

   

    { 2, 1, 3, 4},

    { 2, 1, 4, 3},

    { 2, 3, 1, 4},

    { 2, 3, 4, 1},

    { 2, 4, 1, 3},

    { 2, 4, 3, 1},



    { 3, 1, 2, 4},

    { 3, 1, 4, 2},

    { 3, 2, 1, 4},

    { 3, 2, 4, 1},

    { 3, 4, 1, 2},

    { 3, 4, 2, 1},

   

    { 4, 1, 2, 3},

    { 4, 1, 3, 2},

    { 4, 2, 1 ,3},

    { 4, 2, 3, 1},

    { 4, 3, 1, 2},

    { 4, 3, 2, 1}

};



Script dibawah ini merupakan fungsi utama dari game itu sendiri, dimana script tersebut digunakan untuk menjalankan game yang sudah dibuat tadi.

//=============== MAIN ================

Game game;

PFont font;

void setup () {

  size (320,240);



  colorMode(RGB, height, height, height);

  background(white);

  noFill();

  noStroke ();

 

  font = createFont("Arial",16,true);  // Loading font

  textFont(font);

 

  game = new Game ();

}



void draw () {

  game.Manage();

}



void keyPressed() {

  game.KeyPressed (key);

}



Nah, dengan demikian telah selesai progress project game tersebut.