0kosmo Posted October 4, 2016 Share Posted October 4, 2016 В экстраполе ячейки карусели выводится процент побед с двумя знаками после запятой { "enabled": true, "x": 22, "y": 17, "format": "<font face='$FieldFont' size='12' color='{{v.c_winrate|#CFCFCF}}'>{{v.winrate%4.02f~%| }}</font>", "shadow": ${ "default/carouselNormal.xc":"def.textFieldShadow" } }, До 0.9.16 было без проблем, сейчас на танке с 199 побед из 385 боев выводит 51,6899999999999999% Link to comment Short link Share on other sites More sharing options...
sasha_1_nm_ru Posted October 5, 2016 Share Posted October 5, 2016 Подтверждаю. Такая же ситуация... Link to comment Short link Share on other sites More sharing options...
Wilem82 Posted October 5, 2016 Share Posted October 5, 2016 Да, в новой версии xvm оно сломалось: {{v.winrate%3.02f}}% 44.68999999999999999% Link to comment Short link Share on other sites More sharing options...
tricsi Posted October 5, 2016 Share Posted October 5, 2016 (edited) Да, в новой версии xvm оно сломалось: {{v.winrate%3.02f}}% 44.68999999999999999% в xvm вроде ничего не ломалось... может такой релиз запилила картоха, на тестовых клиентах, что на первом , что на втором, всё нормально было как временное решение вместо 2, поставьте 1 {{v.winrate%3.01f}}% Edited October 5, 2016 by tricsi Link to comment Short link Share on other sites More sharing options...
demon2597 Posted October 5, 2016 Share Posted October 5, 2016 (edited) в xvm вроде ничего не ломалось... может такой релиз запилила картоха, на тестовых клиентах, что на первом , что на втором, всё нормально было картоха при чем, когда речь о форматировании макроса xvm? написано 2- должно округляться до двух цифр. кстати, что за ноль после точки? по идее должно быть {{v.winrate%3.2f}}% Edited October 5, 2016 by demon2597 Link to comment Short link Share on other sites More sharing options...
0kosmo Posted October 5, 2016 Author Share Posted October 5, 2016 кстати, что за ноль после точки? по идее должно быть {{v.winrate%3.2f}}% Скорее всего как и у меня - на основании файла readme-ru.txt в котором приведен пример форматирования {{kb%4.01f~k|----}} - ширина 4 символа, обязательно 1 символ после запятой, выравнивание вправо если kb==null, будет отображаться "----" Link to comment Short link Share on other sites More sharing options...
tricsi Posted October 5, 2016 Share Posted October 5, 2016 (edited) картоха при чем, когда речь о форматировании макроса xvm? написано 2- должно округляться до двух цифр. а получается всё при том же.. рассказываю СТ1 и СТ2...последний запуск теста, вечер перед релизом, всё нормально при такой записи "format": "<font color='{{v.c_winrate}}' size='14'><b>{{v.winrate%.02f}}%<b></font>", "alpha": "{{v.winrate?100|0}}" }, как и положено хх,хх... округляется до двух первый же запуск релиза клиента и получаем проверяем дальше...установлен билд nb 6536 ( ночник СТ2 ещё до всех фиксов и тд..) получаем какой косяк, либо косяки в клиенте, я не знаю, но макросы вроде не изменились и не менялись.. поэтому и оставил одну десятку такие дела пысы Дим, и как ты заметил на скрине, у меня выборочно не форматирует..знать бы какой файл клиента за это отвечает, я бы от тестового подсунул..для проверки Edited October 5, 2016 by tricsi Link to comment Short link Share on other sites More sharing options...
demon2597 Posted October 5, 2016 Share Posted October 5, 2016 (edited) на основании файла readme-ru.txt в котором приведен пример форматирования {{kb%4.01f~k|----}} - ширина 4 символа, обязательно 1 символ после запятой, выравнивание вправо если kb==null, будет отображаться "----" это не совсем корректный пример, если немного подумать головой. в той же доке в расшифровке значений формата написано, что prec - количество знаков после запятой для дробных чисел. у тебя какое количество знаков? 2? ну вот и надо писать 2, а не 02. фактически может ни на что и не влияет, не знаю, но будет правильнее. в конце концов 0002- это ведь тоже два, почему бы тогда так не писать:) @tricsi, это всё понятно, но картоха все-таки тут не виновата, даже если у них что-то поменялось, что мешает нормально работать форматированию макроса xvm, то это не их проблема, а проблема xvm, это ведь xvm надо адаптировать под картоху, а не наоборот:) поэтому в xvm вроде ничего не ломалось... сломалось-то как раз в xvm, даже если там ничего не менялось, но раз перестало адекватно работать с картохиными изменениями- это и есть сломалось Дим, и как ты заметил на скрине, у меня выборочно не форматирует..знать бы какой файл клиента за это отвечает, я бы от тестового подсунул..для проверки на всех скринах, что встречались вижу только, что не округляет когда дробная часть имеет период, а больше х.з., надо чтобы Макс смотрел поэтому и оставил одну десятку а один знак у тебя как раз не зацепляет период, поэтому округление срабатывает Edited October 5, 2016 by demon2597 2 @ Link to comment Short link Share on other sites More sharing options...
0kosmo Posted October 5, 2016 Author Share Posted October 5, 2016 это не совсем корректный пример, если немного подумать головой. в той же доке в расшифровке значений формата написано, что prec - количество знаков после запятой для дробных чисел. у тебя какое количество знаков? 2? ну вот и надо писать 2, а не 02. фактически может ни на что и не влияет, не знаю, но будет правильнее. в конце концов 0002- это ведь тоже два, почему бы тогда так не писать:) Ну уж какой пример был тот и использовался. Плюс многим известное: работает - не трогай. Link to comment Short link Share on other sites More sharing options...
tricsi Posted October 5, 2016 Share Posted October 5, 2016 Дим, про знаки...не трогал и не лазил со времён "царя гороха"...работает и работает. а вот что вдруг, проработав более двух лет, в том числе и на тесте 9.16...на релизе оного, перестало, да ещё так выборочно...всем форматирует, а американца Т32 не может (только он такой), наводит на смутные подозрения.. Link to comment Short link Share on other sites More sharing options...
Tapx Posted October 5, 2016 Share Posted October 5, 2016 Дим, про знаки...не трогал и не лазил со времён "царя гороха"...работает и работает. а вот что вдруг, проработав более двух лет, в том числе и на тесте 9.16...на релизе оного, перестало, да ещё так выборочно...всем форматирует, а американца Т32 не может (только он такой), наводит на смутные подозрения.. Всё же Демон прав,у меня тоже не работает когда получается в периоде. Тут не Т32 виноват, уж точно. Link to comment Short link Share on other sites More sharing options...
Wilem82 Posted October 5, 2016 Share Posted October 5, 2016 кстати, что за ноль после точки? по идее должно быть {{v.winrate%3.2f}}% Заполнение нулями. Например, не 42.5% а 42.05%. Это стандартная фича ещё из сишных библиотек (собственно, printf на который ссылается readme). 1 @ Link to comment Short link Share on other sites More sharing options...
sirmax Posted October 5, 2016 Share Posted October 5, 2016 картоха при чем, когда речь о форматировании макроса xvm? написано 2- должно округляться до двух цифр. кстати, что за ноль после точки? по идее должно быть {{v.winrate%3.2f}}% 02 означает, что дробная часть обязательно, без 0 целые числа будут без дробной части отображаться, так что с форматом тут все правильно. Да, в новой версии xvm оно сломалось: {{v.winrate%3.02f}}% 44.68999999999999999% Это на всех танках, или только на некоторых? А то у меня вроде все нормально, может просто нет таких. Воспроизвел Link to comment Short link Share on other sites More sharing options...
Wilem82 Posted October 5, 2016 Share Posted October 5, 2016 Это на всех танках, или только на некоторых? А то у меня вроде все нормально, может просто нет таких. На T57 Heavy Tank. Но у меня танков крайне мало, и на тех что есть видимо результат не в периоде. Link to comment Short link Share on other sites More sharing options...
sirmax Posted October 5, 2016 Share Posted October 5, 2016 (edited) Исправил. не в периоде "в периоде" - это не правильное определение в данном случае, тут стандартная проблема чисел с плавающей запятой из-за ограничения разрядности мантиссы. Возможно, до этого релиза float представлялся в виде double, и мантиссы хватало, а теперь переделали на честный четырехбайтовый float, и ее стало не хватать. Хотя может и другая причина, не хочу глубоко копать. По идее float должно хватать - у него в мантиссе хранится более 7 знаков. Edited October 5, 2016 by sirmax 1 @ Link to comment Short link Share on other sites More sharing options...
demon2597 Posted October 5, 2016 Share Posted October 5, 2016 02 означает, что дробная часть обязательно, без 0 целые числа будут без дробной части отображаться ага, теперь понятно, спасибо Link to comment Short link Share on other sites More sharing options...
tricsi Posted October 6, 2016 Share Posted October 6, 2016 Исправил... По идее float должно хватать - у него в мантиссе хранится более 7 знаков. спасибо у меня исправилось nb 6575 Link to comment Short link Share on other sites More sharing options...
0kosmo Posted October 6, 2016 Author Share Posted October 6, 2016 6575 отображение корректно Link to comment Short link Share on other sites More sharing options...
Recommended Posts