我最近开始使用Unity来开发一款资源管理类的潜行游戏。游戏中的潜行部分是回合制的,类似于《Hitman Go》。我已经有了简单的角色控制器和沿着特定路径巡逻的简单AI。然而,这些移动都是实时的,我希望将其改为回合制。AI应该等待玩家完成移动后再进行自己的移动,玩家也是如此。
玩家和AI都应该只能在对方移动完成后才移动到相邻的路径点。
我应该如何实现这个功能呢?
谢谢
我使用的编程语言是UnityScript。
回答:
作为一个非常简单的解决方案,首先你可以创建一个空的游戏对象。将其命名为TurnController。通过一个简单的脚本,你可以在上面添加一个布尔变量。我们将其命名为isPlayerTurn。对于玩家的移动,你可以检查这个变量,如果为真,玩家就可以移动。在玩家移动结束时(可能是点击结束回合按钮,或者达到最大移动距离,或者其他情况),你可以将isPlayerTurn设置为假。当然,AI也应该检查(可能在Update函数中,但根据你的设计可以更改)如果为真,AI就可以执行它需要做的操作。在其回合结束时,它应该将isPlayerTurn重新设置为真。我知道这是一个非常简单的解决方案,但希望它能帮助你开始。希望我没有误解你的问题。