Langsung ke konten utama

Program Game Pacman

Kali ini ali ini Admin @feidodol akan membuat Program Game Pacman ... Ikuti Terus yaaaaaa...

#include <stdio.h>
#include <conio.h>
#include <stdlib.h>

#define MAKS 10


void cetak(int kotak[MAKS][MAKS]);
int CekTujuan (int posisiX, int  posisiY, int tujuanX, int tujuanY);

int main(){
    int kotak[MAKS][MAKS] = {
        {    1, 1, 1, 1, 1, 1, 1, 1, 1, 1         },
        {    1, 0, 0, 0, 0, 0, 0, 0, 0, 1        },
        {    1, 0, 0, 0, 0, 0, 0, 0, 0, 1        },
        {    0, 0, 0, 0, 0, 0, 0, 0, 0, 1        },
        {    1, 0, 0, 1, 1, 1, 1, 0, 0, 1        },
        {    1, 0, 0, 1, 0, 0, 1, 0, 0, 1        },
        {    1, 0, 0, 1, 0, 0, 1, 0, 0, 1        },
        {    1, 0, 0, 1, 0, 0, 1, 0, 0, 1        },
        {    1, 0, 0, 1, 0, 0, 1, 0, 0, 0        },
        {    1, 1, 1, 1, 0, 0, 1, 1, 1, 1        },
    };
  
    int posisiX = 3, posisiY = 0, keluar;
    int karakter, banyakLangkah, tujuanX = 8, tujuanY = 9;
    kotak [posisiX][posisiY] = 2;
  
    keluar = 0;
    banyakLangkah = 0;
  
    do{
        system("cls");
        cetak(kotak);
        if(CekTujuan(posisiX, posisiY, tujuanX, tujuanY)){
            printf("\n\n\n\n\n\nSELESAI\n");
            printf("banyak langkah = %d\n\n\n\n\n\n", banyakLangkah);
            break;
        }
      
        karakter = getch();
        banyakLangkah++;
      
        switch(karakter){
            case 49: //atas
                if(posisiX > 0 && kotak[posisiX-1][posisiY] == 0){
                    kotak[posisiX][posisiY] = 0;
                    posisiX--;
                    kotak[posisiX][posisiY] = 2;
                }
                break;
              
            case 50: //bawah
                if(posisiX < MAKS-1 && kotak [posisiX+1][posisiY] == 0){
                    kotak[posisiX][posisiY] = 0;
                    posisiX++;
                    kotak[posisiX][posisiY] = 2;
                }
                break;
              
            case 51: //kiri
                if(posisiY > 0 && kotak[posisiX][posisiY-1] == 0){
                    kotak[posisiX][posisiY] = 0;
                    posisiY--;
                    kotak[posisiX][posisiY] = 2;
                }
                break;
          
            case 52: //kanan
                if(posisiY < MAKS-1 && kotak[posisiX][posisiY+1] == 0){
                    kotak[posisiX][posisiY] = 0;
                    posisiY++;
                    kotak[posisiX][posisiY] = 2;
                }
                break;
              
            case 53: keluar=1; break;
        }
    }while(!keluar );
  
    return 0;
}

void cetak(int kotak[MAKS][MAKS]){
    int baris, kolom;
  
    for(baris=0; baris<MAKS; baris++){
        for(kolom=0; kolom<MAKS; kolom++)
            switch(kotak[baris][kolom]){
                case 0: printf(" "); break;
                case 1: printf("+"); break;
                case 2: printf("*"); break;
            }
            printf("\n");
    }
}
int CekTujuan (int posisiX, int posisiY, int tujuanX, int tujuanY){
    return posisiX == tujuanX && posisiY == tujuanY;
}

Dan Hasilnya Akan Seperti ini...

Komentar

Postingan populer dari blog ini

Presentasi ROBOTIKA

Hello Guys Kali Ini Admin @feidodol akan menshare tentang Robotika. Tapi ini dalam bentuk Power Point yang Berbentuk JPG... Cekidooot....

Program Jam Pasir

Kali ini ali ini Admin @feidodol akan membuat Program JamPasir... Ikuti Terus yaaaaaa... #include <iostream> using namespace std; main () {     int b,k,c;     for(b=1;b<=7;b++)     {         for(k=1;k<=b;k++)         {             cout<<" ";         }             for(c=7;c>=b;c--)             {                 cout<<"* ";             }     cout<<endl;     }     for(b=6;b>=1;b--)     {         for(k=1;k<=b;k++)  ...

Program Gerobak Fried Chicken

Kali ini ali ini Admin @feidodol akan membuat Program Gerobak Fried Chicken, Kocak yak programnya...Biar Ngga Penasaran...Ikuti Terus yaaaaaa... #include <iostream> #include <stdio.h> #include <conio.h> #include <iomanip> #include <string.h> using namespace std; int main( ) { int x ,a ,ulangi; char jenis[6] = {'D','d','P','p','S','s'} ,*ket[6]; long bapot[6], jumhar[6] = {0}, hasat[6] = {2500 ,2000 ,1500}; long jumbar[6]= {0}, pajak[6], totba[6]; pesan: cout<<"\tGEROBAK FRIED CHICKEN\n"; cout<<"\t---------------------\n"; cout<<"\t Kode Jenis Harga\n"; cout<<"\t---------------------\n"; cout<<"\t [D] Dada  Rp. 2500\n"; cout<<"\t [P] Paha  Rp. 2000\n"; cout<<"\t [S] Sayap Rp. 1500\n\n"; cout<<"\t---------------------\n\n"; cout<<"\tBanyak Jenis : ";cin>>x; jumb...