Exemple #1
0
 def getLogDictAndSettings(self, eventType):
     if eventType == EV_ID.PLAYER_DAMAGED_HP_ENEMY:
         return self.damage_log, self.settings.log_damage_extended
     elif eventType == EV_ID.ENEMY_DAMAGED_HP_PLAYER:
         return self.input_log, self.settings.log_input_extended
     logWarning(DAMAGE_LOG.WARNING_MESSAGE)
     raise ValueError("eventType %s NOT FOUND")
Exemple #2
0
 def isLogEnabled(self, eventType):
     if eventType == EV_ID.PLAYER_DAMAGED_HP_ENEMY:
         return self.settings.log_damage_extended[GLOBAL.ENABLED]
     elif eventType == EV_ID.ENEMY_DAMAGED_HP_PLAYER:
         return self.settings.log_input_extended[GLOBAL.ENABLED]
     logWarning(DAMAGE_LOG.WARNING_MESSAGE)
     return False
 def start(self):
     for moduleName in self.modules:
         path = "{}.{}".format(__package__, moduleName)
         if path in sys.modules or self.modules[moduleName] is not None:
             logWarning("{} module already loaded".format(path))
         else:
             try:
                 self.modules[moduleName] = __import__(path)
             except ImportError:
                 LOG_CURRENT_EXCEPTION()
Exemple #4
0
def getViewSettings():
    settings = []
    for alias, enable in getComponents():
        try:
            class_name = alias.split("_")[1]
            module_class = getattr(
                import_module(".date_times", package=__package__), class_name)
            settings.append(
                ComponentSettings(alias, module_class,
                                  ScopeTemplates.DEFAULT_SCOPE))
        except Exception as err:
            logWarning("{}, {}, {}".format(__package__, alias, repr(err)))
    return settings
 def start(self):
     self.addModificationToModList()
     for blockID in CONFIG_INTERFACE.BLOCK_IDS:
         if blockID in self.inited:
             continue
         try:
             self.vxSettingsApi.addMod(MOD_NAME, blockID, lambda *args: self.getTemplate(blockID),
                                       dict(), lambda *args: None, button_handler=self.onButtonPress)
         except Exception as err:
             logWarning('ConfigInterface startLoad {}'.format(repr(err)))
             LOG_CURRENT_EXCEPTION(tags=["%s" % MOD_NAME])
         else:
             self.inited.add(blockID)
Exemple #6
0
 def loadHangarSettings(self, spaceID):
     if spaceID == GuiGlobalSpaceID.LOGIN:
         ServicesLocator.appLoader.onGUISpaceEntered -= self.loadHangarSettings
         try:
             from gui.modsListApi import g_modsListApi
             from gui.vxSettingsApi import vxSettingsApi, vxSettingsApiEvents
         except ImportError as err:
             logWarning("%s: Settings API not loaded" % repr(err))
         else:
             from armagomen.battle_observer.settings.hangar.hangar_settings import ConfigInterface
             self.configInterface = ConfigInterface(g_modsListApi, vxSettingsApi, vxSettingsApiEvents,
                                                    self.settings, self)
             self.configInterface.start()
Exemple #7
0
def getViewSettings():
    settings = []
    for alias in SORTED_ALIASES:
        if view_settings.getSetting(alias):
            try:
                class_name = alias.split("_")[GLOBAL.ONE]
                file_name = ALIAS_TO_PATH.get(alias)
                module_class = getattr(
                    import_module(file_name, package=__package__), class_name)
                settings.append(
                    ComponentSettings(alias, module_class,
                                      ScopeTemplates.DEFAULT_SCOPE))
                _GAME_UI.add(alias)
                _SPECTATOR_UI.add(alias)
            except Exception as err:
                logWarning("{}, {}, {}".format(__package__, alias, repr(err)))
    return settings
Exemple #8
0
    def start(self):
        if self.isFileValid:
            logInfo('MOD {0}: {1}'.format(MESSAGES.START, self.mod_version))
            self.componentsLoader.start()
            self.configLoader.start()
            packages.BATTLE_PACKAGES += ("armagomen.battle_observer.battle", )
            packages.LOBBY_PACKAGES += ("armagomen.battle_observer.lobby", )
        else:
            from gui.Scaleform.daapi.view import dialogs
            from gui import DialogsInterface
            locked = MESSAGES.LOCKED_BY_FILE_NAME.format(self.fileName)
            logWarning(locked)

            def loadBlocked(spaceID):
                if spaceID in (GuiGlobalSpaceID.LOGIN, GuiGlobalSpaceID.LOBBY):
                    title = '{0} is locked'.format(MOD_NAME)
                    btn = DialogButtons('Close')
                    DialogsInterface.showDialog(
                        dialogs.SimpleDialogMeta(title, locked, btn),
                        lambda proceed: None)
                    ServicesLocator.appLoader.onGUISpaceEntered -= loadBlocked

            ServicesLocator.appLoader.onGUISpaceEntered += loadBlocked
Exemple #9
0
 def readConfig(self, configName):
     """Read settings_core file from JSON"""
     direct_path = os.path.join(self.path, configName)
     logInfo('START UPDATE USER CONFIGURATION: {}'.format(configName))
     file_list = ['{}.json'.format(name) for name in LOAD_LIST]
     listdir = os.listdir(direct_path)
     for num, module_name in enumerate(LOAD_LIST, GLOBAL.ZERO):
         file_name = file_list[num]
         file_path = os.path.join(direct_path, file_name)
         internal_cfg = getattr(self.settings, module_name)
         if file_name in listdir:
             try:
                 if self.updateData(self.getFileData(file_path), internal_cfg):
                     self.createFileInDir(file_path, internal_cfg)
             except Exception as error:
                 self.loadError(file_path, error.message)
                 logWarning('readConfig: {} {}'.format(file_name, repr(error)))
                 continue
         else:
             self.createFileInDir(file_path, internal_cfg)
         self.settings.onModSettingsChanged(internal_cfg, module_name)
     logInfo('CONFIGURATION UPDATE COMPLETED: {}'.format(configName))
     if self.configInterface is not None:
         self.configInterface.onUserConfigUpdateComplete()