大家好,我之前在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):你能给出的任何建议都是很棒的!
发布于 2011-05-23 10:24:47
我相信您遗漏了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轴上的位置。请试一试。
https://stackoverflow.com/questions/6092010
复制相似问题