WTS/game/scripts/utility/common_labels.rpy

360 lines
11 KiB
Plaintext

# Hide all character images (not chibi)
label hide_characters:
hide hermione_main
hide luna_main
hide cho_main
hide astoria_main
hide susan_main
hide tonks_main
hide snape_main
hide screen genie_main
# Do not add transitions. Use one after return.
return
label hide_screens:
# Remove all displayables on layer 'screens'
$ renpy.scene("screens")
return
label update_interface_color(color=None):
if color in ["gold", "gray"]:
$ interface_color = color
elif game.daytime:
$ interface_color = "gold"
else:
$ interface_color = "gray"
return
label stop_sound_effects:
stop bg_sounds fadeout 0.5
stop weather fadeout 0.5
return
# Reset menu
label reset_menu_position:
$ menu_x = 0.5
$ menu_y = 0.6
return
label bld(action=None):
if action == "hide":
hide screen bld1
else:
show screen bld1
with d3
return
label blktone:
show screen bld1 # blktone looks stupid without bld1
show screen blktone
with d5
return
label hide_blktone:
hide screen blktone
with d5
return
label blktone_top:
show screen bld1 # blktone looks stupid without bld1
show screen blktone # Has higher zorder than normal blktone
with d5
return
label hide_blktone_top:
hide screen blktone
with d5
return
label blkfade:
hide screen bld1
hide screen blktone
show screen blkfade
with d5
pause.2
return
label hide_blkfade:
hide screen blkfade
with d5
return
label ctc:
show screen ctc
with d3
pause
hide screen ctc
with d1
return
label play_sound(sound=""):
# Objects
if sound in ["knock", "knocking"]: # knocking
$ renpy.play('sounds/knocking.ogg')
elif sound in ["knock2", "knocking2"]: # knocking
$ renpy.play('sounds/knocking2.ogg')
elif sound == "door":
$ renpy.play('sounds/door.ogg')
elif sound in ["lock","unlock"]: # lock
$ renpy.play('sounds/09_lock.ogg')
elif sound in ["desk","climb_desk"]: # climb_desk
$ renpy.play('sounds/08_hop_on_desk.ogg')
elif sound == "owl":
play sound "sounds/owl.ogg"
# Ambience
elif sound == "applause":
$ renpy.play('sounds/applause01.ogg')
# Affection
elif sound in ["gulp", "gulping", "swallow", "swallowing"]: # gulp
$ renpy.play('sounds/gulp.ogg')
elif sound == "slap_1":
$ renpy.play('sounds/slap.ogg')
elif sound == "slap": # slap_2
$ renpy.play('sounds/slap_02.ogg')
elif sound == "slap_3":
$ renpy.play('sounds/slap_03.ogg')
elif sound in ["spit", "spitting"]: # spit
$ renpy.play('sounds/spit.ogg')
elif sound in ["kick", "kicking", "bump"]: # kick
$ renpy.play('sounds/kick.ogg')
elif sound in ["kiss", "kissing"]: # kiss
$ renpy.play('sounds/kiss.ogg')
elif sound in ["insert", "inserting", "goo"]: # insert
$ renpy.play('sounds/gltch.ogg')
elif sound == "plop":
$ renpy.play('sounds/plop.ogg')
elif sound in ["pop", "bottle"]: # pop
$ renpy.play('sounds/bottle.ogg')
elif sound == "snore":
$ renpy.play('sounds/snore1.ogg')
elif sound == "snore_quiet":
$ renpy.play('sounds/snore2.ogg')
elif sound == "snore_loud":
$ renpy.play('sounds/snore3.ogg')
elif sound == "giggle":
$ renpy.sound.play("sounds/giggle2_loud.ogg")
elif sound == "gasp":
$ renpy.sound.play("sounds/MaleGasp.ogg")
# Magic
elif sound == "spell":
$ renpy.play('sounds/magic2.ogg')
elif sound == "morph":
$ renpy.sound.play("sounds/magic3.ogg")
elif sound == "magic":
$ renpy.play('sounds/magic4.ogg')
# Movement
elif sound == "footsteps":
$ renpy.play('sounds/footsteps.ogg')
elif sound == "walking":
$ renpy.play('sounds/run_04.ogg')
elif sound == "running":
$ renpy.play('sounds/run_03.ogg')
elif sound == "sprinting":
$ renpy.play('sounds/run_02.ogg')
elif sound in ["walking_on_grass", "grass"]: # walking_grass
$ renpy.play('sounds/steps_grass.ogg')
# Interface
elif sound == "scroll":
$ renpy.play('sounds/scroll.ogg')
elif sound in ["equip", "equip_inventory", "cloth"]: # equip
$ renpy.play('sounds/cloth_sound.ogg')
# Misc
elif sound == "scratch":
$ renpy.play('sounds/scratch.ogg')
elif sound == "shatter":
$ renpy.play('sounds/glass_shatter.ogg')
elif sound in ["glass_break","glass"]:
$ renpy.play('sounds/glass_break.ogg')
# Undefined sounds fallback
elif renpy.loadable("sounds/{}.ogg".format(sound)):
$ renpy.play("sounds/{}.ogg".format(sound))
return
#TODO One keyword per theme (maybe define everything in a dictionary to simplify code further?)
label play_music(music="", fadein=1.0, fadeout=1.0):
if music == "stop":
stop music fadeout fadeout
return
# Character Music
if music in ["snape", "dark_fog"]: # snape
play music "music/Dark Fog.ogg" fadein fadein fadeout fadeout if_changed
elif music in ["hermione", "chipper_doodle"]: # hermione
play music "music/Chipper Doodle v2.ogg" fadein fadein fadeout fadeout if_changed
elif music == "cho":
play music "music/fuzzball-parade-by-kevin-macleod.ogg" fadein fadein fadeout fadeout if_changed
elif music == "astoria":
play music "music/KMcL_OpenThoseBrightEyes.ogg" fadein fadein fadeout fadeout if_changed
elif music == "susan":
play music "music/teddy-bear-waltz-by-kevin-macleod.ogg" fadein fadein fadeout fadeout if_changed
elif music == "tonks":
play music "music/scheming-weasel-slower-version-by-kevin-macleod.ogg" fadein fadein fadeout fadeout if_changed
elif music == "luna":
play music "music/wallpaper-by-kevin-macleod.ogg" fadein fadein fadeout fadeout if_changed
elif music == "playful_tension":
play music "music/(Orchestral) Playful Tension by Shadow16nh.ogg" fadein fadein fadeout fadeout if_changed
elif music == "silly":
play music "music/silly_fun_loop.ogg" fadein fadein fadeout fadeout if_changed
# Store Music
elif music == "weasley_store":
play music "music/weasley_store.ogg" fadein fadein fadeout fadeout if_changed
elif music == "clothing_store":
play music "music/clothing_store.ogg" fadein fadein fadeout fadeout if_changed
# Background Music
elif music == "day":
play music "music/Brittle Rille.ogg" fadein fadein fadeout fadeout if_changed
elif music == "night":
play music "music/Music for Manatees.ogg" fadein fadein fadeout fadeout if_changed
elif music == "night_outside":
play music "sounds/night.ogg" fadein fadein fadeout fadeout if_changed
elif music == "jazz":
play music "sounds/jazz take 2.ogg" fadein fadein fadeout fadeout if_changed
# Interface
elif music == "wardrobe":
play music "music/Spring_In_My_Step.ogg" fadein fadein fadeout fadeout if_changed
# Misc
elif music == "hitman":
play music "music/hitman.ogg" fadein fadein fadeout fadeout if_changed
elif music == "cardgame":
play music "music/Juhani_Junkala.ogg" fadein fadein fadeout fadeout if_changed
elif music in ["sad","grape_soda"]: # sad
play music "music/GrapeSodaIsFuckingRawbyjrayteam6.ogg" fadein fadein fadeout fadeout if_changed
elif music == "anguish":
play music "music/Anguish.ogg" fadein fadein fadeout fadeout if_changed
elif music == "trance":
play music "music/Under-the-Radar by PhobyAk.ogg" fadein fadein fadeout fadeout if_changed
elif music == "despair":
play music "music/Despair_by_erenik.ogg" fadein fadein fadeout fadeout if_changed
elif music == "agenda":
play music "music/hidden-agenda-by-kevin-macleod.ogg" fadein fadein fadeout fadeout if_changed
elif music == "intro":
play music "music/the-chamber-by-kevin-macleod.ogg" fadein fadein fadeout fadeout if_changed
elif music == "snape_office":
play music "music/the-other-side-of-the-door-by-kevin-macleod-from-filmmusic-io.ogg" fadein fadein fadeout fadeout if_changed
# Fallback
else:
python:
try:
renpy.music.play(filenames="music/"+music+".ogg", channel="music", loop=True, fadeout=1.0, fadein=1.0)
except IOError:
if config.developer:
raise Exception("Music not found: {}".format(music))
return
# Play day/night theme
label music_block:
if current_room == "main_room":
if game.daytime:
call play_music("day")
else:
call play_music("night")
elif current_room == "snape_office":
call play_music("snape_office")
return
label unlock_clothing(text="", item="interface/icons/box_blue_1.webp"):
$ menu_x = 0.5
$ menu_y = 0.75 #makes the menu lower so it isn't writing over the image.
show screen clothing_unlock(item)
show screen blktone
with d3
menu:
"[text]"
"-Done Reading-":
pass
hide screen clothing_unlock
hide screen blktone
with d3
$ item.unlock()
call reset_menu_position
return
label describe_mood(name, value):
call blktone
if 5 > value >= 1:
">[name] is a little upset with you..."
elif 10 > value >= 5:
">[name] is upset with you."
elif 20 > value >= 10:
">[name] is very upset with you."
elif 30 > value >= 20:
">[name] is mad at you."
elif 40 > value >= 30:
">[name] is very mad at you."
elif 50 > value >= 40:
">[name] is furious at you."
elif value >= 50:
">[name] hates your guts."
else:
">[name] is calm."
call hide_blktone
return
label describe_mood_after_gift(was_negative, mood, change):
if was_negative and mood == 0:
call notes
"She's no longer upset with you."
elif was_negative and change < 0:
"But she's still upset with you."
elif was_negative:
"She's still upset with you."
return
label notes():
$ renpy.play('sounds/win_04.ogg') #Not loud.
hide screen notes
show screen notes
return
label not_implemented():
"Not implemented."
return
label end_of_content():
$ renpy.choice_for_skipping()
"SilverStudioGames" "This concludes story progression for this character as of version [config.version].\nThere still may be side events and activities that you have missed, but main story won't progress past this point."
"SilverStudioGames" "We hope you have enjoyed yourself. Stay tuned for more in the future."
call notes
"> All stats have been maxed out. You can now use all of the wardrobe options."
return