Jump to content
Korean Random
Kotyarko_O

infoPanel средствами XVM.

Recommended Posts

Я настраивал под свой ноут 1366х768, картинка примерно такая: 

 

Настроил, все как было еще в панели от Dellux

 

Я думал будет как здесь:

oQLYERlDQaU.jpg

Share this post


Link to post

Short link
Share on other sites
Я думал будет как здесь:

Так тоже можно, к вечеру попробую.

@cektop_dv, сделал, получилось так, ну а координаты подгонишь под себя:

post-11459-0-73952000-1483887504_thumb.png

 

'infoPanel.xc'

"formats": [
      "<p align='left'><font face='$FieldFont' size='15'><b>{{vehicle_name}}\n{{gun_reload_equip}} с</b></font></p>",
      "<img src='img://gui/maps/icons/vehicle/{{icon_system_name}}.png'>\n<textformat tabstops='[55,90,125]'><p align='left'><font face='$FieldFont' size='13'><b>Масса:  {{vehicle_weight}}т<tab><tab>Обзор:  {{vision_radius}}м\nКорпус:<tab>{{armor_hull_front}}<tab>{{armor_hull_side}}<tab>{{armor_hull_back}}\nБашня:<tab>{{armor_turret_front}}<tab>{{armor_turret_side}}<tab>{{armor_turret_back}}\nТип:<tab>{{shell_type_1}}<tab>{{shell_type_2}}<tab>{{shell_type_3}}\nПробитие:<tab>{{shell_power_1}}<tab>{{shell_power_2}}<tab>{{shell_power_3}}\nУрон:<tab>{{shell_damage_1}}<tab>{{shell_damage_2}}<tab>{{shell_damage_3}}</font></p></textformat>"
    ]

'battleLabelsTemplates.xc'

"infoPanel0": {
      "enabled": true,
      "updateEvent": "PY(ON_INFO_PANEL)",
      "x": -200,
      "y": 100,
      "width": 250,
      "height": 250,
      "align": "left",
      "valign": "center",
      "screenHAlign": "center",
      "screenVAlign": "center",
      "shadow": { "enabled": true, "distance": 0, "angle": 45, "color": "0x000000", "alpha": 80, "blur": 5, "strength": 4 },
      "textFormat": { "font": "$FieldFont", "size": 14, "color": "0xFCFCFC", "align": "center"},
      "format": "{{py:infoPanelFormat(0)}}"
    },
    "infoPanel1": {
      "enabled": true,
      "updateEvent": "PY(ON_INFO_PANEL)",
      "x": -200,
      "y": 140,
      "width": 250,
      "height": 250,
      "align": "left",
      "valign": "center",
      "screenHAlign": "center",
      "screenVAlign": "center",
      "shadow": { "enabled": true, "distance": 0, "angle": 45, "color": "0x000000", "alpha": 80, "blur": 5, "strength": 4 },
      "textFormat": { "font": "$FieldFont", "size": 14, "color": "0xFCFCFC", "align": "left"},
      "format": "{{py:infoPanelFormat(1)}}"
    }

'battleLabels.xc'

${ "battleLabelsTemplates.xc":"def.infoPanel0" },
${ "battleLabelsTemplates.xc":"def.infoPanel1" }

Edited by refaol
  • Upvote 2

Share this post


Link to post

Short link
Share on other sites

Решил поделиться, мало ли кому пригодиться.

Путем проб и ошибок получилось реализовать сравнение масс техники и окрашивание в различные цвета при большем, меньшем или равном значении.

post-30084-0-30508700-1484208766_thumb.png

Для этого пришлось немного изменить/дополнить файлы info_panel_data.py и infoPanel.py а имменно:

 * был добавлен новый макрос {{self_vehicle_weight}} возвращающий массу собственной техники.

 * был добавлена возможность вызывать "макросы" {{gun_clip}}, {{vehicle_weight}}, {{self_vehicle_weight}} как обычные макросы {{py:gun_clip}}, {{py:vehicle_weight}}, {{py:self_vehicle_weight}} со всеми вытекающими.

 

Все измененные файлы в прикрепленном архиве.

 

PPS. diff'ки изменений:

'info_panel_data.py.diff'

--- info_panel_data.py
+++ info_panel_data.py
@@ -3,0 +4 @@
+from BigWorld import player
@@ -246,0 +248,3 @@
+
+def self_vehicle_weight():
+ return "%i" % (round(player().getVehicleAttached().typeDescriptor.physics['weight'] / 1000, 1))
\ No newline at end of file

'infoPanel.py.diff'

--- infoPanel.py
+++ infoPanel.py
@@ -22 +22 @@
- '{{invis_move_shot}}', '{{vision_radius}}', '{{radio_name}}', '{{radio_radius}}'
+ '{{invis_move_shot}}', '{{vision_radius}}', '{{radio_name}}', '{{radio_radius}}', '{{self_vehicle_weight}}'
@@ -110,0 +111,12 @@
+
[email protected]('gun_clip', deterministic=False)
+def gun_clip():
+ return info_panel_data.gun_clip()
+
[email protected]('vehicle_weight', deterministic=False)
+def vehicle_weight():
+ return info_panel_data.vehicle_weight()
+
[email protected]('self_vehicle_weight', deterministic=False)
+def self_vehicle_weight():
+ return info_panel_data.self_vehicle_weight()

 

infoPanel.zip

  • Upvote 4

Share this post


Link to post

Short link
Share on other sites

@xenus, а как тогда вызвать вот такую строку:

{{self_vehicle_weight}} [знак] {{vehicle_weight}}, причём если 1 > 2, то цвет зелёный, если 1 < 2, то цвет жёлтый, если примерно равны (1 = 2), то белый

?
Я просто не слишком силён в py, а тут ещё и не я сам кодил, так что разобраться тяжеловато .

Share this post


Link to post

Short link
Share on other sites

@xenus, а как тогда вызвать вот такую строку:

{{self_vehicle_weight}} [знак] {{vehicle_weight}}, причём если 1 > 2, то цвет зелёный, если 1 < 2, то цвет жёлтый, если примерно равны (1 = 2), то белый

?

Я просто не слишком силён в py, а тут ещё и не я сам кодил, так что разобраться тяжеловато .

Можно использовать строку такого вида:

<font color={{py:self_vehicle_weight={{py:vehicle_weight}}?'#F0F0F0'|{{py:self_vehicle_weight>{{py:vehicle_weight}}?'#00FF00'|'#FFFF00'}}}}>{{self_vehicle_weight}} {{py:self_vehicle_weight={{py:vehicle_weight}}?=|{{py:self_vehicle_weight>{{py:vehicle_weight}}?>|<}}}} {{vehicle_weight}}</font>

В игре это будет выглядеть так:

post-30084-0-60089600-1484216622_thumb.jpgpost-30084-0-50899600-1484216623_thumb.jpgpost-30084-0-36838400-1484216624_thumb.jpg

Share this post


Link to post

Short link
Share on other sites

Можно использовать строку такого вида:

<font color={{py:self_vehicle_weight={{py:vehicle_weight}}?'#F0F0F0'|{{py:self_vehicle_weight>{{py:vehicle_weight}}?'#00FF00'|'#FFFF00'}}}}>{{self_vehicle_weight}} {{py:self_vehicle_weight={{py:vehicle_weight}}?=|{{py:self_vehicle_weight>{{py:vehicle_weight}}?>|<}}}} {{vehicle_weight}}</font>
В игре это будет выглядеть так:

щорт, шикосик !

Дома скачаю скрипт и пошаманю в конфиге, спасибо огромное !

Edited by Tornado_Odan_Rot

Share this post


Link to post

Short link
Share on other sites
В скринах не нашел никакого отличия .

Правее от прицела смотри.

Edited by Kotyarko_O

Share this post


Link to post

Short link
Share on other sites

Правее от прицела смотри.

я в телефоне не туда глянул ._.

Я исправился, не пали меня )

Share this post


Link to post

Short link
Share on other sites

можно ли как-то  прикрепить 

{{gun_reload_equip}}

к маркерам техники?

Теоретически, можно.

Share this post


Link to post

Short link
Share on other sites

Теоретически, можно.

Будет очень удобно если подскажете как это сделать.

Share this post


Link to post

Short link
Share on other sites

Is this error InfoPanel related?

2017-01-15 19:02:56.607: ERROR: [EXCEPTION] (scripts/common/Event.py, 46):
Traceback (most recent call last):
  File "scripts/common/Event.py", line 44, in __call__
  File "res_mods/configs/xvm/py_macro\infoPanel.py", line 90, in targetFocus
    InfoPanel.update(entity)
  File "res_mods/configs/xvm/py_macro\infoPanel.py", line 76, in update
    info_panel_data.init(vehicle)
  File "C:\World_of_Tanks\res_mods\mods/../configs/xvm/py_macro\info_panel_data.py", line 17, in init
    _typeDescriptor = vehicle.typeDescriptor
  File "scripts/client/svarog_script/py_component_system.py", line 74, in __getattr__
AttributeError: 'Svarog.ComponentSystem' object has no attribute 'typeDescriptor'

Share this post


Link to post

Short link
Share on other sites

 

 

Is this error InfoPanel related?
Yes. Is`nt critical. I`ll try to fix it in the next update.

Share this post


Link to post

Short link
Share on other sites

Подскажите, а диапазон урона возможно выводить ?  Например 600-910, а не просто среднее значение.

Share this post


Link to post

Short link
Share on other sites

Kotyarko_O

добавь пожалуйста возможность сравнения масс как в посте xenus, а так же возможность перемещение панели мышкой, как сделано в damagelog-e (по умолчанию можно отключить, что бы народ случайно её не двигал)

В дефолт можно несколько вариантов в battleLabelsTemplates.xc добавить, на то он Templates, по умолчанию выключить, кому нужно тот включит. 

Share this post


Link to post

Short link
Share on other sites

Подскажите, а диапазон урона возможно выводить ?  Например 600-910, а не просто среднее значение.

Возможно. Пример:

{{py:math.mul({{shell_damage_1}}, 0.75)%d}}-{{py:math.mul({{shell_damage_1}}, 1.25)%d}}

 

 

добавь пожалуйста возможность сравнения масс
Будет, позже.

 

 

 

а так же возможность перемещение панели мышкой, как сделано в damagelog-e (по умолчанию можно отключить, что бы народ случайно её не двигал)
Я особо за темой дамаглога не слежу, но видел пару постов о том, что есть какие-то проблемы с "двигалкой". Так что подробности уже буду выяснять по ходу реализации этого здесь, а по результатам буду решать, вводить или нет.
  • Upvote 5

Share this post


Link to post

Short link
Share on other sites

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

Только плиз не в ультимативной форме, а с возможностью опции двигать или нет.

Share this post


Link to post

Short link
Share on other sites

Решил поделиться, мало ли кому пригодиться.

Путем проб и ошибок получилось реализовать сравнение масс техники и окрашивание в различные цвета при большем, меньшем или равном значении.

attachicon.gifБезымянный0.png

Для этого пришлось немного изменить/дополнить файлы info_panel_data.py и infoPanel.py а имменно:

 * был добавлен новый макрос {{self_vehicle_weight}} возвращающий массу собственной техники.

 * был добавлена возможность вызывать "макросы" {{gun_clip}}, {{vehicle_weight}}, {{self_vehicle_weight}} как обычные макросы {{py:gun_clip}}, {{py:vehicle_weight}}, {{py:self_vehicle_weight}} со всеми вытекающими.

 

Все измененные файлы в прикрепленном архиве.

 

PPS. diff'ки изменений:

'info_panel_data.py.diff'

--- info_panel_data.py

+++ info_panel_data.py

@@ -3,0 +4 @@

+from BigWorld import player

@@ -246,0 +248,3 @@

+

+def self_vehicle_weight():

+ return "%i" % (round(player().getVehicleAttached().typeDescriptor.physics['weight'] / 1000, 1))

\ No newline at end of file

'infoPanel.py.diff'

--- infoPanel.py

+++ infoPanel.py

@@ -22 +22 @@

- '{{invis_move_shot}}', '{{vision_radius}}', '{{radio_name}}', '{{radio_radius}}'

+ '{{invis_move_shot}}', '{{vision_radius}}', '{{radio_name}}', '{{radio_radius}}', '{{self_vehicle_weight}}'

@@ -110,0 +111,12 @@

+

[email protected]('gun_clip', deterministic=False)

+def gun_clip():

+ return info_panel_data.gun_clip()

+

[email protected]('vehicle_weight', deterministic=False)

+def vehicle_weight():

+ return info_panel_data.vehicle_weight()

+

[email protected]('self_vehicle_weight', deterministic=False)

+def self_vehicle_weight():

+ return info_panel_data.self_vehicle_weight()

У тебя в третьем столбике пробитие дублируется,

Share this post


Link to post

Short link
Share on other sites

всем привет подскажите это только у меня дублируется кс на фугасах выделил касным  конфиг стандартный 


разобрался  ошибка у автора в шапке в архиве поправить бы)

post-28999-0-33086700-1488061637_thumb.jpg

python.log

xvm.log

xvm.log

  • Upvote 1

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...