Wiki
Clone wikiEverlasting-Summer-RpyPlayer / Language Reference
Текст
Оформление
{html} <текст>
- включает поддержку HTML-тегов в тексте,{big} <текст> {/big}
,{small} <текст> {/small}
- размер текста,{center} <текст>
- центрирование текста
Многострочный текст
Строки в RpyPlayer поддерживают экранирование символов (\' \" \n \r), а также, в отличие от оригинального RenPy, поддерживается многострочный текст. Пример:
#!python sl "Добро пожаловать в лагерь \"Совёнок\"" sl 'Добро пожаловать в лагерь "Совёнок"' me "Я к вам пишу – чего же боле? Что я могу еще сказать? Теперь, я знаю, в вашей воле Меня презреньем наказать." # то же самое, в одну строку me "Я к вам пишу – чего же боле?\nЧто я могу еще сказать?\nТеперь, я знаю, в вашей воле\nМеня презреньем наказать."
Реплика без ожидания подтверждения
$ renpy.say(автор реплики, "Текст", interact=True|False)
Если interact=False, то ожидание подтверждения прочтения произведено не будет, а сразу будет выполняться следующая команда. Подразумевается использование паузы после этой команды.
#!python $ renpy.say(mi, "Нет, честно-честно!", interact=False) $ renpy.pause(0.1, hard=True) $ renpy.say(mi, "Никто не верит, а меня правда так зовут.", interact=False) $ renpy.pause(0.1, hard=True)
Имена персонажей
Функции для работы с именами персонажей:
$ make_names_unknown()
- делает имена всех персонажей неизвестными. Ольга Дмитриевна будет называться вожатой, Виола - медсестрой, остальные - пионерами и пионерками.$ make_names_known()
- делает известными имена всех персонажей.$ meet("короткое имя", "полное имя")
или$ set_name("короткое имя", "полное имя")
- назначает имя персонажу.
#!python $ make_names_unknown() $ meet('dv', 'ДваЧе') $ meet("ht", "Helltar") ht "Теперь ты знаешь больше!"
Пример в файле test.names.rpy
Изображения
Псевдонимы для спрайтов
Псевдонимы для спрайтов задаются с помощью оператора AS. Пример:
#!python scene bg int_house_of_mt_day show mt angry pioneer far at fleft as mtangry show mt rage panama pioneer far at fright as mtrage show mt surprise panama pioneer far at right as mtsurprise show mt normal panama pioneer far at left as mtnormal show mt smile pioneer at cleft as mtsmile show mt grin pioneer at cright as mtgrin show mt laugh pioneer close as babe mt "Семён, ну чего ты стоишь? Принеси мешок сахара!!!" hide mtangry hide mtrage hide mtsurprise hide mtnormal hide mtsmile hide mtgrin hide babe
Музыка и звуки
Музыка
Музыка может задаваться любым из трёх вариантов:
play music music_list["название"]
play music "название"
play music название"
При этом будет проигрываться файл /music/название.ogg
#!python play music music_list["meet_me_there"] play music "no_tresspassing" play music awakening_power
Звуки
Звук может быть повторяющимся и неповторяющимся.
Первые задаются при помощи play sound название
, вторые - play sound_loop название
При этом будет проигрываться файл /music/название.ogg
Как и в случае с музыкой, есть три способа задать название
#!python play sound sfx_dinner_jingle_speaker play sound_loop head_heartbeat play sound "sfx_open_water_sink"
Очередь воспроизведения
Можно формировать очередь воспроизведения из звуков или музыки. Если в этой очереди есть треки, то они будут проигрываться сразу после окончания текущего музыки/звука. Команда выглядит так:
queue music "название"
#!python queue sound "bullet" queue sound "bullet" queue sound "bullet" "Тишину нарушили три выстрела."
#!python queue music music_list["meet_me_there"] queue music "no_tresspassing"
Ветвление и переменные
Переменные
Переменные задаются после оператора команд $: $ имя_переменной = выражение
По умолчанию переменная имеет значение 0 оно же False.
#!python $ new_d1_hanging_out_with_ussr = True $ lenochka += 1 $ perimetr = a+b+c+d
Безусловные переходы (jump / label)
Переход на указанную метку. Метка задаётся так: label имя_метки:
#!python play music music_list["everlasting_summer"] label loop: pi "Семён, ты попал..." uv "...в бесконечное лето!" jump loop
Условный оператор
Как и в случае с меню, оператор IF следует завершать неренпаевским ENDIF. Синтаксис таков (ветка else необязательна):
#!python if выражение: команды else: команды endif
#!python if day2_dv_bet == 1: th "Значит, не зря я всё же с ней поспорил!" endif if persistent.hentai: scene cg d2_mt_undressed else: scene black endif
Меню
Меню задаётся так (заголовок необязателен):
#!python menu: "заголовок" "вариант 1": команды "вариант 2": команды endmenu
#!python menu: "Сквиртл": me "Сквиртл, вперёд!" "Пикачу": me "Пикачу, я выбираю тебя!" show pchu at cleft pchu "Пика-пика" "Чаризард": me "Чаризард, задай им жару!!" endmenu
Можно указывать заголовок для выбора
#!python menu: "Куда направиться?" "Медпункт": me "Да что я там забыл?!" jump day2_main4 "Пляж": jump day2_beach_eve "Спортплощадка": jump day2_football_eve endmenu
Поддерживается меню любой вложенности.
Карта
Функции для работы с картой:
$ disable_all_zones()
- сбрасывает активные зоны. Функцию следует вызывать всякий раз перед установкой новых активных локаций.$ set_zone("название локации", "метка")
- активирует локацию для последующего выбора.
Список локаций (спасибо BPS).$ reset_zone("название локации")
- убирает локацию из списка активных.$ disable_current_zone()
- убирает текущую локацию, к которой был выполнен переход.$ show_map()
- показывает диалог выбора локации.
Управляющие команды
Пауза
Паузы бывают двух типов:
- C возможностью пропуска
$ renpy.pause(длительность в секундах)
- Без возможности пропуска
$ renpy.pause(длительность в секундах, hard=True)
Updated