看看别人的推箱子都是怎么写的,新手福利无疑了

本文介绍如何利用C语言实现经典游戏推箱子。作者强调理解游戏原理并绘制流程图的重要性,分享了程序的主要结构,包括头文件、主函数、菜单、关卡选择、移动函数和游戏函数的实现。通过这种方式,新手可以学习到游戏编程的基础知识。
摘要由CSDN通过智能技术生成

小时候都玩过的推箱子,原来也可以用C语言来实现

想要完成推箱子,首先我们应该明白它的原理,或者说是对于这个游戏有着一定的理解,这也是我从五子棋之后所学习到的一种全新的理念,想要编写出一个东西就应该先了解它的具体内容,就像我们单片机老师所说道的程序的编写,首先应该给自己画一个流程图,这样才能够根据流程图将我们所需要的东西进行翻译出来,具体化。

  1. 头文件及具体宏定义
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#include <stdlib.h>
#include <windows.h>
#include <string.h>

#define MAX_ROW 8//定义地图的行为8
#define MAX_COL 8//定义地图的列为8

int Boxs;//统计其中所剩未完成箱子的个数
int x, y;//用此坐标来定位小人的位置


int map[MAX_ROW][MAX_COL] = {
   //其实这说是地图,也算是一个关卡 我自己做了三个关卡,大家也可以根据自己的需求来做
	{
    0, 0, 1, 1, 1, 0, 0, 0 },
	{
    0, 0, 1, 4, 1, 0, 0, 0 },
	{
    0, 0, 1, 0, 1, 1, 1, 1 },
	{
    1, 1, 1, 3, 0, 3, 4, 1 },
	{
    1, 4, 0, 3, 2, 1, 1, 1 },
	{
    1, 1, 1, 1, 3, 1, 0, 0 },
	{
    0, 0, 0, 1, 4, 1, 0, 0 },
	{
    0, 0, 0, 1, 1, 1, 0, 0 }
};

/**
*	0	表示空
*	1	表示墙
*	2	表示人
*	3	表示箱子
*	4	表示目的地(球)
*	5	表示已完成的箱子
*/

  1. 具体流程和主函数

    1. 打印菜单
    2. 选择游戏关卡
    3. 玩家开始移动
    4. 判断游戏是否成功
      有了五子棋的经验,我将主函数尽可能地写的简洁一些
int main(){
   
	int i = 0;
	int choice = 0;
	MenuUi(1); //选择界面
	{
   
		choice = ChoiceStart(i);
		if (choice == 1){
   
			Game();
		}
	}
	system("pause");
	return 0;
}

  1. 接下来就是每个函数的解析和具体的函数
 **菜单函数** 是一个小项目的主界面也是大家控制台最开始显示的所以对于这个界面一般还是设计的好一些
 void MenuUi(){
   
	printf("\t╔══════════════════════════════════════════════════════════════╗\n");
	printf("\t║                                                              ║\n");
	printf("\t║      欢迎使用推箱子游戏程序     祝您玩的愉快挑战无极限       ║\n")
  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值