ktulho Posted October 5, 2018 Author Share Posted October 5, 2018 8 часов назад, Wild_RNB сказал: А под ТТХ танка нельзя поместить? Можно. @ Quote Link to comment Short link Share on other sites More sharing options...
HEKPOMAHT Posted October 12, 2018 Share Posted October 12, 2018 @ktulho подскажи, а можно сделать скрипт-обработчик событий для боя, универсальный, не привязанный к типам боёв? типо такого: "updateEvent": "PY(обработчик)", "mouseEvents": { "mouseOver": "оver" }, "alpha": "{{py:highlight?100|0}}" // показывать/скрывать при наведении на поле хочу скрыть поле статистики в ушах, так как для наведения курсора жалобы оно как бы и не надо, так, не критично конечно. ---- и вроде спрашивали уже, сделать возможность плавного появления/затухания поля (анимации короче). типо такого: // время в мс "updateEvent": "PY(анимация)", "появление": 200, "затухание": 200 надеюсь не сильно озадачил @ Quote Link to comment Short link Share on other sites More sharing options...
ktulho Posted October 12, 2018 Author Share Posted October 12, 2018 10 часов назад, HEKPOMAHT сказал: подскажи, а можно сделать скрипт-обработчик событий для боя, универсальный, не привязанный к типам боёв? типо такого: "updateEvent": "PY(обработчик)", "mouseEvents": { "mouseOver": "оver" }, "alpha": "{{py:highlight?100|0}}" // показывать/скрывать при наведении на поле хочу скрыть поле статистики в ушах, так как для наведения курсора жалобы оно как бы и не надо, так, не критично конечно. Не понял, этот как-нибудь относится к скрипту этой темы? Ты хочешь отображать экстраполя в ушах при наведении на них курсора мыши? 10 часов назад, HEKPOMAHT сказал: вроде спрашивали уже, сделать возможность плавного появления/затухания поля (анимации короче). Не придумал, как это сделать универсально. @ Quote Link to comment Short link Share on other sites More sharing options...
HEKPOMAHT Posted October 12, 2018 Share Posted October 12, 2018 45 минут назад, ktulho сказал: Не понял, этот как-нибудь относится к скрипту этой темы? Ты хочешь отображать экстраполя в ушах при наведении на них курсора мыши? к скрипту никак не относится. Хочу скрывать одно экстраполе при наведении. Написано обработчик нужно привязывать с помощью функции as_callback(event_name), подумал что нужен отдельный скрипт и событие к нему... 1 час назад, ktulho сказал: Не придумал, как это сделать универсально. ага, значит этот момент у тебя на заметке. Тогда отлично, будем ждать. @ Quote Link to comment Short link Share on other sites More sharing options...
ktulho Posted October 20, 2018 Author Share Posted October 20, 2018 В 12.10.2018 в 08:43, HEKPOMAHT сказал: подскажи, а можно сделать скрипт-обработчик событий для боя, универсальный, не привязанный к типам боёв? типо такого: "updateEvent": "PY(обработчик)", "mouseEvents": { "mouseOver": "оver" }, "alpha": "{{py:highlight?100|0}}" // показывать/скрывать при наведении на поле хочу скрыть поле статистики в ушах, так как для наведения курсора жалобы оно как бы и не надо, так, не критично конечно. Скрипт должен выглядеть примерно так: from xvm_main.python.logger import * from xfw_actionscript.python import * highlight = None def fildOver(data): global highlight highlight = 'over' as_event('ON_HIGHLIGHT') def fildOut(data): global highlight highlight = None as_event('ON_HIGHLIGHT') as_callback('fild_Over', fildOver) as_callback('fild_Out', fildOut) @xvm.export('highlight', deterministic=False) def highlight(): return highlight В конфиге: { "enabled": true, "updateEvent": "PY(ON_HIGHLIGHT)", "alpha": "{{py:highlight?100|0}}", . . . "mouseEvents": {"mouseOver": "fild_Over", "mouseOut": "fild_Out"} }, Макрос {{py:highlight}} - возвращает 'over', если курсор мыши наведен на поле, иначе пусто. Работу скрипта не проверял. @ Quote Link to comment Short link Share on other sites More sharing options...
HEKPOMAHT Posted October 20, 2018 Share Posted October 20, 2018 не работает - постоянно 100% "test": { "updateEvent": "PY(ON_HIGHLIGHT)", "alpha": "{{py:highlight?50|100}}", "mouseEvents": { "mouseOver": "fild_Over", "mouseOut": "fild_Out" }, "x": 7, "y": 2, "bgColor": "0x000000", "width": 500, "height": 50, "format": "ТЕСТ ТЕСТ ТЕСТ" }, highLight.py @ Quote Link to comment Short link Share on other sites More sharing options...
ktulho Posted October 20, 2018 Author Share Posted October 20, 2018 @HEKPOMAHT В логах ничего нет? @ Quote Link to comment Short link Share on other sites More sharing options...
HEKPOMAHT Posted October 20, 2018 Share Posted October 20, 2018 1 минуту назад, ktulho сказал: @HEKPOMAHT В логах ничего нет? проверял на реплее - ошибок нет совсем. Может в бою проверить? Стой, в xvm есть xvm.log 2018-10-20 12:06:01: [ERROR] Traceback (most recent call last): File "res_mods/mods/xfw_packages\xvm_main\python\python_macro.py", line 156, in process_python_macro (func, deterministic) = get_function(arg) File "res_mods/mods/xfw_packages\xvm_main\python\python_macro.py", line 147, in get_function (func, deterministic) = _container.get(func_name) TypeError: 'NoneType' object is not iterable arg='highlight' @ Quote Link to comment Short link Share on other sites More sharing options...
ktulho Posted October 20, 2018 Author Share Posted October 20, 2018 @HEKPOMAHT у тебя похоже вот эта проблема. В 'highlight' перед закрывающей кавычкой не отображаемый символ. Проверил, работает: @ Quote Link to comment Short link Share on other sites More sharing options...
HEKPOMAHT Posted October 20, 2018 Share Posted October 20, 2018 переписал название, всё ровно не работает 2018-10-20 12:44:13: [ERROR] Traceback (most recent call last): File "res_mods/mods/xfw_packages\xvm_main\python\python_macro.py", line 127, in load_macros_lib code = load(file_name) File "res_mods/mods/xfw_packages\xvm_main\python\python_macro.py", line 101, in load return parse(source, file_name) File "res_mods/mods/xfw_packages\xvm_main\python\python_macro.py", line 91, in parse node = ast.parse(source) File "scripts/common/Lib/ast.py", line 37, in parse File "<unknown>", line 4 highlight = None ^ SyntaxError: invalid syntax 2018-10-20 12:44:21: [ERROR] Traceback (most recent call last): File "res_mods/mods/xfw_packages\xvm_main\python\python_macro.py", line 156, in process_python_macro (func, deterministic) = get_function(arg) File "res_mods/mods/xfw_packages\xvm_main\python\python_macro.py", line 147, in get_function (func, deterministic) = _container.get(func_name) TypeError: 'NoneType' object is not iterable arg='highlight' ---- вот он где был: удалил в редакторе, скопировал код - всё, теперь работает. Блин, гемор с этим символом... ---- выявил такую особенность: 1) фриз при наведении на поле 2) макрос {{tdb}} у всех игроков в ушах, после наведения мыши показывает кпд игрока (только когда дописано событие "PY(ON_HIGHLIGHT" ) 3) при наведении на одно поле, срабатывает и другое, прописанное отдельно, но обновляемое по событию PY(ON_HIGHLIGHT). Заметил случайно, так как проверял работу скрипта в ушах и в battleLabels. @ktulho глянь выше, написал пару строк @ Quote Link to comment Short link Share on other sites More sharing options...
ktulho Posted October 20, 2018 Author Share Posted October 20, 2018 1 час назад, HEKPOMAHT сказал: выявил такую особенность: 1) фриз при наведении на поле 2) макрос {{tdb}} у всех игроков в ушах, после наведения мыши показывает кпд игрока (только когда дописано событие "PY(ON_HIGHLIGHT" ) 3) при наведении на одно поле, срабатывает и другое, прописанное отдельно, но обновляемое по событию PY(ON_HIGHLIGHT). Заметил случайно, так как проверял работу скрипта в ушах и в battleLabels. А что тут смотреть? Все предсказуемо. @ Quote Link to comment Short link Share on other sites More sharing options...
HEKPOMAHT Posted October 20, 2018 Share Posted October 20, 2018 5 минут назад, ktulho сказал: А что тут смотреть? Все предсказуемо. т.е два совершенно разных поля в разных местах на экране должны срабатывать при наведении на одно из них? по моему что-то не то... @ Quote Link to comment Short link Share on other sites More sharing options...
ktulho Posted October 20, 2018 Author Share Posted October 20, 2018 7 минут назад, HEKPOMAHT сказал: т.е два совершенно разных поля в разных местах на экране должны срабатывать при наведении на одно из них? Да. Именно об этом я и писал: В 12.10.2018 в 19:35, ktulho сказал: Не придумал, как это сделать универсально. Распишу как это происходит на примере выше: 1) Наводишь курсор на поле. 2) Вызывается событие "mouseOver": "fild_Over", описанное в секции "mouseEvents" этого поля. 3) В скрипте вызывается функция привязанная к этому событию, в данном случае fildOver: as_callback('fild_Over', fildOver) 4) В функции fildOver присваивается значение переменной highlight = 'over' и вызывается событие ON_HIGHLIGHT, по которому обновляются все поля, где оно прописано: def fildOver(data): global highlight highlight = 'over' as_event('ON_HIGHLIGHT') 1 @ Quote Link to comment Short link Share on other sites More sharing options...
HEKPOMAHT Posted October 20, 2018 Share Posted October 20, 2018 13 минут назад, ktulho сказал: Именно об этом я и писал: нет, ты писал об плавном затухании. а про обработчик только уточнил, что именно я хочу сделать. ответ после цитаты относится именно к этой цитате, я правильно понимаю? Почему я собственно и про обработчик напомнил. @ Quote Link to comment Short link Share on other sites More sharing options...
ktulho Posted October 20, 2018 Author Share Posted October 20, 2018 Только что, HEKPOMAHT сказал: нет, ты писал об плавном затухании. Там тоже самое. @ Quote Link to comment Short link Share on other sites More sharing options...
HEKPOMAHT Posted October 20, 2018 Share Posted October 20, 2018 2 минуты назад, ktulho сказал: Там тоже самое. вот теперь стало на свои места тогда всё, ждём прихода светлых мыслей @ Quote Link to comment Short link Share on other sites More sharing options...
ktulho Posted October 20, 2018 Author Share Posted October 20, 2018 Только что, HEKPOMAHT сказал: тогда всё, ждём прихода светлых мыслей Ну, для себя ты можешь написать кучу копий этого скрипта изменяя названия макросов и событий: ON_HIGHLIGHT1, ON_HIGHLIGHT2 и т.д. highlight1, highlight1 и т.д. fild_Over1, fild_Over2 и т.д. и т.д. @ Quote Link to comment Short link Share on other sites More sharing options...
HEKPOMAHT Posted October 20, 2018 Share Posted October 20, 2018 1 час назад, ktulho сказал: Ну, для себя ты можешь написать кучу копий этого скрипта изменяя названия макросов и событий: так я это заметил случайно и как бы для меня это проблемой не является, так как хотел применить только в одном месте. Важных в моём отчёте только первых два пункта: фриз и влияние события на макросы xvm (этот даже важнее). Почему у игроков обеих команд сбиваются данные (появляются мой кпд)? @ Quote Link to comment Short link Share on other sites More sharing options...
ktulho Posted October 20, 2018 Author Share Posted October 20, 2018 4 минуты назад, HEKPOMAHT сказал: фриз Тебе же sirmax уже где-то писал, что обновление в ушах это тяжёлая операция. У тебя каждый раз обновляется по 15 строк в каждом ухе. @ Quote Link to comment Short link Share on other sites More sharing options...
HEKPOMAHT Posted October 20, 2018 Share Posted October 20, 2018 9 минут назад, ktulho сказал: Тебе же sirmax уже где-то писал, что обновление в ушах это тяжёлая операция. У тебя каждый раз обновляется по 15 строк в каждом ухе. да, я помню: В 28.05.2018 в 22:26, sirmax сказал: Скорей всего проблема в том, что макрос динамический, и при добавлении в уши получается довольно тяжело 30 раз его дернуть. но это касалось макроса {{py:isBattle}} выходит в ушах и не надо с событиями поля создавать. @ 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.