def routeFrostbitePacket(self, packet):
"""
Route a Frostbite packet.
"""
if packet is None:
self.warning('Cannot route empty packet : %s' % traceback.extract_tb(sys.exc_info()[2]))
eventType = packet[0]
eventData = packet[1:]
data = ''
func = ''
match = re.search(r"^(?P<actor>[^.]+)\.on(?P<event>.+)$", eventType)
if match:
func = 'On%s%s' % (string.capitalize(match.group('actor')), string.capitalize(match.group('event')))
#self.debug("-==== FUNC!!: " + func)
if match and hasattr(self, func):
func = getattr(self, func)
event = func(eventType, eventData)
if event:
self.queueEvent(event)
elif eventType in self._eventMap:
self.queueEvent(b3.events.Event(self._eventMap[eventType], eventData))
else:
if func:
data = func + ' '
data += str(eventType) + ': ' + str(eventData)
self.debug('TODO: %r' % packet)
self.queueEvent(self.getEvent('EVT_UNKNOWN', data))
abstractParser.py 文件源码
python
阅读 27
收藏 0
点赞 0
评论 0
评论列表
文章目录