From c7df99e4b02b67c7cfbca5d4bd44fb50e99bda73 Mon Sep 17 00:00:00 2001 From: LoafyLemon Date: Thu, 21 Nov 2024 16:52:29 +0000 Subject: [PATCH] Bug fixes * Fixed fake credits * Fixed hotkeys overlap with Ren'py hotkeys * Fixed overflowing character names --- game/scripts/characters.rpy | 4 +- game/scripts/gui/credits.rpy | 8 +-- game/scripts/gui/say.rpy | 5 +- game/scripts/interface/gameover.rpy | 99 ++++++++++++++++++++--------- game/scripts/interface/hotkeys.rpy | 16 ++--- 5 files changed, 87 insertions(+), 45 deletions(-) diff --git a/game/scripts/characters.rpy b/game/scripts/characters.rpy index 3629117d..dd461d93 100644 --- a/game/scripts/characters.rpy +++ b/game/scripts/characters.rpy @@ -55,9 +55,9 @@ define abe = Character(_("Aberforth")) define fem = Character(_("Female Student")) define femv = Character(_("Female Voice")) define mal = Character(_("Male Student")) -define mal2 = Character(_("Another Male Student")) +define mal2 = Character(_("{size=-12}Another Male Student{/size}")) define sly1 = Character(_("Slytherin student")) -define sly2 = Character(_("Another Slytherin student")) +define sly2 = Character(_("{size=-12}Another Slytherin student{/size}")) define qcr = Character(_("Quidditch Crowd")) # Special diff --git a/game/scripts/gui/credits.rpy b/game/scripts/gui/credits.rpy index 0c945784..dedbb995 100644 --- a/game/scripts/gui/credits.rpy +++ b/game/scripts/gui/credits.rpy @@ -37,7 +37,7 @@ define credits_images = [] # TODO: Add images once new chibis are in. define credits_mods = _("\n\n## Game Mods\n\n") + "\n\n".join(["### " + i[1]["Name"] + "\n- " + i[1]["Author"] for i in mods_list.items()]) if mods_list else "" -define credits = credits.convert(_(f"""{{image=game_logo}}{{vspace=10}} +define credits_text = credits.convert(_(f"""{{image=game_logo}}{{vspace=10}} ## Development Team ### Project Lead @@ -295,15 +295,15 @@ transform credits_fade_image(start, duration): pause duration linear 0.5 alpha 0.0 -screen credits(): +screen credits(credits=credits_text, duration=180, pauses=13): layer "interface" zorder 0 modal True predict False style_prefix "credits" - default duration = 180 - default pauses = 13 + default duration = duration + default pauses = pauses add "gui_fade_both" at gui_fade diff --git a/game/scripts/gui/say.rpy b/game/scripts/gui/say.rpy index 780a940c..3723a1d7 100644 --- a/game/scripts/gui/say.rpy +++ b/game/scripts/gui/say.rpy @@ -68,12 +68,15 @@ screen say(who, what, side_doll=None, side_image=None, icon=None): # the ``myflag`` variable in the screen. (The ``myflag`` variable isn't # used by default, but can be used by a custom say screen.) + # Note: For some reason the side image flickers on resolutions other than native + # during hide events. This is a possible issue with mipmapping in Ren'Py. + if side_doll: add side_doll elif side_image: # Compat add side_image zoom 0.5 align (0.0, 1.0) xoffset 16 else: - add SideImage() + add SideImage() # Proxy for _side_image screen say_centered(who, what, icon=None): style_prefix "say" diff --git a/game/scripts/interface/gameover.rpy b/game/scripts/interface/gameover.rpy index 9445f4a7..dccbce77 100644 --- a/game/scripts/interface/gameover.rpy +++ b/game/scripts/interface/gameover.rpy @@ -27,12 +27,10 @@ label gameover(fake=False, autohide=True): play music "music/Only 115 (Electro Loop)_125 BPM.ogg" fadein 0.5 fadeout 1 if_changed hide screen gameover - hide screen blkfade - show screen credits(fake_credits_text, 30) + show screen credits(fake_credits_text, duration=5, pauses=1) with blinds - $ renpy.pause(12, hard=True) - + hide screen blkfade hide screen credits with None @@ -40,34 +38,74 @@ label gameover(fake=False, autohide=True): hide screen gameover return -# define fake_credits_text = "\n".join([ -# "{image=images/logo/title.webp}{vspace=200}", -# credits_title("Director"), -# credits_group("The Orchestrator of Sex"), -# credits_title("Artists"), -# credits_group("A Professional Pervert", "The Purveyor of Pencils", "The Deviant Drawer", "A Painter of Filth"), -# credits_title("Writers"), -# credits_group("The Scribbler of smut", "The Lore keeper of Whores"), -# credits_title("Programmers"), -# credits_group("The Engineer of ecstasy", "A Tits Techie", "A guy that gets erect from calculator spelling boobs"), -# credits_title("Music"), -# credits_group( -# "Happy Rooster OST\n{size=-5}{color=#808080}{k=0.7}\"Shanghai Honey\"\n\"Introducing Colin\"{/k}{/color}{/size}\n", -# "Music Dude#1\n{size=-5}{color=#808080}{k=0.7}\"Anguish\"\n\"Awkward Meeting\"\n\"Brittle Rille\"\n\"Chipper Doodle v2\"\n\"Dark Fog\"\n\"Despair\"\n\"Game Over Theme\"\n\"Boss Theme\"\n\"Hitman\"\n\"Music for Manatees\"\n\"Plaint\"\n\"Fuzzball Parade\"\n\"Teddy Bear Waltz\"\n\"Scheming Weasel (Slower version)\"\n\"Open Those Bright Eyes\"{/k}{/color}{/size}\n", -# "Music Dude#2\n{size=-5}{color=#808080}{k=0.7}\"Under-the-radar\"{/k}{/color}{/size}\n", -# "Music Dude#3\n{size=-5}{color=#808080}{k=0.7}\"Playful Tension (Orchestral)\"{/k}{/color}{/size}\n", -# "Music Dude#4\n{size=-5}{color=#808080}{k=0.7}\"Item Shop\"{/k}{/color}{/size}\n", -# "Music Dude#5\n{size=-5}{color=#808080}{k=0.7}\"Grape Soda is Fucking Raw\"{/k}{/color}{/size}\n", -# "Music Dude#5\n{size=-5}{color=#808080}{k=0.7}Retro Game Music Pack:\n\"Title Screen\"\n\"Level 1\"\n\"Level 3\"{/k}{/color}{/size}" -# ), -# credits_title("Special Thanks"), -# credits_group("{size=+4}Pervert#1{/size}\n{color=#808080}{size=-5}{k=0.7}Creator of the original Witch Trainer and other awesome games! {a=https://www.patreon.com/akabur}PATREON{/a}{/size}{/color}\n{/k}", "Pervert#2", "Pervert#3", "Pervert#4", "Pervert#5", "Pervert#6", "Pervert#7", "Pervert#8", "Pervert#9", "Pervert#10", "Pervert#11", "Pervert#12", "Pervert#13", "Pervert#14", "Pervert#15", "Pervert#16", "Pervert#17", "Pervert#18", "Pervert#19", "Pervert#20", "Pervert#21"), -# "\nSpecial thanks to our pervs, discord perverators and {a=https://www.patreon.com/SilverStudioGames/}perverted supporters{/a} {image=images/misc/heart.webp}\n\n", -# "{image=images/logo/silverstudiogames.webp}\n" -# "\n{space=220}{image=characters/genie/mage9.webp}{rb}{space=-60}Thanks for cumin!{/rb}" -# ]) +define fake_credits_text = credits.convert(_(f"""{{image=game_logo}}{{vspace=10}} +## The Dream Team Behind This Mess + +### Mastermind in Charge +### Chief Code Wrangler +### Lead Artist and Designer... or something +### UI/UX Designer and {{flip}}{{=credits_animator}}Animator{{/}}{{/flip}}, we think? +- LoafyLemon (also known as "The One Who Can't Actually Code") + +### Director of Random Ideas +### Storytelling Maestro +### Lead Tester, Because Why Not? +### Sound Guy... or Girl? +### Scriptwriter... except when they forget to script +- Johnny28 (aka "Johnny Confused") + +## Special Thanks to People We Didn't Forget + +### Programmers Who Also Like To Code +- STG Anon (AKA The Shadow Programmer) +- MadMerlin (Also Known As The Mythical Merlyn) +- Asease1 (The One Who Can Make Anything... Sometimes) +- TropeCode (Because Tropes Are What We're Made Of) +- Gouvernathor (Governor of Code? More Like Governor of Chaos) + +### Writers Who Write Words +- MadMerlin (Also Known As The Mythical Merlyn, Again) +- Livvypoo (Writer... Also Part-Time Cat Whisperer) +- Mo (Not Actually A Mysterious Figure, Just Really Lazy At Writing Names) + +### Proofreaders Who Ensure We're Not Embarrassed +- Livvypoo (Also Known As The Half-Cat, Half-Writer) +- MedicBear (Doctor of Proofreading, Master of Bear Hugs) +- MaiL (Mailman By Day, Proofreader By Night) +- Lineup (Because Sometimes You Just Need A Good Line-Up) +- Cosmic (They Don't Call Me Cosmic For Nothing) + +### Character Designers Who Draw Doodles +- Soggy (The One Who Can Draw Anything In 5 Minutes) +- DostojevskijSTG (Also Known As The Russian Artisan, Except Not Really) +- Noodle (Because Their Brain Looks Like Spaghetti When They Think Hard) +- MadMerlin (Again, The Mythical Merlyn) +- Artguy (Because He's An Artist And We're Too Lazy To Think Of A Name) + +### Clothing Designers Who Dress Up Characters +- Soggy (The One Who Can Draw Anything In 5 Minutes, Again) +- perniciousducks (Because They Know How To Make Any Costume Look Cool) +- DostojevskijSTG (Still Not The Russian Artisan, Just A Really Good Drawer) +- Noodle (Spaghetti Artist Turned Fashion Designer) +- MadMerlin (For The Thousandth Time, The Mythical Merlyn) +- BopJp (Because They're Just As Confused As Johnny28) + +### Scene Designers Who Make Places Look Nice +- BopJp (Also Known As The Confusion Incarnate) +- KitsuneArts (Because Kitsunes Are Awesome At Making Scenes) + +### Game Testers Who Find Bugs Before You Do +- MadMerlin (One More Time, The Mythical Merlyn) +- Livvypoo (Half-Cat, Half-Hero Of Bug Hunting) +- Cosmic (They Don't Call Me Cosmic For Nothing) +- MaiL (Night Shift Hero Of Testing) +- Lineup (Because We Needed Another Line-Up) +- MedicBear (Hero of Endless Debugging Sessions) +- perniciousducks (Because They're Also Pretty Good At Finding Bugs) +""")) screen cartoon_zoom(): + layer "interface" tag gameover zorder 32 # Above saybox @@ -91,6 +129,7 @@ screen cartoon_zoom(): linear 1.0 alpha 1.0 screen gameover(): + layer "interface" tag gameover zorder 20 diff --git a/game/scripts/interface/hotkeys.rpy b/game/scripts/interface/hotkeys.rpy index 0a9fd1b8..f13e9576 100644 --- a/game/scripts/interface/hotkeys.rpy +++ b/game/scripts/interface/hotkeys.rpy @@ -6,14 +6,14 @@ init 1 python: # Custom - map = ["K_m"], - work = ["K_w"], - stats = ["K_c"], - inventory = ["K_i"], - sleep = ["K_s"], - fap = ["K_f"], - summon = ["K_d"], - achievements = ["K_o"], + map = ["noshift_K_m"], + work = ["noshift_K_w"], + stats = ["noshift_K_c"], + inventory = ["noshift_K_i"], + sleep = ["noshift_K_s"], + fap = ["noshift_K_f"], + summon = ["noshift_K_d"], + achievements = ["noshift_K_o"], # Bindings present almost everywhere, unless explicitly disabled. rollback = ["K_PAGEUP", "repeat_K_PAGEUP", "K_AC_BACK", "mousedown_4"],