Esempio n. 1
0
    def __init__(self, *args, **kwargs):
        """
    initialize the instance
    """
        AardwolfBasePlugin.__init__(self, *args, **kwargs)
        self.saveskillfile = os.path.join(self.savedir, 'skills.txt')
        self.skills = PersistentDict(self.saveskillfile, 'c')
        self.skillsnamelookup = {}
        for i in self.skills:
            self.skillsnamelookup[self.skills[i]['name']] = i

        self.saverecovfile = os.path.join(self.savedir, 'recoveries.txt')
        self.recoveries = PersistentDict(self.saverecovfile, 'c')
        self.recoveriesnamelookup = {}
        for i in self.recoveries:
            self.recoveriesnamelookup[self.recoveries[i]['name']] = i

        self.current = ''
        self.isuptodatef = False

        self.cmdqueue = None

        self.api.get('dependency.add')('cmdq')

        self.api.get('api.add')('gets', self.api_getskill)
        self.api.get('api.add')('isspellup', self.api_isspellup)
        self.api.get('api.add')('getspellups', self.api_getspellups)
        self.api.get('api.add')('sendcmd', self.api_sendcmd)
        self.api.get('api.add')('isaffected', self.api_isaffected)
        self.api.get('api.add')('isblockedbyrecovery',
                                self.api_isblockedbyrecovery)
        self.api.get('api.add')('ispracticed', self.api_ispracticed)
        self.api.get('api.add')('canuse', self.api_canuse)
        self.api.get('api.add')('isuptodate', self.api_isuptodate)
        self.api.get('api.add')('isbad', self.api_isbad)
Esempio n. 2
0
  def __init__(self, *args, **kwargs):
    """
    init the class
    """
    BasePlugin.__init__(self, *args, **kwargs)

    self.canreload = False

    #print('log api.api', self.api.api)
    #print('log basepath', self.api.BASEPATH)
    self.savedir = os.path.join(self.api.BASEPATH, 'data',
                                'plugins', self.sname)
    self.logdir = os.path.join(self.api.BASEPATH, 'data', 'logs')
    #print('logdir', self.logdir)
    try:
      os.makedirs(self.savedir)
    except OSError:
      pass
    self.dtypes = {}
    self.sendtoclient = PersistentDict(
        os.path.join(self.savedir, 'sendtoclient.txt'),
        'c')
    self.sendtoconsole = PersistentDict(
        os.path.join(self.savedir, 'sendtoconsole.txt'),
        'c')
    self.sendtofile = PersistentDict(
        os.path.join(self.savedir, 'sendtofile.txt'),
        'c')
    self.currentlogs = {}
    self.colors = {}

    self.filenametemplate = '%a-%b-%d-%Y.log'
    #self.sendtofile['default'] = {
                                #'logdir':os.path.join(self.logdir, 'default'),
                                #'file':'%a-%b-%d-%Y.log', 'timestamp':True
                                  #}

    self.colors['error'] = '@x136'

    self.api('api.add')('msg', self.api_msg)
    self.api('api.add')('adddtype', self.api_adddtype)
    self.api('api.add')('console', self.api_toggletoconsole)
    self.api('api.add')('file', self.api_toggletofile)
    self.api('api.add')('client', self.api_toggletoclient)
    self.api('api.add')('writefile', self.api_writefile)

    # add some default datatypes
    self.api('log.adddtype')('default')
    self.api('log.adddtype')('frommud')
    self.api('log.adddtype')('startup')
    self.api('log.adddtype')('shutdown')
    self.api('log.adddtype')('error')

    # log some datatypes by default
    self.api('log.client')('error')
    self.api('log.console')('error')
    self.api('log.console')('default')
    self.api('log.console')('startup')
    self.api('log.console')('shutdown')
Esempio n. 3
0
    def __init__(self, *args, **kwargs):
        """
    init the class
    """
        BasePlugin.__init__(self, *args, **kwargs)

        self.canreload = False

        self.cmds = {}
        self.nomultiplecmds = {}

        self.savehistfile = os.path.join(self.savedir, 'history.txt')
        self.cmdhistorydict = PersistentDict(self.savehistfile, 'c')
        if 'history' not in self.cmdhistorydict:
            self.cmdhistorydict['history'] = []
        self.cmdhistory = self.cmdhistorydict['history']

        self.api('api.add')('add', self.api_addcmd)
        self.api('api.add')('remove', self.api_removecmd)
        self.api('api.add')('change', self.api_changecmd)
        self.api('api.add')('default', self.api_setdefault)
        self.api('api.add')('removeplugin', self.api_removeplugin)
        self.api('api.add')('list', self.api_listcmds)
        self.api('api.add')('run', self.api_run)
        self.api('api.add')('cmdhelp', self.api_cmdhelp)
Esempio n. 4
0
 def __init__(self, *args, **kwargs):
     """
 initialize the instance
 """
     AardwolfBasePlugin.__init__(self, *args, **kwargs)
     self.savelevelfile = os.path.join(self.savedir, 'level.txt')
     self.levelinfo = PersistentDict(self.savelevelfile, 'c')
Esempio n. 5
0
 def __init__(self, *args, **kwargs):
     """
 initialize the instance
 """
     BasePlugin.__init__(self, *args, **kwargs)
     self.savesubfile = os.path.join(self.savedir, 'subs.txt')
     self._substitutes = PersistentDict(self.savesubfile, 'c')
Esempio n. 6
0
 def __init__(self, *args, **kwargs):
     """
 initialize the instance
 """
     AardwolfBasePlugin.__init__(self, *args, **kwargs)
     self.savequestfile = os.path.join(self.savedir, 'quest.txt')
     self.queststuff = PersistentDict(self.savequestfile, 'c')
Esempio n. 7
0
    def __init__(self):
        """
    initialize the instance
    """
        self.plugins = {}
        self.pluginl = {}
        self.pluginm = {}
        self.pluginp = {}
        self.options = {}
        self.plugininfo = {}

        index = __file__.rfind(os.sep)
        if index == -1:
            self.basepath = "." + os.sep
        else:
            self.basepath = __file__[:index]

        self.api = API()
        self.savefile = os.path.join(self.api.BASEPATH, 'data', 'plugins',
                                     'loadedplugins.txt')
        self.loadedplugins = PersistentDict(self.savefile, 'c')
        self.sname = 'plugins'
        self.lname = 'Plugin Manager'

        self.api.add(self.sname, 'isinstalled', self.api_isinstalled)
        self.api.add(self.sname, 'getp', self.api_getp)
        self.api.add(self.sname, 'module', self.api_getmodule)
        self.api.add(self.sname, 'allplugininfo', self.api_allplugininfo)
        self.api.add(self.sname, 'savestate', self.savestate)
Esempio n. 8
0
    def __init__(self, *args, **kwargs):
        """
    initialize the instance
    """
        BasePlugin.__init__(self, *args, **kwargs)

        self.aliasfile = os.path.join(self.savedir, 'aliases.txt')
        self._aliases = PersistentDict(self.aliasfile, 'c')

        self.sessionhits = {}
Esempio n. 9
0
  def __init__(self, *args, **kwargs):
    """
    initialize the instance
    """
    BasePlugin.__init__(self, *args, **kwargs)

    self.variablefile = os.path.join(self.savedir, 'variables.txt')
    self._variables = PersistentDict(self.variablefile, 'c')
    self.api.get('api.add')('getv', self.api_getv)
    self.api.get('api.add')('setv', self.api_setv)
    self.api.get('api.add')('replace', self.api_replace)
Esempio n. 10
0
    def __init__(self):
        """
    initialize the instance
    """
        # Examples:
        #  name : 'Actions' - from plugin file variable NAME (long name)
        #  sname : 'actions' - from plugin file variable SNAME (short name)
        #  modpath : '/client/actions.py' - path relative to the plugins directory
        #  basepath : '/home/src/games/bastproxy/bp/plugins' - the full path to the
        #                                                       plugins directory
        #  fullimploc : 'plugins.client.actions' - import location

        #name, sname, modpath, basepath, fullimploc
        BasePlugin.__init__(
            self,
            'Plugin Manager',  #name,
            'plugins',  #sname,
            "/__init__.py",  #modpath
            "$basepath$",  # basepath
            "plugins.__init__",  # fullimploc
        )

        self.canreload = False

        #key:   modpath
        #value: {'plugin', 'module'}
        self.loadedpluginsd = {}

        self.pluginlookupbysname = {}
        self.pluginlookupbyname = {}
        self.pluginlookupbyfullimploc = {}

        # key:   modpath
        # value: {'sname', 'name', 'purpose', 'author',
        #        'version', 'modpath', 'fullimploc'
        self.allplugininfo = {}

        index = __file__.rfind(os.sep)
        if index == -1:
            self.basepath = "." + os.sep
        else:
            self.basepath = __file__[:index]

        self.savefile = os.path.join(self.api.BASEPATH, 'data', 'plugins',
                                     'loadedplugins.txt')
        self.loadedplugins = PersistentDict(self.savefile, 'c')

        self.api('api.add')('isloaded', self._api_isloaded)
        self.api('api.add')('getp', self._api_getp)
        self.api('api.add')('module', self._api_getmodule)
        self.api('api.add')('allplugininfo', self._api_allplugininfo)
        self.api('api.add')('savestate', self.savestate)
Esempio n. 11
0
    def __init__(self, *args, **kwargs):
        """
    initialize the instance
    """
        AardwolfBasePlugin.__init__(self, *args, **kwargs)
        self.savecpfile = os.path.join(self.savedir, 'cp.txt')
        self.cpinfo = PersistentDict(self.savecpfile, 'c')
        self.mobsleft = []
        self.cpinfotimer = {}
        self.nextdeath = False

        self.cmdqueue = None

        self.api.get('dependency.add')('cmdq')
Esempio n. 12
0
 def __init__(self, *args, **kwargs):
     """
 initialize the instance
 """
     AardwolfBasePlugin.__init__(self, *args, **kwargs)
     self.savegqfile = os.path.join(self.savedir, 'gq.txt')
     self.gqinfo = PersistentDict(self.savegqfile, 'c')
     self._gqsdeclared = {}
     self._gqsstarted = {}
     self.api.get('setting.add')('joined', -1, int, 'the gq number joined')
     self.api.get('setting.add')('maxkills', False, bool,
                                 'no qp because of maxkills')
     self.mobsleft = []
     self.linecount = 0
Esempio n. 13
0
  def __init__(self, *args, **kwargs):
    """
    initialize the instance
    """
    BasePlugin.__init__(self, *args, **kwargs)

    self.canreload = True

    self.regexlookup = {}
    self.actiongroups = {}
    self.compiledregex = {}
    self.sessionhits = {}

    self.saveactionsfile = os.path.join(self.savedir, 'actions.txt')
    self.actions = PersistentDict(self.saveactionsfile, 'c')
Esempio n. 14
0
    def __init__(self, *args, **kwargs):
        """
    initialize the instance
    """
        AardwolfBasePlugin.__init__(self, *args, **kwargs)
        self.spellupfile = os.path.join(self.savedir, 'spellups.txt')
        self.spellups = PersistentDict(self.spellupfile, 'c')

        self.api('dependency.add')('aardwolf.skills')
        self.api('dependency.add')('aardwolf.move')

        self.initspellups()

        self.lastmana = -1
        self.lastmoves = -1