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

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

Admin

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

yalhis

#976
СОНЦЕ, Да, спасибо большое, прописал и текст не высвечивается теперь
А если я к примеру этот текст хочу изменить? Чтобы надпись другая вышла. Я пытался найти, может где то функция указана и более обширная настройка параметров в ней.
Или если можно, то ссылку в документации как можно отдельно создать свой action и прописать в нём нужный текст, его кнопки и тд
Я просто пытался найти, но или плохо ищу или плохо читаю, так и не наткнулся на нужное
С новым годом кстати! :D
Никто из тебя идиота не делает, это исключительно твоя инициатива.

AxelK

#977
[url=javascript://]yalhis


Код
screen confirm...
    ...
    elif message == layout.QUIT:
        $ message = _("blah blah blah")
    ...
[/url]
или переопределить сами сообщения
layout.DELETE_SAVE
layout.MAIN_MENU
и так далее

pirsus

#978
Доброго вечерка.

Возник вопрос.

Настраивал себе Гуй. 
А именно расположения диалогов и кнопок выбора в внутри игровом меню.
И наткнулся на то, что они упорно выводятся по центру экрана.
А мне надо перенести их в левый верхний угол, с отступом от края.

Отвечает за них вот этот блок:

Код
## Choice Buttons ##############################################################
##
## Choice buttons are used in the in-game menus.

define gui.choice_button_width = 400
define gui.choice_button_height = None
define gui.choice_button_tile = True
define gui.choice_button_borders = Borders(150, 8, 150, 8)
define gui.choice_button_text_font = gui.text_font
define gui.choice_button_text_size = gui.text_size
define gui.choice_button_text_xalign = 0.5
define gui.choice_button_text_idle_color = "#cccccc"
define gui.choice_button_text_hover_color = "#ffffff"
define gui.choice_button_text_insensitive_color = "#444444

Потому что первая строчка регулирует ширину  затемнения под кнопку меню.
Но добавление вот этих строчек не дает никакого эффекта.
Всё равно выводит только по центру.


Код
define gui.choice_button_xpos = 70
define gui.choice_button_ypos = 100

Добавлено (05.01.2021, 05:27)
---------------------------------------------
Еще вопрос:

У нас есть прекрасный оператор

Код
$ th = renpy.random.randint(1,2)
Как его зациклить, чтобы он проводил выбор через определенные промежутки времени.
Но не используя возврать в начало label

Т.е. типа такого:

Код
$ th = renpy.random.randint(1,2)
    if th == 1:
        $ testhead = 1
    else:
        $ testhead = 2
    pause 5
    repeat
Вот конкретно сейчас он выдает ошибку на репит

Добавлено (05.01.2021, 06:31)
---------------------------------------------
И вот еще.
Почему такой вариант отказывается работать?



Код
layeredimage test:
        always:
            'images/test/body.png'

        choice:
            'images/test/hand2.png'
        choice:
            'images/test/hand1.png'
        pause 5
        repeat

Добавлено (05.01.2021, 12:29)
---------------------------------------------
А может ли layeredimage состоять из анимаций внутри своей группы?

Добавлено (05.01.2021, 14:28)
---------------------------------------------
Апдейт:
Последний вопрос решен.

Katruna

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

Мне необходимо в некоторые моменты выключать их отображения. Я сделала так, что на движке запилены вроде как анимации переходов из одной сцены в другую. И проблема в том, что эти кнопочки очень нервируют в таких переходах.

Полагаю, это что-то не трудное, типо команды hide.. но попрошу более опытных людей подсказать..
Прикрепления: 2387928.jpg (18.1 Kb)
Сообщение отредактировал Katruna - Вторник, 05/Янв/2021, 15:35
Художник в душе и в жизни
Дракон в душе и в жизни
Butterfly effect

Lisper

#980
Katruna, скрытие менюшек:

Код
$ quick_menu = False

Бонус 1 -- Скрытие текстбокса:

Код
$ say_show = False

Бонус 2 -- остановка перемотки Ctrl-ом:

Код
$ renpy.choice_for_skipping()
Сообщение отредактировал Lisper - Вторник, 05/Янв/2021, 15:47

dmit

#982
pirsus, что бы сдвинуть кнопки меню достаточно посмотреть код этого экрана "screen choice" и увидеть что они находятся в vbox.
2) Вы хотите менять переменную по таймеру, а зачем? Не проще выдать её рандомное значение в той точке кода, где это нужно? Если подробнее опишете задачу, то помощь будет конкретнее :)
планета FOREVER!!!      Unkenbro team

СОНЦЕ

#983
pirsus
за выборы в меню как и отметил dmit, отвечает screen choice который находится в screens.rpy

вот так он выглядит по умолчанию
Код

screen choice(items):
    style_prefix "choice"
    vbox:
        for i in items:
            textbutton i.caption action i.action


сделай вот так
Код

screen choice(items):
    style_prefix "choice"
    vbox:
        align (.0,.0)     #<--- ВСТАВИТЬ ВОТ ЭТУ СТРОЧКУ ДЛЯ СМЕЩЕНИЯ В ЛЕВЫЙ ВЕРХНИЙ
        pos (50,50)      #<--- А ВОТ ЭТУ ДЛЯ ОТСТУПА НА 50-50 ПИКСЕЛЕЙ ВНИЗ НАВПРАВА
        for i in items:
            textbutton i.caption action i.action


чтоб переменная менялась по таймеру в реальном времени предлагаю сделать следующее

1.загнать менялку переменной в функцию
2.прописать периодический вызов функции через экран
3.показывать экран каждый раз когда нужно чтобы переменная в реальном времени менялась

вот так
Код

define th = 0

init python:
    def change_th():
        global th
        th = renpy.random.choice((1,2))
        return

screen th_change_repeat:
    timer .5 repeat True action Function(change_th)
    text str(th) align (.5,.5)  #цифра показываться на экране не будет если эту строчку убрать

label start:
    show screen th_change_repeat
    pause
    return

pirsus

#984
Спасибо, ребята, вы нереально помогаете! nwow2 


Код
screen choice(items):
    style_prefix "choice"
    vbox:
        align (.0,.0)     #<--- ВСТАВИТЬ ВОТ ЭТУ СТРОЧКУ ДЛЯ СМЕЩЕНИЯ В ЛЕВЫЙ ВЕРХНИЙ
        pos (50,50)      #<--- А ВОТ ЭТУ ДЛЯ ОТСТУПА НА 50-50 ПИКСЕЛЕЙ ВНИЗ НАВПРАВА
        for i in items:
            textbutton i.caption action i.action
Эта вставка на меню не повлияла
Но чуть ниже в этом же блоке выставление точек помогло.

Код
style choice_vbox:
    xalign 0.0
    ypos 70
    xpos 70
    yanchor 0.5


В итоге получилось прям то, что надо
Прикрепления: 2124413.png (152.7 Kb)

pirsus

#985
По изменению переменной:

А как мне добавить к ней еще и случайный таймер?
 
Код
timer .5 repeat

Мне надо будет задублировать верхнюю фенкцию (на питоне), чтобы создать еще одну случайную переменную для таймера?

А вот что получилось с менюшками:
Прикрепления: 9308948.png (56.1 Kb)

stop_control

#987
Привет.
Когда надо отобразить текст в виде картинке в RenPy:

show text "01234567890":
    xpos 800
    ypos 200
    zoom 0.1
    alpha 0.1

А как, тоже самое сделать в Python?
Сообщение отредактировал stop_control - Четверг, 07/Янв/2021, 22:49
«Иди пожалуйся своей мамочке»

Tailsrus

#988
Привееет :3 у меня тут проблемка возникла. Ее суть в том что мне нужно сделать так, чтобы при нажатий на заранее приготовленную
область, менялось значения переменной на необходимую мною. Проблема заключается в том что я ни могу найти подходящую команду.


Код
screen info:
   mousearea:
      area (458, 672, 42, 44)
      hovered Show("buttons")
      unhovered Hide("buttons")

screen buttons:
   button:
      action AddToSet ($ health = 1)

pirsus

#990
Цитата Tailsrus ()
Привееет :3 у меня тут проблемка возникла. Ее суть в том что мне нужно сделать так, чтобы при нажатий на заранее приготовленнуюобласть, менялось значения переменной на необходимую мною. Проблема заключается в том что я ни могу найти подходящую команду.

Можно использовать имейджмапы

screen IMAGEMAP (название):

    imagemap:
        ground "back.png"
        hover "hover.png"

        hotspot (1680, 255, 1680+175, 255+170)  clicked:
            $ твоя переменная = 
            Jump("нужный лейбл")

Добавляешь столько хотспотов, сколько надо

        
label Название:
    call screen  IMAGEMAP (название):
Поиск: