스토어 변수

Ren'Py에는 동작을 제어하는 여러 스토어 변수가 있습니다. 스토어 변수는 언제든 변경할 수 있습니다. 게임을 시작한 뒤 변경한 스토어 변수는 저장 시스템으로 저장하고 불러오며, 롤백할 때 함께 되돌아갑니다.

adv = Character(...)

ADV 모드 캐릭터의 템플릿이며, Character()를 호출할 때 사용하는 기본 캐릭터 종류입니다.

_autosave = True

이 변수를 False로 설정하면 자동 저장을 비활성화합니다.

_confirm_quit = True

게임을 종료할 때 확인을 요청할지 결정합니다. 시작 화면에서는 False로 설정되며, 메인 메뉴에서는 무시합니다.

_constant

스토어에서 참으로 설정하면 해당 스토어가 상수임을 나타냅니다. 상수 스토어를 참고하세요.

default_mouse

기본적으로 정의되어 있지 않습니다. 이 변수가 정의되어 있고 게임 시작 시 config.mouse가 설정되어 있으면, 현재 커서가 존재하지 않거나 기본 커서일 때 마우스 커서를 찾는 키로 사용합니다. config.mouse와 MouseDisplayable()에서 사용합니다.

자세한 내용은 사용자 정의 마우스 커서를 참고하세요.

_dismiss_pause = True

True이면 플레이어가 일시 정지와 화면 전환을 중단하고 진행할 수 있습니다.

_game_menu_screen = "save"

별도의 스크린을 선택하지 않고 게임 메뉴에 들어갈 때 표시할 스크린입니다. 예를 들어 마우스 오른쪽 버튼을 클릭하거나 Escape를 누르거나, ShowMenu()에 인수를 지정하지 않은 경우입니다. None이면 게임 메뉴에 들어갈 수 없습니다.

시작 화면이 시작될 때 None으로 설정되고, 시작 화면이 끝나면 원래 값으로 복원됩니다.

_greedy_rollback = True

불러오기 후 적극적 롤백을 수행할지 결정합니다. 적극적 롤백은 불러오는 시점에 실행 중이던 문 바로 전이 아니라, 마지막으로 상호작용한 문 바로 뒤까지 되돌립니다.

_history = True

참이면 대사 한 줄을 표시할 때 대사 기록을 남깁니다. config.history_length도 설정되어 있어야 합니다.

_history_list = [ ]

각 대사 기록 줄에 대응하는 기록 객체 리스트입니다. 오래된 것부터 최신 순으로 정렬됩니다. 자세한 내용은 대사 기록 절을 참고하세요.

_ignore_action = None

None이 아니라면 오류 처리 스크린에서 무시(Ignore)를 클릭한 뒤 실행할 액션입니다. 보통 Jump()를 사용해 오류에서 복구할 수 있는 위치로 이동합니다. None이면 다음 Ren'Py 문부터 실행을 이어갑니다.

main_menu = False

Ren'Py는 메인 메뉴에 있는 동안 이 변수를 True로 설정합니다. 이를 이용해 메인 메뉴에서 스크린을 다르게 표시할 수 있습니다.

_menu = False

Ren'Py는 메인 메뉴 또는 게임 메뉴 컨텍스트에 들어갈 때 이 변수를 True로 설정합니다.

menu = renpy.display_menu

게임 내 선택 메뉴를 표시하기 위해 호출하는 함수입니다. renpy.display_menu()와 같은 인수를 받아야 하며, 알 수 없는 키워드 인수는 그대로 전달해야 합니다. 여기에 nvl_menu()를 대입하면 NVL 모드 선택 메뉴를 표시합니다.

mouse_visible = True

마우스 표시 여부를 제어합니다. 세 가지 값이 있습니다.

  • "always" - 마우스를 항상 표시합니다.

  • True - 마우스를 움직이면 표시하지만, config.mouse_hide_time초 동안 움직이지 않거나 컨트롤러를 입력하면 숨깁니다.

  • False - 마우스를 표시하지 않습니다.

게임 메뉴에 들어갈 때 거짓이면, 들어가는 순간 mouse_visible을 참으로 설정하고 나올 때 복원합니다.

name_only = Character(...)

say 문에서 캐릭터 이름으로 문자열을 지정할 때 사용하는 템플릿 캐릭터입니다. 다음은

"에일린" "안녕, 세상아."

아래와 같습니다.

$ temp_char = Character("에일린", kind=name_only)
temp_char "안녕, 세상아."

다만 temp_char 변수는 사용하지 않습니다.

narrator = Character(...)

서술을 말하는 캐릭터입니다. 즉, 캐릭터나 캐릭터 이름을 지정하지 않은 say 문에 사용합니다. 다음은

"안녕, 세상아."

아래와 같습니다.

narrator "안녕, 세상아."
_quit_slot = None

None이 아니라면 파일 슬롯의 이름을 나타내는 문자열이어야 합니다. Ren'Py를 종료할 때 이 슬롯에 게임을 저장합니다.

_rollback = True

롤백 허용 여부를 제어합니다.

say : Callable

말하는 캐릭터 대신 문자열을 사용했을 때 Ren'Py가 대사를 표시하기 위해 호출하는 함수입니다.

define e = Character("에일린", who_color="#0f0")

label start:
    "에일린" "제 이름은 에일린이에요." # will call the say function
    e "저는 기차를 좋아해요!" # will not call the say function

이 함수는 renpy.say()와 같은 서명을 가져야 합니다. renpy.say()를 호출하지 말고 다른 say 문 대응 함수를 사용해야 합니다.

캐릭터에 대사를 전달하여 호출하면 되므로 이 함수를 직접 호출하는 경우는 드뭅니다. 주로 say 문의 동작에 개입할 수 있도록 재정의하기 위해 존재하는 변수입니다.

save_name = ""

저장 데이터에 포함되는 저장 이름입니다. config.automatic_steam_timeline이 참이면 Steam 타임라인에서도 사용하며, 장의 이름으로 생각하는 것이 적절합니다.

_scene_show_hide_transition = None

None이 아니라면, with 문이나 대사창 전환이 뒤따르지 않는 일련의 scene, show, hide 문 다음에 with 문으로 실행할 화면 전환입니다.

_screenshot_pattern = None

None이 아니라면 스크린샷 파일명을 정할 때 config.screenshot_pattern보다 이 문자열을 우선 사용합니다. 문자열 형식은 해당 변수의 문서를 참고하세요.

_skipping = True

건너뛰기 허용 여부를 제어합니다.

_version = ...

새 게임을 시작할 때 config.version으로 설정됩니다. after_load 레이블이나 config.after_load_callbacks에서 필요한 업그레이드를 판단하는 데 사용할 수 있습니다.

처음 시작할 때 한 번만 설정됩니다. 그 뒤에는 게임에서 필요에 따라 _version을 갱신해야 합니다.

_window = False

window show와 window hide 문이 설정하며, window auto도 간접적으로 설정합니다. 참이면 대사가 아닌 문을 실행하는 동안에도 대사창을 표시합니다.

_window_auto = False

window auto가 참으로, window show와 window hide가 거짓으로 설정합니다. 참이면 window auto 동작을 수행합니다.

_window_subtitle = ''

config.window_title 뒤에 붙여 게임 창 제목을 만듭니다. 게임 메뉴에 있는 동안에는 자동으로 config.menu_window_subtitle로 설정됩니다.