0

我正在 MIT Sceheme 中创建一个国际象棋游戏。我想创建一个程序来跟踪所有部分的移动。

这是一个例子。我让车上移 5 格。我的下一回合我希望它向后移动 5 个空格。问题是,我不知道如何跟踪我在前一回合中向前移动的棋子——因此我不知道如何将它向后移动。我目前能做的就是拿下整个棋盘的状态。我假设我需要使用某种类型的突变?

4

1 回答 1

1

尝试跟踪列表中所有先前的移动——就cons在你最近的移动(以及告诉你哪一块执行移动的符号)到移动日志列表中,并将它与你的程序一起传递。如果由于某种原因您需要查找最近的移动,则可以简单地向后搜索列表几步,如果您想跟踪游戏,这将为您提供一些附加功能。

如果您想分享您的一些代码,我将编辑此答案,并提供更具体的实施细节。

于 2012-12-03T19:41:04.877 回答