# This file is in the public domain. Feel free to modify it as a basis # for your own screens. ############################################################################## # Say # # Screen that's used to display adv-mode dialogue. # http://www.renpy.org/doc/html/screen_special.html#say screen say: # Defaults for side_image and two_window default side_image = None default two_window = False # Decide if we want to use the one-window or two-window varaint. if not two_window: # The one window variant. window: id "window" has vbox: style "say_vbox" if who: text who id "who" xoffset 80 yoffset 30 font "bebas.ttf" size 35 bold False antialias True text what id "what" xoffset 15 yoffset 25 color "#a8a297" xmaximum 985 else: text what id "what" xoffset 15 yoffset 55 color "#a8a297" xmaximum 985 else: # The two window variant. vbox: style "say_two_window_vbox" if who: window: style "say_who_window" text who: id "who" font "bebas.ttf" size 35 xoffset 80 bold False antialias True yoffset 30 window: id "window" has vbox: style "say_vbox" text what id "what" yoffset 20 # If there's a side image, display it above the text. if side_image: add side_image else: add SideImage() xalign 0.01 yalign 1.0 # Use the quick menu. use quick_menu ############################################################################## # Choice # # Screen that's used to display in-game menus. # http://www.renpy.org/doc/html/screen_special.html#choice screen choice: window: style "menu_window" xalign 0.5 yalign 0.5 vbox: style "menu" spacing 2 for caption, action, chosen in items: if action: button: action action style "menu_choice_button" text caption style "menu_choice" else: text caption style "menu_caption" init -2 python: config.narrator_menu = True style.menu_window.set_parent(style.default) style.menu_choice.set_parent(style.button_text) style.menu_choice.clear() style.menu_choice_button.set_parent(style.button) style.menu_choice_button.xminimum = 650 style.menu_choice_button.xmaximum = 650 style.menu_choice.color = "#312c29" style.menu_choice.size = 22 style.menu_choice.yoffset = 3 style.menu_choice.font = "bebas.ttf" style.menu_choice.hover_color = "#63584b" style.menu_choice.hover_drop_shadow = None style.menu_choice_button.background = "ui/choice.png" style.menu_choice_button.hover_background = "ui/choice_hover.png" style.menu_choice_button.ymaximum = 73 style.menu_choice_button.yminimum = 73 ############################################################################## # Input # # Screen that's used to display renpy.input() # http://www.renpy.org/doc/html/screen_special.html#input screen input: window: has vbox text prompt input id "input" use quick_menu ############################################################################## # Nvl # # Screen used for nvl-mode dialogue and menus. # http://www.renpy.org/doc/html/screen_special.html#nvl screen nvl: window: style "nvl_window" has vbox: style "nvl_vbox" # Display dialogue. for who, what, who_id, what_id, window_id in dialogue: window: id window_id has hbox: spacing 10 if who is not None: text who id who_id text what id what_id # Display a menu, if given. if items: vbox: id "menu" for caption, action, chosen in items: if action: button: style "nvl_menu_choice_button" action action text caption style "nvl_menu_choice" else: text caption style "nvl_dialogue" add SideImage() xalign 0.0 yalign 1.0 use quick_menu # init -5 python: ## Changing the NVL (narration) window style.nvl_window.xpadding = 40 style.nvl_window.ypadding = 40 style.nvl_dialogue.line_spacing = 4 ############################################################################## # Main Menu # # Screen that's used to display the main menu, when Ren'Py first starts # http://www.renpy.org/doc/html/screen_special.html#main-menu screen main_menu: # This ensures that any other menu screen is replaced. tag menu imagemap: ground "ui/main_idle.png" idle "ui/main_idle.png" hover "ui/main_hover.png" hotspot (380, 286, 240, 58) action [Hide("info_button"), Start() ] hotspot (380, 344, 240, 55) action [Hide("info_button"), ShowMenu("load") ] hotspot (380, 399, 240, 41) action [Hide("info_button"), ShowMenu("preferences") ] if persistent.true_ed: hotspot (380, 440, 240, 43) action [Hide("info_button"), ShowMenu("extras") ] hotspot (380, 481, 241, 65) action [Hide("info_button"), Quit(confirm=True) ] hotspot (38, 503, 59, 61) action Show("info_button", transition=dissolve) # credits / help init -2 python: # Make all the main menu buttons be the same size. style.mm_button.size_group = "mm" style.hyperlink_text.color = "#6e9757" style.hyperlink_text.hover_color = "#5c3004" screen info_button: #modal True imagebutton: xalign 0.0 idle "ui/info.png" hover "ui/info.png" action Hide("info_button", transition=dissolve) ####################### # Extras screen extras: tag menu imagemap: ground "ui/extras_idle.png" idle "ui/extras_idle.png" hover "ui/extras_hover.png" hotspot (927, 508, 84, 82) action Return() hotspot (329, 231, 363, 69) action Start("qanda") hotspot (326, 301, 382, 71) action ShowMenu("music_room") ############################################################################## # Navigation # # Screen that's included in other screens to display the game menu # navigation and background. # http://www.renpy.org/doc/html/screen_special.html#navigation screen navigation: # The background of the game menu. window: style "gm_root" # The various buttons. frame: style_group "gm_nav" xalign .98 yalign .98 has vbox textbutton _("Return") action Return() textbutton _("Preferences") action ShowMenu("preferences") textbutton _("Save Game") action ShowMenu("save") textbutton _("Load Game") action ShowMenu("load") textbutton _("Main Menu") action MainMenu() textbutton _("Help") action Help() textbutton _("Quit") action Quit() init -2 python: style.gm_nav_button.size_group = "gm_nav" ############################################################################## # Save, Load # # Screens that allow the user to save and load the game. # http://www.renpy.org/doc/html/screen_special.html#save # http://www.renpy.org/doc/html/screen_special.html#load # Since saving and loading are so similar, we combine them into # a single screen, file_picker. We then use the file_picker screen # from simple load and save screens. screen load_save_slot: $ file_text = "{size=+4}{i}%s{/i}{/size}\n%s: %s" % ( FileSaveName(number), FileSlotName(number, 2), FileTime(number, format='%B %d, %Y \n @%I:%M%p', empty=_("Empty Slot.")) ) add FileScreenshot(number) xpos 50 ypos 50 text file_text xpos 264 ypos 56 size 18 color "#a6a6a6" font "bebas.ttf" screen file_picker: imagemap: ground "ui/sl_ground.png" idle "ui/sl_idle.png" hover "ui/sl_hover.png" hotspot (380, 550, 17, 18) clicked FilePage(1) hotspot (398, 550, 20, 18) clicked FilePage(2) hotspot (419, 550, 17, 20) clicked FilePage(3) hotspot (258, 541, 44, 36) clicked FilePagePrevious() hotspot (511, 543, 46, 34) clicked FilePageNext(max=3) hotspot (190, 84, 415, 216) clicked FileAction(1): use load_save_slot(number=1) hotspot (190, 305, 415, 216) clicked FileAction(2): use load_save_slot(number=2) hotspot (810, 123, 214, 37) action Return() hotspot (810, 163, 214, 37) action ShowMenu("preferences") hotspot (810, 203, 214, 37) action ShowMenu("save") hotspot (810, 243, 214, 37) action ShowMenu("load") hotspot (810, 283, 214, 37) action Help() hotspot (810, 323, 214, 37) action MainMenu() hotspot (810, 363, 214, 37) action Quit() screen save: # This ensures that any other menu screen is replaced. tag menu use file_picker add "ui/save.png" screen load: # This ensures that any other menu screen is replaced. tag menu use file_picker add "ui/load.png" init -2 python: config.thumbnail_width = 200 config.thumbnail_height = 117 style.file_picker_frame = Style(style.menu_frame) style.file_picker_nav_button = Style(style.small_button) style.file_picker_nav_button_text = Style(style.small_button_text) style.file_picker_button = Style(style.large_button) style.file_picker_text = Style(style.large_button_text) ############################################################################## # Preferences # # Screen that allows the user to change the preferences. # http://www.renpy.org/doc/html/screen_special.html#prefereces screen preferences: tag menu imagemap: ground "ui/prefs_ground.png" idle "ui/prefs_idle.png" hover "ui/prefs_selhov.png" selected_idle "ui/prefs_selhov.png" hotspot (93, 198, 135, 65) action Preference("display", "window") hotspot (230, 197, 137, 64) action Preference("display", "fullscreen") hotspot (91, 376, 140, 63) action Preference("skip", "seen") hotspot (235, 377, 130, 62) action Preference("skip", "all") hotspot (91, 284, 139, 69) action Preference("transitions", "all") hotspot (233, 286, 135, 65) action Preference("transitions", "none") hotspot (93, 468, 134, 62) action Preference("after choices", "stop") hotspot (232, 469, 135, 58) action Preference("after choices", "skip") hotspot (515, 184, 72, 89) action Preference("auto-forward time", 10) #auto slow hotspot (589, 185, 59, 88) action Preference("auto-forward time", 30) #auto med hotspot (654, 187, 65, 84) action Preference("auto-forward time", 60) #auto fast hotspot (520, 307, 63, 93) action [ Preference("text speed", 15), Show("text_test") ] #slow hotspot (586, 309, 64, 88) action [ Preference("text speed", 55), Show("text_test") ] #med hotspot (655, 310, 62, 88) action [ Preference("text speed", 0), Show("text_test") ] #fast bar pos (492, 516) value Preference("sound volume") style "pref_slider" bar pos (492, 426) value Preference("music volume") style "pref_slider" #NAV hotspot (810, 123, 214, 37) action [ Hide("text_test"), Return() ] #hotspot (810, 163, 214, 37) action ShowMenu("preferences") hotspot (810, 203, 214, 37) action [ Hide("text_test"), ShowMenu("save") ] hotspot (810, 243, 214, 37) action [ Hide("text_test"), ShowMenu("load") ] hotspot (810, 283, 214, 37) action Help() hotspot (810, 323, 214, 37) action [ Hide("text_test"), MainMenu() ] hotspot (810, 363, 214, 37) action [ Hide("text_test"), Quit() ] init -2 python: style.pref_slider.left_bar = "ui/pixel.png" style.pref_slider.right_bar = "ui/pixel.png" style.pref_slider.xmaximum = 260 # width of your left_bar image. style.pref_slider.ymaximum = 52 # height of your left_bar image. Probably will be the height of the red part of the bar plus the slider's height. style.pref_slider.thumb = "ui/thumb.png" style.pref_slider.thumb_offset = 26 # Half of your slider's width in pixels style.pref_slider.thumb_shadow = None screen text_test: text "This is a test of text speed." slow_cps True xalign 0.222 yalign 0.1 size 15 color "#9a948a" timer 3.0 action Hide("text_test") ############################################################################## # Yes/No Prompt # # Screen that asks the user a yes or no question. # http://www.renpy.org/doc/html/screen_special.html#yesno-prompt screen yesno_prompt: modal True add "ui/textbox.png" label _(message): xalign 0.5 yalign 0.44 hbox: xalign 0.5 yalign 0.54 spacing 100 imagebutton: idle "ui/yes_idle.png" hover "ui/yes_hover.png" action yes_action imagebutton: idle "ui/no_idle.png" hover "ui/no_hover.png" action no_action init -10 python: style.yesno_button.size_group = "yesno" style.yesno_label_text.text_align = 0.5 style.button_text.font = "bebas.ttf" ############################################################################## # Music room screen music_room: tag menu imagemap: ground "ui/music_ground.png" idle "ui/music_idle.png" hover "ui/music_hover.png" selected_idle "ui/music_selected.png" selected_hover "ui/music_hover.png" hotspot (106, 120, 575, 57) action mr.Play("sounds/rain.ogg") hotspot (106, 178, 365, 43) action mr.Play("sounds/untold.ogg") hotspot (106, 225, 329, 45) action mr.Play("sounds/casual.ogg") hotspot (106, 274, 559, 47) action mr.Play("sounds/mystery.ogg") hotspot (106, 325, 506, 55) action mr.Play("sounds/distrust.ogg") hotspot (306, 412, 43, 50) action mr.Play() hotspot (350, 408, 39, 53) clicked mr.Stop() hotspot (390, 411, 39, 60) action mr.Previous() hotspot (430, 411, 40, 56) action mr.Next() hotspot (927, 508, 84, 82) action ShowMenu("extras") on "replaced" action Play("music", "sounds/d_34a_ss.ogg") ############################################################################## # Quick Menu # # A screen that's included by the default say screen, and adds quick access to # several useful functions. screen quick_menu: # Add an in-game quick menu. hbox: style_group "quick" xalign 1.0 yalign 0.99 textbutton _("Save") action ShowMenu('save') textbutton _("Load") action ShowMenu('load') textbutton _("Skip") action Skip() textbutton _("Auto") action Preference("auto-forward", "toggle") textbutton _("Options") action ShowMenu('preferences') init -2 python: style.quick_button.set_parent('default') style.quick_button.background = None style.quick_button.xpadding = 5 style.quick_button_text.set_parent('default') style.quick_button_text.size = 12 style.quick_button_text.font = "bebas.ttf" style.quick_button_text.idle_color = "#8888" style.quick_button_text.hover_color = "#ccc" style.quick_button_text.selected_idle_color = "#5e7502" style.quick_button_text.selected_hover_color = "#750302" style.quick_button_text.insensitive_color = "#4448" # Set a default value for the auto-forward time, and note that AFM is # turned off by default. config.default_afm_time = 10 config.default_afm_enable = False