1
# This file is in the public domain. Feel free to modify it as a basis
2
# for your own screens.
4
##############################################################################
7
# Screen that's used to display adv-mode dialogue.
8
# http://www.renpy.org/doc/html/screen_special.html#say
11
# Defaults for side_image and two_window
12
default side_image = None
13
default two_window = False
15
# Decide if we want to use the one-window or two-window varaint.
18
# The one window variant.
32
# The two window variant.
34
style "say_two_window_vbox"
38
style "say_who_window"
51
# If there's a side image, display it above the text.
55
add SideImage() xalign 0.0 yalign 1.0
61
##############################################################################
64
# Screen that's used to display in-game menus.
65
# http://www.renpy.org/doc/html/screen_special.html#choice
78
for caption, action, chosen in items:
84
style "menu_choice_button"
86
text caption style "menu_choice"
89
text caption style "menu_caption"
92
config.narrator_menu = True
94
style.menu_window.set_parent(style.default)
95
style.menu_choice.set_parent(style.button_text)
96
style.menu_choice.clear()
97
style.menu_choice_button.set_parent(style.button)
98
style.menu_choice_button.xminimum = int(config.screen_width * 0.75)
99
style.menu_choice_button.xmaximum = int(config.screen_width * 0.75)
102
##############################################################################
105
# Screen that's used to display renpy.input()
106
# http://www.renpy.org/doc/html/screen_special.html#input
110
window style "input_window":
113
text prompt style "input_prompt"
114
input id "input" style "input_text"
118
##############################################################################
121
# Screen used for nvl-mode dialogue and menus.
122
# http://www.renpy.org/doc/html/screen_special.html#nvl
133
for who, what, who_id, what_id, window_id in dialogue:
145
# Display a menu, if given.
151
for caption, action, chosen in items:
156
style "nvl_menu_choice_button"
159
text caption style "nvl_menu_choice"
163
text caption style "nvl_dialogue"
165
add SideImage() xalign 0.0 yalign 1.0
169
##############################################################################
172
# Screen that's used to display the main menu, when Ren'Py first starts
173
# http://www.renpy.org/doc/html/screen_special.html#main-menu
177
# This ensures that any other menu screen is replaced.
180
# The background of the main menu.
184
# The main menu buttons.
192
textbutton _("Start Game") action Start()
193
textbutton _("Load Game") action ShowMenu("load")
194
textbutton _("Preferences") action ShowMenu("preferences")
195
textbutton _("Help") action Help()
196
textbutton _("Quit") action Quit(confirm=False)
200
# Make all the main menu buttons be the same size.
201
style.mm_button.size_group = "mm"
204
##############################################################################
207
# Screen that's included in other screens to display the game menu
208
# navigation and background.
209
# http://www.renpy.org/doc/html/screen_special.html#navigation
212
# The background of the game menu.
216
# The various buttons.
224
textbutton _("Return") action Return()
225
textbutton _("Preferences") action ShowMenu("preferences")
226
textbutton _("Save Game") action ShowMenu("save")
227
textbutton _("Load Game") action ShowMenu("load")
228
textbutton _("Main Menu") action MainMenu()
229
textbutton _("Help") action Help()
230
textbutton _("Quit") action Quit()
233
style.gm_nav_button.size_group = "gm_nav"
236
##############################################################################
239
# Screens that allow the user to save and load the game.
240
# http://www.renpy.org/doc/html/screen_special.html#save
241
# http://www.renpy.org/doc/html/screen_special.html#load
243
# Since saving and loading are so similar, we combine them into
244
# a single screen, file_picker. We then use the file_picker screen
245
# from simple load and save screens.
250
style "file_picker_frame"
254
# The buttons at the top allow the user to pick a
257
style_group "file_picker_nav"
259
textbutton _("Previous"):
260
action FilePagePrevious()
262
textbutton _("Auto"):
263
action FilePage("auto")
265
textbutton _("Quick"):
266
action FilePage("quick")
268
for i in range(1, 9):
272
textbutton _("Next"):
273
action FilePageNext()
278
# Display a grid of file slots.
282
style_group "file_picker"
284
# Display ten file slots, numbered 1 - 10.
285
for i in range(1, columns * rows + 1):
287
# Each file slot is a button.
294
# Add the screenshot.
295
add FileScreenshot(i)
297
$ file_name = FileSlotName(i, columns * rows)
298
$ file_time = FileTime(i, empty=_("Empty Slot."))
299
$ save_name = FileSaveName(i)
301
text "[file_name]. [file_time!t]\n[save_name!t]"
303
key "save_delete" action FileDelete(i)
308
# This ensures that any other menu screen is replaced.
316
# This ensures that any other menu screen is replaced.
323
style.file_picker_frame = Style(style.menu_frame)
325
style.file_picker_nav_button = Style(style.small_button)
326
style.file_picker_nav_button_text = Style(style.small_button_text)
328
style.file_picker_button = Style(style.large_button)
329
style.file_picker_text = Style(style.large_button_text)
333
##############################################################################
336
# Screen that allows the user to change the preferences.
337
# http://www.renpy.org/doc/html/screen_special.html#prefereces
343
# Include the navigation.
346
# Put the navigation columns in a three-wide grid.
358
textbutton _("Window") action Preference("display", "window")
359
textbutton _("Fullscreen") action Preference("display", "fullscreen")
365
label _("Transitions")
366
textbutton _("All") action Preference("transitions", "all")
367
textbutton _("None") action Preference("transitions", "none")
373
label _("Text Speed")
374
bar value Preference("text speed")
380
textbutton _("Joystick...") action Preference("joystick")
389
textbutton _("Seen Messages") action Preference("skip", "seen")
390
textbutton _("All Messages") action Preference("skip", "all")
396
textbutton _("Begin Skipping") action Skip()
402
label _("After Choices")
403
textbutton _("Stop Skipping") action Preference("after choices", "stop")
404
textbutton _("Keep Skipping") action Preference("after choices", "skip")
410
label _("Auto-Forward Time")
411
bar value Preference("auto-forward time")
418
label _("Music Volume")
419
bar value Preference("music volume")
425
label _("Sound Volume")
426
bar value Preference("sound volume")
428
if config.sample_sound:
429
textbutton _("Test"):
430
action Play("sound", config.sample_sound)
431
style "soundtest_button"
437
label _("Voice Volume")
438
bar value Preference("voice volume")
440
if config.sample_voice:
442
action Play("voice", config.sample_voice)
443
style "soundtest_button"
446
style.pref_frame.xfill = True
447
style.pref_frame.xmargin = 5
448
style.pref_frame.top_margin = 5
450
style.pref_vbox.xfill = True
452
style.pref_button.size_group = "pref"
453
style.pref_button.xalign = 1.0
455
style.pref_slider.xmaximum = 192
456
style.pref_slider.xalign = 1.0
458
style.soundtest_button.xalign = 1.0
461
##############################################################################
464
# Screen that asks the user a yes or no question.
465
# http://www.renpy.org/doc/html/screen_special.html#yesno-prompt
495
textbutton _("Yes") action yes_action
496
textbutton _("No") action no_action
500
style.yesno_button.size_group = "yesno"
501
style.yesno_label_text.text_align = 0.5
504
##############################################################################
507
# A screen that's included by the default say screen, and adds quick access to
508
# several useful functions.
511
# Add an in-game quick menu.
518
textbutton _("Q.Save") action QuickSave()
519
textbutton _("Q.Load") action QuickLoad()
520
textbutton _("Save") action ShowMenu('save')
521
textbutton _("Skip") action Skip()
522
textbutton _("Auto") action Preference("auto-forward", "toggle")
523
textbutton _("Prefs") action ShowMenu('preferences')
526
style.quick_button.set_parent('default')
527
style.quick_button.background = None
528
style.quick_button.xpadding = 5
530
style.quick_button_text.set_parent('default')
531
style.quick_button_text.size = 12
532
style.quick_button_text.idle_color = "#8888"
533
style.quick_button_text.hover_color = "#ccc"
534
style.quick_button_text.selected_idle_color = "#cc08"
535
style.quick_button_text.selected_hover_color = "#cc0"
536
style.quick_button_text.insensitive_color = "#4448"
538
# Set a default value for the auto-forward time, and note that AFM is
539
# turned off by default.
540
config.default_afm_time = 10
541
config.default_afm_enable = False