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 Tagihan Listrik

Kali ini ali ini Admin @feidodol akan membuat ProgramTagihan Listrik...hehe jangan sampai lupa bayar listrik yaaa... jangan lupa : ID : 123 Nama Pelanggan : Nama Anda #include<stdio.h> #include<conio.h> #include<string.h>     void tgh(  )    { int nop[]={1,2,3};      printf("\nID Pelangan        : %d%d%d ",nop[0],nop[1],nop[2]);      printf("\nMeteran Akhir      : 67880098  ");      printf("\nSelisih  Meteran   : 57789");      printf("\nTanggal Pembayaran : 12-02-2004");      printf("\nTotal Tagihan      : Rp 200.000,00");}     int meteran(int mak, int ma)     { printf("\nMasukan Meteran Awal : "); scanf("%d",&ma);       printf("Masukan Meteran Akhir: "); scanf("%d",&ma...

Program Batu Gunting Kertas

Kali ini ali ini Admin @feidodol akan membuat Program Game Batu Gunting Kertas ... Ikuti Terus yaaaaaa... #include<stdio.h> #include<stdlib.h> int main(){ int pilih,komp; char lagi; printf("Selamat Datang Di Game Batu Gunting Kertas :D\n"); do {  system("CLS"); printf("TANGAN :\n"); printf("[1].BATU\n"); printf("[2].GUNTING\n"); printf("[3].KERTAS\n"); printf("Mana yang ingin anda pilih :"); scanf("%d",&pilih); komp=rand()%3; system("CLS"); switch(pilih){ case 1:     {     printf("Pilihan anda adalah : BATU\n");     switch(komp){         case 0 :             {                 printf("Komputer : BATU\n");                 printf("Hasil = Seri\n");       ...