我目前正在尝试将玩家的位置移动到网格上,以进行小型游戏。任务是向他移动他掷出2个骰子的地方数量。我已经为网格制作了二维数组,它的效果非常好,以及骰子的滚动,但是当骰子是双打时,他向后移动,但是我不知道如何让他移动它的形状非常奇怪。非常感谢任何帮助。
到目前为止:
grid = [[43,44,45,46,47,48,49],
[42,41,40,39,38,37,36],
[29,30,31,32,33,34,35],
[28,27,26,25,24,23,22],
[15,16,17,18,19,20,21],
[14,13,12,11,10,9,8],
[1,2,3,4,5,6,7]]
dice1 = randint(1,6)
dice2 = randint(1,6)
if dice1 == dice2:
doubles = True
答案 0 :(得分:0)
我会通过向前和向后移动的行和列位置和功能来接近它。以下是我将如何向前移动,我将向后退一步:
row = 6
col = 0
def forward(num):
if row % 2 == 0: # move right to go forward for even row
if num > 6-col:
row -= 1
col = 6
return forward(num-(6-col))
col += num
else:
if num > col:
row -= 1
col = 0
return forward(num-(col+1))
col -= num
您需要在到达最终位置时添加检查。