Python基础(四、探索迷宫游戏)
游戏介绍
在这个游戏中,你将扮演一个勇敢的冒险者,进入了一个神秘的迷宫。你的任务是探索迷宫的每个房间,并最终找到隐藏在其中的宝藏。
游戏通过命令行界面进行交互,你需要输入不同的指令来移动、与物品互动或解谜。你将面临各种挑战和难题,在逐步解决问题的过程中,逐渐接近宝藏的位置。
现在让我们开始编写这个游戏吧!
python
import random
# 迷宫地图
maze = [
[1, 1, 1, 1, 1],
[1, 0, 0, 0, 1],
[1, 1, 1, 0, 1],
[1, 0, 1, 1, 1],
[1, 1, 0, 1, 1],
[1, 1, 1, 1, 1]
]
# 游戏角色位置
player_pos = [1, 1]
# 宝藏位置
treasure_pos = [4, 3]
# 游戏主循环
while True:
# 打印迷宫地图
for i in range(len(maze)):
for j in range(len(maze[i])):
if player_pos[0] == i and player_pos[1] == j:
print("P", end=" ")
elif treasure_pos[0] == i and treasure_pos[1] == j:
print("T", end=" ")
elif maze[i][j] == 1:
print("#", end=" ")
else:
print(".", end=" ")
print()
# 判断是否找到宝藏
if player_pos == treasure_pos:
print("恭喜你找到了宝藏!游戏结束!")
break
# 等待玩家输入指令
command = input("请输入指令(w:上, s:下, a:左, d:右):")
# 根据指令移动角色
if command == "w":
if maze[player_pos[0] - 1][player_pos[1]] != 1:
player_pos[0] -= 1
elif command == "s":
if maze[player_pos[0] + 1][player_pos[1]] != 1:
player_pos[0] += 1
elif command == "a":
if maze[player_pos[0]][player_pos[1] - 1] != 1:
player_pos[1] -= 1
elif command == "d":
if maze[player_pos[0]][player_pos[1] + 1] != 1:
player_pos[1] += 1
else:
print("无效指令,请重新输入!")
游戏说明
这个游戏的迷宫地图使用一个二维数组来表示。其中数字1表示墙壁,0表示可通行的路径。
游戏开始时,玩家和宝藏的初始位置已经定义好。在主循环中,首先打印出当前迷宫的地图,并判断是否找到了宝藏。如果找到宝藏,则游戏结束。接着等待玩家输入指令,根据指令移动角色的位置。
玩家可以输入"w"、"s"、"a"、"d"来分别表示上、下、左、右四个方向的移动。如果玩家输入的指令导致撞墙或越界,则角色不会移动。
请自由发挥,根据自己的想法增加更多功能,比如增加更多谜题、道具等,让游戏更加有趣。祝您编写愉快!