Initial commit of a silly game I made to learn Ren'Py.
|
@ -0,0 +1,129 @@
|
||||||
|
# macOS-related files
|
||||||
|
.DS_Store
|
||||||
|
.AppleDouble
|
||||||
|
.LSOverride
|
||||||
|
|
||||||
|
# Windows-related files
|
||||||
|
Thumbs.db
|
||||||
|
Thumbs.db:encryptable
|
||||||
|
ehthumbs.db
|
||||||
|
ehthumbs_vista.db
|
||||||
|
[Dd]esktop.ini
|
||||||
|
|
||||||
|
# Python related files.
|
||||||
|
*.pyc
|
||||||
|
*.pyo
|
||||||
|
*.pyi
|
||||||
|
*.egg-info
|
||||||
|
|
||||||
|
# Editor/tool files.
|
||||||
|
*~
|
||||||
|
*.bak
|
||||||
|
.gdb_history
|
||||||
|
|
||||||
|
# Compiled Ren'Py files.
|
||||||
|
*.rpyc
|
||||||
|
*.rpyb
|
||||||
|
*.rpymc
|
||||||
|
|
||||||
|
# Ren'Py log files.
|
||||||
|
log.txt
|
||||||
|
errors.txt
|
||||||
|
traceback.txt
|
||||||
|
lint.txt
|
||||||
|
|
||||||
|
# Created directories.
|
||||||
|
saves/
|
||||||
|
tmp/
|
||||||
|
cache/
|
||||||
|
|
||||||
|
# Executables.
|
||||||
|
/renpy.exe
|
||||||
|
/renpy2.exe
|
||||||
|
/renpy3.exe
|
||||||
|
/renpy-32.exe
|
||||||
|
|
||||||
|
/renpy.sh
|
||||||
|
/renpy2.sh
|
||||||
|
/renpy3.sh
|
||||||
|
|
||||||
|
/renpy.app
|
||||||
|
/renpy2.app
|
||||||
|
/renpy3.app
|
||||||
|
|
||||||
|
/7z.sfx
|
||||||
|
|
||||||
|
# Libraries.
|
||||||
|
/lib
|
||||||
|
|
||||||
|
# Platforms.
|
||||||
|
/rapt
|
||||||
|
/rapt2
|
||||||
|
/rapt3
|
||||||
|
|
||||||
|
/renios
|
||||||
|
/renios2
|
||||||
|
/renios3
|
||||||
|
|
||||||
|
/web
|
||||||
|
/web2
|
||||||
|
/web3
|
||||||
|
|
||||||
|
# Docs.
|
||||||
|
/sphinx/source/inc
|
||||||
|
/sphinx/source/thequestion.rst
|
||||||
|
/doc
|
||||||
|
/doc-web
|
||||||
|
/LICENSE.txt
|
||||||
|
|
||||||
|
# Gui template.
|
||||||
|
/gui/game/gui
|
||||||
|
|
||||||
|
# Editors.
|
||||||
|
/jedit
|
||||||
|
/atom
|
||||||
|
/vscode
|
||||||
|
|
||||||
|
# Generated source.
|
||||||
|
/renpy/vc_version.py
|
||||||
|
/module/gen/
|
||||||
|
/module/gen3/
|
||||||
|
/module/gen-static/
|
||||||
|
/module/gen3-static/
|
||||||
|
/tutorial/game/tutorial_director.rpy
|
||||||
|
|
||||||
|
# Module build.
|
||||||
|
/module/build
|
||||||
|
/module/dist
|
||||||
|
/module/emscripten-static
|
||||||
|
|
||||||
|
# Download target.
|
||||||
|
/dl
|
||||||
|
|
||||||
|
# Pygame_sdl2.
|
||||||
|
/pygame_sdl2
|
||||||
|
|
||||||
|
# Steam.
|
||||||
|
steam_appid.txt
|
||||||
|
/steamapi.py
|
||||||
|
|
||||||
|
# Android.
|
||||||
|
*.keystore
|
||||||
|
|
||||||
|
# Type analysis.
|
||||||
|
/typings
|
||||||
|
|
||||||
|
# Live2D
|
||||||
|
cubism
|
||||||
|
CubismSdkForNative-4-*.zip
|
||||||
|
|
||||||
|
# Created files.
|
||||||
|
/screenshot*
|
||||||
|
.android.json
|
||||||
|
|
||||||
|
# Old files.
|
||||||
|
/0old
|
||||||
|
|
||||||
|
# Works in progress, throwaway scripts, etc.
|
||||||
|
/scratch
|
||||||
|
/*-dists
|
|
@ -0,0 +1,474 @@
|
||||||
|
################################################################################
|
||||||
|
## Initialization
|
||||||
|
################################################################################
|
||||||
|
|
||||||
|
## The init offset statement causes the initialization statements in this file
|
||||||
|
## to run before init statements in any other file.
|
||||||
|
init offset = -2
|
||||||
|
|
||||||
|
## Calling gui.init resets the styles to sensible default values, and sets the
|
||||||
|
## width and height of the game.
|
||||||
|
init python:
|
||||||
|
gui.init(2560, 1440)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
################################################################################
|
||||||
|
## GUI Configuration Variables
|
||||||
|
################################################################################
|
||||||
|
|
||||||
|
|
||||||
|
## Colors ######################################################################
|
||||||
|
##
|
||||||
|
## The colors of text in the interface.
|
||||||
|
|
||||||
|
## An accent color used throughout the interface to label and highlight text.
|
||||||
|
define gui.accent_color = '#660066'
|
||||||
|
|
||||||
|
## The color used for a text button when it is neither selected nor hovered.
|
||||||
|
define gui.idle_color = '#aaaaaa'
|
||||||
|
|
||||||
|
## The small color is used for small text, which needs to be brighter/darker to
|
||||||
|
## achieve the same effect.
|
||||||
|
define gui.idle_small_color = '#888888'
|
||||||
|
|
||||||
|
## The color that is used for buttons and bars that are hovered.
|
||||||
|
define gui.hover_color = '#660066'
|
||||||
|
|
||||||
|
## The color used for a text button when it is selected but not focused. A
|
||||||
|
## button is selected if it is the current screen or preference value.
|
||||||
|
define gui.selected_color = '#555555'
|
||||||
|
|
||||||
|
## The color used for a text button when it cannot be selected.
|
||||||
|
define gui.insensitive_color = '#aaaaaa7f'
|
||||||
|
|
||||||
|
## Colors used for the portions of bars that are not filled in. These are not
|
||||||
|
## used directly, but are used when re-generating bar image files.
|
||||||
|
define gui.muted_color = '#a366a3'
|
||||||
|
define gui.hover_muted_color = '#c199c1'
|
||||||
|
|
||||||
|
## The colors used for dialogue and menu choice text.
|
||||||
|
define gui.text_color = '#404040'
|
||||||
|
define gui.interface_text_color = '#404040'
|
||||||
|
|
||||||
|
|
||||||
|
## Fonts and Font Sizes ########################################################
|
||||||
|
|
||||||
|
## The font used for in-game text.
|
||||||
|
define gui.text_font = "DejaVuSans.ttf"
|
||||||
|
|
||||||
|
## The font used for character names.
|
||||||
|
define gui.name_text_font = "DejaVuSans.ttf"
|
||||||
|
|
||||||
|
## The font used for out-of-game text.
|
||||||
|
define gui.interface_text_font = "DejaVuSans.ttf"
|
||||||
|
|
||||||
|
## The size of normal dialogue text.
|
||||||
|
define gui.text_size = 44
|
||||||
|
|
||||||
|
## The size of character names.
|
||||||
|
define gui.name_text_size = 60
|
||||||
|
|
||||||
|
## The size of text in the game's user interface.
|
||||||
|
define gui.interface_text_size = 44
|
||||||
|
|
||||||
|
## The size of labels in the game's user interface.
|
||||||
|
define gui.label_text_size = 48
|
||||||
|
|
||||||
|
## The size of text on the notify screen.
|
||||||
|
define gui.notify_text_size = 32
|
||||||
|
|
||||||
|
## The size of the game's title.
|
||||||
|
define gui.title_text_size = 100
|
||||||
|
|
||||||
|
|
||||||
|
## Main and Game Menus #########################################################
|
||||||
|
|
||||||
|
## The images used for the main and game menus.
|
||||||
|
define gui.main_menu_background = "gui/main_menu.png"
|
||||||
|
define gui.game_menu_background = "gui/game_menu.png"
|
||||||
|
|
||||||
|
|
||||||
|
## Dialogue ####################################################################
|
||||||
|
##
|
||||||
|
## These variables control how dialogue is displayed on the screen one line at a
|
||||||
|
## time.
|
||||||
|
|
||||||
|
## The height of the textbox containing dialogue.
|
||||||
|
define gui.textbox_height = 370
|
||||||
|
|
||||||
|
## The placement of the textbox vertically on the screen. 0.0 is the top, 0.5 is
|
||||||
|
## center, and 1.0 is the bottom.
|
||||||
|
define gui.textbox_yalign = 1.0
|
||||||
|
|
||||||
|
|
||||||
|
## The placement of the speaking character's name, relative to the textbox.
|
||||||
|
## These can be a whole number of pixels from the left or top, or 0.5 to center.
|
||||||
|
define gui.name_xpos = 480
|
||||||
|
define gui.name_ypos = 0
|
||||||
|
|
||||||
|
## The horizontal alignment of the character's name. This can be 0.0 for left-
|
||||||
|
## aligned, 0.5 for centered, and 1.0 for right-aligned.
|
||||||
|
define gui.name_xalign = 0.0
|
||||||
|
|
||||||
|
## The width, height, and borders of the box containing the character's name, or
|
||||||
|
## None to automatically size it.
|
||||||
|
define gui.namebox_width = None
|
||||||
|
define gui.namebox_height = None
|
||||||
|
|
||||||
|
## The borders of the box containing the character's name, in left, top, right,
|
||||||
|
## bottom order.
|
||||||
|
define gui.namebox_borders = Borders(5, 5, 5, 5)
|
||||||
|
|
||||||
|
## If True, the background of the namebox will be tiled, if False, the
|
||||||
|
## background of the namebox will be scaled.
|
||||||
|
define gui.namebox_tile = False
|
||||||
|
|
||||||
|
|
||||||
|
## The placement of dialogue relative to the textbox. These can be a whole
|
||||||
|
## number of pixels relative to the left or top side of the textbox, or 0.5 to
|
||||||
|
## center.
|
||||||
|
define gui.dialogue_xpos = 536
|
||||||
|
define gui.dialogue_ypos = 100
|
||||||
|
|
||||||
|
## The maximum width of dialogue text, in pixels.
|
||||||
|
define gui.dialogue_width = 1488
|
||||||
|
|
||||||
|
## The horizontal alignment of the dialogue text. This can be 0.0 for left-
|
||||||
|
## aligned, 0.5 for centered, and 1.0 for right-aligned.
|
||||||
|
define gui.dialogue_text_xalign = 0.0
|
||||||
|
|
||||||
|
|
||||||
|
## Buttons #####################################################################
|
||||||
|
##
|
||||||
|
## These variables, along with the image files in gui/button, control aspects of
|
||||||
|
## how buttons are displayed.
|
||||||
|
|
||||||
|
## The width and height of a button, in pixels. If None, Ren'Py computes a size.
|
||||||
|
define gui.button_width = None
|
||||||
|
define gui.button_height = None
|
||||||
|
|
||||||
|
## The borders on each side of the button, in left, top, right, bottom order.
|
||||||
|
define gui.button_borders = Borders(8, 8, 8, 8)
|
||||||
|
|
||||||
|
## If True, the background image will be tiled. If False, the background image
|
||||||
|
## will be linearly scaled.
|
||||||
|
define gui.button_tile = False
|
||||||
|
|
||||||
|
## The font used by the button.
|
||||||
|
define gui.button_text_font = gui.interface_text_font
|
||||||
|
|
||||||
|
## The size of the text used by the button.
|
||||||
|
define gui.button_text_size = gui.interface_text_size
|
||||||
|
|
||||||
|
## The color of button text in various states.
|
||||||
|
define gui.button_text_idle_color = gui.idle_color
|
||||||
|
define gui.button_text_hover_color = gui.hover_color
|
||||||
|
define gui.button_text_selected_color = gui.selected_color
|
||||||
|
define gui.button_text_insensitive_color = gui.insensitive_color
|
||||||
|
|
||||||
|
## The horizontal alignment of the button text. (0.0 is left, 0.5 is center, 1.0
|
||||||
|
## is right).
|
||||||
|
define gui.button_text_xalign = 0.0
|
||||||
|
|
||||||
|
|
||||||
|
## These variables override settings for different kinds of buttons. Please see
|
||||||
|
## the gui documentation for the kinds of buttons available, and what each is
|
||||||
|
## used for.
|
||||||
|
##
|
||||||
|
## These customizations are used by the default interface:
|
||||||
|
|
||||||
|
define gui.radio_button_borders = Borders(36, 8, 8, 8)
|
||||||
|
|
||||||
|
define gui.check_button_borders = Borders(36, 8, 8, 8)
|
||||||
|
|
||||||
|
define gui.confirm_button_text_xalign = 0.5
|
||||||
|
|
||||||
|
define gui.page_button_borders = Borders(20, 8, 20, 8)
|
||||||
|
|
||||||
|
define gui.quick_button_borders = Borders(20, 8, 20, 0)
|
||||||
|
define gui.quick_button_text_size = 28
|
||||||
|
define gui.quick_button_text_idle_color = gui.idle_small_color
|
||||||
|
define gui.quick_button_text_selected_color = gui.accent_color
|
||||||
|
|
||||||
|
## You can also add your own customizations, by adding properly-named variables.
|
||||||
|
## For example, you can uncomment the following line to set the width of a
|
||||||
|
## navigation button.
|
||||||
|
|
||||||
|
# define gui.navigation_button_width = 250
|
||||||
|
|
||||||
|
|
||||||
|
## Choice Buttons ##############################################################
|
||||||
|
##
|
||||||
|
## Choice buttons are used in the in-game menus.
|
||||||
|
|
||||||
|
define gui.choice_button_width = 1580
|
||||||
|
define gui.choice_button_height = None
|
||||||
|
define gui.choice_button_tile = False
|
||||||
|
define gui.choice_button_borders = Borders(200, 10, 200, 10)
|
||||||
|
define gui.choice_button_text_font = gui.text_font
|
||||||
|
define gui.choice_button_text_size = gui.text_size
|
||||||
|
define gui.choice_button_text_xalign = 0.5
|
||||||
|
define gui.choice_button_text_idle_color = "#cccccc"
|
||||||
|
define gui.choice_button_text_hover_color = "#ffffff"
|
||||||
|
define gui.choice_button_text_insensitive_color = "#444444"
|
||||||
|
|
||||||
|
|
||||||
|
## File Slot Buttons ###########################################################
|
||||||
|
##
|
||||||
|
## A file slot button is a special kind of button. It contains a thumbnail
|
||||||
|
## image, and text describing the contents of the save slot. A save slot uses
|
||||||
|
## image files in gui/button, like the other kinds of buttons.
|
||||||
|
|
||||||
|
## The save slot button.
|
||||||
|
define gui.slot_button_width = 552
|
||||||
|
define gui.slot_button_height = 412
|
||||||
|
define gui.slot_button_borders = Borders(20, 20, 20, 20)
|
||||||
|
define gui.slot_button_text_size = 28
|
||||||
|
define gui.slot_button_text_xalign = 0.5
|
||||||
|
define gui.slot_button_text_idle_color = gui.idle_small_color
|
||||||
|
define gui.slot_button_text_selected_idle_color = gui.selected_color
|
||||||
|
define gui.slot_button_text_selected_hover_color = gui.hover_color
|
||||||
|
|
||||||
|
## The width and height of thumbnails used by the save slots.
|
||||||
|
define config.thumbnail_width = 512
|
||||||
|
define config.thumbnail_height = 288
|
||||||
|
|
||||||
|
## The number of columns and rows in the grid of save slots.
|
||||||
|
define gui.file_slot_cols = 3
|
||||||
|
define gui.file_slot_rows = 2
|
||||||
|
|
||||||
|
|
||||||
|
## Positioning and Spacing #####################################################
|
||||||
|
##
|
||||||
|
## These variables control the positioning and spacing of various user interface
|
||||||
|
## elements.
|
||||||
|
|
||||||
|
## The position of the left side of the navigation buttons, relative to the left
|
||||||
|
## side of the screen.
|
||||||
|
define gui.navigation_xpos = 80
|
||||||
|
|
||||||
|
## The vertical position of the skip indicator.
|
||||||
|
define gui.skip_ypos = 20
|
||||||
|
|
||||||
|
## The vertical position of the notify screen.
|
||||||
|
define gui.notify_ypos = 90
|
||||||
|
|
||||||
|
## The spacing between menu choices.
|
||||||
|
define gui.choice_spacing = 44
|
||||||
|
|
||||||
|
## Buttons in the navigation section of the main and game menus.
|
||||||
|
define gui.navigation_spacing = 8
|
||||||
|
|
||||||
|
## Controls the amount of spacing between preferences.
|
||||||
|
define gui.pref_spacing = 20
|
||||||
|
|
||||||
|
## Controls the amount of spacing between preference buttons.
|
||||||
|
define gui.pref_button_spacing = 0
|
||||||
|
|
||||||
|
## The spacing between file page buttons.
|
||||||
|
define gui.page_spacing = 0
|
||||||
|
|
||||||
|
## The spacing between file slots.
|
||||||
|
define gui.slot_spacing = 20
|
||||||
|
|
||||||
|
## The position of the main menu text.
|
||||||
|
define gui.main_menu_text_xalign = 1.0
|
||||||
|
|
||||||
|
|
||||||
|
## Frames ######################################################################
|
||||||
|
##
|
||||||
|
## These variables control the look of frames that can contain user interface
|
||||||
|
## components when an overlay or window is not present.
|
||||||
|
|
||||||
|
## Generic frames.
|
||||||
|
define gui.frame_borders = Borders(8, 8, 8, 8)
|
||||||
|
|
||||||
|
## The frame that is used as part of the confirm screen.
|
||||||
|
define gui.confirm_frame_borders = Borders(80, 80, 80, 80)
|
||||||
|
|
||||||
|
## The frame that is used as part of the skip screen.
|
||||||
|
define gui.skip_frame_borders = Borders(32, 10, 100, 10)
|
||||||
|
|
||||||
|
## The frame that is used as part of the notify screen.
|
||||||
|
define gui.notify_frame_borders = Borders(32, 10, 80, 10)
|
||||||
|
|
||||||
|
## Should frame backgrounds be tiled?
|
||||||
|
define gui.frame_tile = False
|
||||||
|
|
||||||
|
|
||||||
|
## Bars, Scrollbars, and Sliders ###############################################
|
||||||
|
##
|
||||||
|
## These control the look and size of bars, scrollbars, and sliders.
|
||||||
|
##
|
||||||
|
## The default GUI only uses sliders and vertical scrollbars. All of the other
|
||||||
|
## bars are only used in creator-written screens.
|
||||||
|
|
||||||
|
## The height of horizontal bars, scrollbars, and sliders. The width of vertical
|
||||||
|
## bars, scrollbars, and sliders.
|
||||||
|
define gui.bar_size = 50
|
||||||
|
define gui.scrollbar_size = 24
|
||||||
|
define gui.slider_size = 50
|
||||||
|
|
||||||
|
## True if bar images should be tiled. False if they should be linearly scaled.
|
||||||
|
define gui.bar_tile = False
|
||||||
|
define gui.scrollbar_tile = False
|
||||||
|
define gui.slider_tile = False
|
||||||
|
|
||||||
|
## Horizontal borders.
|
||||||
|
define gui.bar_borders = Borders(8, 8, 8, 8)
|
||||||
|
define gui.scrollbar_borders = Borders(8, 8, 8, 8)
|
||||||
|
define gui.slider_borders = Borders(8, 8, 8, 8)
|
||||||
|
|
||||||
|
## Vertical borders.
|
||||||
|
define gui.vbar_borders = Borders(8, 8, 8, 8)
|
||||||
|
define gui.vscrollbar_borders = Borders(8, 8, 8, 8)
|
||||||
|
define gui.vslider_borders = Borders(8, 8, 8, 8)
|
||||||
|
|
||||||
|
## What to do with unscrollable scrollbars in the gui. "hide" hides them, while
|
||||||
|
## None shows them.
|
||||||
|
define gui.unscrollable = "hide"
|
||||||
|
|
||||||
|
|
||||||
|
## History #####################################################################
|
||||||
|
##
|
||||||
|
## The history screen displays dialogue that the player has already dismissed.
|
||||||
|
|
||||||
|
## The number of blocks of dialogue history Ren'Py will keep.
|
||||||
|
define config.history_length = 250
|
||||||
|
|
||||||
|
## The height of a history screen entry, or None to make the height variable at
|
||||||
|
## the cost of performance.
|
||||||
|
define gui.history_height = 280
|
||||||
|
|
||||||
|
## The position, width, and alignment of the label giving the name of the
|
||||||
|
## speaking character.
|
||||||
|
define gui.history_name_xpos = 310
|
||||||
|
define gui.history_name_ypos = 0
|
||||||
|
define gui.history_name_width = 310
|
||||||
|
define gui.history_name_xalign = 1.0
|
||||||
|
|
||||||
|
## The position, width, and alignment of the dialogue text.
|
||||||
|
define gui.history_text_xpos = 340
|
||||||
|
define gui.history_text_ypos = 4
|
||||||
|
define gui.history_text_width = 1480
|
||||||
|
define gui.history_text_xalign = 0.0
|
||||||
|
|
||||||
|
|
||||||
|
## NVL-Mode ####################################################################
|
||||||
|
##
|
||||||
|
## The NVL-mode screen displays the dialogue spoken by NVL-mode characters.
|
||||||
|
|
||||||
|
## The borders of the background of the NVL-mode background window.
|
||||||
|
define gui.nvl_borders = Borders(0, 20, 0, 40)
|
||||||
|
|
||||||
|
## The maximum number of NVL-mode entries Ren'Py will display. When more entries
|
||||||
|
## than this are to be show, the oldest entry will be removed.
|
||||||
|
define gui.nvl_list_length = 6
|
||||||
|
|
||||||
|
## The height of an NVL-mode entry. Set this to None to have the entries
|
||||||
|
## dynamically adjust height.
|
||||||
|
define gui.nvl_height = 230
|
||||||
|
|
||||||
|
## The spacing between NVL-mode entries when gui.nvl_height is None, and between
|
||||||
|
## NVL-mode entries and an NVL-mode menu.
|
||||||
|
define gui.nvl_spacing = 20
|
||||||
|
|
||||||
|
## The position, width, and alignment of the label giving the name of the
|
||||||
|
## speaking character.
|
||||||
|
define gui.nvl_name_xpos = 860
|
||||||
|
define gui.nvl_name_ypos = 0
|
||||||
|
define gui.nvl_name_width = 300
|
||||||
|
define gui.nvl_name_xalign = 1.0
|
||||||
|
|
||||||
|
## The position, width, and alignment of the dialogue text.
|
||||||
|
define gui.nvl_text_xpos = 900
|
||||||
|
define gui.nvl_text_ypos = 16
|
||||||
|
define gui.nvl_text_width = 1180
|
||||||
|
define gui.nvl_text_xalign = 0.0
|
||||||
|
|
||||||
|
## The position, width, and alignment of nvl_thought text (the text said by the
|
||||||
|
## nvl_narrator character.)
|
||||||
|
define gui.nvl_thought_xpos = 480
|
||||||
|
define gui.nvl_thought_ypos = 0
|
||||||
|
define gui.nvl_thought_width = 1560
|
||||||
|
define gui.nvl_thought_xalign = 0.0
|
||||||
|
|
||||||
|
## The position of nvl menu_buttons.
|
||||||
|
define gui.nvl_button_xpos = 900
|
||||||
|
define gui.nvl_button_xalign = 0.0
|
||||||
|
|
||||||
|
## Localization ################################################################
|
||||||
|
|
||||||
|
## This controls where a line break is permitted. The default is suitable
|
||||||
|
## for most languages. A list of available values can be found at https://
|
||||||
|
## www.renpy.org/doc/html/style_properties.html#style-property-language
|
||||||
|
|
||||||
|
define gui.language = "unicode"
|
||||||
|
|
||||||
|
|
||||||
|
################################################################################
|
||||||
|
## Mobile devices
|
||||||
|
################################################################################
|
||||||
|
|
||||||
|
init python:
|
||||||
|
|
||||||
|
## This increases the size of the quick buttons to make them easier to touch
|
||||||
|
## on tablets and phones.
|
||||||
|
@gui.variant
|
||||||
|
def touch():
|
||||||
|
|
||||||
|
gui.quick_button_borders = Borders(80, 28, 80, 0)
|
||||||
|
|
||||||
|
## This changes the size and spacing of various GUI elements to ensure they
|
||||||
|
## are easily visible on phones.
|
||||||
|
@gui.variant
|
||||||
|
def small():
|
||||||
|
|
||||||
|
## Font sizes.
|
||||||
|
gui.text_size = 60
|
||||||
|
gui.name_text_size = 72
|
||||||
|
gui.notify_text_size = 50
|
||||||
|
gui.interface_text_size = 60
|
||||||
|
gui.button_text_size = 60
|
||||||
|
gui.label_text_size = 68
|
||||||
|
|
||||||
|
## Adjust the location of the textbox.
|
||||||
|
gui.textbox_height = 480
|
||||||
|
gui.name_xpos = 160
|
||||||
|
gui.dialogue_xpos = 180
|
||||||
|
gui.dialogue_width = 2200
|
||||||
|
|
||||||
|
## Change the size and spacing of various things.
|
||||||
|
gui.slider_size = 72
|
||||||
|
|
||||||
|
gui.choice_button_width = 2480
|
||||||
|
gui.choice_button_text_size = 60
|
||||||
|
|
||||||
|
gui.navigation_spacing = 40
|
||||||
|
gui.pref_button_spacing = 20
|
||||||
|
|
||||||
|
gui.history_height = 380
|
||||||
|
gui.history_text_width = 1380
|
||||||
|
|
||||||
|
gui.quick_button_text_size = 40
|
||||||
|
|
||||||
|
## File button layout.
|
||||||
|
gui.file_slot_cols = 2
|
||||||
|
gui.file_slot_rows = 2
|
||||||
|
|
||||||
|
## NVL-mode.
|
||||||
|
gui.nvl_height = 340
|
||||||
|
|
||||||
|
gui.nvl_name_width = 610
|
||||||
|
gui.nvl_name_xpos = 650
|
||||||
|
|
||||||
|
gui.nvl_text_width = 1830
|
||||||
|
gui.nvl_text_xpos = 690
|
||||||
|
gui.nvl_text_ypos = 10
|
||||||
|
|
||||||
|
gui.nvl_thought_width = 2480
|
||||||
|
gui.nvl_thought_xpos = 40
|
||||||
|
|
||||||
|
gui.nvl_button_width = 2480
|
||||||
|
gui.nvl_button_xpos = 40
|
After Width: | Height: | Size: 1.7 KiB |
After Width: | Height: | Size: 799 B |
After Width: | Height: | Size: 799 B |
After Width: | Height: | Size: 1.7 KiB |
After Width: | Height: | Size: 122 B |
After Width: | Height: | Size: 189 B |
After Width: | Height: | Size: 2.7 KiB |
After Width: | Height: | Size: 2.8 KiB |
After Width: | Height: | Size: 772 B |
After Width: | Height: | Size: 772 B |
After Width: | Height: | Size: 290 B |
After Width: | Height: | Size: 290 B |
After Width: | Height: | Size: 122 B |
After Width: | Height: | Size: 189 B |
After Width: | Height: | Size: 4.9 KiB |
After Width: | Height: | Size: 4.9 KiB |
After Width: | Height: | Size: 12 KiB |
After Width: | Height: | Size: 66 KiB |
After Width: | Height: | Size: 3.6 MiB |
After Width: | Height: | Size: 834 B |
After Width: | Height: | Size: 3.0 KiB |
After Width: | Height: | Size: 68 KiB |
After Width: | Height: | Size: 66 KiB |
After Width: | Height: | Size: 68 KiB |
After Width: | Height: | Size: 68 KiB |
After Width: | Height: | Size: 1.7 KiB |
After Width: | Height: | Size: 799 B |
After Width: | Height: | Size: 799 B |
After Width: | Height: | Size: 1.7 KiB |
After Width: | Height: | Size: 135 B |
After Width: | Height: | Size: 216 B |
After Width: | Height: | Size: 2.7 KiB |
After Width: | Height: | Size: 2.8 KiB |
After Width: | Height: | Size: 981 B |
After Width: | Height: | Size: 981 B |
After Width: | Height: | Size: 135 B |
After Width: | Height: | Size: 216 B |
After Width: | Height: | Size: 4.9 KiB |
After Width: | Height: | Size: 4.9 KiB |
After Width: | Height: | Size: 66 KiB |
After Width: | Height: | Size: 66 KiB |
After Width: | Height: | Size: 68 KiB |
After Width: | Height: | Size: 732 B |
After Width: | Height: | Size: 730 B |
After Width: | Height: | Size: 731 B |
After Width: | Height: | Size: 730 B |
After Width: | Height: | Size: 1.3 KiB |
After Width: | Height: | Size: 1.3 KiB |
After Width: | Height: | Size: 1.3 KiB |
After Width: | Height: | Size: 1.3 KiB |
After Width: | Height: | Size: 1.1 KiB |
After Width: | Height: | Size: 169 B |
After Width: | Height: | Size: 1.1 KiB |
After Width: | Height: | Size: 169 B |
After Width: | Height: | Size: 1.6 KiB |
After Width: | Height: | Size: 161 B |
After Width: | Height: | Size: 1.6 KiB |
After Width: | Height: | Size: 161 B |
After Width: | Height: | Size: 23 KiB |
After Width: | Height: | Size: 732 B |
After Width: | Height: | Size: 730 B |
After Width: | Height: | Size: 731 B |
After Width: | Height: | Size: 730 B |
After Width: | Height: | Size: 1.3 KiB |
After Width: | Height: | Size: 1.3 KiB |
After Width: | Height: | Size: 1.3 KiB |
After Width: | Height: | Size: 1.3 KiB |
After Width: | Height: | Size: 1.1 KiB |
After Width: | Height: | Size: 800 B |
After Width: | Height: | Size: 132 B |
After Width: | Height: | Size: 799 B |
After Width: | Height: | Size: 132 B |
After Width: | Height: | Size: 1.7 KiB |
After Width: | Height: | Size: 138 B |
After Width: | Height: | Size: 1.7 KiB |
After Width: | Height: | Size: 138 B |
After Width: | Height: | Size: 18 KiB |
After Width: | Height: | Size: 18 KiB |
After Width: | Height: | Size: 578 KiB |
After Width: | Height: | Size: 1.4 MiB |
After Width: | Height: | Size: 1.2 MiB |
|
@ -0,0 +1,209 @@
|
||||||
|
## This file contains options that can be changed to customize your game.
|
||||||
|
##
|
||||||
|
## Lines beginning with two '#' marks are comments, and you shouldn't uncomment
|
||||||
|
## them. Lines beginning with a single '#' mark are commented-out code, and you
|
||||||
|
## may want to uncomment them when appropriate.
|
||||||
|
|
||||||
|
|
||||||
|
## Basics ######################################################################
|
||||||
|
|
||||||
|
## A human-readable name of the game. This is used to set the default window
|
||||||
|
## title, and shows up in the interface and error reports.
|
||||||
|
##
|
||||||
|
## The _() surrounding the string marks it as eligible for translation.
|
||||||
|
|
||||||
|
define config.name = _("Oprah")
|
||||||
|
|
||||||
|
|
||||||
|
## Determines if the title given above is shown on the main menu screen. Set
|
||||||
|
## this to False to hide the title.
|
||||||
|
|
||||||
|
define gui.show_name = True
|
||||||
|
|
||||||
|
|
||||||
|
## The version of the game.
|
||||||
|
|
||||||
|
define config.version = "1.0"
|
||||||
|
|
||||||
|
|
||||||
|
## Text that is placed on the game's about screen. Place the text between the
|
||||||
|
## triple-quotes, and leave a blank line between paragraphs.
|
||||||
|
|
||||||
|
define gui.about = _p("""
|
||||||
|
""")
|
||||||
|
|
||||||
|
|
||||||
|
## A short name for the game used for executables and directories in the built
|
||||||
|
## distribution. This must be ASCII-only, and must not contain spaces, colons,
|
||||||
|
## or semicolons.
|
||||||
|
|
||||||
|
define build.name = "Oprah"
|
||||||
|
|
||||||
|
|
||||||
|
## Sounds and music ############################################################
|
||||||
|
|
||||||
|
## These three variables control, among other things, which mixers are shown
|
||||||
|
## to the player by default. Setting one of these to False will hide the
|
||||||
|
## appropriate mixer.
|
||||||
|
|
||||||
|
define config.has_sound = True
|
||||||
|
define config.has_music = True
|
||||||
|
define config.has_voice = True
|
||||||
|
|
||||||
|
|
||||||
|
## To allow the user to play a test sound on the sound or voice channel,
|
||||||
|
## uncomment a line below and use it to set a sample sound to play.
|
||||||
|
|
||||||
|
# define config.sample_sound = "sample-sound.ogg"
|
||||||
|
# define config.sample_voice = "sample-voice.ogg"
|
||||||
|
|
||||||
|
|
||||||
|
## Uncomment the following line to set an audio file that will be played while
|
||||||
|
## the player is at the main menu. This file will continue playing into the
|
||||||
|
## game, until it is stopped or another file is played.
|
||||||
|
|
||||||
|
# define config.main_menu_music = "main-menu-theme.ogg"
|
||||||
|
|
||||||
|
|
||||||
|
## Transitions #################################################################
|
||||||
|
##
|
||||||
|
## These variables set transitions that are used when certain events occur.
|
||||||
|
## Each variable should be set to a transition, or None to indicate that no
|
||||||
|
## transition should be used.
|
||||||
|
|
||||||
|
## Entering or exiting the game menu.
|
||||||
|
|
||||||
|
define config.enter_transition = dissolve
|
||||||
|
define config.exit_transition = dissolve
|
||||||
|
|
||||||
|
|
||||||
|
## Between screens of the game menu.
|
||||||
|
|
||||||
|
define config.intra_transition = dissolve
|
||||||
|
|
||||||
|
|
||||||
|
## A transition that is used after a game has been loaded.
|
||||||
|
|
||||||
|
define config.after_load_transition = None
|
||||||
|
|
||||||
|
|
||||||
|
## Used when entering the main menu after the game has ended.
|
||||||
|
|
||||||
|
define config.end_game_transition = None
|
||||||
|
|
||||||
|
|
||||||
|
## A variable to set the transition used when the game starts does not exist.
|
||||||
|
## Instead, use a with statement after showing the initial scene.
|
||||||
|
|
||||||
|
|
||||||
|
## Window management ###########################################################
|
||||||
|
##
|
||||||
|
## This controls when the dialogue window is displayed. If "show", it is always
|
||||||
|
## displayed. If "hide", it is only displayed when dialogue is present. If
|
||||||
|
## "auto", the window is hidden before scene statements and shown again once
|
||||||
|
## dialogue is displayed.
|
||||||
|
##
|
||||||
|
## After the game has started, this can be changed with the "window show",
|
||||||
|
## "window hide", and "window auto" statements.
|
||||||
|
|
||||||
|
define config.window = "auto"
|
||||||
|
|
||||||
|
|
||||||
|
## Transitions used to show and hide the dialogue window
|
||||||
|
|
||||||
|
define config.window_show_transition = Dissolve(.2)
|
||||||
|
define config.window_hide_transition = Dissolve(.2)
|
||||||
|
|
||||||
|
|
||||||
|
## Preference defaults #########################################################
|
||||||
|
|
||||||
|
## Controls the default text speed. The default, 0, is infinite, while any other
|
||||||
|
## number is the number of characters per second to type out.
|
||||||
|
|
||||||
|
default preferences.text_cps = 0
|
||||||
|
|
||||||
|
|
||||||
|
## The default auto-forward delay. Larger numbers lead to longer waits, with 0
|
||||||
|
## to 30 being the valid range.
|
||||||
|
|
||||||
|
default preferences.afm_time = 15
|
||||||
|
|
||||||
|
|
||||||
|
## Save directory ##############################################################
|
||||||
|
##
|
||||||
|
## Controls the platform-specific place Ren'Py will place the save files for
|
||||||
|
## this game. The save files will be placed in:
|
||||||
|
##
|
||||||
|
## Windows: %APPDATA\RenPy\<config.save_directory>
|
||||||
|
##
|
||||||
|
## Macintosh: $HOME/Library/RenPy/<config.save_directory>
|
||||||
|
##
|
||||||
|
## Linux: $HOME/.renpy/<config.save_directory>
|
||||||
|
##
|
||||||
|
## This generally should not be changed, and if it is, should always be a
|
||||||
|
## literal string, not an expression.
|
||||||
|
|
||||||
|
define config.save_directory = "Oprah-1682141088"
|
||||||
|
|
||||||
|
|
||||||
|
## Icon ########################################################################
|
||||||
|
##
|
||||||
|
## The icon displayed on the taskbar or dock.
|
||||||
|
|
||||||
|
define config.window_icon = "gui/window_icon.png"
|
||||||
|
|
||||||
|
|
||||||
|
## Build configuration #########################################################
|
||||||
|
##
|
||||||
|
## This section controls how Ren'Py turns your project into distribution files.
|
||||||
|
|
||||||
|
init python:
|
||||||
|
|
||||||
|
## The following functions take file patterns. File patterns are case-
|
||||||
|
## insensitive, and matched against the path relative to the base directory,
|
||||||
|
## with and without a leading /. If multiple patterns match, the first is
|
||||||
|
## used.
|
||||||
|
##
|
||||||
|
## In a pattern:
|
||||||
|
##
|
||||||
|
## / is the directory separator.
|
||||||
|
##
|
||||||
|
## * matches all characters, except the directory separator.
|
||||||
|
##
|
||||||
|
## ** matches all characters, including the directory separator.
|
||||||
|
##
|
||||||
|
## For example, "*.txt" matches txt files in the base directory, "game/
|
||||||
|
## **.ogg" matches ogg files in the game directory or any of its
|
||||||
|
## subdirectories, and "**.psd" matches psd files anywhere in the project.
|
||||||
|
|
||||||
|
## Classify files as None to exclude them from the built distributions.
|
||||||
|
|
||||||
|
build.classify('**~', None)
|
||||||
|
build.classify('**.bak', None)
|
||||||
|
build.classify('**/.**', None)
|
||||||
|
build.classify('**/#**', None)
|
||||||
|
build.classify('**/thumbs.db', None)
|
||||||
|
|
||||||
|
## To archive files, classify them as 'archive'.
|
||||||
|
|
||||||
|
# build.classify('game/**.png', 'archive')
|
||||||
|
# build.classify('game/**.jpg', 'archive')
|
||||||
|
|
||||||
|
## Files matching documentation patterns are duplicated in a mac app build,
|
||||||
|
## so they appear in both the app and the zip file.
|
||||||
|
|
||||||
|
build.documentation('*.html')
|
||||||
|
build.documentation('*.txt')
|
||||||
|
|
||||||
|
|
||||||
|
## A Google Play license key is required to download expansion files and perform
|
||||||
|
## in-app purchases. It can be found on the "Services & APIs" page of the Google
|
||||||
|
## Play developer console.
|
||||||
|
|
||||||
|
# define build.google_play_key = "..."
|
||||||
|
|
||||||
|
|
||||||
|
## The username and project name associated with an itch.io project, separated
|
||||||
|
## by a slash.
|
||||||
|
|
||||||
|
# define build.itch_project = "renpytom/test-project"
|
|
@ -0,0 +1,60 @@
|
||||||
|
# The script of the game goes in this file.
|
||||||
|
|
||||||
|
# Declare characters used by this game. The color argument colorizes the
|
||||||
|
# name of the character.
|
||||||
|
|
||||||
|
define o = Character("Oprah")
|
||||||
|
define j = Character("Jerry")
|
||||||
|
|
||||||
|
|
||||||
|
# The game starts here.
|
||||||
|
|
||||||
|
label start:
|
||||||
|
|
||||||
|
# Show a background. This uses a placeholder by default, but you can
|
||||||
|
# add a file (named either "bg room.png" or "bg room.jpg") to the
|
||||||
|
# images directory to show it.
|
||||||
|
|
||||||
|
scene bg apartment
|
||||||
|
|
||||||
|
# This shows a character sprite. A placeholder is used, but you can
|
||||||
|
# replace it by adding a file named "eileen happy.png" to the images
|
||||||
|
# directory.
|
||||||
|
|
||||||
|
"It was a sunny Taco Tuesday afternoon, and Oprah Winfrey was standing around in her friend Jerry Seinfeld's apartment."
|
||||||
|
|
||||||
|
# These display lines of dialogue.
|
||||||
|
|
||||||
|
o "Oh, Jerry. My soup is so hairy!"
|
||||||
|
|
||||||
|
show oprah happy
|
||||||
|
with dissolve
|
||||||
|
|
||||||
|
o "And let me tell you, Jerry. It absolutely reeks of garlic powder!"
|
||||||
|
|
||||||
|
"Jerry turns into a snail, but a snail that is capable of human speech."
|
||||||
|
|
||||||
|
hide oprah happy
|
||||||
|
|
||||||
|
show oprah happy at left
|
||||||
|
|
||||||
|
show jerry happy at right
|
||||||
|
with dissolve
|
||||||
|
|
||||||
|
j "Oprah, I love wafting the scent of this soup, even as this small but rotund snail!"
|
||||||
|
|
||||||
|
# This ends the game.
|
||||||
|
|
||||||
|
"Jerry was not lying this time."
|
||||||
|
|
||||||
|
hide oprah happy
|
||||||
|
|
||||||
|
hide jerry happy
|
||||||
|
|
||||||
|
scene black
|
||||||
|
|
||||||
|
"This would be the end of Jerry's life."
|
||||||
|
|
||||||
|
"He would be destroyed by Oprah in a magnificent moment of rage."
|
||||||
|
|
||||||
|
return
|