Своё поле ввода с кнопками «OK» и «Cancel»

Материал из Ren'Py Wiki
Перейти к навигации Перейти к поиску
Input.jpg

# своё текстовое окно ввода с кнопками «OK» и «Cancel»
# файл script.rpy
init -2 python:
  temp = ""
  message=""
  def inp(newstr):
    global temp
    temp = newstr
  def my_input(msg="Введите текст:"):
    global message
    message = msg
    if renpy.call_screen("input_scr"):
      return temp
    else:
      return False
# оформить экран можно как угодно
screen input_scr():
  modal True
  frame:
    xalign 0.5 yalign 0.5
    xsize 272 ysize 72
    vbox:
      label "[message]"
      add Input(default="", changed=inp, button=renpy.get_widget("input_scr", message))
      hbox:
        textbutton _("OK") action Return(True)
        textbutton _("Cancel") action Return(False)
# пример использования:
label start:
  scene black
  $ t = my_input("Пароль по-эльфийски:") #$ t = my_input()
  if t:
    "Ты ответил: [t]\nПравильный ответ: der parol"
  else:
    "Что, не знаешь, что ответить? Неуч. Дэр пароль же!"
  return

На главную страницу Книга рецептов Энциклопедии Ren'Py Renpy для чайников Вернуться к началу статьи