Seki Posted August 19, 2017 Share Posted August 19, 2017 Missed bracket in log() My bad, thanks sirmax. @ Quote Link to comment Short link Share on other sites More sharing options...
HEKPOMAHT Posted August 20, 2017 Share Posted August 20, 2017 @ktulho, если будет возможность, сделай пожалуйста такой макрос: {{py:xvm.score_panel.sign}} // возвращает '<', '>' или '=', в зависимости от отношения фрагов союзников и противников @ Quote Link to comment Short link Share on other sites More sharing options...
CrazyST Posted August 20, 2017 Share Posted August 20, 2017 (edited) @ktulho, если будет возможность, сделай пожалуйста такой макрос: {{py:xvm.score_panel.sign}} // возвращает '<', '>' или '=', в зависимости от отношения фрагов союзников и противников score_panel.rar заменить в py_macro score_panel.py аналогичным файлом из архива и будет дополнительный макрос {{py:score_panel.sign}} Edited August 20, 2017 by CrazyST 1 1 @ Quote Link to comment Short link Share on other sites More sharing options...
HEKPOMAHT Posted August 21, 2017 Share Posted August 21, 2017 (edited) @CrazyST, работает. Осталось в дефолт запулить и в док дописать. Edited August 21, 2017 by H_E_K_P_O_M_A_H_T_ @ Quote Link to comment Short link Share on other sites More sharing options...
HEKPOMAHT Posted August 21, 2017 Share Posted August 21, 2017 Единственное пожелание '=' ==> '=' return '>' if panel.ally_frags > panel.enemy_frags else '<' if panel.ally_frags < panel.enemy_frags else '=' @ Quote Link to comment Short link Share on other sites More sharing options...
CrazyST Posted August 21, 2017 Share Posted August 21, 2017 Единственное пожелание ну так и закинул бы сразу ))) score_panel.rar пусть только кто-то теперь pull request сделает. @ Quote Link to comment Short link Share on other sites More sharing options...
HEKPOMAHT Posted August 21, 2017 Share Posted August 21, 2017 ну так и закинул бы сразу ))) не - так не честно получится, моя тока просить :) У Сани нет возможности запулить - в отпуске он. @ Quote Link to comment Short link Share on other sites More sharing options...
night_dragon_on Posted August 22, 2017 Share Posted August 22, 2017 (edited) сделай пожалуйста такой макрос: Добавил соответствующий макрос. Остальные макросы для панели счета подверглись смене наименования (новые смотрим в доках или сразу в пулле). Учитывайте изменения при последующей актуализации вашего конфига. Изначально когда добавлял код в качестве примера в дефолт названия выбирал наобум можно сказать. Сейчас сделал сокращение в названии макросов, смотрится лучше при записи в конфигурационном файле и сама строка с кодом не растянется на пол экрана. {{py:score_panel.enemy_frags_inverse}} Против: {{py:sp.enemyAlive}} Edited August 22, 2017 by night_dragon_on 1 @ Quote Link to comment Short link Share on other sites More sharing options...
HEKPOMAHT Posted August 22, 2017 Share Posted August 22, 2017 Добавил соответствующий макрос. Рома спс. Про длинные названия макросов хотел было написать, но подумав решил этого не делать, т.к тот, кто их придумывал не захочет названия менять или что хуже - ещё и обидится на меня @ Quote Link to comment Short link Share on other sites More sharing options...
night_dragon_on Posted August 22, 2017 Share Posted August 22, 2017 (edited) т.к тот, кто их придумывал не захочет названия менять или что хуже - ещё и обидится на меня Я же их добавил изначально, тут не на что обижаться. Со стороны автора как то не правильно будет держать обиду на того кто всего лишь хотел улучшить/подправить/оптимизировать его начальную задумку с целью улучшения (но это лишь мое субъективное мнение, люди разные как мы знаем бывают). Если так ко всем изменениям подходить то и продвижения в развитии XVM-ма не будет Edited August 22, 2017 by night_dragon_on @ Quote Link to comment Short link Share on other sites More sharing options...
SEREGA_SF Posted August 29, 2017 Share Posted August 29, 2017 Ни у кого в логе такого больше нет?: [ERROR] Traceback (most recent call last): File "./res_mods/mods/packages\xvm_main\python\python_macro.py", line 128, in load_macros_lib execute(code, file_name, {'xvm': XvmNamespace}) File "./res_mods/mods/packages\xvm_main\python\python_macro.py", line 112, in execute raise ExecutionException("{} at file '{}' line {}: {}".format(error_name, file_name, line_number, message)) ExecutionException: NameError at file 'res_mods/configs/xvm/py_macro\noBinoculars.py' line 21: global name 'base' is not defined Смущает ошибка noBinoculars.py... @ Quote Link to comment Short link Share on other sites More sharing options...
ktulho Posted August 29, 2017 Share Posted August 29, 2017 Ни у кого в логе такого больше нет?: [ERROR] Traceback (most recent call last): File "./res_mods/mods/packages\xvm_main\python\python_macro.py", line 128, in load_macros_lib execute(code, file_name, {'xvm': XvmNamespace}) File "./res_mods/mods/packages\xvm_main\python\python_macro.py", line 112, in execute raise ExecutionException("{} at file '{}' line {}: {}".format(error_name, file_name, line_number, message)) ExecutionException: NameError at file 'res_mods/configs/xvm/py_macro\noBinoculars.py' line 21: global name 'base' is not defined Смущает ошибка noBinoculars.py... Прикрепите noBinoculars.py. @ Quote Link to comment Short link Share on other sites More sharing options...
SEREGA_SF Posted August 29, 2017 Share Posted August 29, 2017 (edited) Прикрепите noBinoculars.py. Вот: noBinoculars.rar Там код то малюсенький, npp открыл)) from AvatarInputHandler.control_modes import SniperControlMode from xfw import * import xvm_main.python.config as config ##################################################################### # handlers def __init__(): if config.get('battle/camera/enabled') and config.get('battle/camera/sniper/noBinoculars'): @overrideMethod(SniperControlMode, '_SniperControlMode__setupBinoculars') def setupBinoculars(base, self, isCoatedOptics): return base(self, isCoatedOptics) else: return __init__() Edited August 29, 2017 by SEREGA_SF @ Quote Link to comment Short link Share on other sites More sharing options...
ktulho Posted August 29, 2017 Share Posted August 29, 2017 Может так должно быть : def __init__(): if config.get('battle/camera/enabled') and config.get('battle/camera/sniper/noBinoculars'): @overrideMethod(SniperControlMode, '_SniperControlMode__setupBinoculars') def setupBinoculars(base, self, isCoatedOptics): return __init__() 1 @ Quote Link to comment Short link Share on other sites More sharing options...
SEREGA_SF Posted August 29, 2017 Share Posted August 29, 2017 ktulho. спс, заменил код - ошибка в логе пропала. @ Quote Link to comment Short link Share on other sites More sharing options...
steaxch Posted August 30, 2017 Share Posted August 30, 2017 (edited) CrazyST куда-то потерялся, объясните неучу. Вот тут он кусок кода выложил def NbattlesToWR(step=0.01,stepscount=0): itemsCache = dependency.instance(IItemsCache) winsCount = itemsCache.items.getAccountDossier().getRandomStats().getWinsCount() battlesCount = itemsCache.items.getAccountDossier().getRandomStats().getBattlesCount() winsEfficiency = itemsCache.items.getAccountDossier().getRandomStats().getWinsEfficiency() * 100 if step < 0.01 : step = 0.01 else : step = round(step*100)/100 stepscount = round(stepscount) if stepscount == 0 : wrn = round(winsEfficiency/step)*step elif stepscount > 0 : wrn = math.floor(winsEfficiency/step)*step + step * stepscount else : wrn = math.ceil(winsEfficiency/step)*step + step * stepscount if wrn == winsEfficiency : return 'Ровно <font color="#FFCC66">{}%</font>'.format(wrn) f = wrn > winsEfficiency if f : b = math.ceil((100 * winsCount - wrn * battlesCount) / (wrn - 100)) else : b = -math.ceil(winsCount*100 / wrn - battlesCount) if round(wrn*100)/100 == int(wrn) : wrn = int(wrn) if b > 0 : return '<font color="#60FF00">{}</font>{}<font color="#FFCC66">{}%</font>'.format(int(b),'{{l10n:toWithSpaces}}',wrn) elif b < 0 : b = abs(b) return '<font color="#FE7903">{}</font>{}<font color="#FFCC66">{}%</font>'.format(int(b),'{{l10n:toWithSpaces}}',wrn) else : return '<font color="#FFCC66">{}</font>{}<font color="#FFCC66">{}%</font>'.format(int(b),'{{l10n:toWithSpaces}}',wrn) его куда вписывать и как? В hangar_stat от Kapany3uk или отдельный ру-макро нужно создавать? Не ковырялся я с ними никогда, вообще для меня темный лес. ЗЫ. Еще хотелось, чтобы sirmax в mystat. добавил средний урон по акку. Edited August 30, 2017 by steaxch @ Quote Link to comment Short link Share on other sites More sharing options...
night_dragon_on Posted August 30, 2017 Share Posted August 30, 2017 (edited) Смущает ошибка noBinoculars.py... Зачем ставить доп. макрос (к тому же хреново переделанный из оригинального поста) если я уже как два патча назад добавил соответствующий функционал в XVM. Видимо так пользователи и не научились следить за списком изменений в моде. 'ChangeLog-ru.txt' XVM-6.6.3: [ОБЩЕЕ] * международный релиз World of Tanks 9.18 [КАМЕРА] * новый параметр: "camera"/"sniper"/"noBinoculars" позволяет отключить затемнение и озеленение в снайперском прицеле Edited August 30, 2017 by night_dragon_on 1 @ Quote Link to comment Short link Share on other sites More sharing options...
SEREGA_SF Posted August 30, 2017 Share Posted August 30, 2017 night_dragon_on, вообще то слежу, но тут видимо лоханулся)) до сих пор думал, что аддоном сделано)) Спс что глаза открыл. @ Quote Link to comment Short link Share on other sites More sharing options...
Slava7572 Posted August 30, 2017 Share Posted August 30, 2017 Парни,есть старенький скриптик с таким кодом: import BigWorld @xvm.export('shell_damage.shell_damage', deterministic=False) def shell_damage(): vehicle = BigWorld.player() shotDescr = vehicle.vehicleTypeDescriptor.shot if shotDescr['shell']['kind'] == 'HIGH_EXPLOSIVE': return "%i" % (shotDescr['shell']['damage'][0] // 2) else: return "%i" % (shotDescr['shell']['damage'][0]) Работал нормально,но в этом патче в логе ошибки посыпались: 2017-08-30 02:47:17: [ERROR] Traceback (most recent call last): File "./res_mods/mods/packages\xvm_main\python\python_macro.py", line 157, in process_python_macro return (func(), deterministic) File "./res_mods/mods/packages\xvm_main\python\python_macro.py", line 150, in <lambda> return (lambda: func(*args), deterministic) File "res_mods/configs/xvm/py_macro\shell_damage.py", line 7, in shell_damage if shotDescr['shell']['kind'] == 'HIGH_EXPLOSIVE': File "scripts/common/items/components/legacy_stuff.py", line 56, in __getitem__AssertionError: Operation is not allowed arg='shell_damage.shell_damage()' Помогите поправить,моих знаний недостаточно((( @ Quote Link to comment Short link Share on other sites More sharing options...
night_dragon_on Posted August 30, 2017 Share Posted August 30, 2017 (edited) или отдельный ру-макро нужно создавать В любой py-файл (новый или уже имеющийся). Главное его правильно вызвать из конфига. Edited August 30, 2017 by night_dragon_on @ 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.