added a lot more of the expressions, fixed up the pixel font, and started on the stage directions
Word count: 5,669 words
|
@ -87,8 +87,8 @@ define long_term = Achievement(
|
|||
name=_("Long Term"),
|
||||
id="long_term",
|
||||
description=_("You left on your own."),
|
||||
locked_image=Transform("gui/window_icon.png", matrixcolor=SepiaMatrix()),
|
||||
unlocked_image=Transform("gui/window_icon.png", matrixcolor=SepiaMatrix()),
|
||||
locked_image=Transform("gui/blank.png", matrixcolor=SepiaMatrix()),
|
||||
unlocked_image=Transform("gui/blank.png", matrixcolor=SepiaMatrix()),
|
||||
hidden=True,
|
||||
)
|
||||
|
||||
|
@ -96,8 +96,8 @@ define scare_tactics = Achievement(
|
|||
name=_("Scare Tactics"),
|
||||
id="scare_tactics",
|
||||
description=_("You frightened your students off."),
|
||||
locked_image=Transform("gui/window_icon.png", matrixcolor=SepiaMatrix()),
|
||||
unlocked_image=Transform("gui/window_icon.png", matrixcolor=SepiaMatrix()),
|
||||
locked_image=Transform("gui/blank.png", matrixcolor=SepiaMatrix()),
|
||||
unlocked_image=Transform("gui/blank.png", matrixcolor=SepiaMatrix()),
|
||||
hidden=True,
|
||||
)
|
||||
|
||||
|
@ -105,8 +105,8 @@ define very_loud_quitting = Achievement(
|
|||
name=_("Very Loud Quitting"),
|
||||
id="very_loud_quitting",
|
||||
description=_("You forced all the faculty into quitting."),
|
||||
locked_image=Transform("gui/window_icon.png", matrixcolor=SepiaMatrix()),
|
||||
unlocked_image=Transform("gui/window_icon.png", matrixcolor=SepiaMatrix()),
|
||||
locked_image=Transform("gui/blank.png", matrixcolor=SepiaMatrix()),
|
||||
unlocked_image=Transform("gui/blank.png", matrixcolor=SepiaMatrix()),
|
||||
hidden=True,
|
||||
)
|
||||
|
||||
|
@ -114,8 +114,8 @@ define she_has_your_back = Achievement(
|
|||
name=_("She Has Your Back"),
|
||||
id="she_has_your_back",
|
||||
description=_("Either Reimu, Marisa, or Alice had your back."),
|
||||
locked_image=Transform("gui/window_icon.png", matrixcolor=SepiaMatrix()),
|
||||
unlocked_image=Transform("gui/window_icon.png", matrixcolor=SepiaMatrix()),
|
||||
locked_image=Transform("gui/blank.png", matrixcolor=SepiaMatrix()),
|
||||
unlocked_image=Transform("gui/blank.png", matrixcolor=SepiaMatrix()),
|
||||
hidden=True,
|
||||
)
|
||||
|
||||
|
@ -123,8 +123,8 @@ define they_have_your_back = Achievement(
|
|||
name=_("They Have Your Back"),
|
||||
id="they_have_your_back",
|
||||
description=_("Your class had your back."),
|
||||
locked_image=Transform("gui/window_icon.png", matrixcolor=SepiaMatrix()),
|
||||
unlocked_image=Transform("gui/window_icon.png", matrixcolor=SepiaMatrix()),
|
||||
locked_image=Transform("gui/blank.png", matrixcolor=SepiaMatrix()),
|
||||
unlocked_image=Transform("gui/blank.png", matrixcolor=SepiaMatrix()),
|
||||
hidden=True,
|
||||
)
|
||||
|
||||
|
@ -132,8 +132,8 @@ define hedgehog_dilemma_solved = Achievement(
|
|||
name=_("Hedgehog's Dilemma Solved"),
|
||||
id="hedgehog_dilemma_solved",
|
||||
description=_("You were proud and stubborn until the end."),
|
||||
locked_image=Transform("gui/window_icon.png", matrixcolor=SepiaMatrix()),
|
||||
unlocked_image=Transform("gui/window_icon.png", matrixcolor=SepiaMatrix()),
|
||||
locked_image=Transform("gui/blank.png", matrixcolor=SepiaMatrix()),
|
||||
unlocked_image=Transform("gui/blank.png", matrixcolor=SepiaMatrix()),
|
||||
hidden=True,
|
||||
)
|
||||
|
||||
|
@ -141,8 +141,8 @@ define retroactive = Achievement(
|
|||
name=_("Retroactive"),
|
||||
id="retroactive",
|
||||
description=_("You made your decision."),
|
||||
locked_image=Transform("gui/window_icon.png", matrixcolor=SepiaMatrix()),
|
||||
unlocked_image=Transform("gui/window_icon.png", matrixcolor=SepiaMatrix()),
|
||||
locked_image=Transform("gui/blank.png", matrixcolor=SepiaMatrix()),
|
||||
unlocked_image=Transform("gui/blank.png", matrixcolor=SepiaMatrix()),
|
||||
hidden=True,
|
||||
)
|
||||
|
||||
|
@ -300,7 +300,7 @@ screen achievement_popup(a, tag, num):
|
|||
fit "contain" ysize 95 align (0.5, 0.5)
|
||||
vbox:
|
||||
text a.name
|
||||
text a.description size 25
|
||||
text a.description size 100
|
||||
|
||||
## Hide the screen after 5 seconds. You can change the time but shouldn't
|
||||
## change the action.
|
||||
|
@ -390,39 +390,39 @@ screen ending_gallery():
|
|||
if config.developer:
|
||||
action a.Toggle()
|
||||
has hbox
|
||||
if a.idle_img:
|
||||
fixed:
|
||||
align (0.5, 0.5)
|
||||
xysize (155, 155)
|
||||
add a.idle_img fit "scale-down" ysize 155 align (0.5, 0.5)
|
||||
else:
|
||||
null width -10
|
||||
# if a.idle_img:
|
||||
# fixed:
|
||||
# align (0.5, 0.5)
|
||||
# xysize (155, 155)
|
||||
# add a.idle_img fit "scale-down" ysize 155 align (0.5, 0.5)
|
||||
# else:
|
||||
# null width -10
|
||||
vbox:
|
||||
label a.name
|
||||
text a.description
|
||||
if a.has():
|
||||
## There are two ways to display the timestamp. The
|
||||
## first is automatically formatted like
|
||||
## Unlocked Sep 14, 2023 @ 6:45 PM
|
||||
text a.timestamp size 22
|
||||
## If you want to format it yourself, you can use
|
||||
## the get_timestamp method:
|
||||
# text __("Achieved at ") + a.get_timestamp(__("%H:%M on %Y/%m/%d"))
|
||||
## The above example would display the timestamp like:
|
||||
## Achieved at 18:45 on 2023/09/14
|
||||
## See https://strftime.org/ for formatting
|
||||
## Note also the double underscores for translation.
|
||||
elif a.stat_max:
|
||||
# Has a bar to show stat progress.
|
||||
## NOTE: If you don't want to show the progress *bar*,
|
||||
## you can remove this entire block (or potentially just
|
||||
## keep the text and not the bar if you like).
|
||||
fixed:
|
||||
fit_first True
|
||||
bar value a.stat_progress range a.stat_max:
|
||||
style 'achievement_bar'
|
||||
text "[a.stat_progress]/[a.stat_max]":
|
||||
style_suffix "progress_text"
|
||||
# if a.has():
|
||||
# ## There are two ways to display the timestamp. The
|
||||
# ## first is automatically formatted like
|
||||
# ## Unlocked Sep 14, 2023 @ 6:45 PM
|
||||
# text a.timestamp size 100
|
||||
# ## If you want to format it yourself, you can use
|
||||
# ## the get_timestamp method:
|
||||
# # text __("Achieved at ") + a.get_timestamp(__("%H:%M on %Y/%m/%d"))
|
||||
# ## The above example would display the timestamp like:
|
||||
# ## Achieved at 18:45 on 2023/09/14
|
||||
# ## See https://strftime.org/ for formatting
|
||||
# ## Note also the double underscores for translation.
|
||||
# elif a.stat_max:
|
||||
# # Has a bar to show stat progress.
|
||||
# ## NOTE: If you don't want to show the progress *bar*,
|
||||
# ## you can remove this entire block (or potentially just
|
||||
# ## keep the text and not the bar if you like).
|
||||
# fixed:
|
||||
# fit_first True
|
||||
# bar value a.stat_progress range a.stat_max:
|
||||
# style 'achievement_bar'
|
||||
# text "[a.stat_progress]/[a.stat_max]":
|
||||
# style_suffix "progress_text"
|
||||
|
||||
## So there's a bit of space at the bottom after scrolling all the way.
|
||||
null height 100
|
||||
|
@ -432,7 +432,7 @@ screen ending_gallery():
|
|||
## or relocate this.
|
||||
label __("Endings: ") + "{earned}/{total}".format(
|
||||
earned=Achievement.num_earned(), total=Achievement.num_total()):
|
||||
text_size 52 xalign 0.5 text_color "#f93c3e" top_padding 15
|
||||
text_size 100 xalign 0.5 text_color "#f93c3e" top_padding 15
|
||||
|
||||
## This is an example of a button you might have during development which
|
||||
## will reset all achievement progress at once. It can also be provided
|
||||
|
|
After Width: | Height: | Size: 81 B |
Before Width: | Height: | Size: 5.4 KiB After Width: | Height: | Size: 4.4 KiB |
After Width: | Height: | Size: 50 KiB |
After Width: | Height: | Size: 11 KiB |
After Width: | Height: | Size: 11 KiB |
After Width: | Height: | Size: 11 KiB |
After Width: | Height: | Size: 11 KiB |
After Width: | Height: | Size: 11 KiB |
Before Width: | Height: | Size: 11 KiB |
After Width: | Height: | Size: 1.8 KiB |
After Width: | Height: | Size: 16 KiB |
After Width: | Height: | Size: 16 KiB |
After Width: | Height: | Size: 16 KiB |
After Width: | Height: | Size: 16 KiB |
After Width: | Height: | Size: 16 KiB |
After Width: | Height: | Size: 16 KiB |
After Width: | Height: | Size: 16 KiB |
Before Width: | Height: | Size: 3.3 KiB |
After Width: | Height: | Size: 13 KiB |
After Width: | Height: | Size: 13 KiB |
Before Width: | Height: | Size: 13 KiB After Width: | Height: | Size: 13 KiB |
After Width: | Height: | Size: 13 KiB |
After Width: | Height: | Size: 13 KiB |
After Width: | Height: | Size: 13 KiB |
After Width: | Height: | Size: 13 KiB |
After Width: | Height: | Size: 14 KiB |
After Width: | Height: | Size: 14 KiB |
After Width: | Height: | Size: 14 KiB |
After Width: | Height: | Size: 14 KiB |
After Width: | Height: | Size: 14 KiB |
After Width: | Height: | Size: 14 KiB |
Before Width: | Height: | Size: 14 KiB |
After Width: | Height: | Size: 20 KiB |
Before Width: | Height: | Size: 20 KiB After Width: | Height: | Size: 19 KiB |
After Width: | Height: | Size: 20 KiB |
After Width: | Height: | Size: 20 KiB |
After Width: | Height: | Size: 4.7 KiB |
After Width: | Height: | Size: 20 KiB |
After Width: | Height: | Size: 20 KiB |
After Width: | Height: | Size: 20 KiB |
|
@ -38,9 +38,9 @@ init python:
|
|||
# Style for the dialogue window
|
||||
style window:
|
||||
xalign 0.5
|
||||
yalign 1.0
|
||||
xysize (1231, 277)
|
||||
padding (40, 10, 40, 40)
|
||||
yalign 0.975
|
||||
xysize (1836, 348)
|
||||
padding (100, 20, 40, 40)
|
||||
background Image("gui/textbox.png", xalign=0.5, yalign=1.0)
|
||||
|
||||
# Style for the dialogue
|
||||
|
@ -56,8 +56,8 @@ style say_thought:
|
|||
style namebox:
|
||||
xpos 20
|
||||
xysize (None, None)
|
||||
background Frame("gui/namebox.png", 5, 5, 5, 5, tile=False, xalign=0.0)
|
||||
padding (5, 5, 5, 5)
|
||||
# background Frame("gui/namebox.png", 5, 5, 5, 5, tile=False, xalign=0.0)
|
||||
padding (10, 10, 10, 10)
|
||||
|
||||
# Style for the text with the speaker's name
|
||||
style say_label:
|
||||
|
@ -76,7 +76,7 @@ style say_label:
|
|||
screen quick_menu():
|
||||
|
||||
## Ensure this appears on top of other screens.
|
||||
zorder 100
|
||||
zorder 200
|
||||
|
||||
if quick_menu:
|
||||
|
||||
|
@ -89,6 +89,7 @@ screen quick_menu():
|
|||
textbutton _("Auto") action Preference("auto-forward", "toggle")
|
||||
textbutton _("Save") action ShowMenu('save')
|
||||
textbutton _("Prefs") action ShowMenu('preferences')
|
||||
textbutton _("Relax") action HideInterface()
|
||||
|
||||
|
||||
## This code ensures that the quick_menu screen is displayed in-game, whenever
|
||||
|
@ -108,7 +109,7 @@ style quick_button:
|
|||
padding (15, 6, 15, 0)
|
||||
|
||||
style quick_button_text:
|
||||
size 21
|
||||
size 100
|
||||
selected_color '#f93c3e'
|
||||
idle_color "#aaa"
|
||||
|
||||
|
|
|
@ -85,4 +85,4 @@ style game_menu_vscrollbar:
|
|||
style game_menu_label:
|
||||
padding (10, 10)
|
||||
style game_menu_label_text:
|
||||
size 45
|
||||
size 100
|
||||
|
|
|
@ -6,9 +6,9 @@
|
|||
## https://www.renpy.org/doc/html/screen_special.html#main-menu
|
||||
|
||||
## Replace this with your background image, if you like
|
||||
image main_menu_background = HBox(
|
||||
Solid("#292835", xsize=350),
|
||||
Solid("#21212d")
|
||||
image main_menu_background = "Main_Menu3.png"
|
||||
image main_menu_foreground = HBox(
|
||||
Solid("#292835AA", xsize=325, ysize=575)
|
||||
)
|
||||
|
||||
screen main_menu():
|
||||
|
@ -16,31 +16,44 @@ screen main_menu():
|
|||
## This ensures that any other menu screen is replaced.
|
||||
tag menu
|
||||
|
||||
add "main_menu_background"
|
||||
add "main_menu_background":
|
||||
ypos -20
|
||||
xpos -70
|
||||
|
||||
add "main_menu_foreground":
|
||||
xalign 0.5
|
||||
yalign 0.95
|
||||
|
||||
vbox:
|
||||
xpos 60
|
||||
yalign 0.5
|
||||
spacing 6
|
||||
xalign 0.5
|
||||
yalign 0.95
|
||||
spacing 2
|
||||
|
||||
textbutton _("Start") action Start()
|
||||
textbutton _("Start") action Start():
|
||||
xalign 0.5
|
||||
|
||||
textbutton _("Load") action ShowMenu("load")
|
||||
textbutton _("Load") action ShowMenu("load"):
|
||||
xalign 0.5
|
||||
|
||||
textbutton _("Endings") action ShowMenu("ending_gallery")
|
||||
textbutton _("Endings") action ShowMenu("ending_gallery"):
|
||||
xalign 0.5
|
||||
|
||||
textbutton _("Preferences") action ShowMenu("preferences")
|
||||
textbutton _("Preferences") action ShowMenu("preferences"):
|
||||
xalign 0.5
|
||||
|
||||
textbutton _("About") action ShowMenu("about")
|
||||
textbutton _("About") action ShowMenu("about"):
|
||||
xalign 0.5
|
||||
|
||||
if renpy.variant("pc") or (renpy.variant("web") and not renpy.variant("mobile")):
|
||||
|
||||
## Help isn't necessary or relevant to mobile devices.
|
||||
textbutton _("Help") action ShowMenu("help")
|
||||
textbutton _("Help") action ShowMenu("help"):
|
||||
xalign 0.5
|
||||
|
||||
if renpy.variant("pc"):
|
||||
|
||||
## The quit button is banned on iOS and unnecessary on Android and
|
||||
## Web.
|
||||
textbutton _("Quit") action Quit(confirm=not main_menu)
|
||||
textbutton _("Quit") action Quit(confirm=not main_menu):
|
||||
xalign 0.5
|
||||
|
||||
|
|
|
@ -32,7 +32,7 @@ screen about():
|
|||
text "[gui.about!t]\n"
|
||||
|
||||
style about_label_text:
|
||||
size 36
|
||||
size 100
|
||||
|
||||
|
||||
## Help screen #################################################################
|
||||
|
|
|
@ -23,6 +23,12 @@ screen preferences():
|
|||
hbox:
|
||||
box_wrap True
|
||||
|
||||
# vbox:
|
||||
# style_prefix "check"
|
||||
# label _("Accessibility")
|
||||
# textbutton _("Pixel Font"):
|
||||
# action ToggleVariable("persistent.pixelfont")
|
||||
|
||||
if renpy.variant("pc") or renpy.variant("web"):
|
||||
# Only need fullscreen/windowed on desktop and web builds
|
||||
|
||||
|
@ -99,6 +105,7 @@ style pref_label:
|
|||
|
||||
style pref_label_text:
|
||||
yalign 1.0
|
||||
size 100
|
||||
|
||||
style pref_vbox:
|
||||
xsize 338
|
||||
|
|
|
@ -125,7 +125,7 @@ style slot_grid:
|
|||
spacing 15
|
||||
|
||||
style slot_time_text:
|
||||
size 25
|
||||
size 100
|
||||
xalign 0.5
|
||||
|
||||
style slot_vbox:
|
||||
|
@ -137,7 +137,7 @@ style slot_button:
|
|||
background "gui/button/slot_[prefix_]background.png"
|
||||
|
||||
style slot_button_text:
|
||||
size 21
|
||||
size 100
|
||||
xalign 0.5
|
||||
idle_color '#aaaaaa'
|
||||
hover_color '#ff8335'
|
||||
|
|
217
game/script.rpy
|
@ -8,6 +8,9 @@
|
|||
# side convos N N N
|
||||
# secret ending N N N
|
||||
|
||||
default persistent.pixelfont = True
|
||||
default persistent.laozi = False
|
||||
|
||||
define yuuka = Character("Yuuka", callback = name_callback, cb_name = "yuuka")
|
||||
define reimu = Character("Reimu", callback = name_callback, cb_name = "reimu")
|
||||
define marisa = Character("Marisa", callback = name_callback, cb_name = "marisa")
|
||||
|
@ -152,26 +155,70 @@ python:
|
|||
- surprise
|
||||
"""
|
||||
|
||||
image yuuka:
|
||||
"yuuka.png"
|
||||
image yuuka amused:
|
||||
"yuuka amused.png"
|
||||
function SpriteFocus('yuuka')
|
||||
|
||||
image yuuka happy:
|
||||
"yuuka happy.png"
|
||||
function SpriteFocus('yuuka')
|
||||
|
||||
image reimu:
|
||||
"reimu.png"
|
||||
image yuuka irritated:
|
||||
"yuuka irritated.png"
|
||||
function SpriteFocus('yuuka')
|
||||
|
||||
image yuuka looking eyes:
|
||||
"yuuka looking eyes.png"
|
||||
function SpriteFocus('yuuka')
|
||||
|
||||
image yuuka looking:
|
||||
"yuuka looking.png"
|
||||
function SpriteFocus('yuuka')
|
||||
|
||||
image yuuka neutral:
|
||||
"yuuka neutral.png"
|
||||
function SpriteFocus('yuuka')
|
||||
|
||||
image yuuka rage:
|
||||
"yuuka rage.png"
|
||||
function SpriteFocus('yuuka')
|
||||
|
||||
image reimu angry:
|
||||
"reimu angry.png"
|
||||
function SpriteFocus('reimu')
|
||||
|
||||
image reimu concerned:
|
||||
"reimu concerned.png"
|
||||
function SpriteFocus('reimu')
|
||||
|
||||
image reimu happy:
|
||||
"reimu happy.png"
|
||||
function SpriteFocus('reimu')
|
||||
|
||||
image reimu neutral:
|
||||
"reimu neutral.png"
|
||||
function SpriteFocus('reimu')
|
||||
|
||||
image reimu serious:
|
||||
"reimu serious.png"
|
||||
function SpriteFocus('reimu')
|
||||
|
||||
image reimu sleepy:
|
||||
"reimu sleepy.png"
|
||||
function SpriteFocus('reimu')
|
||||
|
||||
image reimu surprise:
|
||||
"reimu surprise.png"
|
||||
function SpriteFocus('reimu')
|
||||
|
||||
image yumemi happy:
|
||||
"yumemi happy.png"
|
||||
function SpriteFocus('yumemi')
|
||||
|
||||
screen devModeButtons1():
|
||||
grid 3 18:
|
||||
grid 3 12:
|
||||
$ i = 0
|
||||
for labelName in sorted(list(renpy.get_all_labels()))[:53]:
|
||||
for labelName in sorted(list(renpy.get_all_labels()))[:36]:
|
||||
textbutton labelName action Jump(labelName)
|
||||
$ i += 1
|
||||
hbox:
|
||||
|
@ -184,11 +231,13 @@ screen devModeButtons1():
|
|||
action Jump("DevModePage2")
|
||||
textbutton "(3)":
|
||||
action Jump("DevModePage3")
|
||||
textbutton "(H)":
|
||||
action Jump("DevModeHide")
|
||||
|
||||
screen devModeButtons2():
|
||||
grid 3 18:
|
||||
grid 3 12:
|
||||
$ i = 0
|
||||
for labelName in sorted(list(renpy.get_all_labels()))[53:107]:
|
||||
for labelName in sorted(list(renpy.get_all_labels()))[36:72]:
|
||||
textbutton labelName action Jump(labelName)
|
||||
$ i += 1
|
||||
hbox:
|
||||
|
@ -201,11 +250,13 @@ screen devModeButtons2():
|
|||
action Jump("DevModePage2")
|
||||
textbutton "(3)":
|
||||
action Jump("DevModePage3")
|
||||
textbutton "(H)":
|
||||
action Jump("DevModeHide")
|
||||
|
||||
screen devModeButtons3():
|
||||
grid 3 18:
|
||||
grid 3 12:
|
||||
$ i = 0
|
||||
for labelName in sorted(list(renpy.get_all_labels()))[107:]:
|
||||
for labelName in sorted(list(renpy.get_all_labels()))[72:]:
|
||||
textbutton labelName action Jump(labelName)
|
||||
$ i += 1
|
||||
hbox:
|
||||
|
@ -218,6 +269,22 @@ screen devModeButtons3():
|
|||
action Jump("DevModePage2")
|
||||
textbutton "(3*)":
|
||||
action Jump("DevModePage3")
|
||||
textbutton "(H)":
|
||||
action Jump("DevModeHide")
|
||||
|
||||
screen devModeButtons4():
|
||||
hbox:
|
||||
spacing 20
|
||||
xpos 200
|
||||
ypos 1020
|
||||
textbutton "(1)":
|
||||
action Jump("DevModePage1")
|
||||
textbutton "(2)":
|
||||
action Jump("DevModePage2")
|
||||
textbutton "(3)":
|
||||
action Jump("DevModePage3")
|
||||
textbutton "(H*)":
|
||||
action Jump("DevModeHide")
|
||||
|
||||
label start:
|
||||
|
||||
|
@ -241,13 +308,25 @@ label start:
|
|||
scene bg black
|
||||
stop music
|
||||
$ renpy.pause(1.5)
|
||||
|
||||
if(persistent.laozi):
|
||||
if config.developer == True:
|
||||
jump devMode
|
||||
else:
|
||||
jump presentation_begins
|
||||
|
||||
$ persistent.laozi = True
|
||||
# show text " {font=m3x6.ttf}For this reason the great man dwells in the thick, and does not rest with the thin.{/font}\n{font=m6x11.ttf}He dwells in the {color=#cc2222}fruit{/color}, and does not rest with the {color=#ffff00}flower{/font}{/color}.\n {font=m3x6.ttf}- Laozi, Tao Te Ching{/font}" at truecenter
|
||||
show text " {rt}For this reason the great man dwells in the thick, and does not rest with the thin.{/rt}\nHe dwells in the {color=#cc2222}fruit{/color}, and does not rest with the {color=#ffff00}flower{/color}.\n {rt}- Laozi, Tao Te Ching{/rt}" at truecenter
|
||||
show text "{alpha=0.2}For this reason the great man dwells in the thick, and does not rest with the thin.{/alpha}\nHe dwells in the {color=#cc2222}fruit{/color}, and does not rest with the {color=#ffff00}flower{/color}.\n {alpha=0.6}- Laozi, Tao Te Ching{/alpha}" at truecenter
|
||||
with dissolve
|
||||
$ renpy.pause(6)
|
||||
hide text
|
||||
with dissolve
|
||||
|
||||
# camera:
|
||||
# perspective True
|
||||
# linear 3.0 zpos 500
|
||||
|
||||
if config.developer == True:
|
||||
jump devMode
|
||||
else:
|
||||
|
@ -262,6 +341,7 @@ label start:
|
|||
hide screen devModeButtons2
|
||||
hide screen devModeButtons3
|
||||
show screen devModeButtons1
|
||||
hide screen devModeButtons4
|
||||
$ ui.saybehavior()
|
||||
$ ui.interact()
|
||||
|
||||
|
@ -269,6 +349,7 @@ label start:
|
|||
hide screen devModeButtons1
|
||||
hide screen devModeButtons3
|
||||
show screen devModeButtons2
|
||||
hide screen devModeButtons4
|
||||
$ ui.saybehavior()
|
||||
$ ui.interact()
|
||||
|
||||
|
@ -276,9 +357,16 @@ label start:
|
|||
hide screen devModeButtons1
|
||||
hide screen devModeButtons2
|
||||
show screen devModeButtons3
|
||||
hide screen devModeButtons4
|
||||
$ ui.saybehavior()
|
||||
$ ui.interact()
|
||||
|
||||
label DevModeHide:
|
||||
hide screen devModeButtons1
|
||||
hide screen devModeButtons2
|
||||
hide screen devModeButtons3
|
||||
hide screen devModeButtons4
|
||||
|
||||
label presentation_begins:
|
||||
# TODO
|
||||
# TEXT Y
|
||||
|
@ -294,9 +382,11 @@ label start:
|
|||
|
||||
$ renpy.pause(2)
|
||||
|
||||
show yuuka happy with fade:
|
||||
xalign 0.5
|
||||
yalign 0.5
|
||||
image yuuka_look:
|
||||
"yuuka looking eyes.png"
|
||||
|
||||
show yuuka neutral behind yuuka_look
|
||||
with fade
|
||||
|
||||
python: # <- Remove
|
||||
'''
|
||||
|
@ -307,18 +397,29 @@ label start:
|
|||
|
||||
yuuka "Good evening."
|
||||
|
||||
show yuuka_look
|
||||
|
||||
yuuka "You all may know me as the substitute this past week for Professor Okazaki."
|
||||
|
||||
hide yuuka_look
|
||||
show yuuka irritated
|
||||
|
||||
yuuka "I've been teaching Botany, a topic on which I am {sc}incredibly{/sc} overqualified for, to idiots younger than you, but still very much similar to you."
|
||||
|
||||
narrator "{i}A few nervous chuckles break throughout the auditorium.{/i}"
|
||||
|
||||
show yuuka amused
|
||||
|
||||
yuuka "But enough of the customary good-natured teasing, I am here because Professor Okazaki is returning today."
|
||||
|
||||
show yuuka_look
|
||||
|
||||
yuuka "As is stated in the faculty handbook she wrote and doodled over, because clearly not even she could have handwriting THAT horrendous,"
|
||||
|
||||
yuuka "I must give a presentation to report to the faculty and administration exactly what I did as subsitute for Professor Okazaki."
|
||||
|
||||
show yuuka happy
|
||||
|
||||
yuuka "This is that presentation: a postmortem to my short time here, a retrospective of sorts."
|
||||
|
||||
yuuka "You might also be wondering why I've invited select students to attend this presentation."
|
||||
|
@ -337,9 +438,10 @@ label start:
|
|||
|
||||
$ renpy.pause(2)
|
||||
|
||||
show yuuka happy:
|
||||
show yuuka rage:
|
||||
xalign 0.5
|
||||
yalign 0.99
|
||||
with dissolve
|
||||
|
||||
yuuka "{i}There I was, one week ago, naive, unsure of what I was looking at.{/i}" (cb_name="")
|
||||
|
||||
|
@ -349,8 +451,8 @@ label start:
|
|||
|
||||
yuuka "This used to be a gorgeous field of sunflowers, flowering red buckwheat, growing ever so softly towards the sky blue."
|
||||
|
||||
show yuuka happy:
|
||||
ease 1.8 ypos 1280
|
||||
show yuuka irritated unmarked:
|
||||
ease 1.8 ypos 1180
|
||||
|
||||
yuuka "Tell me fallen fauna, by whose footsoles were you trampled?"
|
||||
|
||||
|
@ -358,35 +460,19 @@ label start:
|
|||
$ renpy.pause(1.5)
|
||||
# play a wind sound
|
||||
|
||||
show yuuka happy:
|
||||
show yuuka neutral:
|
||||
ease 1.6 ypos 1080
|
||||
|
||||
yuuka "So it was that scientist from the longgone past?"
|
||||
yuuka "Sent by a scientist you say? I think I might know who this is."
|
||||
|
||||
yuuka "Very well, then."
|
||||
|
||||
yuuka "I will have to wait until the next spring to enjoy your company, young flowers."
|
||||
|
||||
# show yuuka happy:
|
||||
# easein 0.7 xpos 960
|
||||
# easein 0.7 xpos 1060
|
||||
# easein 0.7 xpos 1160
|
||||
# easein 0.7 xpos 1260
|
||||
# easein 0.7 xpos 1360
|
||||
# easein 0.7 xpos 1460
|
||||
# easein 0.7 xpos 1560
|
||||
# easein 0.7 xpos 1660
|
||||
# easein 0.7 xpos 1760
|
||||
# easein 0.7 xpos 1860
|
||||
# easein 0.7 xpos 1960
|
||||
# easein 0.7 xpos 2060
|
||||
# easein 0.7 xpos 2160
|
||||
# easein 0.7 xpos 2260
|
||||
# easein 0.7 xpos 2360
|
||||
# easein 0.7 xpos 2460
|
||||
# easein 0.7 xpos 2560
|
||||
show yuuka happy:
|
||||
ease 1.6 ypos 1080
|
||||
|
||||
yuuka "In the meantime, I think that woman's bones would make for good fertilizer."
|
||||
yuuka "In the meantime, I think that woman's {sc}bones{/sc} would make for good fertilizer."
|
||||
|
||||
label entrance:
|
||||
scene bg entrance with fade
|
||||
|
@ -395,6 +481,7 @@ label start:
|
|||
# TEXT Y
|
||||
# STAGE N
|
||||
# VAR N
|
||||
|
||||
yuuka "{i}When I first laid eyes on the school, I found its exterior to be less than appealing to me.{/i}" (cb_name="")
|
||||
|
||||
yuuka "What?"
|
||||
|
@ -430,8 +517,17 @@ label start:
|
|||
|
||||
$ attacked_student = True
|
||||
|
||||
show yuuka irritated unmarked:
|
||||
xalign 0.0
|
||||
yalign 0.5
|
||||
with easeinleft
|
||||
|
||||
yuuka "That won't be necessary, after all..."
|
||||
|
||||
show yuuka happy:
|
||||
xalign 0.0
|
||||
yalign 0.5
|
||||
|
||||
yuuka "I've got a landmark don't I?"
|
||||
|
||||
narrator "A sunflower, each petal the size of a desk, grew out from beneath the stunned student and lifted thme into the air."
|
||||
|
@ -440,6 +536,15 @@ label start:
|
|||
|
||||
yuuka "Run along then. Save your drivel for someone who cares."
|
||||
|
||||
show marisa neutral:
|
||||
xalign 1.0
|
||||
yalign 0.5
|
||||
with easeinright
|
||||
|
||||
show yuuka irritated:
|
||||
xalign 0.0
|
||||
yalign 0.5
|
||||
|
||||
marisa "I care!"
|
||||
|
||||
yuuka "Always with the jokes."
|
||||
|
@ -474,7 +579,7 @@ label start:
|
|||
|
||||
marisa "..."
|
||||
|
||||
marisa "So does that mean—"
|
||||
marisa "So does that mean..."
|
||||
|
||||
yuuka "{i}Then I hit her really hard.{/i}" (cb_name="")
|
||||
|
||||
|
@ -534,7 +639,7 @@ label start:
|
|||
|
||||
marisa "..."
|
||||
|
||||
marisa "So does that mean—"
|
||||
marisa "So does that mean..."
|
||||
|
||||
yuuka "Fine, so she's not here?"
|
||||
|
||||
|
@ -558,7 +663,7 @@ label start:
|
|||
|
||||
marisa "Don't mess this up, teach."
|
||||
|
||||
yuuka "Don't call me tha— and she's gone."
|
||||
yuuka "Don't call me tha- and she's gone."
|
||||
|
||||
narrator "{i}The student approached Yuuka, only slightly rattled.{/i}"
|
||||
|
||||
|
@ -590,7 +695,7 @@ label start:
|
|||
narrator "{i}The student, leading Yuuka to her class, held the door open for her, letting her get a peek inside.{/i}"
|
||||
|
||||
if not attacked_student:
|
||||
yuuka "Oh, would you look at that? I think there's somewhere else I need to be, th—"
|
||||
yuuka "Oh, would you look at that? I think there's somewhere else I need to be, th-"
|
||||
|
||||
"Student" "The substitute's here!"
|
||||
|
||||
|
@ -603,11 +708,10 @@ label start:
|
|||
"Various Students" "Huh, what's happening? Is it a test?{nw=1}"
|
||||
|
||||
if not attacked_student:
|
||||
yuuka "{sc}Amusing{/sc} as a misunderstanding this is, I really should be—"
|
||||
yuuka "{sc}Amusing{/sc} as a misunderstanding this is, I really should be..."
|
||||
|
||||
marisa "Hey teach, how about we get a move on before lunch's on!"
|
||||
|
||||
|
||||
if attacked_student:
|
||||
yuuka "{i}It was at this moment that I shot a glare at Marisa then took the time actually pick out individual faces from the crowd.{/i}" (cb_name="")
|
||||
else:
|
||||
|
@ -646,7 +750,7 @@ label start:
|
|||
|
||||
yuuka "{i}I could be patient as long as it meant seeing these three flounder.{/i}" (cb_name="")
|
||||
|
||||
reimu "I— uh, what?"
|
||||
reimu "I... uh, what?"
|
||||
|
||||
narrator "{i}Yuuka's smile grew wider.{/i}"
|
||||
|
||||
|
@ -760,7 +864,7 @@ label start:
|
|||
|
||||
yuuka "A tempting offer, but I don't think I'll need any tricks to deal with her."
|
||||
|
||||
yuuka "{i}Once more I turned away, and—{/i}" (cb_name="")
|
||||
yuuka "{i}Once more I turned away, and...{/i}" (cb_name="")
|
||||
|
||||
alice "Oh for Shinki's sake, are you scared of something?"
|
||||
|
||||
|
@ -776,7 +880,7 @@ label start:
|
|||
|
||||
alice "Look, this is the first time I've seen you talk with humans without it being some kind of underlying threat or overlying threat. This could be good for you."
|
||||
|
||||
yuuka "I—"
|
||||
yuuka "I..."
|
||||
|
||||
alice "Before anything else, it's a week. Just a week. At least come in tomorrow and give it a shot?"
|
||||
|
||||
|
@ -858,7 +962,7 @@ label start:
|
|||
|
||||
jump lecture
|
||||
|
||||
"Give them an ✨unforgettable✨ experience":
|
||||
"Give them an {size=50}✨{/size}unforgettable{size=50}✨{/size} experience":
|
||||
yuuka "Oh fine then. Alice is so insistent on me interacting with weaklings? Sure, no problems here."
|
||||
|
||||
yuuka "Especially, if I get a chance to shut them up."
|
||||
|
@ -872,7 +976,7 @@ label start:
|
|||
label lecture:
|
||||
yuuka "Good morning, class."
|
||||
|
||||
marisa "Uh, teach–"
|
||||
marisa "Uh, teach-"
|
||||
|
||||
yuuka "Teacher. It's teacher, not teach."
|
||||
|
||||
|
@ -931,7 +1035,7 @@ label start:
|
|||
|
||||
yuuka "{i}Alice got up, worried as she usually is.{/i}" (cb_name="")
|
||||
|
||||
alice "Hold on, Yuuka. You can't–"
|
||||
alice "Hold on, Yuuka. You can't-"
|
||||
|
||||
yuuka "Do not waste the time of the class, Miss Margatroid. Answer the question or sit down."
|
||||
|
||||
|
@ -1197,7 +1301,7 @@ label hallway:
|
|||
|
||||
narrator "{cps=1}...{/cps}"
|
||||
|
||||
yuuka "I should go–{nw}"
|
||||
yuuka "I should go-{nw}"
|
||||
|
||||
reimu "When I said I had nothing, during the activity earlier."
|
||||
|
||||
|
@ -1384,13 +1488,13 @@ label faculty:
|
|||
|
||||
yuuka "{b}Kill{/b}, you say?"
|
||||
|
||||
"Student" "That's right! So you see, I'm trying to get a good score in the Mass section of our rubric, based on last year's finals. As far as I can tell your magic is the most massive I've seen so far! Bar, Professor Okazaki's masterstroke, of course. On that, have you communicated with her? Are we still using last year's rubric or–{nw}"
|
||||
"Student" "That's right! So you see, I'm trying to get a good score in the Mass section of our rubric, based on last year's finals. As far as I can tell your magic is the most massive I've seen so far! Bar, Professor Okazaki's masterstroke, of course. On that, have you communicated with her? Are we still using last year's rubric or-{nw}"
|
||||
else:
|
||||
yuuka "{i}The final exams were to be a presentation of your best magic. Whether it be the most perfected, most flashy, most personal, most elegant.{/i}" (cb_name="")
|
||||
|
||||
yuuka "You say you wanted to ask me something?"
|
||||
|
||||
"Student" "That's right! So about our final exam, I was wondering about the rubric if we're following last year's system or if you'll be using your own? In which case, I'd like to ask what criteria are you using, are taking into account the student's participation in class because Professor Okazaki will attest that I–{nw}"
|
||||
"Student" "That's right! So about our final exam, I was wondering about the rubric if we're following last year's system or if you'll be using your own? In which case, I'd like to ask what criteria are you using, are taking into account the student's participation in class because Professor Okazaki will attest that I-{nw}"
|
||||
|
||||
yuuka "Please close the mouth-shaped whole on your face."
|
||||
|
||||
|
@ -1885,9 +1989,4 @@ label pause_loop:
|
|||
window hide
|
||||
$ renpy.pause()
|
||||
|
||||
jump pause_loop
|
||||
|
||||
|
||||
### EM DASH BANK ###
|
||||
# – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – –
|
||||
# – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – –
|
||||
jump pause_loopRR
|
|
@ -23,15 +23,15 @@ define config.check_conflicting_properties = True
|
|||
## any instances where they are used directly with their value.
|
||||
|
||||
# The text font for dialogue and choice menus
|
||||
define gui.text_font = gui.preference("font", "DejaVuSans.ttf")
|
||||
define gui.text_font = gui.preference("font", "m3x6.ttf")
|
||||
# The text font for buttons
|
||||
define gui.interface_text_font = gui.preference("interface_font", "DejaVuSans.ttf")
|
||||
define gui.interface_text_font = gui.preference("interface_font", "m3x6.ttf")
|
||||
# The default size of in-game text
|
||||
define gui.text_size = gui.preference("size", 33)
|
||||
define gui.text_size = gui.preference("size", 100)
|
||||
# The font for character names
|
||||
define gui.name_text_font = gui.preference("name_font", "DejaVuSans.ttf")
|
||||
define gui.name_text_font = gui.preference("name_font", "m3x6.ttf")
|
||||
# The size for character names
|
||||
define gui.name_text_size = gui.preference("name_size", 45)
|
||||
define gui.name_text_size = gui.preference("name_size", 100)
|
||||
|
||||
## Localization ################################################################
|
||||
|
||||
|
|