#include #include #include #include #define SOL 75 #define SAG 77 #define YUKARI 72 #define ASAGI 80 #define ROWS 12 #define COLS 21 int seed; char maze[ROWS][COLS] = {{' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' '}, {'*','*','*','*','*','*','*','*','*','*','*','*','*','*','*','*','*','*','*','*'}, {'*','.','.','.','.','.','.','.','.','.','.','.','.','.','.','.','.','.','.','*'}, {'*','.','*','*','.','*','*','*','*','*','.','*','*','*','*','.','*','*','.','*'}, {'*','.','*','*','.','*','.','.','.','*','.','*','.','.','.','.','*','*','.','*'}, {'*','.','.','.','.','*','.','*','.','*','.','*','.','*','.','.','.','.','.','*'}, {'*','.','*','*','*','*','.','*','.','*','.','*','.','*','*','*','*','.','.','*'}, {'*','.','.','.','.','.','.','*','.','.','.','*','.','.','.','.','.','.','.','*'}, {'*','*','*','*','*','*','.','*','*','*','.','*','*','*','.','*','*','*','.','*'}, {'*','.','.','.','.','.','.','.','.','.','.','.','.','.','.','.','.','.','.','*'}, {'*','*','*','*','*','*','*','*','*','*','*','*','*','*','*','*','*','*','*','*'} }; /*char dizi[11][20] = {{" ******************"}, // labirent matrisi {" * * *"}, {" * * ***** *"}, {" * ***** * *"}, {" * * * *"}, {" ***** * **** *"}, {" * * * *"}, {" * ******* * *"}, {" * * *"}, {" ******************"}};*/ void hidecursor() { // CURSOR GORUNMEZ YAPAR CONSOLE_CURSOR_INFO cursor_info = {1, 0}; SetConsoleCursorInfo(GetStdHandle(STD_OUTPUT_HANDLE), &cursor_info); } void gotoxy(int x, int y) // KARAKTERiN EKRANDA KONUMLANMA YER� { COORD Pos = {x - 1, y - 1}; SetConsoleCursorPosition(GetStdHandle(STD_OUTPUT_HANDLE), Pos); } void cikis() { // KARAKTER DUVARA CARPTIGINDA B�T�RME gotoxy(16, 16); printf("kaybettinizz!!!"); exit(0); } void ciz() { // LAB�RENT� EKRANA BASMA int i, j; for (i = 0; i < ROWS; i++) { for (j = 0; j < COLS; j++) { gotoxy(j,i); if(maze[i][j] == '.'){ gotoxy(j,i); printf(" "); } else printf("%c ", maze[i][j]); } printf("\n"); } gotoxy(2, 2); printf("%c", 16); /*int i, j; for (i = 0; i < 11; i++) { for (j = 0; j < 20; j++) { gotoxy(j, i); printf("%c", dizi[i][j]); } printf("\n"); }*/ } int konum(i,j) { // KARAKTER�N KONUMLARI gotoxy(i, j); printf("X"); } void menu() { // OYUN KURALLARI system("color 9"); gotoxy(25, 1); printf(" #########Oyun Kurallari########\n"); gotoxy(25, 2); printf("------Duvarlara Carpmadan Hedefe Ulas------\n"); gotoxy(25, 3); printf("------Duvarlara Carparsan Oyun Biter--------\n"); gotoxy(25, 4); printf("------Yon Tuslari Ile Oynanir----------------\n"); gotoxy(25, 5); printf("------Oyuna Baslamak icin 1 ' e Bas'--------\n"); } void play(); int main() { int sayi; int i; int j=9; hidecursor(); menu(); scanf("%d", &sayi); if (sayi == 1) { system("cls"); ciz(); system("color 3"); play(); } } void play() { time_t start,end; time (&start); int i,count; seed=time(NULL); srand(seed); i=1+rand()%19; int j=9; konum(i,j); int karx = 2, kary = 2; int ch1, ch2; ch1 = getch(); ch2 = 0; if (ch1 == 0xE0) { while (ch2 = getch()) { if (ch2 == 'X') exit(0); if (ch2 == SOL) { if (karx > 2) { if (ch2 == 3) break; gotoxy(--karx, kary); printf("%c", 174); gotoxy(karx + 1, kary); printf(" "); count=count+100; } } if (ch2 == SAG) { if (karx < 20) { if (ch2 == 3) break; gotoxy(++karx, kary); printf("%c", 175); gotoxy(karx - 1, kary); printf(" "); count=count+100; } } if (ch2 == YUKARI) { if (kary > 1) { if (ch2 == 3) break; gotoxy(karx, --kary); printf("%c", 94); gotoxy(karx, kary + 1); printf(" "); count=count+100; } } if (ch2 == ASAGI) { if (kary < 9) { if (ch2 == 3) break; gotoxy(karx, ++kary); printf("%c", 118); gotoxy(karx, kary - 1); printf(" "); count=count+100; } } if (maze[kary][karx] == '*') { gotoxy(15, 15); system("color 4"); printf("kaybettiniz"); exit(0); } /*if (karx == 16 && kary == 9) { gotoxy(15, 15); system("color 2"); printf("tebrikler.."); exit(0); }*/ if (karx == i && kary == j) { time (&end); gotoxy(14,14); printf("Hedefe Ulasma Sureniz :%2.lf sn\n ",difftime(end,start)); gotoxy(15, 15); system("color 2"); printf("tebrikler.."); exit(0); } if(karx == i || kary == i){ gotoxy(i,j); printf(" "); i=1+rand()%19; konum(i,j); } } } getch(); }