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

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

Admin

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

denis_game

#1382
события которые генерировались или тригерились не сразу т.е. как бы случайным образом вообще  не происходят как будто их нет не было и быть не должно, это не связано с тем что для того чтобы их открыть надо сделать то-то и то-то, они как бы должны происходить, я точно помню что они происходили, но теперь они не происходят чтобы я не делал, так как в игре используется бесконечный календарь пустых дней, то что-то сломалось и теперь день в котором это должно произойти какой угодно, но только не сегодняшний игра прокрастинирует) я точно знаю что запусти я ее на другом пк будь у меня такой этот день давно бы уже настал, но нет он не приходит, вы можете не верить мне там точно были события которые я раньше запускал, а теперь не запускаются чтобы я не делал.

название вряд ли поможет SuperPowered

KrAleGen

#1384
Злравствуйте! Я запустил РенПай 8.0.1. Выбираю "Добавить новый проект" - Выбираю язык - Ввожу имя проекта - "Продолжить" - Выходит сообщение "Нажмите Shift+R для продолжения" - нажимаю Выходит сообщение "Запуск проекта провален. Пожалуйста, убедитесь, что ваш проект нормально запускается перед использованием этой команды." Не понятно... Я же его только что запустил. Что нужно сделать?
Сообщение отредактировал KrAleGen - Воскресенье, 24/Июл/2022, 12:11

YaNeKeksik

#1387
версия Ren'py 7.4.11
Объясните тупому почему вот этот код:
init python:
import random
lst=[1,2]
screen my_list():
modal True
vbox:
spacing 10

$ new=random.randint(1,2)
$ lst.append(new)
$ x=len(lst)
text str(x)
label start:

scene bg room

show eileen happy

e "Вы создали новую игру Ren'Py."

e "Добавьте сюжет, изображения и музыку и отправьте её в мир!"
show screen my_list()

e "ну и какого чёрта?"
return
Выдает мне ответ 6?
Я добавляю в список из 2 элементов еще 1 рандомный элемент и элементов становится 6.
Что я делаю не так?
До этого я добавлял их в цикле, и точно также, они добавлялись по 4 за каждую итерацию цикла.
Сообщение отредактировал YaNeKeksik - Четверг, 28/Июл/2022, 17:50

dmit

#1388
YaNeKeksik, читайте документацию  - Ren'Py будет запускать экран несколько раз, если сочтет это необходимым. Он запускает экран как часть процесса прогнозирования изображения, прежде чем экран будет показан в первый раз. В результате, если экран имеет побочные эффекты, эти побочные эффекты могут возникать в непредсказуемое время.
http://ru.renpypedia.shoutwiki.com/wiki...._python

рекомендую вынести операторы питона из экрана
и использовать renpy.random.randint(1,2)  без import random
планета FOREVER!!!      Unkenbro team

YaNeKeksik

#1389
dmit, спасибо за пояснение.
P.S. Я изменил код, так как вы посоветовали - все заработало. Еще раз большое спасибо.
Сообщение отредактировал YaNeKeksik - Пятница, 29/Июл/2022, 08:37

Marnvini

#1390
Подскажите, как добавить вертикальную полоску прокрутки в окно frame, чтобы можно было прокручивать длинный список/текст

Пример кода:


Код
screen eventlog:
        
    frame: 
        xsize 1920 
        ysize 1080 
        padding (10,10) 
        xpos 1 
        ypos 1               

        vbox:
            xsize 1800
            
            hbox:    
                xsize 1800 
                text "Журнал событий" xalign 0.5
            
            null height 30
            
            hbox:      
                xsize 1800     
                text "Юля:"
                if ularut == 0:
                    text "Длинный текст Длинный текст Длинный текст Длинный текст Длинный текст Длинный текст Длинный текст Длинный текст" xalign 0.5
                elif ularut == 1:
                    text "бла-бла-бла бла-бла-бла бла-бла-бла бла-бла-бла бла-бла-бла бла-бла-бла бла-бла-бла бла-бла-бла бла-бла-бла" xalign 0.5

            null height 30
            
            hbox:      
                xsize 1800 
                text "Елена Ал1:"
                text "Длинный текст Длинный текст Длинный текст Длинный текст Длинный текст Длинный текст Длинный текст Длинный текст" xalign 0.5

            null height 30
            
            hbox:      
                xsize 1800 
                text "Елена Ал2:"
                text "Длинный текст Длинный текст Длинный текст Длинный текст Длинный текст Длинный текст Длинный текст Длинный текст" xalign 0.5
                
            null height 30

    ДАЛЕЕ МНОГО ТАКИХ ЖЕ БОКСОВ (hbox)
Так выглядит в игре
Прикрепления: 2138930.png (1.87 Mb)
Резюме разработчика на Renpy

Marnvini

#1391
Всё разобрался :)

Если кому потребуется, нужно добавить следующий код, внутри которого уже располагать контейнеры hbox
       
Код
vpgrid:

            cols 2
            spacing 5
            draggable True
            mousewheel True

            scrollbars "vertical"
            side_xalign 0.9
Резюме разработчика на Renpy

Orinoku

#1392
Вечер добрый. Подскажите, как можно скрыть кнопку в меню и показывать ее только после открытия хотя бы одной концовки (концовок всего 5)?
Предполагаю, что нужно присвоить переменные концовкам и где-то у кнопки прописать условие для отображения, но не совсем понимаю где его прописывать. И какое именно условие.
Заранее благодарю за обратную связь)

dmit

#1393
Orinoku
Код
init python:    # инициализация постоянных данных при первом запуске
    if persistent.ends is None:
        persistent.ends = False

# Игра начинается здесь.
label start:
    "Текст новеллы. Бла-бла-бала."
    # конструкцию ниже можно использовать в ллюбом месте скрипта
    # if persistent.ends:
    #     jump end4
    # даже прямо в меню выбора
    # последний пункт появится, когда будет пройдена хотябы 1 концовка
    menu:
        "Пройдите одну из концовок и снова запускайте игру."
        "К концовке 1":
            jump end1
        "К концовке 2":
            jump end2
        "К концовке 3":
            jump end3
        # следующий пункт меню появится только
        # если persistent.ends = True - пройдена одна из концовок
        "К концовке 4" if persistent.ends:
            jump end4
    return
# сюда переходим при выборе одного из пунктов
label end1:
    "Концовка 1."
    # запоминаем, что мы ее прошли
    $ persistent.ends = True
    return
label end2:
    "Концовка 2."
    $ persistent.ends = True
    return
label end3:
    "Концовка 3."
    $ persistent.ends = True
    return
label end4:
    "Концовка 4!"
    return
планета FOREVER!!!      Unkenbro team

Orinoku

#1394
dmit, я не совсем корректно выразилась в своем вопросе^^"
Я хочу спрятать кнопку в main_menu (то есть там где типа начать игру и все вот это), и показать ее после того, как игрок пройдет хотя бы до одну концовку. Может знаете как такое реализовать?)
Надеюсь теперь яснее
И все равно спасибо вам за оперативный ответ!)
Форум о визуальных новеллах » Для разработчиков » Ren'Py » Помощь по Ren'Py (Вопрос\Ответ)
Поиск: