Advertisement
Guest User

Untitled

a guest
May 27th, 2017
59
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 1.84 KB | None | 0 0
  1. class AddonManagerHook(es.AddonManager):
  2.     def triggerEvent(self, eventname):
  3.         if not self.EventListeners.has_key(eventname):
  4.             return
  5.         for listener in self.EventListeners[eventname]:
  6.             if not listener.__dict__.has_key('disable') or not listener.disabled:
  7.                 addonName = listener.__name__
  8.                 if addonName !!!!!!IS_A_WCS_RACE!!!!!!!:
  9.                     player = None
  10.                     if es.event_var['attacker']:
  11.                         player = int(es.event_var['attacker'])
  12.                     elif es.event_var['userid']:
  13.                         player = int(es.event_var['userid'])
  14.                     if player is not None:
  15.                         """ There is a userid / attacker on the event, so we can test for player's race """
  16.                         if !!!!!PLAYERS_RACE_IS!!!!! != addonName:
  17.                             """ Return, this is not the player's current active race :( """
  18.                             return
  19.                 try:
  20.                     self.EventListeners[eventname][listener](event_var)
  21.                 except:
  22.                     sys.excepthook(*sys.exc_info())
  23.  
  24. """ Save the instance of the current addons """
  25. oldAddonsManager = es.addons
  26.  
  27. """ Create a new instance of our hook """
  28. addonsHook = AddonManagerHook()
  29.  
  30. """ Ensure our hook contains the same listeners as the old event manager """
  31. addonsHook = oldAddonsManager.AddonList
  32. addonsHook = oldAddonsManager.EventListeners
  33. addonsHook = oldAddonsManager.Blocks
  34. addonsHook = oldAddonsManager.TickListeners
  35. addonsHook = oldAddonsManager.SayListeners
  36. addonsHook = oldAddonsManager.ClientCommandFilters
  37.  
  38. """ Ah the beautiful hook assignment :D  """
  39. es.addons = addonsHook
  40.  
  41. def unload():
  42.     """ On unload, reassign the addon manager back to it's predecessor """
  43.     es.addons = oldAddonsManager
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement