Пользователи · Поиск по форуму · · Вход в аккаунт · Регистрация |
Форум о визуальных новеллах » Для разработчиков » Ren'Py » Помощь по Ren'Py (Вопрос\Ответ) |
Помощь по Ren'Py (Вопрос\Ответ) |
СОНЦЕ#436А можно ли назначить маску прозрачности видео? Или контейнеру в котором лежит видео. предусмотрено прямо в параметрах назначения видео Код image eileen movie = Movie(channel="eileen", play="eileen_movie.webm", mask="eileen_mask.webm") в плее - собственно видео, в маск - видео маски прозрачности. осмелюсь предположить что можно назначить маску не только видеой но и другим производным дисплеяблем, проверю позже UPD:Да, можно спокойно назначать маску прозрачности для видео, если его определить вышеуказаным образом, то это обычный дисплеябль, и его можно сунуть в AlphaMask() и назначить маской любой другой дисплеябль. Сообщение отредактировал СОНЦЕ - Вторник, 03/Окт/2017, 20:24
|
stop_control#437СОНЦЕ, пасиб.
Буду упрощать. Надо пробовать спрайт в движение вставить. Сообщение отредактировал stop_control - Вторник, 03/Окт/2017, 21:01
«Иди пожалуйся своей мамочке»
|
AngelGrove#438Всем привет. Столкнулся с проблемой...
Суть в том, что мне надо, что бы при не достаточном количестве очков, нельзя было выбрать вариант ответа. Я всё сделал, но проблема в том, что вариант просто исчезал, а мне нужно, что бы он оставался, но был не активен... Кто поможет ? Ты будешь моим братиком?
|
mrWebster#439AngelGrove, сначала идем в файл опций и находим там настройки choice скрина.
Вот так должно выглядеть его определение: Код screen choice(items): style_prefix "choice" vbox: for i in items: if i.caption[0] == ' ': # внутри кавычек пробел! textbutton i.caption[1:] action None else: textbutton i.caption action i.action Что это значит? Программа будет проверять текст выбора и, если там обнаруживается пробел в начале, то действие будет None. То есть, действия не будет вовсе. Теперь, если текст выбора содержит пробел в начале, то его нельзя будет выбрать. Далее, скорее всего, нужно будет задать стиль для этих кнопок. Идем ниже в style choice_button и добавляем, соответственно, стиль для "нечувствительных" кнопок: Код insensitive_background Frame ("gui/button/choice_lock_background.png",0,0) selected_insensitive_background Frame ("gui/button/choice_lock_background.png",0,0) Потом в строке menu нужно просто сделать две версии одного и того же выбора, один с пробелом в начале. Выводить их по некоторому условию. Все Если что-то из этого кода будет работать криво, то пишите. Я мог в чем-то ошибиться или забыть указать. Сообщение отредактировал mrWebster - Среда, 01/Ноя/2017, 17:05
|
GCStudio#440Сложный вопрос, касающийся нового gui. Точнее, того, как в нем реализован базовый скрин say.
В старом gui скрин quick_menu был интегрирован в скрин say, и вызывался вместе с ним. Все были довольны. В новом gui скрин quick_menu вызывается отдельно. Пока он представлен тонкой полоской текстовых кнопок в самом низу экрана то, что он активен всегда, особо не напрягает. Напрягает, когда его делаешь в виде imagebuttons и вписываешь в интерфейс. Отключать каждый раз, когда не нужен, неудобно. Если его задействовать через use screen quick_menu из скрина say, то все работает нормально.... А, нет. Тут мы подходим ко второй проблеме. В старом gui при использовании вывода текста от лица специальных персонажей centered и extend все отображалось корректно. В новом есть косяки. При использовании centered на короткое время появляется, а потом исчезает окно say... При этом скрин quick_menu, вызываемый со скрина say не исчезает. При использовании extend окно скрина say исчезает на время смены текста, а потом появляется снова! Так что визуально возникает ощущение, что текст рвется. В общем, вопрос такой: Как в новом gui заставить себя say вести адекватно, чтобы не было указанных проблем? |
Ikuku#441GCStudio, вы уже на 99.13, или еще на двенадцатке? Попробуйте проверить, не мешает ли say-скрину что-то еще в настройках вашего проекта. Мной только что был взят свежесозданный, с нулевыми настройками, на 99.12 и 99.13 версиях, с ним произведены следующие действия:
1. По вашему методу quick_menu всунут в say с использованием use (при этом закомментирована строчка config.overlay_screens.append("quick_menu")) 2. В options.rpy строка define config.window = "auto" поменяна на define config.window = "hide" (для проверки функционирования связи say-quick_menu на pause) 3. В стартовый лейбл вписано следующее: Код label start: "Hello, I am screen." pause "Lalala." e "i am totally hiding something... " extend "like this text, for instance!" centered "And I am a centered text." "End test." return В результате теста происходит следующее: во всех стандартных диалоговых строчках say и quick_menu дружат как положено. На pause экран say исчезает вместе с меню (об этом позаботился конфиг). На extend - say и меню стоят на месте, не дергаясь. На centered - экран say остается на экране, как и положено (и меню тоже), но вот window (и подложка вместе с ним!) исчезает, потому что так работает функционал centered (см. доки, "shown outside any window"). Т.е. технически, связка say и меню через use будет рабочим аналогом старого гуи, то, что вам нужно. Из чего я могу предположить, что либо вы стали обладателем редкого бага (для 99.13), либо в коде что-то еще провоцирует мерцание (на каждой user interaction, скорее всего). Попробуйте запустить чистый проект, и проверить на нем. |
AngelGrove#447mrWebster, прошу прощения, но я не совсем понял, как запихнуть это в menu... Вот у меня такое меню, как заставит его работать?
Сообщение отредактировал AngelGrove - Четверг, 02/Ноя/2017, 21:57
Ты будешь моим братиком?
|
mrWebster#448AngelGrove, напомню, что если в начале текста выбора есть пробел, то этот вариант считается заблокированным (по крайней мере, в нашем случае). Итак, положим, некий благородный джентльмен из подворотни соизволил попросить у нас телефон на неопределенный срок. Положим, что у нас может быть пистолет. А может и не быть! Пусть за его наличие отвечает булева переменная have_gun. Теперь создаем простенькое меню:
Код menu: ...."Соизвольте принять это замечательное устройство, милсдарь": ........pass ...."Пожалуй, я лучше подарю вам сюрприз из свинца!" if have_gun: ## доступный выбор, нет пробела в самом начале ........<Тело выбора> ...." Пожалуй, я лучше подарю вам сюрприз из свинца!" if not have_gun: ## заблокированный выбор, здесь перед "Пожалуй" стоит пробел ........<Тело выбора> В таком духе. Должно работать. |
AngelGrove#449mrWebster, всё работает Большое спасибо. С меня причитается
Ты будешь моим братиком?
|
AngelGrove#450И вновь я и опять проблема... Мне надо сделать так, что бы при нажатии на кнопку (imagebuttom) отображался экран, но полностью скрывался интерфейс и оставался один лишь фон (ибо всплывающий экран на прозрачном фоне).
Попробовал сделать через action [Show ("name",_layer="name"), Hideinterface()] с переносом экрана на отдельный слой - всё получилось, но как закрыть экран и вернуть всё как было до нажатия? Пробовал [Hide ("name"), Return()] - не вышло... Сообщение отредактировал AngelGrove - Вторник, 14/Ноя/2017, 13:05
Ты будешь моим братиком?
|
| |||