Пользователи · Поиск по форуму · · Вход в аккаунт · Регистрация |
Форум о визуальных новеллах » Для разработчиков » Ren'Py » Помощь по Ren'Py (Вопрос\Ответ) |
Помощь по Ren'Py (Вопрос\Ответ) |
Ultra_Scream#961pirsus, исправь первую букву в init на маленькую вместо большой, я предполагаю, в этом ошибка. Python - язык регистрозависимый. Ren'Py, будучи написанным на нем, сохраняет это свойство.
Сообщение отредактировал Ultra_Scream - Четверг, 24/Дек/2020, 18:08
Зродились ми великої години З пожеж війни, із полум'я вогнів Плекав нас біль по втраті України Кормив нас гнів і злість на ворогів |
СОНЦЕ#964по выданной части кода неочевидно почему, но подозреваю image по прежнему объявляется несклолько раз. не важно через переменную или напрямую через LiveComposite конструкцию. и так низя
буду настаивать на layeredimage Код define head = 1 layeredimage batgirl: always: 'images/batgirl/regular/body1.png' group bottom: attribute pants default: 'images/batgirl/regular/pants.png' group top: attribute jaket default: 'images/batgirl/regular/jaket.png' if head == 2: 'images/batgirl/regular/head2.png' elif head == 3: 'images/batgirl/regular/head3.png' else: 'images/batgirl/regular/head1.png' таким образом картинка везде вызывается одной и той же переменной show batgirl а в месте где нужно подменить голову нужно вместо переназначения картинки, переназначить переменную $head = 2 |
pirsus#965Работает!
каеф! Добавлено (26.12.2020, 19:43) Код label ggturn: $ result = renpy.imagemap("images/fight/fightback.png", "images/fight/fighthover.png", [ (1680, 255, 175, 170, "headpunch"), (1680, 455, 175, 170, "bodypuch"), (1680, 655, 175, 170, "legpunch"), ], focus="imagemap") if result == "headpunch": $ hqhp -= 5 $ hqhp -= [fightpower]jump harleyturn elif result == "bodypunch": $ hqhp -= 3 $ hqhp -= [fightpower]jump harleyturn elif result == "legpunch": $ hqhp -= 3 $ hqhp -= [fightpower]jump harleyturn label harleyturn: $ harleypunch = renpy.random.randint(1,12) $ gghp -= [harleypunch]jump ggturn Собственно вот сам код. Ошибок не выдает. Визуальную карту выводит. Но кнопки неактивны. Не реагируют на наведение и нажатие И сразу второй вопрос: Если я из значения переменной вычитаю значение другой переменной, Запись в квадратных скобках правильная? Код $ hqhp -= [fightpower] Добавлено (26.12.2020, 20:04) |
СОНЦЕ#967pirsus, пока отвечу на простое
Если я из значения переменной вычитаю значение другой переменной, Запись в квадратных скобках правильная? Код $ hqhp -= [fightpower] неправильная, такая запись должна выдавать ошибку в любом случае, хотя имеет определенный философский подтекст ^^ Код $ hqhp -= fightpower думаю то что ты хочешь сделать делается вот так. Остальную часть вопроса поизучаю как руки дойдут. Честно говоря такая реализация даже если и заработает устарела лет на 10 ^^ мне даже интересно откуда ты такое берешь Такой вопрос: а способен ли ренпай гипотетически оперировать, например, 2 окнами? То есть из основного окна игры, нажав кнопку, открыть еще одно со своим размером и с каким-нибудь интерактивным экраном внутри. можно, у меня например, командами питона паралельно запускался произвольный .exe с нужным окошком. возможно это можно сделать более изящно |
AxelK#968СОНЦЕ, произвольный exe это не совсем то, что нужно. На всякий случай уточню, что имелось в виду создание окна с доступом к общим разделам памяти. Как самый простой пример: небольшое отдельное окошко, отображающее текущие предметы в наличии, то есть, при использовании их в игре, чтоб то второе окно могло реагировать на изменения инвентаря. Хотелось бы в идеале уткнуться в какой-то код, умеющий примерно это.
|
pirsus#969Я еще вот такую форму попробовал:
Код label ggturn: imagemap: ground "fightback.png" hover "fighthover.png" hotspot (1680, 255, 175, 170) clicked Jump("headpunch") hotspot (1680, 455, 175, 170) clicked Jump("bodypuch") hotspot (1680, 655, 175, 170) clicked Jump("legpunch") Но тут он мне выдает ошибку Код File "game/harlyfight.rpy", line 214: expected statement. imagemap: ^ Ren'Py Version: Ren'Py 7.3.5.606 Все отступы перепроверил. |
AxelK#970
Код imagemap: idle "fightback.png" ground "fightback.png" hover "fighthover.png" hotspot (1680, 255, 175, 170) action Jump("headpunch") hotspot (1680, 455, 175, 170) action Jump("bodypuch") hotspot (1680, 655, 175, 170) action Jump("legpunch") или Код hotspot (1680, 255, 175, 170): hovered NullAction() clicked Jump("headpunch") |
Ultra_Scream#971pirsus, если сказать словами - а товарищ AxelK показал правильные варианты - для Ренпи отступ всегда должен состоять из четырех пробелов. Т.е. отступы по два пробела для него являются ошибкой, он такие не признает.
Зродились ми великої години З пожеж війни, із полум'я вогнів Плекав нас біль по втраті України Кормив нас гнів і злість на ворогів |
СОНЦЕ#972pirsus, современный imagemap объявляется не напрямую, а через screen
Код screen scr_fightback: imagemap: ground "fightback.png" hover "fighthover.png" hotspot (1680, 255, 1680+175, 255+170) clicked Jump("headpunch") hotspot (1680, 455, 1680+175, 455+170) clicked Jump("bodypuch") hotspot (1680, 655, 1680+175, 655+170) clicked Jump("legpunch") label ggturn: call screen scr_fightback альзо, не могу найти документацию на "clicked", надеюсь это то же самое что и "action" АПД: так же потещен "олдовый" вариант imagemap и он тоже работает, я подозреваю что дело в кординатах - две последние цифры это нижняя правая точка, а не ширина-высота Сообщение отредактировал СОНЦЕ - Воскресенье, 27/Дек/2020, 03:05
|
yalhis#974Ребят, начал изучать Renpy и столкнулся с проблемой при выводе изображений
Код label start: scene bg1 with fade show M Cas Op at Moffpos show M Cas Op at Mpos with move hide M При таком коде у меня после начала игры появляется сцена, объявляется персонаж, выходит на экран и потом сразу исчезает и все это происходит практически мгновенно. Как сделать так, чтобы каждое действие происходило по щелчку мыши? видел {w}, но для текста, а для строк есть что то подобное? Никто из тебя идиота не делает, это исключительно твоя инициатива.
|
Katruna#975yalhis, ну скажу так, такое происходит т.к. других действий нет.
Если между появлением и скрытием картинки написать пару фраз текст- все будет ок. Исчезнут картинки только после прочтения текста. А если без текста - просто прописать паузу. Код label start: scene bg1 with fade show M Cas Op at Moffpos show M Cas Op at Mpos with move $renpy.pause (5.0) hide M Сообщение отредактировал Katruna - Вторник, 29/Дек/2020, 08:46
|
| |||