跳房子游戏python
时间: 2023-08-23 13:08:11 浏览: 51
跳房子游戏是一种益智类游戏,玩家需要在一定规则下将棋子跳到指定位置。以下是一个简单的跳房子游戏的Python实现:
```
# 定义棋盘
board = [
[1, 1, 1, 1, 1],
[1, 1, 1, 1, 1],
[1, 1, 0, 1, 1],
[1, 1, 1, 1, 1],
[1, 1, 1, 1, 1]
]
# 定义初始棋子位置
x, y = 2, 2
# 输出棋盘和棋子位置
def print_board():
for i in range(len(board)):
for j in range(len(board[0])):
if i == x and j == y:
print('O', end=' ')
else:
print(board[i][j], end=' ')
print()
# 判断是否可以跳跃
def can_jump(dx, dy):
if board[x+dx][y+dy] == 0:
return False
if board[x+2*dx][y+2*dy] != 0:
return False
return True
# 进行跳跃
def jump(dx, dy):
board[x][y] = 1
x += 2 * dx
y += 2 * dy
board[x][y] = 0
# 判断是否游戏结束
def is_game_over():
for i in range(len(board)):
for j in range(len(board[0])):
if board[i][j] == 0:
return False
return True
# 主程序
while not is_game_over():
print_board()
move = input('请输入移动方向(上:w,下:s,左:a,右:d):')
if move == 'w' and can_jump(-1, 0):
jump(-1, 0)
elif move == 's' and can_jump(1, 0):
jump(1, 0)
elif move == 'a' and can_jump(0, -1):
jump(0, -1)
elif move == 'd' and can_jump(0, 1):
jump(0, 1)
else:
print('无法移动')
print('游戏结束')
```
以上代码实现了一个5*5的棋盘,棋子初始位置为中心位置,玩家可以通过输入w、s、a、d来移动棋子,每次移动需要遵循跳跃规则。当棋盘上没有空格时,游戏结束。