Форум Anivisual закрыт. Вы не можете создавать новые темы или писать ответы. Форум будет работать в режиме архива.
Пользователи · Поиск по форуму · · · Регистрация

Форум о визуальных новеллах » Для разработчиков » Ren'Py » Помощь по Ren'Py (Вопрос\Ответ)
Помощь по Ren'Py (Вопрос\Ответ)

Admin

#1
Сюда пользователи сайта могут писать вопросы о тех или иных функциях движка Ren'Py, а мы попытаемся на них ответить:)

pirsus

#1112
Кто может объяснить, чем вызван такой баг?

Код
Мне очень жаль, но произошло необъяснимое исключение.Во время выполнения кода игры:
Файл "game/batgirl fight.rpy", строка 146, в скрипте
gg "Как на счет того, чтобы добавить нашей тренировке немного азарта?"
TypeError: объект 'int' не вызывается

Игра вылетает как только вызывается объект gg - т.е. имя главного героя.
Во всех строках написанных до этого кода, вызов происходит без проблем.
Если заменить gg на любого другого персонажа - код то же работает.
При переносе кода в други файлы rpy ошибка  gg никуда не исчезает.

Помогите понять причину, потому что я в совершеннейшем тупике. Игра встала.

lf2mr

#1116
Всем привет.
Как можно реализовать проверку перемененной в сохранении при каждой загрузке сохранения и если эта переменная не совпадает с шаблоном, то менять ее значение? Или же скриптик, который разово по его запуску проверит все сохранения в проекте и заменит во всех них значение переменной, если она не совпадает с шаблоном.

pirsus

#1118
Ребята и девчата, возникли 2 таких вопроса:

Как добавить в главное меню кнопку, которая будет работать как гиперссылка и открывать интернет страницу?

Как добавить в главное меню кнопку, открывющую дополнительную страницу, по типу About ?

Katruna

#1119
pirsus, так все просто..

Первое:

textbutton _("Сайт игры") action OpenURL("https://vk.com/public999999")

Вместо сайта игры- можно написать все что угодно, как и ссылку пишешь любую нужную тебе

Второе:

textbutton _("Об игре") action ShowMenu("about")

Она по стандарту есть и работает прекрасно.
В случае, если надо сделать дополнительную такую страницу - то просто находишь в screens экран "about" и дублируешь его, изменяются только его основное название, к примеру "about_2".

Как выглядит код в проекте, которые нужно продублировать в таком варианте:

Код
screen about():

    tag menu

    ## Этот оператор включает игровое меню внутрь этого экрана. Дочерний vbox
    ## включён в порт просмотра внутри экрана игрового меню.
    use game_menu(_("Об игре"), scroll="viewport"):

        style_prefix "about"

        vbox:

            label "[config.name!t]"
            text _("Версия [config.version!t]\n")

            ## gui.about обычно установлено в options.rpy.
            if gui.about:
                text "[gui.about!t]\n"

            text _("Сделано с помощью {a=https://www.renpy.org/}Ren'Py{/a} [renpy.version_only].\n\n[renpy.license!t]")

p.s. если что, это не обязательно должны быть кнопки "textbutton", такое можно приписать и к "hotspot", и к "imagebutton"
Сообщение отредактировал Katruna - Воскресенье, 18/Апр/2021, 18:24
Художник в душе и в жизни
Дракон в душе и в жизни
Butterfly effect

pirsus

#1120
Спасибо!

Добавлено (19.04.2021, 00:37)
---------------------------------------------
ncry Не пойму, в чем ошибка:



Код
screen main_menu():
    imagemap:
        ground "images/mm/main1.png"
        hover "images/mm/main2.png"
        alpha True

    hotspot (50, 320, 275, 65) action Start()
    hotspot (50, 400, 275, 65) action ShowMenu("load")
    hotspot (50, 480, 275, 65) action ShowMenu("preferences")
    hotspot (50, 560, 275, 65) action ShowMenu("about")
    hotspot (50, 640, 275, 65) action ShowMenu("help")
    hotspot (50, 720, 275, 65) action Quit(confirm=not main_menu)
    
    python:
        renpy.music.queue("audio/mainmusic.ogg",channel = "music", fadein = 1)

    ## This ensures that any other menu screen is replaced.
    tag menu

    style_prefix "main_menu"

    add gui.main_menu_background

    ## This empty frame darkens the main menu.
    frame:
        pass

Выдает вот такую ошибку:

Код
While running game code:
  File "game/screens.rpy", line 348, in execute
    screen main_menu():
  File "game/screens.rpy", line 348, in execute
    screen main_menu():
IndexError: list index out of range

smollvrn

#1123
хи, меняю язык, нужно перерисовать экран, подскажите что не так

Код
textbutton "Change language to russian"  action [ SetVariable("persistent.lang","rus"), ToggleScreen("language_menu"), renpy.restart_interaction()]

dmit

#1124
smollvrn, почему нельзя воспользоваться примером из документации?
textbutton "English" action Language(None)
textbutton "Igpay Atinlay" action Language("piglatin")
Сообщение отредактировал dmit - Вторник, 20/Апр/2021, 19:03
планета FOREVER!!!      Unkenbro team
Форум о визуальных новеллах » Для разработчиков » Ren'Py » Помощь по Ren'Py (Вопрос\Ответ)
Поиск: