From 080bfdcb9c288838d68593053acafe8defebe593 Mon Sep 17 00:00:00 2001 From: LoafyLemon Date: Wed, 1 May 2024 19:08:10 +0100 Subject: [PATCH] Improve translation support (part 2) (cherry picked from commit 5616f7781357ee0a79b59f3abcc6eb69999981d7) --- game/scripts/characters/hermione/talk.rpy | 52 ++-- game/scripts/characters/hermione/vars.rpy | 4 +- game/scripts/characters/hooch/vars.rpy | 4 +- game/scripts/characters/luna/favors.rpy | 8 +- game/scripts/characters/luna/summon.rpy | 64 ++--- game/scripts/characters/luna/vars.rpy | 6 +- game/scripts/characters/snape/common.rpy | 2 +- game/scripts/characters/susan/summon.rpy | 28 +-- game/scripts/characters/susan/vars.rpy | 4 +- .../characters/tonks/events/hangout.rpy | 2 +- game/scripts/characters/tonks/talk.rpy | 44 ++-- game/scripts/characters/tonks/vars.rpy | 6 +- game/scripts/events/final_events.rpy | 2 +- game/scripts/gui/preferences.rpy | 6 +- game/scripts/interface/letter.rpy | 26 +- game/scripts/interface/splash.rpy | 4 +- game/scripts/interface/stats.rpy | 148 +++++------ game/scripts/interface/tutorials.rpy | 24 +- game/scripts/inventory/books.rpy | 12 +- game/scripts/inventory/books_waifu.rpy | 238 +++++++++--------- .../minigames/cardgame/_snape_card_game_.rpy | 6 +- .../mirror/events/a_christmas_tale.rpy | 4 +- .../mirror/events/a_christmas_tale2.rpy | 14 +- .../mirror/events/a_white_christmas.rpy | 6 +- .../mirror/events/anal_pirate_event.rpy | 2 +- game/scripts/minigames/puzzle.rpy | 4 +- 26 files changed, 362 insertions(+), 358 deletions(-) diff --git a/game/scripts/characters/hermione/talk.rpy b/game/scripts/characters/hermione/talk.rpy index 198b5b8b..406e6627 100644 --- a/game/scripts/characters/hermione/talk.rpy +++ b/game/scripts/characters/hermione/talk.rpy @@ -34,56 +34,56 @@ label hermione_talk: "-Address me only as-": menu: "-Sir-": - $ name_genie_hermione = "Sir" + $ name_genie_hermione = _("Sir") jump genie_change "-Dumbledore-": - $ name_genie_hermione = "Dumbledore" + $ name_genie_hermione = _("Dumbledore") jump genie_change "-Professor-": - $ name_genie_hermione = "Professor" + $ name_genie_hermione = _("Professor") jump genie_change "-Old man-": - $ name_genie_hermione = "Old man" + $ name_genie_hermione = _("Old man") jump genie_change "-Genie-": if states.her.level >=5: - $ name_genie_hermione = "Genie" + $ name_genie_hermione = _("Genie") jump genie_change else: jump genie_change_fail "-My Lord-": if states.her.level >=7: - $ name_genie_hermione = "My Lord" + $ name_genie_hermione = _("My Lord") jump genie_change else: jump genie_change_fail "-Darling-": if states.her.level >=10: - $ name_genie_hermione = "Darling" + $ name_genie_hermione = _("Darling") jump genie_change else: jump genie_change_fail "-Lord Voldemort-": if states.her.level >=15: - $ name_genie_hermione = "Lord Voldemort" + $ name_genie_hermione = _("Lord Voldemort") jump genie_change else: jump genie_change_fail "-Daddy-": if states.her.level >=19: - $ name_genie_hermione = "Daddy" + $ name_genie_hermione = _("Daddy") $ achievements.unlock("daddy") jump genie_change else: jump genie_change_fail "-Master-": if states.her.level >=20: - $ name_genie_hermione = "Master" + $ name_genie_hermione = _("Master") jump genie_change else: jump genie_change_fail "-Custom Input-": - $ temp_name = renpy.input("(Please enter the name.)", name_genie_hermione, ALLOWED_CHARACTERS, length=14) + $ temp_name = renpy.input(_("(Please enter the name.)"), name_genie_hermione, ALLOWED_CHARACTERS, length=14) $ temp_name = temp_name.strip() if temp_name == "": jump hermione_talk @@ -98,85 +98,85 @@ label hermione_talk: "-From now on, I will refer to you as-": menu: "-Miss Granger-": - $ temp_name = "Miss Granger" + $ temp_name = _("Miss Granger") jump hermione_change "-Hermione-": - $ temp_name = "Hermione" + $ temp_name = _("Hermione") jump hermione_change "-Girl-": - $ temp_name = "Girl" + $ temp_name = _("Girl") if states.her.level >=1: jump hermione_change else: jump hermione_change_fail "-Nerd-": - $ temp_name = "Nerd" + $ temp_name = _("Nerd") if states.her.level >=3: jump hermione_change else: jump hermione_change_fail "-Hottie-": - $ temp_name = "Hottie" + $ temp_name = _("Hottie") if states.her.level >=5: jump hermione_change else: jump hermione_change_fail "-Angel-": - $ temp_name = "Angel" + $ temp_name = _("Angel") if states.her.level >=7: jump hermione_change else: jump hermione_change_fail "-Minx-": - $ temp_name = "Minx" + $ temp_name = _("Minx") if states.her.level >=9: jump hermione_change else: jump hermione_change_fail "-Princess-": - $ temp_name = "Princess" + $ temp_name = _("Princess") if states.her.level >=11: jump hermione_change else: jump hermione_change_fail "-Pet-": - $ temp_name = "Pet" + $ temp_name = _("Pet") if states.her.level >=11: jump hermione_change else: jump hermione_change_fail "-Bitch-": - $ temp_name = "Bitch" + $ temp_name = _("Bitch") if states.her.level >=15: jump hermione_change else: jump hermione_change_fail "-Slut-": - $ temp_name = "Slut" + $ temp_name = _("Slut") if states.her.level >=19: jump hermione_change else: jump hermione_change_fail "-Cumslut-": - $ temp_name = "Cumslut" + $ temp_name = _("Cumslut") if states.her.level >= 19: jump hermione_change else: jump hermione_change_fail "-Slytherin Whore-": - $ temp_name = "Slytherin Whore" + $ temp_name = _("Slytherin Whore") if states.her.level >= 22: jump hermione_change else: jump hermione_change_fail "-Mudblood-": - $ temp_name = "Mudblood" + $ temp_name = _("Mudblood") if states.her.level >= 22 and states.her.status.sex: jump hermione_change else: jump hermione_change_fail "-Custom Input-": - $ temp_name = renpy.input("(Please enter the name.)", name_hermione_genie, ALLOWED_CHARACTERS, length=14) + $ temp_name = renpy.input(_("(Please enter the name.)"), name_hermione_genie, ALLOWED_CHARACTERS, length=14) $ temp_name = temp_name.strip() if temp_name == "": jump hermione_talk diff --git a/game/scripts/characters/hermione/vars.rpy b/game/scripts/characters/hermione/vars.rpy index c2def48b..869d059d 100644 --- a/game/scripts/characters/hermione/vars.rpy +++ b/game/scripts/characters/hermione/vars.rpy @@ -132,8 +132,8 @@ default current_job = None # TODO: Jobs should be using event class with enqueue # Names -default name_genie_hermione = "Sir" -default name_hermione_genie = "Miss Granger" +default name_genie_hermione = _("Sir") +default name_hermione_genie = _("Miss Granger") init python early: # Public requests design is flawed at its core to the point it would diff --git a/game/scripts/characters/hooch/vars.rpy b/game/scripts/characters/hooch/vars.rpy index f964e6b4..a749f037 100644 --- a/game/scripts/characters/hooch/vars.rpy +++ b/game/scripts/characters/hooch/vars.rpy @@ -10,5 +10,5 @@ default states.hoo.unlocked = False default states.hoo.busy = False # Names -default name_genie_hooch = "Sir Dumbledore" -default name_hooch_genie = "Madam Hooch" +default name_genie_hooch = _("Sir Dumbledore") +default name_hooch_genie = _("Madam Hooch") diff --git a/game/scripts/characters/luna/favors.rpy b/game/scripts/characters/luna/favors.rpy index eae43ef5..966e0523 100644 --- a/game/scripts/characters/luna/favors.rpy +++ b/game/scripts/characters/luna/favors.rpy @@ -29,8 +29,8 @@ default lun_ev_blowjob_t4_e3 = Event(id="lun_ev_blowjob_t4_e3", label="ll_pf_blo default lun_ev_blowjob_t4_e4 = Event(id="lun_ev_blowjob_t4_e4", label="ll_pf_blowjob_T4_E4_repeat", req="states.lun.tier >= 4", queue="lun_eventqueue_blowjob", autoenqueue=True, autodequeue=False) define luna_favors = [ - ("lun_eventqueue_talk_to_me", "Talk to me!"), - ("lun_eventqueue_inspect_her_body", "Let me inspect you!"), - ("lun_eventqueue_play_with_yourself", "Play with yourself!"), - ("lun_eventqueue_blowjob", "Suck it!"), + ("lun_eventqueue_talk_to_me", _("Talk to me!")), + ("lun_eventqueue_inspect_her_body", _("Let me inspect you!")), + ("lun_eventqueue_play_with_yourself", _("Play with yourself!")), + ("lun_eventqueue_blowjob", _("Suck it!")), ] diff --git a/game/scripts/characters/luna/summon.rpy b/game/scripts/characters/luna/summon.rpy index 65384442..37a75f13 100644 --- a/game/scripts/characters/luna/summon.rpy +++ b/game/scripts/characters/luna/summon.rpy @@ -174,21 +174,21 @@ label luna_talk: "-Address me only as-" if states.lun.ev.spectrespecs.e4_complete: menu: "-Sir-": - $ name_genie_luna = "Sir" + $ name_genie_luna = _("Sir") "-Dumbledore-": - $ name_genie_luna = "Dumbledore" + $ name_genie_luna = _("Dumbledore") "-Professor-": - $ name_genie_luna = "Professor" + $ name_genie_luna = _("Professor") "-Partner-": - $ name_genie_luna = "Partner" + $ name_genie_luna = _("Partner") "-Master-" if states.lun.tier >= 2: - $ name_genie_luna = "Master" + $ name_genie_luna = _("Master") "-Daddy-" if states.lun.tier >= 2: - $ name_genie_luna = "Daddy" + $ name_genie_luna = _("Daddy") "-Genie-" if states.lun.ev.gen_genie_nickname_unlocked: - $ name_genie_luna = "Genie" + $ name_genie_luna = _("Genie") "-Custom Input-" if states.lun.tier >= 3: - $ name_genie_luna = renpy.input("(Please enter the name.)", name_genie_luna, ALLOWED_CHARACTERS, length=14).strip() or "Professor" + $ name_genie_luna = renpy.input(_("(Please enter the name.)"), name_genie_luna, ALLOWED_CHARACTERS, length=14).strip() or "Professor" "-Never mind-": jump luna_talk @@ -197,23 +197,23 @@ label luna_talk: "-From now on, I will refer to you as-" if states.lun.ev.spectrespecs.e4_complete: menu: "-Miss Lovegood-": - $ name_luna_genie = "Miss Lovegood" + $ name_luna_genie = _("Miss Lovegood") "-Luna-": - $ name_luna_genie = "Luna" + $ name_luna_genie = _("Luna") "-Loony-": - $ name_luna_genie = "Loony" + $ name_luna_genie = _("Loony") "-Girl-": - $ name_luna_genie = "Girl" + $ name_luna_genie = _("Girl") "-Partner-": - $ name_luna_genie = "Partner" + $ name_luna_genie = _("Partner") "-Bimbo-" if states.lun.tier >= 2: - $ name_luna_genie = "Bimbo" + $ name_luna_genie = _("Bimbo") "-Minx-" if states.lun.tier >= 3: - $ name_luna_genie = "Minx" + $ name_luna_genie = _("Minx") "-Cumslut-" if states.lun.ev.lun_cumslut_nickname_unlocked: - $ name_luna_genie = "Cumslut" + $ name_luna_genie = _("Cumslut") "-Custom Input-" if states.lun.tier >= 3: - $ name_luna_genie = renpy.input("(Please enter the name.)", name_luna_genie, ALLOWED_CHARACTERS, length=14).strip() or "Miss Lovegood" + $ name_luna_genie = renpy.input(_("(Please enter the name.)"), name_luna_genie, ALLOWED_CHARACTERS, length=14).strip() or "Miss Lovegood" "-Never mind-": jump luna_talk @@ -224,21 +224,21 @@ label luna_talk: label genie_luna_change: # NickName responses - if name_genie_luna == "Sir": + if name_genie_luna == _("Sir"): lun "Certainly, [name_genie_luna]." ("base", "base", "base", "mid") - elif name_genie_luna == "Dumbledore": + elif name_genie_luna == _("Dumbledore"): lun "You want me to call you by your last name?" ("annoyed", "narrow", "base", "mid") gen "Is that going to be a problem?" ("base", xpos="far_left", ypos="head") lun "Of course not [name_genie_luna]..." ("angry", "base", "base", "mid") lun "[name_genie_luna]..." ("angry", "base", "base", "downL") lun "Don't think I've ever heard anyone call you just [name_genie_luna] before..." ("grin", "base", "base", "mid") - elif name_genie_luna == "Professor": + elif name_genie_luna == _("Professor"): lun "Yes, [name_genie_luna]." ("base", "base", "base", "mid") - elif name_genie_luna == "Partner": + elif name_genie_luna == _("Partner"): lun "[name_genie_luna]?" ("soft", "base", "raised", "mid") gen "Yes, we're working together now, so it's only appropriate." ("base", xpos="far_left", ypos="head") lun "Oh... Of course [name_genie_luna]." ("grin", "base", "base", "mid") - elif name_genie_luna == "Master": + elif name_genie_luna == _("Master"): lun "[name_genie_luna]?" ("soft", "narrow", "base", "mid") lun "What are you a [name_genie_luna] of exactly?" ("angry", "base", "base", "mid") if states.lun.tier >= 3: @@ -259,7 +259,7 @@ label genie_luna_change: gen "That's me." ("base", xpos="far_left", ypos="head") lun "Okay, I'll call you [name_genie_luna] from now on." ("soft", "base", "base", "mid") gen "(Another confrontation expertly avoided...)" ("base", xpos="far_left", ypos="head") - elif name_genie_luna == "Daddy": + elif name_genie_luna == _("Daddy"): lun "[name_genie_luna]?" ("open", "narrow", "base", "mid") gen "Yes..." ("base", xpos="far_left", ypos="head") lun "But won't that be confusing?" ("annoyed", "narrow", "base", "mid") @@ -269,7 +269,7 @@ label genie_luna_change: lun "*Huh*?" ("angry", "base", "base", "mid") gen "Call me daddy you naughty girl!" ("angry", xpos="far_left", ypos="head") lun "Oh...{w=0.4} Yes, I'm sorry [name_genie_luna]!" ("angry", "happyCl", "base", "mid") - elif name_genie_luna == "Genie": + elif name_genie_luna == _("Genie"): lun "[name_genie_luna]..." ("open", "narrow", "base", "mid") lun "Wouldn't it be a bit weird if I called you that?" ("annoyed", "base", "base", "mid") gen "Why would it?" ("base", xpos="far_left", ypos="head") @@ -282,9 +282,9 @@ label genie_luna_change: label name_luna_genie: # NickName responses - if name_luna_genie == "Miss Lovegood": + if name_luna_genie == _("Miss Lovegood"): lun "Of course, [name_genie_luna]." ("base", "wink", "base", "mid") - elif name_luna_genie == "Luna": + elif name_luna_genie == _("Luna"): lun "But that's my first name!" ("angry", "base", "base", "mid") gen "So?" ("base", xpos="far_left", ypos="head") lun "Isn't it against the law?" ("mad", "narrow", "base", "mid") @@ -293,31 +293,31 @@ label name_luna_genie: gen "*Err*... No, they recently made it legal." ("base", xpos="far_left", ypos="head") lun "Oh, How progressive!" ("soft", "base", "base", "stare") lun "In that case, you can call me that!" ("smile", "base", "base", "mid") - elif name_luna_genie == "Loony": + elif name_luna_genie == _("Loony"): lun "Do you really need to call me that, [name_genie_luna]?" ("upset", "base", "base", "mid") lun "Other students call me that to make fun of me." ("upset", "base", "base", "R") gen "I like it." ("grin", xpos="far_left", ypos="head") lun "Alright then..." ("annoyed", "base", "base", "mid") - elif name_luna_genie == "Girl": + elif name_luna_genie == _("Girl"): lun "Just [name_luna_genie]?" ("soft", "base", "raised", "mid") gen "Yep." ("base", xpos="far_left", ypos="head") lun "Alright, I suppose I am a girl after all." ("grin", "narrow", "base", "mid") - elif name_luna_genie == "Partner": + elif name_luna_genie == _("Partner"): lun "[name_luna_genie]?" ("soft", "base", "base", "mid") gen "Yes, we're partners in this venture, are we not?" ("base", xpos="far_left", ypos="head") lun "Oh right!" ("angry", "base", "base", "mid") lun "Of course, you can call me that!" ("grin", "base", "base", "mid") - elif name_luna_genie == "Bimbo": + elif name_luna_genie == _("Bimbo"): lun "A what?" ("soft", "base", "base", "mid") gen "A Bimbo..." ("base", xpos="far_left", ypos="head") lun "Oh... Okay..." ("base", "base", "base", "mid") gen "(...{w} Maybe she doesn't know what that means...)" ("base", xpos="far_left", ypos="head") - elif name_luna_genie == "Minx": + elif name_luna_genie == _("Minx"): lun "A mink?" ("soft", "base", "base", "mid") gen "No, a--" ("base", xpos="far_left", ypos="head") lun "I love minks!" ("smile", "wide", "base", "mid") gen "...{w=0.3} Great." ("base", xpos="far_left", ypos="head") - elif name_luna_genie == "Cumslut": + elif name_luna_genie == _("Cumslut"): lun "Well I do love helping you cum..." ("grin", "narrow", "base", "downL") lun "Sure, you can call me that." ("grin", "base", "base", "mid") else: #Custom/fallback diff --git a/game/scripts/characters/luna/vars.rpy b/game/scripts/characters/luna/vars.rpy index 236054e9..2f4ec5b1 100644 --- a/game/scripts/characters/luna/vars.rpy +++ b/game/scripts/characters/luna/vars.rpy @@ -54,6 +54,6 @@ default states.lun.ev.ll_pf_talk_T4_E1_repeat_complete = False default lun_level_up = None # Names -default name_genie_luna = "Professor" -default name_luna_genie = "Miss Lovegood" -default name_geniepenis_luna = "Penis" +default name_genie_luna = _("Professor") +default name_luna_genie = _("Miss Lovegood") +default name_geniepenis_luna = _("Penis") diff --git a/game/scripts/characters/snape/common.rpy b/game/scripts/characters/snape/common.rpy index f1033751..75060ba0 100644 --- a/game/scripts/characters/snape/common.rpy +++ b/game/scripts/characters/snape/common.rpy @@ -2,7 +2,7 @@ label update_snape: $ states.sna.image.xzoom = 1 return -define character.snape_say = Character("Severus Snape", show_icon="snape") +define character.snape_say = Character(_("Severus Snape"), show_icon="snape") init python: def sna(what, face=None, xpos=None, ypos=None, pos=None, flip=None, trans=None, animation=False, wand=False, **kwargs): diff --git a/game/scripts/characters/susan/summon.rpy b/game/scripts/characters/susan/summon.rpy index da182a4a..6c6e7649 100644 --- a/game/scripts/characters/susan/summon.rpy +++ b/game/scripts/characters/susan/summon.rpy @@ -74,19 +74,19 @@ label susan_talk: "-Address me only as-": menu: "-Sir-": - $ name_genie_susan = "Sir" + $ name_genie_susan = _("Sir") sus "Very well, [name_genie_susan]." ("base", "base", "base", "mid") jump susan_talk "-Dumbledore-": - $ name_genie_susan = "Dumbledore" + $ name_genie_susan = _("Dumbledore") sus "Okay, [name_genie_susan]." ("soft", "base", "base", "mid") jump susan_talk "-Professor-": - $ name_genie_susan = "Professor" + $ name_genie_susan = _("Professor") sus "Of course, [name_genie_susan]." ("base", "base", "base", "mid") jump susan_talk "-Old man-": - $ name_genie_susan = "Old man" + $ name_genie_susan = _("Old man") sus "That wouldn't be very polite, Professor." ("soft", "happy", "low", "mid") gen "Don't worry, [name_susan_genie]. I always tell my students to call me silly names." ("base", xpos="far_left", ypos="head") gen "It helps bonding with them!" ("grin", xpos="far_left", ypos="head") @@ -94,7 +94,7 @@ label susan_talk: gen "(And soon I'm going to bond with your tits!)" ("angry", xpos="far_left", ypos="head") jump susan_talk "-Genie-": - $ name_genie_susan = "Genie" + $ name_genie_susan = _("Genie") sus "I... *Ehm*--" ("soft", "happy", "base", "mid") sus "Is that something people call you?" ("open", "base", "raised", "mid") gen "Yes-yes--, everybody!" ("base", xpos="far_left", ypos="head") @@ -103,7 +103,7 @@ label susan_talk: sus "O--{w=0.2} Okay then... [name_genie_susan]." ("grin", "happy", "base", "mid") jump susan_talk "-Lord Voldemort-": - $ name_genie_susan = "Lord Voldemort" + $ name_genie_susan = _("Lord Voldemort") sus "Why would you want me to call you that?" ("angry", "happy", "low", "mid") sus "We aren't supposed to mention his name!" ("angry", "happy", "worried", "mid") gen "It's only a name, girl..." ("base", xpos="far_left", ypos="head") @@ -115,7 +115,7 @@ label susan_talk: sus "V--{w=0.2} Voldemort..." ("angry", "happyCl", "sad", "mid") jump susan_talk "-Daddy-": - $ name_genie_susan = "Daddy" + $ name_genie_susan = _("Daddy") sus @ cheeks blush "Sir, no!" ("angry", "base", "base", "mid") sus @ cheeks blush "I can't possibly call you that!" ("open", "happy", "sad", "mid") gen "But I want you to." ("base", xpos="far_left", ypos="head") @@ -126,7 +126,7 @@ label susan_talk: sus @ cheeks blush "O--{w=0.2} Okay then... Professor-- *Ehm*... D-Daddy." ("annoyed", "happy", "worried", "stare") jump susan_talk "-Master-": - $ name_genie_susan = "Master" + $ name_genie_susan = _("Master") sus "M--{w=0.2} Master?" ("soft", "base", "base", "stare") sus "I don't think I should call my teachers that." ("soft", "narrow", "base", "downR") gen "No-no--, that's what you should call your teachers nowadays!" ("base", xpos="far_left", ypos="head") @@ -149,19 +149,19 @@ label susan_talk: "-From now on, I will refer to you as-": menu: "-Miss Bones-": - $ name_susan_genie = "Miss Bones" + $ name_susan_genie = _("Miss Bones") sus "Of course, [name_genie_susan]." ("base", "base", "base", "mid") jump susan_talk "-Susan-": - $ name_susan_genie = "Susan" + $ name_susan_genie = _("Susan") sus "Of course, [name_genie_susan]." ("base", "base", "base", "mid") jump susan_talk "-Girl-": - $ name_susan_genie = "Girl" + $ name_susan_genie = _("Girl") sus "I'm okay with that, [name_genie_susan]." ("base", "base", "base", "mid") jump susan_talk "-Cow-": - $ name_susan_genie = "Cow" + $ name_susan_genie = _("Cow") sus "Why would you want to call me that, [name_genie_susan]?" ("angry", "happy", "low", "mid") sus "The other girls already call me that, and I hate it..." ("angry", "narrow", "low", "down") gen "You poor thing!" ("base", xpos="far_left", ypos="head") @@ -170,7 +170,7 @@ label susan_talk: sus @ cheeks blush "You can call me a Cow, [name_genie_susan]." ("soft", "narrow", "base", "downR") jump susan_talk "-Betsy-": - $ name_susan_genie = "Betsy" + $ name_susan_genie = _("Betsy") sus "But, sir... Isn't that... You know..." ("open", "happy", "sad", "mid") gen "You know... What?" ("base", xpos="far_left", ypos="head") sus @ cheeks blush "Isn't that a name you'd give to a-- A cow?" ("open", "happy", "sad", "downR") @@ -183,7 +183,7 @@ label susan_talk: sus @ cheeks blush "Alright then, you can call me that if you like..." ("soft", "base", "base", "mid") jump susan_talk "-Slut-": - $ name_susan_genie = "Slut" + $ name_susan_genie = _("Slut") sus @ cheeks blush "[name_genie_susan]!" ("soft", "wide", "base", "mid") sus @ cheeks blush "You can't be serious!" ("angry", "happy", "base", "mid") gen "Why not. Nobody has to know..." ("base", xpos="far_left", ypos="head") diff --git a/game/scripts/characters/susan/vars.rpy b/game/scripts/characters/susan/vars.rpy index d60978d7..b3335c28 100644 --- a/game/scripts/characters/susan/vars.rpy +++ b/game/scripts/characters/susan/vars.rpy @@ -22,6 +22,6 @@ default states.sus.ev.intro.e1_complete = False # Names -default name_susan_genie = "Miss Bones" -default name_genie_susan = "Sir" +default name_susan_genie = _("Miss Bones") +default name_genie_susan = _("Sir") diff --git a/game/scripts/characters/tonks/events/hangout.rpy b/game/scripts/characters/tonks/events/hangout.rpy index 14101edc..405deae6 100644 --- a/game/scripts/characters/tonks/events/hangout.rpy +++ b/game/scripts/characters/tonks/events/hangout.rpy @@ -120,7 +120,7 @@ label nt_he_firewhisky_intro: pause.1 # Show firewhisky - call give_reward("You hand over a bottle of firewhisky to Tonks...", gift="interface/icons/firewhisky.webp", sound=False) + call give_reward(_("You hand over a bottle of firewhisky to Tonks..."), gift="interface/icons/firewhisky.webp", sound=False) ton "Finally, the good stuff!" ("horny", "base", "base", "down", ypos="head", flip=False) ton "I'm glad you brought out some firewhisky this time..." ("base", "base", "base", "down") diff --git a/game/scripts/characters/tonks/talk.rpy b/game/scripts/characters/tonks/talk.rpy index d9a843f9..8977b15f 100644 --- a/game/scripts/characters/tonks/talk.rpy +++ b/game/scripts/characters/tonks/talk.rpy @@ -55,22 +55,22 @@ label tonks_talk: menu: "-Sir-": label .sir: # Local label unavailable from global scope - $ name_genie_tonks = "Sir" + $ name_genie_tonks = _("Sir") ton "Of course, [name_genie_tonks]." ("base", "base", "base", "mid") "-Dumbledore-": label .dumbledore: - $ name_genie_tonks = "Dumbledore" + $ name_genie_tonks = _("Dumbledore") ton "Sure thing, [name_genie_tonks]." ("base", "base", "base", "mid") "-Professor-": label .professor: - $ name_genie_tonks = "Professor" + $ name_genie_tonks = _("Professor") ton "Alright, [name_genie_tonks]." ("base", "base", "base", "mid") "-Old man-": label .old_man: - $ name_genie_tonks = "Old man" + $ name_genie_tonks = _("Old man") ton "I have to say, for your age you're in really great shape..." ("soft", "base", "base", "down") gen "That's part of the benefits of being immortal...{w=0.4} Your body doesn't age." ("base", xpos="far_left", ypos="head") ton "You're lucky then... I've had men that were a couple of hundred years old, whose bodies were quite fragile..." ("open", "base", "base", "R") @@ -86,7 +86,7 @@ label tonks_talk: "-Genie-": label .genie: - $ name_genie_tonks = "Genie" + $ name_genie_tonks = _("Genie") ton "Of course." ("base", "base", "base", "mid") gen "Sweet." ("grin", xpos="far_left", ypos="head") ton "Will I get my three wishes too?" ("open", "base", "base", "mid") @@ -107,7 +107,7 @@ label tonks_talk: "-Lord Voldemort-": label .lord_voldemort: - $ name_genie_tonks = "Lord Voldemort" + $ name_genie_tonks = _("Lord Voldemort") ton "Bold of you to say his name out loud... Who even told you about the dark lord?" ("open", "base", "angry", "mid") gen "I've read the stories..." ("base", xpos="far_left", ypos="head") ton "So you know this wizard did some terrible things in his lifetime?" ("open", "base", "angry", "R") @@ -133,7 +133,7 @@ label tonks_talk: "-Daddy-": label .daddy: - $ name_genie_tonks = "Daddy" + $ name_genie_tonks = _("Daddy") ton "Well, you do look about thrice as old as me..." ("base", "base", "raised", "mid") ton "Crazy to think you geezers get to bang all those young, sexy, innocent witches here..." ("open", "base", "base", "R") gen "(Geezers?)" ("base", xpos="far_left", ypos="head") @@ -159,7 +159,7 @@ label tonks_talk: "-Lover-" if states.ton.level >= 60: label .lover: - $ name_genie_tonks = "Lover" + $ name_genie_tonks = _("Lover") ton "As you wish, \"Lover boy\"..." ("horny", "narrow", "base", "mid") gen "Just \"Lover\" is fine." ("base", xpos="far_left", ypos="head") ton "Yes my love..." ("base", "narrow", "base", "mid") @@ -178,7 +178,7 @@ label tonks_talk: "-Master-" if states.ton.level >= 60: label .master: - $ name_genie_tonks = "Master" + $ name_genie_tonks = _("Master") ton "Yes, [name_genie_tonks]." ("open", "base", "base", "mid") gen "(...)" ("base", xpos="far_left", ypos="head") ton "" ("base", "base", "raised", "mid") @@ -195,8 +195,8 @@ label tonks_talk: $ temp_name = renpy.input("(Please enter the name.)", name_genie_tonks, ALLOWED_CHARACTERS, length=14) $ temp_name = temp_name.strip() - if temp_name.lower() in ("sir", "dumbledore", "professor", "old man", "genie", "lord voldemort", "daddy", "master"): - if temp_name.lower() == "master" and states.ton.level < 60: + if temp_name.lower() in (_("sir"), _("dumbledore"), _("professor"), _("old man"), _("genie"), _("lord voldemort"), _("daddy"), _("master")): + if temp_name.lower() == _("master") and states.ton.level < 60: jump tonks_talk.master_fail $ renpy.jump("tonks_talk."+temp_name.lower().replace(" ", "_")) # Jump to local label else: @@ -213,11 +213,11 @@ label tonks_talk: menu: "-Tonks-": label .tonks: # Local label unavailable from global scope. - $ name_tonks_genie = "Tonks" + $ name_tonks_genie = _("Tonks") ton "Sure, [name_genie_tonks]." ("base", "base", "base", "mid") "-Nymphadora-": - $ name_tonks_genie = "Nymphadora" + $ name_tonks_genie = _("Nymphadora") label .nymphadora: ton "*Ugh*--" ("mad", "base", "angry", "R") ton "Really, [name_genie_tonks]?" ("open", "base", "angry", "mid") @@ -227,14 +227,14 @@ label tonks_talk: "-Nympho-": label .nympho: - $ name_tonks_genie = "Nympho" + $ name_tonks_genie = _("Nympho") ton "You think I'm a nympho, [name_genie_tonks]?" ("horny", "base", "raised", "mid") ton "A filthy, sex-craving maniac? Someone who wouldn't shy away from fulfilling every single one of her fantasies?" ("grin", "base", "shocked", "mid") ton "Yes... That does sound like me, doesn't it?" ("base", "base", "base", "R") "-Bitch-": label .bitch: - $ name_tonks_genie = "Bitch" + $ name_tonks_genie = _("Bitch") ton "*Hi-hi*" ("base", "base", "base", "R") ton "If only you knew..." ("horny", "base", "raised", "R") gen "(...)" ("base", xpos="far_left", ypos="head") @@ -251,7 +251,7 @@ label tonks_talk: "-Fuck Puppet-": label .fuck_puppet: - $ name_tonks_genie = "Fuck Puppet" + $ name_tonks_genie = _("Fuck Puppet") ton "A fuck puppet?" ("open", "base", "raised", "mid") ton "So you want me to be your personal toy?" ("horny", "base", "base", "mid") gen "Wouldn't anyone." ("base", xpos="far_left", ypos="head") @@ -266,7 +266,7 @@ label tonks_talk: #gen "I wasn't going to." ("base", xpos="far_left", ypos="head") "-Slut-": - $ name_tonks_genie = "Slut" + $ name_tonks_genie = _("Slut") ton "Maybe I am..." ("base", "narrow", "base", "R") ton "Although I'd rather get called \"fashionable\"." ("base", "narrow", "base", "mid") gen "Weird thing to say in bed, but I ain't judging." ("base", xpos="far_left", ypos="head") @@ -286,7 +286,7 @@ label tonks_talk: "-Whore-": #Todo put under public checks label .whore: - $ name_tonks_genie = "Whore" + $ name_tonks_genie = _("Whore") ton @ hair horny "Hmm... I'm a \"whore\" now, am I?" ("horny", "base", "raised", "mid") gen "That's what I pay you for." ton @ hair horny "You pay me to--" ("soft", "narrow", "base", "mid") @@ -307,7 +307,7 @@ label tonks_talk: "-Cunt-" if states.ton.level >= 60: label .cunt: - $ name_tonks_genie = "Cunt" + $ name_tonks_genie = _("Cunt") ton "*Uuuh*, [name_genie_tonks]..." ("base", "base", "raised", "mid") ton "You better not call me that in front of a student..." ("open", "base", "base", "mid") gen "What if I do?" ("grin", xpos="far_left", ypos="head") @@ -324,7 +324,7 @@ label tonks_talk: "-Slave-" if states.ton.level >= 60: label .slave: - $ name_tonks_genie = "Slave" + $ name_tonks_genie = _("Slave") ton "Does this mean I have to be obedient?" ("soft", "narrow", "raised", "mid") gen "Isn't that the point of an employee?" ("base", xpos="far_left", ypos="head") ton "I suppose, although you pay me for that." ("open", "narrow", "base", "R") @@ -350,8 +350,8 @@ label tonks_talk: "-Custom Input-" if states.ton.level >= 60: $ temp_name = renpy.input("(Please enter the name.)", name_tonks_genie, ALLOWED_CHARACTERS, length=14) $ temp_name = temp_name.strip() - if temp_name.lower() in ("tonks", "nymphadora", "nympho", "fuck puppet", "bitch", "cunt"): - if temp_name.lower() == "cunt" and states.ton.level < 60: + if temp_name.lower() in (_("tonks"), _("nymphadora"), _("nympho"), _("fuck puppet"), _("bitch"), _("cunt")): + if temp_name.lower() == _("cunt") and states.ton.level < 60: jump tonks_talk.cunt_fail $ renpy.jump("tonks_talk."+temp_name.lower().replace(" ", "_")) # Jump to local label else: diff --git a/game/scripts/characters/tonks/vars.rpy b/game/scripts/characters/tonks/vars.rpy index cfe6ad35..d7e9cc05 100644 --- a/game/scripts/characters/tonks/vars.rpy +++ b/game/scripts/characters/tonks/vars.rpy @@ -38,6 +38,6 @@ default tonks_haircolor = [c for c in ton_hair_base.color] init offset = 0 # Names -default name_tonks_genie = "Tonks" -default name_genie_tonks = "Professor" -default name_astoria_tonks = "Cutie" +default name_tonks_genie = _("Tonks") +default name_genie_tonks = _("Professor") +default name_astoria_tonks = _("Cutie") diff --git a/game/scripts/events/final_events.rpy b/game/scripts/events/final_events.rpy index 50b828d1..001a7541 100644 --- a/game/scripts/events/final_events.rpy +++ b/game/scripts/events/final_events.rpy @@ -666,7 +666,7 @@ label ball_quest_E5: stop music fadeout 1.0 gen "Here... This is for you..." ("base", xpos="far_left", ypos="head") - call give_reward("You give the ball dress to Hermione...","interface/icons/box_red_1.webp") + call give_reward(_("You give the ball dress to Hermione..."),"interface/icons/box_red_1.webp") her "*Hmm*...? What is this?" ("base", "base", "base", "mid") her "{size=+7}A DRESS?!{/size}" ("angry", "wide", "base", "stare") diff --git a/game/scripts/gui/preferences.rpy b/game/scripts/gui/preferences.rpy index 06ba5630..8dc375ed 100644 --- a/game/scripts/gui/preferences.rpy +++ b/game/scripts/gui/preferences.rpy @@ -91,7 +91,11 @@ screen preferences_general(): label _("Skipping") textbutton _("Skip Unseen Text") action Preference("skip", "toggle") textbutton _("Until dialog menu") action InvertSelected(Preference("after choices", "toggle")) - + vbox: + style_prefix gui.theme("radio") + label _("Language") + textbutton "English" action Language(None) + textbutton "中文" action Language("chinese") hbox: box_wrap True diff --git a/game/scripts/interface/letter.rpy b/game/scripts/interface/letter.rpy index 37734358..8f3f488a 100644 --- a/game/scripts/interface/letter.rpy +++ b/game/scripts/interface/letter.rpy @@ -3,11 +3,11 @@ # Hermione Granger Letters default letter_hg_1 = Letter( - text = "{size=-7}From: Hermione Granger\nTo: Professor Dumbledore\n\n{/size}{size=-4}I am sure that you remember the reason why I'm writing you this letter from my last one, sir.\n\nI beg of you, please hear my plea this time. This injustice simply cannot go on...\nNot in this day and age, not in our school.\n\nPlease take action.{/size}\n\n{size=-7}With deepest respect,\nHermione Granger{/size}" + text = _("{size=-7}From: Hermione Granger\nTo: Professor Dumbledore\n\n{/size}{size=-4}I am sure that you remember the reason why I'm writing you this letter from my last one, sir.\n\nI beg of you, please hear my plea this time. This injustice simply cannot go on...\nNot in this day and age, not in our school.\n\nPlease take action.{/size}\n\n{size=-7}With deepest respect,\nHermione Granger{/size}") ) default letter_hg_2 = Letter( - text = "{size=-7}From: Hermione Granger\nTo: Professor Dumbledore\n\n{/size}{size=-4}I am sorry to disturb you again, professor. I just want to make sure that you take this problem seriously.\n\nLast night another classmate confided in me... I gave my word to keep it a secret, so I cannot go into any details.\n\nAll I can say is that one of the Professors was involved.\n\nPlease take action soon.{/size}\n\n{size=-7}With deepest respect,\nHermione Granger.{/size}", + text = _("{size=-7}From: Hermione Granger\nTo: Professor Dumbledore\n\n{/size}{size=-4}I am sorry to disturb you again, professor. I just want to make sure that you take this problem seriously.\n\nLast night another classmate confided in me... I gave my word to keep it a secret, so I cannot go into any details.\n\nAll I can say is that one of the Professors was involved.\n\nPlease take action soon.{/size}\n\n{size=-7}With deepest respect,\nHermione Granger.{/size}"), label = "letter_hg_2", wait = 3, ) @@ -19,7 +19,7 @@ label letter_hg_2: # Ministry of Magic Letters default letter_work_unlock = Letter( - text = "{size=-7}From: Ministry of Magic\nTo: Professor Albus Dumbledore\n\n{/size}{size=-4}Dear professor Dumbledore,\nWe remind you that only upon providing us with a completed report will we be able to make a payment in your name.{/size}\n\n{size=-7}With deepest respect,\nThe Ministry of Magic.{/size}", + text = _("{size=-7}From: Ministry of Magic\nTo: Professor Albus Dumbledore\n\n{/size}{size=-4}Dear professor Dumbledore,\nWe remind you that only upon providing us with a completed report will we be able to make a payment in your name.{/size}\n\n{size=-7}With deepest respect,\nThe Ministry of Magic.{/size}"), label = "letter_work_unlock", wait = 4, ) @@ -27,12 +27,12 @@ default letter_work_unlock = Letter( label letter_work_unlock: $ states.paperwork_unlocked = True gen "Payments? *Hmm*..." ("base", xpos="far_left", ypos="head") - call give_reward("From now on you can do paperwork at your desk in order to earn additional gold...","interface/icons/gold.webp") + call give_reward(_("From now on you can do paperwork at your desk in order to earn additional gold..."),"interface/icons/gold.webp") call tutorial("workngold") return default letter_work_report = Letter( - text = "{size=-7}From:Ministry of Magic\nTo: Professor Dumbledore\n\n{/size}{size=-4}Thank you for completing a report this week.\n\nYou will find your payment of\n\n{/size}{b}-[reports_gold] gold-{/b}{size=-4}\n\nin the attached purse.{/size}\n\n{size=-7}With deepest respect,\nThe Ministry of Magic.{/size}", + text = _("{size=-7}From:Ministry of Magic\nTo: Professor Dumbledore\n\n{/size}{size=-4}Thank you for completing a report this week.\n\nYou will find your payment of\n\n{/size}{b}-[reports_gold] gold-{/b}{size=-4}\n\nin the attached purse.{/size}\n\n{size=-7}With deepest respect,\nThe Ministry of Magic.{/size}"), label = "letter_work_report", func = calc_reports_gold ) @@ -64,7 +64,7 @@ label letter_work_report: return default letter_favors = Letter( - text = "{size=-7}From:Ministry of Magic\nTo: Professor Dumbledore\n\n{/size}{size=-4}Dear professor Dumbledore,\nit has come to the ministry's attention from an anonymous letter, that there has been illicit activities going on between staff members and students within your halls.\n\nAn Auror has been dispatched and will arrive shortly to begin the investigation.{/size}\n\n{size=-7}Yours sincerely,\nAmelia Bones, Department of Magical Law Enforcement.{/size}", + text = _("{size=-7}From:Ministry of Magic\nTo: Professor Dumbledore\n\n{/size}{size=-4}Dear professor Dumbledore,\nit has come to the ministry's attention from an anonymous letter, that there has been illicit activities going on between staff members and students within your halls.\n\nAn Auror has been dispatched and will arrive shortly to begin the investigation.{/size}\n\n{size=-7}Yours sincerely,\nAmelia Bones, Department of Magical Law Enforcement.{/size}"), label = "letter_favors", wait = 8, ) @@ -78,7 +78,7 @@ label letter_favors: # Card Game Letters default letter_cards_unlock = Letter( - text = "{size=-3}Sir Albus Dumbledore{/size}\n\n{size=-7}We would like to present to you a great opportunity to become a Wizard Cards champion. Included in this letter is a starter pack to our card game in the hopes that you will consider any of our resellers to stock our cards for your students to purchase and play.\n\nHere's a little bit of information about our cards:\nEvery Wizard card has an enchantment that will personalise its look just for you and show something of your own favourite interest.\n\nDo you like Quidditch? Every card will look like a famous Quidditch player or a sport related print.\nInterested in magical creatures? The cards will have magical creatures on them.\nFind out your unique illustrations today with this starter pack, we don't even know what it is!{/size}\n\n{space=110}{size=-5}Wizard cards inc{/size}", + text = _("{size=-3}Sir Albus Dumbledore{/size}\n\n{size=-7}We would like to present to you a great opportunity to become a Wizard Cards champion. Included in this letter is a starter pack to our card game in the hopes that you will consider any of our resellers to stock our cards for your students to purchase and play.\n\nHere's a little bit of information about our cards:\nEvery Wizard card has an enchantment that will personalise its look just for you and show something of your own favourite interest.\n\nDo you like Quidditch? Every card will look like a famous Quidditch player or a sport related print.\nInterested in magical creatures? The cards will have magical creatures on them.\nFind out your unique illustrations today with this starter pack, we don't even know what it is!{/size}\n\n{space=110}{size=-5}Wizard cards inc{/size}"), label = "letter_cards_unlock", wait = 24 ) @@ -107,11 +107,11 @@ label letter_cards_unlock: i.copies = -1 gen "(Hell yes I'm playing this...)" ("grin", xpos="far_left", ypos="head") - call give_reward("You've unlocked Wizard cards.\n\nUse the deck builder available on your desk to learn the rules and edit your deck.","interface/icons/cards.webp") + call give_reward(_("You've unlocked Wizard cards.\n\nUse the deck builder available on your desk to learn the rules and edit your deck."),"interface/icons/cards.webp") return default letter_cards_store = Letter( - text = "{size=-7}Weasley's Wizard Wheezes shop emporium is now officially partnering with Wizard cards.\nVisit our shop for the best deals on card packs in all of Hogwarts!{/size}", + text = _("{size=-7}Weasley's Wizard Wheezes shop emporium is now officially partnering with Wizard cards.\nVisit our shop for the best deals on card packs in all of Hogwarts!{/size}"), label = "letter_cards_store", wait = 7 ) @@ -122,12 +122,12 @@ label letter_cards_store: $ lootbox_ITEM.unlocked = True gen "Great, let's see how they're doing." ("base", xpos="far_left", ypos="head") - call give_reward("New items have been unlocked in the store.", "interface/icons/gold.webp") + call give_reward(_("New items have been unlocked in the store."), "interface/icons/gold.webp") return default letter_cards_tier2 = Letter( - text = "{size=-3}Congratulations!{/size}\n\n{size=-7}You've beaten your first 3 challenges of Wizard Cards.\nWe're currently working on expanding our business and are recruiting even more challengers so that in the future you'll be able to challenge even more people.\nIn the meanwhile, you'll be able to earn even more tokens by making wagers with the ones you've already beaten to complete your collection of items.\nFor wagers both participant needs to be fine with the prize/forfeit before the wager is made, good luck!\n\nYours truly,\nWeasley's Wizard Wheeze's and Team Silver{/size}", + text = _("{size=-3}Congratulations!{/size}\n\n{size=-7}You've beaten your first 3 challenges of Wizard Cards.\nWe're currently working on expanding our business and are recruiting even more challengers so that in the future you'll be able to challenge even more people.\nIn the meanwhile, you'll be able to earn even more tokens by making wagers with the ones you've already beaten to complete your collection of items.\nFor wagers both participant needs to be fine with the prize/forfeit before the wager is made, good luck!\n\nYours truly,\nWeasley's Wizard Wheeze's and Team Silver{/size}"), label = "letter_cards_tier2" ) @@ -140,7 +140,7 @@ label letter_cards_tier2: # Tonks default letter_nt_1 = Letter( - text = "{size=-7}From: Tonks\nTo: My beloved headmaster\n\n{/size}{size=-4}As promised, here is a very lewd picture of me.{heart}\n\nI had so much fun making this for you.\nPlease jerk off to it as much as you like! {heart} {heart} {heart}{/size}\n\n{size=-7}With love,\nTonks. {heart}{/size}", + text = _("{size=-7}From: Tonks\nTo: My beloved headmaster\n\n{/size}{size=-4}As promised, here is a very lewd picture of me.{heart}\n\nI had so much fun making this for you.\nPlease jerk off to it as much as you like! {heart} {heart} {heart}{/size}\n\n{size=-7}With love,\nTonks. {heart}{/size}"), label = "letter_nt_1" ) @@ -154,7 +154,7 @@ label letter_nt_1: gen "Nice!" ("grin", xpos="far_left", ypos="head") - call give_reward(text="A new room decoration have been unlocked!", gift="interface/icons/tonks_poster.webp", sound=True) + call give_reward(text=_("A new room decoration have been unlocked!", gift="interface/icons/tonks_poster.webp"), sound=True) $ tonks_poster_ITEM.owned = 1 gen "I'll definitely hang this one up!" ("grin", xpos="far_left", ypos="head") diff --git a/game/scripts/interface/splash.rpy b/game/scripts/interface/splash.rpy index e57bcc80..26721bd6 100644 --- a/game/scripts/interface/splash.rpy +++ b/game/scripts/interface/splash.rpy @@ -18,8 +18,8 @@ screen splashscreen(): vbox: align (0.5, 0.9) - text "The game contains strong language, nudity, explicit scenes, drinkin', smokin', bangin', use of drugs, and just about everything your mother ever told you not to do." - text "{color=#ff0000}{b}NOT SUITABLE FOR CHILDREN{/b}{/color}!" size 22 + text _("The game contains strong language, nudity, explicit scenes, drinkin', smokin', bangin', use of drugs, and just about everything your mother ever told you not to do.") + text _("{color=#ff0000}{b}NOT SUITABLE FOR CHILDREN{/b}{/color}!") size 22 timer 7.0 action Return() diff --git a/game/scripts/interface/stats.rpy b/game/scripts/interface/stats.rpy index 9e4a494a..001bbb58 100644 --- a/game/scripts/interface/stats.rpy +++ b/game/scripts/interface/stats.rpy @@ -1,20 +1,20 @@ default stats_show_locked = False -define her_whoring_word_list = ("Pure", "Naive", "Curious", "Naughty", "Perverse", "Immoral", "Slutty", "Shameless", "Cumslut", "Total Cumslut", "Shameless Cumslut") -define her_reputation_word_list = ("Teacher's Pet", "School Star", "Good girl", "Minx", "Slutty Schoolgirl", "Easy Lay", "Whore", "Slut for sex", "Gryffindor Whore", "School Cumdump", "Mudblood Cumdump") +define her_whoring_word_list = (_("Pure"), _("Naive"), _("Curious"), _("Naughty"), _("Perverse"), _("Immoral"), _("Slutty"), _("Shameless"), _("Cumslut"), _("Total Cumslut"), _("Shameless Cumslut")) +define her_reputation_word_list = (_("Teacher's Pet"), _("School Star"), _("Good girl"), _("Minx"), _("Slutty Schoolgirl"), _("Easy Lay"), _("Whore"), _("Slut for sex"), _("Gryffindor Whore"), _("School Cumdump"), _("Mudblood Cumdump")) #$ slutWords = ["Teacher's pet", "School Star", "Good Girl", "Headmaster's Pet", "Slutty Schoolgirl", "Slut", "Headmaster's Slut", "Daddy's Girl", "Gryffindor Slut", "Dumbledore's Whore", "Dumbledore's Cumdump"] -define her_tutoring_word_list = ("Not Started", "Naive", "Tempted", "Curious", "Tainted", "Eager", "Sinful", "Perverted", "Corrupted", "Depraved", "Shattered") -define her_mood_word_list = ("Cheerful", "Reluctant", "Gloomy", "Stern", "Slightly Annoyed", "Annoyed", "Upset", "Outraged", "Mad", "Angry", "Very Angry") +define her_tutoring_word_list = (_("Not Started"), _("Naive"), _("Tempted"), _("Curious"), _("Tainted"), _("Eager"), _("Sinful"), _("Perverted"), _("Corrupted"), _("Depraved"), _("Shattered")) +define her_mood_word_list = (_("Cheerful"), _("Reluctant"), _("Gloomy"), _("Stern"), _("Slightly Annoyed"), _("Annoyed"), _("Upset"), _("Outraged"), _("Mad"), _("Angry"), _("Very Angry")) #$ ast_cuteness_word_list = ["Ugly Duckling", "Swot", "", "", "", "", "", "Cutypie", "", "", ""] -define ast_mood_word_list = ("Cheerful", "Reluctant", "Gloomy", "Stern", "Slightly Annoyed", "Annoyed", "Upset", "Outraged", "Mad", "Angry", "Very Angry") -define cho_whoring_word_list = ("Incorruptible", "Focused", "Resilient", "Bi-Curious", "Naughty", "Immoral", "Perverse", "Slutty", "Shameless", "Cumslut", "Shameless Cumslut") -define cho_reputation_word_list = ("Tomboy", "Team Player", "Quidditch Star", "Flying Ace", "Minx", "Manipulative", "Exploiting", "Cheater", "Team's Cumdump", "Quidditch Whore", "Cheating Slut") -define cho_mood_word_list = ("Cheerful", "Reluctant", "Gloomy", "Stern", "Slightly Annoyed", "Annoyed", "Upset", "Outraged", "Mad", "Angry", "Very Angry") +define ast_mood_word_list = (_("Cheerful"), _("Reluctant"), _("Gloomy"), _("Stern"), _("Slightly Annoyed"), _("Annoyed"), _("Upset"), _("Outraged"), _("Mad"), _("Angry"), _("Very Angry")) +define cho_whoring_word_list = (_("Incorruptible"), _("Focused"), _("Resilient"), _("Bi-Curious"), _("Naughty"), _("Immoral"), _("Perverse"), _("Slutty"), _("Shameless"), _("Cumslut"), _("Shameless Cumslut")) +define cho_reputation_word_list = (_("Tomboy"), _("Team Player"), _("Quidditch Star"), _("Flying Ace"), _("Minx"), _("Manipulative"), _("Exploiting"), _("Cheater"), _("Team's Cumdump"), _("Quidditch Whore"), _("Cheating Slut")) +define cho_mood_word_list = (_("Cheerful"), _("Reluctant"), _("Gloomy"), _("Stern"), _("Slightly Annoyed"), _("Annoyed"), _("Upset"), _("Outraged"), _("Mad"), _("Angry"), _("Very Angry")) # $ sna_support_word_list = ["Tight-Arse", "Miser", "Stingy", "Sparing", "Adequate", "Loose", "Easy", "Generous", "Frivolous", "Excessive", "Exorbitant"] -define sna_friendship_word_list = ("Unknown", "Colleague", "Confidant", "Trusted", "Acquaintance", "Friend", "Good friend", "Homie", "If I had to pick a dude...", "BFF", "Bros") -define ton_reputation_word_list = ("Teacher", "Bore", "Weirdo", "A Bit Nutty", "Easy Going", "Tart", "Naughty Teacher", "Slutty Teacher", "Slag", "Shameful", "Disgrace") +define sna_friendship_word_list = (_("Unknown"), _("Colleague"), _("Confidant"), _("Trusted"), _("Acquaintance"), _("Friend"), _("Good friend"), _("Homie"), _("If I had to pick a dude..."), _("BFF"), _("Bros")) +define ton_reputation_word_list = (_("Teacher"), _("Bore"), _("Weirdo"), _("A Bit Nutty"), _("Easy Going"), _("Tart"), _("Naughty Teacher"), _("Slutty Teacher"), _("Slag"), _("Shameful"), _("Disgrace")) # $ ton_support_word_list = ["Undecided", "Modest", "Candid", "Unbiased", "Positive", "Fair", "Neutral", "Biased", "Scummy", "Cruel", "Heartless"] -define ton_friendship_word_list = ("Unknown", "Inferior", "Employee", "Advisor", "Trusted advisor", "Acquaintance", "Friend", "Girlfriend", "Partner in crime", "Bonnie & Clyde", "Master & Slave") +define ton_friendship_word_list = (_("Unknown"), _("Inferior"), _("Employee"), _("Advisor"), _("Trusted advisor"), _("Acquaintance"), _("Friend"), _("Girlfriend"), _("Partner in crime"), _("Bonnie & Clyde"), _("Master & Slave")) #$ ton_sluttiness_word_list = ["Masochist", "Disgrace", "Street Whore", "Harlot", "Tart", "Sexually open", "Naughty Teacher", "Easy Going", "Professor", "Bore", "Nun"] label stats: @@ -24,14 +24,14 @@ label stats: define stats_categories_sorted = ("Genie", "Snape", "Tonks", "Hermione", "Cho", "Luna", "Astoria", "Susan") #"Ginny", "Daphne", "Padma", "Patil", "Myrtle", "Mafkin" # Stats dictionary define stats_dict = { - "Genie": {"ico": "genie", "name": "Genie", "sex": "Yes", "height": "6.2ft", "weight": "200lb", "job": "Headmaster", "hates": "Lamps", "likes": "Tits"}, - "Snape": {"ico": "snape", "name": "Severus Snape", "sex": "Male", "height": "5.9ft", "weight": "155lb", "job": "Teacher", "hates": "Everyone", "likes": "Rain"}, - "Tonks": {"ico": "tonks", "name": "Nymphadora Tonks", "sex": "Fluid", "height": "5.6ft", "weight": "130lb", "job": "Teacher", "hates": "Pineapple Pizza", "likes": "Girls"}, - "Hermione": {"ico": "hermione", "name": "Hermione Granger", "sex": "Female", "height": "5.2ft", "weight": "126lb", "job": "Student", "hates": "Slytherin", "likes": "Books"}, - "Cho": {"ico": "cho", "name": "Cho Chang", "sex": "Female", "height": "5.1ft", "weight": "122lb", "job": "Student", "hates": "Hermione", "likes": "Winning"}, - "Luna": {"ico": "luna", "name": "Luna Lovegood", "sex": "Female", "height": "5.2ft", "weight": "117lb", "job": "Student", "hates": "Wrackspurts", "likes": "{size=-2}Magical creatures{/size}"}, - "Astoria": {"ico": "astoria", "name": "Astoria Greengrass", "sex": "Female", "height": "5.0ft", "weight": "102lb", "job": "Student", "hates": "Rules", "likes": "Breaking them"}, - "Susan": {"ico": "susan", "name": "Susan Bones", "sex": "Female", "height": "5.1ft", "weight": "135lb", "job": "Student", "hates": "Chores", "likes": "You {size=-4}Secretly..{/size}"} + "Genie": {"ico": "genie", "name": _("Genie"), "sex": _("Yes"), "height": _("6.2ft"), "weight": _("200lb"), "job": _("Headmaster"), "hates": _("Lamps"), "likes": _("Tits")}, + "Snape": {"ico": "snape", "name": _("Severus Snape"), "sex": _("Male"), "height": _("5.9ft"), "weight": _("155lb"), "job": _("Teacher"), "hates": _("Everyone"), "likes": _("Rain")}, + "Tonks": {"ico": "tonks", "name": _("Nymphadora Tonks"), "sex": _("Fluid"), "height": _("5.6ft"), "weight": _("130lb"), "job": _("Teacher"), "hates": _("Pineapple Pizza"), "likes": _("Girls")}, + "Hermione": {"ico": "hermione", "name": _("Hermione Granger"), "sex": _("Female"), "height": _("5.2ft"), "weight": _("126lb"), "job": _("Student"), "hates": _("Slytherin"), "likes": _("Books")}, + "Cho": {"ico": "cho", "name": _("Cho Chang"), "sex": _("Female"), "height": _("5.1ft"), "weight": _("122lb"), "job": _("Student"), "hates": _("Hermione"), "likes": _("Winning")}, + "Luna": {"ico": "luna", "name": _("Luna Lovegood"), "sex": _("Female"), "height": _("5.2ft"), "weight": _("117lb"), "job": _("Student"), "hates": _("Wrackspurts"), "likes": _("{size=-2}Magical creatures{/size}")}, + "Astoria": {"ico": "astoria", "name": _("Astoria Greengrass"), "sex": _("Female"), "height": _("5.0ft"), "weight": _("102lb"), "job": _("Student"), "hates": _("Rules"), "likes": _("Breaking them")}, + "Susan": {"ico": "susan", "name": _("Susan Bones"), "sex": _("Female"), "height": _("5.1ft"), "weight": _("135lb"), "job": _("Student"), "hates": _("Chores"), "likes": _("You {size=-4}Secretly..{/size}")} } label stats_menu(xx=150, yy=90): @@ -144,7 +144,7 @@ screen stats_menu(current_category, stats_flags): button action NullAction() style "empty" xsize 195 ysize 32 frame: style "empty" - textbutton "Show locked:" action ToggleVariable("stats_show_locked", True, False) + textbutton _("Show locked:") action ToggleVariable("stats_show_locked", True, False) add gui.theme("check_{}").format(str(stats_show_locked).lower()) xalign 0.8 ypos 4 vbox: pos (6, 6) @@ -197,16 +197,16 @@ screen stats_menuitem(current_category, current_item, stats_flags): add gui.format("interface/achievements/{}/panel.webp") add "interface/achievements/markup.webp" - text "Characters" size 22 xalign 0.5 ypos 65 + text _("Characters") size 22 xalign 0.5 ypos 65 hbox: style_prefix gui.theme("tab") pos (15, 52) yanchor 0.5 - textbutton "Overview": + textbutton _("Overview"): action SetLocalVariable("current_subcategory", "overview") - textbutton "Details": + textbutton _("Details"): action SetLocalVariable("current_subcategory", "details") # Character sprites @@ -272,9 +272,9 @@ screen stats_menuitem(current_category, current_item, stats_flags): pos (10, 36) vbox: - text "Sex:" size 15 - text "Height:" size 15 - text "Weight:" size 15 + text _("Sex:") size 15 + text _("Height:") size 15 + text _("Weight:") size 15 vbox: spacing 3 @@ -283,14 +283,14 @@ screen stats_menuitem(current_category, current_item, stats_flags): text current_item["height"] size 12 text current_item["weight"] size 12 else: - text "unknown" size 12 - text "unknown" size 12 - text "unknown" size 12 + text _("unknown") size 12 + text _("unknown") size 12 + text _("unknown") size 12 vbox: - text "Job:" size 15 - text "Hates:" size 15 - text "Likes:" size 15 + text _("Job:") size 15 + text _("Hates:") size 15 + text _("Likes:") size 15 vbox: spacing 3 @@ -299,9 +299,9 @@ screen stats_menuitem(current_category, current_item, stats_flags): text current_item["hates"] size 12 text current_item["likes"] size 12 else: - text "unknown" size 12 - text "unknown" size 12 - text "unknown" size 12 + text _("unknown") size 12 + text _("unknown") size 12 + text _("unknown") size 12 if stats_flags[current_category]: vbox: @@ -311,62 +311,62 @@ screen stats_menuitem(current_category, current_item, stats_flags): zoom 0.62 if current_category == "Genie": - use stat_bar(int(100/10), "-Lust-", "", 100) - use stat_bar(int(0/10), "-Sanity-", "", 0) + use stat_bar(int(100/10), _("-Lust-"), "", 100) + use stat_bar(int(0/10), _("-Sanity-"), "", 0) #use stat_bar(int(speed_writing/0.25), "-Speed Writing-", "", speed_writing) #text "Jerked off -"+str(states.bird_fed_times)+"- times" elif current_category == "Snape": - use stat_bar(int(3/1.0), "-Mood-" , "Grumpy", 3) + use stat_bar(int(3/1.0), _("-Mood-") , _("Grumpy"), 3) #use stat_bar(int(sna_support/1.5), "-Support-", sna_support_word, sna_support) # sna_support between 0 and 15. - use stat_bar(int(states.sna.level/10), "-Friendship-", sna_friendship_word, states.sna.level) + use stat_bar(int(states.sna.level/10), _("-Friendship-"), sna_friendship_word, states.sna.level) elif current_category == "Tonks": - use stat_bar(int(10/1.0), "-Mood-" , "Content", 10) - use stat_bar(int(states.ton.tier/0.2), "-Favour Tier-", "", states.ton.tier) # 4 will be max. - use stat_bar(int(states.ton.public_level/2.4), "-Reputation-", ton_reputation_word, states.ton.public_level) # Current max is 9. + use stat_bar(int(10/1.0), _("-Mood-") , _("Content"), 10) + use stat_bar(int(states.ton.tier/0.2), _("-Favour Tier-"), "", states.ton.tier) # 4 will be max. + use stat_bar(int(states.ton.public_level/2.4), _("-Reputation-"), ton_reputation_word, states.ton.public_level) # Current max is 9. #use stat_bar(int(ton_support/1.2), "-Support-", ton_support_word, ton_support) # ton_support between 0 and 12. - use stat_bar(int(states.ton.level/10), "-Relationship-", ton_friendship_word, states.ton.level) + use stat_bar(int(states.ton.level/10), _("-Relationship-"), ton_friendship_word, states.ton.level) elif current_category == "Hermione": - use stat_bar(int(10-states.her.mood/1.0), "-Mood-" , her_mood_word, states.her.mood) - use stat_bar(int(states.her.tier/0.6), "-Favour Tier-", "", states.her.tier) # 6 will be max. - use stat_bar(int(states.her.level/2.4), "-Whoring-", her_whoring_word, states.her.level) - use stat_bar(int(states.her.public_level/2.4), "-Reputation-", her_reputation_word, states.her.public_level) - use stat_bar(int(states.her.ev.tutoring.stage/1.5), "-Tutoring-" , her_tutoring_word, states.her.ev.tutoring.stage) + use stat_bar(int(10-states.her.mood/1.0), _("-Mood-") , her_mood_word, states.her.mood) + use stat_bar(int(states.her.tier/0.6), _("-Favour Tier-"), "", states.her.tier) # 6 will be max. + use stat_bar(int(states.her.level/2.4), _("-Whoring-"), her_whoring_word, states.her.level) + use stat_bar(int(states.her.public_level/2.4), _("-Reputation-"), her_reputation_word, states.her.public_level) + use stat_bar(int(states.her.ev.tutoring.stage/1.5), _("-Tutoring-"), her_tutoring_word, states.her.ev.tutoring.stage) elif current_category == "Cho": - use stat_bar(int(10-states.cho.mood/1.0), "-Mood-" , cho_mood_word, states.cho.mood) - use stat_bar(int(states.cho.tier/0.3), "-Favour Tier-", "", states.cho.tier) # 4 will be max. - use stat_bar(int(states.cho.level/0.9), "-Recklessness-", cho_whoring_word, states.cho.level) - use stat_bar(int(states.cho.public_level/0.9), "-Reputation-", cho_reputation_word, states.cho.public_level) + use stat_bar(int(10-states.cho.mood/1.0), _("-Mood-") , cho_mood_word, states.cho.mood) + use stat_bar(int(states.cho.tier/0.3), _("-Favour Tier-"), "", states.cho.tier) # 4 will be max. + use stat_bar(int(states.cho.level/0.9), _("-Recklessness-"), cho_whoring_word, states.cho.level) + use stat_bar(int(states.cho.public_level/0.9), _("-Reputation-"), cho_reputation_word, states.cho.public_level) # TODO: Re-enable after Quidditch fixes #use stat_bar(int((cc_ht.win_counter+cc_st.win_counter)/0.6), "{size=-10}-Quidditch Training-{/size}" , "Not started", cc_ht.win_counter+cc_st.win_counter) # TODO: Add word list # TODO: Add cc_gt.match_counter & cc_gt.win_counter elif current_category == "Luna": - use stat_bar(int(10-states.lun.mood/1.0), "-Mood-" , "Cheerful", states.lun.mood) # TODO: Add word list - use stat_bar(int(states.lun.tier/0.4), "-Favour Tier-", "", states.lun.tier) # 4 is max. - use stat_bar(int(states.lun.level/0.9), "-Corruption-", "Naive", states.lun.level) # TODO: Add word list - use stat_bar(int(10/0.9), "-Reputation-", "Total Weirdo", 10) # Joke stat + use stat_bar(int(10-states.lun.mood/1.0), _("-Mood-"), _("Cheerful"), states.lun.mood) # TODO: Add word list + use stat_bar(int(states.lun.tier/0.4), _("-Favour Tier-"), "", states.lun.tier) # 4 is max. + use stat_bar(int(states.lun.level/0.9), _("-Corruption-"), _("Naive"), states.lun.level) # TODO: Add word list + use stat_bar(int(10/0.9), _("-Reputation-"), _("Total Weirdo"), 10) # Joke stat #use stat_bar(int(0), "{size=-10}-Wrackspurts Therapy-{/size}" , "Not started", 0) # TODO: Add word list and variable elif current_category == "Astoria": - use stat_bar(int(10-states.ast.mood/1.0), "-Mood-" , ast_mood_word, states.ast.mood) - use stat_bar(int(1/1), "-Favour Tier-", "", 1) - use stat_bar(int(states.ast.level/0.8), "-Affection-", "", states.ast.level) # TODO: Add word list - use stat_bar(int(3/0.9), "-Reputation-", "Mischievous", 4) # TODO: Add word list and variable, starts at level 4 + use stat_bar(int(10-states.ast.mood/1.0), _("-Mood-") , ast_mood_word, states.ast.mood) + use stat_bar(int(1/1), _("-Favour Tier-"), "", 1) + use stat_bar(int(states.ast.level/0.8), _("-Affection-"), "", states.ast.level) # TODO: Add word list + use stat_bar(int(3/0.9), _("-Reputation-"), _("Mischievous"), 4) # TODO: Add word list and variable, starts at level 4 #use stat_bar(int(ast_training_counter/0.9), "-Spell training-" , "Not started", ast_training_counter) # TODO: Add word list elif current_category == "Susan": - use stat_bar(int(10-states.sus.mood/1.0), "-Mood-" , "Cheerful", states.sus.mood) # TODO: Add word list - use stat_bar(int(1/0.9), "-Favour Tier-", "", 1) # TODO: Add Susan tier - use stat_bar(int(states.sus.level/0.9), "-Confidence-", "Non-existent", states.sus.level) # TODO: Add word list - use stat_bar(int(0/0.9), "-Reputation-", "Invisible", 0) # TODO: Add word list and variable - use stat_bar(int(0), "{size=-10}-Assertiveness Training-{/size}" , "Not started", 0) # TODO: Add word list + use stat_bar(int(10-states.sus.mood/1.0), _("-Mood-") , _("Cheerful"), states.sus.mood) # TODO: Add word list + use stat_bar(int(1/0.9), _("-Favour Tier-"), "", 1) # TODO: Add Susan tier + use stat_bar(int(states.sus.level/0.9), _("-Confidence-"), _("Non-existent"), states.sus.level) # TODO: Add word list + use stat_bar(int(0/0.9), _("-Reputation-"), _("Invisible"), 0) # TODO: Add word list and variable + use stat_bar(int(0), _("{size=-10}-Assertiveness Training-{/size}") , _("Not started"), 0) # TODO: Add word list else: if stats_flags[current_category]: vbox: if current_category == "Genie": - use text_stat("Bird fed:") - use text_stat("- ", " times -", states.bird_fed_times) - use text_stat("Bird petted:") - use text_stat("- ", " times -", states.bird_petted_times) - use text_stat("You missed feeding your bird for:") - use text_stat("- ", " days...", (game.day - states.bird_fed_times) ) - use text_stat("If you were a Quidditch player, you'd be a:") + use text_stat(_("Bird fed:")) + use text_stat("- ", _(" times -"), states.bird_fed_times) + use text_stat(_("Bird petted:")) + use text_stat("- ", _(" times -"), states.bird_petted_times) + use text_stat(_("You missed feeding your bird for:")) + use text_stat("- ", _(" days..."), (game.day - states.bird_fed_times) ) + use text_stat(_("If you were a Quidditch player, you'd be a:")) use text_stat("- \"", "\" -", states.gen.stats.quidditch_position) # elif current_category == "Snape": @@ -404,8 +404,8 @@ screen stats_menuitem(current_category, current_item, stats_flags): # use text_stat("- ", " times -", hg_pf_sex.counter) elif current_category == "Cho": - use text_stat("You Jerked off in front of her:") - use text_stat("- ", " times -", states.gen.stats.masturbated_to_cho) + use text_stat(_("You Jerked off in front of her:")) + use text_stat("- ", _(" times -"), states.gen.stats.masturbated_to_cho) elif current_category == "Luna": pass elif current_category == "Astoria": diff --git a/game/scripts/interface/tutorials.rpy b/game/scripts/interface/tutorials.rpy index 9ef94c3d..35d30332 100644 --- a/game/scripts/interface/tutorials.rpy +++ b/game/scripts/interface/tutorials.rpy @@ -1,16 +1,16 @@ default tutorial_dict = { - "hearts": ["Favours", "Hearts indicate your current status towards a personal favour.\n\n{color=#FFFFFF80}{b}Empty Heart{/b}{/color}{size=-2} indicates the event hasn't been seen yet.{/size}\n{color=#bf5649}{b}Red Heart{/b}{/color}{size=-2} indicates completion of the event.{/size}\n{color=#333333}{b}Black Heart{/b}{/color}{size=-2} indicates failure of the event and you should try it again at a higher character level.{/size}\n{b}{color=#FFFFFF80}Half{/color} {color=#bf5649}Heart{/color}{/b}{size=-2} indicates there's a hidden path inside the event you should follow, in order to progress further.{/size}", False], - "moodngifts": ["Mood & Gifts", "Sometimes your choices may upset some characters, just like in life. You can try and avoid picking options that you think would upset them, but if you mess up, buy them some nice {color=#204997}{b}gift{/b}{/color} and they might forgive you. Keep in mind that every character has their own gift preferences.\n\nAlternatively, you can wait until they calm down but who knows how long that would take.", False], - "hangouts": ["Hangouts", "Getting to know your accomplices is an important aspect of progressing through the game. Hanging out with Snape for example improves your friendship and support which has various benefits such as story and character related unlockables.\n\nYou can check your current relationship status in the {color=#204997}{b}characters menu{/b}{/color}.", False], - "workngold": ["Working & Gold", "Gold is a universal currency in the magical world. To earn gold you must complete at least one full report for the ministry. You can start working by clicking on the {color=#204997}{b}work button{/b}{/color} or clicking on the desk and papers.\n\nYou might find other work opportunities as you progress through the game. Please note that characters may not be available at all times.", False], - "inventory": ["Inventory & Items", "The inventory screen allows you to examine items you possess. You can access it by clicking on the {color=#204997}{b}inventory button{/b}{/color} located on the top right part of the screen. The inventory is split into two main categories:\n{color=#204997}{b}Gifts{/b}{/color} - Items that can be given to other characters.\n{color=#204997}{b}Quest Items{/b}{/color} - Important items related to game progression. Some of them can be used by clicking on the {b}USE{/b} button next to the item name when it's selected.", False], - "schedule": ["Outfits Schedule", "Outfits can be assigned into a set schedule, which will allow the girls to pick what they are going to wear next time you summon them, based on time of day and weather conditions.\n\nYou can assign schedules inside the Wardrobe's Outfits Manager section, by clicking on the icon represented above. \n\nThis feature can be disabled at any time in the wardrobe options menu.", False], - "points": ["House Points", "House points are awarded to students for excelling in their assignments. You can manipulate the points system directly by awarding points to students for completing their tasks, or by befriending the teachers.\n\nSome characters may care about house points more than others so keep that in mind.", False], - "map": ["Navigation", "The map allows you to traverse the castle by clicking on one of the icons. Highlighted areas indicate a new event on that location. You can access the map from within the desk menu.", False], - "time": ["Passing Time", "There are many activities you may do at Hogwarts, but occasionally there might not be much to do.\nIf this is the case then you can pass time by clicking on the {color=#204997}{b}pass time button{/b}{/color} located in the top-right corner.\n\n{size=-2}Or you could always rub one out for old time's sake. The choice is yours.{/size}", False], - "mail": ["Mail", "Owls will occasionally bring you letters or parcels. Click on the owl or parcel to interact with it.\n\nUnlike mail pidgeons, owls are tidy creatures and won't shit all over your floors. Theoretically...", False], - "brewing": ["Potions Brewing", "Brewing potions wasn't always an easy task, but thanks to Magic Cauldron incorporated (TM), the entire process became automated. Once you have the required ingredients in your inventory, simply click on the {color=#204997}{b}cauldron{/b}{/color} to make the desired potion.", False], - "milestones": ["Relationship milestones", "Every milestone is a chance to level up your bond with your virtual companion, leaving your real love life in the dust. Instead of boring old XP, you'll earn a boatload of (s)ass. Now that's what I call an upgrade! No need to go through any awkward first date chat, just advance to the next level.\n\nChoosing this option will progress their story and unlock more favours and events.\n\nBut beware, once you commit, old favours become inaccessible and are replaced with new ones. You may wish to postpone it until you exhaust all content you wish to see on the current level. So choose wisely, my friend.", False], + "hearts": [_("Favours"), _("Hearts indicate your current status towards a personal favour.\n\n{color=#FFFFFF80}{b}Empty Heart{/b}{/color}{size=-2} indicates the event hasn't been seen yet.{/size}\n{color=#bf5649}{b}Red Heart{/b}{/color}{size=-2} indicates completion of the event.{/size}\n{color=#333333}{b}Black Heart{/b}{/color}{size=-2} indicates failure of the event and you should try it again at a higher character level.{/size}\n{b}{color=#FFFFFF80}Half{/color} {color=#bf5649}Heart{/color}{/b}{size=-2} indicates there's a hidden path inside the event you should follow, in order to progress further.{/size}"), False], + "moodngifts": [_("Mood & Gifts"), _("Sometimes your choices may upset some characters, just like in life. You can try and avoid picking options that you think would upset them, but if you mess up, buy them some nice {color=#204997}{b}gift{/b}{/color} and they might forgive you. Keep in mind that every character has their own gift preferences.\n\nAlternatively, you can wait until they calm down but who knows how long that would take."), False], + "hangouts": [_("Hangouts"), _("Getting to know your accomplices is an important aspect of progressing through the game. Hanging out with Snape for example improves your friendship and support which has various benefits such as story and character related unlockables.\n\nYou can check your current relationship status in the {color=#204997}{b}characters menu{/b}{/color}."), False], + "workngold": [_("Working & Gold"), _("Gold is a universal currency in the magical world. To earn gold you must complete at least one full report for the ministry. You can start working by clicking on the {color=#204997}{b}work button{/b}{/color} or clicking on the desk and papers.\n\nYou might find other work opportunities as you progress through the game. Please note that characters may not be available at all times."), False], + "inventory": [_("Inventory & Items"), _("The inventory screen allows you to examine items you possess. You can access it by clicking on the {color=#204997}{b}inventory button{/b}{/color} located on the top right part of the screen. The inventory is split into two main categories:\n{color=#204997}{b}Gifts{/b}{/color} - Items that can be given to other characters.\n{color=#204997}{b}Quest Items{/b}{/color} - Important items related to game progression. Some of them can be used by clicking on the {b}USE{/b} button next to the item name when it's selected."), False], + "schedule": [_("Outfits Schedule"), _("Outfits can be assigned into a set schedule, which will allow the girls to pick what they are going to wear next time you summon them, based on time of day and weather conditions.\n\nYou can assign schedules inside the Wardrobe's Outfits Manager section, by clicking on the icon represented above. \n\nThis feature can be disabled at any time in the wardrobe options menu."), False], + "points": [_("House Points"), _("House points are awarded to students for excelling in their assignments. You can manipulate the points system directly by awarding points to students for completing their tasks, or by befriending the teachers.\n\nSome characters may care about house points more than others so keep that in mind."), False], + "map": [_("Navigation"), _("The map allows you to traverse the castle by clicking on one of the icons. Highlighted areas indicate a new event on that location. You can access the map from within the desk menu."), False], + "time": [_("Passing Time"), _("There are many activities you may do at Hogwarts, but occasionally there might not be much to do.\nIf this is the case then you can pass time by clicking on the {color=#204997}{b}pass time button{/b}{/color} located in the top-right corner.\n\n{size=-2}Or you could always rub one out for old time's sake. The choice is yours.{/size}"), False], + "mail": [_("Mail"), _("Owls will occasionally bring you letters or parcels. Click on the owl or parcel to interact with it.\n\nUnlike mail pidgeons, owls are tidy creatures and won't shit all over your floors. Theoretically..."), False], + "brewing": [_("Potions Brewing"), _("Brewing potions wasn't always an easy task, but thanks to Magic Cauldron incorporated (TM), the entire process became automated. Once you have the required ingredients in your inventory, simply click on the {color=#204997}{b}cauldron{/b}{/color} to make the desired potion."), False], + "milestones": [_("Relationship milestones"), _("Every milestone is a chance to level up your bond with your virtual companion, leaving your real love life in the dust. Instead of boring old XP, you'll earn a boatload of (s)ass. Now that's what I call an upgrade! No need to go through any awkward first date chat, just advance to the next level.\n\nChoosing this option will progress their story and unlock more favours and events.\n\nBut beware, once you commit, old favours become inaccessible and are replaced with new ones. You may wish to postpone it until you exhaust all content you wish to see on the current level. So choose wisely, my friend."), False], } init python: diff --git a/game/scripts/inventory/books.rpy b/game/scripts/inventory/books.rpy index 53f7c467..dabe7370 100644 --- a/game/scripts/inventory/books.rpy +++ b/game/scripts/inventory/books.rpy @@ -1,10 +1,10 @@ -default galadriel1_ITEM = Item("galadriel1_book", "book", "Tome 1: The Tale of Galadriel", 100, "This book tells the story of an elven princess who defies the traditions of her people and chooses to forge her own destiny.\nEffect: Improves imagination.", label="galadriel1_book", limit=1, caption="Read") -default galadriel2_ITEM = Item("galadriel2_book", "book", "Tome 2: The Tale of Galadriel", 200, "This is a continuation on the story of the elven princess who defies the tradition, with a twist.\nEffect: Improves imagination.", label="galadriel2_book", limit=1, caption="Read") -default gameofchairs1_ITEM = Item("game_of_chairs1_book", "book", "Tome 1: Game of Chairs", 50, "An epic tale of betrayal, murder and rape. Then some more murder, some more betrayal and some more rape.", label="game_of_chairs1_book", limit=1, caption="Read") -default gameofchairs2_ITEM = Item("game_of_chairs2_book", "book", "Tome 2: Game of Chairs", 100, "An epic tale of betrayal, murder and rape. Then some more murder, some more betrayal and some more rape.", label="game_of_chairs2_book", limit=1, caption="Read") -default gameofchairs3_ITEM = Item("game_of_chairs3_book", "book", "Tome 3: Game of Chairs", 150, "An epic tale of betrayal, murder and rape. Then some more murder, some more betrayal and some more rape.", label="game_of_chairs3_book", limit=1, caption="Read") -default my_dear_waifu_ITEM = Item("my_dear_waifu_book", "book", "My Dear Waifu", 250, "Relive the glory of your high school days and find your ultimate \"waifu\".{size=-3}\n\nEnding 01 {unicode}✘{/unicode}\nEnding 02 {unicode}✘{/unicode}\nEnding 03 {unicode}✘{/unicode}\nEnding 04 {unicode}✘{/unicode}\nEnding 05 {unicode}✘{/unicode}{/size}", label="waifu_book", limit=1, caption="Read") +default galadriel1_ITEM = Item("galadriel1_book", "book", _("Tome 1: The Tale of Galadriel"), 100, _("This book tells the story of an elven princess who defies the traditions of her people and chooses to forge her own destiny.\nEffect: Improves imagination."), label="galadriel1_book", limit=1, caption=_("Read")) +default galadriel2_ITEM = Item("galadriel2_book", "book", _("Tome 2: The Tale of Galadriel"), 200, _("This is a continuation on the story of the elven princess who defies the tradition, with a twist.\nEffect: Improves imagination."), label="galadriel2_book", limit=1, caption=_("Read")) +default gameofchairs1_ITEM = Item("game_of_chairs1_book", "book", _("Tome 1: Game of Chairs"), 50, _("An epic tale of betrayal, murder and rape. Then some more murder, some more betrayal and some more rape."), label="game_of_chairs1_book", limit=1, caption=_("Read")) +default gameofchairs2_ITEM = Item("game_of_chairs2_book", "book", _("Tome 2: Game of Chairs"), 100, _("An epic tale of betrayal, murder and rape. Then some more murder, some more betrayal and some more rape."), label="game_of_chairs2_book", limit=1, caption=_("Read")) +default gameofchairs3_ITEM = Item("game_of_chairs3_book", "book", _("Tome 3: Game of Chairs"), 150, _("An epic tale of betrayal, murder and rape. Then some more murder, some more betrayal and some more rape."), label="game_of_chairs3_book", limit=1, caption=_("Read")) +default my_dear_waifu_ITEM = Item("my_dear_waifu_book", "book", _("My Dear Waifu"), 250, _("Relive the glory of your high school days and find your ultimate \"waifu\".{size=-3}\n\nEnding 01 {unicode}✘{/unicode}\nEnding 02 {unicode}✘{/unicode}\nEnding 03 {unicode}✘{/unicode}\nEnding 04 {unicode}✘{/unicode}\nEnding 05 {unicode}✘{/unicode}{/size}"), label="waifu_book", limit=1, caption=_("Read")) label book_start: call weather_sound diff --git a/game/scripts/inventory/books_waifu.rpy b/game/scripts/inventory/books_waifu.rpy index 64923f6c..d1c87217 100644 --- a/game/scripts/inventory/books_waifu.rpy +++ b/game/scripts/inventory/books_waifu.rpy @@ -9,176 +9,176 @@ default waifu_progression = { define waifu_chapters = { # Each number represents a day spent in school. - 1: "You are a male student who is sharing his home with his cute step-sister Shea.", - 2: "During classes Ms Stevens is droning away about something. You admire her chest to stay awake. She's way too hot to be a teacher.", - 3: "You meet your step-sister at school. Unlike you, Shea is quite popular among her classmates, but She all but denies your existence.", - 4: "You bump into a girl in the hallway, She is wearing thick glasses and acts very shy. afterwards She apologises and quickly runs off, is she even a student of this school?", - 5: "Ms Stevens is organizing extracurricular activities today. You decide to show up in hopes of extra credit.", - 6: "A bully takes your lunch money today. Later Shea shows up and brings the bully with her, He apologises and returns you your money. Shea can be scary...", - 7: "Another boring class. You ignore the teacher completely and daydream about getting a degree in art and becoming a professional hentai-manga artist.", - 8: "Another terribly generic school day, Ms Stevens' modest green suit does little to conceal her attractive figure. You couldn't care less about the topic of her class though." , - 9: "You ditch your classes and roam through the deserted school corridors, pretending to be the sole survivor of some deadly virus. The janitor spots you, He's infected! You run for your life." , - 10: "The same bully takes your money again. An hour later an ambulance parks before school, Some guy broke his hand. You recognise your bully... Did Shea do this to him?", - 11: "Another day in school. After the incident with the bully, people are looking at you funnily, but they seem to adore Shea more than ever. How is she doing it?", - 12: "You have no classes with Ms Stevens today. So why even bother? You fall asleep behind your desk.", - 13: "Your classmates all seem to be very excited about the upcoming prom, but You couldn't care less for the stupid thing.", - 14: "Another boring class. You gaze out of the window and notice a suspicious looking black van with tinted windows parked nearby the school library building. Why?", - 15: "You overhear one of your classmates talking about starting a secret \"Ms Stevens fan club\". Not very surprising, considering how attractive she is.", - 16: "Everyone's excitement about the upcoming prom grows with every day. You toy with an idea of asking someone to the prom, but decide to save yourself the awkwardness." , - 17: "Ms Stevens is wearing her skintight business suit again today. All the guys in your class look very eager to learn, while many of the girls are pouting.", - 18: "The graduation ceremony is tomorrow. Everyone is very excited, but You just want this day to end.", - 19: "Today is your graduation day. You see your classmates getting emotional during the ceremony, but you don't care much.", - 20: "The prom will take place tonight. You have nothing to do today, No chores, no homework... So this is how it feels to be free!?", + 1: _("You are a male student who is sharing his home with his cute step-sister Shea."), + 2: _("During classes Ms Stevens is droning away about something. You admire her chest to stay awake. She's way too hot to be a teacher."), + 3: _("You meet your step-sister at school. Unlike you, Shea is quite popular among her classmates, but She all but denies your existence."), + 4: _("You bump into a girl in the hallway, She is wearing thick glasses and acts very shy. afterwards She apologises and quickly runs off, is she even a student of this school?"), + 5: _("Ms Stevens is organizing extracurricular activities today. You decide to show up in hopes of extra credit."), + 6: _("A bully takes your lunch money today. Later Shea shows up and brings the bully with her, He apologises and returns you your money. Shea can be scary..."), + 7: _("Another boring class. You ignore the teacher completely and daydream about getting a degree in art and becoming a professional hentai-manga artist."), + 8: _("Another terribly generic school day, Ms Stevens' modest green suit does little to conceal her attractive figure. You couldn't care less about the topic of her class though."), + 9: _("You ditch your classes and roam through the deserted school corridors, pretending to be the sole survivor of some deadly virus. The janitor spots you, He's infected! You run for your life."), + 10: _("The same bully takes your money again. An hour later an ambulance parks before school, Some guy broke his hand. You recognise your bully... Did Shea do this to him?"), + 11: _("Another day in school. After the incident with the bully, people are looking at you funnily, but they seem to adore Shea more than ever. How is she doing it?"), + 12: _("You have no classes with Ms Stevens today. So why even bother? You fall asleep behind your desk."), + 13: _("Your classmates all seem to be very excited about the upcoming prom, but You couldn't care less for the stupid thing."), + 14: _("Another boring class. You gaze out of the window and notice a suspicious looking black van with tinted windows parked nearby the school library building. Why?"), + 15: _("You overhear one of your classmates talking about starting a secret \"Ms Stevens fan club\". Not very surprising, considering how attractive she is."), + 16: _("Everyone's excitement about the upcoming prom grows with every day. You toy with an idea of asking someone to the prom, but decide to save yourself the awkwardness."), + 17: _("Ms Stevens is wearing her skintight business suit again today. All the guys in your class look very eager to learn, while many of the girls are pouting."), + 18: _("The graduation ceremony is tomorrow. Everyone is very excited, but You just want this day to end."), + 19: _("Today is your graduation day. You see your classmates getting emotional during the ceremony, but you don't care much."), + 20: _("The prom will take place tonight. You have nothing to do today, No chores, no homework... So this is how it feels to be free!?"), # The number of dates is equal to the number of maximum character points. "shea_dates": [ - "You return home and walk in on Shea taking a bath. You stare at her tits until she knocks you out cold with one of her trademark punches.", - "At home, Shea cooks supper for you. You catch a glimpse of her panties and she knocks you out cold again with one of her trademark punches.", - "You return home and The house is empty, so You decide to watch an adult movie in the living room. Shea walks in on you... and knocks you out with one of her trademark punches.", - "It's a stormy night with rain and thunder. Frightened, Shea crawls into your bed. Your manhood gets hard and Shea knocks you out with one of her trademark punches.", - "As a peace offering you decide to clean Shea's room. She doesn't appreciate such an invasion of privacy and dishes out another one of her trademark punches, which knocks you out cold.", - "The house is empty. You decide to watch an adult movie in the living room, but Shea walks in on you again. You expect another punch but she just runs off.", - "You come to Shea's room to apologise for the last time. She is wearing her pyjamas. You get a little hard during your apology. She accepts your apology blushing." , - "It's raining again, so Shea sneaks into your bed at night. She kisses you and asks you to take her anal virginity. You have anal sex with your little step sister.", - "Shea sneaks into your room after supper. While your parents finish eating downstairs, you drill your sister's little asshole with your cock while she moans enthusiastically.", + _("You return home and walk in on Shea taking a bath. You stare at her tits until she knocks you out cold with one of her trademark punches."), + _("At home, Shea cooks supper for you. You catch a glimpse of her panties and she knocks you out cold again with one of her trademark punches."), + _("You return home and The house is empty, so You decide to watch an adult movie in the living room. Shea walks in on you... and knocks you out with one of her trademark punches."), + _("It's a stormy night with rain and thunder. Frightened, Shea crawls into your bed. Your manhood gets hard and Shea knocks you out with one of her trademark punches."), + _("As a peace offering you decide to clean Shea's room. She doesn't appreciate such an invasion of privacy and dishes out another one of her trademark punches, which knocks you out cold."), + _("The house is empty. You decide to watch an adult movie in the living room, but Shea walks in on you again. You expect another punch but she just runs off."), + _("You come to Shea's room to apologise for the last time. She is wearing her pyjamas. You get a little hard during your apology. She accepts your apology blushing."), + _("It's raining again, so Shea sneaks into your bed at night. She kisses you and asks you to take her anal virginity. You have anal sex with your little step sister."), + _("Shea sneaks into your room after supper. While your parents finish eating downstairs, you drill your sister's little asshole with your cock while she moans enthusiastically."), ], # Only the ending [A] is the 'true ending' for each character, other variants belong to the generic ending. "shea_ending": { "a": [ - "You decide to stay home and, To your surprise, Shea does the same. Then, out of nowhere she asks you out for the prom.", - "The prom night goes by in a generic way. You dance with your step-sister and Everybody thinks it's because she took pity on you.", - "When the prom is over you and Shea return home. That night you take your little step-sister's virginity. And then she asks you to stick it up her butt as well.", - "It's been a year. Both you and Shea are students at the same university, You choose completely different majors, but you are still together and very happy.", - "{size=+5}-Ending 02 of 05-{/size}" + _("You decide to stay home and, To your surprise, Shea does the same. Then, out of nowhere she asks you out for the prom."), + _("The prom night goes by in a generic way. You dance with your step-sister and Everybody thinks it's because she took pity on you."), + _("When the prom is over you and Shea return home. That night you take your little step-sister's virginity. And then she asks you to stick it up her butt as well."), + _("It's been a year. Both you and Shea are students at the same university, You choose completely different majors, but you are still together and very happy."), + _("{size=+5}-Ending 02 of 05-{/size}") ], "b": [ - "You decide to stay home and to your surprise, Shea does the same. You toy with the idea of asking her out to the prom but then decide against it.", - "Shea goes to the prom with some other guy, while you stay home.", - "It's been a year. You attend a university abroad and actually enjoy learning for a change, so you seldom think about the past and have high hopes for your future.", - "{size=+5}-Ending 01 of 05-{/size}" + _("You decide to stay home and to your surprise, Shea does the same. You toy with the idea of asking her out to the prom but then decide against it."), + _("Shea goes to the prom with some other guy, while you stay home."), + _("It's been a year. You attend a university abroad and actually enjoy learning for a change, so you seldom think about the past and have high hopes for your future."), + _("{size=+5}-Ending 01 of 05-{/size}") ], "c": [ - "You decide to stay home and bail on the prom.", - "It's been a year. You attend a university abroad and actually enjoy learning for a change, so you seldom think about the past and have high hopes for your future.", - "{size=+5}-Ending 01 of 05-{/size}" + _("You decide to stay home and bail on the prom."), + _("It's been a year. You attend a university abroad and actually enjoy learning for a change, so you seldom think about the past and have high hopes for your future."), + _("{size=+5}-Ending 01 of 05-{/size}") ], }, "stevens_dates": [ - "You decide to roam around the school for a while. Ms Stevens is sitting behind a desk in one of the classrooms, working and you end up secretly watching her.", - "You find Ms Stevens working in one of the empty classrooms again. This time She notices you and You have to lie your way out of it. She gives you a big home assignment.", - "Ms Stevens finds you roaming around in some deserted school corridors. You haven't completed the assignment she gave you yet. She treats you with contempt for some reason.", - "You bump into your teacher Ms Stevens again. Is she stalking your or something? It's the assignment thing again. You start to really dislike the woman.", - "You try to avoid Ms Stevens but fail. Your assignment is not completed yet and You grow tired of her droning on about \"how terrible pupils like you fail at life\".", - "Ms Stevens lectures you again. While doing so she Accidentally spills her tea on your lap. Afterwards She uses a tissue to rub it off, even though You get aroused by that she pretends not to notice.", - "Ms Stevens lectures you once again. Suddenly she kisses your lips, apologises and asks you to keep this a secret. You return home very confused.", - "You decide to roam the school after your classes again in hopes of running into Ms Stevens, but you can't find her anywhere...", - "Ms Stevens invites you to her office. She grabs your crotch and fondles your hard cock for a while, but then just sends you on your way. You return home in a daze.", + _("You decide to roam around the school for a while. Ms Stevens is sitting behind a desk in one of the classrooms, working and you end up secretly watching her."), + _("You find Ms Stevens working in one of the empty classrooms again. This time She notices you and You have to lie your way out of it. She gives you a big home assignment."), + _("Ms Stevens finds you roaming around in some deserted school corridors. You haven't completed the assignment she gave you yet. She treats you with contempt for some reason."), + _("You bump into your teacher Ms Stevens again. Is she stalking your or something? It's the assignment thing again. You start to really dislike the woman."), + _("You try to avoid Ms Stevens but fail. Your assignment is not completed yet and You grow tired of her droning on about \"how terrible pupils like you fail at life\"."), + _("Ms Stevens lectures you again. While doing so she Accidentally spills her tea on your lap. Afterwards She uses a tissue to rub it off, even though You get aroused by that she pretends not to notice."), + _("Ms Stevens lectures you once again. Suddenly she kisses your lips, apologises and asks you to keep this a secret. You return home very confused."), + _("You decide to roam the school after your classes again in hopes of running into Ms Stevens, but you can't find her anywhere..."), + _("Ms Stevens invites you to her office. She grabs your crotch and fondles your hard cock for a while, but then just sends you on your way. You return home in a daze."), ], "stevens_ending": { "a": [ - "The School gym is full of all sorts of decorations for tonight's prom. Ms Stevens is the head of the decorating committee, she seems very busy.", - "You tell Ms Stevens about your plan to skip the prom. She gets mad, then grabs your crotch and whispers that she will let you cum on her face if you change your mind.", - "Later that night you show up for the prom. You dance with Ms Stevens, she then takes you to the janitor's closet and let's you jerk off on her face. You plaster it with cum.", - "It's been a year... You tried to stay in touch with Ms Stevens, but it seems like the moment you stopped being one of her pupils she lost all of her interest in you.", - "But your experience with her motivated you to follow your dream of becoming an adult comics artist. Now you attend a prestigious art-school and are actually quite happy.", - "{size=+5}-Ending 03 of 05-{/size}" + _("The School gym is full of all sorts of decorations for tonight's prom. Ms Stevens is the head of the decorating committee, she seems very busy."), + _("You tell Ms Stevens about your plan to skip the prom. She gets mad, then grabs your crotch and whispers that she will let you cum on her face if you change your mind."), + _("Later that night you show up for the prom. You dance with Ms Stevens, she then takes you to the janitor's closet and let's you jerk off on her face. You plaster it with cum."), + _("It's been a year... You tried to stay in touch with Ms Stevens, but it seems like the moment you stopped being one of her pupils she lost all of her interest in you."), + _("But your experience with her motivated you to follow your dream of becoming an adult comics artist. Now you attend a prestigious art-school and are actually quite happy."), + _("{size=+5}-Ending 03 of 05-{/size}") ], "b": [ - "The School gym is full of all sorts of decorations for tonight's prom. Ms Stevens is the head of the decorating committee, she seems very busy.", - "She notices you. You tell her about your plan to bail on the prom, but it Doesn't look like she cares.", - "You return home and go to bed early.", - "It's been a year. You attend a university abroad and actually enjoy learning for a change, so you seldom think about the past and have high hopes for your future.", - "{size=+5}-Ending 01 of 05-{/size}" + _("The School gym is full of all sorts of decorations for tonight's prom. Ms Stevens is the head of the decorating committee, she seems very busy."), + _("She notices you. You tell her about your plan to bail on the prom, but it Doesn't look like she cares."), + _("You return home and go to bed early."), + _("It's been a year. You attend a university abroad and actually enjoy learning for a change, so you seldom think about the past and have high hopes for your future."), + _("{size=+5}-Ending 01 of 05-{/size}") ], "c": [ - "School gym is full of all sorts of declarations for tonight's prom. What of time the whole thing is...", - "You return home and go to sleep early.", - "It's been a year. You attend a university abroad and actually enjoy learning for a change, so you seldom think about the past and have high hopes for your future.", - "{size=+5}-Ending 01 of 05-{/size}" + _("School gym is full of all sorts of declarations for tonight's prom. What of time the whole thing is..."), + _("You return home and go to sleep early."), + _("It's been a year. You attend a university abroad and actually enjoy learning for a change, so you seldom think about the past and have high hopes for your future."), + _("{size=+5}-Ending 01 of 05-{/size}") ], }, "leena_dates": [ - "You go to the school library. Apart from an unfamiliar dark haired girl in the corner you are the only visitor. You spend some time with reading a sci-fi novel.", - "You're at the library. There is that girl with the glasses again. You read your sci-fi book and catch the girl staring at you A couple of times. What's her problem?", - "Seems like the girl is always here. You look at her properly for the first time: long dark hair, glasses, with a well-formed body. She is sort of cute, but this time she catches you staring.", - "The girl is here, just as always. She looks very shy, so You decide to talk to her, but she just ignores you at first and then simply leaves. She's a weird one.", - "The silent, dark haired girl is absent today, so You just take your usual seat. But There is a note from her in which She apologises, then says that she actually likes you and apologises again.", - "It's just you again. The girl is not here, there's No note either. You can't remember ever seeing her in school apart from that one time. Who the hell is that silent beauty?", - "You try to read your sci-fi novel, but you just can't concentrate. Suddenly The girl takes a seat next to you. You wait for an explanation but she just pretends to read her book.", - "You pretend to read while you wait for the girl. She takes the seat beside you again and starts rubbing your crotch under the desk. What's the matter with her?!", - "As soon as you show up the girl drags you behind a bookshelf and begs you to fuck her. You comply, cum inside of her and she returns to her desk, while you just keep on standing there, confused and speechless.", + _("You go to the school library. Apart from an unfamiliar dark haired girl in the corner you are the only visitor. You spend some time with reading a sci-fi novel."), + _("You're at the library. There is that girl with the glasses again. You read your sci-fi book and catch the girl staring at you A couple of times. What's her problem?"), + _("Seems like the girl is always here. You look at her properly for the first time: long dark hair, glasses, with a well-formed body. She is sort of cute, but this time she catches you staring."), + _("The girl is here, just as always. She looks very shy, so You decide to talk to her, but she just ignores you at first and then simply leaves. She's a weird one."), + _("The silent, dark haired girl is absent today, so You just take your usual seat. But There is a note from her in which She apologises, then says that she actually likes you and apologises again."), + _("It's just you again. The girl is not here, there's No note either. You can't remember ever seeing her in school apart from that one time. Who the hell is that silent beauty?"), + _("You try to read your sci-fi novel, but you just can't concentrate. Suddenly The girl takes a seat next to you. You wait for an explanation but she just pretends to read her book."), + _("You pretend to read while you wait for the girl. She takes the seat beside you again and starts rubbing your crotch under the desk. What's the matter with her?!"), + _("As soon as you show up the girl drags you behind a bookshelf and begs you to fuck her. You comply, cum inside of her and she returns to her desk, while you just keep on standing there, confused and speechless."), ], "leena_ending": { "a": [ - "You ignore the prom and head towards the library. It's deserted, so You take your usual seat. You're surprised to see the dark haired girl crouching under your desk.", - "Two men in black suits appear just as she puts your dick into her mouth. They take her away and you just stand there stupefied and confused with your trousers down. What the heck?", - "The girl shows up at your doorstep Early on the next morning. She says that she's in the witness protection program, and that her cover has now been compromised because of you...", - "It's been two years now. You and the \"library girl\" got married. You live in a beach-house at a secret location with new names.", - "You are very much in love with her and left your past behind for her. she's so grateful that, more often than not, you find your cock deep down her throat.", - "{size=+5}-Ending 04 of 05-{/size}" + _("You ignore the prom and head towards the library. It's deserted, so You take your usual seat. You're surprised to see the dark haired girl crouching under your desk."), + _("Two men in black suits appear just as she puts your dick into her mouth. They take her away and you just stand there stupefied and confused with your trousers down. What the heck?"), + _("The girl shows up at your doorstep Early on the next morning. She says that she's in the witness protection program, and that her cover has now been compromised because of you..."), + _("It's been two years now. You and the \"library girl\" got married. You live in a beach-house at a secret location with new names."), + _("You are very much in love with her and left your past behind for her. she's so grateful that, more often than not, you find your cock deep down her throat."), + _("{size=+5}-Ending 04 of 05-{/size}") ], "b": [ - "You ignore the prom and head towards the library. It's deserted, so You take your usual seat. A girl appears out of nowhere and sits beside you.", - "She starts talking to you and says her name is Leena, but Suddenly two men in black suits appear. You see fear on her face as They take her away. You wish you could do something...", - "It's been a year. You attend a university abroad and actually enjoy learning for a change, so you seldom think about the past and have high hopes for your future.", - "{size=+5}-Ending 01 of 05-{/size}" + _("You ignore the prom and head towards the library. It's deserted, so You take your usual seat. A girl appears out of nowhere and sits beside you."), + _("She starts talking to you and says her name is Leena, but Suddenly two men in black suits appear. You see fear on her face as They take her away. You wish you could do something..."), + _("It's been a year. You attend a university abroad and actually enjoy learning for a change, so you seldom think about the past and have high hopes for your future."), + _("{size=+5}-Ending 01 of 05-{/size}") ], "c": [ - "You ignore the prom and head towards the library. It's deserted, so you take your usual seat. After a while you return home and go to bed." - "It's been a year. You attend a university abroad and actually enjoy learning for a change, so you seldom think about the past and have high hopes for your future.", - "{size=+5}-Ending 01 of 05-{/size}" + _("You ignore the prom and head towards the library. It's deserted, so you take your usual seat. After a while you return home and go to bed."), + _("It's been a year. You attend a university abroad and actually enjoy learning for a change, so you seldom think about the past and have high hopes for your future."), + _("{size=+5}-Ending 01 of 05-{/size}") ], }, # This ending is unlocked only after you reach every other character ending. (Generic ending isn't necessary) "harem_ending": [ - "You decide to go to the prom and you're surprised to see the \"library girl\" there. She invites you to a dance and kisses you. You notice Shea staring at you incredulously.", - "The \"library girl\" leads you outside. She kisses you, takes your dick out and starts jerking it. Shea appears from behind the corner of the building.", - "Shea gets mad and starts yelling at the girl who continues to jerk you off. Alarmed by all the yelling Ms Stevens shows up and You still have your trousers down.", - "You pull your trousers up, completely embarrassed. Ms Stevens stays calm and simply leaves to bring her car around. Afterwards She orders all of you in the car and takes you to a motel.", - "In the motel room she grabs your crotch, takes your cock out and starts jerking it off. Shea is in shock but the \"library girl\" is already kissing you.", - "Reluctantly Shea joins the girls. You fuck your step sister first, up her butt of course. The \"library girl\" is next in line, Then Ms Stevens.", - "When you wake up everyone but Shea is gone. Your step-sister is asleep, You spread her buttcheeks and slide your morning wood up her tight asshole.", - "It's been a year. Ms Stevens is still working at your school and in regards to the dark haired girl... you have no idea what has become of her.", - "Both you and Shea are students at the same university...", - "You've been together since that night in the motel, but you still keep it a secret from everyone. Your only worry these days is Shea's insane appetite for the anal sex.", - "{size=+5}-Ending 05 of 05-{/size}" + _("You decide to go to the prom and you're surprised to see the \"library girl\" there. She invites you to a dance and kisses you. You notice Shea staring at you incredulously."), + _("The \"library girl\" leads you outside. She kisses you, takes your dick out and starts jerking it. Shea appears from behind the corner of the building."), + _("Shea gets mad and starts yelling at the girl who continues to jerk you off. Alarmed by all the yelling Ms Stevens shows up and You still have your trousers down."), + _("You pull your trousers up, completely embarrassed. Ms Stevens stays calm and simply leaves to bring her car around. Afterwards She orders all of you in the car and takes you to a motel."), + _("In the motel room she grabs your crotch, takes your cock out and starts jerking it off. Shea is in shock but the \"library girl\" is already kissing you."), + _("Reluctantly Shea joins the girls. You fuck your step sister first, up her butt of course. The \"library girl\" is next in line, Then Ms Stevens."), + _("When you wake up everyone but Shea is gone. Your step-sister is asleep, You spread her buttcheeks and slide your morning wood up her tight asshole."), + _("It's been a year. Ms Stevens is still working at your school and in regards to the dark haired girl... you have no idea what has become of her."), + _("Both you and Shea are students at the same university..."), + _("You've been together since that night in the motel, but you still keep it a secret from everyone. Your only worry these days is Shea's insane appetite for the anal sex."), + _("{size=+5}-Ending 05 of 05-{/size}") ], # Random fluff that can happen. It's not important to the plot. "random_school": [ - "You go to the school stadium and relax on the bleachers, while you watch cheerleaders practise in the distance...", - "You sneak to your secret place: the school building's rooftop and watch heavy clouds creep closer slowly high above, hoping that it's gonna rain tonight.", - "You roam through the deserted school hallways and run into the janitor. He gives you the stink eye and goes on about his business. You head home." , - "You buy a chocolate bar from a vending machine, then sneak into one of the empty classrooms and spend a couple of hours with reading one of your favourite sci-fi novels.", - "You roam through the deserted school hallways for a while. It's starting to rain. Your step-sister Shea is terrified of thunder so You hope for a stormy night.", + _("You go to the school stadium and relax on the bleachers, while you watch cheerleaders practise in the distance..."), + _("You sneak to your secret place: the school building's rooftop and watch heavy clouds creep closer slowly high above, hoping that it's gonna rain tonight."), + _("You roam through the deserted school hallways and run into the janitor. He gives you the stink eye and goes on about his business. You head home."), + _("You buy a chocolate bar from a vending machine, then sneak into one of the empty classrooms and spend a couple of hours with reading one of your favourite sci-fi novels."), + _("You roam through the deserted school hallways for a while. It's starting to rain. Your step-sister Shea is terrified of thunder so You hope for a stormy night."), ], "random_home": [ - "You return home. The house is empty. You decide to play some video games till the evening.", - "You return home. The house is empty. You decide to watch an adult movie in the living room.", - "You return home. Your father is home early. You decide to go for a jog to avoid his awkward questions about your personal life.", - "You return home. Your step-mother is home early. You listen to her going on and on about something trivial and wonder why your father decided to marry her.", - "You return home. The house is empty. You decide to use this precious moment of solitude to take a nap.", + _("You return home. The house is empty. You decide to play some video games till the evening."), + _("You return home. The house is empty. You decide to watch an adult movie in the living room."), + _("You return home. Your father is home early. You decide to go for a jog to avoid his awkward questions about your personal life."), + _("You return home. Your step-mother is home early. You listen to her going on and on about something trivial and wonder why your father decided to marry her."), + _("You return home. The house is empty. You decide to use this precious moment of solitude to take a nap."), ], "random_library": [ - "You head towards the school library and notice a man in a black suit near the entrance, half expecting him to prevent you from entering, but he ignores you.", - "You spend the rest of the day at the school library, read your sci-fi book, take a nap, buy candy from the vending machine and then read some more. Life is great!", - "You browse through ancient-looking bookshelves, hoping to stumble on a long forgotten book of spells or something, but You just get bored soon and decide to head home.", - "The library is deserted, so You hide behind a bookshelf and jerk off while imagining Ms Stevens giving a lecture in her underwear.", - "You hear voices and hide behind a bookshelf. From there you see one of the cheerleader girls making out with two of the jocks at once, so You decide to leave before you get in trouble.", + _("You head towards the school library and notice a man in a black suit near the entrance, half expecting him to prevent you from entering, but he ignores you."), + _("You spend the rest of the day at the school library, read your sci-fi book, take a nap, buy candy from the vending machine and then read some more. Life is great!"), + _("You browse through ancient-looking bookshelves, hoping to stumble on a long forgotten book of spells or something, but You just get bored soon and decide to head home."), + _("The library is deserted, so You hide behind a bookshelf and jerk off while imagining Ms Stevens giving a lecture in her underwear."), + _("You hear voices and hide behind a bookshelf. From there you see one of the cheerleader girls making out with two of the jocks at once, so You decide to leave before you get in trouble."), ], } @@ -219,7 +219,7 @@ label waifu_book: $ chapter = waifu_chapters[day] - $ renpy.say("\"Day [day]\"", chapter, what_prefix="{size=-2}", what_suffix="{/size}") + $ renpy.say(_("\"Day [day]\""), chapter, what_prefix="{size=-2}", what_suffix="{/size}") menu: "\"Day [day]\"" "{size=-2}What would you like to do after school today?{/size}" @@ -245,7 +245,7 @@ label waifu_book: else: $ chapter = renpy.random.choice(waifu_chapters["random_library"]) - $ renpy.say("\"Day [day]\"", chapter, what_prefix="{size=-2}", what_suffix="{/size}") + $ renpy.say(_("\"Day [day]\""), chapter, what_prefix="{size=-2}", what_suffix="{/size}") "{size=+5}-End of day [day]-{/size}" @@ -259,7 +259,7 @@ label waifu_book: $ chapter = waifu_chapters[day] - $ renpy.say("\"Day [day]\"", chapter, what_prefix="{size=-2}", what_suffix="{/size}") + $ renpy.say(_("\"Day [day]\""), chapter, what_prefix="{size=-2}", what_suffix="{/size}") menu: "\"Day [day]\"" "What would you like to do for the rest of the day?" @@ -295,7 +295,7 @@ label waifu_book: label .end: while epilogue: - $ renpy.say("\"Epilogue\"", epilogue.pop(0), what_prefix="{size=-2}", what_suffix="{/size}") + $ renpy.say(_("\"Epilogue\""), epilogue.pop(0), what_prefix="{size=-2}", what_suffix="{/size}") call book_end @@ -335,8 +335,8 @@ label waifu_book: python: # Note: making 'waifu_progression' an instance of OrderedDict would be ideal, but it's saved by Ren'py and may cause issues. endings = ["generic_ending", "shea_ending", "stevens_ending", "leena_ending", "harem_ending"] - seen_endings = ["Ending 0"+str(i+1)+" {unicode}✔{/unicode}" if waifu_progression[j] is True else "Ending 0"+str(i+1)+" {unicode}✘{/unicode}" for i, j in enumerate(endings)] - my_dear_waifu_ITEM.desc = "Relive the glory of your high school days and find your ultimate \"waifu\".{size=-3}\n\n" + "\n".join(seen_endings) + "{/size}" + seen_endings = [_("Ending 0")+str(i+1)+" {unicode}✔{/unicode}" if waifu_progression[j] is True else _("Ending 0")+str(i+1)+" {unicode}✘{/unicode}" for i, j in enumerate(endings)] + my_dear_waifu_ITEM.desc = _("Relive the glory of your high school days and find your ultimate \"waifu\".{size=-3}\n\n") + "\n".join(seen_endings) + "{/size}" if game.daytime: jump night_start diff --git a/game/scripts/minigames/cardgame/_snape_card_game_.rpy b/game/scripts/minigames/cardgame/_snape_card_game_.rpy index 2f186d61..434e7901 100644 --- a/game/scripts/minigames/cardgame/_snape_card_game_.rpy +++ b/game/scripts/minigames/cardgame/_snape_card_game_.rpy @@ -292,7 +292,7 @@ label snape_third_duel: sna "(You were a good card, my boy... But it's time to grow up.)" ("snape_05") $ states.sna.ev.cardgame.stage = 3 $ unlocked_cards += [card_snape] - call give_reward("You have received a special card!", "images/cardgame/t1/special/snape_v1.webp") + call give_reward(_("You have received a special card!"), "images/cardgame/t1/special/snape_v1.webp") $ tokens += 3 else: $ tokens += 1 @@ -341,7 +341,7 @@ label snape_random_duel: sna "Ah, yes... something from my collection." ("snape_05") $ item.owned += 1 - call give_reward("You've received [item.name] from Snape!", item) + call give_reward(_("You've received [item.name] from Snape!"), item) gen "What the fuck is this?" ("angry", xpos="far_left", ypos="head") sna "As I said..." ("snape_01") @@ -403,7 +403,7 @@ label snape_random_duel: sna "Well played though." ("snape_04") $ item.owned += 1 - call give_reward("You've received [item.name] from Snape!", item) + call give_reward(_("You've received [item.name] from Snape!"), item) if not states.map.snape_office.intro_e3: gen "(I still don't have any use for it, but I won't turn down free shit.)" ("base", xpos="far_left", ypos="head") diff --git a/game/scripts/minigames/mirror/events/a_christmas_tale.rpy b/game/scripts/minigames/mirror/events/a_christmas_tale.rpy index f7bcf67c..9a345c22 100644 --- a/game/scripts/minigames/mirror/events/a_christmas_tale.rpy +++ b/game/scripts/minigames/mirror/events/a_christmas_tale.rpy @@ -1,6 +1,6 @@ label a_christmas_tale_rewards: if not card_exist(unlocked_cards, card_santa): - call give_reward("You have received a special card as a gift!", "images/cardgame/t1/special/santa_v1.webp") + call give_reward(_("You have received a special card as a gift!"), "images/cardgame/t1/special/santa_v1.webp") $ unlocked_cards += [card_santa] if not xmas_phoenix_ITEM.owned: @@ -11,7 +11,7 @@ label a_christmas_tale_rewards: $ xmas_wreaths_ITEM.owned = 1 $ xmas_giftchair_ITEM.owned = 1 - call give_reward("Christmas decorations have been unlocked!", gift="interface/icons/xmas_wreaths.webp") + call give_reward(_("Christmas decorations have been unlocked!"), gift="interface/icons/xmas_wreaths.webp") return diff --git a/game/scripts/minigames/mirror/events/a_christmas_tale2.rpy b/game/scripts/minigames/mirror/events/a_christmas_tale2.rpy index c610b9b8..d9719048 100644 --- a/game/scripts/minigames/mirror/events/a_christmas_tale2.rpy +++ b/game/scripts/minigames/mirror/events/a_christmas_tale2.rpy @@ -2,13 +2,13 @@ label a_christmas_tale2_rewards: # Unlock outfit message. Should only appear once. if not her_outfit_ribbon.unlocked: - call unlock_clothing(text="New clothing items for Hermione have been unlocked!", item=her_outfit_ribbon) - call unlock_clothing(text="Several new clothing items for Hermione have been unlocked!", item=her_outfit_xmas) - call unlock_clothing(text="New clothing items for Tonks have been unlocked!", item=ton_outfit_ribbon) - call unlock_clothing(text="New clothing items for Tonks have been unlocked!", item=ton_outfit_elf) - call unlock_clothing(text="New clothing items for Tonks have been unlocked!", item=ton_outfit_xmas) + call unlock_clothing(text=_("New clothing items for Hermione have been unlocked!"), item=her_outfit_ribbon) + call unlock_clothing(text=_("Several new clothing items for Hermione have been unlocked!"), item=her_outfit_xmas) + call unlock_clothing(text=_("New clothing items for Tonks have been unlocked!"), item=ton_outfit_ribbon) + call unlock_clothing(text=_("New clothing items for Tonks have been unlocked!"), item=ton_outfit_elf) + call unlock_clothing(text=_("New clothing items for Tonks have been unlocked!"), item=ton_outfit_xmas) - call give_reward("Some lesser clothing items have been unlocked as well. *Ho-ho-ho!*") + call give_reward(_("Some lesser clothing items have been unlocked as well. *Ho-ho-ho!*")) if not xmas_phoenix_ITEM.owned: $ xmas_phoenix_ITEM.owned = 1 @@ -18,7 +18,7 @@ label a_christmas_tale2_rewards: $ xmas_wreaths_ITEM.owned = 1 $ xmas_giftchair_ITEM.owned = 1 - call give_reward("Christmas decorations have been unlocked!", gift="interface/icons/xmas_wreaths.webp") + call give_reward(_("Christmas decorations have been unlocked!"), gift="interface/icons/xmas_wreaths.webp") return diff --git a/game/scripts/minigames/mirror/events/a_white_christmas.rpy b/game/scripts/minigames/mirror/events/a_white_christmas.rpy index 23f42ef7..d585d1bd 100644 --- a/game/scripts/minigames/mirror/events/a_white_christmas.rpy +++ b/game/scripts/minigames/mirror/events/a_white_christmas.rpy @@ -1,8 +1,8 @@ label a_white_christmas_rewards: if not ton_outfit_wrestling_coach.unlocked: - call unlock_clothing(text="New clothing items for Tonks have been unlocked!", item=ton_outfit_wrestling_coach) - call unlock_clothing(text="New clothing items for Hermione have been unlocked!", item=her_outfit_wrestling) + call unlock_clothing(text=_("New clothing items for Tonks have been unlocked!"), item=ton_outfit_wrestling_coach) + call unlock_clothing(text=_("New clothing items for Hermione have been unlocked!"), item=her_outfit_wrestling) if not xmas_lights_ITEM.owned: $ xmas_phoenix_ITEM.owned = 1 @@ -12,7 +12,7 @@ label a_white_christmas_rewards: $ xmas_wreaths_ITEM.owned = 1 $ xmas_giftchair_ITEM.owned = 1 - call give_reward("Christmas decorations have been unlocked!", gift="interface/icons/xmas_wreaths.webp") + call give_reward(_("Christmas decorations have been unlocked!"), gift="interface/icons/xmas_wreaths.webp") return diff --git a/game/scripts/minigames/mirror/events/anal_pirate_event.rpy b/game/scripts/minigames/mirror/events/anal_pirate_event.rpy index 6a0c87c3..18255b1e 100644 --- a/game/scripts/minigames/mirror/events/anal_pirate_event.rpy +++ b/game/scripts/minigames/mirror/events/anal_pirate_event.rpy @@ -1,7 +1,7 @@ label anal_pirate_rewards: if not card_exist(unlocked_cards, card_maslab): - call give_reward("Ye plundered a special card from 'er cavern.", "images/cardgame/t1/genie_realm/maslab_v1.webp") + call give_reward(_("Ye plundered a special card from 'er cavern."), "images/cardgame/t1/genie_realm/maslab_v1.webp") $ unlocked_cards += [card_maslab] return diff --git a/game/scripts/minigames/puzzle.rpy b/game/scripts/minigames/puzzle.rpy index bb622af4..aca19499 100644 --- a/game/scripts/minigames/puzzle.rpy +++ b/game/scripts/minigames/puzzle.rpy @@ -144,11 +144,11 @@ label puzzle_minigame: call book_end gen "(I've seen enough magic to know where this is going... I should investigate that corridor on the seventh floor.)" ("base", xpos="far_left", ypos="head") - call give_reward("You've unlocked something on the 7th floor, check your map to get there.","/images/rooms/room_of_requirement/mirror.webp") + call give_reward(_("You've unlocked something on the 7th floor, check your map to get there."),"/images/rooms/room_of_requirement/mirror.webp") if states.cardgame.unlocked: gen "What's this?" ("base", xpos="far_left", ypos="head") - call give_reward("You have found a card at the bottom of the box!", "images/cardgame/t1/other/elf_v1.webp") + call give_reward(_("You have found a card at the bottom of the box!"), "images/cardgame/t1/other/elf_v1.webp") $ unlocked_cards += [card_item_elf] $ states.map.seventh_floor.unlocked = True $ puzzle_box_ITEM.owned = 0