python 推箱子实验开发报告_程序设计实验推箱子报告.doc

程序设计实验推箱子报告

告 设 计 内 容:推箱子游戏 姓 名:高 小 丽 指 导 老 师:王 静 学 号:1座机电话号码9 学 院:通信学院 班 级:电信1204班 日 期:2013年4月25号

一,游戏设计基本思想。

1,确定软件功能: 玩家可以通过操纵键盘中的上下左右键进入游戏进行各种操作来完成游戏。

2,对整体功能进行划分:

菜单功能:玩家通过看目录按对应的键可以进入对应的功能菜单,其中包括进入游戏,游戏帮助,退出游戏。

2 游戏功能: 玩家可以通过操纵键盘中的上下左右键进入游戏进行各种操作来完成游戏

3,(1)初始化: 初始化过程主要包括画图模块的初始化,人物的位置,箱子的位置存放,目标的存放等。

(2)进入游戏循环: 主要是通过主函数来进行消息处理与循环的。

(3)判断是否结束。

4,游戏截图赏析

二,游戏的功能模块设计。

(1)初始化模块:

:人物,箱子,目标等的初始化:

static int bStarted 0;

int a 0;

int aimnum_qj 0;

int aimnum 0;

int boxoknum_qj 0;

char map_mid[10

  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
推箱子游戏是一种益智类的游戏,可以通过编程来实现。下面是一个简单的 Python 实现推箱子游戏的代码: ```python # 定义地图 map_data = [ "#####", "# #", "#O #", "# #", "#####" ] # 定义玩家初始位置 player_x = 1 player_y = 2 # 定义目标位置 goal_x = 3 goal_y = 2 # 定义箱子初始位置 box_x = 2 box_y = 2 # 游戏循环 while True: # 绘制地图 for row in map_data: print(row) # 判断是否完成游戏 if box_x == goal_x and box_y == goal_y: print("恭喜你,完成游戏!") break # 获取用户输入 direction = input("请输入移动方向(上:w,下:s,左:a,右:d):") # 根据用户输入修改玩家位置和箱子位置 if direction == "w": if map_data[player_y-1][player_x] != "#": player_y -= 1 if box_x == player_x and box_y == player_y: if map_data[box_y-1][box_x] != "#": box_y -= 1 else: player_y += 1 else: continue elif direction == "s": if map_data[player_y+1][player_x] != "#": player_y += 1 if box_x == player_x and box_y == player_y: if map_data[box_y+1][box_x] != "#": box_y += 1 else: player_y -= 1 else: continue elif direction == "a": if map_data[player_y][player_x-1] != "#": player_x -= 1 if box_x == player_x and box_y == player_y: if map_data[box_y][box_x-1] != "#": box_x -= 1 else: player_x += 1 else: continue elif direction == "d": if map_data[player_y][player_x+1] != "#": player_x += 1 if box_x == player_x and box_y == player_y: if map_data[box_y][box_x+1] != "#": box_x += 1 else: player_x -= 1 else: continue ``` 上面的代码实现了一个简单的推箱子游戏,其中 `map_data` 是地图数据,`player_x` 和 `player_y` 是玩家初始位置,`goal_x` 和 `goal_y` 是目标位置,`box_x` 和 `box_y` 是箱子初始位置。游戏循环中先绘制地图,再判断是否完成游戏,然后获取用户输入,根据用户输入修改玩家位置和箱子位置,最后循环继续。注意在修改箱子位置时要判断是否撞墙,以及玩家是否能够推动箱子。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值