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

Помощь по Ren'Py (Вопрос\Ответ)

Admin

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

Katruna

#1111
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

#1112
Спасибо!

Добавлено (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

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

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

dmit

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

СОНЦЕ

#1119
Цитата FreQl ()
Как сделать плавное выезжание кнопок выбора (choice buttons) с края экрана.


если ты пользуешь тот самый код, вот к нему модификация.

Код
transform wobble_text:
    xoffset 1000      # <<<<<<<<<< ДОБАВЬ ВОТ
    ease .5 xoffset 0     # <<<<<<<<<< ЭТИ СТРОЧКИ
    on idle:
        pass
    on hover:
        ease .1 xoffset 5
        ease .1 xoffset 0
        repeat

screen choice(items):
    style_prefix "choice"

    vbox:
        for i in items:
            textbutton i.caption action i.action at wobble_text

СОНЦЕ

#1120
Цитата FreQl ()
И пж, скажите, как исправить налаживание прозрачного слоя от ползунка


Тут менее уверенно, но подозреваю, что речь идет об кастомной теме для ползунков
попробуй поискать фразу "base_bar" и если найдешь - переобьяви соответсвующее позказуемое, например:

Код
style my_bar_style:
    base_bar '/gui/my_base_bar.png'


меняем на

Код

image my_vertical_base_bar:
    '/gui/my_base_bar.png'
    rotate -90

style my_bar_style:
    base_bar 'my_vertical_base_bar'


но тут вообще наугад, у меня нет кастомных ползунков, проверить не на чем nmda
если что, хоть напиши че юзаешь

smollvrn

#1121
Цитата dmit ()
smollvrn, почему нельзя воспользоваться примером из документации?
я спрашиваю другое, на каком-то экране меняется какая-то переменная влияющая на экран say, мне нужно его обновить...можно конечно таймер поставить чтоб экран say обновлялся сам через заданный промежуток времени, но как то это совсем не то

FreQl

#1122
СОНЦЕ, ооооо, анимация сработала, спасибо)

а вот на счёт ползунков я не нашёл такой код, был тока такой 
Код
style scrollbar:
    ysize gui.scrollbar_size
    base_bar Frame("gui/scrollbar/horizontal_[prefix_]bar.png", gui.scrollbar_borders, tile=gui.scrollbar_tile)
    thumb Frame("gui/scrollbar/horizontal_[prefix_]thumb.png", gui.scrollbar_borders, tile=gui.scrollbar_tile)

style vscrollbar:
    xsize gui.scrollbar_size
    base_bar Frame("gui/scrollbar/vertical_[prefix_]bar.png", gui.vscrollbar_borders, tile=gui.scrollbar_tile)
    thumb Frame("gui/scrollbar/vertical_[prefix_]thumb.png", gui.vscrollbar_borders, tile=gui.scrollbar_tile)

style slider:
    ysize gui.slider_size
    base_bar Frame("gui/slider/horizontal_[prefix_]bar.png", gui.slider_borders, tile=gui.slider_tile)
    thumb "gui/slider/horizontal_[prefix_]thumb.png"

style vslider:
    xsize gui.slider_size
    base_bar Frame("gui/slider/vertical_[prefix_]bar.png", gui.vslider_borders, tile=gui.slider_tile)
    thumb "gui/slider/vertical_[prefix_]thumb.png"

    base_bar Frame("gui/phone/slider/horizontal_[prefix_]bar.png", gui.slider_borders, tile=gui.slider_tile)
    thumb "gui/phone/slider/horizontal_[prefix_]thumb.png"

style vslider:
    variant "small"
    xsize gui.slider_size
    base_bar Frame("gui/phone/slider/vertical_[prefix_]bar.png", gui.vslider_borders, tile=gui.slider_tile)
    thumb "gui/phone/slider/vertical_[prefix_]thumb.png"


Я попробовал тот код, на прозрачность, но он не работает 

За то, я покопался ещё на форумах и нашел, короче если кому вдруг надо, то тот код, что выше нужно изменить на этот

Код
style bar:
    thumb_offset 10.5
    ysize gui.bar_size
    left_bar Frame("gui/bar/left.png", gui.bar_borders, tile=gui.bar_tile)
    right_bar Frame("gui/bar/right.png", gui.bar_borders, tile=gui.bar_tile)

style vbar:
    thumb_offset 10.5
    xsize gui.bar_size
    top_bar Frame("gui/bar/top.png", gui.vbar_borders, tile=gui.bar_tile)
    bottom_bar Frame("gui/bar/bottom.png", gui.vbar_borders, tile=gui.bar_tile)

style scrollbar:
    thumb_offset 10.5
    ysize gui.scrollbar_size
    base_bar Frame("gui/scrollbar/horizontal_[prefix_]bar.png", gui.scrollbar_borders, tile=gui.scrollbar_tile)
    thumb Frame("gui/scrollbar/horizontal_[prefix_]thumb.png", gui.scrollbar_borders, tile=gui.scrollbar_tile)

style vscrollbar:
    thumb_offset 10.5
    xsize gui.scrollbar_size
    base_bar Frame("gui/scrollbar/vertical_[prefix_]bar.png", gui.vscrollbar_borders, tile=gui.scrollbar_tile)
    thumb Frame("gui/scrollbar/vertical_[prefix_]thumb.png", gui.vscrollbar_borders, tile=gui.scrollbar_tile)

style slider:
    thumb_offset 10.5
    ysize gui.slider_size
    base_bar Frame("gui/slider/horizontal_[prefix_]bar.png", gui.slider_borders, tile=gui.slider_tile)
    thumb "gui/slider/horizontal_[prefix_]thumb.png"

style vslider:
    thumb_offset 10.5
    xsize gui.slider_size
    base_bar Frame("gui/slider/vertical_[prefix_]bar.png", gui.vslider_borders, tile=gui.slider_tile)
    thumb "gui/slider/vertical_[prefix_]thumb.png"


thumb_offset должен быть равен половине длинны вашего ползунка (в пикселах)

Добавлено (22.04.2021, 08:24)
---------------------------------------------
хотя оно всё равно слегка засвечивает область, но уже не так сильно, осталось только размеры ползунка поменять

FreQl

#1123
Ребятки, подскажите плез, опять туплю.
Короче хочу сделать прозрачное игровое меню и сделать тип маленький квадратик вместо целого экрана как в БЛ. Вопрос, как убрать эти менюшки сохранений и прочего

Короче, вот убрать всё это:



И сделать как тут)

Прикрепления: 3897108.png (512.7 Kb) · 8021975.jpg (67.3 Kb)

dmit

#1124
FreQl,
Код
init python:
    _game_menu_screen = "navigation"
вместо меню навигации (которое всё равно придётся переделывать) можно свой экран
планета FOREVER!!!      Unkenbro team
Поиск: