皮卡丘推西瓜游戏 2019年1月12日
以下内容仅供娱乐,欢迎随时探讨,请多指教!
(1)游戏共有五关,由易到难,每一关都有初始化、按键处理、重置、退出功能。
(2)初始化包括屏幕初始化和每一关关卡的初始化,屏幕被初始化为宽600、高660。
(3)更新记录模块,实现学生个人信息和成绩信息的修改。
(4)按键处理包括移动小人和移动箱子,通过移动上下左右键控制小人的移动,从而推动箱子,以把箱子推到指定的目的地为完成通关。
(5)每一关都可以重置,按r键,可以重置当前关,空格回退一步。
(6)按Esc键可以在任何时候退出程序。
(7)输入信息有效性验证模块,验证用户数据输入是否有效合法。
想要源代码可以参考百度云文件,下面?
链接:https://pan.baidu.com/s/17YZvTb3512e9YmbB76IVQA 提取码:c9nz 复制这段内容后打开百度网盘手机App,操作更方便哦
以上是完整源程序代码链接。
——————————————分割线—————————————————
以下是游戏效果展示图。
以下为代码:
///
// 程序名称:皮卡丘推西瓜
// 编译环境:Visual C++ 6.0
//游戏中用0表示空地,1表示人物,2表示箱子,3表示目的地,6表示围墙
#include "myhead.h"
#include "graphics.h"// 引用图形库头文件,可以置入图片
#include "conio.h"
#include "dos.h"
#include "stdio.h"
#include "stdlib.h"
#include "ctype.h"
#include "time.h"
#include "windows.h"
#define M 21 //设置密码位数为20
/*定义结构体,储存信息*/
typedef struct winer
{
struct winer *before;
int t[10][10];
struct winer *next;
} winer;
int x,y; //人物坐标
int loop; //控制是否重新开始
IMAGE img[8]; //定义IMAGE对象数组来保存图片
int b[10][10]; //设置当前地图数组,用来接收地图便于读写
char user[M]; //设置账户名
char password[M]; //设置密码
int count=0; //记录步数
int begin, end; //定义开始和结束标志位
//游戏中用0表示空地,1表示人物,2表示箱子,3表示目的地,6表示围墙
const int map[5][10][10]= //定义三维地图数组
{
{
{
0},
{
0, 0, 6, 6, 6},
{
0, 0, 6, 3, 6},
{
0, 0, 6, 0, 6, 6, 6, 6},
{
6, 6, 6, 2, 0, 2, 3, 6},
{
6, 3, 0, 2, 1, 6, 6, 6},
{
6, 6, 6, 6, 2, 6},
{
0, 0, 0, 6, 3, 6},
{
0, 0, 0, 6, 6, 6}
},
{
{
6, 6, 6, 6, 6},
{
6, 1, 0, 0, 6},
{
6, 0, 2, 0, 6, 0, 6, 6, 6},
{
6, 0, 0, 0, 6, 0, 6, 3, 6},
{
6, 6, 6, 2, 6, 6, 6, 3 , 6},
{
0, 6, 6, 0, 0, 0, 0, 0, 6},
{
0, 6, 0, 0, 0, 6, 0, 0, 6},
{
0, 6, 0, 0, 0, 6, 6, 6, 6},
{
0, 6, 6, 6, 6, 6}
},
{
{
0, 6, 6, 6, 6},
{
0, 6, 1, 0, 6, 6, 6},
{
0, 6, 0, 0, 0, 0, 6},
{
6, 6, 6, 0, 6, 0, 6, 6},
{
6, 3, 6, 0, 6, 0, 0, 6},
{
6, 0, 2, 0, 0, 6, 0, 6},
{
6, 3, 0, 0, 0, 2, 0, 6},
{
6, 6, 6, 6, 6, 6, 6, 6}
},
{
{
0, 6, 6, 6, 6, 6, 6, 6},
{
0, 6, 0, 1, 0, 3, 3, 6},
{
0, 6, 0, 0, 0, 6, 6, 6, 6},
{
6, 6, 6, 0, 0, 0, 0, 0, 6},
{
6, 0, 0, 0, 6, 2, 6, 0, 6},
{
6, 0, 2, 0, 6, 0, 0, 0, 6},
{
6, 0, 0, 0, 6, 6, 6, 6, 6},
{
6, 6, 6, 6, 6}
},
{
{
0, 6, 6, 6, 6, 6},
{
0, 6, 0, 1, 0, 6, 6, 6},
{
6, 6, 0, 6, 2, 0, 0, 6},
{
6, 0, 0 ,3, 0, 3, 0, 6},
{
6, 0, 0, 2, 2, 0, 6, 6},
{
6, 6, 6, 0, 6