Kaeptn 24 #410678 Posted November 6, 2017 (edited) 2 часа назад, ktulho сказал: Added macro: can we get index 0 = return shortest duration? needed to make it work in shadow / textformat. my code is this "shadow": { "enabled": true, "distance": 0, "angle": 0, "color": "0x{{py:bst.leftTimeMin(1)<10?b31c00|0694F5}}", "alpha": 70, "blur": 4, "strength": 2 }, "textFormat": { "color": "0x{{py:bst.leftTimeMin(1)<10?ff2800|A3F5FE}}", "size": 12}, but i would like to change color / shadow as soon as any buff goes below 10 minutes. push! Edited November 6, 2017 by Kaeptn Quote Share this post Link to post Short link Share on other sites
ktulho 5,790 #410686 Posted November 6, 2017 50 минут назад, Kaeptn сказал: can we get index 0 = return shortest duration? needed to make it work in shadow / textformat. Добавил: Если значение index не задано, то возвращается значения для резерва, время действия которого наименьшее. Если значение index не задано, то возвращается значения для резерва, время действия которого наименьшее. В 04.11.2017 в 20:06, Kaeptn сказал: can we also have clan boost display vie this script? Я не состою в клане, поэтому мне проблематично это сделать. Quote Share this post Link to post Short link Share on other sites
Kaeptn 24 #410687 Posted November 6, 2017 (edited) 26 минут назад, ktulho сказал: Добавил: Если значение index не задано, то возвращается значения для резерва, время действия которого наименьшее. Я ослик 26 минут назад, ktulho сказал: Я не состою в клане, поэтому мне проблематично это сделать. i'm sure someone can help with that another stupid question: how to normalise {{py:bst.leftTimeMin(1)}} to a 2-digit scale? {{py:bst.leftTimeMin(1):99}} doesn't work for me. Edited November 6, 2017 by Kaeptn Quote Share this post Link to post Short link Share on other sites
Slava7572 1,685 #410696 Posted November 6, 2017 2 часа назад, ktulho сказал: Я не состою в клане, поэтому мне проблематично это сделать. Жаль,если бы еще клановые плюшки показывало,вечно забывал про них,их просто не видно пока укреп не откроешь. Quote Share this post Link to post Short link Share on other sites
steaxch 356 #410793 Posted November 7, 2017 офтоп маленький по форматированию допустим у меня идет выравнивание текста по левому краю, а последний блок нужно по правому, для наглядности: "textFormat": {"align": "left", бла-бла-бла}, "format": "<textformat tabstops='[32, 81, 102]' влево <tab> влево <tab> влево <tab> нужно вправо </textformat> попробовал по разному - никак. реально или нет? Quote Share this post Link to post Short link Share on other sites
ktulho 5,790 #410794 Posted November 7, 2017 3 минуты назад, steaxch сказал: реально или нет? Если это текст, то с помощью форматирования. Только надо использовать моноширинный шрифт. Quote Share this post Link to post Short link Share on other sites
steaxch 356 #410795 Posted November 7, 2017 11 минуту назад, ktulho сказал: Если это текст, то с помощью форматирования. Только надо использовать моноширинный шрифт. там значение макроса, конкретно {{mystat.winrate%.2f~}} Quote Share this post Link to post Short link Share on other sites
ktulho 5,790 #410796 Posted November 7, 2017 Попробуй {{mystat.winrate%5.2f~}}. Вместо 5 подбери нужное количество символов. Quote Share this post Link to post Short link Share on other sites
Kaeptn 24 #410806 Posted November 7, 2017 23 часа назад, Kaeptn сказал: another stupid question: how to normalise {{py: bst.leftTimeMin (1)}} to a 2-digit scale? {{py: bst.leftTimeMin (1): 99}} does not work for me. Quote Share this post Link to post Short link Share on other sites
ktulho 5,790 #410808 Posted November 7, 2017 @Kaeptn нормализация не работает. Quote Share this post Link to post Short link Share on other sites
Kaeptn 24 #410813 Posted November 7, 2017 can you make it work? i want to greate a progress bar with dynamic. 1 Quote Share this post Link to post Short link Share on other sites
steaxch 356 #410852 Posted November 7, 2017 (edited) 5 часов назад, ktulho сказал: @Kaeptn нормализация не работает. ktulho, а можешь такой формат прикрутить ч:мин (1:15 0:45 0:08) ? я извернулся сделал через макросы {{py:bst.leftTimeMin(1)>59?1:{{py:sub({{py:bst.leftTimeMin(1)}}, 60)}}|{{py:bst.leftTimeMin(1)<10?0:0{{py:bst.leftTimeMin(1)}}|0:{{py:bst.leftTimeMin(1)}}}}}} пришлось еще через альфу убирать 1: 0: 0:0 когда резервы не активированы НО, самое главное, в логи ошибки py:sub поперли если активировано меньше 3-х резервов SyntaxError: invalid syntax arg='sub(, 60)' 2017-11-07 20:20:35: [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 144, in get_function args = ast.literal_eval(args_string) File "scripts/common/Lib/ast.py", line 49, in literal_eval File "scripts/common/Lib/ast.py", line 37, in parse File "<unknown>", line 1 (, 60) ^ Edited November 7, 2017 by steaxch 1 Quote Share this post Link to post Short link Share on other sites
Kaeptn 24 #410874 Posted November 8, 2017 13 часа назад, ktulho сказал: @Kaeptn normalization does not work. well, i got it working (sort of) circular timer ring, works with all buffs up to 120 minutes. <textformat leading='-35'><font size='35' face='dynamic'>{{py:abs({{py:div({{py:mul({{py:bst.leftTimeMin(2)}}, 99)}}, 120)}})%.335a}}</font><tab>{{py:bst.leftTime(2)}}<br><tab>{{py:bst.name(2)}}</textformat> ...but it would be better to have a macro that gives out a normalized value for time Quote Share this post Link to post Short link Share on other sites
steaxch 356 #410894 Posted November 8, 2017 23 часа назад, ktulho сказал: ktulho глянь опытным глазом правильно я макрос {{py:bst.leftTimeHrMin(index)}} запилил чтобы такой формат выводить часы : минуты boosters.py 1 Quote Share this post Link to post Short link Share on other sites
ktulho 5,790 #410898 Posted November 8, 2017 @steaxch вроде правильно, но красивее так: h, m = divmod(seconds/60, 60) 1 Quote Share this post Link to post Short link Share on other sites
steaxch 356 #410901 Posted November 8, 2017 38 минут назад, ktulho сказал: @steaxch вроде правильно, но красивее так: h, m = divmod(seconds/60, 60) действительно красиво, а я только по рабоче-крестьянски, сложить и поделить 1 Quote Share this post Link to post Short link Share on other sites
ktulho 5,790 #410935 Posted November 8, 2017 Изменил: {{py:bst.leftTimeMin(index, norm)}} - оставшееся время действия активного резерва в минутах. Если параметр norm не задан, то возвращаются оставшееся время в минутах. Параметр index - номер активного резерва от 1 до 3. Если значение index равно 0, то возвращается значения для резерва, время действия которого наименьшее. Quote Share this post Link to post Short link Share on other sites
steaxch 356 #411099 Posted November 10, 2017 (edited) В 08.11.2017 в 15:32, ktulho сказал: @steaxch вроде правильно, но красивее так: h, m = divmod(seconds/60, 60) ktulho а как тут еще сделать, чтобы когда осталось < 1 минуты выводились секунды? @xvm.export('bst.leftTimeHrMin', deterministic=False) def leftTimeHrMin(index=None): b = booster(index) if b is not None: seconds = time_utils.getTimeDeltaFromNow(time_utils.makeLocalServerTime(b.finishTime)) if b.finishTime is not None else 0 h, m = divmod(seconds/60, 60) return '{:01d}:{:02d}'.format(h, m) return None сейчас при оставшемся времени <1мин отображается 0:00, могу сделать как у картохи, чтобы последние 2 минуты отображались как 1 минута(0:01), но что-то захотелось секунды увидеть, а тут у меня ума не хватает Edited November 10, 2017 by steaxch Quote Share this post Link to post Short link Share on other sites
ktulho 5,790 #411102 Posted November 10, 2017 @steaxch , без часов? Только минуты и секунды? Quote Share this post Link to post Short link Share on other sites
steaxch 356 #411103 Posted November 10, 2017 (edited) 3 минуты назад, ktulho сказал: @steaxch , без часов? Только минуты и секунды? только хотел уточнение дописать в мессаге, ты уже ответил чтобы как-то так возвращало, вообще одни секунды return ':{:02d}'.format(seconds) Edited November 10, 2017 by steaxch Quote Share this post Link to post Short link Share on other sites