Yozki Posted May 29, 2016 Share Posted May 29, 2016 (edited) В актуальном дефолтном конфиге любопытный эффект. в разделе "def":{ определяются шаблончики. Затем в разделе "textFields": { эти шаблончики вызываются как переменные, вот вместо такой хрени: ${ "def.playerSkillBar" } должен возникать текст из раздела "def":{И он возникает, но почему-то не весь. К примеру, в этом конфиге маркеров над танчиками прогрессбар с опасностью игрока прорисовывается, а винратио через обращение ${ "def.winsRatio" }, не прорисовывается.и xmqpEvent я ни разу не видал пока. наверное не влазиет более четырёх полей. Если же внтури раздела "textFields" разместить на этом месте копипасту из раздела "def":{, то есть сождержимое объекта winsRatio, то строчка с килобоями и прочей байдой тут как тут. Как будто не хватает буфера какого-то или что ему ещё не нравится. Не впиховывается. { // Definitions "def": { "damageText": { ..почикано}, "tankName": { ..почикано }, "playerName": { ..почикано }, "tankHp": { //почикано }, // Текстовое поле со шкалой опасности игрока - цветной прямоугольничек-прогрессбар и проц побед на текущем танке ######################### "playerSkillBar": { "name": "Player skill", "visible": true, "x": 0, "y": -11, "alpha": "90", "color": "{{c:t-rating}}", "font": {"name": "$FieldFont","size": 10,"align": "center","bold": false,"italic": false}, "shadow": {"alpha": 30,"color": null,"angle": 90,"distance": 0,"size": 6,"strength": 200}, "format": "<img src='xvm://res/icons/skill/{{c:wn8}}.png' height='5'>{{t-rating%.0d%%}}" }, // Текстовое поле с килобоями, статой и процентом побед на текущем танке # "winsRatio": { "name": "wins Ratio", "visible": true, "x": 0,"y": -46,"alpha": 100, "color": "{{c:rating}}", "font": {"name": "$FieldFont","size": 11,"align": "center","bold": true,"italic": false}, "shadow": { "alpha": 100,"color": "0x000000", "angle": 45, "distance": 0,"size": 6,"strength": 200 }, "format": "<font color='{{c:kb}}'>{{kb%2d~k|--k}}</font> <font color='{{c:wn8}}'>{{wn8%4d|--}}</font> <font color='{{c:t-rating}}'>({{t-rating%2d~%}})</font>" }, // Текстовое поле с маркером события XMQP. "xmqpEvent": { ..почикано } }, //################################################## // Настройки для союзников. "ally": { ..почикано "textFields": [ ${ "def.tankName" }, ${ "def.playerName" }, ${ "def.tankHp" }, ${ "def.playerSkillBar" }, ${ "def.winsRatio" }, ${ "def.xmqpEvent" } ] }, Видимо, та же проблема происходит и в mimimap Circlesвот такая конструкция не работает "vRange": { "enabled": true, "thickness": 0.5, "alpha": 70, "color": "0x0000ff" }, "circles": { ...почикано "special": [ // Пример: Круг дальности стрельбы арты { "ussr-SU-18": {"$ref": { "path": "vRange" }, "distance": 260 } }, а вот такая работает "circles": { ...почикано "special": [ // Пример: Круг дальности стрельбы арты { "ussr-SU-18": {"enabled": true, "thickness": 0.5, "alpha": 70, "color": "0x0000ff", "distance": 260 } }, Это я поставил ночной билд от 28 Мая 2016 и пыжусь приколотить к нему свои старые конфиговые наработки. markersAliveNormal.xc Edited May 29, 2016 by Yozki @ Quote Link to comment Short link Share on other sites More sharing options...
sirmax Posted May 29, 2016 Share Posted May 29, 2016 По идее должно работать, надо смотреть на полном конфиге, скорей всего где-то ошибка. Хотя тут лучше всего могут помочь опытные конфигоделы, возможно есть какие-то нюансы. @ Quote Link to comment Short link Share on other sites More sharing options...
Yozki Posted May 29, 2016 Author Share Posted May 29, 2016 когда же ликвидировал через закомментирование поля из блока textFields, получил текст со статой. Подложка с процентовкой HP у союзников по ходу, стандартная из клиента. Вероятно, стоит убрать все маркеры над техникой из настроек клиента все поля. Их в следующий запуск уберу. Неясно, отчего не возникло имени игрока от XVM, хотя блочок playerName в текстовых полях стоит и у союзников и у противников. код такой (блок HP отключен): // Блок текстовых полей. "textFields": [ ${ "def.tankName" }, ${ "def.playerName" }, ${ "def.winsRatio" } //${ "def.tankHp" } //, //${ "def.playerSkillBar" }, //${ "def.xmqpEvent" } ] у противника такой: "textFields": [ ${ "def.tankName" }, ${ "def.playerName" }, ${ "def.tankHp" }, ${ "def.winsRatio" }, ${ "def.playerSkillBar" } ] обнаружено, в блоке имени игрока есть запинашка, об которую парсер спотыкнулся: "format": "<font size='{{battletype?13|{{squad?13|0}}}}'>{{name}}</font>" {{battletype?13|{{squad?13|0}}}} не определён ранее в коде. Ищу где он определяется. Сэр Макс верно заметил что следует рыть конфиг целиком.Рою. @ Quote Link to comment Short link Share on other sites More sharing options...
demon2597 Posted May 29, 2016 Share Posted May 29, 2016 (edited) {{battletype?13|{{squad?13|0}}}} не определён ранее в коде. Ищу где он определяется battletype определяется в texts.xc. для каких типов боев там значения заданы, в таких ники отображаться и будут, для каких не заданы- не будут Edited May 29, 2016 by demon2597 @ Quote Link to comment Short link Share on other sites More sharing options...
Yozki Posted May 31, 2016 Author Share Posted May 31, 2016 (edited) Обновил texts.xc и ещё целый ряд файлов. Всё стало выглядеть работающим. Ковырнул круги артиллерийской дальнобойности. Там тоже работает переменная. всё ок. Edited May 31, 2016 by Yozki @ Quote Link to comment Short link Share on other sites More sharing options...
Yozki Posted June 1, 2016 Author Share Posted June 1, 2016 Нужно внести в дефолтный код "minimapCircles.xc" две правки: в начале файла: /** * Minimap circles. Only real map meters. Only for own unit. * Круги на миникарте. Дистанция только в реальных метрах карты. Только для своей техники. */ { // ------------------------------------------------------------------------------------------------ //specCircles это предопределённое форматирование для специальных кругов. //(если требуется много одинакового цвета\толщины кругов для множества разных танков, это сократит код) //specCircles is predefined format for special circles //(if You will define special circles for many vehicles, it will shortens the code) "specCircles": { "enabled": true, "thickness": 0.5, "alpha": 80, "color": "0x0000FF" }, ....в конец файла - развёрнутую секцию: // ------------------------------------------------------------------------------------------------ // Special circles, depending on current vehicle type. // Many configuration lines for the same vehicle make many circles. // See other vehicle types at (colon symbol ":" must be replaced with mius "-" ) // vehicle names can be found in file from game folder: res_mods\cmp\mods\packages\xvm_main\python\vehinfo_short.py // Специальные круги, зависящие от модели техники. // Несколько строк для одной техники делают несколько кругов. // Названия танков для дополнения брать из папки: res_mods\cmp\mods\packages\xvm_main\python\vehinfo_short.py //(символ двоеточия : заменяется на минус -) "special": [ // Example: Artillery gun fire range circle // Пример: Круг дальности стрельбы арты // "enabled": false - выключен; "thickness" - толщина; "alpha" - прозрачность; "color" - цвет. { "ussr-SU-18": {"$ref": { "path": "specCircles" }, "distance": 500 }}, // { "ussr-SU-26": {"$ref": { "path": "specCircles" }, "distance": 1217 }}, { "ussr-SU-5": {"$ref": { "path": "specCircles" }, "distance": 601 }} //, // { "ussr-R100_SU122A": {"$ref": { "path": "specCircles" }, "distance": 1200 }}, 1200 is _Really_ far distance for most maps // { "ussr-SU-8": {"$ref": { "path": "specCircles" }, "distance": 1379 }}, //so comment out far dictances // { "ussr-S-51": {"$ref": { "path": "specCircles" }, "distance": 1263 }}, // { "ussr-SU14_1": {"$ref": { "path": "specCircles" }, "distance": 1263 }}, // { "ussr-SU-14": {"$ref": { "path": "specCircles" }, "distance": 1263 }}, // { "ussr-R51_Object_212":{"$ref": { "path": "specCircles" }, "distance": 1469 }}, // { "ussr-Object_261": {"enabled": true, "thickness": 0.5, "alpha": 70, "color": "0x00ffff", "distance": 1469}} ] В текущем оригинале ссылка на гуглькод не работает, секция не всем ясно откомментирована.Хочется также сократить вызов переменной specCircles, чтобы получить нечто типа {{specCircles}} вместо громоздкого "$ref": { "path": "specCircles" } и так по всему конфигу хочется.Тяжкий для любителя PHP синтаксис, даже после Перла то и дело рыдаю над кодом.Это же {{многофигурноскобочноеобъектно.oриентированно:"кавычечное"}} царство - какое-то наследство Питона, да? @ Quote Link to comment Short link Share on other sites More sharing options...
Recommended Posts
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.