出手顺序: 1. 对玩家速度进行从大到小的列表排序。 2. 定义本次战斗的回合速度常数为速度最快的玩家的速度。 3. 对每一位玩家分别定义回合速度参数,初始为0。 4. 回合开始: 5. 首先每位玩家的回合速度变为当前回合速度加上自身的速度 6. 然后用每位玩家的回合速度除以回合速度常数,进行整除计算,若商等于1,则回合速度变为当前回合速度减去回合速度常数且该玩家加入行动列表,若商等于0,这回合不行动即不需要进行后续处理。 7. 在行动列表中对每位玩家的回合速度从大到小排序,若回合速度相等则参照玩家速度,若玩家也速度相等则二者或多者随机排序。 8. 按照行动合集中回合速度排序出手 9. 战斗计算 10. 回合结束 11. 返回第4步循环 演示 A.Speed = 50,B.Speed = 25 1. 排序:List_Speed = [A, B] 2. 回合速度常数为50, Speed_Turn = 50 3. 回合速度, A.Speed_Turn, B.Speed_Turn = 0 4. 第一回合: 5. 回合速度,A.Speed_Turn = 0 + 50 = 50, B.Speed_Turn = 0 + 25 = 25 6. 判定: A.Speed_Turn/Speed_Turn = 50/50 = 1, 则A.Speed_Turn = 50 - 50 = 0且A加入List_Act B.Speed_Turn/Speed_Turn = 25/50 = 0, 则不操作 7. 行动列表中对每位玩家的回合速度从大到小排序, List_Act = [A] 8. A行动 9. 战斗计算 10. 回合结束 11. 第二回合: 12. 回合速度,A.Speed_Turn = 0 + 50 = 50, B.Speed_Turn = 25 + 25 = 50 13. 判定: A.Speed_Turn/Speed_Turn = 50/50 = 1, 则A.Speed_Turn = 50 - 50 = 0且A加入List_Act B.Speed_Turn/Speed_Turn = 50/50 = 1, 则B.Speed_Turn = 50 - 50 = 0且B加入List_Act 14. 行动列表中对每位玩家的回合速度从大到小排序, 此时A.Speed_Turn = B.Speed_Turn,按照List_Speed的排序,应该A在前,List_Act = [A,B] 15. A行动,然后B行动 16. 战斗计算 17. 回合结束 ....
1

相关推荐

群星之怒:不是哥们,你就不好奇瘫痪三十年的老植物人是啥样的吗?
点赞 评论 收藏
分享
牛客网
牛客企业服务