本文实例为大家分享了C语言键盘控制走迷宫小游戏的具体代码,供大家参考,具体内容如下

在看了《啊哈C语言》之后想写一个游戏demo

游戏的截图

首先是启动界面

然后是初始化

接下来是键盘操控

地图的复杂度也很容易修改。

也支持退出。按s键选择退出游戏这个选项即可。

下面是源代码

#include

#include

void startUp();

void gameInstructions();

void menu(char c);

void gameMap();

char map[6][6]={"######",

"#o # ",

"# ## #",

"# # #",

"## #",

"######"

};

int main() {

startUp();//游戏启动界面

gameInstructions();//游戏说明

//显示菜单

printf(" -> 开始游戏\n");

printf(" 退出游戏\n");

printf("按Enter进入游戏\n");

char choose1;

choose1 = getch();

menu(choose1);

//加载游戏地图

gameMap();

//玩家进行操作

system("cls");

int i,x,y,p,q,j;

char ch;

x=1;y=1;p=1;q=5;

for(i=0;i<6;++i){

printf(" ");

for(j=0;j<6;++j){

printf("%c ",map[i][j]);

}

printf("\n");

}

while(x != p || y != q){

ch = getch();

if(ch == 's' || ch == 'S'){

if(map[x+1][y] != '#'){

map[x][y] = ' ';

x++;

map[x][y] = 'o';

}else{

printf("\a");

}

}

if(ch == 'w' || ch == 'W'){

if(map[x-1][y] != '#'){

map[x][y] = ' ';

x--;

map[x][y] = 'o';

}else{

printf("\a");

}

}

if(ch == 'a' || ch == 'A'){

if(map[x][y-1] != '#'){

map[x][y] = ' ';

y--;

map[x][y] = 'o';

}else{

printf("\a");

}

}

if(ch == 'd' || ch == 'D'){

if(map[x][y+1] != '#'){

map[x][y] = ' ';

y++;

map[x][y] = 'o';

}else{

printf("\a");

}

}

system("cls");

for(i=0;i<6;++i){

printf(" ");

for(j=0;j<6;++j){

printf("%c ",map[i][j]);

}

printf("\n");

}

}

system("cls");

printf("You Win!\n");

Sleep(3000);

return 0;

}

void startUp(){

int i;

int circle = 2;

for(i=0;i

system("cls");

printf(" 游戏正在加载");

Sleep(500);

system("cls");

printf(" 游戏正在加载.");

Sleep(500);

system("cls");

printf(" 游戏正在加载..");

Sleep(500);

system("cls");

printf(" 游戏正在加载...");

Sleep(500);

}

system("cls");

printf(" 游戏加载完毕!\n");

Sleep(1000);

}

void gameInstructions(){

printf("\n");

printf("\n");

printf("\n");

Sleep(1000);

}

void menu(char c){

system("cls");

if(c == 'S' || c == 's'){

printf(" 游戏加载完毕!\n");

printf("\n");

printf("\n");

printf(" 开始游戏\n");

printf(" -> 退出游戏\n");

printf("程序将在5s后关闭\n");

int i = 0;

for(i=0;i<5;++i){

system("cls");

printf("程序将在 %ds后关闭\n",5-i);

Sleep(1000);

}

exit(0);//退出程序

}else{

printf(" 游戏加载完毕!\n");

printf("\n");

printf("\n");

printf(" -> 开始游戏\n");

printf(" 退出游戏\n");

printf("按Enter进入游戏\n");

}

}

void gameMap(){

system("cls");

printf("---正在加载游戏地图---\n");

int i, j;

for(i=0;i<6;++i){

printf(" ");

for(j=0;j<6;++j){

printf("%c ",map[i][j]);

Sleep(100);

}

printf("\n");

Sleep(200);

}

system("cls");

printf("---Part1---\n");

for(i=0;i<6;++i){

printf(" ");

for(j=0;j<6;++j){

printf("%c ",map[i][j]);

}

printf("\n");

}

}

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

c语言自动按键脚本,C语言键盘控制走迷宫小游戏相关推荐

  1. C语言实现一个走迷宫小游戏(深度优先算法)

    补充一下,先前文章末尾给出的下载链接的完整代码含有部分C++的语法(使用Dev-C++并且文件扩展名为.cpp的没有影响),如果有的朋友使用的语言标准是VC6的话可能不支持,所以在修改过后再上传一版, ...

  2. 手动搜索迷宫游戏 c语言,C语言实现一个走迷宫小游戏(深度优先算法)

    接上一篇万年历博文,还是那位朋友的练习题.这次是使用C语言做一个小游戏程序,三选一(2048.8皇后和迷宫游戏),我选择的是迷宫(文章末尾有程序截图).个人认为这个程序的难点在于迷宫地图的绘制,也就是 ...

  3. C语言编写简单的走迷宫小游戏

    走迷宫: 1.定义一个二维数组作为迷宫 2.定义老鼠的坐标 3.获取游戏开始时的时间time(NULL) 4.进入循环 1.system 清理屏幕 2.显示迷宫(遍历二维数组) 3.检查是否走出迷宫 ...

  4. 游戏自动按键脚本1:田径四项

    这个游戏的内容是四项体育赛事,包括百米短跑.跳远.标枪.跨栏.其中基本动作是要求不停地按空格键以快速跑动.而Ctrl键需要稍微按住一会儿然后放开,来控制起跳或投掷的角度. 为此设计的自动按键脚本如下: ...

  5. 游戏自动按键脚本4:飞车追捕

    游戏中,玩家驾驶警车,在高速公路上追捕罪犯,接近目标车辆并将其撞毁.用左右方向键控制左右移动,上方向键(键盘38)加速,下方向键减速,不按会自己慢慢停下来. 为此设计的自动按键脚本如下: 方案1:键盘 ...

  6. 分享一个C语言矿井逃生迷宫小游戏【附源码】

    用C语言写的一个迷宫小游戏,游戏玩法是通过鼠标控制帽子上的灯走出迷宫 // 定义常量 #define PI 3.141592653589 // 圆周率 #define UNIT_GROUND 0 // ...

  7. 用C语言做一个迷宫小游戏

    用C语言做一个迷宫小游戏,以下是代码段 这个迷宫游戏使用了递归回溯算法来寻找通往出口的路径.迷宫中的墙用'#'表示,路径用空格表示,入口和出口分别用'S'和'E'表示,已走过的路径用'*'表示.在生成 ...

  8. C语言写一个很好玩的皇帝的后宫小游戏

    C语言写一个很好玩的皇帝的后宫小游戏 前言 先演示一下 上源码 总结 前言 只是单纯喜欢C语言,闲着无事把以前学习的时候的案例编了一下,都是很基础的代码,for,swich,if这些,基础好的看完后完 ...

  9. 自动按键脚本_阔怕...按键精灵还能将别人的脚本导入为自己所用

    在按键精灵中你可以自己编辑脚本也可以直接导入别人的脚本直接使用.但是按键精灵的脚本文件是按键一定的数据格式保存的,如果单纯地把Q文件里面的内容直接复制到编辑器上是无法识别的.那如何导入别人的脚本? 一 ...

最新文章

  1. 【全网之最】用JavaScript写一个最简短的语句实现从A数组中去除B数组中相同元素
  2. ubuntu下wireshark添加root权限
  3. 基于 Dash Bio 的生物信息学数据可视化
  4. ZooKeeper管理员指南——部署与管理ZooKeeper
  5. 装mysql最后一步没响应_解决MySQL安装到最后一步未响应的三种方法
  6. 爬取人民日报_【爬虫系列】人民日报半个世纪的资料(文末福利)
  7. ubuntu更改mysql编码格式_Ubuntu修改mysql编码格式
  8. mysql8 设置了默认值 CURRENT_TIMESTAMP 依然报null问题
  9. [Java] 1001. 害死人不偿命的(3n+1)猜想 (15)-PAT乙级
  10. ring0检测隐藏进程
  11. 2018总结 2019计划
  12. 环境篇:CM+CDH6.3.2环境搭建(全网最全)
  13. 驼峰式命名法python_驼峰命名法
  14. 纯干货!一款APP从设计稿到切图过程全方位揭秘
  15. TIOBE 3 月编程语言排行榜刚刚出炉
  16. oracle强制停止执行,Oracle强制终止在执行的sql
  17. 计算机硬件资源如何共享,如何设置计算机共享资源
  18. 1569 B.Chess Tournament
  19. inconsistent datatypes: expected DATE got NUMBER
  20. OpenCV 视频地址和图片地址注意事项

热门文章

  1. buildroot介绍
  2. elasticsearch id查询_互联网公司中对【Elasticsearch】的真实应用案例
  3. 2021年本溪高考成绩查询,2021年本溪高考状元名单公布 今年本溪高考状元是谁资料和分数...
  4. 解决Can 't connect to local MySQL server throug
  5. 附一张css hack
  6. Oracle Study---Oracle 11g 不可见索引案例
  7. Sqli-labs less 45
  8. 阅读总结:如何在生产中成功运用Docker
  9. C、C++差异之左值右值
  10. Swing的设计是MVC的典范