我有一个简单的项目,我正在制作一款卡牌战斗游戏。战斗序列如下:
repeat
BattleClient.PlayerAttackTween()
task.wait(battleSpeed)
BattleClient.EnemyAttackTween()
task.wait(battleSpeed)
battleRound += 1
until isInBattle.Value == false
我遇到的问题是,如果玩家在完成一场战斗后立即开始另一场战斗,则此循环仍然处于中间状态task.wait()
并且尚未进行检查until
以打破循环,因此在第二场战斗中,少年会扮演双重角色。
我该如何防止这种情况发生?
编辑:视频展示问题
我不知道整个函数/循环,但可以尝试这个算法: