2022-05-16 23:48:22 +00:00
label summon_astoria:
2023-03-31 22:41:48 +00:00
$ states.active_girl = "astoria"
$ states.ast.busy = True
2022-05-16 23:48:22 +00:00
2023-03-31 22:41:48 +00:00
#call update_states.ast.tier
2022-05-16 23:48:22 +00:00
call update_astoria
2022-06-17 21:05:08 +00:00
$ renpy.checkpoint(hard=True)
2022-05-16 23:48:22 +00:00
# Clothes Events
call astoria_summon_setup
label astoria_requests:
ast "" (xpos="base",ypos="base")
menu:
# Talk
"-Talk-" (icon="interface/icons/small/talk.webp"):
2023-03-31 22:41:48 +00:00
if states.ast.mood > 0:
2022-05-16 23:48:22 +00:00
ast "I have nothing to say." ("annoyed", "narrow", "base", "R")
jump astoria_requests
call astoria_chitchat
jump astoria_talk
2023-11-16 00:51:18 +00:00
"-Sexual favours-" (icon="interface/icons/small/condom.webp"): # TODO: add 'if states.ast.favors_unlocked' once her story is looked over again
2023-03-31 22:41:48 +00:00
if states.ast.mood != 0:
2022-05-16 23:48:22 +00:00
ast "I don't want to today..." ("annoyed", "narrow", "base", "R")
2023-07-02 16:39:28 +00:00
nar "Astoria is upset with you."
2022-05-16 23:48:22 +00:00
jump astoria_requests
2023-07-02 16:39:28 +00:00
jump astoria_favor_menu
2022-05-16 23:48:22 +00:00
# Wardrobe
2023-04-02 23:48:38 +00:00
"-Wardrobe-" (icon="interface/icons/small/wardrobe.webp") if states.ast.wardrobe_unlocked:
2022-05-16 23:48:22 +00:00
hide astoria_main with d1
call wardrobe
jump astoria_requests
2023-07-02 16:39:28 +00:00
"-Wardrobe-" (style="disabled") if not states.ast.wardrobe_unlocked:
2023-03-11 19:43:02 +00:00
nar "You haven't unlocked this feature yet."
2022-05-16 23:48:22 +00:00
jump astoria_requests
"-Give Item-" (icon="interface/icons/small/gift.webp"):
hide astoria_main with d1
call gift_menu
jump astoria_requests
# Dismiss
"-Dismiss her-":
stop music fadeout 3.0
2024-04-25 18:49:09 +00:00
if states.env.daytime:
2023-05-02 18:29:53 +00:00
ast "I will go back to classes then, [name_genie_astoria]." ("base", "base", "base", "mid")
2022-05-16 23:48:22 +00:00
else:
2023-05-02 18:29:53 +00:00
ast "Oh, alright. Good night, [name_genie_astoria]." ("base", "base", "base", "mid")
2022-05-16 23:48:22 +00:00
2023-03-11 22:01:39 +00:00
play sound "sounds/door.ogg"
2022-05-16 23:48:22 +00:00
jump end_astoria_event
label astoria_talk:
menu:
2023-03-31 22:41:48 +00:00
"-Ask about Slytherin Quidditch Team-" (icon="interface/icons/small/quidditch.webp") if states.cho.tier == 2 and states.cho.ev.quidditch.lock_practice and states.cho.ev.quidditch.e6_complete and not states.cho.ev.quidditch.e8_complete:
2022-05-16 23:48:22 +00:00
gen "Could you help me with something?" ("base", xpos="far_left", ypos="head")
ast "Depends what it is." ("annoyed", "narrow", "base", "mid")
ast "And what's in it for me..." ("smile", "closed", "angry", "mid")
2023-05-09 13:45:34 +00:00
gen "Well, the Slytherin Quidditch team refuses to practise against Ravenclaw." ("base", xpos="far_left", ypos="head")
2022-05-16 23:48:22 +00:00
ast "And?" ("base", "base", "base", "mid")
gen "I was wondering if there's something you could do about it." ("base", xpos="far_left", ypos="head")
ast "Like what?" ("open", "base", "worried", "mid")
2023-03-24 15:38:38 +00:00
gen "I don't know... Ask them nicely?" ("base", xpos="far_left", ypos="head")
2022-05-16 23:48:22 +00:00
ast "Yeah right, those guys would never listen to me..." ("base", "narrow", "base", "R")
ast "And can't you do something about it? You're the headmaster!" ("annoyed", "base", "worried", "mid")
2023-03-24 15:38:38 +00:00
gen "Well, I can't technically force them to do anything. If I could, then that would make things a lot easier..." ("base", xpos="far_left", ypos="head")
2023-05-09 13:45:34 +00:00
ast "Ask Snape then, he's the head of Slytherin... If they'd listen to anyone, it'd be him." ("base", "base", "base", "mid")
2023-03-31 22:41:48 +00:00
if states.cho.ev.quidditch.e9_complete:
2023-03-24 15:38:38 +00:00
gen "(If only he'd listen to me...)" ("base", xpos="far_left", ypos="head")
2022-05-16 23:48:22 +00:00
else:
2023-03-24 15:38:38 +00:00
gen "(I suppose, if there's no other option...)" ("base", xpos="far_left", ypos="head")
2022-05-16 23:48:22 +00:00
gen "Well, I'll try and think of something..." ("base", xpos="far_left", ypos="head")
ast "You do that." ("open", "base", "base", "mid")
jump astoria_talk
"-Address me only as-":
menu:
"-Sir-":
label .sir:
2023-03-01 22:14:00 +00:00
$ name_genie_astoria = "Sir"
2023-05-02 18:29:53 +00:00
ast "Very well, [name_genie_astoria]." ("base", "base", "base", "mid")
2022-05-16 23:48:22 +00:00
jump astoria_talk
"-Dumbledore-":
label .dumbledore:
2023-03-01 22:14:00 +00:00
$ name_genie_astoria = "Dumbledore"
2023-05-02 18:29:53 +00:00
ast "Of course, [name_genie_astoria]." ("base", "base", "base", "mid")
2022-05-16 23:48:22 +00:00
jump astoria_talk
"-Professor-":
label .professor:
2023-03-01 22:14:00 +00:00
$ name_genie_astoria = "Professor"
2023-05-02 18:29:53 +00:00
ast "Of course, [name_genie_astoria]." ("base", "base", "base", "mid")
2022-05-16 23:48:22 +00:00
jump astoria_talk
"-Old man-":
label .old_man:
2023-03-01 22:14:00 +00:00
$ name_genie_astoria = "Old man"
2023-05-02 18:29:53 +00:00
ast "Alrighty, [name_genie_astoria]." ("base", "base", "base", "mid")
2022-05-16 23:48:22 +00:00
jump astoria_talk
"-Genie-":
label .genie:
2023-03-01 22:14:00 +00:00
$ name_genie_astoria = "Genie"
2023-05-02 18:29:53 +00:00
ast "What?! You are a genie? For real?" ("grin", "base", "base", "mid")
ast "That's so cool!" ("grin", "base", "base", "mid")
2022-05-16 23:48:22 +00:00
gen "(Oh right. Nobody is supposed to know that.)" ("base", xpos="far_left", ypos="head")
2023-03-01 22:14:00 +00:00
gen "It's just my name, [name_astoria_genie]..." ("base", xpos="far_left", ypos="head")
2023-05-02 18:29:53 +00:00
ast "Oh... Okay, [name_genie_astoria]." ("base", "base", "base", "mid")
2022-05-16 23:48:22 +00:00
jump astoria_talk
"-Lord Voldemort-":
label .lord_voldemort:
2023-03-01 22:14:00 +00:00
$ name_genie_astoria = "Lord Voldemort"
2023-05-02 18:29:53 +00:00
ast "Voldemort? Like that mean, evil wizard?" ("clench", "narrow", "angry", "mid")
ast "You aren't him, are you?" ("clench", "narrow", "angry", "mid")
2022-05-16 23:48:22 +00:00
gen "No, just role-playing..." ("base", xpos="far_left", ypos="head")
2023-05-02 18:29:53 +00:00
ast "Oh, alrighty then!" ("grin", "base", "base", "mid")
ast "[name_genie_astoria]." ("grin", "base", "base", "mid")
2022-05-16 23:48:22 +00:00
jump astoria_talk
"-Daddy-":
label .daddy:
2023-03-01 22:14:00 +00:00
$ name_genie_astoria = "Daddy"
2023-05-02 18:29:53 +00:00
ast "Daddy? Don't you think that's a little weird?" ("clench", "narrow", "angry", "mid")
2023-05-14 10:29:46 +00:00
gen "Not at all!" ("base", xpos="far_left", ypos="head")
2023-05-02 18:29:53 +00:00
ast "*Hmph*..." ("upset", "narrow", "angry", "mid")
2023-05-09 13:45:34 +00:00
ast "Alright, why not... Nobody knows about it anyway." ("base", "base", "base", "mid")
2022-05-16 23:48:22 +00:00
jump astoria_talk
2023-03-31 22:41:48 +00:00
"-Master-" (style="disabled") if states.ast.level < 18:
2022-05-16 23:48:22 +00:00
label .master_fail:
2023-03-01 22:14:00 +00:00
$ name_genie_astoria = "Dumby" # Tricked
2023-05-02 18:29:53 +00:00
ast "*Ha-ha-ha-ha*-- you want me to call you master?" ("grin", "base", "base", "mid")
ast "That's so dumb!" ("grin", "base", "base", "mid")
ast "Oh I know!" ("grin", "base", "base", "mid")
ast "How about I'll call you \"Dumby\" instead? It fits you really well." ("grin", "base", "base", "mid")
2022-05-16 23:48:22 +00:00
gen "(...)" ("base", xpos="far_left", ypos="head")
2023-05-02 18:29:53 +00:00
ast "*Ha-ha-ha-ha*--" ("grin", "base", "base", "mid")
2023-05-14 10:29:46 +00:00
gen "Are you done now?" ("base", xpos="far_left", ypos="head")
2023-05-02 18:29:53 +00:00
ast "Yes... I'm sorry... {w=1.0}Dumby..." ("grin", "base", "base", "mid")
2023-05-14 10:29:46 +00:00
gen "(Damn brat! We'll see who will be laughing later.)" ("angry", xpos="far_left", ypos="head")
2022-05-16 23:48:22 +00:00
jump astoria_talk
2023-03-31 22:41:48 +00:00
"-Master-" if states.ast.level >= 18:
2022-05-16 23:48:22 +00:00
label .master:
2023-03-01 22:14:00 +00:00
$ name_genie_astoria = "Master"
2023-05-02 18:29:53 +00:00
ast "*Ha-ha-ha-ha*-- You want me to call you master?" ("grin", "base", "base", "mid")
ast "That's so silly!" ("grin", "base", "base", "mid")
2022-05-16 23:48:22 +00:00
gen "(...)" ("base", xpos="far_left", ypos="head")
2023-05-02 18:29:53 +00:00
ast "Well alright... M-master--" ("grin", "base", "base", "mid")
ast "*Ha-ha-ha-ha*--{w=1.0}{nw}" ("grin", "base", "base", "mid")
2022-05-16 23:48:22 +00:00
with hpunch
2023-03-24 15:38:38 +00:00
gen "Shut it... Or there will be consequences!" ("angry", xpos="far_left", ypos="head")
2023-05-02 18:29:53 +00:00
ast "I'm sorry... It won't happen again, master..." ("base", "base", "base", "mid")
2022-05-16 23:48:22 +00:00
jump astoria_talk
2023-03-31 22:41:48 +00:00
"-Custom Input-" (style="disabled") if states.ast.level < 18:
2022-05-16 23:48:22 +00:00
gen "(I don't think she's yet ready for that)" ("base", xpos="far_left", ypos="head")
jump astoria_talk
2023-03-31 22:41:48 +00:00
"-Custom Input-" if states.ast.level >= 18:
2023-03-01 22:14:00 +00:00
$ temp_name = renpy.input("(Please enter the name.)", name_genie_astoria, ALLOWED_CHARACTERS, length=14)
2022-05-16 23:48:22 +00:00
$ temp_name = temp_name.strip()
if temp_name.lower() in ("sir", "dumbledore", "professor", "old man", "genie", "lord voldemort", "daddy", "master"):
2023-03-31 22:41:48 +00:00
if temp_name.lower() == "master" and states.ast.level < 18:
2022-05-16 23:48:22 +00:00
jump astoria_talk.master_fail
$ renpy.jump("astoria_talk."+temp_name.lower().replace(" ", "_")) # Jump to local label
elif temp_name == "":
jump astoria_talk
else:
2023-03-01 22:14:00 +00:00
$ name_genie_astoria = temp_name
2023-05-02 18:29:53 +00:00
ast "*Uhm*... Okay... I will call you [name_genie_astoria]." ("base", "base", "base", "mid")
2022-05-16 23:48:22 +00:00
jump astoria_talk
"-Never mind-":
jump astoria_talk
2023-05-09 13:45:34 +00:00
"-From now on, I will refer to you as-":
2022-05-16 23:48:22 +00:00
menu:
"-Miss Greengrass-":
label .miss_greengrass:
2023-03-01 22:14:00 +00:00
$ name_astoria_genie = "Miss Greengrass"
2023-05-02 18:29:53 +00:00
ast "Sure, [name_genie_astoria]." ("grin", "base", "base", "mid")
2022-05-16 23:48:22 +00:00
jump astoria_talk
"-Astoria-":
label .Astoria:
2023-03-01 22:14:00 +00:00
$ name_astoria_genie = "Astoria"
2023-05-02 18:29:53 +00:00
ast "Finally getting rid of this formal bullshit? I approve!" ("grin", "base", "base", "mid")
2022-05-16 23:48:22 +00:00
jump astoria_talk
"-Girl-":
label .girl:
2023-03-01 22:14:00 +00:00
$ name_astoria_genie = "Girl"
2023-05-02 18:29:53 +00:00
ast "Okay, [name_genie_astoria]." ("base", "base", "base", "mid")
2022-05-16 23:48:22 +00:00
jump astoria_talk
"-Princess-":
label .princess:
2023-03-01 22:14:00 +00:00
$ name_astoria_genie = "Princess"
2023-05-02 18:29:53 +00:00
ast "I really do feel like a princess!" ("grin", "base", "base", "mid")
ast "After all, I can do whatever I want!" ("upset", "narrow", "angry", "mid")
2022-05-16 23:48:22 +00:00
jump astoria_talk
"-Cutie-":
label .cutie:
2023-03-01 22:14:00 +00:00
$ name_astoria_genie = "Cutie"
2023-05-02 18:29:53 +00:00
ast "Fine... If you really have to, [name_genie_astoria]." ("clench", "narrow", "angry", "mid")
2022-05-16 23:48:22 +00:00
jump astoria_talk
2023-03-31 22:41:48 +00:00
"-Slave-" (style="disabled") if states.ast.level < 18:
2022-05-16 23:48:22 +00:00
label .slave_fail:
2023-05-02 18:29:53 +00:00
ast "I'm not your slave, [name_genie_astoria]!" ("upset", "narrow", "angry", "mid")
2022-05-16 23:48:22 +00:00
gen "Of course you aren't! We are just playing a game, that's all..." ("base", xpos="far_left", ypos="head")
2023-05-02 18:29:53 +00:00
ast "Well, I don't like your games!" ("upset", "narrow", "angry", "mid")
ast "Forget it!" ("upset", "narrow", "angry", "mid")
2022-05-16 23:48:22 +00:00
jump astoria_talk
2023-03-31 22:41:48 +00:00
"-Slave-" if states.ast.level >= 18:
2022-05-16 23:48:22 +00:00
label .slave:
2023-03-01 22:14:00 +00:00
$ name_astoria_genie = "Slave"
2023-05-02 18:29:53 +00:00
ast "I'm not your slave, [name_genie_astoria]!" ("upset", "narrow", "angry", "mid")
2022-05-16 23:48:22 +00:00
gen "Of course you aren't! We are just playing a game, that's all..." ("base", xpos="far_left", ypos="head")
2023-05-09 13:45:34 +00:00
ast "I like games!" ("grin", "base", "base", "mid")
2023-05-02 18:29:53 +00:00
ast "Alrighty then!" ("grin", "base", "base", "mid")
2022-05-16 23:48:22 +00:00
jump astoria_talk
2023-03-31 22:41:48 +00:00
"-Custom Input-" (style="disabled") if states.ast.level < 18:
2022-05-16 23:48:22 +00:00
gen "(I don't think she's yet ready for that)" ("base", xpos="far_left", ypos="head")
jump astoria_talk
2023-03-31 22:41:48 +00:00
"-Custom Input-" if states.ast.level >= 18:
2023-03-01 22:14:00 +00:00
$ temp_name = renpy.input("(Please enter the name.)", name_astoria_genie, ALLOWED_CHARACTERS, length=14)
2022-05-16 23:48:22 +00:00
$ temp_name = temp_name.strip()
if temp_name.lower() in ("miss greengrass", "girl", "princess", "cutie", "slave"):
2023-03-31 22:41:48 +00:00
if temp_name.lower() == "slave" and states.ast.level < 18:
2022-05-16 23:48:22 +00:00
jump astoria_talk.slave_fail
$ renpy.jump("astoria_talk."+temp_name.lower().replace(" ", "_")) # Jump to local label
elif temp_name == "":
jump astoria_talk
else:
2023-03-01 22:14:00 +00:00
$ name_astoria_genie = temp_name
2023-05-02 18:29:53 +00:00
ast "That's a bit much, don't you think, [name_genie_astoria]?" ("clench", "narrow", "angry", "mid")
2022-05-16 23:48:22 +00:00
gen "Not at all!" ("base", xpos="far_left", ypos="head")
2023-03-24 15:38:38 +00:00
gen "I will only call you that when we are alone!" ("base", xpos="far_left", ypos="head")
2023-05-02 18:29:53 +00:00
ast "Well... Okay then..." ("base", "base", "base", "mid")
2022-05-16 23:48:22 +00:00
jump astoria_talk
"-Never mind-":
jump astoria_talk
"-Never mind-":
jump astoria_requests
2023-07-02 16:39:28 +00:00
label astoria_favor_menu:
menu:
2023-11-16 16:53:29 +00:00
# "-Level Up-" (icon="interface/icons/small/levelup.webp") if ast_level_up is not None:
2023-07-02 16:39:28 +00:00
# call luna_level_up(tier=ast_level_up)
# jump luna_favor_menu
"-Personal Favours-" (icon="interface/icons/small/heart_red.webp", style="disabled"):
# call tutorial("hearts")
label .personal:
call not_available
# $ result = show_events_menu(astoria_favors)
# if result in ("disabled", "noncompliant"):
# "You haven't unlocked this favour opportunity yet."
# jump .personal
# elif result == "exit":
# jump astoria_favor_menu
# else:
# $ result.start()
jump astoria_favor_menu
"-Public Requests-" (icon="interface/icons/small/star_yellow.webp", style="disabled"):
label .requests:
call not_available
2023-11-16 00:51:18 +00:00
2023-07-02 16:39:28 +00:00
# $ result = show_events_menu(hermione_requests)
# if result in ("disabled", "noncompliant"):
# "You haven't unlocked this request opportunity yet."
# jump .requests
# elif result == "exit":
# jump .skip_points_check
# else:
# $ result.start()
jump astoria_favor_menu
"-Spell Training-" (icon="interface/icons/small/spell.webp"):
call tutorial("hearts")
label .spells:
$ result = show_events_menu(astoria_spells)
if result in ("disabled", "noncompliant"):
"You haven't unlocked this spell training opportunity yet."
jump .spells
elif result == "exit":
jump astoria_favor_menu
else:
$ result.start()
"-Never mind-":
2023-11-16 00:51:18 +00:00
jump astoria_requests