移动角色并应用移动到棋盘

时间:2011-05-23 01:31:06

标签: python function

嘿大家,我之前在how to create a 2-D grid for a board game in Python问了一个问题,现在又遇到了制作这个棋盘游戏的问题。

我想要做的是在我的棋盘上移动棋子(数字或字母)并将其移动到棋盘上,以便接下来转向相同的玩家。 基本上,

1 . . . .
2 . . . .
3 . . . .
4 . . . .
. a b c d
Letters' turn: an
1 . . . .
2 . . . .
3 . . . .
4 a . . .
. . b c d
Numbers' turn: 1e
. 1 . . .
2 . . . .
3 . . . .
4 a . . .
. . b c d
Letters' turn: an
. 1 . . .
2 . . . .
3 a . . .
4 . . . .
. . b c d

你明白了......

我有董事会但是,我无法弄清楚如何移动碎片并将它们保持在原位,以便他们可以在下一回合继续移动。

我有功能:

def doMove(currentPlayer, board):
def isValidMove(board, move):
and def applyMove(board, move):

任何可以借出的建议都会很棒!

1 个答案:

答案 0 :(得分:1)

我相信你错过了python中的类的一个关键特性:内部状态。这是一个简单的例子:

class Counter():
  def __init__(self):
    self.internalCount = 0;
    return
  def addToInternalCount(self, val):
    self.internalCount = self.internalCount + val
    return self.internalCount

请注意,如果我创建一个新计数器,我可以多次调用addToInternalCount,并且internalCount数据会在调用中持续存在。还要注意,就国家而言,一个班级没有什么特别之处。该函数外部的任何变量都可能已更新,并且该值将在调用期间保持不变。

有关internalCount的特别之处吗?并不是的。这可以很容易地代表x轴上的位置。请继续吧。