Jump to content
Korean Random

Динамические макросы в Python


Recommended Posts

слава друг поделись данной фичей, если нетрудно, желательно какие файлы и куда что добавить, чтобы свой конфиг не ломать. Заранее благодарен))) 

Вообще я его к другому скрипту дописал,совместил,так сказать(там импорты одинаковые),но можно и отдельно сделать.

Код:

import xvm_battle.python.fragCorrelationPanel as panel

# Градиент цвета, в зависимости от перевеса очков прочности одной команды над другой.
@xvm.export('sign_color', deterministic=False)
def sign_color():
    return panel.total_hp_color

# Разница между очками прочности команд.
@xvm.export('sign_hp', deterministic=False)
def sign_hp():
    result = panel.teams_totalhp[0] - panel.teams_totalhp[1]
    return result

# Разница между очками прочности команд (с окраской данных в зависимости от перевеса).
@xvm.export('sign_hp_color', deterministic=False)
def sign_hp_color():
    result = panel.teams_totalhp[0] - panel.teams_totalhp[1]
    return "<font color='#%s'>%s</font>" % (sign_color(), result) 

Настройкив battleLabelsTemplates.xc(мои для примера,могут отличаться по координатам,шрифтам и пр.):

// Разница по HP между командами.
    "sign_hp": {
      "enabled": true,
      "updateEvent": "PY(ON_UPDATE_HP)",
      "x": -323,
      "y": 1,
      "width": 90,
      "height": 30,
      "screenHAlign": "center",
      "shadow": { "enabled": true, "distance": 1, "angle": 90, "color": "0x000000", "alpha": 80, "blur": 5, "strength": 1.5 },
      "textFormat": { "font": "NDO", "size": 17, "align": "right" },
      "format": "<b>{{py:sign_hp_color}}</b> <img src='img://gui/maps/icons/achievement/32x32/champion.png' width='26' height='26' vspace='-9'>"
    }, 

Ну и само собой battleLabels.xc:

// Разница по HP между командами
      ${ "battleLabelsTemplates.xc":"def.sign_hp" } 

Link to comment
Short link
Share on other sites

Вообще я его к другому скрипту дописал,совместил,так сказать(там импорты одинаковые),но можно и отдельно сделать.

Код:

import xvm_battle.python.fragCorrelationPanel as panel

# Градиент цвета, в зависимости от перевеса очков прочности одной команды над другой.
@xvm.export('sign_color', deterministic=False)
def sign_color():
    return panel.total_hp_color

# Разница между очками прочности команд.
@xvm.export('sign_hp', deterministic=False)
def sign_hp():
    result = panel.teams_totalhp[0] - panel.teams_totalhp[1]
    return result

# Разница между очками прочности команд (с окраской данных в зависимости от перевеса).
@xvm.export('sign_hp_color', deterministic=False)
def sign_hp_color():
    result = panel.teams_totalhp[0] - panel.teams_totalhp[1]
    return "<font color='#%s'>%s</font>" % (sign_color(), result) 

Настройкив battleLabelsTemplates.xc(мои для примера,могут отличаться по координатам,шрифтам и пр.):

// Разница по HP между командами.
    "sign_hp": {
      "enabled": true,
      "updateEvent": "PY(ON_UPDATE_HP)",
      "x": -323,
      "y": 1,
      "width": 90,
      "height": 30,
      "screenHAlign": "center",
      "shadow": { "enabled": true, "distance": 1, "angle": 90, "color": "0x000000", "alpha": 80, "blur": 5, "strength": 1.5 },
      "textFormat": { "font": "NDO", "size": 17, "align": "right" },
      "format": "<b>{{py:sign_hp_color}}</b> <img src='img://gui/maps/icons/achievement/32x32/champion.png' width='26' height='26' vspace='-9'>"
    }, 

Ну и само собой battleLabels.xc:

// Разница по HP между командами
      ${ "battleLabelsTemplates.xc":"def.sign_hp" } 

спасибо получилось, а еще можно тебя напрячь справа на скриншоте у тебя часом не основной калибр? будь добр дай на него такие выдержки))) люблю чтоб все симметрично и симпотно было)))

Edited by androdizel
Link to comment
Short link
Share on other sites

спасибо получилось, а еще можно тебя напрячь справа на скриншоте у тебя часом не основной калибр? будь добр дай на него такие выдержки))) люблю чтоб все симметрично и симпотно было)))

Там тоже почти самоделка,но там не основной калибр(он по альту),а средний урон и сколько до него осталось(или плюсом) с цветной дифференциацией штанов)))

Вот совмещенный,с разницей по ХП

#####################################################################
# imports

import BigWorld
import xvm_battle.python.fragCorrelationPanel as panel
from CurrentVehicle import g_currentVehicle
from gui.Scaleform.daapi.view.lobby.hangar.Hangar import Hangar
from gui.shared import g_itemsCache
from xfw import *
import traceback

#####################################################################
# constants

actual_arenaUniqueID = None
playerAvgDamage = None
max_hp_enemy = 0

#####################################################################
# handlers

@xvm.export('high_сaliber', deterministic=False)
def high_caliber(dmg_total):
    global actual_arenaUniqueID, max_hp_enemy
    arenaUniqueID = BigWorld.player().arenaUniqueID
    if actual_arenaUniqueID != arenaUniqueID:
        actual_arenaUniqueID = arenaUniqueID
        max_hp_enemy = 0
    if panel.teams_totalhp[1] > max_hp_enemy:
        max_hp_enemy = panel.teams_totalhp[1]
    battletype = BigWorld.player().arena.guiType
    if (battletype != 1) or (max_hp_enemy == 0):
        return
    else:
        symbol = '<img src="img://gui/maps/icons/achievement/32x32/mainGun.png" width="26" height="26" align="middle" vspace="-9">'
        done = '<img src="img://gui/maps/icons/library/done.png" width="20" height="20" align="middle" vspace="-9">'
        threshold = max_hp_enemy * 0.2 if max_hp_enemy > 5000 else 1000
        high_caliber = int(threshold - dmg_total)
        if high_caliber <= 0:
            high_caliber = done
    return '%s%s' % (symbol, high_caliber) if max_hp_enemy >= 1000 else ''

@registerEvent(Hangar, '_Hangar__updateParams')
def Hangar__updateParams(self):
    try:
        global playerAvgDamage
        playerAvgDamage = g_itemsCache.items.getVehicleDossier(g_currentVehicle.item.intCD).getRandomStats().getAvgDamage()
        return playerAvgDamage
    except:
        err(traceback.format_exc())

@xvm.export('avg_damage', deterministic=False)
def avg_damage(dmg_total):
    global playerAvgDamage
    battletype = BigWorld.player().arena.guiType
    if battletype != 1:
        return
    elif playerAvgDamage == None:
        return
    else:
        color = 'FFFFFF'
        symbol = '<img src="img://gui/maps/icons/achievement/32x32/winnerLaurels1.png" width="26" height="26" align="middle" vspace="-9">'
        none = '<img src="img://gui/maps/icons/achievement/32x32/winnerLaurels3.png" width="26" height="26" align="middle" vspace="-9">'
        avgDamage = int(playerAvgDamage - dmg_total)
        if avgDamage <= 0:
            avgDamage = abs(avgDamage)
            if avgDamage > 1:
                color = 'FE7903'
            if avgDamage > 300:
                color = 'FFC103'
            if avgDamage > 500:
                color = 'F8F400'
            if avgDamage > 750:
                color = 'B2F800'
            if avgDamage > 1000:
                color = '60FF00'
            if avgDamage > 1500:
                color = '00FF77'
            if avgDamage > 2500:
                color = '02C9B3'
            if avgDamage > 3000:
                color = 'D042F3'
            return '%s<font color="#%s">%s</font>' % (symbol, color, avgDamage)
        else:
            return '%s%s' % (none, avgDamage)

@xvm.export('sign_color', deterministic=False)
def sign_color():
    return panel.total_hp_color

@xvm.export('sign_hp', deterministic=False)
def sign_hp():
    result = panel.teams_totalhp[0] - panel.teams_totalhp[1]
    return result

@xvm.export('sign_hp_color', deterministic=False)
def sign_hp_color():
    result = panel.teams_totalhp[0] - panel.teams_totalhp[1]
    return "<font color='#%s'>%s</font>" % (sign_color(), result) 

 

темплейт(думаю разберешся)

// Основной калибр.
    "high_сaliber": {
      "enabled": true,
      "updateEvent": "PY(ON_UPDATE_HP)",
      "hotKeyCode": 56,
      "onHold": true,
      "visibleOnHotKey": true,
      "x": 321,
      "y": 1,
      "width": 90,
      "height": 30,
      "alpha": 100,
      "align": "center",
      "screenHAlign": "center",
      "antiAliasType": "advanced",
      "shadow": { "enabled": true, "distance": 1, "angle": 90, "color": "0x000000", "alpha": 80, "blur": 5, "strength": 1.5 },
      "textFormat": { "font": "NDO", "size": 17, "color": "0xFFFFFF", "align": "left" },
      "format": "{{battletype!=event_battles?<b>{{py:high_сaliber({{hitlog.dmg-total}})}}</b>}}"
    },
    // Средний урон.
    "avg_damage": {
      "enabled": true,
      "updateEvent": "ON_DAMAGE_CAUSED",
      "hotKeyCode": 56,
      "onHold": true,
      "visibleOnHotKey": false,
      "x": 321,
      "y": 1,
      "width": 90,
      "height": 30,
      "alpha": 100,
      "align": "center",
      "screenHAlign": "center",
      "antiAliasType": "advanced",
      "shadow": { "enabled": true, "distance": 1, "angle": 90, "color": "0x000000", "alpha": 80, "blur": 5, "strength": 1.5 },
      "textFormat": { "font": "NDO", "size": 17, "color": "0xFFFFFF", "align": "left" },
      "format": "{{battletype!=event_battles?<b>{{py:avg_damage({{hitlog.dmg-total}})}}</b>}}"
    },
    // Разница по HP между командами.
    "sign_hp": {
      "enabled": true,
      "updateEvent": "PY(ON_UPDATE_HP)",
      "x": -323,
      "y": 1,
      "width": 90,
      "height": 30,
      "screenHAlign": "center",
      "shadow": { "enabled": true, "distance": 1, "angle": 90, "color": "0x000000", "alpha": 80, "blur": 5, "strength": 1.5 },
      "textFormat": { "font": "NDO", "size": 17, "align": "right" },
      "format": "<b>{{py:sign_hp_color}}</b> <img src='img://gui/maps/icons/achievement/32x32/champion.png' width='26' height='26' vspace='-9'>"
    },

Опять же,можешь сделать наоборот,основной калибр всегда,средний по альту "visibleOnHotKey": true,

Link to comment
Short link
Share on other sites

Там тоже почти самоделка,но там не основной калибр(он по альту),а средний урон и сколько до него осталось(или плюсом) с цветной дифференциацией штанов)))

Вот совмещенный,с разницей по ХП

#####################################################################
# imports

import BigWorld
import xvm_battle.python.fragCorrelationPanel as panel
from CurrentVehicle import g_currentVehicle
from gui.Scaleform.daapi.view.lobby.hangar.Hangar import Hangar
from gui.shared import g_itemsCache
from xfw import *
import traceback

#####################################################################
# constants

actual_arenaUniqueID = None
playerAvgDamage = None
max_hp_enemy = 0

#####################################################################
# handlers

@xvm.export('high_сaliber', deterministic=False)
def high_caliber(dmg_total):
    global actual_arenaUniqueID, max_hp_enemy
    arenaUniqueID = BigWorld.player().arenaUniqueID
    if actual_arenaUniqueID != arenaUniqueID:
        actual_arenaUniqueID = arenaUniqueID
        max_hp_enemy = 0
    if panel.teams_totalhp[1] > max_hp_enemy:
        max_hp_enemy = panel.teams_totalhp[1]
    battletype = BigWorld.player().arena.guiType
    if (battletype != 1) or (max_hp_enemy == 0):
        return
    else:
        symbol = '<img src="img://gui/maps/icons/achievement/32x32/mainGun.png" width="26" height="26" align="middle" vspace="-9">'
        done = '<img src="img://gui/maps/icons/library/done.png" width="20" height="20" align="middle" vspace="-9">'
        threshold = max_hp_enemy * 0.2 if max_hp_enemy > 5000 else 1000
        high_caliber = int(threshold - dmg_total)
        if high_caliber <= 0:
            high_caliber = done
    return '%s%s' % (symbol, high_caliber) if max_hp_enemy >= 1000 else ''

@registerEvent(Hangar, '_Hangar__updateParams')
def Hangar__updateParams(self):
    try:
        global playerAvgDamage
        playerAvgDamage = g_itemsCache.items.getVehicleDossier(g_currentVehicle.item.intCD).getRandomStats().getAvgDamage()
        return playerAvgDamage
    except:
        err(traceback.format_exc())

@xvm.export('avg_damage', deterministic=False)
def avg_damage(dmg_total):
    global playerAvgDamage
    battletype = BigWorld.player().arena.guiType
    if battletype != 1:
        return
    elif playerAvgDamage == None:
        return
    else:
        color = 'FFFFFF'
        symbol = '<img src="img://gui/maps/icons/achievement/32x32/winnerLaurels1.png" width="26" height="26" align="middle" vspace="-9">'
        none = '<img src="img://gui/maps/icons/achievement/32x32/winnerLaurels3.png" width="26" height="26" align="middle" vspace="-9">'
        avgDamage = int(playerAvgDamage - dmg_total)
        if avgDamage <= 0:
            avgDamage = abs(avgDamage)
            if avgDamage > 1:
                color = 'FE7903'
            if avgDamage > 300:
                color = 'FFC103'
            if avgDamage > 500:
                color = 'F8F400'
            if avgDamage > 750:
                color = 'B2F800'
            if avgDamage > 1000:
                color = '60FF00'
            if avgDamage > 1500:
                color = '00FF77'
            if avgDamage > 2500:
                color = '02C9B3'
            if avgDamage > 3000:
                color = 'D042F3'
            return '%s<font color="#%s">%s</font>' % (symbol, color, avgDamage)
        else:
            return '%s%s' % (none, avgDamage)

@xvm.export('sign_color', deterministic=False)
def sign_color():
    return panel.total_hp_color

@xvm.export('sign_hp', deterministic=False)
def sign_hp():
    result = panel.teams_totalhp[0] - panel.teams_totalhp[1]
    return result

@xvm.export('sign_hp_color', deterministic=False)
def sign_hp_color():
    result = panel.teams_totalhp[0] - panel.teams_totalhp[1]
    return "<font color='#%s'>%s</font>" % (sign_color(), result) 

 

темплейт(думаю разберешся)

// Основной калибр.
    "high_сaliber": {
      "enabled": true,
      "updateEvent": "PY(ON_UPDATE_HP)",
      "hotKeyCode": 56,
      "onHold": true,
      "visibleOnHotKey": true,
      "x": 321,
      "y": 1,
      "width": 90,
      "height": 30,
      "alpha": 100,
      "align": "center",
      "screenHAlign": "center",
      "antiAliasType": "advanced",
      "shadow": { "enabled": true, "distance": 1, "angle": 90, "color": "0x000000", "alpha": 80, "blur": 5, "strength": 1.5 },
      "textFormat": { "font": "NDO", "size": 17, "color": "0xFFFFFF", "align": "left" },
      "format": "{{battletype!=event_battles?<b>{{py:high_сaliber({{hitlog.dmg-total}})}}</b>}}"
    },
    // Средний урон.
    "avg_damage": {
      "enabled": true,
      "updateEvent": "ON_DAMAGE_CAUSED",
      "hotKeyCode": 56,
      "onHold": true,
      "visibleOnHotKey": false,
      "x": 321,
      "y": 1,
      "width": 90,
      "height": 30,
      "alpha": 100,
      "align": "center",
      "screenHAlign": "center",
      "antiAliasType": "advanced",
      "shadow": { "enabled": true, "distance": 1, "angle": 90, "color": "0x000000", "alpha": 80, "blur": 5, "strength": 1.5 },
      "textFormat": { "font": "NDO", "size": 17, "color": "0xFFFFFF", "align": "left" },
      "format": "{{battletype!=event_battles?<b>{{py:avg_damage({{hitlog.dmg-total}})}}</b>}}"
    },
    // Разница по HP между командами.
    "sign_hp": {
      "enabled": true,
      "updateEvent": "PY(ON_UPDATE_HP)",
      "x": -323,
      "y": 1,
      "width": 90,
      "height": 30,
      "screenHAlign": "center",
      "shadow": { "enabled": true, "distance": 1, "angle": 90, "color": "0x000000", "alpha": 80, "blur": 5, "strength": 1.5 },
      "textFormat": { "font": "NDO", "size": 17, "align": "right" },
      "format": "<b>{{py:sign_hp_color}}</b> <img src='img://gui/maps/icons/achievement/32x32/champion.png' width='26' height='26' vspace='-9'>"
    },

Опять же,можешь сделать наоборот,основной калибр всегда,средний по альту "visibleOnHotKey": true,

чет не получается даже твой конфиг скачал посмотрел может че косячу ну нет все как у тебя а среднего урона нет. Может влиять на эту ситуацию средний урон и основной калибр по дефолту который идет в xvm. Да к тому же разница хр исчезла цифра только картинка осталась)))

Link to comment
Short link
Share on other sites

чет не получается даже твой конфиг скачал посмотрел может че косячу ну нет все как у тебя а среднего урона нет. Может влиять на эту ситуацию средний урон и основной калибр по дефолту который идет в xvm. Да к тому же разница хр исчезла цифра только картинка осталась)))

А ну так попробуй,вон Рома подсказал,на основе его скрипта и с его помощью совмещал)))Просто у меня клиента нет,дал рабочую версию 9.18,оказывается что то поменяли.

#####################################################################
# imports

import BigWorld
import xvm_battle.python.fragCorrelationPanel as panel
from CurrentVehicle import g_currentVehicle
from gui.Scaleform.daapi.view.lobby.hangar.Hangar import Hangar
from helpers import dependency
from skeletons.gui.shared import IItemsCache
from xfw import *
import traceback

#####################################################################
# constants

actual_arenaUniqueID = None
playerAvgDamage = None
max_hp_enemy = 0

#####################################################################
# handlers

@xvm.export('high_сaliber', deterministic=False)
def high_caliber(dmg_total):
    global actual_arenaUniqueID, max_hp_enemy
    arenaUniqueID = BigWorld.player().arenaUniqueID
    if actual_arenaUniqueID != arenaUniqueID:
        actual_arenaUniqueID = arenaUniqueID
        max_hp_enemy = 0
    if panel.teams_totalhp[1] > max_hp_enemy:
        max_hp_enemy = panel.teams_totalhp[1]
    battletype = BigWorld.player().arena.guiType
    if (battletype != 1) or (max_hp_enemy == 0):
        return
    else:
        symbol = '<img src="img://gui/maps/icons/achievement/32x32/mainGun.png" width="26" height="26" align="middle" vspace="-9">'
        done = '<img src="img://gui/maps/icons/library/done.png" width="20" height="20" align="middle" vspace="-9">'
        threshold = max_hp_enemy * 0.2 if max_hp_enemy > 5000 else 1000
        high_caliber = int(threshold - dmg_total)
        if high_caliber <= 0:
            high_caliber = done
    return '%s%s' % (symbol, high_caliber) if max_hp_enemy >= 1000 else ''

@registerEvent(Hangar, '_Hangar__updateParams')
def Hangar__updateParams(self):
    try:
        global playerAvgDamage
        itemsCache = dependency.instance(IItemsCache)
        playerAvgDamage = itemsCache.items.getVehicleDossier(g_currentVehicle.item.intCD).getRandomStats().getAvgDamage()
        return playerAvgDamage
    except:
        err(traceback.format_exc())

@xvm.export('avg_damage', deterministic=False)
def avg_damage(dmg_total):
    global playerAvgDamage
    battletype = BigWorld.player().arena.guiType
    if battletype != 1:
        return
    elif playerAvgDamage == None:
        return
    else:
        color = 'FFFFFF'
        symbol = '<img src="img://gui/maps/icons/achievement/32x32/winnerLaurels1.png" width="26" height="26" align="middle" vspace="-9">'
        none = '<img src="img://gui/maps/icons/achievement/32x32/winnerLaurels3.png" width="26" height="26" align="middle" vspace="-9">'
        avgDamage = int(playerAvgDamage - dmg_total)
        if avgDamage <= 0:
            avgDamage = abs(avgDamage)
            if avgDamage > 1:
                color = 'FE7903'
            if avgDamage > 300:
                color = 'FFC103'
            if avgDamage > 500:
                color = 'F8F400'
            if avgDamage > 750:
                color = 'B2F800'
            if avgDamage > 1000:
                color = '60FF00'
            if avgDamage > 1500:
                color = '00FF77'
            if avgDamage > 2500:
                color = '02C9B3'
            if avgDamage > 3000:
                color = 'D042F3'
            return '%s<font color="#%s">%s</font>' % (symbol, color, avgDamage)
        else:
            return '%s%s' % (none, avgDamage)

@xvm.export('sign_color', deterministic=False)
def sign_color():
    return panel.total_hp_color

@xvm.export('sign_hp', deterministic=False)
def sign_hp():
    result = panel.teams_totalhp[0] - panel.teams_totalhp[1]
    return result

@xvm.export('sign_hp_color', deterministic=False)
def sign_hp_color():
    result = panel.teams_totalhp[0] - panel.teams_totalhp[1]
    return "<font color='#%s'>%s</font>" % (sign_color(), result) 

И лог обнули хвмовский(да и родной не мешает,хотя он тут наверное не катит),часто помогает ошибки находить.

Link to comment
Short link
Share on other sites

А ну так попробуй,вон Рома подсказал,на основе его скрипта и с его помощью совмещал)))Просто у меня клиента нет,дал рабочую версию 9.18,оказывается что то поменяли.

#####################################################################
# imports

import BigWorld
import xvm_battle.python.fragCorrelationPanel as panel
from CurrentVehicle import g_currentVehicle
from gui.Scaleform.daapi.view.lobby.hangar.Hangar import Hangar
from helpers import dependency
from skeletons.gui.shared import IItemsCache
from xfw import *
import traceback

#####################################################################
# constants

actual_arenaUniqueID = None
playerAvgDamage = None
max_hp_enemy = 0

#####################################################################
# handlers

@xvm.export('high_сaliber', deterministic=False)
def high_caliber(dmg_total):
    global actual_arenaUniqueID, max_hp_enemy
    arenaUniqueID = BigWorld.player().arenaUniqueID
    if actual_arenaUniqueID != arenaUniqueID:
        actual_arenaUniqueID = arenaUniqueID
        max_hp_enemy = 0
    if panel.teams_totalhp[1] > max_hp_enemy:
        max_hp_enemy = panel.teams_totalhp[1]
    battletype = BigWorld.player().arena.guiType
    if (battletype != 1) or (max_hp_enemy == 0):
        return
    else:
        symbol = '<img src="img://gui/maps/icons/achievement/32x32/mainGun.png" width="26" height="26" align="middle" vspace="-9">'
        done = '<img src="img://gui/maps/icons/library/done.png" width="20" height="20" align="middle" vspace="-9">'
        threshold = max_hp_enemy * 0.2 if max_hp_enemy > 5000 else 1000
        high_caliber = int(threshold - dmg_total)
        if high_caliber <= 0:
            high_caliber = done
    return '%s%s' % (symbol, high_caliber) if max_hp_enemy >= 1000 else ''

@registerEvent(Hangar, '_Hangar__updateParams')
def Hangar__updateParams(self):
    try:
        global playerAvgDamage
        itemsCache = dependency.instance(IItemsCache)
        playerAvgDamage = itemsCache.items.getVehicleDossier(g_currentVehicle.item.intCD).getRandomStats().getAvgDamage()
        return playerAvgDamage
    except:
        err(traceback.format_exc())

@xvm.export('avg_damage', deterministic=False)
def avg_damage(dmg_total):
    global playerAvgDamage
    battletype = BigWorld.player().arena.guiType
    if battletype != 1:
        return
    elif playerAvgDamage == None:
        return
    else:
        color = 'FFFFFF'
        symbol = '<img src="img://gui/maps/icons/achievement/32x32/winnerLaurels1.png" width="26" height="26" align="middle" vspace="-9">'
        none = '<img src="img://gui/maps/icons/achievement/32x32/winnerLaurels3.png" width="26" height="26" align="middle" vspace="-9">'
        avgDamage = int(playerAvgDamage - dmg_total)
        if avgDamage <= 0:
            avgDamage = abs(avgDamage)
            if avgDamage > 1:
                color = 'FE7903'
            if avgDamage > 300:
                color = 'FFC103'
            if avgDamage > 500:
                color = 'F8F400'
            if avgDamage > 750:
                color = 'B2F800'
            if avgDamage > 1000:
                color = '60FF00'
            if avgDamage > 1500:
                color = '00FF77'
            if avgDamage > 2500:
                color = '02C9B3'
            if avgDamage > 3000:
                color = 'D042F3'
            return '%s<font color="#%s">%s</font>' % (symbol, color, avgDamage)
        else:
            return '%s%s' % (none, avgDamage)

@xvm.export('sign_color', deterministic=False)
def sign_color():
    return panel.total_hp_color

@xvm.export('sign_hp', deterministic=False)
def sign_hp():
    result = panel.teams_totalhp[0] - panel.teams_totalhp[1]
    return result

@xvm.export('sign_hp_color', deterministic=False)
def sign_hp_color():
    result = panel.teams_totalhp[0] - panel.teams_totalhp[1]
    return "<font color='#%s'>%s</font>" % (sign_color(), result) 

И лог обнули хвмовский(да и родной не мешает,хотя он тут наверное не катит),часто помогает ошибки находить.

есть небольшой прогресс появились цифры разницы хр остальное  без изменений,,,,

Link to comment
Short link
Share on other sites

есть небольшой прогресс появились цифры разницы хр остальное  без изменений,,,,

Тогда к гуру,я хз,тем более проверить не на чем,а в лог что пишет?

Link to comment
Short link
Share on other sites

xvm.log

Перед тем,  как выкладывать лог,  надо выйти из игры. 

 


Еще одна проблема может кто обращал внимание в маркере техники макрос {c:хте} автоматически меняется на макрос{c:wn8}. Почему так происходит? Не связоно ли это с возможностью выбора вида статистики в модпаке "протанков"

Link to comment
Short link
Share on other sites

attachicon.gifxvm.log

 

Еще одна проблема может кто обращал внимание в маркере техники макрос {c:хте} автоматически меняется на макрос{c:wn8}. Почему так происходит? Не связоно ли это с возможностью выбора вида статистики в модпаке "протанков"

Я вообще ошибок не вижу,получается код верный,может у тебя с конфигом конфликт,на чистом не пробовал?

Link to comment
Short link
Share on other sites

Я вообще ошибок не вижу,получается код верный,может у тебя с конфигом конфликт,на чистом не пробовал?

все может быть, на чистом не пробовал, ты свою сборку когда под 0.19. подгонишь заодно и посмотришь у тебя работает или нет)))

Link to comment
Short link
Share on other sites

  • 4 weeks later...

стрелка перевеса по хп картинками. как правильно прописать?

так не работает 

"format": "{{py:math.sub({{py:xvm.total_hp.ally}}, {{py:xvm.total_hp.enemy}})>0?<img src='xvm://res/icons/totalHP/ally_sing.png'>|<img src='xvm://res/icons/totalHP/enemy_sing.png'>}}"
Link to comment
Short link
Share on other sites

 

стрелка перевеса по хп картинками. как правильно прописать?

так не работает 

"format": "{{py:math.sub({{py:xvm.total_hp.ally}}, {{py:xvm.total_hp.enemy}})>0?<img src='xvm://res/icons/totalHP/ally_sing.png'>|<img src='xvm://res/icons/totalHP/enemy_sing.png'>}}"

В логах есть ошибки?

Link to comment
Short link
Share on other sites

Ошибка в файле py_macro\total_hp.py

Дефолтный стоит. релизный. ещё раз перекачал на всякий случай. без изменений.

Edited by Kornet_WA
Link to comment
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...