#include <iostream>
#include<stdio.h>
#include<windows.h>
#include<conio.h>
#include<time.h>
#include<math.h>
#include <fstream>
#include <cstdlib>
#define WALL 0 //墙
#define ROAD 1 //路径
#define PLAYER 2//玩家
//控制迷宫的复杂度,数值越大迷宫难度越小,最小值为0
//默认为简单难度,可以在degree函数里调整不同难度
int Rank = 6;
//控制迷宫的大小,数值越大迷宫越大,最小值为8
//默认为中等,可以在mazesize函数里调整不同大小
int L = 32;
void menu(); //主菜单界面
void start(); //开始游戏
void degree(); //游戏难度
void mazesize();//迷宫大小
void explain();//游戏说明
void tips();//游戏提示
int init(int** Maze); //初始化迷宫
void paint(int** Maze);//画迷宫
void CreateMaze(int** maze, int x, int y); //创建迷宫
void move(int** Maze, char t, int* x, int* y);//移动角色
//主函数
int main()
{
menu();
return 0;
}
//主菜单
void menu()
{
while (1)
{
system("cls"); //清屏
char c;
printf("====================迷宫游戏==================");
printf("\n==============================================\n");
printf("\n|| 1. 开始游戏 ||\n");
printf("\n|| 2. 游戏说明 ||\n");
printf("\n|| 3. 游戏难度 ||\n");
printf("\n|| 4. 迷宫大小 ||\n");
printf("\n|| 5. 游戏提示 ||\n");
printf("\n|| 6. 退出游戏 ||\n");
printf("\n|| ||\n");
printf("\n|| 温馨提示:游戏前请查看游戏说明 ||\n");
printf("\n|| 作者:软件19-6 李海玮 ||\n");
printf("==============================================\n");
c = _getch(); //不回显函数
switch (c) {
case '1':
start();
break; //开始一局游戏
case '2':
explain();
break; //进入游戏说明界面
case '3':
degree();
break; //调整游戏难度
case '4':
mazesize();
break; //调整迷宫大小
case '5':
tips();
break; //查看游戏提示
case '6':
printf("\n游戏结束");
Sleep(1000);
exit(0);
break; //结束程序
default:
break;
}
}
}
//构建迷宫
void CreateMaze(int** maze, int x, int y)
{
maze[x][y] = ROAD;
//确保四个方向随机,而不再是固定的上下左右这种排列
int direction[4][2] =
{
{ 1,0 },
{ -1,0 },<