我目前正在使用Groovy和JavaFX实现一个跳棋游戏。执行primaryStage.show()后会显示包含该板的窗口,并等待触发事件。
我设置了一系列功能,一旦用户点击进行合法移动就会执行:
blackSquare.onMouseClicked = { e ->
commenceTurns(pos, view)
}
方便地,这允许我从这个初始点击实现整个游戏(AI移动只是在用户移动后执行)。
但是,我现在遇到了问题。我需要为用户实现多次拍摄,这需要我返回到电路板等待点击事件触发的状态。我不知道如何做到这一点。
基本程序流程为:
// WAITING FOR CLICK EVENT
// CLICK EVENT CALLS:
commenceTurns()
userTurn()
makeMove()
if (takeMade && canTakeFurther) {
// EITHER JUMP TO END OF STACK OR RETURN TO WAITING STATE
}
computerTurn()
makeMove()
redrawBoard()
// END OF STACK
希望这能说清楚我在寻找什么。感谢任何帮助!