From 937dc58772aa5cf45f589b81761c8134a21182f5 Mon Sep 17 00:00:00 2001
From: hch <305670599@qq.com>
Date: 星期二, 11 九月 2018 11:50:18 +0800
Subject: [PATCH] fix:修复错误的重复随机,防范多线程报错

---
 Tool/Robot/Robot/RobotMgr.py       |    6 +++++-
 Tool/Robot/AI/AIFile/AILoginout.py |    2 +-
 2 files changed, 6 insertions(+), 2 deletions(-)

diff --git a/Tool/Robot/AI/AIFile/AILoginout.py b/Tool/Robot/AI/AIFile/AILoginout.py
index d0c4bd1..29b8732 100644
--- a/Tool/Robot/AI/AIFile/AILoginout.py
+++ b/Tool/Robot/AI/AIFile/AILoginout.py
@@ -434,7 +434,7 @@
         
             if self.RandMapYet:
                 # 升级后同一线路切换地点
-                lineNO = random.randint(0, 9)#self.robot.GetPlayerInfo().GetFBID()   #已在本地图 不再切线
+                lineNO = self.robot.GetPlayerInfo().GetFBID()   #已在本地图 不再切线
             else:
                 lineNO = random.randint(0, 9)   # 0 为服务端处理, 其他数值为具体线路
                 self.RandMapYet = True
diff --git a/Tool/Robot/Robot/RobotMgr.py b/Tool/Robot/Robot/RobotMgr.py
index 7e88aae..9182d8c 100644
--- a/Tool/Robot/Robot/RobotMgr.py
+++ b/Tool/Robot/Robot/RobotMgr.py
@@ -67,7 +67,11 @@
                     if index >= self.robotMgr.GetRobotCount():
                         # ProcessAI可能会清除了robot
                         break
-                    robot = self.robotMgr.GetRobot( index )
+                    try:
+                        robot = self.robotMgr.GetRobot( index )
+                    except:
+                        # 判断index防范不到,可能多线程引起,此处报错结束循环
+                        break
                     if not robot:
                         continue
                     robot.GetAIMgr().ProcessAI()

--
Gitblit v1.8.0