def perform(self): fobj = open(self.args['filename'], 'w') allcomobj = imports.load_all('commands') print allcomobj for name, comobj in allcomobj.iteritems(): lines = [line + "\n" for line in commands.get_help(comobj)] fobj.writelines(lines) fobj.write("-"*79 + "\n") fobj.close() self.player.tell("%d commands dumped to %s" % (len(allcomobj), self.args['filename']))
def __init__(self): # Service References # self._services = {} self.signals['quit' ] = Signal() # reason self.signals['outgoing_msg' ] = Signal() # destination, message self.signals['global_msg' ] = Signal() # message self.signals['debug_msg' ] = Signal() # message self.signals['login' ] = Signal() # nickname self.signals['logout' ] = Signal() # nickname self.signals['global_msg'].register(self.on_global_msg) self.signals['login'].register(self.on_login) self.signals['logout'].register(self.on_logout) self.players = {} self.game = None imports.load_all('commands') imports.load_all('gametypes')
def get_allowed(player): """ Return a list command classes a player can run in their current context based on admin level. all designates non-contextual commands should be included. Note: causes all commands to be loaded. """ callowed = [] cglobals = [] adminlevel = player.user.adminlevel for name, comobj in player.session.context.get_commands().iteritems(): if not hasattr(comobj, 'adminlevel') or comobj.adminlevel <= adminlevel: callowed.append(name) for name, comobj in imports.load_all('commands').iteritems(): if not hasattr(comobj, 'adminlevel') or comobj.adminlevel <= adminlevel: cglobals.append(name) return callowed, cglobals