From 3ce6198359f7c7fd625e8e8061cb43e48c5951b5 Mon Sep 17 00:00:00 2001 From: LoafyLemon Date: Tue, 27 Jun 2023 19:02:35 +0100 Subject: [PATCH] Convert Hermione's Public Requests * Converted Hermione's public requests into the queue system. * Replaced event checks with status checks for the affected events. * Ignore local labels in event completion tracking * Improved readability for debug outputs * Skip Luna intro on dev --- .../hermione/events/items/collars.rpy | 2 +- .../hermione/events/potions/ass_expand.rpy | 4 +- .../hermione/events/potions/breast_expand.rpy | 4 +- .../events/requests/flash_your_tits.rpy | 29 +- .../events/requests/flirt_with_students.rpy | 26 +- .../events/requests/flirt_with_teachers.rpy | 15 +- .../events/requests/give_a_blowjob.rpy | 28 +- .../events/requests/give_a_handjob.rpy | 32 +- .../hermione/events/requests/have_sex.rpy | 34 +- .../hermione/events/requests/kiss_a_girl.rpy | 34 +- .../events/requests/let_them_grope_you.rpy | 29 +- game/scripts/characters/hermione/requests.rpy | 311 ++++++++---------- game/scripts/characters/hermione/summon.rpy | 34 +- game/scripts/characters/hermione/vars.rpy | 1 + game/scripts/events/quests.rpy | 8 - game/scripts/events/queue.rpy | 8 +- game/scripts/script.rpy | 3 + game/scripts/utility/devtools.rpy | 24 +- 18 files changed, 317 insertions(+), 309 deletions(-) diff --git a/game/scripts/characters/hermione/events/items/collars.rpy b/game/scripts/characters/hermione/events/items/collars.rpy index 311de01a..fcd53c17 100644 --- a/game/scripts/characters/hermione/events/items/collars.rpy +++ b/game/scripts/characters/hermione/events/items/collars.rpy @@ -1045,7 +1045,7 @@ label flasher_scene: her @ cheeks blush "You... You want me to say that I..." ("open", "happy", "base", "R") gen "Enjoy showing off your body..." ("base", xpos="far_left", ypos="head") - if hg_pr_flash.counter > 0: + if states.her.status.public_stripping: gen "That you like when people are watching you, especially when you're naked." ("base", xpos="far_left", ypos="head") else: gen "That you like showing yourself off to me..." ("base", xpos="far_left", ypos="head") diff --git a/game/scripts/characters/hermione/events/potions/ass_expand.rpy b/game/scripts/characters/hermione/events/potions/ass_expand.rpy index 6cd63932..f1fdadc0 100644 --- a/game/scripts/characters/hermione/events/potions/ass_expand.rpy +++ b/game/scripts/characters/hermione/events/potions/ass_expand.rpy @@ -148,7 +148,7 @@ label her_potion_ass_give: else: #Drank but failed public variant before gen "I'd like you to go to class this time..." ("base", xpos="far_left", ypos="head") - if hg_pr_flash.counter > 0: ## Triggers public return event ## + if states.her.status.public_stripping: ## Triggers public return event ## if not states.her.ev.potions.ass_expand_drank: her "Alright..." ("angry", "squint", "base", "R") @@ -1034,7 +1034,7 @@ label her_potion_ass_give: #End section gen "Well you best be off to class." ("base", xpos="far_left", ypos="head") - if hg_pr_flash.counter > 0: + if states.her.status.public_stripping: her @ cheeks blush "Alright..." ("open", "narrow", "base", "down") #surprised else: her @ cheeks blush "... With my butt looking like this?" ("soft", "narrow", "base", "down") diff --git a/game/scripts/characters/hermione/events/potions/breast_expand.rpy b/game/scripts/characters/hermione/events/potions/breast_expand.rpy index 0a84cd87..d5948cf2 100644 --- a/game/scripts/characters/hermione/events/potions/breast_expand.rpy +++ b/game/scripts/characters/hermione/events/potions/breast_expand.rpy @@ -219,7 +219,7 @@ label her_potion_breasts_give: call her_walk("door") - if hg_pr_flash.counter > 0: ## Triggers public return event ## + if states.her.status.public_stripping: ## Triggers public return event ## # Variant where she's used to flashing people. if not states.her.ev.potions.breast_expand_drank: @@ -837,7 +837,7 @@ label her_potion_breasts_give: else: her @ cheeks blush "I'll head out as soon as the effects wear off." ("open", "closed", "base", "mid") - if hg_pr_flash.counter > 0: + if states.her.status.public_stripping: gen "It's not like you haven't gone topless in public before, have you?" ("base", xpos="far_left", ypos="head") her @ cheeks blush "Yes but--" ("angry", "narrow", "base", "mid", flip=False, trans=dissolve) diff --git a/game/scripts/characters/hermione/events/requests/flash_your_tits.rpy b/game/scripts/characters/hermione/events/requests/flash_your_tits.rpy index b9037f93..6f849401 100644 --- a/game/scripts/characters/hermione/events/requests/flash_your_tits.rpy +++ b/game/scripts/characters/hermione/events/requests/flash_your_tits.rpy @@ -1,23 +1,29 @@ ### Flash A Classmate ### -label hg_pr_flash: +label start_hg_pr_flash: # Setup $ current_payout = 25 - if hg_pr_flash.counter == 0: + if not _events_completed_any: gen "{size=-4}(Tell her to flash her tits to one of her classmates?){/size}" ("base", xpos="far_left", ypos="head") menu: "\"(Yes, let's do it!)\"": pass "\"(Not right now.)\"": + $ _event.cancel() jump hermione_favor_menu + return + +label hg_pr_flash: + + call start_hg_pr_flash her "" (xpos="mid", ypos="base", trans=fade) #Intro. - if hg_pr_flash.counter == 0: + if not _events_completed_any: gen "[name_hermione_genie]..." ("base", xpos="far_left", ypos="head") gen "I would like to award Gryffindor with twenty-five house points today." ("base", xpos="far_left", ypos="head") her "Really?" ("grin", "base", "base", "mid") @@ -33,6 +39,7 @@ label hg_pr_flash: her "?!!" ("shock", "wide", "base", "stare") if states.her.public_level < 6: + $ _event.cancel() jump too_much_public play music "music/Chipper Doodle v2.ogg" fadein 1 if_changed @@ -99,11 +106,16 @@ label hg_pr_flash: call her_walk(action="leave") - $ hg_pr_flash.inProgress = True jump end_hermione_event +label hg_pr_flash_fail: + call start_hg_pr_flash + + jump too_much + label end_hg_pr_flash: $ gryffindor += current_payout + $ states.her.status.public_stripping = True gen "The Gryffindor house gets {number=current_payout} points!" ("base", xpos="far_left", ypos="head") her "Thank you, [name_genie_hermione]." @@ -114,7 +126,7 @@ label end_hg_pr_flash: pause.2 # Inner monologue - if hg_pr_flash.counter == 1: + if not _events_completed_any: her "(Stupid Slytherins...)" ("angry", "narrow", "angry", "mid", xpos="far_right", flip=True, trans=d3) her "(I {b}HATE{/b} them!)" ("angry", "closed", "worried", "mid") @@ -136,10 +148,9 @@ label end_hg_pr_flash: label .quick_end: # Increase Points - if not hg_pr_flash.is_tier_complete(): + if not _events_filtered_completed_all: $ states.her.public_level += 1 - $ hg_pr_flash.inProgress = False jump end_hermione_event label hg_pr_flash_intro: @@ -149,7 +160,7 @@ label hg_pr_flash_intro: gen "Did you complete your task?" ("base", xpos="far_left", ypos="head") her "I did as you asked, [name_genie_hermione]..." ("open", "base", "base", "R") - if hg_pr_flash.is_tier_complete(): + if _events_filtered_completed_all: menu: "\"Great. Here are your points.\"": jump end_hg_pr_flash @@ -159,7 +170,7 @@ label hg_pr_flash_intro: stop music fadeout 3.0 - if hg_pr_flash.counter == 1: + if not _events_completed_any: her "......" ("annoyed", "narrow", "angry", "R") her "Well... *Ehm*..." ("soft", "base", "base", "R") gen "Speak up, [name_hermione_genie]." ("base", xpos="far_left", ypos="head") diff --git a/game/scripts/characters/hermione/events/requests/flirt_with_students.rpy b/game/scripts/characters/hermione/events/requests/flirt_with_students.rpy index 9664ab19..9dd2bee1 100644 --- a/game/scripts/characters/hermione/events/requests/flirt_with_students.rpy +++ b/game/scripts/characters/hermione/events/requests/flirt_with_students.rpy @@ -6,13 +6,14 @@ label hg_pr_flirt: # Setup $ current_payout = 5 - if hg_pr_flirt.counter == 0: + if not _events_completed_any: gen "{size=-4}(Ask her to go flirt with some boys from Slytherin?){/size}" ("base", xpos="far_left", ypos="head") menu: "\"(Yes, let's do it!)\"": pass "\"(Not right now.)\"": + $ _event.cancel() jump hermione_favor_menu her "" (xpos="mid", ypos="base", trans=fade) @@ -20,7 +21,7 @@ label hg_pr_flirt: her "Yes?" ("soft", "base", "base", "mid") #Intro. - if hg_pr_flirt.counter == 0: + if not _events_completed_any: gen "What is your opinion on the boys of the Slytherin house?" ("base", xpos="far_left", ypos="head") her "I detest them, [name_genie_hermione]." ("angry", "base", "angry", "mid") gen "Well, too bad. Because I want you to get really friendly with a few of them today." ("base", xpos="far_left", ypos="head") @@ -56,7 +57,7 @@ label hg_pr_flirt: her "Fine." ("upset", "base", "angry", "R") her "If I have to, [name_genie_hermione]..." ("normal", "squint", "angry", "mid") else: - if hg_pr_flirt.counter == 1: + if _events_filtered_completed_any: gen "I need you to go make some new friends at the Slytherin house." ("base", xpos="far_left", ypos="head") her "You mean you need me to flirt with the Slytherin boys again [name_genie_hermione]?" gen "That's exactly what I need you to do today, [name_hermione_genie]." ("base", xpos="far_left", ypos="head") @@ -79,12 +80,14 @@ label hg_pr_flirt: her "Well, I'd better go now. Classes are about to start..." call her_walk(action="leave") - - $ hg_pr_flirt.inProgress = True + jump end_hermione_event # End Event label end_hg_pr_flirt: + + $ states.her.ev.flirt_with_students.done_before = True + $ gryffindor += current_payout gen "The Gryffindor house gets {number=current_payout} points!" ("base", xpos="far_left", ypos="head") @@ -96,7 +99,7 @@ label end_hg_pr_flirt: pause.2 # Inner monologue - if hg_pr_flirt.counter == 1: + if not _events_completed_any: her "(........)" ("disgust", "base", "worried", "down", ypos="base", xpos="base", flip=True, trans=d3) her "(I'll need to read about this whole \"flirting\" thing...)" ("annoyed", "base", "angry", "L") @@ -106,10 +109,9 @@ label end_hg_pr_flirt: label .quick_end: # Increase Points - if not hg_pr_flirt.is_tier_complete(): + if not _events_filtered_completed_all: $ states.her.public_level += 1 - $ hg_pr_flirt.inProgress = False jump end_hermione_event label hg_pr_flirt_intro: @@ -121,7 +123,7 @@ label hg_pr_flirt_intro: her "I did as you asked, [name_genie_hermione]..." ("open", "base", "base", "R") her "" ("normal", "base", "base", "R") - if hg_pr_flirt.is_tier_complete(): + if _events_filtered_completed_all: menu: "\"Great. You earned your points.\"": jump end_hg_pr_flirt @@ -131,7 +133,7 @@ label hg_pr_flirt_intro: stop music fadeout 3.0 - if hg_pr_flirt.counter == 1: + if not _events_completed_any: her "......" ("annoyed", "narrow", "angry", "R") her "So...{w=0.4} *Ehm*." ("soft", "base", "base", "R") @@ -270,8 +272,6 @@ label hg_pr_flirt_T1_E3: gen "Dismissed!" ("base", xpos="far_left", ypos="head") call her_walk(action="leave") - $ hg_pr_flirt.inProgress = False - jump end_hermione_event ### Tier 2 - LVL 3-6 ### @@ -423,7 +423,7 @@ label hg_pr_flirt_T3_E2: play music "music/Chipper Doodle v2.ogg" fadein 1 if_changed # Music her "I had two dates, and seven quite pleasant conversations..." ("smile", "happyCl", "base", "mid") - if hg_pr_kiss.counter >= 1: + if states.her.status.public_kissing: her @ cheeks blush "I even let this one guy kiss me on the lips..." ("soft", "base", "base", "R") else: her "I even let this one guy kiss me on the cheek..." ("grin", "base", "base", "R") diff --git a/game/scripts/characters/hermione/events/requests/flirt_with_teachers.rpy b/game/scripts/characters/hermione/events/requests/flirt_with_teachers.rpy index 15c9dcbf..259cb360 100644 --- a/game/scripts/characters/hermione/events/requests/flirt_with_teachers.rpy +++ b/game/scripts/characters/hermione/events/requests/flirt_with_teachers.rpy @@ -7,21 +7,22 @@ label hg_pr_flirt_teacher: # Setup $ current_payout = 15 - if hg_pr_flirt_teacher.counter == 0: + if not _events_completed_any: gen "{size=-4}(Tell her to be flirtatious with her teachers today?){/size}" ("base", xpos="far_left", ypos="head") menu: "\"(Yes, let's do it!)\"": pass "\"(Not right now.)\"": + $ _event.cancel() jump hermione_favor_menu her "" (xpos="right", ypos="base", trans=fade) gen "[name_hermione_genie], I want you to be especially flirtatious with your teachers today." ("base", xpos="far_left", ypos="head") #Intro - if hg_pr_flirt_teacher.counter == 0: - if hg_pr_flirt.counter > 0: + if not _events_completed_any: + if states.her.ev.flirt_with_students.done_before: her "I will do my best, [name_genie_hermione]!" ("base", "base", "base", "mid") her "Now I understand why you asked me to flirt with these pesky Slytherin boys." ("open", "closed", "angry", "mid") her "I am glad you finally decided to act, [name_genie_hermione]!" ("open", "base", "base", "mid") @@ -48,7 +49,6 @@ label hg_pr_flirt_teacher: call her_walk(action="leave") - $ hg_pr_flirt_teacher.inProgress = True jump end_hermione_event @@ -69,10 +69,9 @@ label end_hg_pr_flirt_teacher: label .quick_end: # Increase Points - if not hg_pr_flirt_teacher.is_tier_complete(): + if not _events_filtered_completed_all: $ states.her.public_level += 1 - $ hg_pr_flirt_teacher.inProgress = False jump end_hermione_event label hg_pr_flirt_teacher_intro: @@ -84,7 +83,7 @@ label hg_pr_flirt_teacher_intro: gen "Did you complete your task?" ("base", xpos="far_left", ypos="head") her "I did as you asked [name_genie_hermione]..." - if hg_pr_flirt_teacher.is_tier_complete(): # If you have seen all events in this tier once, you get the choice to skip it. + if _events_completed_all: # If you have seen all events in this tier once, you get the choice to skip it. menu: "\"Great. Here are your points.\"": jump end_hg_pr_flirt_teacher @@ -94,7 +93,7 @@ label hg_pr_flirt_teacher_intro: gen "Tell me, [name_hermione_genie], which teachers did you flirt with?" ("base", xpos="far_left", ypos="head") - if hg_pr_flirt_teacher.counter == 1: + if not _events_completed_any: her "*Ehm*... Okay..." ("soft", "base", "base", "R") return diff --git a/game/scripts/characters/hermione/events/requests/give_a_blowjob.rpy b/game/scripts/characters/hermione/events/requests/give_a_blowjob.rpy index 25feedab..0b0b2fbe 100644 --- a/game/scripts/characters/hermione/events/requests/give_a_blowjob.rpy +++ b/game/scripts/characters/hermione/events/requests/give_a_blowjob.rpy @@ -1,23 +1,29 @@ ### Give Classmate A Blowjob ### -label hg_pr_blowjob: +label start_hg_pr_blowjob: # Setup $ current_payout = 65 - if hg_pr_blowjob.counter == 0: + if not _events_completed_any: gen "{size=-4}(Tell her to go give a blowjob to one of her classmates?){/size}" ("base", xpos="far_left", ypos="head") + menu: "\"(Yes, let's do it!)\"": pass "\"(Not right now.)\"": + $ _event.cancel() jump hermione_favor_menu +label hg_pr_blowjob: + + call start_hg_pr_blowjob + her "" (xpos="mid", ypos="base", trans=fade) #Intro. - if hg_pr_blowjob.counter == 0: + if not _events_completed_any: gen "[name_hermione_genie], I will be buying another favour from you today." ("base", xpos="far_left", ypos="head") her "Thank you, [name_genie_hermione]... I really appreciate it." ("open", "closed", "base", "mid") gen "Happy to help, as always." ("base", xpos="far_left", ypos="head") @@ -45,6 +51,7 @@ label hg_pr_blowjob: jump end_hermione_event if states.her.public_level < 15: + $ _event.cancel() jump too_much_public play music "music/Chipper Doodle v2.ogg" fadein 1 if_changed # Music @@ -94,9 +101,13 @@ label hg_pr_blowjob: call her_walk(action="leave") - $ hg_pr_blowjob.inProgress = True jump end_hermione_event +label hg_pr_blowjob_fail: + call start_hg_pr_blowjob + + jump too_much + label end_hg_pr_blowjob: $ gryffindor += current_payout @@ -109,7 +120,7 @@ label end_hg_pr_blowjob: pause.2 # Inner monologue - if hg_pr_blowjob.counter == 1: + if not _events_completed_any: her "(I did it...)" ("base", "narrow", "base", "dead", xpos="base", ypos="base", flip=True, trans=d3) her "(I sucked off one of my classmates...)" ("angry", "narrow", "base", "dead") @@ -121,10 +132,9 @@ label end_hg_pr_blowjob: $ hermione.set_cum(None) # Increase Points - if not hg_pr_blowjob.is_tier_complete(): + if _events_filtered_completed_all: $ states.her.public_level += 1 - $ hg_pr_blowjob.inProgress = False jump end_hermione_event label hg_pr_blowjob_intro: @@ -133,7 +143,7 @@ label hg_pr_blowjob_intro: gen "[name_hermione_genie]..." ("base", xpos="far_left", ypos="head") gen "Did you complete your assignment?" ("base", xpos="far_left", ypos="head") - if hg_pr_blowjob.is_tier_complete(): + if _events_filtered_completed_all: her "Yes, [name_genie_hermione]." menu: @@ -145,7 +155,7 @@ label hg_pr_blowjob_intro: stop music fadeout 3.0 - if hg_pr_blowjob.counter == 1: + if not _events_completed_any: her "......" ("annoyed", "narrow", "angry", "R") gen ".............." ("base", xpos="far_left", ypos="head") diff --git a/game/scripts/characters/hermione/events/requests/give_a_handjob.rpy b/game/scripts/characters/hermione/events/requests/give_a_handjob.rpy index 3e8b3b2b..dc46b0ff 100644 --- a/game/scripts/characters/hermione/events/requests/give_a_handjob.rpy +++ b/game/scripts/characters/hermione/events/requests/give_a_handjob.rpy @@ -1,29 +1,36 @@ ### Give Classmate A Handjob ### -label hg_pr_handjob: +label start_hg_pr_handjob: # Setup $ current_payout = 55 - if hg_pr_handjob.counter == 0: + if not _events_completed_any: gen "{size=-4}(Tell her to give a handjob to one of her classmates?){/size}" ("base", xpos="far_left", ypos="head") menu: "\"(Yes, let's do it!)\"": pass "\"(Not right now.)\"": + $ _event.cancel() jump hermione_favor_menu + return + +label hg_pr_handjob: + + call start_hg_pr_handjob her "" (xpos="mid", ypos="base", trans=fade) #Intro - if hg_pr_handjob.counter == 0: + if not _events_completed_any: if states.her.public_level < 12: gen "[name_hermione_genie], I want you to do something different today..." ("base", xpos="far_left", ypos="head") her "...?" ("normal", "squint", "angry", "mid") gen "I want you to give a handjob to one of your classmates." ("base", xpos="far_left", ypos="head") + $ _event.cancel() jump too_much_public gen "[name_hermione_genie], I want you to do something different today..." ("base", xpos="far_left", ypos="head") @@ -103,9 +110,13 @@ label hg_pr_handjob: call her_walk(action="leave") - $ hg_pr_handjob.inProgress = True jump end_hermione_event +label hg_pr_handjob_fail: + call start_hg_pr_handjob + + jump too_much + label end_hg_pr_handjob: $ gryffindor += current_payout #55 gen "The Gryffindor house gets {number=current_payout} points!" ("base", xpos="far_left", ypos="head") @@ -117,7 +128,7 @@ label end_hg_pr_handjob: pause.2 # Inner monologue - if hg_pr_handjob.counter == 1: + if not _events_completed_any: her ".........." ("upset", "narrow", "angry", "R", ypos="base", xpos="base", flip=True, trans=d3) her "(Do I really have to do this?)" ("upset", "closed", "angry", "mid") @@ -129,10 +140,9 @@ label end_hg_pr_handjob: label .quick_end: # Increase Points - if not hg_pr_handjob.is_tier_complete(): + if not _events_filtered_completed_all: $ states.her.public_level += 1 - $ hg_pr_handjob.inProgress = False jump end_hermione_event label hg_pr_handjob_intro: @@ -142,7 +152,7 @@ label hg_pr_handjob_intro: gen "Did you lend a hand to the needy?" ("base", xpos="far_left", ypos="head") her "Yes, [name_genie_hermione]..." - if hg_pr_handjob.is_tier_complete(): + if _events_filtered_completed_all: menu: "\"Great. Here are your points.\"": jump end_hg_pr_handjob @@ -152,7 +162,7 @@ label hg_pr_handjob_intro: stop music fadeout 3.0 - if hg_pr_handjob.counter == 1: + if not _events_completed_any: her "......" ("annoyed", "narrow", "angry", "R") gen ".............." ("base", xpos="far_left", ypos="head") @@ -174,9 +184,9 @@ label hg_pr_handjob_T4_E1: gen "..." ("base", xpos="far_left", ypos="head") her ".........." ("annoyed", "base", "worried", "R") her "I don't want to talk about it..." ("annoyed", "narrow", "angry", "R") - her "You told me to go and touch a boy's penis, and I did just that, [name_genie_hermione]." + her "You told me to go and touch a student's penis, and I did just that, [name_genie_hermione]." her "Please, just let me have my points now, [name_genie_hermione]..." ("open", "base", "base", "mid") - gen "I did not tell you to \"go and touch a boy's penis\", [name_hermione_genie]." ("base", xpos="far_left", ypos="head") + gen "I did not tell you to \"go and touch a student's penis\", [name_hermione_genie]." ("base", xpos="far_left", ypos="head") gen "I told you to give one of your classmates a handjob." ("base", xpos="far_left", ypos="head") her "Well, yes... That's what I meant, of course..." ("annoyed", "narrow", "annoyed", "mid") gen "Did you make him cum, then?" ("base", xpos="far_left", ypos="head") diff --git a/game/scripts/characters/hermione/events/requests/have_sex.rpy b/game/scripts/characters/hermione/events/requests/have_sex.rpy index 03ae64f4..9383c86c 100644 --- a/game/scripts/characters/hermione/events/requests/have_sex.rpy +++ b/game/scripts/characters/hermione/events/requests/have_sex.rpy @@ -1,23 +1,31 @@ ### Have Sex With A Classmate ### -label hg_pr_sex: +label start_hg_pr_sex: # Setup $ current_payout = 75 - if hg_pr_sex.counter == 0: + if not _events_completed_any: gen "{size=-4}(Tell her to fuck one of her classmates?){/size}" ("base", xpos="far_left", ypos="head") + menu: "\"(Yes, let's do it!)\"": pass "\"(Not right now.)\"": + $ _event.cancel() jump hermione_favor_menu + return + +label hg_pr_sex: + + call start_hg_pr_sex + her "" (xpos="mid", ypos="base", trans=fade) #Intro. - if hg_pr_sex.counter == 0: + if not _events_completed_any: gen "[name_hermione_genie]..." ("base", xpos="far_left", ypos="head") gen "Today I need you to have sex with a classmate of your choice." ("base", xpos="far_left", ypos="head") @@ -35,9 +43,11 @@ label hg_pr_sex: gen "(*Hmm*...)" ("base", xpos="far_left", ypos="head") gen "(Maybe she'll be up for it if I pop her cherry first...)" ("base", xpos="far_left", ypos="head") + $ _event.cancel() jump end_hermione_event if states.her.public_level < 18: + $ _event.cancel() jump too_much_public play music "music/Chipper Doodle v2.ogg" fadein 1 if_changed # Music @@ -58,10 +68,13 @@ label hg_pr_sex: call her_walk(action="leave") - $ hg_pr_sex.inProgress = True - jump end_hermione_event +label hg_pr_sex_fail: + call start_hg_pr_sex + + jump too_much + label end_hg_pr_sex: $ gryffindor += current_payout gen "Gryffindor gets {number=current_payout} points!" ("base", xpos="far_left", ypos="head") @@ -73,7 +86,7 @@ label end_hg_pr_sex: pause.2 # Inner monologue - if hg_pr_sex.counter == 2: + if _events_completed_all: show screen blktone with d3 @@ -87,10 +100,9 @@ label end_hg_pr_sex: label .quick_end: # Increase Points - if not hg_pr_sex.is_tier_complete(): + if not _events_filtered_completed_all: $ states.her.public_level += 1 - $ hg_pr_sex.inProgress = False jump end_hermione_event label hg_pr_sex_intro: @@ -99,7 +111,7 @@ label hg_pr_sex_intro: gen "[name_hermione_genie]..." ("base", xpos="far_left", ypos="head") gen "Did you do it?" ("base", xpos="far_left", ypos="head") - if hg_pr_sex.is_tier_complete(): + if _events_filtered_completed_all: her "Of course, [name_genie_hermione]." menu: "\"Great. Here are your points.\"": @@ -110,7 +122,7 @@ label hg_pr_sex_intro: stop music fadeout 3.0 - if hg_pr_sex.counter == 1: + if not _events_completed_any: her "......" ("base", "narrow", "base", "mid") gen "Have you been enjoying yourself today?" ("base", xpos="far_left", ypos="head") @@ -127,7 +139,7 @@ label hg_pr_sex_T6_intro_E1: gen "*Hmm*..." ("base", xpos="far_left", ypos="head") $ states.her.busy = True - $ hg_event_pause += 1 + jump main_room_menu label hg_pr_sex_T6_intro_E2: diff --git a/game/scripts/characters/hermione/events/requests/kiss_a_girl.rpy b/game/scripts/characters/hermione/events/requests/kiss_a_girl.rpy index 506794bf..967b6801 100644 --- a/game/scripts/characters/hermione/events/requests/kiss_a_girl.rpy +++ b/game/scripts/characters/hermione/events/requests/kiss_a_girl.rpy @@ -1,29 +1,36 @@ ### Make Out With A Girl ### -label hg_pr_kiss: +label start_hg_pr_kiss: # Setup $ current_payout = 45 - if hg_pr_kiss.counter == 0: + if not _events_completed_any: gen "{size=-4}(Tell her to go make out with one of her female classmates?){/size}" ("base", xpos="far_left", ypos="head") menu: "\"(Yes, let's do it!)\"": pass "\"(Not right now.)\"": + $ _event.cancel() jump hermione_favor_menu + return + +label hg_pr_kiss: + + call start_hg_pr_kiss her "" (xpos="mid", ypos="base", trans=fade) #Intro. - if hg_pr_kiss.counter == 0: + if not _events_completed_any: gen "Have You ever kissed another girl, [name_hermione_genie]?" ("base", xpos="far_left", ypos="head") - her "?!" ("normal", "squint", "angry", "mid") - + if states.her.public_level < 9: + $_event.cancel() jump too_much_public + her "?!" ("normal", "squint", "angry", "mid") her "I am not a... Lesbian, [name_genie_hermione]." ("open", "base", "base", "mid") gen "Silly girl... You don't need to be a lesbian to kiss girls." ("base", xpos="far_left", ypos="head") gen "I mean, I do it, and that doesn't make me a lesbian." ("base", xpos="far_left", ypos="head") @@ -74,9 +81,13 @@ label hg_pr_kiss: call her_walk(action="leave") - $ hg_pr_kiss.inProgress = True jump end_hermione_event +label hg_pr_kiss_fail: + call start_hg_pr_kiss + + jump too_much + label end_hg_pr_kiss: $ gryffindor += current_payout @@ -89,7 +100,7 @@ label end_hg_pr_kiss: pause.2 # Inner monologue - if hg_pr_kiss.counter == 1: + if not _events_completed_any: her "(*Tsk*)" ("mad", "base", "angry", "R", ypos="base", xpos="base", flip=True, trans=d3) @@ -98,10 +109,9 @@ label end_hg_pr_kiss: label .quick_end: # Increase Points - if not hg_pr_kiss.is_tier_complete(): + if not _events_filtered_completed_all: $ states.her.public_level += 1 - $ hg_pr_kiss.inProgress = False jump end_hermione_event label hg_pr_kiss_intro: @@ -111,7 +121,7 @@ label hg_pr_kiss_intro: gen "Did you succeed in completing your task?" ("base", xpos="far_left", ypos="head") her "*Ehm*..." - if hg_pr_kiss.is_tier_complete(): + if _events_filtered_completed_all: menu: "\"Great. Here are your points.\"": jump end_hg_pr_kiss @@ -121,7 +131,7 @@ label hg_pr_kiss_intro: stop music fadeout 3.0 - if hg_pr_kiss.counter == 1: + if not _events_completed_any: her "......" ("soft", "squint", "base", "R") her "Well... I..." ("soft", "base", "base", "R") gen "Don't be shy, [name_hermione_genie]." ("base", xpos="far_left", ypos="head") @@ -163,6 +173,8 @@ label hg_pr_kiss_T3_E1: gen "You are not getting paid, you know that, right?" ("base", xpos="far_left", ypos="head") her "I don't care..." ("scream", "closed", "angry", "mid") + $ states.her.mood += 5 + jump end_hg_pr_kiss.no_points label hg_pr_kiss_T3_E2: diff --git a/game/scripts/characters/hermione/events/requests/let_them_grope_you.rpy b/game/scripts/characters/hermione/events/requests/let_them_grope_you.rpy index 99480481..c4e3e46a 100644 --- a/game/scripts/characters/hermione/events/requests/let_them_grope_you.rpy +++ b/game/scripts/characters/hermione/events/requests/let_them_grope_you.rpy @@ -1,26 +1,33 @@ ### Let Classmate Molest Her ### -label hg_pr_grope: +label start_hg_pr_grope: # Setup $ current_payout = 25 - if hg_pr_grope.counter == 0: + if not _events_completed_any: gen "{size=-4}(Tell her to go get groped by one of her classmates?){/size}" ("base", xpos="far_left", ypos="head") menu: "\"(Yes, let's do it!)\"": pass "\"(Not right now.)\"": + $ _event.cancel() jump hermione_favor_menu + return + +label hg_pr_grope: + + call start_hg_pr_grope + her "" (xpos="mid", ypos="base", trans=fade) gen "[name_hermione_genie]?" ("base", xpos="far_left", ypos="head") her "[name_genie_hermione]?" ("base", "base", "base", "mid") #Intro. - if hg_pr_grope.counter == 0: + if not _events_completed_any: gen "You do like boys your age, don't you?" ("base", xpos="far_left", ypos="head") her "...?" ("normal", "base", "base", "mid") gen "One of your classmates maybe?" ("base", xpos="far_left", ypos="head") @@ -34,6 +41,7 @@ label hg_pr_grope: gen "And let them touch you..." ("base", xpos="far_left", ypos="head") if states.her.public_level < 3: + $ _event.cancel() jump too_much_public her "Let them... Touch me, [name_genie_hermione]?" ("open", "base", "base", "mid") @@ -92,9 +100,13 @@ label hg_pr_grope: call her_walk(action="leave") - $ hg_pr_grope.inProgress = True jump end_hermione_event +label hg_pr_grope_fail: + call start_hg_pr_grope + + jump too_much + label end_hg_pr_grope: $ gryffindor += current_payout @@ -107,7 +119,7 @@ label end_hg_pr_grope: pause.2 # Inner monologue - if hg_pr_grope.counter == 1: + if not _events_completed_any: her "(Why did I agree to this...)" ("disgust", "base", "worried", "down", ypos="base", xpos="base", flip=True, trans=d3) @@ -118,10 +130,9 @@ label end_hg_pr_grope: $ states.her.status.public_groping = True # Increase Points - if not hg_pr_grope.is_tier_complete(): + if not _events_filtered_completed_all: $ states.her.public_level += 1 - $ hg_pr_grope.inProgress = False jump end_hermione_event label hg_pr_grope_intro: @@ -131,7 +142,7 @@ label hg_pr_grope_intro: gen "Did you finish your task?" ("base", xpos="far_left", ypos="head") her "I did, just as you asked [name_genie_hermione]..." ("open", "base", "base", "mid", xpos="mid", ypos="base", trans=fade) - if hg_pr_grope.is_tier_complete(): + if _events_filtered_completed_all: menu: "\"Great. Here are your points.\"": jump end_hg_pr_grope @@ -141,7 +152,7 @@ label hg_pr_grope_intro: stop music fadeout 3.0 - if hg_pr_grope.counter == 1: + if not _events_completed_any: her "......" ("annoyed", "narrow", "angry", "R") her "I... *Uhh*..." ("soft", "base", "base", "R") diff --git a/game/scripts/characters/hermione/requests.rpy b/game/scripts/characters/hermione/requests.rpy index 747ec77c..2319c9fd 100644 --- a/game/scripts/characters/hermione/requests.rpy +++ b/game/scripts/characters/hermione/requests.rpy @@ -1,188 +1,159 @@ # Public requests -default hg_pr_flirt = event_class(title = "Flirt with students!", start_label = "hg_pr_flirt", start_tier = 1, events = [ - [ - ["hg_pr_flirt_T1_E1"], - ["hg_pr_flirt_T1_E2"], - ["hg_pr_flirt_T1_E3"] - ], +default her_ev_flirt_students_t1_e1 = Event(id="flirt_students_t1_e1", label="hg_pr_flirt_T1_E1", req="game.daytime == False") +default her_ev_flirt_students_t1_e2 = Event(id="flirt_students_t1_e2", label="hg_pr_flirt_T1_E2", req="game.daytime == False") +default her_ev_flirt_students_t1_e3 = Event(id="flirt_students_t1_e3", label="hg_pr_flirt_T1_E3", req="game.daytime == False") +default her_ev_flirt_students_t2_e1 = Event(id="flirt_students_t2_e1", label="hg_pr_flirt_T2_E1", req="game.daytime == False") +default her_ev_flirt_students_t2_e2 = Event(id="flirt_students_t2_e2", label="hg_pr_flirt_T2_E2", req="game.daytime == False") +default her_ev_flirt_students_t2_e3 = Event(id="flirt_students_t2_e3", label="hg_pr_flirt_T2_E3", req="game.daytime == False") +default her_ev_flirt_students_t3_e1 = Event(id="flirt_students_t3_e1", label="hg_pr_flirt_T3_E1", req="game.daytime == False") +default her_ev_flirt_students_t3_e2 = Event(id="flirt_students_t3_e2", label="hg_pr_flirt_T3_E2", req="game.daytime == False") +default her_ev_flirt_students_t3_e3 = Event(id="flirt_students_t3_e3", label="hg_pr_flirt_T3_E3", req="game.daytime == False") - [ - ["hg_pr_flirt_T2_E1"], - ["hg_pr_flirt_T2_E2"], - ["hg_pr_flirt_T2_E3"] - ], +default her_ev_flirt_students_t1_e1_hub = Event(id="flirt_students_t1_e1_hub", label="hg_pr_flirt", req="states.her.tier == 1", autoenqueue=True, autodequeue=False, queue="her_eventqueue_flirt_students", subevents=["her_ev_flirt_students_t1_e1"]) +default her_ev_flirt_students_t1_e2_hub = Event(id="flirt_students_t1_e2_hub", label="hg_pr_flirt", req="states.her.tier == 1", autoenqueue=True, autodequeue=False, queue="her_eventqueue_flirt_students", subevents=["her_ev_flirt_students_t1_e2"]) +default her_ev_flirt_students_t1_e3_hub = Event(id="flirt_students_t1_e3_hub", label="hg_pr_flirt", req="states.her.tier == 1", autoenqueue=True, autodequeue=False, queue="her_eventqueue_flirt_students", subevents=["her_ev_flirt_students_t1_e3"]) +default her_ev_flirt_students_t2_e1_hub = Event(id="flirt_students_t2_e1_hub", label="hg_pr_flirt", req="states.her.tier == 2", autoenqueue=True, autodequeue=False, queue="her_eventqueue_flirt_students", subevents=["her_ev_flirt_students_t2_e1"]) +default her_ev_flirt_students_t2_e2_hub = Event(id="flirt_students_t2_e2_hub", label="hg_pr_flirt", req="states.her.tier == 2", autoenqueue=True, autodequeue=False, queue="her_eventqueue_flirt_students", subevents=["her_ev_flirt_students_t2_e2"]) +default her_ev_flirt_students_t2_e3_hub = Event(id="flirt_students_t2_e3_hub", label="hg_pr_flirt", req="states.her.tier == 2", autoenqueue=True, autodequeue=False, queue="her_eventqueue_flirt_students", subevents=["her_ev_flirt_students_t2_e3"]) +default her_ev_flirt_students_t3_e1_hub = Event(id="flirt_students_t3_e1_hub", label="hg_pr_flirt", req="states.her.tier >= 3", autoenqueue=True, autodequeue=False, queue="her_eventqueue_flirt_students", subevents=["her_ev_flirt_students_t3_e1"]) +default her_ev_flirt_students_t3_e2_hub = Event(id="flirt_students_t3_e2_hub", label="hg_pr_flirt", req="states.her.tier >= 3", autoenqueue=True, autodequeue=False, queue="her_eventqueue_flirt_students", subevents=["her_ev_flirt_students_t3_e2"]) +default her_ev_flirt_students_t3_e3_hub = Event(id="flirt_students_t3_e3_hub", label="hg_pr_flirt", req="states.her.tier >= 3", autoenqueue=True, autodequeue=False, queue="her_eventqueue_flirt_students", subevents=["her_ev_flirt_students_t3_e3"]) - [ - ["hg_pr_flirt_T3_E1"], - ["hg_pr_flirt_T3_E2"], - ["hg_pr_flirt_T3_E3"] - ] +default her_ev_flirt_teachers_t1_e1 = Event(id="flirt_teachers_t1_e1", label="hg_pr_flirt_teacher_T1_E1", req="game.daytime == False") +default her_ev_flirt_teachers_t1_e2 = Event(id="flirt_teachers_t1_e2", label="hg_pr_flirt_teacher_T1_E2", req="game.daytime == False") +default her_ev_flirt_teachers_t1_e3 = Event(id="flirt_teachers_t1_e3", label="hg_pr_flirt_teacher_T1_E3", req="game.daytime == False") +default her_ev_flirt_teachers_t2_e1 = Event(id="flirt_teachers_t2_e1", label="hg_pr_flirt_teacher_T2_E1", req="game.daytime == False") +default her_ev_flirt_teachers_t2_e2 = Event(id="flirt_teachers_t2_e2", label="hg_pr_flirt_teacher_T2_E2", req="game.daytime == False") +default her_ev_flirt_teachers_t2_e3 = Event(id="flirt_teachers_t2_e3", label="hg_pr_flirt_teacher_T2_E3", req="game.daytime == False") +default her_ev_flirt_teachers_t3_e1 = Event(id="flirt_teachers_t3_e1", label="hg_pr_flirt_teacher_T3_E1", req="game.daytime == False") +default her_ev_flirt_teachers_t3_e2 = Event(id="flirt_teachers_t3_e2", label="hg_pr_flirt_teacher_T3_E2", req="game.daytime == False") +default her_ev_flirt_teachers_t3_e3 = Event(id="flirt_teachers_t3_e3", label="hg_pr_flirt_teacher_T3_E3", req="game.daytime == False") - ], - icons = [None, None, None], # If a tier doesn't need an icon replace with None - iconset = [["star_empty", "star_yellow"], ["star_empty", "star_yellow"], ["star_empty", "star_yellow"]] - ) +default her_ev_flirt_teachers_t1_e1_hub = Event(id="flirt_teachers_t1_e1_hub", label="hg_pr_flirt_teacher", req="states.her.tier == 1", autoenqueue=True, autodequeue=False, queue="her_eventqueue_flirt_teachers", subevents=["her_ev_flirt_teachers_t1_e1"]) +default her_ev_flirt_teachers_t1_e2_hub = Event(id="flirt_teachers_t1_e2_hub", label="hg_pr_flirt_teacher", req="states.her.tier == 1", autoenqueue=True, autodequeue=False, queue="her_eventqueue_flirt_teachers", subevents=["her_ev_flirt_teachers_t1_e2"]) +default her_ev_flirt_teachers_t1_e3_hub = Event(id="flirt_teachers_t1_e3_hub", label="hg_pr_flirt_teacher", req="states.her.tier == 1", autoenqueue=True, autodequeue=False, queue="her_eventqueue_flirt_teachers", subevents=["her_ev_flirt_teachers_t1_e3"]) +default her_ev_flirt_teachers_t2_e1_hub = Event(id="flirt_teachers_t2_e1_hub", label="hg_pr_flirt_teacher", req="states.her.tier == 2", autoenqueue=True, autodequeue=False, queue="her_eventqueue_flirt_teachers", subevents=["her_ev_flirt_teachers_t2_e1"]) +default her_ev_flirt_teachers_t2_e2_hub = Event(id="flirt_teachers_t2_e2_hub", label="hg_pr_flirt_teacher", req="states.her.tier == 2", autoenqueue=True, autodequeue=False, queue="her_eventqueue_flirt_teachers", subevents=["her_ev_flirt_teachers_t2_e2"]) +default her_ev_flirt_teachers_t2_e3_hub = Event(id="flirt_teachers_t2_e3_hub", label="hg_pr_flirt_teacher", req="states.her.tier == 2", autoenqueue=True, autodequeue=False, queue="her_eventqueue_flirt_teachers", subevents=["her_ev_flirt_teachers_t2_e3"]) +default her_ev_flirt_teachers_t3_e1_hub = Event(id="flirt_teachers_t3_e1_hub", label="hg_pr_flirt_teacher", req="states.her.tier >= 3", autoenqueue=True, autodequeue=False, queue="her_eventqueue_flirt_teachers", subevents=["her_ev_flirt_teachers_t3_e1"]) +default her_ev_flirt_teachers_t3_e2_hub = Event(id="flirt_teachers_t3_e2_hub", label="hg_pr_flirt_teacher", req="states.her.tier >= 3", autoenqueue=True, autodequeue=False, queue="her_eventqueue_flirt_teachers", subevents=["her_ev_flirt_teachers_t3_e2"]) +default her_ev_flirt_teachers_t3_e3_hub = Event(id="flirt_teachers_t3_e3_hub", label="hg_pr_flirt_teacher", req="states.her.tier >= 3", autoenqueue=True, autodequeue=False, queue="her_eventqueue_flirt_teachers", subevents=["her_ev_flirt_teachers_t3_e3"]) -default hg_pr_flirt_teacher = event_class(title = "Flirt with teachers!", start_label = "hg_pr_flirt_teacher", start_tier = 1, events = [ - [ - ["hg_pr_flirt_teacher_T1_E1"], - ["hg_pr_flirt_teacher_T1_E2"], - ["hg_pr_flirt_teacher_T1_E3"] - ], +default her_ev_grope_public_t2_e1 = Event(id="grope_public_t2_e1", label="hg_pr_grope_T2_E1", req="game.daytime == False") +default her_ev_grope_public_t2_e2 = Event(id="grope_public_t2_e2", label="hg_pr_grope_T2_E2", req="game.daytime == False") +default her_ev_grope_public_t2_e3 = Event(id="grope_public_t2_e3", label="hg_pr_grope_T2_E3", req="game.daytime == False") +default her_ev_grope_public_t3_e1 = Event(id="grope_public_t3_e1", label="hg_pr_grope_T3_E1", req="game.daytime == False") +default her_ev_grope_public_t3_e2 = Event(id="grope_public_t3_e2", label="hg_pr_grope_T3_E2", req="game.daytime == False") +default her_ev_grope_public_t3_e3 = Event(id="grope_public_t3_e3", label="hg_pr_grope_T3_E3", req="game.daytime == False") +default her_ev_grope_public_t4_e1 = Event(id="grope_public_t4_e1", label="hg_pr_grope_T4_E1", req="game.daytime == False") +default her_ev_grope_public_t4_e2 = Event(id="grope_public_t4_e2", label="hg_pr_grope_T4_E2", req="game.daytime == False") +default her_ev_grope_public_t4_e3 = Event(id="grope_public_t4_e3", label="hg_pr_grope_T4_E3", req="game.daytime == False") - [ - ["hg_pr_flirt_teacher_T2_E1"], - ["hg_pr_flirt_teacher_T2_E2"], - ["hg_pr_flirt_teacher_T2_E3"] - ], +default her_ev_grope_public_t1_e1_hub = Event(id="grope_public_t1_e1_hub", label="hg_pr_grope_fail", req="states.her.tier == 1", autoenqueue=True, autodequeue=False, queue="her_eventqueue_grope_public") +default her_ev_grope_public_t2_e1_hub = Event(id="grope_public_t2_e1_hub", label="hg_pr_grope", req="states.her.tier == 2", autoenqueue=True, autodequeue=False, queue="her_eventqueue_grope_public", subevents=["her_ev_grope_public_t2_e1"]) +default her_ev_grope_public_t2_e2_hub = Event(id="grope_public_t2_e2_hub", label="hg_pr_grope", req="states.her.tier == 2", autoenqueue=True, autodequeue=False, queue="her_eventqueue_grope_public", subevents=["her_ev_grope_public_t2_e2"]) +default her_ev_grope_public_t2_e3_hub = Event(id="grope_public_t2_e3_hub", label="hg_pr_grope", req="states.her.tier == 2", autoenqueue=True, autodequeue=False, queue="her_eventqueue_grope_public", subevents=["her_ev_grope_public_t2_e3"]) +default her_ev_grope_public_t3_e1_hub = Event(id="grope_public_t3_e1_hub", label="hg_pr_grope", req="states.her.tier == 3", autoenqueue=True, autodequeue=False, queue="her_eventqueue_grope_public", subevents=["her_ev_grope_public_t3_e1"]) +default her_ev_grope_public_t3_e2_hub = Event(id="grope_public_t3_e2_hub", label="hg_pr_grope", req="states.her.tier == 3", autoenqueue=True, autodequeue=False, queue="her_eventqueue_grope_public", subevents=["her_ev_grope_public_t3_e2"]) +default her_ev_grope_public_t3_e3_hub = Event(id="grope_public_t3_e3_hub", label="hg_pr_grope", req="states.her.tier == 3", autoenqueue=True, autodequeue=False, queue="her_eventqueue_grope_public", subevents=["her_ev_grope_public_t3_e3"]) +default her_ev_grope_public_t4_e1_hub = Event(id="grope_public_t4_e1_hub", label="hg_pr_grope", req="states.her.tier >= 4", autoenqueue=True, autodequeue=False, queue="her_eventqueue_grope_public", subevents=["her_ev_grope_public_t4_e1"]) +default her_ev_grope_public_t4_e2_hub = Event(id="grope_public_t4_e2_hub", label="hg_pr_grope", req="states.her.tier >= 4", autoenqueue=True, autodequeue=False, queue="her_eventqueue_grope_public", subevents=["her_ev_grope_public_t4_e2"]) +default her_ev_grope_public_t4_e3_hub = Event(id="grope_public_t4_e3_hub", label="hg_pr_grope", req="states.her.tier >= 4", autoenqueue=True, autodequeue=False, queue="her_eventqueue_grope_public", subevents=["her_ev_grope_public_t4_e3"]) - [ - ["hg_pr_flirt_teacher_T3_E1"], - ["hg_pr_flirt_teacher_T3_E2"], - ["hg_pr_flirt_teacher_T3_E3"] - ] +default her_ev_flash_public_t3_e1 = Event(id="flash_public_t3_e1", label="hg_pr_flash_T3_E1", req="game.daytime == False") +default her_ev_flash_public_t3_e2 = Event(id="flash_public_t3_e2", label="hg_pr_flash_T3_E2", req="game.daytime == False") +default her_ev_flash_public_t3_e3 = Event(id="flash_public_t3_e3", label="hg_pr_flash_T3_E3", req="game.daytime == False") +default her_ev_flash_public_t4_e1 = Event(id="flash_public_t4_e1", label="hg_pr_flash_T4_E1", req="game.daytime == False") +default her_ev_flash_public_t4_e2 = Event(id="flash_public_t4_e2", label="hg_pr_flash_T4_E2", req="game.daytime == False") +default her_ev_flash_public_t4_e3 = Event(id="flash_public_t4_e3", label="hg_pr_flash_T4_E3", req="game.daytime == False") +default her_ev_flash_public_t5_e1 = Event(id="flash_public_t5_e1", label="hg_pr_flash_T5_E1", req="game.daytime == False") +default her_ev_flash_public_t5_e2 = Event(id="flash_public_t5_e2", label="hg_pr_flash_T5_E2", req="game.daytime == False") +default her_ev_flash_public_t5_e3 = Event(id="flash_public_t5_e3", label="hg_pr_flash_T5_E3", req="game.daytime == False") - ], - icons = [None, None, None], # If a tier doesn't need an icon replace with None - iconset = [["star_empty", "star_yellow"], ["star_empty", "star_yellow"], ["star_empty", "star_yellow"]] - ) +default her_ev_flash_public_t1_to_t3 = Event(id="flash_public_t1_to_t3", label="hg_pr_flash_fail", req="states.her.tier < 3", autoenqueue=True, autodequeue=False, queue="her_eventqueue_flash_public") +default her_ev_flash_public_t3_e1_hub = Event(id="flash_public_t3_e1_hub", label="hg_pr_flash", req="states.her.tier == 3", autoenqueue=True, autodequeue=False, queue="her_eventqueue_flash_public", subevents=["her_ev_flash_public_t3_e1"]) +default her_ev_flash_public_t3_e2_hub = Event(id="flash_public_t3_e2_hub", label="hg_pr_flash", req="states.her.tier == 3", autoenqueue=True, autodequeue=False, queue="her_eventqueue_flash_public", subevents=["her_ev_flash_public_t3_e2"]) +default her_ev_flash_public_t3_e3_hub = Event(id="flash_public_t3_e3_hub", label="hg_pr_flash", req="states.her.tier == 3", autoenqueue=True, autodequeue=False, queue="her_eventqueue_flash_public", subevents=["her_ev_flash_public_t3_e3"]) +default her_ev_flash_public_t4_e1_hub = Event(id="flash_public_t4_e1_hub", label="hg_pr_flash", req="states.her.tier == 4", autoenqueue=True, autodequeue=False, queue="her_eventqueue_flash_public", subevents=["her_ev_flash_public_t4_e1"]) +default her_ev_flash_public_t4_e2_hub = Event(id="flash_public_t4_e2_hub", label="hg_pr_flash", req="states.her.tier == 4", autoenqueue=True, autodequeue=False, queue="her_eventqueue_flash_public", subevents=["her_ev_flash_public_t4_e2"]) +default her_ev_flash_public_t4_e3_hub = Event(id="flash_public_t4_e3_hub", label="hg_pr_flash", req="states.her.tier == 4", autoenqueue=True, autodequeue=False, queue="her_eventqueue_flash_public", subevents=["her_ev_flash_public_t4_e3"]) +default her_ev_flash_public_t5_e1_hub = Event(id="flash_public_t5_e1_hub", label="hg_pr_flash", req="states.her.tier >= 5", autoenqueue=True, autodequeue=False, queue="her_eventqueue_flash_public", subevents=["her_ev_flash_public_t5_e1"]) +default her_ev_flash_public_t5_e2_hub = Event(id="flash_public_t5_e2_hub", label="hg_pr_flash", req="states.her.tier >= 5", autoenqueue=True, autodequeue=False, queue="her_eventqueue_flash_public", subevents=["her_ev_flash_public_t5_e2"]) +default her_ev_flash_public_t5_e3_hub = Event(id="flash_public_t5_e3_hub", label="hg_pr_flash", req="states.her.tier >= 5", autoenqueue=True, autodequeue=False, queue="her_eventqueue_flash_public", subevents=["her_ev_flash_public_t5_e3"]) -default hg_pr_grope = event_class(title = "Let them grope you!", start_label = "hg_pr_grope", start_tier = 2, events = [ - [ - ["hg_pr_grope_T2_E1"], - ["hg_pr_grope_T2_E2"], - ["hg_pr_grope_T2_E3"] - ], +default her_ev_kiss_public_t3_e1 = Event(id="kiss_public_t3_e1", label="hg_pr_kiss_T3_E1", req="game.daytime==False") +default her_ev_kiss_public_t3_e2 = Event(id="kiss_public_t3_e2", label="hg_pr_kiss_T3_E2", req="game.daytime==False") +default her_ev_kiss_public_t3_e3 = Event(id="kiss_public_t3_e3", label="hg_pr_kiss_T3_E3", req="game.daytime==False") +default her_ev_kiss_public_t4_e1 = Event(id="kiss_public_t4_e1", label="hg_pr_kiss_T4_E1", req="game.daytime==False") +default her_ev_kiss_public_t4_e2 = Event(id="kiss_public_t4_e2", label="hg_pr_kiss_T4_E2", req="game.daytime==False") +default her_ev_kiss_public_t4_e3 = Event(id="kiss_public_t4_e3", label="hg_pr_kiss_T4_E3", req="game.daytime==False") +default her_ev_kiss_public_t5_e1 = Event(id="kiss_public_t5_e1", label="hg_pr_kiss_T5_E1", req="game.daytime==False") +default her_ev_kiss_public_t5_e2 = Event(id="kiss_public_t5_e2", label="hg_pr_kiss_T5_E2", req="game.daytime==False") - [ - ["hg_pr_grope_T3_E1"], - ["hg_pr_grope_T3_E2"], - ["hg_pr_grope_T3_E3"] - ], +default her_ev_kiss_public_t1_to_t3 = Event(id="kiss_public_t1_to_t3", label="hg_pr_kiss_fail", req="states.her.tier < 3", autoenqueue=True, autodequeue=False, queue="her_eventqueue_kiss_public") +default her_ev_kiss_public_t3_e1_hub = Event(id="kiss_public_t3_e1_hub", label="hg_pr_kiss", req="states.her.tier == 3", autoenqueue=True, autodequeue=False, queue="her_eventqueue_kiss_public", subevents=["her_ev_kiss_public_t3_e1"]) +default her_ev_kiss_public_t3_e2_hub = Event(id="kiss_public_t3_e2_hub", label="hg_pr_kiss", req="states.her.tier == 3", autoenqueue=True, autodequeue=False, queue="her_eventqueue_kiss_public", subevents=["her_ev_kiss_public_t3_e2"]) +default her_ev_kiss_public_t3_e3_hub = Event(id="kiss_public_t3_e3_hub", label="hg_pr_kiss", req="states.her.tier == 3", autoenqueue=True, autodequeue=False, queue="her_eventqueue_kiss_public", subevents=["her_ev_kiss_public_t3_e3"]) +default her_ev_kiss_public_t4_e1_hub = Event(id="kiss_public_t4_e1_hub", label="hg_pr_kiss", req="states.her.tier == 4", autoenqueue=True, autodequeue=False, queue="her_eventqueue_kiss_public", subevents=["her_ev_kiss_public_t4_e1"]) +default her_ev_kiss_public_t4_e2_hub = Event(id="kiss_public_t4_e2_hub", label="hg_pr_kiss", req="states.her.tier == 4", autoenqueue=True, autodequeue=False, queue="her_eventqueue_kiss_public", subevents=["her_ev_kiss_public_t4_e2"]) +default her_ev_kiss_public_t4_e3_hub = Event(id="kiss_public_t4_e3_hub", label="hg_pr_kiss", req="states.her.tier == 4", autoenqueue=True, autodequeue=False, queue="her_eventqueue_kiss_public", subevents=["her_ev_kiss_public_t4_e3"]) +default her_ev_kiss_public_t5_e1_hub = Event(id="kiss_public_t5_e1_hub", label="hg_pr_kiss", req="states.her.tier >= 5", autoenqueue=True, autodequeue=False, queue="her_eventqueue_kiss_public", subevents=["her_ev_kiss_public_t5_e1"]) +default her_ev_kiss_public_t5_e2_hub = Event(id="kiss_public_t5_e2_hub", label="hg_pr_kiss", req="states.her.tier >= 5", autoenqueue=True, autodequeue=False, queue="her_eventqueue_kiss_public", subevents=["her_ev_kiss_public_t5_e2"]) - [ - ["hg_pr_grope_T4_E1"], - ["hg_pr_grope_T4_E2"], - ["hg_pr_grope_T4_E3"] - ] +default her_ev_handjob_public_t4_e1 = Event(id="handjob_public_t4_e1", label="hg_pr_handjob_T4_E1", req="game.daytime==False") +default her_ev_handjob_public_t4_e2 = Event(id="handjob_public_t4_e2", label="hg_pr_handjob_T4_E2", req="game.daytime==False") +default her_ev_handjob_public_t4_e3 = Event(id="handjob_public_t4_e3", label="hg_pr_handjob_T4_E3", req="game.daytime==False") +default her_ev_handjob_public_t5_e1 = Event(id="handjob_public_t5_e1", label="hg_pr_handjob_T5_E1", req="game.daytime==False") +default her_ev_handjob_public_t5_e2 = Event(id="handjob_public_t5_e2", label="hg_pr_handjob_T5_E2", req="game.daytime==False") +default her_ev_handjob_public_t5_e3 = Event(id="handjob_public_t5_e3", label="hg_pr_handjob_T5_E3", req="game.daytime==False") +default her_ev_handjob_public_t6_e1 = Event(id="handjob_public_t6_e1", label="hg_pr_handjob_T6_intro_E1", req="game.daytime==False") +default her_ev_handjob_public_t6_e2 = Event(id="handjob_public_t6_e2", label="hg_pr_handjob_T6_E2", req="game.daytime==False") +default her_ev_handjob_public_t6_e3 = Event(id="handjob_public_t6_e3", label="hg_pr_handjob_T6_E3", req="game.daytime==False") - ], - icons = [None, None, None], # If a tier doesn't need an icon replace with None - iconset = [["star_empty", "star_yellow"], ["star_empty", "star_yellow"], ["star_empty", "star_yellow"]] - ) +default her_ev_handjob_public_t1_to_t4 = Event(id="handjob_public_t1_to_t4", label="hg_pr_handjob_fail", req="states.her.tier < 4", autoenqueue=True, autodequeue=False, queue="her_eventqueue_handjob_public") +default her_ev_handjob_public_t4_e1_hub = Event(id="handjob_public_t4_e1_hub", label="hg_pr_handjob", req="states.her.tier == 4", autoenqueue=True, autodequeue=False, queue="her_eventqueue_handjob_public", subevents=["her_ev_handjob_public_t4_e1"]) +default her_ev_handjob_public_t4_e2_hub = Event(id="handjob_public_t4_e2_hub", label="hg_pr_handjob", req="states.her.tier == 4", autoenqueue=True, autodequeue=False, queue="her_eventqueue_handjob_public", subevents=["her_ev_handjob_public_t4_e2"]) +default her_ev_handjob_public_t4_e3_hub = Event(id="handjob_public_t4_e3_hub", label="hg_pr_handjob", req="states.her.tier == 4", autoenqueue=True, autodequeue=False, queue="her_eventqueue_handjob_public", subevents=["her_ev_handjob_public_t4_e3"]) +default her_ev_handjob_public_t5_e1_hub = Event(id="handjob_public_t5_e1_hub", label="hg_pr_handjob", req="states.her.tier == 5", autoenqueue=True, autodequeue=False, queue="her_eventqueue_handjob_public", subevents=["her_ev_handjob_public_t5_e1"]) +default her_ev_handjob_public_t5_e2_hub = Event(id="handjob_public_t5_e2_hub", label="hg_pr_handjob", req="states.her.tier == 5", autoenqueue=True, autodequeue=False, queue="her_eventqueue_handjob_public", subevents=["her_ev_handjob_public_t5_e2"]) +default her_ev_handjob_public_t5_e3_hub = Event(id="handjob_public_t5_e3_hub", label="hg_pr_handjob", req="states.her.tier == 5", autoenqueue=True, autodequeue=False, queue="her_eventqueue_handjob_public", subevents=["her_ev_handjob_public_t5_e3"]) +default her_ev_handjob_public_t6_e1_hub = Event(id="handjob_public_t6_e1_hub", label="hg_pr_handjob", req="states.her.tier >= 6", autoenqueue=True, autodequeue=False, queue="her_eventqueue_handjob_public", repeat=False, subevents=["her_ev_handjob_public_t6_e1"]) +default her_ev_handjob_public_t6_e2_hub = Event(id="handjob_public_t6_e2_hub", label="hg_pr_handjob", req="states.her.tier >= 6", autoenqueue=True, autodequeue=False, queue="her_eventqueue_handjob_public", subevents=["her_ev_handjob_public_t6_e2"]) +default her_ev_handjob_public_t6_e3_hub = Event(id="handjob_public_t6_e3_hub", label="hg_pr_handjob", req="states.her.tier >= 6", autoenqueue=True, autodequeue=False, queue="her_eventqueue_handjob_public", subevents=["her_ev_handjob_public_t6_e3"]) -default hg_pr_flash = event_class(title = "Flash your tits!", start_label = "hg_pr_flash", start_tier = 3, events = [ - [ - ["hg_pr_flash_T3_E1"], - ["hg_pr_flash_T3_E2"], - ["hg_pr_flash_T3_E3"] - ], +default her_ev_blowjob_public_t5_e1 = Event(id="blowjob_public_t5_e1", label="hg_pr_blowjob_T5_E1", req="game.daytime==False") +default her_ev_blowjob_public_t5_e2 = Event(id="blowjob_public_t5_e2", label="hg_pr_blowjob_T5_E2", req="game.daytime==False") +default her_ev_blowjob_public_t5_e3 = Event(id="blowjob_public_t5_e3", label="hg_pr_blowjob_T5_E3", req="game.daytime==False") +default her_ev_blowjob_public_t6_e1 = Event(id="blowjob_public_t6_e1", label="hg_pr_blowjob_T6_intro_E1", req="game.daytime==False") +default her_ev_blowjob_public_t6_e2 = Event(id="blowjob_public_t6_e2", label="hg_pr_blowjob_T6_E2", req="game.daytime==False") +default her_ev_blowjob_public_t6_e3 = Event(id="blowjob_public_t6_e3", label="hg_pr_blowjob_T6_E3", req="game.daytime==False") - [ - ["hg_pr_flash_T4_E1"], - ["hg_pr_flash_T4_E2"], - ["hg_pr_flash_T4_E3"] - ], +default her_ev_blowjob_public_t1_to_t5 = Event(id="blowjob_public_t1_to_t5", label="hg_pr_blowjob_fail", req="states.her.tier < 5", autoenqueue=True, autodequeue=False, queue="her_eventqueue_blowjob_public") +default her_ev_blowjob_public_t5_e1_hub = Event(id="blowjob_public_t5_e1_hub", label="hg_pr_blowjob", req="states.her.tier == 5", autoenqueue=True, autodequeue=False, queue="her_eventqueue_blowjob_public", subevents=["her_ev_handjob_public_t5_e1"]) +default her_ev_blowjob_public_t5_e2_hub = Event(id="blowjob_public_t5_e2_hub", label="hg_pr_blowjob", req="states.her.tier == 5", autoenqueue=True, autodequeue=False, queue="her_eventqueue_blowjob_public", subevents=["her_ev_handjob_public_t5_e2"]) +default her_ev_blowjob_public_t5_e3_hub = Event(id="blowjob_public_t5_e3_hub", label="hg_pr_blowjob", req="states.her.tier == 5", autoenqueue=True, autodequeue=False, queue="her_eventqueue_blowjob_public", subevents=["her_ev_handjob_public_t5_e3"]) +default her_ev_blowjob_public_t6_e1_hub = Event(id="blowjob_public_t6_e1_hub", label="hg_pr_blowjob", req="states.her.tier >= 6", autoenqueue=True, autodequeue=False, queue="her_eventqueue_blowjob_public", subevents=["her_ev_handjob_public_t6_e1"]) +default her_ev_blowjob_public_t6_e2_hub = Event(id="blowjob_public_t6_e2_hub", label="hg_pr_blowjob", req="states.her.tier >= 6", autoenqueue=True, autodequeue=False, queue="her_eventqueue_blowjob_public", subevents=["her_ev_handjob_public_t6_e2"]) +default her_ev_blowjob_public_t6_e3_hub = Event(id="blowjob_public_t6_e3_hub", label="hg_pr_blowjob", req="states.her.tier >= 6", autoenqueue=True, autodequeue=False, queue="her_eventqueue_blowjob_public", subevents=["her_ev_handjob_public_t6_e3"]) - [ - ["hg_pr_flash_T5_E1"], - ["hg_pr_flash_T5_E2"], - ["hg_pr_flash_T5_E3"] - ] +default her_ev_sex_public_t6_e1 = Event(id="blowjob_public_t6_e1", label="hg_pr_sex_T6_intro_E1", req="game.daytime==False") +default her_ev_sex_public_t6_e2 = Event(id="blowjob_public_t6_e2", label="hg_pr_sex_T6_intro_E2", req="game.daytime==True", wait=1) +default her_ev_sex_public_t6_e3 = Event(id="blowjob_public_t6_e3", label="hg_pr_sex_T6_E3", req="game.daytime==False") +default her_ev_sex_public_t6_e4 = Event(id="blowjob_public_t6_e4", label="hg_pr_sex_T6_E4", req="game.daytime==False") - ], - icons = [None, None, None], # If a tier doesn't need an icon replace with None - iconset = [["star_empty", "star_yellow"], ["star_empty", "star_yellow"], ["star_empty", "star_yellow"]], - monologue_glass = False # Event specific - ) +default her_ev_sex_public_t1_to_t6 = Event(id="sex_public_t1_to_t6", label="hg_pr_sex_fail", req="states.her.tier < 6", autoenqueue=True, autodequeue=False, queue="her_eventqueue_sex_public") +default her_ev_sex_public_t6_e1_hub = Event(id="sex_public_t6_e1_hub", label="hg_pr_sex", req="states.her.tier >= 6", autoenqueue=True, autodequeue=False, repeat=False, queue="her_eventqueue_sex_public", subevents=["her_ev_sex_public_t6_e1", "her_ev_sex_public_t6_e2"]) +default her_ev_sex_public_t6_e2_hub = Event(id="sex_public_t6_e2_hub", label="hg_pr_sex", req="states.her.tier >= 6", autoenqueue=True, autodequeue=False, queue="her_eventqueue_sex_public", subevents=["her_ev_sex_public_t6_e3"]) +default her_ev_sex_public_t6_e3_hub = Event(id="sex_public_t6_e3_hub", label="hg_pr_sex", req="states.her.tier >= 6", autoenqueue=True, autodequeue=False, queue="her_eventqueue_sex_public", subevents=["her_ev_sex_public_t6_e4"]) -default hg_pr_kiss = event_class(title = "Kiss a girl!", start_label = "hg_pr_kiss", start_tier = 3, events = [ - [ - ["hg_pr_kiss_T3_E1"], - ["hg_pr_kiss_T3_E2"], - ["hg_pr_kiss_T3_E3"] - ], - - [ - ["hg_pr_kiss_T4_E1"], - ["hg_pr_kiss_T4_E2"], - ["hg_pr_kiss_T4_E3"] - ], - - [ - ["hg_pr_kiss_T5_E1"], - ["hg_pr_kiss_T5_E2"] - ] - - ], - icons = [None, None, None], # If a tier doesn't need an icon replace with None - iconset = [["star_empty", "star_yellow"], ["star_empty", "star_yellow"], ["star_empty", "star_yellow"]] - ) - -default hg_pr_handjob = event_class(title = "Give a handjob!", start_label = "hg_pr_handjob", start_tier = 4, events = [ - [ - ["hg_pr_handjob_T4_E1"], - ["hg_pr_handjob_T4_E2"], - ["hg_pr_handjob_T4_E3"] - ], - - [ - ["hg_pr_handjob_T5_E1"], - ["hg_pr_handjob_T5_E2"], - ["hg_pr_handjob_T5_E3"] - ], - - [ - ["hg_pr_handjob_T6_intro_E1"], # Ron - ["hg_pr_handjob_T6_E2"], - ["hg_pr_handjob_T6_E3"] # Ron & Harry - ] - - ], - icons = [None, None, None], # If a tier doesn't need an icon replace with None - iconset = [["star_empty", "star_yellow"], ["star_empty", "star_yellow"], ["star_empty", "star_yellow"]] - ) - -default hg_pr_blowjob = event_class(title = "Give a blowjob!", start_label = "hg_pr_blowjob", start_tier = 5, events = [ - [ - ["hg_pr_blowjob_T5_E1"], - ["hg_pr_blowjob_T5_E2"], - ["hg_pr_blowjob_T5_E3"] - ], - - [ - ["hg_pr_blowjob_T6_intro_E1"], # Ron & Harry - ["hg_pr_blowjob_T6_E2"], # Slytherin - ["hg_pr_blowjob_T6_E3"] # Restroom bukkake :O - ] - - ], - icons = [None, None], # If a tier doesn't need an icon replace with None - iconset = [["star_empty", "star_yellow"], ["star_empty", "star_yellow"]] - ) - - -default hg_pr_sex = event_class(title = "Have sex!", start_label = "hg_pr_sex", start_tier = 6, events = [ - [ - ["hg_pr_sex_T6_intro_E1"], - ["hg_pr_sex_T6_intro_E2"], - ["hg_pr_sex_T6_E3"], - ["hg_pr_sex_T6_E4"] - ] - - ], - icons = [None], # If a tier doesn't need an icon replace with None - iconset = [["star_empty", "star_yellow"]] - ) - -default hg_requests_list = [ - hg_pr_flirt, - hg_pr_flirt_teacher, - hg_pr_grope, - hg_pr_flash, - hg_pr_kiss, - hg_pr_handjob, - hg_pr_blowjob, - hg_pr_sex - ] +define hermione_requests = [ + "her_eventqueue_flirt_students", + "her_eventqueue_flirt_teachers", + "her_eventqueue_grope_public", + "her_eventqueue_flash_public", + "her_eventqueue_kiss_public", + "her_eventqueue_handjob_public", + "her_eventqueue_blowjob_public", + "her_eventqueue_sex_public" +] \ No newline at end of file diff --git a/game/scripts/characters/hermione/summon.rpy b/game/scripts/characters/hermione/summon.rpy index 903b2ca7..0d24d608 100644 --- a/game/scripts/characters/hermione/summon.rpy +++ b/game/scripts/characters/hermione/summon.rpy @@ -148,7 +148,6 @@ label hermione_level_up(tier=None): return label hermione_favor_menu: - call update_her_requests if not is_in_lead(gryffindor): @@ -189,30 +188,10 @@ label hermione_favor_menu: $ renpy.music.set_volume(1.0, 1.0) jump silver_requests_root - label .public: - python: - menu_choices = [] - for i in hg_requests_list: - if i in []: # Not in the game yet. - menu_choices.append(gui.menu_item("-Not available-", "na", style="disabled")) - elif i.start_tier > states.her.tier: - menu_choices.append(gui.menu_item("-Not Ready-", "vague", style="disabled")) - else: - menu_choices.append(i.get_menu_item()) + $ result = show_events_menu(hermione_requests) + $ result.start() - menu_choices.append(("-Never mind-", "nvm")) - result = renpy.display_menu(menu_choices) - - if result == "nvm": - jump silver_requests_root - elif result == "vague": - call favor_not_ready - jump .public - elif result == "na": - call not_available - jump .public - else: - $ renpy.jump(result) + jump hermione_favor_menu "-Public Shaming-" (icon="interface/icons/small/star_pink.webp", style="disabled") if not game.daytime: nar "Public Shaming events are available during the day only." @@ -324,13 +303,6 @@ label hermione_favor_menu: gen "(I guess another hangout with Snape is in order.)" ("base", xpos="far_left", ypos="head") jump hermione_requests -label update_her_requests: - python: - for i in hg_requests_list: - i.tier = states.her.tier - - return - label update_her_tier: python: if states.her.tier == 1 and states.her.level >= 3: diff --git a/game/scripts/characters/hermione/vars.rpy b/game/scripts/characters/hermione/vars.rpy index 0fe1905e..649227f6 100644 --- a/game/scripts/characters/hermione/vars.rpy +++ b/game/scripts/characters/hermione/vars.rpy @@ -122,6 +122,7 @@ default states.her.ev.potions.polyjuice_luna_drank = False default states.her.ev.potions.polyjuice_luna_nude = False default states.her.ev.maid.intro_complete = False default states.her.ev.talk_to_me.caught_masturbating = False +default states.her.ev.flirt_with_students.done_before = False default her_level_up = None # TODO: This var is used in an overly complicated manner, it should be removed once the issues are resolved. default current_job = None # TODO: Jobs should be using event class with enqueue feature instead. diff --git a/game/scripts/events/quests.rpy b/game/scripts/events/quests.rpy index 261afa44..d1877748 100644 --- a/game/scripts/events/quests.rpy +++ b/game/scripts/events/quests.rpy @@ -293,10 +293,6 @@ label quests: if states.her.level >= 18 and states.her.ev.yule_ball.e3_complete and not states.her.ev.yule_ball.e4_complete: # Hermione apologizes for the day (event) before. jump ball_quest_E4 - - if hg_pr_sex.is_event_complete(6, 1) and not hg_pr_sex.is_event_complete(6, 2): - # Hermione missed the debriefing - $ hg_pr_sex.start() else: if current_job == "maid": jump maid_responses @@ -310,10 +306,6 @@ label quests: jump hermione_helping_selling_cards python: - for i in hg_requests_list: - if i.inProgress: - i.start() - for i in hg_ps_list: #Call any public shaming event if it's in progress if i.inProgress: renpy.jump(i.complete_label) diff --git a/game/scripts/events/queue.rpy b/game/scripts/events/queue.rpy index a436f539..fe4b5855 100644 --- a/game/scripts/events/queue.rpy +++ b/game/scripts/events/queue.rpy @@ -157,7 +157,7 @@ init -1 python: if not "/00start.rpy" in caller_id[0]: # Ignore init - print(f"{rollback}Setting '{stdcol.GREEN}{id}{stdcol.END}' attribute '{stdcol.RED}{attr}{stdcol.END}' to '{stdcol.YELLOW}{value}{stdcol.END}' caller '{stdcol.BLUE}{caller_id}{stdcol.END}'...") + print(f"{rollback}Setting '{stdcol.GREEN}{id}{stdcol.END}.{stdcol.RED}{attr}{stdcol.END}={stdcol.YELLOW}{value}{stdcol.END}' caller '{stdcol.BLUE}{caller_id}{stdcol.END}'...") super().__setattr__(attr, value) @@ -250,7 +250,11 @@ init -1 python: return if label in self.ignore_labels: - # Postpone completing the event until end label returns + # Postpone completing the event until end label returns. + return + + if "." in label: + # Ignore local labels return # if _last_label_call == label: diff --git a/game/scripts/script.rpy b/game/scripts/script.rpy index 8957c0e7..65aa0cd1 100644 --- a/game/scripts/script.rpy +++ b/game/scripts/script.rpy @@ -80,6 +80,9 @@ label start_dev: states.paperwork_unlocked = True + store.states.lun.ev.intro.e1_complete = True + store.states.lun.ev.intro.e2_complete = True + for i in mirror.items: i.unlocked = True diff --git a/game/scripts/utility/devtools.rpy b/game/scripts/utility/devtools.rpy index 2f96aaa6..fb1102e2 100644 --- a/game/scripts/utility/devtools.rpy +++ b/game/scripts/utility/devtools.rpy @@ -14,6 +14,18 @@ init -999 python early: def get_renderer(): return "DirectX" if preferences.renderer == "angle2" else "OpenGL" + class stdcol: + PURPLE = '\033[1;35;48m' + CYAN = '\033[1;36;48m' + BOLD = '\033[1;37;48m' + BLUE = '\033[1;34;48m' + GREEN = '\033[1;32;48m' + YELLOW = '\033[1;33;48m' + RED = '\033[1;31;48m' + BLACK = '\033[1;30;48m' + UNDERLINE = '\033[4;37;48m' + END = '\033[1;37;0m' + if config.developer: # Debug @@ -125,18 +137,6 @@ init -2 python: print("\rCalculating whitespace... Done!") return False - class stdcol: - PURPLE = '\033[1;35;48m' - CYAN = '\033[1;36;48m' - BOLD = '\033[1;37;48m' - BLUE = '\033[1;34;48m' - GREEN = '\033[1;32;48m' - YELLOW = '\033[1;33;48m' - RED = '\033[1;31;48m' - BLACK = '\033[1;30;48m' - UNDERLINE = '\033[4;37;48m' - END = '\033[1;37;0m' - label missing_label(): $ renpy.choice_for_skipping() $ err_msg1 = systemerror[0]