Just another WordPress.com site

>Bikin game dengan turbo c
Posted on April 11, 2010 by cakz800
Ini tugas turbo c untuk UTS,saya juga mempelajari game ini dari internet.
saya tidak copy paste hanya meniru saja..hhee beda ya copy pasti dengam meniru,di umur saya yang segini wajar lah kalau saya masih meniru niru terhadap senior,biar ilmunya nempel gitu.
dah langsung saja ini gamenya :
#include
#include
#include
#include
#include
#define atas 1
#define kiri 2
#define bawah 3
#define kanan 4
#define keyUp 0×048
#define keyDown 0×050
#define keyLeft 0x04b
#define keyRight 0x04d
#define true 1
#define false 0
#define easy 10
#define medium 20
#define hard 30
#define caption ” —————-\n// GAME PUZZLE //\n—————-\n”
#define fieldSize 4
char field[fieldSize][fieldSize];
char field2[fieldSize][fieldSize];
unsigned int seed;
int x, y;
int acak(int i);
void initField(int movement);
void move(int arah);
void generateOutput();
int cekUrut();
int acak(int i) {
int a;
seed += 5;
srand(seed);
a = (rand() % i) + 1;
return(a);
}
void initField(int movement) {
int arah, arahOld = -1, nPindah = movement, xOld, yOld;
int c = 1, i, j;
char temp;
srand(time(NULL));
seed = rand();
x = y = (fieldSize – 1);
for (i = 0; i <= (fieldSize – 1); i++){for (j = 0; j 0) y–;
else continue;
break;
case kiri : if (x > 0) x–;
else continue;
break;
case kanan :if (x < fieldSize – 1) x++;else continue;break;case bawah :if (y = 0 && y >= 0 && x <= (fieldSize – 1) && y 0) y–;
break;
case kiri:
if (x > 0) x–;
break;
case kanan :
if (x < (fieldSize – 1)) x++;break;case bawah :if (y = 0 && y >= 0 && x <= (fieldSize – 1) && y <= (fieldSize – 1)) {
temp = field[y][x];
field[y][x] = field[yOld][xOld];
field[yOld][xOld] = temp;
} else {
x = xOld;
y = yOld;
}
generateOutput();
}
void generateOutput() {
int i, j, k;
clrscr();
puts(caption);
puts(“Tekan ESC untuk keluar / reset permainan…”);
for(k = 1; k <= fieldSize; k++) printf(“+—-”); puts(“+”);
for (i = 0; i<=(fieldSize – 1); i++) {
for (j= 0; j<=(fieldSize – 1); j++) {
if (i == y && j == x) {
printf(“| %c “, field[i][j]);
} else {
printf(“| %2i “, field[i][j]);
}
}
puts(“|”);
for(k = 1; k <= fieldSize; k++) printf(“+—-”); puts(“+”);
}
}
int cekUrut() {
int c, d;
int match = true;
for (c = 0; c <= (fieldSize – 1); c++) {
for (d = 0; d <= (fieldSize – 1); d++) {
if (field[c][d] != field2[c][d]) {
if (match == true) {
match = false;
}
}
}
}
return(match);
}
main() {
int i, j, k, level;
char key;
system(“cls”);
puts(caption);
puts(“Mainkan puzzle dan menyusunnya menjadi urutan yang benar…”);
puts(“Geser kotak kosong sehingga menjadi berurutan sbg berikut : \n”);
initField(0);
for(k = 1; k <= fieldSize; k++) printf(“+—-”); puts(“+”);
for (i = 0; i<=(fieldSize – 1); i++) {
for (j= 0; j<=(fieldSize – 1); j++) {
if (i == y && j == x) {
printf(“| %c “, field2[i][j]);
} else {
printf(“| %2i “, field2[i][j]);
}
}
puts(“|”);
for(k = 1; k <= fieldSize; k++) printf(“+—-”); puts(“+”);
}
puts(“Gunakan tombol panah untuk menggeser kotak kosong…\n”);
puts(“Tekan sembarang tombol untuk melanjutkan…”);
getch();
for(;;) {
system(“cls”);
puts(“Level : “);
puts(“\t1. Easy”);
puts(“\t2. Medium”);
puts(“\t3. Hard”);
printf(“Pilih Level yang akan dimainkan : “);
scanf(“%i”, &level);
switch (level) {
case 1 :
initField(easy);
break;
case 2 :
initField(medium);
break;
case 3 :
initField(hrd);
break;
default :
puts(“Level salah!!”);
getch();
continue;
}
system(“cls”);
generateOutput();
while ((key = getch()) != 27)
{
switch(key) {
case keyUp : ove(atas);break;
case keyDown : move(bawah); break;
case keyLeft : move(kiri); break;
case keyRight : move(kanan); break;
}
if (cekUrut() == true) {
puts(“\nANDA MENANG!!!”);
break;
}
}
if (key == 27)
{
printf(“Apakah anda ingin keluar ?\n[‘y’ utk keluar / ‘t’ utk reset] : “);
if (toupper(getchar()) == ‘Y’) break;
else continue;
}
else
{
printf(“Apakah anda ingin main lagi ? [y/t] : “);
if (toupper(getchar()) == ‘T’)
{
puts(“\nTerima Kasih Telah Mencoba!!!”);
getch();
break;
}
else continue;
}

Tinggalkan Balasan

Isikan data di bawah atau klik salah satu ikon untuk log in:

Logo WordPress.com

You are commenting using your WordPress.com account. Logout / Ubah )

Gambar Twitter

You are commenting using your Twitter account. Logout / Ubah )

Foto Facebook

You are commenting using your Facebook account. Logout / Ubah )

Foto Google+

You are commenting using your Google+ account. Logout / Ubah )

Connecting to %s

%d blogger menyukai ini: