Jump to content
Korean Random
ktulho

Маркеры панели счета (py_macro)

Recommended Posts

5a134d12ec64e_3030.png.dbc9644c92da37742a77e575ecd628ea.png

народ подскажите как убрать процентное соотношение прочности команд?

Share this post


Link to post

Short link
Share on other sites
3 минуты назад, MIAPAK сказал:

5a134d12ec64e_3030.png.dbc9644c92da37742a77e575ecd628ea.png

народ подскажите как убрать процентное соотношение прочности команд?

Добавить в файл elements.xc секцию. Но в лог будут сыпаться предупреждения. 

 

Share this post


Link to post

Short link
Share on other sites

@ktulho lock this please

 

python:

from xfw import *
from xvm_main.python.logger import *
from xvm_main.python.stats import _stat

from xvm.parser_addon import parser_addon
from xvm.damageLog import RATINGS

import BigWorld
import time
from Avatar import PlayerAvatar
from Vehicle import Vehicle
from gui.Scaleform.daapi.view.battle.classic.stats_exchange import FragsCollectableStats
import xvm_main.python.config as config
from helpers import dependency
from skeletons.account_helpers.settings_core import ISettingsCore
from constants import ARENA_GUI_TYPE
from gui.Scaleform.daapi.view.battle.shared.minimap.plugins import ArenaVehiclesPlugin
from gui.Scaleform.daapi.view.meta.BattleStatisticDataControllerMeta import BattleStatisticDataControllerMeta

playersEnemyAlive = {}
playersAllyAlive = {}
playersEnemyDead = {}
playersAllyDead = {}
aliveVehType = {'LT': '', 'MT': '', 'HT': '', 'SPG': '', 'TD': '', 'unknown': ''}
deadVehType = {'LT': '', 'MT': '', 'HT': '', 'SPG': '', 'TD': '', 'unknown': ''}
enemyVehicleAlive = None
allyVehicleAlive = None
enemyVehicleDead = None
allyVehicleDead = None
playerTeam = -1
autoReloadConfig = False
twoLine = False
countAlly = 0
countEnemy = 0
arenaGuiType = None
allyOrder = []
enemyOrder = []
chooseRating = None
directSortByLevelAllys = True
directSortByLevelEnemies = True

def readConfig():
    global aliveVehType, deadVehType, twoLine, enemyOrder, allyOrder, arenaGuiType, autoReloadConfig, chooseRating, directSortByLevelEnemies, directSortByLevelAllys
    scale = config.networkServicesSettings.scale
    name = config.networkServicesSettings.rating
    r = '{}_{}'.format(scale, name)
    if r in RATINGS:
        chooseRating = RATINGS[r]['name']
    else:
        chooseRating = 'xwgr' if scale == 'xvm' else 'wgr'
    autoReloadConfig = config.get('autoReloadConfig')
    aliveVehType['LT'] = config.get('fragCorrelation/vtypeAlive/LT', "<font face='xvm' color='#238C23'>&#x3A;</font>")
    aliveVehType['MT'] = config.get('fragCorrelation/vtypeAlive/MT', "<font face='xvm' color='#B79B2D'>&#x3B;</font>")
    aliveVehType['HT'] = config.get('fragCorrelation/vtypeAlive/HT', "<font face='xvm' color='#AA2F31'>&#x3F; </font>")
    aliveVehType['SPG'] = config.get('fragCorrelation/vtypeAlive/SPG', "<font face='xvm' color='#7D04A0'>&#x2D;</font>")
    aliveVehType['TD'] = config.get('fragCorrelation/vtypeAlive/TD', "<font face='xvm' color='#1447A0'>&#x2E;</font>")
    aliveVehType['unknown'] = config.get('fragCorrelation/vtypeAlive/unknown', "<font face='xvm' color='#dfdfd0'>&#x44;</font>")
    deadVehType['LT'] = config.get('fragCorrelation/vtypeDead/LT', "<font face='xvm' color='#387638'>&#x3A;</font>")
    deadVehType['MT'] = config.get('fragCorrelation/vtypeDead/MT', "<font face='xvm' color='#9c9c36'>&#x3B;</font>")
    deadVehType['HT'] = config.get('fragCorrelation/vtypeDead/HT', "<font face='xvm' color='#803c3c'>&#x3F; </font>")
    deadVehType['SPG'] = config.get('fragCorrelation/vtypeDead/SPG', "<font face='xvm' color='#854994'>&#x2D;</font>")
    deadVehType['TD'] = config.get('fragCorrelation/vtypeDead/TD', "<font face='xvm' color='#465a97'>&#x2E;</font>")
    deadVehType['unknown'] = config.get('fragCorrelation/vtypeDead/unknown', "<font face='xvm' color='#dfdfd0'>&#x44;</font>")
    showStandartMarkers = config.get('fragCorrelation/showStandartMarkers', False)
    enemyOrder = config.get('fragCorrelation/markersEnemiesOrder', ['HT', 'MT', 'TD', 'SPG', 'LT', 'unknown'])
    allyOrder = config.get('fragCorrelation/markersAllysOrder', ['HT', 'MT', 'TD', 'SPG', 'LT', 'unknown'])
    directSortByLevelAllys = config.get('fragCorrelation/directSortByLevelAllys', True)
    directSortByLevelEnemies = config.get('fragCorrelation/directSortByLevelEnemies', True)
    if not showStandartMarkers:
        settingsCore = dependency.instance(ISettingsCore)
        if settingsCore.isSettingChanged('showVehiclesCounter', False):
            settingsCore.applySetting('showVehiclesCounter', False)
            settingsCore.onSettingsChanged({'showVehiclesCounter': False})
    arenaGuiType = BigWorld.player().arenaGuiType
    if arenaGuiType in [ARENA_GUI_TYPE.EPIC_RANDOM, ARENA_GUI_TYPE.EPIC_RANDOM_TRAINING]:
        twoLine = config.get('fragCorrelation/twoLineEpicRandom', False)
    else:
        twoLine = False

def getAliveVehicle(vehicles, countHalf, isAlly=True):
    if isAlly:
        sign = -1 if directSortByLevelAllys else 1
        vehicles.sort(key=lambda x: [x['vehTypeNumber'], sign * x['level']])
    else:
        sign = -1 if directSortByLevelEnemies else 1
        vehicles.sort(key=lambda x: [x['vehTypeNumber'], sign * x['level']])
    s = [parser_addon(aliveVehType[i['vehType']], i) for i in vehicles]
    if twoLine and (len(s) >= countHalf):
        s.insert(countHalf, '\n')
    return ''.join(s) if s is not None else ''

def getDeadVehicle(vehicles, countHalf, isAlly=True):
    if isAlly:
        sign = -1 if directSortByLevelAllys else 1
        vehicles.sort(key=lambda x: [x['vehTypeNumber'], sign * x['level']])
    else:
        sign = -1 if directSortByLevelEnemies else 1
        vehicles.sort(key=lambda x: [x['vehTypeNumber'], sign * x['level']])
    s = [parser_addon(deadVehType[i['vehType']], i) for i in vehicles]
    l = len(s) - countHalf
    if twoLine and (l > 0):
        s.insert(l, '\n')
    return ''.join(s) if s is not None else ''

def readColor(sec, m, xm=None):
    colors = config.get('colors/' + sec)
    if m is not None and colors is not None:
        for val in colors:
            if val['value'] > m:
                return '#' + val['color'][2:] if val['color'][:2] == '0x' else val['color']
    elif xm is not None:
        colors_x = config.get('colors/x')
        for val in colors_x:
            if val['value'] > xm:
                return '#' + val['color'][2:] if val['color'][:2] == '0x' else val['color']

def getStats(name):
    if (_stat.resp is not None) and ('players' in _stat.resp) and (name in _stat.resp['players']):
        stats = _stat.resp['players'][name]
        xwn8 = stats.get('xwn8', None)
        xwtr = stats.get('xwtr', None)
        xeff = stats.get('xeff', None)
        xwgr = stats.get('xwgr', None)
        return {'c:wn8': readColor('wn8', stats.get('wn8', None), xwn8),
                'c:xwn8': readColor('x', xwn8),
                'c:wtr': readColor('wtr', stats.get('wtr', None), xwtr),
                'c:xwtr': readColor('x', xwtr),
                'c:eff': readColor('eff', stats.get('eff', None), xeff),
                'c:xeff': readColor('x', xeff),
                'c:wgr': readColor('wgr', stats.get('wgr', None), xwgr),
                'c:xwgr': readColor('x', xwgr),
                'c:xte': readColor('x', stats.get('v').get('xte', None))}
    else:
        return {'c:wn8': None, 'c:xwn8': None, 'c:wtr': None, 'c:xwtr': None, 'c:eff': None, 'c:xeff': None, 'c:wgr': None, 'c:xwgr': None, 'c:xte': None}

def update(vInfoVO):
    global playersEnemyAlive, playersAllyAlive, playersEnemyDead, playersAllyDead, countAlly, countEnemy, playerTeam
    global enemyVehicleAlive, allyVehicleAlive, enemyVehicleDead, allyVehicleDead
    if not (enemyOrder and allyOrder) or autoReloadConfig:
        readConfig()
    renameDict = {'lightTank': 'LT', 'mediumTank': 'MT', 'heavyTank': 'HT', 'SPG': 'SPG', 'AT-SPG': 'TD', None: 'unknown'}

    if playerTeam < 0:
        playerTeam = BigWorld.player().team
    _vehicleID = vInfoVO.vehicleID
    _vehicleType = vInfoVO.vehicleType
    vehInfo = {'vehType': renameDict[_vehicleType.classTag],
               'level': _vehicleType.level,
               'c:r': '{{c:%s}}' % chooseRating,
               'playerName': vInfoVO.player.name}
    isNewPlayerAlive = (_vehicleID in playersAllyAlive) or (_vehicleID in playersEnemyAlive)
    isNewPlayerDead = (_vehicleID in playersAllyDead) or (_vehicleID in playersEnemyDead)

    if vInfoVO.isAlive() and not isNewPlayerAlive:
        if vInfoVO.team == playerTeam:
            vehInfo['vehTypeNumber'] = allyOrder.index(vehInfo['vehType'])
            playersAllyAlive[_vehicleID] = vehInfo
            countAlly += 1
            allyVehicleAlive = getAliveVehicle(playersAllyAlive.values(), countAlly >> 1)
        else:
            vehInfo['vehTypeNumber'] = enemyOrder.index(vehInfo['vehType'])
            playersEnemyAlive[_vehicleID] = vehInfo
            countEnemy += 1
            enemyVehicleAlive = getAliveVehicle(playersEnemyAlive.values(), countEnemy >> 1, False)
        as_event('ON_UPDATE_FRAG_COR_BAR')
    elif (not vInfoVO.isAlive()) and not isNewPlayerDead:
        if vInfoVO.team == playerTeam:
            if _vehicleID in playersAllyAlive:
                playersAllyDead[_vehicleID] = playersAllyAlive[_vehicleID]
                del playersAllyAlive[_vehicleID]
                allyVehicleAlive = getAliveVehicle(playersAllyAlive.values(), countAlly >> 1)
            else:
                vehInfo['vehTypeNumber'] = allyOrder.index(vehInfo['vehType'])
                playersAllyDead[_vehicleID] = vehInfo
            allyVehicleDead = getDeadVehicle(playersAllyDead.values(), countAlly >> 1)
        else:
            if _vehicleID in playersEnemyAlive:
                playersEnemyDead[_vehicleID] = playersEnemyAlive[_vehicleID]
                del playersEnemyAlive[_vehicleID]
                enemyVehicleAlive = getAliveVehicle(playersEnemyAlive.values(), countEnemy >> 1, False)
            else:
                vehInfo['vehTypeNumber'] = enemyOrder.index(vehInfo['vehType'])
                playersEnemyDead[_vehicleID] = vehInfo
            enemyVehicleDead = getDeadVehicle(playersEnemyDead.values(), countEnemy >> 1, False)
        as_event('ON_UPDATE_FRAG_COR_BAR')
    elif (_vehicleType.classTag is not None) and isNewPlayerAlive:
        if (_vehicleID in playersAllyAlive) and (playersAllyAlive[_vehicleID]['vehType'] == 'unknown'):
            vehInfo['vehTypeNumber'] = allyOrder.index(vehInfo['vehType'])
            playersAllyAlive[_vehicleID] = vehInfo
            allyVehicleAlive = getAliveVehicle(playersAllyAlive.values(), countAlly >> 1)
            as_event('ON_UPDATE_FRAG_COR_BAR')
        elif (_vehicleID in playersEnemyAlive) and (playersEnemyAlive[_vehicleID]['vehType'] == 'unknown'):
            vehInfo['vehTypeNumber'] = enemyOrder.index(vehInfo['vehType'])
            playersEnemyAlive[_vehicleID] = vehInfo
            enemyVehicleAlive = getAliveVehicle(playersEnemyAlive.values(), countEnemy >> 1, False)
            as_event('ON_UPDATE_FRAG_COR_BAR')

@registerEvent(_stat, 'getBattleStat')
def _stat_getBattleStat():
    global playersEnemyAlive, playersAllyAlive, playersEnemyDead, playersAllyDead
    global enemyVehicleAlive, allyVehicleAlive, enemyVehicleDead, allyVehicleDead
    for k, v in playersEnemyAlive.iteritems():
        playersEnemyAlive[k].update(getStats(v['playerName']))
    for k, v in playersAllyAlive.iteritems():
        playersAllyAlive[k].update(getStats(v['playerName']))
    for k, v in playersEnemyDead.iteritems():
        playersEnemyDead[k].update(getStats(v['playerName']))
    for k, v in playersAllyDead.iteritems():
        playersAllyDead[k].update(getStats(v['playerName']))
    allyVehicleAlive = getAliveVehicle(playersAllyAlive.values(), countAlly >> 1)
    enemyVehicleAlive = getAliveVehicle(playersEnemyAlive.values(), countEnemy >> 1, False)
    allyVehicleDead = getDeadVehicle(playersAllyDead.values(), countAlly >> 1)
    enemyVehicleDead = getDeadVehicle(playersEnemyDead.values(), countEnemy >> 1, False)
    as_event('ON_UPDATE_FRAG_COR_BAR')

@registerEvent(ArenaVehiclesPlugin, '_ArenaVehiclesPlugin__setVehicleInfo')
def __setVehicleInfo(self, vehicleID, entry, vInfo, guiProps, isSpotted=False):
    update(vInfo)

@registerEvent(FragsCollectableStats, 'addVehicleStatusUpdate')
def FragsCollectableStats_addVehicleStatusUpdate(self, vInfoVO):
    update(vInfoVO)

@registerEvent(PlayerAvatar, '_PlayerAvatar__destroyGUI')
def PlayerAvatar__destroyGUI(self):
    global playersEnemyAlive, playersAllyAlive, playersEnemyDead, playersAllyDead, countAlly, countEnemy, aliveVehType, deadVehType, arenaGuiType
    global enemyOrder, allyOrder, enemyVehicleAlive, allyVehicleAlive, enemyVehicleDead, allyVehicleDead, playerTeam, chooseRating
    countAlly = 0
    countEnemy = 0
    playerTeam = -1
    arenaGuiType = None
    allyOrder = []
    enemyOrder = []
    playersEnemyAlive = {}
    playersAllyAlive = {}
    playersEnemyDead = {}
    playersAllyDead = {}
    enemyVehicleAlive = None
    allyVehicleAlive = None
    enemyVehicleDead = None
    allyVehicleDead = None
    chooseRating = None
    aliveVehType = {'LT': '', 'MT': '', 'HT': '', 'SPG': '', 'TD': ''}
    deadVehType = {'LT': '', 'MT': '', 'HT': '', 'SPG': '', 'TD': ''}

@registerEvent(PlayerAvatar, 'onEnterWorld')
def onEnterWorld(self, prereqs):
    as_event('ON_UPDATE_FRAG_COR_BAR')

@xvm.export('fcb.enemyVehicleAlive', deterministic=False)
def export_enemyVehicleAlive():
    return enemyVehicleAlive

@xvm.export('fcb.allyVehicleAlive', deterministic=False)
def export_allyVehicleAlive():
    return allyVehicleAlive

@xvm.export('fcb.enemyVehicleDead', deterministic=False)
def export_enemyVehicleDead():
    return enemyVehicleDead

@xvm.export('fcb.allyVehicleDead', deterministic=False)
def export_allyVehicleDead():
    return allyVehicleDead

@xvm.export('fcb.countEnemyAlive', deterministic=False)
def export_countEnemyAlive(veh):
    if isinstance(veh, basestring) and (veh.upper() in ['HT', 'MT', 'TD', 'SPG', 'LT']):
        return len([True for v in playersEnemyAlive.itervalues() if v['vehType'] == veh])
    else:
        return None

@xvm.export('fcb.countAllyAlive', deterministic=False)
def export_countAllyAlive(veh):
    if isinstance(veh, basestring) and (veh.upper() in ['HT', 'MT', 'TD', 'SPG', 'LT']):
        return len([True for v in playersAllyAlive.itervalues() if v['vehType'] == veh])
    else:
        return None

@xvm.export('fcb.countEnemyDead', deterministic=False)
def export_countEnemyDead(veh):
    if isinstance(veh, basestring) and (veh.upper() in ['HT', 'MT', 'TD', 'SPG', 'LT']):
        return len([True for v in playersEnemyDead.itervalues() if v['vehType'] == veh])
    else:
        return None

@xvm.export('fcb.countAllyDead', deterministic=False)
def export_countAllyDead(veh):
    if isinstance(veh, basestring) and (veh.upper() in ['HT', 'MT', 'TD', 'SPG', 'LT']):
        return len([True for v in playersAllyDead.itervalues() if v['vehType'] == veh])
    else:
        return None

@xvm.export('fcb.aliveVehType', deterministic=False)
def export_aliveVehType(veh):
    if isinstance(veh, basestring) and (veh.upper() in ['HT', 'MT', 'TD', 'SPG', 'LT']):
        return aliveVehType[veh]
    else:
        return None

@xvm.export('fcb.deadVehType', deterministic=False)
def export_deadVehType(veh):
    if isinstance(veh, basestring) and (veh.upper() in ['HT', 'MT', 'TD', 'SPG', 'LT']):
        return deadVehType[veh]
    else:
        return None
        
@xvm.export('fcb.rank')
def tank_rank(a, b, c, d, e):
    if d > 10:
      d = 10
    if e == d:
        return a
    elif e == d - 1:
        return b
    else:
        return c

battle.xc

{
  "battle": {
    "mirroredVehicleIcons": true,
    "showPostmortemTips": true,
    "highlightVehicleIcon": true,
    "clockFormat": "H:i",
    "clanIconsFolder": "clanicons/",
    "sixthSenseIcon": "xvm://res/SixthSense.png",
    "sixthSenseDuration": 2000,
    "elements": ${"elements.xc":"elements"},
    "camera": ${"camera.xc":"camera"},
    "minimapDeadSwitch": true
  },
  "fragCorrelation": {
    "showAliveNotFrags": false,
    "showStandartMarkers": false,
    "twoLineEpicRandom": true,
    "markersAllysOrder": ["HT", "MT", "TD", "SPG", "LT"],
    "markersEnemiesOrder": ["HT", "MT", "TD", "SPG", "LT"],
    "directSortByLevelAllys": true,
 "directSortByLevelEnemies": true,
    //  {{py:fcb.enemyVehicle}}  {{py:fcb.allyVehicle}}
    //  "vtypeAlive"  "vtypeDead"  {{level}},  {{py:fcb.rank('','','',{{battletier}},{{level}})}}
    //  {{c:wn8}}, {{c:xwn8}}, {{c:wtr}}, {{c:xwtr}}, {{c:eff}}, {{c:xeff}}, {{c:wgr}}, {{c:xwgr}}, {{c:xte}}, {{c:r}}
    "vtypeAlive": {
      "LT":  "<font face='xvm' color='#00d900' size='21'> :</font>",
      "MT":  "<font face='xvm' color='#d9d900'> ;</font>",
      "HT":  "<font face='xvm' color='#d90000'> ?</font>",
      "SPG": "<font face='xvm' color='#c40df9'> -</font>",
      "TD":  "<font face='xvm' color='#1a3cff'> .</font>",
      "unknown": "<font face='xvm' color='#dfdfd0' size='24'>D </font>"
    },
    "vtypeDead": {
      "LT":  "<font face='xvm' color='#387638' size='21'> :</font>",
      "MT":  "<font face='xvm' color='#9c9c36'> ;</font>",
      "HT":  "<font face='xvm' color='#803c3c'> ?</font>",
      "SPG": "<font face='xvm' color='#854994'> -</font>",
      "TD":  "<font face='xvm' color='#465a97'> .</font>",
      "unknown": "<font face='xvm' color='#dfdfd0' size='24'>D </font>"
    }
  },
  "expertPanel": {
    "delay": 15,
    "scale": 150
  }
}

battlelabels.xc


      ${ "battleLabelsTemplates.xc":"def.fragCorBarEnemy"},
      ${ "battleLabelsTemplates.xc":"def.fragCorBarAlly"}

battleLabelstemplates.xc

"fragCorBarEnemy": {
      "enabled": true,
      "updateEvent": "PY(ON_UPDATE_FRAG_COR_BAR)",
      "x": 190,
      "y": 0,
      "width": 300,
      "height": 60,
      "screenHAlign": "center",
      "shadow": { "distance": 1, "angle": 90, "alpha": 80, "blur": 3, "strength": 2 },
      "textFormat": {"align": "left", "size": 24 },
      "format": "{{py:fcb.enemyVehicleAlive}}{{py:fcb.enemyVehicleDead}}"
    },
    "fragCorBarAlly": {
      "enabled": true,
      "updateEvent": "PY(ON_UPDATE_FRAG_COR_BAR)",
      "x": 110,
      "y": 0,
      "width": 300,
      "height": 60,
      "screenHAlign": "center",
      "scaleX": -1,
      "shadow": { "distance": 1, "angle": 90, "alpha": 80, "blur": 3, "strength": 2 },
      "textFormat": {"align": "left", "size": 24 },
      "format": "{{py:fcb.allyVehicleAlive}}{{py:fcb.allyVehicleDead}}"
    },

 

Share this post


Link to post

Short link
Share on other sites

@ktulho , почемуто переодически при входе в бой, выкидывает из игры и связано это с fragCorrelationBar.py, в xvm лог следующее:

2017-11-21 03:51:14: [ERROR] Traceback (most recent call last):
  File "./res_mods/mods/packages\xvm_main\python\python_macro.py", line 156, in process_python_macro
    (func, deterministic) = get_function(arg)
  File "./res_mods/mods/packages\xvm_main\python\python_macro.py", line 147, in get_function
    (func, deterministic) = _container.get(func_name)
TypeError: 'NoneType' object is not iterable
arg='xvm.python_macro'
2017-11-21 03:51:14: [ERROR] Traceback (most recent call last):
  File "./res_mods/mods/packages\xvm_main\python\python_macro.py", line 156, in process_python_macro
    (func, deterministic) = get_function(arg)
  File "./res_mods/mods/packages\xvm_main\python\python_macro.py", line 147, in get_function
    (func, deterministic) = _container.get(func_name)
TypeError: 'NoneType' object is not iterable
arg='xvm.python_macro'

Добавив логирования вызова каждой функции в fragCorrelationBar, пришол к выводу что это происходит при обработке export_allyVehicleAlive(), если "return allyVehicleAlive" заменить на "return none", то вылеты прикрощаються, но и маркеры живых союзников не будут показываться в панели(что естественно). Попробывал выводит в лог значения allyVehicleAlive(при помощи "log('export_allyVehicleAlive(%s)' % allyVehicleAlive)") но ничего не корректного в результате не обнаружил.

ЗЫ. По видимому далеко не у всех такая проблема рас сообщений тут подобных не видно. Помогите выловить проблему.

battle.xc

python.log

xvm.log

  • Upvote 2

Share this post


Link to post

Short link
Share on other sites

@xenus сам сталкивался с это проблемой

Попробуйте все экспорты  (@export) оставить в этом файле, а всю логику перенести в отдельный файл, как советовал Sirmax. 

Share this post


Link to post

Short link
Share on other sites
41 минуту назад, xenus сказал:

По видимому далеко не у всех такая проблема рас сообщений тут подобных не видно. Помогите выловить проблему.

Так же клиент вылетает

Можно расписать для обычных людей :) как решить данную проблему (что и куда вынести)?

Share this post


Link to post

Short link
Share on other sites
6 минут назад, MIAPAK сказал:

как решить данную проблему (что и куда вынести)?

Никто пока не знает, как решить эту проблему. 

@xenus а есть риплей на котором это можно воспроизвести?

Share this post


Link to post

Short link
Share on other sites

@MIAPAK , решить данную проблему сложно, так как не получается отловить конкретное место, где и из-за чего эта проблема возникает. Для себя данную проблему обошел путем отключения индикаторов живой дружественной техники, но резать функционал это конечно не выход.

@ktulho , риплея к сожалению нету. Разделил fragCorrelationBar на 2 файла, в итоге так же вылетает. Может как то не так разнес кода, на всякий случая вот:

fragCorrelationBar_dat.py

fragCorrelationBar_exp.py

python.log

xvm.log

Share this post


Link to post

Short link
Share on other sites
1 час назад, ktulho сказал:

Нашел рипллей.)

@MIAPAK @xenus отключил рейтинги, попробуйте fragCorrelationBar.py

@MIAPAK @xenus немного переделал скрипт. Обновил его в шапке.

Проверить смогу только вечером, а можешь реплей прицепить?  Спс

Share this post


Link to post

Short link
Share on other sites
В 20.11.2017 в 17:37, vizhu сказал:

Как сделать расстояние между значками техники м е н ь ше?

 

1q.png

 

Научите почему расстояния между значками большое и как сделать меньше?

 

В 20.11.2017 в 17:40, krok65 сказал:

Т.е задать иконки:

Для ТТ   8-g,9-l,10-u

Для арты 8-k,9-p,10-X

Для пт   8-j,9-o,10-V

Так можно как-то задать чтоб отличие уровней было?

А так 9-ка маркер как у 8-ки отображается.

 

Что НЕ правильно...конфиг ломается((?:rq_cry:

 

Цитата

"vtypeAlive": {
      "LT":  " <font face='vtype' color='#6ca135' size='18'>i</font>",
      "MT":  " <font face='vtype' color='#9c8b9d' size='22'>{{level=10?h|{{level=9?n|g}}</font>",
      "HT":  " <font face='vtype' color='#9c8b9d' size='22'>{{level=10?u|{{level=9?l|g}}</font>",
      "SPG": " <font face='vtype' color='#9c8b9d' size='22'>{{level=10?X|{{level=9?p|k}}</font>",
      "TD":  " <font face='vtype' color='#9c8b9d' size='22'>{{level=10?V|{{level=9?o|j}}</font>",
    },

 

Edited by vizhu

Share this post


Link to post

Short link
Share on other sites

@ktulho

Нашел рипллей.)

@MIAPAK @xenus отключил рейтинги, попробуйте fragCorrelationBar.py

@MIAPAK @xenus немного переделал скрипт. Обновил его в шапк

 

Спасибо, что он больше не работает

 

MFG

SicFunzler

 

Edited by sicfunzler

Share this post


Link to post

Short link
Share on other sites
В 21.11.2017 в 18:58, vizhu сказал:

Что НЕ правильно...конфиг ломается((?:rq_cry:

 

 

В конце {{level=10?h|{{level=9?n|g}}}}       }} не добавили

 

 

 

 

Edited by krok65

Share this post


Link to post

Short link
Share on other sites
54 минуты назад, vizhu сказал:

Вот что получилось:rq_hypno::shock:

 

1q.png.da9df303fe4a0842abf785f335fb7b5e.png

battle.xc

battleLabelsTemplates.xc

Ну так цвета какие видеть хотите по классам измените чтоб разные были!!!

color='#9c8b9d'  ----------      у Вас тут один и тот же цвет кроме ЛТ

и тут тогда 

 //true - маркеры союзников сортируются по уровню слева направо
    "directSortByLevelAllys": true,   

Ну и в battleLabelsTemplates.xc поиграйте с координатами,выставите к примеру:

в "fragCorBarEnemy"  "x": 175,

в "fragCorBarAlly"  "x": -183,   ------------------- по своему разрешению сами подбирайте чтоб ближе к цифрам счета приблизить.

 

Edited by krok65
  • Upvote 1
  • Downvote 1

Share this post


Link to post

Short link
Share on other sites

Обновил скрипт. У кого были вылеты, просьба проверить с новым скриптом.

  • Upvote 2

Share this post


Link to post

Short link
Share on other sites
6 часов назад, krok65 сказал:

Ну так цвета какие видеть хотите по классам измените чтоб разные были!!!

color='#9c8b9d'  ----------      у Вас тут один и тот же цвет кроме ЛТ

и тут тогда 

 //true - маркеры союзников сортируются по уровню слева направо
    "directSortByLevelAllys": true,   

Ну и в battleLabelsTemplates.xc поиграйте с координатами,выставите к примеру:

в "fragCorBarEnemy"  "x": 175,

в "fragCorBarAlly"  "x": -183,   ------------------- по своему разрешению сами подбирайте чтоб ближе к цифрам счета приблизить.

 

Спасибо.

И еще один момент почему ст-1 обозначен 10 лвл?

2f.png

Edited by vizhu

Share this post


Link to post

Short link
Share on other sites
1 час назад, ktulho сказал:

Обновил скрипт. У кого были вылеты, просьба проверить с новым скриптом.

Спасибо! Будем проверять, а то зависало и вылетало! Я там в личку закинул логи.

Share this post


Link to post

Short link
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.


  • Recently Browsing   0 members

    No registered users viewing this page.

×
×
  • Create New...