sirmax Posted July 12, 2019 Share Posted July 12, 2019 ну все правильно - если есть хоткей, анимация будет по хоткею. если нет - по флагам. то есть не важно, флаги, хоткей или все вместе используется - когда надо поле отобразить, используется tweensIn, когда надо спрятать - tweensOut. @ Quote Link to comment Short link Share on other sites More sharing options...
HEKPOMAHT Posted July 12, 2019 Share Posted July 12, 2019 (edited) @sirmax всё равно что-то не то. Попробую описать подробнее. Поле скрывается по нажатию клавиши ("visibleOnHotKey": false), то есть изначально оно должно быть видимым и ориентироваться на флаг (например "alive", "enemy", "spotted"). Без хоткея так и есть и всё работает исправно. С хоткеем: в начале боя пусто. У tweensIn конечное значение "alpha": 1. Обнаруживается противник (статус "spotted") - пусто, далее противник пропадает (статус "lost") - надписи появляются и с этого момента именно эти поля отображаются, повторюсь - без нажатия клавиш. Оставил tweensOut, убрал tweensIn - поля появились, но... "lost" появится и сразу исчезает, то же самое происходит с видимой техникой противника, которая уже была в засвете и пропала. В полях, где хоткей есть а флагов нет, там надписи не появляются вовсе, пока не нажмёшь. Хз, придётся мудрить, выбирать что-то одно. Edited July 13, 2019 by HEKPOMAHT Поле скрывается по нажатию клавиши ("visibleOnHotKey": false) @ Quote Link to comment Short link Share on other sites More sharing options...
sirmax Posted July 12, 2019 Share Posted July 12, 2019 Дай конфиг. Скорей всего это из-за того, что используешь fromTo. Лучше использовать "to" везде, где возможно, он меняет значение от текущего до необходимого. Наверно, универсальное правило такое - для "tweens" использовать "fromTo", для "tweensIn"/"tweensOut" использовать "to". Тут надо понять логику tween'ов, на ней построена вся анимация. Это, конечно, уже из области программирования, но без этого никак. @ Quote Link to comment Short link Share on other sites More sharing options...
HEKPOMAHT Posted July 12, 2019 Share Posted July 12, 2019 @sirmax от текущего до необходимого получается только в tweensOut: текущее 100% -> необходимое 0 "{ "alpha": 0 }" для tweensIn нужно с 0 до 100 %. а так как текущее 100% и есть, я использую метод fromTo, по другому не получается. Причём то же самое и для tweens: появление от 0 до 1 (метод fromTo), время анимации, затухание (метод to) - для lastHit всё чётко (собственно это полностью удовлетворило мою первоначальную заявку, если что). Вот код для конфига дефолт, миникарта: // Формат поля по умолчанию. "defaultItem": { "enabled": true, //"hotKeyCode": 56, "onHold": true, "visibleOnHotKey": false, "tweensIn": [ [ "fromTo", 1.5, { "alpha": 0 }, { "alpha": 1 } ] ], "tweensOut": [ [ "to", 1.5, { "alpha": 0 } ] ], ... без хоткея работает. Раскомментируешь - проблему я описал. @ Quote Link to comment Short link Share on other sites More sharing options...
sirmax Posted July 12, 2019 Share Posted July 12, 2019 (edited) 1 час назад, HEKPOMAHT сказал: а так как текущее 100% и есть так сделай "alpha": 0 по умолчанию Edited July 12, 2019 by sirmax @ Quote Link to comment Short link Share on other sites More sharing options...
HEKPOMAHT Posted July 13, 2019 Share Posted July 13, 2019 11 часов назад, sirmax сказал: так сделай "alpha": 0 по умолчанию убрал прозрачность всего поля. Хоткeй убрал, в методе "to" указал "alpha": 1 - поведение тут описано. Ради интереса проверил с методом "fromTo" - поле появилось, но анимации нет в обоих твинах "tweensIn", "tweensOut". Ладно Макс, может это никому и не пригодится, а в процессе испытаний может что проясниться... а может с доп. свойствами твинов поэкспериментировать можно. @ Quote Link to comment Short link Share on other sites More sharing options...
sirmax Posted July 13, 2019 Share Posted July 13, 2019 7 минут назад, HEKPOMAHT сказал: убрал прозрачность всего поля. Хоткeй убрал, в методе "to" указал "alpha": 1 - поведение тут описано. > Поле скрывается по нажатию клавиши ("visibleOnHotKey": true), то есть изначально оно должно быть видимым Подожди. Если оно должно скрываться по нажатию, тогда нужно "visibleOnHotKey": false. А у тебя по "hotKeyCode": 56 случайно не переключается альтернативный режим? В нет создаются отдельные поля, соответственно, у них своя анимация, независимая. @ Quote Link to comment Short link Share on other sites More sharing options...
HEKPOMAHT Posted July 13, 2019 Share Posted July 13, 2019 @sirmax это я с item шаблона скопировал ), вчера пытался все варианты пробовать, к ночи голова уже перетрудилась. в поле все правильно: "hotKeyCode": 56, "onHold": true, "visibleOnHotKey": false своё сообщение подредактирую. ---- там же дальше описано, что поля у противников появляются :) @ Quote Link to comment Short link Share on other sites More sharing options...
sirmax Posted July 13, 2019 Share Posted July 13, 2019 Вообще, как-то странно альтернативный режим себя ведет. Может конфликтует с клиентским? вот, вообще отключил альтернативный режим: "hotkeys": { "minimapAltMode": { "enabled": false, "keyCode": 56, "onHold": true }, ... "defaultItem": { "enabled": true, "hotKeyCode": 56, "onHold": false, "visibleOnHotKey": false, "alpha": 100, "tweensIn": [ [ "to", 1.5, { "alpha": 1 } ] ], "tweensOut": [ [ "to", 1.5, { "alpha": 0 } ] ], по нажатию (не удержанию) alt получается так: test1.mp4 @ Quote Link to comment Short link Share on other sites More sharing options...
HEKPOMAHT Posted July 13, 2019 Share Posted July 13, 2019 @sirmax вчера проверял в своём конфиге, в нём альтернативный отключён. Сегодня и частично вчера проверял и на дефолтном - там по умолчанию включён. @ Quote Link to comment Short link Share on other sites More sharing options...
sirmax Posted July 13, 2019 Share Posted July 13, 2019 А нет, все нормально, работает как и ожидалось. Вроде я понял твой сценарий, попробую воспроизвести. @ Quote Link to comment Short link Share on other sites More sharing options...
HEKPOMAHT Posted July 13, 2019 Share Posted July 13, 2019 Во, нашёл вчерашнее описание, похожее поведение полей на как твоём видео: 17 часов назад, HEKPOMAHT сказал: но... "lost" появится и сразу исчезает, то же самое происходит с видимой техникой противника, которая уже была в засвете и пропала. @ Quote Link to comment Short link Share on other sites More sharing options...
sirmax Posted July 13, 2019 Share Posted July 13, 2019 2 минуты назад, HEKPOMAHT сказал: Во, нашёл вчерашнее описание, похожее поведение полей на как твоём видео: Я все равно не понимаю. Все вроде прячется и появляется как надо. Нажал кнопку - все спряталось. Еще раз нажал - появилось. Если "onHold": true, то пока держишь, плавно пропадает, отпустишь - плавно появляется. Попробуй на том куске конфига, что я выше выложил. @ Quote Link to comment Short link Share on other sites More sharing options...
HEKPOMAHT Posted July 13, 2019 Share Posted July 13, 2019 4 минуты назад, sirmax сказал: Я все равно не понимаю. вчера была проблема в том, что с наличием в поле "hotKeyCode" - в начале боя поля были скрыты. После нажатия клавиши дальше всё работало нормально. Можно по новой проверить, минут через 20 смогу. @ Quote Link to comment Short link Share on other sites More sharing options...
sirmax Posted July 13, 2019 Share Posted July 13, 2019 (edited) Вот видео с "onHold": true Можешь сказать, что с ним не так? test2.mp4 4 минуты назад, HEKPOMAHT сказал: вчера была проблема в том, что с наличием в поле "hotKeyCode" - в начале боя поля были скрыты. После нажатия клавиши дальше всё работало нормально. Можно по новой проверить, минут через 20 смогу. Если использовать "fromTo", то так и будет. При создании tween останавливается на первом кадре анимации. Edited July 13, 2019 by sirmax @ Quote Link to comment Short link Share on other sites More sharing options...
Slava7572 Posted July 13, 2019 Share Posted July 13, 2019 с протанками последние ночники пока не запускаются 2019-07-13 15:24:41.372: ERROR: [EXCEPTION] (scripts/common/Event.py, 46): Traceback (most recent call last): File "scripts/common/Event.py", line 44, in __call__ File "mod_pro_efficiency", line 1, in onBattleLoaded TypeError: argument of type 'NoneType' is not iterable 2019-07-13 15:24:41.374: ERROR: [EXCEPTION] (scripts/common/Event.py, 46): Traceback (most recent call last): File "scripts/common/Event.py", line 44, in __call__ File "mod_pro_efficiency", line 1, in onGUISpaceEntered File "scripts/common/Event.py", line 44, in __call__ File "mod_pro_efficiency", line 1, in onBattleLoaded TypeError: argument of type 'NoneType' is not iterable 2019-07-13 15:24:41.374: ERROR: Traceback (most recent call last): 2019-07-13 15:24:41.374: ERROR: File "scripts/client/gui/battle_control/arena_info/listeners.py", line 509, in __loadCompleteDelayed 2019-07-13 15:24:41.374: ERROR: File "scripts/client/gui/battle_control/arena_info/listeners.py", line 541, in __loadInfluxCallback 2019-07-13 15:24:41.374: ERROR: File "scripts/client/gui/battle_control/arena_info/listeners.py", line 571, in __onArenaLoadCompleted 2019-07-13 15:24:41.374: ERROR: File "scripts/client/gui/battle_control/arena_info/listeners.py", line 102, in _invokeListenersMethod 2019-07-13 15:24:41.374: ERROR: File "scripts/client/gui/battle_control/controllers/arena_load_ctrl.py", line 71, in arenaLoadCompleted 2019-07-13 15:24:41.375: ERROR: File "scripts/client/gameplay/delegator.py", line 63, in postStateEvent 2019-07-13 15:24:41.375: ERROR: File "scripts/client/frameworks/state_machine/machine.py", line 146, in post 2019-07-13 15:24:41.375: ERROR: File "scripts/client/frameworks/state_machine/machine.py", line 169, in __tick 2019-07-13 15:24:41.375: ERROR: File "scripts/client/frameworks/state_machine/machine.py", line 182, in __process 2019-07-13 15:24:41.375: ERROR: File "scripts/client/frameworks/state_machine/machine.py", line 382, in __notify 2019-07-13 15:24:41.375: ERROR: File "scripts/client/frameworks/state_machine/observers.py", line 132, in onStateChanged 2019-07-13 15:24:41.375: ERROR: File "scripts/client/frameworks/state_machine/observers.py", line 132, in onStateChanged 2019-07-13 15:24:41.376: ERROR: File "scripts/client/frameworks/state_machine/observers.py", line 47, in onStateChanged 2019-07-13 15:24:41.376: ERROR: File "scripts/client/gui/app_loader/observers.py", line 132, in onEnterState 2019-07-13 15:24:41.376: ERROR: File "scripts/client/gui/app_loader/loader.py", line 180, in changeSpace 2019-07-13 15:24:41.376: ERROR: File "scripts/client/gui/app_loader/loader.py", line 248, in __updateSpace 2019-07-13 15:24:41.376: ERROR: File "scripts/common/Event.py", line 44, in __call__ 2019-07-13 15:24:41.376: ERROR: File "mod_pro_efficiency", line 1, in onGUISpaceEntered 2019-07-13 15:24:41.376: ERROR: File "scripts/common/Event.py", line 44, in __call__ 2019-07-13 15:24:41.377: ERROR: File "mod_pro_efficiency", line 1, in onBattleLoaded 2019-07-13 15:24:41.377: ERROR: TypeError: argument of type 'NoneType' is not iterable видимо что то с их стороны надо адаптировать,9227 последний стабильный для совместного использования,если что. @ Quote Link to comment Short link Share on other sites More sharing options...
HEKPOMAHT Posted July 13, 2019 Share Posted July 13, 2019 @sirmax получается то, что есть некоторые нюансы, которые обнарудиваются в результате экспериментов. сделал небольшой отчёт на примере миникарты: // Формат поля по умолчанию. "defaultItem": { "enabled": true, "hotKeyCode": 56, "onHold": true, "visibleOnHotKey": false, "tweensIn": [ [ "to", 3.5, { "alpha": 1 } ] ], "tweensOut": [ [ "to", 3.5, { "alpha": 0 } ] ], ... - в начале боя союзники отображаются - противник при первом засвете отображается, но без анимации - далее противник пропадает - анимация появляется (затухание) - далее создаётся поле "lost" - уже с анимацией - дальнейшие появления пропадания происходят уже с анимацией. ---- Цитата - противник при первом засвете отображается, но без анимации попытка это решить с помощью метода "fromTo" приводит к тому, что без нажатия горячей клавиши поля остаются скрыты. Появляются только противники, которые пропали с засвета. Сначала "lost", потом как обычно, но при пропадании анимации почему-то нет (проверял на реплее) "defaultItem": { "enabled": true, "hotKeyCode": 56, "onHold": true, "visibleOnHotKey": false, "tweensIn": [ [ "fromTo", 3.5, { "alpha": 0 }, { "alpha": 1 } ] ], "tweensOut": [ [ "to", 3.5, { "alpha": 0 } ] ], ... и это не является решением. При первом засвете у противника анимации всё ровно нет. ---- убрал "hotKeyCode" из кода: "defaultItem": { "enabled": true, "tweensIn": [ [ "fromTo", 3.5, { "alpha": 0 }, { "alpha": 1 } ] ], "tweensOut": [ [ "to", 3.5, { "alpha": 0 } ] ], ... теперь у противника при первом засвете появляется анимация. ---- Цитата убрал "hotKeyCode" из кода: + ещё в "tweensIn" заменил методы "fromTo" на "to" "defaultItem": { "enabled": true, "tweensIn": [ [ "to", 3.5, { "alpha": 1 } ] ], "tweensOut": [ [ "to", 3.5, { "alpha": 0 } ] ], ... анимация работает только у "dead" обеих команд. У противников нет ни при каких условиях - ни у пропавших, ни у снова появившихся, как это было на одном из примеров выше. ---- Слушай, сделай ещё для экстра полей карусели ориентир к selected @ Quote Link to comment Short link Share on other sites More sharing options...
ktulho Posted July 15, 2019 Share Posted July 15, 2019 @sirmax Нельзя ли еще сделать, чтобы "tweens" срабатывал в extraField при обновлении поля, даже если в этом поле нет ни какого события? @ Quote Link to comment Short link Share on other sites More sharing options...
sirmax Posted July 15, 2019 Share Posted July 15, 2019 18 минут назад, ktulho сказал: @sirmax Нельзя ли еще сделать, чтобы "tweens" срабатывал в extraField при обновлении поля, даже если в этом поле нет ни какого события? Можно, но не совсем уверен, что получится то, что ожидается. @ Quote Link to comment Short link Share on other sites More sharing options...
ktulho Posted July 15, 2019 Share Posted July 15, 2019 8 минут назад, sirmax сказал: Можно, но не совсем уверен, что получится то, что ожидается. Будут лишние срабатывания? Думал сделать, чтобы при засвете в ушах лампочка несколько раз моргала. @ 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.