Compare commits

...

46 Commits

Author SHA1 Message Date
LoafyLemon 8b127a25b4 Merge branch 'refs/heads/dev' 2024-04-08 15:53:40 +01:00
LoafyLemon e295fbb791 PixelateMask Shader 2024-04-08 15:48:23 +01:00
LoafyLemon 5c4ce667a5 Replace unneccesary eval 2024-04-03 12:38:48 +01:00
LoafyLemon 0dc071261b Unlock Luna's favours in developer skip 2024-04-02 16:31:14 +01:00
LoafyLemon 61da56b6c8 Partially revert #7ca17b7 (Breaks dev debug) 2024-04-02 16:21:13 +01:00
LoafyLemon 9aff807593 Bug fixes
* Fixed inconsistent spacing
* Fixed inconsistent state var access
2024-04-02 16:18:18 +01:00
LoafyLemon 908beae5d3 Maintain access convention within save compat 2024-04-02 14:19:59 +01:00
Gouvernathor d8751d73b9 Remove nonsense calls of getattr
(cherry picked from commit 7ca17b7ba7)
2024-04-02 13:53:55 +01:00
Gouvernathor 224194754f Avoid using unnecessary screens 2024-04-02 13:44:04 +01:00
Gouvernathor e3c5fb609d Avoid python statement
(cherry picked from commit 22348f0901)
2024-04-02 13:41:44 +01:00
Gouvernathor e04fd221dd Flag unreachable code
(cherry picked from commit 25820e002a)
2024-04-02 13:37:20 +01:00
Gouvernathor ef97c273db Linting dynamic
(cherry picked from commit 60244e258a)
2024-04-02 13:36:59 +01:00
LoafyLemon 2566ef665f Version bump 2024-03-31 21:20:39 +01:00
LoafyLemon 86f95fcfe4 Save compatibility bug fix
* Fix broken save state
2024-03-31 21:19:28 +01:00
LoafyLemon ffdb2ef6dc Update README 2024-03-31 21:19:00 +01:00
Johnny28 e50292c1e6 Minor fixes 2024-03-30 21:39:37 +01:00
LoafyLemon f06d33cd8d Bug fix, save compatibility
* Fixed zorder issue with Tonks' office outfit accessory
2024-03-30 20:11:56 +00:00
LoafyLemon b54a65a7ee Bug fix
* Fixed imported outfits not appearing in the list, until the category of the wardrobe is changed.
2024-03-30 19:47:54 +00:00
LoafyLemon e93aa18285 Bug fixes
* Fixed mixed paths in outfit import feature
* Fixed paths in outfit import feature
* Fixed missing imports
2024-03-30 19:20:46 +00:00
Gouvernathor 7164a782e7 Remove unused imports
(cherry picked from commit ec3483ae26)
2024-03-30 18:21:15 +00:00
Gouvernathor 7e4d4a6799 Fix
(cherry picked from commit 218d8c63d2)
2024-03-30 18:14:24 +00:00
Gouvernathor cd6de9aa8c Remove the last setattr on the store
benign in this case since the variable is builtin, but consistency and good practices

(cherry picked from commit 1d1d18ad1c)
2024-03-30 18:14:08 +00:00
Gouvernathor 1bd428a0d8 Avoid mutable objects in signature
(cherry picked from commit 31ebf9356a)
2024-03-30 18:13:10 +00:00
Gouvernathor 62cb39cd19 Default queues instead of using instanciation magic
(cherry picked from commit f7f0ecb566)
2024-03-30 18:13:03 +00:00
Gouvernathor fb7fc5300e hotfix
(cherry picked from commit 750d8dff4d)
2024-03-30 18:11:03 +00:00
Gouvernathor c5c04ff79e Convert existing cds using the new system
(cherry picked from commit 4770be5f1b)
2024-03-30 18:04:49 +00:00
Gouvernathor 6408942054 Exception type
(cherry picked from commit a048b0e3cc)
2024-03-30 18:02:15 +00:00
Gouvernathor ea59c387d2 Turn unnecessary class into namespace
(cherry picked from commit 34165c7b2b)
2024-03-30 18:02:08 +00:00
Gouvernathor 630ede144c Add dynamic statement
(cherry picked from commit e98680d123)
2024-03-30 18:01:56 +00:00
Gouvernathor b489b59545 Add decorator
(cherry picked from commit 8e80555393)
2024-03-30 18:00:08 +00:00
Gouvernathor 04a07328fe Cleanup
(cherry picked from commit 17ebf50170)
2024-03-30 17:59:58 +00:00
Gouvernathor 707e14e0cf fix
(cherry picked from commit 375b77b2ab)
2024-03-30 17:58:36 +00:00
Gouvernathor 7f71d15e70 Speedup dict accesses
nested dicts are حَرَام but due punishment will come at a later time

(cherry picked from commit ffc47109ed)
2024-03-30 17:58:30 +00:00
Gouvernathor af2142393f Remove another throwaway variable
(cherry picked from commit f39cebc06f)
2024-03-30 17:57:51 +00:00
Gouvernathor faba726a3d Avoid code duplication and using throwaway variables
(cherry picked from commit 66f8f5ab28)
2024-03-30 17:57:41 +00:00
Gouvernathor 36582d0f9c Final f-string batch
some uses of str.format remain, but converting them would be more trouble than it's worth

(cherry picked from commit f17cffa3ec)
2024-03-30 17:57:17 +00:00
Gouvernathor 068629d34d Warn about using reset_variables
(cherry picked from commit 04f76d2b54)
2024-03-30 17:55:40 +00:00
Gouvernathor a7a9fe2d9e A bunch more f-strings
I'm not done

(cherry picked from commit be88d0ed7e)
2024-03-30 17:55:26 +00:00
Gouvernathor d9f9454a03 Translation doesn't work like that
(cherry picked from commit 5fa2a0ff19)
2024-03-30 17:53:18 +00:00
Gouvernathor b62fbcb179 More f-strings
(cherry picked from commit 15b6025d39)
2024-03-30 17:53:07 +00:00
Gouvernathor 5659c4e4f4 Fix kwarg calls
(cherry picked from commit 489f43cd0b)
2024-03-30 17:52:59 +00:00
Gouvernathor cc6e76d154 Generalized use of f-strings
(cherry picked from commit fa0acdbfff)
2024-03-30 17:52:43 +00:00
Gouvernathor f673985bc3 Avoid shadowing the builtin
(cherry picked from commit e4d64839b8)
2024-03-30 17:52:17 +00:00
Gouvernathor 9182e5b750 Unnecessary formatting
(cherry picked from commit c816674c7c)
2024-03-30 17:51:34 +00:00
Gouvernathor 3ebb5c53f4 Factorize check
(cherry picked from commit 40be2ccf18)
2024-03-30 17:51:17 +00:00
LoafyLemon 01126edc4e Update README 2023-08-02 22:00:18 +01:00
74 changed files with 819 additions and 597 deletions

120
README.md

File diff suppressed because it is too large Load Diff

View File

@ -273,10 +273,10 @@ image ch_gen dick_out:
"characters/genie/chibis/jerk_off/dick_out.webp"
image ch_gen dick_out_normal:
"characters/genie/chibis/jerk_off/dick_out_normal.webp"
"characters/genie/chibis/jerk_off/dick_out_normal.webp"
image ch_gen dick_out_shocked:
"characters/genie/chibis/jerk_off/dick_out_shocked.webp"
"characters/genie/chibis/jerk_off/dick_out_shocked.webp"
# Masturbating while standing
#TODO Genie's standing jerk off chibis don't stand level with the others. Fix this and check/correct relevant events

File diff suppressed because it is too large Load Diff

View File

@ -82,12 +82,12 @@ init python:
child = getattr(self, layer)
if isinstance(child, ImageReference):
name = getattr(self, "_{}".format(layer))
attributes = renpy.get_attributes(name) or renpy.get_attributes("{}_{}".format(tag_prefix, layer))
name = getattr(self, f"_{layer}")
attributes = renpy.get_attributes(name) or renpy.get_attributes(f"{tag_prefix}_{layer}")
if attributes:
attributes = " ".join(attributes)
child = ImageReference("{} {}".format(name, attributes))
child = ImageReference(f"{name} {attributes}")
elif child.name != name:
child = ImageReference(name)
else:

View File

@ -6,12 +6,14 @@ default ast_ev_imperio_training_t1_e3 = Event(id="ast_ev_imperio_training_t1_e3"
default ast_ev_imperio_training_t1_e4 = Event(id="ast_ev_imperio_training_t1_e4", label="ag_st_imperio_E4", req="game.daytime==False")
default ast_ev_imperio_training_t1_e5 = Event(id="ast_ev_imperio_training_t1_e5", label="ag_st_imperio_E5", req="game.daytime==False")
default ast_eventqueue_imperio_training_tonks = EventQueue("ast_eventqueue_imperio_training_tonks")
default ast_ev_imperio_training_t1_e1_hub = Event(id="ast_ev_imperio_training_t1_e1_hub", label="ag_st_imperio", req="states.ast.tier >= 1", queue="ast_eventqueue_imperio_training_tonks", autoenqueue=True, autodequeue=False, subevents=["ast_ev_imperio_training_t1_e1"])
default ast_ev_imperio_training_t1_e2_hub = Event(id="ast_ev_imperio_training_t1_e2_hub", label="ag_st_imperio", req="states.ast.tier >= 1", queue="ast_eventqueue_imperio_training_tonks", autoenqueue=True, autodequeue=False, subevents=["ast_ev_imperio_training_t1_e2"])
default ast_ev_imperio_training_t1_e3_hub = Event(id="ast_ev_imperio_training_t1_e3_hub", label="ag_st_imperio", req="states.ast.tier >= 1", queue="ast_eventqueue_imperio_training_tonks", autoenqueue=True, autodequeue=False, subevents=["ast_ev_imperio_training_t1_e3"])
default ast_ev_imperio_training_t1_e4_hub = Event(id="ast_ev_imperio_training_t1_e4_hub", label="ag_st_imperio", req="states.ast.tier >= 1", queue="ast_eventqueue_imperio_training_tonks", autoenqueue=True, autodequeue=False, subevents=["ast_ev_imperio_training_t1_e4"])
default ast_ev_imperio_training_t1_e5_hub = Event(id="ast_ev_imperio_training_t1_e5_hub", label="ag_st_imperio", req="states.ast.tier >= 1", queue="ast_eventqueue_imperio_training_tonks", autoenqueue=True, autodequeue=False, subevents=["ast_ev_imperio_training_t1_e5"])
default ast_eventqueue_imperio_training_susan = EventQueue("ast_eventqueue_imperio_training_susan")
default ast_ev_imperio_training_susan_t1_e1 = Event(id="ast_ev_imperio_training_susan_t1_e1", label="ag_se_imperio_sb_E1", req="states.ast.tier >= 1", queue="ast_eventqueue_imperio_training_susan", autoenqueue=True, autodequeue=False)
default ast_ev_imperio_training_susan_t1_e2 = Event(id="ast_ev_imperio_training_susan_t1_e2", label="ag_se_imperio_sb_E2", req="states.ast.tier >= 1", queue="ast_eventqueue_imperio_training_susan", autoenqueue=True, autodequeue=False)
default ast_ev_imperio_training_susan_t1_e3 = Event(id="ast_ev_imperio_training_susan_t1_e3", label="ag_se_imperio_sb_E3", req="states.ast.tier >= 1", queue="ast_eventqueue_imperio_training_susan", autoenqueue=True, autodequeue=False)
@ -19,4 +21,4 @@ default ast_ev_imperio_training_susan_t1_e3 = Event(id="ast_ev_imperio_training_
define astoria_spells = [
("ast_eventqueue_imperio_training_tonks", "Im-perv-ious with Tonks!"),
("ast_eventqueue_imperio_training_susan", "Im-perv-ious with Susan!"),
]
]

View File

@ -813,7 +813,7 @@ label cc_pf_strip_T2_intro_E3:
cho @ cheeks blush "Does Granger do these sorts of things for you too?" ("soft", "base", "worried", "mid")
# Remove skirt.
# Remove skirt.
if cho.is_worn("bottom"):
play sound "sounds/cloth_sound3.ogg"
hide cho_main

View File

@ -1,4 +1,4 @@
default cho_eventqueue_talk_to_me = EventQueue("cho_eventqueue_talk_to_me")
default cho_ev_talk_to_me_t1_e1 = Event(id="cho_ev_talk_to_me_t1_e1", label="cc_pf_talk_T1_intro_E1", req="states.cho.tier == 1", queue="cho_eventqueue_talk_to_me", autoenqueue=True, autodequeue=False, repeat=False)
default cho_ev_talk_to_me_t1_e2 = Event(id="cho_ev_talk_to_me_t1_e2", label="cc_pf_talk_T1_intro_E2", req="states.cho.tier == 1", queue="cho_eventqueue_talk_to_me", autoenqueue=True, autodequeue=False, repeat=False)
default cho_ev_talk_to_me_t1_e3 = Event(id="cho_ev_talk_to_me_t1_e3", label="cc_pf_talk_T1_E3", req="states.cho.tier == 1", queue="cho_eventqueue_talk_to_me", autoenqueue=True, autodequeue=False)
@ -9,6 +9,7 @@ default cho_ev_talk_to_me_t3_e1 = Event(id="cho_ev_talk_to_me_t3_e1", label="cc_
default cho_ev_talk_to_me_t3_e2 = Event(id="cho_ev_talk_to_me_t3_e2", label="cc_pf_talk_T3_intro_E2", req="states.cho.tier >= 3", queue="cho_eventqueue_talk_to_me", autoenqueue=True, autodequeue=False, repeat=False)
default cho_ev_talk_to_me_t3_e3 = Event(id="cho_ev_talk_to_me_t3_e3", label="cc_pf_talk_T3_E3", req="states.cho.tier >= 3", queue="cho_eventqueue_talk_to_me", autoenqueue=True, autodequeue=False)
default cho_eventqueue_inspect_her_body = EventQueue("cho_eventqueue_inspect_her_body")
default cho_ev_inspect_her_body_t2_e1 = Event(id="cho_ev_inspect_her_body_t2_e1", label="cc_pf_strip_T2_intro_E1", req="states.cho.tier == 2", queue="cho_eventqueue_inspect_her_body", autoenqueue=True, autodequeue=False, repeat=False)
default cho_ev_inspect_her_body_t2_e2 = Event(id="cho_ev_inspect_her_body_t2_e2", label="cc_pf_strip_T2_intro_E2", req="states.cho.tier == 2", queue="cho_eventqueue_inspect_her_body", autoenqueue=True, autodequeue=False, repeat=False)
default cho_ev_inspect_her_body_t2_e3 = Event(id="cho_ev_inspect_her_body_t2_e3", label="cc_pf_strip_T2_intro_E3", req="states.cho.tier == 2", queue="cho_eventqueue_inspect_her_body", autoenqueue=True, autodequeue=False, repeat=False, ignore_labels=["cc_pf_strip_T2_E3_fail_repeat", "cc_pf_strip_T2_E3_fail"])
@ -18,6 +19,7 @@ default cho_ev_inspect_her_body_t3_e2 = Event(id="cho_ev_inspect_her_body_t3_e2"
default cho_ev_inspect_her_body_t3_e3 = Event(id="cho_ev_inspect_her_body_t3_e3", label="cc_pf_strip_T3_intro_E3", req="states.cho.tier >= 3", queue="cho_eventqueue_inspect_her_body", autoenqueue=True, autodequeue=False, repeat=False)
default cho_ev_inspect_her_body_t3_e4 = Event(id="cho_ev_inspect_her_body_t3_e4", label="cc_pf_strip_T3_repeat", req="states.cho.tier >= 3", queue="cho_eventqueue_inspect_her_body", autoenqueue=True, autodequeue=False)
default cho_eventqueue_suck_it = EventQueue("cho_eventqueue_suck_it")
default cho_ev_suck_it_t3_e1 = Event(id="cho_ev_suck_it_t3_e1", label="cc_pf_blowjob_T3_intro_E1", req="states.cho.tier >= 3", queue="cho_eventqueue_suck_it", autoenqueue=True, autodequeue=False, repeat=False, ignore_labels=["cc_pf_blowjob_1"])
default cho_ev_suck_it_t3_e2 = Event(id="cho_ev_suck_it_t3_e2", label="cc_pf_blowjob_T3_E2", req="states.cho.tier >= 3", queue="cho_eventqueue_suck_it", autoenqueue=True, autodequeue=False)
default cho_ev_suck_it_t3_e3 = Event(id="cho_ev_suck_it_t3_e3", label="cc_pf_blowjob_T3_E3", req="states.cho.tier >= 3", queue="cho_eventqueue_suck_it", autoenqueue=True, autodequeue=False)

View File

@ -1,8 +1,8 @@
default cho_ev_spy_on_boys_t3_e1 = Event(id="cho_ev_spy_on_boys_t3_e1", label="cc_pr_spy_boys_T3_twins", req="game.daytime==False")
default cho_ev_spy_on_boys_t3_e2 = Event(id="cho_ev_spy_on_boys_t3_e2", label="cc_pr_spy_boys_T3_ron", req="game.daytime==False")
default cho_ev_spy_on_boys_t3_e3 = Event(id="cho_ev_spy_on_boys_t3_e3", label="cc_pr_spy_boys_T3_harry", req="game.daytime==False")
default cho_eventqueue_spy_on_boys = EventQueue("cho_eventqueue_spy_on_boys")
default cho_ev_spy_on_boys_t3_e1_hub = Event(id="cho_ev_spy_on_boys_t3_e1_hub", label="cc_pr_spy_boys_start", req="states.cho.tier == 3", queue="cho_eventqueue_spy_on_boys", autoenqueue=True, autodequeue=False, subevents=["cho_ev_spy_on_boys_t3_e1"])
default cho_ev_spy_on_boys_t3_e2_hub = Event(id="cho_ev_spy_on_boys_t3_e2_hub", label="cc_pr_spy_boys_start", req="states.cho.tier == 3", queue="cho_eventqueue_spy_on_boys", autoenqueue=True, autodequeue=False, subevents=["cho_ev_spy_on_boys_t3_e2"])
default cho_ev_spy_on_boys_t3_e3_hub = Event(id="cho_ev_spy_on_boys_t3_e3_hub", label="cc_pr_spy_boys_start", req="states.cho.tier == 3", queue="cho_eventqueue_spy_on_boys", autoenqueue=True, autodequeue=False, subevents=["cho_ev_spy_on_boys_t3_e3"])
@ -12,6 +12,7 @@ default cho_ev_spy_on_girls_t3_e2 = Event(id="cho_ev_spy_on_girls_t3_e2", label=
default cho_ev_spy_on_girls_t3_e3 = Event(id="cho_ev_spy_on_girls_t3_e3", label="cc_pr_spy_girls_T3_katie", req="game.daytime==False")
default cho_ev_spy_on_girls_t3_e4 = Event(id="cho_ev_spy_on_girls_t3_e4", label="cc_pr_spy_girls_T3_angelina", req="game.daytime==False")
default cho_eventqueue_spy_on_girls = EventQueue("cho_eventqueue_spy_on_girls")
default cho_ev_spy_on_girls_t3_e1_hub = Event(id="cho_ev_spy_on_girls_t3_e1_hub", label="cc_pr_spy_girls_start", req="states.cho.tier == 3", queue="cho_eventqueue_spy_on_girls", autoenqueue=True, autodequeue=False, subevents=["cho_ev_spy_on_girls_t3_e1"])
default cho_ev_spy_on_girls_t3_e2_hub = Event(id="cho_ev_spy_on_girls_t3_e2_hub", label="cc_pr_spy_girls_start", req="states.cho.tier == 3", queue="cho_eventqueue_spy_on_girls", autoenqueue=True, autodequeue=False, subevents=["cho_ev_spy_on_girls_t3_e2"])
default cho_ev_spy_on_girls_t3_e3_hub = Event(id="cho_ev_spy_on_girls_t3_e3_hub", label="cc_pr_spy_girls_start", req="states.cho.tier == 3", queue="cho_eventqueue_spy_on_girls", autoenqueue=True, autodequeue=False, subevents=["cho_ev_spy_on_girls_t3_e3"])
@ -30,6 +31,7 @@ default cho_ev_manipulate_boys_t3_e1 = Event(id="cho_ev_manipulate_boys_t3_e1",
default cho_ev_manipulate_boys_t3_e2 = Event(id="cho_ev_manipulate_boys_t3_e2", label="cc_pr_manipulate_boys_T3_ron", req="game.daytime==False")
default cho_ev_manipulate_boys_t3_e3 = Event(id="cho_ev_manipulate_boys_t3_e3", label="cc_pr_manipulate_boys_T3_harry", req="game.daytime==False")
default cho_eventqueue_manipulate_boys = EventQueue("cho_eventqueue_manipulate_boys")
default cho_ev_manipulate_boys_t1_e1_hub = Event(id="cho_ev_manipulate_boys_t1_e1_hub", label="cc_pr_manipulate_boys_start", req="states.cho.tier == 1", queue="cho_eventqueue_manipulate_boys", autoenqueue=True, autodequeue=False, subevents=["cho_ev_manipulate_boys_t1_e1"])
default cho_ev_manipulate_boys_t1_e2_hub = Event(id="cho_ev_manipulate_boys_t1_e2_hub", label="cc_pr_manipulate_boys_start", req="states.cho.tier == 1", queue="cho_eventqueue_manipulate_boys", autoenqueue=True, autodequeue=False, subevents=["cho_ev_manipulate_boys_t1_e2"])
default cho_ev_manipulate_boys_t1_e3_hub = Event(id="cho_ev_manipulate_boys_t1_e3_hub", label="cc_pr_manipulate_boys_start", req="states.cho.tier == 1", queue="cho_eventqueue_manipulate_boys", autoenqueue=True, autodequeue=False, subevents=["cho_ev_manipulate_boys_t1_e3"])
@ -48,6 +50,7 @@ default cho_ev_manipulate_girls_t3_e2 = Event(id="cho_ev_manipulate_girls_t3_e2"
default cho_ev_manipulate_girls_t3_e3 = Event(id="cho_ev_manipulate_girls_t3_e3", label="cc_pr_manipulate_girls_T3_katie_part2", req="game.daytime==False")
default cho_ev_manipulate_girls_t3_e4 = Event(id="cho_ev_manipulate_girls_t3_e4", label="cc_pr_manipulate_girls_T3_angelina", req="game.daytime==False")
default cho_eventqueue_manipulate_girls = EventQueue("cho_eventqueue_manipulate_girls")
default cho_ev_manipulate_girls_t3_e1_hub = Event(id="cho_ev_manipulate_girls_t3_e1_hub", label="cc_pr_manipulate_girls_start", req="states.cho.tier == 3", queue="cho_eventqueue_manipulate_girls", autoenqueue=True, autodequeue=False, subevents=["cho_ev_manipulate_girls_t3_e1"])
default cho_ev_manipulate_girls_t3_e2_hub = Event(id="cho_ev_manipulate_girls_t3_e2_hub", label="cc_pr_manipulate_girls_start", req="states.cho.tier == 3", queue="cho_eventqueue_manipulate_girls", autoenqueue=True, autodequeue=False, subevents=["cho_ev_manipulate_girls_t3_e2"])
default cho_ev_manipulate_girls_t3_e3_hub = Event(id="cho_ev_manipulate_girls_t3_e3_hub", label="cc_pr_manipulate_girls_start", req="states.cho.tier == 3", queue="cho_eventqueue_manipulate_girls", autoenqueue=True, autodequeue=False, subevents=["cho_ev_manipulate_girls_t3_e3"])

View File

@ -24,7 +24,7 @@ init python:
states.gen.image.offset = (0, 600)
if face:
variant = "genie {}".format(face)
variant = f"genie {face}"
renpy.set_tag_attributes(variant)
side = "genie"

View File

@ -82,7 +82,7 @@ init python:
else:
chibi["base"] = "ch_hem walk_robe_n"
else:
chibi["base"] = "ch_hem walk"
chibi["base"] = "ch_hem walk"
elif not chibi.action or chibi.action == "stand":
# Determine clothing state
@ -97,7 +97,7 @@ init python:
else:
chibi["base"] = "ch_hem blink_robe_n"
else:
chibi["base"] = "ch_hem blink"
chibi["base"] = "ch_hem blink"
elif chibi.action == "dance":
# Determine clothing state
@ -140,9 +140,9 @@ init python:
elif chibi.action in ("drink_potion", "sniff_potion", "hold_potion"):
if not hermione.is_any_worn("top", "bottom"):
chibi["base"] = "ch_hem {}_nude".format(chibi.action)
chibi["base"] = f"ch_hem {chibi.action}_nude"
else:
chibi["base"] = "ch_hem {}".format(chibi.action)
chibi["base"] = f"ch_hem {chibi.action}"
# Sets up a chibi scene with Hermione and Genie in it

View File

@ -534,6 +534,6 @@ label hermione_chitchat:
block if states.her.ev.potions.breast_expand_drank:
her "You don't happen to have any more of that breast expansion potion, [name_genie_hermione]?" ("open", "base", "base", "mid")
her "I've noticed some correlations between your grades and your chest size, so I thought I'd give it a shot during our next exam..." ("open", "base", "base", "mid")
her "I've noticed some correlations between grades and the student's chest size, so I thought I'd give it a shot during our next exam..." ("open", "base", "base", "mid")
return

View File

@ -1,12 +1,14 @@
init offset = 5
default her_ev_maid_job_return = Event(id="her_ev_maid_job_return", label="her_maid_job_return", priority=5, req="not game.daytime")
default her_eventqueue_jobs_maid = EventQueue("her_eventqueue_jobs_maid")
default her_ev_maid_job_hub = Event(id="her_ev_maid_job_hub", label="her_maid_job", priority=5, req="her_outfit_maid.unlocked", repeat=True, autoenqueue=True, autodequeue=False, queue="her_eventqueue_jobs_maid", subevents=["her_ev_maid_job_return"])
default her_ev_promoter_job_return = Event(id="her_ev_promoter_job_return", label="her_promoter_job_return", priority=5, req="not game.daytime")
default her_eventqueue_jobs_promoter = EventQueue("her_eventqueue_jobs_promoter")
default her_ev_promoter_job_hub = Event(id="her_ev_promoter_job_hub", label="her_promoter_job", priority=5, req="states.her.ev.promote_cardgame.offered and poker_outfit_ITEM.unlocked", repeat=True, autoenqueue=True, autodequeue=False, queue="her_eventqueue_jobs_promoter", subevents=["her_ev_promoter_job_return"])
default her_eventqueue_panty_thief = EventQueue("her_eventqueue_panty_thief")
default her_ev_panty_thief_t1_e1 = Event(id="her_ev_panty_thief_t1_e1", label="hg_pr_panty_thief_T1_E1", req="states.her.tier == 1", autoenqueue=True, autodequeue=False, queue="her_eventqueue_panty_thief")
default her_ev_panty_thief_t2_e1 = Event(id="her_ev_panty_thief_t2_e1", label="hg_pr_panty_thief_T2_E1", req="states.her.tier == 2", autoenqueue=True, autodequeue=False, queue="her_eventqueue_panty_thief")
default her_ev_panty_thief_t3_e1 = Event(id="her_ev_panty_thief_t3_e1", label="hg_pr_panty_thief_e1_return", req="game.daytime==False")

View File

@ -13,20 +13,20 @@ label tentacle_scene_intro:
$ d_flag_03 = False
label .spell:
if d_flag_01 and d_flag_02 and d_flag_03:
jump .after_spell
jump .after_spell
menu:
"\"Open Sesame!\"" if not d_flag_01:
$ d_flag_01 = True
gen "...{w=0.8} Guess not..." ("base", xpos="far_left", ypos="head")
jump .spell
"\"Hocus Pocus!\"" if not d_flag_02:
$ d_flag_02 = True
gen "...{w=0.8} Damn..." ("base", xpos="far_left", ypos="head")
jump .spell
"\"Abracadabra!\"" if not d_flag_03:
$ d_flag_03 = True
gen "...{w=0.8} ..." ("base", xpos="far_left", ypos="head")
jump .spell
"\"Open Sesame!\"" if not d_flag_01:
$ d_flag_01 = True
gen "...{w=0.8} Guess not..." ("base", xpos="far_left", ypos="head")
jump .spell
"\"Hocus Pocus!\"" if not d_flag_02:
$ d_flag_02 = True
gen "...{w=0.8} Damn..." ("base", xpos="far_left", ypos="head")
jump .spell
"\"Abracadabra!\"" if not d_flag_03:
$ d_flag_03 = True
gen "...{w=0.8} ..." ("base", xpos="far_left", ypos="head")
jump .spell
label .after_spell:
gen "Work, you stupid scroll, or I'll throw you in the fire!" ("angry", xpos="far_left", ypos="head")

View File

@ -1,4 +1,4 @@
default her_eventqueue_talk_to_me = EventQueue("her_eventqueue_talk_to_me")
default her_ev_talk_to_me_t1_e1 = Event(id="her_ev_talk_to_me_t1_e1", label="hg_pf_talk_T1_intro_E1", priority=5, req="states.her.tier == 1", queue="her_eventqueue_talk_to_me", autoenqueue=True, autodequeue=False, repeat=False, ignore_labels=["end_hg_pf_talk"])
default her_ev_talk_to_me_t1_e2 = Event(id="her_ev_talk_to_me_t1_e2", label="hg_pf_talk_T1_E1", priority=6, req="states.her.tier == 1", queue="her_eventqueue_talk_to_me", autoenqueue=True, autodequeue=False, ignore_labels=["end_hg_pf_talk"])
default her_ev_talk_to_me_t2_e1 = Event(id="her_ev_talk_to_me_t2_e1", label="hg_pf_talk_T2_intro_E1", priority=5, req="states.her.tier == 2", queue="her_eventqueue_talk_to_me", autoenqueue=True, autodequeue=False, repeat=False, ignore_labels=["end_hg_pf_talk"])
@ -7,9 +7,11 @@ default her_ev_talk_to_me_t3_e1 = Event(id="her_ev_talk_to_me_t3_e1", label="hg_
default her_ev_talk_to_me_t3_e2 = Event(id="her_ev_talk_to_me_t3_e2", label="hg_pf_talk_T3_intro_E2", priority=6, req="states.her.tier >= 3", queue="her_eventqueue_talk_to_me", autoenqueue=True, autodequeue=False, repeat=False, ignore_labels=["end_hg_pf_talk", "hg_pf_talk_tonks_T3_intro_E1", "hg_pf_talk_tonks_T3_E1"])
default her_ev_talk_to_me_t3_e3 = Event(id="her_ev_talk_to_me_t3_e3", label="hg_pf_talk_T3_repeat", priority=7, req="states.her.tier >= 3", queue="her_eventqueue_talk_to_me", autoenqueue=True, autodequeue=False, ignore_labels=["end_hg_pf_talk", "hg_pf_talk_tonks_T3_intro_E1", "hg_pf_talk_tonks_T3_E1"])
default her_eventqueue_talk_to_me_tonks = EventQueue("her_eventqueue_talk_to_me_tonks")
default her_ev_talk_to_me_tonks_t3_e1 = Event(id="her_ev_talk_to_me_tonks_t3_e1", label="hg_pf_talk_tonks_T3_intro_E1", priority=5, req="states.her.tier >= 3", queue="her_eventqueue_talk_to_me_tonks", autoenqueue=True, autodequeue=False, repeat=False)
default her_ev_talk_to_me_tonks_t3_e2 = Event(id="her_ev_talk_to_me_tonks_t3_e2", label="hg_pf_talk_tonks_T3_E1", priority=6, req="states.her.tier >= 3", queue="her_eventqueue_talk_to_me_tonks", autoenqueue=True, autodequeue=False)
default her_eventqueue_admire_panties = EventQueue("her_eventqueue_admire_panties")
default her_ev_admire_panties_t1_e1 = Event(id="her_ev_admire_panties_t1_e1", label="hg_pf_admire_panties_T1_intro_E1", priority=5, req="states.her.tier == 1", queue="her_eventqueue_admire_panties", autoenqueue=True, autodequeue=False, repeat=False, ignore_labels=["end_hg_pf_admire_panties"])
default her_ev_admire_panties_t1_e2 = Event(id="her_ev_admire_panties_t1_e2", label="hg_pf_admire_panties_T1_E1", priority=6, req="states.her.tier == 1", queue="her_eventqueue_admire_panties", autoenqueue=True, autodequeue=False, ignore_labels=["end_hg_pf_admire_panties"])
default her_ev_admire_panties_t2_e1 = Event(id="her_ev_admire_panties_t2_e1", label="hg_pf_admire_panties_T2_intro_E1", priority=5, req="states.her.tier == 2", queue="her_eventqueue_admire_panties", autoenqueue=True, autodequeue=False, repeat=False, ignore_labels=["end_hg_pf_admire_panties"])
@ -20,6 +22,7 @@ default her_ev_admire_panties_t4_e1 = Event(id="her_ev_admire_panties_t4_e1", la
default her_ev_admire_panties_t4_e2 = Event(id="her_ev_admire_panties_t4_e2", label="hg_pf_admire_panties_T4_E1", priority=6, req="states.her.tier >= 4", queue="her_eventqueue_admire_panties", autoenqueue=True, autodequeue=False, ignore_labels=["end_hg_pf_admire_panties"])
default her_ev_admire_panties_t4_e3 = Event(id="her_ev_admire_panties_t4_e3", label="hg_pf_admire_panties_T4_E2", priority=7, req="states.her.tier >= 4", queue="her_eventqueue_admire_panties", autoenqueue=True, autodequeue=False, ignore_labels=["end_hg_pf_admire_panties"])
default her_eventqueue_admire_breasts = EventQueue("her_eventqueue_admire_breasts")
default her_ev_admire_breasts_t1_e1 = Event(id="her_ev_admire_breasts_t1_e1", label="hg_pf_admire_breasts_T1_intro_E1", priority=5, req="states.her.tier == 1", queue="her_eventqueue_admire_breasts", autoenqueue=True, autodequeue=False, repeat=False, ignore_labels=["end_hg_pf_admire_breasts"])
default her_ev_admire_breasts_t1_e2 = Event(id="her_ev_admire_breasts_t1_e2", label="hg_pf_admire_breasts_T1_intro_E2", priority=6, req="states.her.tier == 1", queue="her_eventqueue_admire_breasts", autoenqueue=True, autodequeue=False, repeat=False, ignore_labels=["end_hg_pf_admire_breasts"])
default her_ev_admire_breasts_t1_e3 = Event(id="her_ev_admire_breasts_t1_e3", label="hg_pf_admire_breasts_T1_E2", priority=7, req="states.her.tier == 1", queue="her_eventqueue_admire_breasts", autoenqueue=True, autodequeue=False, ignore_labels=["end_hg_pf_admire_breasts"])
@ -32,6 +35,7 @@ default her_ev_admire_breasts_t4_e1 = Event(id="her_ev_admire_breasts_t4_e1", la
default her_ev_admire_breasts_t4_e2 = Event(id="her_ev_admire_breasts_t4_e2", label="hg_pf_admire_breasts_T4_E1", priority=6, req="states.her.tier >= 4", queue="her_eventqueue_admire_breasts", autoenqueue=True, autodequeue=False, ignore_labels=["end_hg_pf_admire_breasts", "hg_pf_admire_breasts_T4"])
default her_ev_admire_breasts_t4_e3 = Event(id="her_ev_admire_breasts_t4_e3", label="hg_pf_admire_breasts_T4_E2", priority=7, req="states.her.tier >= 4", queue="her_eventqueue_admire_breasts", autoenqueue=True, autodequeue=False, ignore_labels=["end_hg_pf_admire_breasts", "hg_pf_admire_breasts_T4"])
default her_eventqueue_grope = EventQueue("her_eventqueue_grope")
default her_ev_grope_t1_e1 = Event(id="her_ev_grope_t1_e1", label="hg_pf_grope_T1_E1", priority=5, req="states.her.tier == 1", queue="her_eventqueue_grope", autoenqueue=True, autodequeue=False)
default her_ev_grope_t2_e1 = Event(id="her_ev_grope_t2_e1", label="hg_pf_grope_T2_intro_E1", priority=5, req="states.her.tier == 2", queue="her_eventqueue_grope", autoenqueue=True, autodequeue=False, repeat=False, ignore_labels=["hg_pf_grope_breasts_T2", "hg_pf_grope_ass_T2", "hg_pf_grope_ass_T2_back", "hg_pf_grope_ass_T2_front", "hg_pf_grope_ass_T2_continue", "hg_pf_grope_breasts_T2_continue"])
default her_ev_grope_t2_e2 = Event(id="her_ev_grope_t2_e2", label="hg_pf_grope_T2_E1", priority=6, req="states.her.tier == 2", queue="her_eventqueue_grope", autoenqueue=True, autodequeue=False, ignore_labels=["hg_pf_grope_breasts_T2", "hg_pf_grope_ass_T2", "hg_pf_grope_ass_T2_back", "hg_pf_grope_ass_T2_front", "hg_pf_grope_ass_T2_continue", "hg_pf_grope_breasts_T2_continue"])
@ -41,6 +45,7 @@ default her_ev_grope_t4_e1 = Event(id="her_ev_grope_t4_e1", label="hg_pf_grope_T
default her_ev_grope_t4_e2 = Event(id="her_ev_grope_t4_e2", label="hg_pf_grope_T4_intro_E2", priority=6, req="states.her.tier >= 4", queue="her_eventqueue_grope", autoenqueue=True, autodequeue=False, repeat=False, ignore_labels=["hg_pf_grope_breasts_T4", "hg_pf_grope_ass_T4", "hg_pf_grope_ass_T4_back", "hg_pf_grope_ass_T4_front", "hg_pf_grope_ass_T4_continue", "hg_pf_grope_breasts_T4_continue"])
default her_ev_grope_t4_e3 = Event(id="her_ev_grope_t4_e3", label="hg_pf_grope_T4_E2", priority=7, req="states.her.tier >= 4", queue="her_eventqueue_grope", autoenqueue=True, autodequeue=False, ignore_labels=["hg_pf_grope_breasts_T4", "hg_pf_grope_ass_T4", "hg_pf_grope_ass_T4_back", "hg_pf_grope_ass_T4_front", "hg_pf_grope_ass_T4_continue", "hg_pf_grope_breasts_T4_continue"])
default her_eventqueue_strip_for_me = EventQueue("her_eventqueue_strip_for_me")
default her_ev_strip_for_me_t1_e1 = Event(id="her_ev_strip_for_me_t1_e1", label="hg_pf_strip_T1_E1", priority=5, req="states.her.tier == 1", queue="her_eventqueue_strip_for_me", autoenqueue=True, autodequeue=False)
default her_ev_strip_for_me_t2_e1 = Event(id="her_ev_strip_for_me_t2_e1", label="hg_pf_strip_T2_E1", priority=5, req="states.her.tier == 2", queue="her_eventqueue_strip_for_me", autoenqueue=True, autodequeue=False)
default her_ev_strip_for_me_t3_e1 = Event(id="her_ev_strip_for_me_t3_e1", label="hg_pf_strip_T3_intro_E1", priority=5, req="states.her.tier == 3", queue="her_eventqueue_strip_for_me", autoenqueue=True, autodequeue=False, repeat=False)
@ -50,6 +55,7 @@ default her_ev_strip_for_me_t4_e1 = Event(id="her_ev_strip_for_me_t4_e1", label=
default her_ev_strip_for_me_t4_e2 = Event(id="her_ev_strip_for_me_t4_e2", label="hg_pf_strip_T4_intro_E2", priority=6, req="states.her.tier >= 4", queue="her_eventqueue_strip_for_me", autoenqueue=True, autodequeue=False, repeat=False, ignore_labels=["hg_pf_strip_T4", "hg_pf_strip_T4_snape", "hg_pf_strip_T4_masturbate", "hg_pf_strip_T4_watch", "hg_pf_strip_T4_fingering", "hg_pf_strip_T5_fingering", "hg_pf_strip_T6_fingering"])
default her_ev_strip_for_me_t4_e3 = Event(id="her_ev_strip_for_me_t4_e3", label="hg_pf_strip_T4_E2", priority=7, req="states.her.tier >= 4", queue="her_eventqueue_strip_for_me", autoenqueue=True, autodequeue=False, ignore_labels=["hg_pf_strip_T4", "hg_pf_strip_T4_snape", "hg_pf_strip_T4_masturbate", "hg_pf_strip_T4_watch", "hg_pf_strip_T4_fingering", "hg_pf_strip_T5_fingering", "hg_pf_strip_T6_fingering"])
default her_eventqueue_handjob = EventQueue("her_eventqueue_handjob")
default her_ev_handjob_t1_e1 = Event(id="her_ev_handjob_t1_e1", label="hg_pf_handjob_T1_E1", priority=5, req="states.her.tier == 1", queue="her_eventqueue_handjob", autoenqueue=True, autodequeue=False)
default her_ev_handjob_t2_e1 = Event(id="her_ev_handjob_t2_e1", label="hg_pf_handjob_T2_E1", priority=5, req="states.her.tier == 2", queue="her_eventqueue_handjob", autoenqueue=True, autodequeue=False)
default her_ev_handjob_t3_e1 = Event(id="her_ev_handjob_t3_e1", label="hg_pf_handjob_T3_E1", priority=5, req="states.her.tier == 3", queue="her_eventqueue_handjob", autoenqueue=True, autodequeue=False)
@ -60,6 +66,7 @@ default her_ev_handjob_t5_e1 = Event(id="her_ev_handjob_t5_e1", label="hg_pf_han
default her_ev_handjob_t5_e2 = Event(id="her_ev_handjob_t5_e2", label="hg_pf_handjob_T5_intro_E2", priority=6, req="states.her.tier >= 5", queue="her_eventqueue_handjob", autoenqueue=True, autodequeue=False, repeat=False, ignore_labels=["hg_pf_handjob_2", "hg_pf_handjob_2_cumming", "hg_pf_handjob_2_continue"])
default her_ev_handjob_t5_e3 = Event(id="her_ev_handjob_t5_e3", label="hg_pf_handjob_T5_repeat", priority=7, req="states.her.tier >= 5", queue="her_eventqueue_handjob", autoenqueue=True, autodequeue=False, ignore_labels=["hg_pf_handjob_2", "hg_pf_handjob_2_cumming", "hg_pf_handjob_2_continue"])
default her_eventqueue_titjob = EventQueue("her_eventqueue_titjob")
default her_ev_titjob_t1_e1 = Event(id="her_ev_titjob_t1_e1", label="hg_pf_titjob_T1_E1", priority=5, req="states.her.tier == 1", queue="her_eventqueue_titjob", autoenqueue=True, autodequeue=False)
default her_ev_titjob_t2_e1 = Event(id="her_ev_titjob_t2_e1", label="hg_pf_titjob_T2_E1", priority=5, req="states.her.tier == 2", queue="her_eventqueue_titjob", autoenqueue=True, autodequeue=False)
default her_ev_titjob_t3_e1 = Event(id="her_ev_titjob_t3_e1", label="hg_pf_titjob_T3_E1", priority=5, req="states.her.tier == 3", queue="her_eventqueue_titjob", autoenqueue=True, autodequeue=False)
@ -70,6 +77,7 @@ default her_ev_titjob_t6_e1 = Event(id="her_ev_titjob_t6_e1", label="hg_pf_titjo
default her_ev_titjob_t6_e2 = Event(id="her_ev_titjob_t6_e2", label="hg_pf_titjob_T6_intro_E2", priority=6, req="states.her.tier >= 6", queue="her_eventqueue_titjob", autoenqueue=True, autodequeue=False, repeat=False, ignore_labels=["hg_pf_titjob_2", "hg_pf_titjob_2_cumming", "hg_pf_titjob_2_continue"])
default her_ev_titjob_t6_e3 = Event(id="her_ev_titjob_t6_e3", label="hg_pf_titjob_T6_repeat", priority=7, req="states.her.tier >= 6", queue="her_eventqueue_titjob", autoenqueue=True, autodequeue=False, ignore_labels=["hg_pf_titjob_2", "hg_pf_titjob_2_cumming", "hg_pf_titjob_2_continue"])
default her_eventqueue_blowjob = EventQueue("her_eventqueue_blowjob")
default her_ev_blowjob_t1_e1 = Event(id="her_ev_blowjob_t1_e1", label="hg_pf_blowjob_T1_E1", priority=5, req="states.her.tier == 1", queue="her_eventqueue_blowjob", autoenqueue=True, autodequeue=False)
default her_ev_blowjob_t2_e1 = Event(id="her_ev_blowjob_t2_e1", label="hg_pf_blowjob_T2_E1", priority=5, req="states.her.tier == 2", queue="her_eventqueue_blowjob", autoenqueue=True, autodequeue=False)
default her_ev_blowjob_t3_e1 = Event(id="her_ev_blowjob_t3_e1", label="hg_pf_blowjob_T3_E1", priority=5, req="states.her.tier == 3", queue="her_eventqueue_blowjob", autoenqueue=True, autodequeue=False)
@ -81,6 +89,7 @@ default her_ev_blowjob_t6_e1 = Event(id="her_ev_blowjob_t6_e1", label="hg_pf_blo
default her_ev_blowjob_t6_e2 = Event(id="her_ev_blowjob_t6_e2", label="hg_pf_blowjob_T6_hidden_repeat", priority=6, req="states.her.tier >= 6", queue="her_eventqueue_blowjob", autoenqueue=True, autodequeue=False, ignore_labels=["hg_pf_blowjob_1", "hg_pf_blowjob_2", "hg_pf_hidden_blowjob", "hg_hidden_blowjob_snape", "hg_hidden_blowjob_tonks", "hg_hidden_blowjob_luna", "hg_hidden_blowjob_cumming"])
default her_ev_blowjob_t6_e3 = Event(id="her_ev_blowjob_t6_e3", label="hg_pf_blowjob_T6_repeat", priority=7, req="states.her.tier >= 6", queue="her_eventqueue_blowjob", autoenqueue=True, autodequeue=False, ignore_labels=["hg_pf_blowjob_1", "hg_pf_blowjob_2", "hg_pf_hidden_blowjob", "hg_hidden_blowjob_snape", "hg_hidden_blowjob_tonks", "hg_hidden_blowjob_luna", "hg_hidden_blowjob_cumming"])
default her_eventqueue_sex = EventQueue("her_eventqueue_sex")
default her_ev_sex_t1_e1 = Event(id="her_ev_sex_t1_e1", label="hg_pf_sex_T1_E1", priority=5, req="states.her.tier == 1", queue="her_eventqueue_sex", autoenqueue=True, autodequeue=False)
default her_ev_sex_t2_e1 = Event(id="her_ev_sex_t2_e1", label="hg_pf_sex_T2_E1", priority=5, req="states.her.tier == 2", queue="her_eventqueue_sex", autoenqueue=True, autodequeue=False)
default her_ev_sex_t3_e1 = Event(id="her_ev_sex_t3_e1", label="hg_pf_sex_T3_E1", priority=5, req="states.her.tier == 3", queue="her_eventqueue_sex", autoenqueue=True, autodequeue=False)
@ -91,15 +100,16 @@ default her_ev_sex_t6_e2 = Event(id="her_ev_sex_t6_e2", label="hg_pf_sex_T6_intr
default her_ev_sex_t6_e3 = Event(id="her_ev_sex_t6_e3", label="hg_pf_sex_T6_intro_E3", priority=7, req="states.her.tier >= 6", queue="her_eventqueue_sex", autoenqueue=True, autodequeue=False, repeat=False)
default her_ev_sex_t6_e4 = Event(id="her_ev_sex_t6_e4", label="hg_pf_sex_T6_E3", priority=8, req="states.her.tier >= 6", queue="her_eventqueue_sex", autoenqueue=True, autodequeue=False)
default her_eventqueue_anal = EventQueue("her_eventqueue_anal")
default her_ev_anal_t6_e1 = Event(id="her_ev_anal_t6_e1", label="hg_anal_sex_1_intro", priority=5, req="states.her.tier >= 6", queue="her_eventqueue_anal", autoenqueue=True, autodequeue=False, repeat=False)
default her_ev_anal_t6_e2 = Event(id="her_ev_anal_t6_e2", label="hg_anal_sex_2_intro", priority=6, req="states.her.tier >= 6", queue="her_eventqueue_anal", autoenqueue=True, autodequeue=False, repeat=False)
default her_ev_anal_t6_e3 = Event(id="her_ev_anal_t6_e3", label="hg_anal_sex_3", priority=7, req="states.her.tier >= 6", queue="her_eventqueue_anal", autoenqueue=True, autodequeue=False)
define hermione_favors = [
("her_eventqueue_talk_to_me", "Talk to me!"),
("her_eventqueue_admire_breasts", "Show me your tits!"),
("her_eventqueue_admire_panties", "Show me your panties!"),
("her_eventqueue_grope", "Grope her!"),
("her_eventqueue_talk_to_me", "Talk to me!"),
("her_eventqueue_admire_breasts", "Show me your tits!"),
("her_eventqueue_admire_panties", "Show me your panties!"),
("her_eventqueue_grope", "Grope her!"),
("her_eventqueue_strip_for_me", "Strip for me!"),
("her_eventqueue_handjob", "Give me a handy!"),
("her_eventqueue_titjob", "Give me a tittyjob!"),

View File

@ -10,6 +10,7 @@ default her_ev_flirt_students_t3_e1 = Event(id="her_ev_flirt_students_t3_e1", la
default her_ev_flirt_students_t3_e2 = Event(id="her_ev_flirt_students_t3_e2", label="hg_pr_flirt_T3_E2", req="game.daytime == False")
default her_ev_flirt_students_t3_e3 = Event(id="her_ev_flirt_students_t3_e3", label="hg_pr_flirt_T3_E3", req="game.daytime == False")
default her_eventqueue_flirt_students = EventQueue("her_eventqueue_flirt_students")
default her_ev_flirt_students_t1_e1_hub = Event(id="her_ev_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="her_ev_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="her_ev_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"])
@ -30,6 +31,7 @@ default her_ev_flirt_teachers_t3_e1 = Event(id="her_ev_flirt_teachers_t3_e1", la
default her_ev_flirt_teachers_t3_e2 = Event(id="her_ev_flirt_teachers_t3_e2", label="hg_pr_flirt_teacher_T3_E2", req="game.daytime == False")
default her_ev_flirt_teachers_t3_e3 = Event(id="her_ev_flirt_teachers_t3_e3", label="hg_pr_flirt_teacher_T3_E3", req="game.daytime == False")
default her_eventqueue_flirt_teachers = EventQueue("her_eventqueue_flirt_teachers")
default her_ev_flirt_teachers_t1_e1_hub = Event(id="her_ev_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="her_ev_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="her_ev_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"])
@ -50,6 +52,7 @@ default her_ev_grope_public_t4_e1 = Event(id="her_ev_grope_public_t4_e1", label=
default her_ev_grope_public_t4_e2 = Event(id="her_ev_grope_public_t4_e2", label="hg_pr_grope_T4_E2", req="game.daytime == False")
default her_ev_grope_public_t4_e3 = Event(id="her_ev_grope_public_t4_e3", label="hg_pr_grope_T4_E3", req="game.daytime == False")
default her_eventqueue_grope_public = EventQueue("her_eventqueue_grope_public")
default her_ev_grope_public_t1_e1_hub = Event(id="her_ev_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="her_ev_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="her_ev_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"])
@ -71,6 +74,7 @@ default her_ev_flash_public_t5_e1 = Event(id="her_ev_flash_public_t5_e1", label=
default her_ev_flash_public_t5_e2 = Event(id="her_ev_flash_public_t5_e2", label="hg_pr_flash_T5_E2", req="game.daytime == False")
default her_ev_flash_public_t5_e3 = Event(id="her_ev_flash_public_t5_e3", label="hg_pr_flash_T5_E3", req="game.daytime == False")
default her_eventqueue_flash_public = EventQueue("her_eventqueue_flash_public")
default her_ev_flash_public_t1_to_t3 = Event(id="her_ev_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="her_ev_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="her_ev_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"])
@ -91,6 +95,7 @@ default her_ev_kiss_public_t4_e3 = Event(id="her_ev_kiss_public_t4_e3", label="h
default her_ev_kiss_public_t5_e1 = Event(id="her_ev_kiss_public_t5_e1", label="hg_pr_kiss_T5_E1", req="game.daytime==False")
default her_ev_kiss_public_t5_e2 = Event(id="her_ev_kiss_public_t5_e2", label="hg_pr_kiss_T5_E2", req="game.daytime==False")
default her_eventqueue_kiss_public = EventQueue("her_eventqueue_kiss_public")
default her_ev_kiss_public_t1_to_t3 = Event(id="her_ev_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="her_ev_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="her_ev_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"])
@ -111,6 +116,7 @@ default her_ev_handjob_public_t6_e1 = Event(id="her_ev_handjob_public_t6_e1", la
default her_ev_handjob_public_t6_e2 = Event(id="her_ev_handjob_public_t6_e2", label="hg_pr_handjob_T6_E2", req="game.daytime==False")
default her_ev_handjob_public_t6_e3 = Event(id="her_ev_handjob_public_t6_e3", label="hg_pr_handjob_T6_E3", req="game.daytime==False")
default her_eventqueue_handjob_public = EventQueue("her_eventqueue_handjob_public")
default her_ev_handjob_public_t1_to_t4 = Event(id="her_ev_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="her_ev_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="her_ev_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"])
@ -129,6 +135,7 @@ default her_ev_blowjob_public_t6_e1 = Event(id="her_ev_blowjob_public_t6_e1", la
default her_ev_blowjob_public_t6_e2 = Event(id="her_ev_blowjob_public_t6_e2", label="hg_pr_blowjob_T6_E2", req="game.daytime==False")
default her_ev_blowjob_public_t6_e3 = Event(id="her_ev_blowjob_public_t6_e3", label="hg_pr_blowjob_T6_E3", req="game.daytime==False")
default her_eventqueue_blowjob_public = EventQueue("her_eventqueue_blowjob_public")
default her_ev_blowjob_public_t1_to_t5 = Event(id="her_ev_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="her_ev_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_blowjob_public_t5_e1"])
default her_ev_blowjob_public_t5_e2_hub = Event(id="her_ev_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_blowjob_public_t5_e2"])
@ -142,6 +149,7 @@ default her_ev_sex_public_t6_e2 = Event(id="her_ev_sex_public_t6_e2", label="hg_
default her_ev_sex_public_t6_e3 = Event(id="her_ev_sex_public_t6_e3", label="hg_pr_sex_T6_E3", req="game.daytime==False")
default her_ev_sex_public_t6_e4 = Event(id="her_ev_sex_public_t6_e4", label="hg_pr_sex_T6_E4", req="game.daytime==False")
default her_eventqueue_sex_public = EventQueue("her_eventqueue_sex_public")
default her_ev_sex_public_t1_to_t6 = Event(id="her_ev_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="her_ev_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="her_ev_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"])
@ -155,6 +163,7 @@ default her_ev_cumslut_public_t6_e2 = Event(id="her_ev_cumslut_public_t6_e2", la
default her_ev_cumslut_public_t6_e3 = Event(id="her_ev_cumslut_public_t6_e3", label="hg_pr_cumslut_T6_return", req="game.daytime==False")
default her_ev_cumslut_public_t6_e4 = Event(id="her_ev_cumslut_public_t6_e4", label="hg_pr_cumslut_T6_return", req="game.daytime==False")
default her_eventqueue_cumslut_public = EventQueue("her_eventqueue_cumslut_public")
default her_ev_cumslut_public_t1_to_t5 = Event(id="her_ev_cumslut_public_t1_to_t5", label="hg_pr_cumslut_fail", req="states.her.tier < 5", autoenqueue=True, autodequeue=False, queue="her_eventqueue_cumslut_public")
default her_ev_cumslut_public_t5_e1_hub = Event(id="her_ev_cumslut_public_t5_e1_hub", label="hg_pr_cumslut", req="states.her.tier == 5", autoenqueue=True, autodequeue=False, queue="her_eventqueue_cumslut_public", subevents=["her_ev_cumslut_public_t5_e1"])
default her_ev_cumslut_public_t5_e2_hub = Event(id="her_ev_cumslut_public_t5_e2_hub", label="hg_pr_cumslut", req="states.her.tier == 5", autoenqueue=True, autodequeue=False, queue="her_eventqueue_cumslut_public", subevents=["her_ev_cumslut_public_t5_e2"])

View File

@ -1168,7 +1168,7 @@ label ll_pf_masturbate_T4_E1_repeat:
lun "I never realised that the tests at Hogwarts just happened to have acronyms, that's fascinating!" ("grin", "base", "base", "mid")
gen "Yep... I'm sure some writer didn't spend hours coming up with those."
lun "*Huh*?" ("soft", "base", "raised", "mid")
gen "Anyway...{w=0.4} Now that that's established, you may begin the test."
gen "Anyway...{w=0.4} Now that that's established, you may begin the test.{#LINT_IGNORE}"
lun "Oh, alright!" ("base", "base", "base", "mid")
gen "Why don't you start off with the thought process behind the removal of your top."
lun "Oh! Oh! I know that!" ("smile", "base", "base", "stare")

View File

@ -1609,7 +1609,7 @@ label ll_pf_blowjob_T4_E4_repeat:
show screen blkfade
with d5
nar "As Luna crawls out from under your desk, you slump back into your chair, exhausted by the cheer intensity of the session."
nar "As Luna crawls out from under your desk, you slump back into your chair, exhausted by the sheer intensity of the session."
hide cg
hide screen blkfade

View File

@ -1,4 +1,4 @@
default lun_eventqueue_talk_to_me = EventQueue("lun_eventqueue_talk_to_me")
default lun_ev_talk_to_me_t1_e1 = Event(id="lun_ev_talk_to_me_t1_e1", label="ll_pf_talk_T1_E1_intro", req="states.lun.tier == 1", queue="lun_eventqueue_talk_to_me", autoenqueue=True, autodequeue=False, repeat=False)
default lun_ev_talk_to_me_t1_e2 = Event(id="lun_ev_talk_to_me_t1_e2", label="ll_pf_talk_T1_E2_intro", req="states.lun.tier == 1", queue="lun_eventqueue_talk_to_me", autoenqueue=True, autodequeue=False, repeat=False)
default lun_ev_talk_to_me_t1_e3 = Event(id="lun_ev_talk_to_me_t1_e3", label="ll_pf_talk_T1_E3_intro", req="states.lun.tier == 1", queue="lun_eventqueue_talk_to_me", autoenqueue=True, autodequeue=False, repeat=False)
@ -7,6 +7,7 @@ default lun_ev_talk_to_me_t2_e1 = Event(id="lun_ev_talk_to_me_t2_e1", label="ll_
default lun_ev_talk_to_me_t3_e1 = Event(id="lun_ev_talk_to_me_t3_e1", label="ll_pf_talk_T3_E1_repeat", req="states.lun.tier == 3", queue="lun_eventqueue_talk_to_me", autoenqueue=True, autodequeue=False)
default lun_ev_talk_to_me_t4_e1 = Event(id="lun_ev_talk_to_me_t4_e1", label="ll_pf_talk_T4_E1_repeat", req="states.lun.tier >= 4", queue="lun_eventqueue_talk_to_me", autoenqueue=True, autodequeue=False)
default lun_eventqueue_inspect_her_body = EventQueue("lun_eventqueue_inspect_her_body")
default lun_ev_inspect_her_body_t2_e1 = Event(id="lun_ev_inspect_her_body_t2_e1", label="ll_pf_inspect_T2_E1_intro", req="states.lun.tier == 2", queue="lun_eventqueue_inspect_her_body", autoenqueue=True, autodequeue=False, repeat=False)
default lun_ev_inspect_her_body_t2_e2 = Event(id="lun_ev_inspect_her_body_t2_e2", label="ll_pf_inspect_T2_E2_intro", req="states.lun.tier == 2", queue="lun_eventqueue_inspect_her_body", autoenqueue=True, autodequeue=False, repeat=False)
default lun_ev_inspect_her_body_t2_e3 = Event(id="lun_ev_inspect_her_body_t2_e3", label="ll_pf_inspect_T2_E3_intro", req="states.lun.tier == 2", queue="lun_eventqueue_inspect_her_body", autoenqueue=True, autodequeue=False, repeat=False)
@ -14,12 +15,14 @@ default lun_ev_inspect_her_body_t2_e4 = Event(id="lun_ev_inspect_her_body_t2_e4"
default lun_ev_inspect_her_body_t3_e1 = Event(id="lun_ev_inspect_her_body_t3_e1", label="ll_pf_inspect_T3_E1_repeat", req="states.lun.tier == 3", queue="lun_eventqueue_inspect_her_body", autoenqueue=True, autodequeue=False)
default lun_ev_inspect_her_body_t4_e1 = Event(id="lun_ev_inspect_her_body_t4_e1", label="ll_pf_inspect_T4_E1_repeat", req="states.lun.tier >= 4", queue="lun_eventqueue_inspect_her_body", autoenqueue=True, autodequeue=False)
default lun_eventqueue_play_with_yourself = EventQueue("lun_eventqueue_play_with_yourself")
default lun_ev_play_with_yourself_t3_e1 = Event(id="lun_ev_play_with_yourself_t3_e1", label="ll_pf_masturbate_T3_E1_intro", req="states.lun.tier == 3", queue="lun_eventqueue_play_with_yourself", autoenqueue=True, autodequeue=False, repeat=False)
default lun_ev_play_with_yourself_t3_e2 = Event(id="lun_ev_play_with_yourself_t3_e2", label="ll_pf_masturbate_T3_E2_intro", req="states.lun.tier == 3", queue="lun_eventqueue_play_with_yourself", autoenqueue=True, autodequeue=False, repeat=False)
default lun_ev_play_with_yourself_t3_e3 = Event(id="lun_ev_play_with_yourself_t3_e3", label="ll_pf_masturbate_T3_E3_intro", req="states.lun.tier == 3", queue="lun_eventqueue_play_with_yourself", autoenqueue=True, autodequeue=False, repeat=False)
default lun_ev_play_with_yourself_t3_e4 = Event(id="lun_ev_play_with_yourself_t3_e4", label="ll_pf_masturbate_T3_E4_repeat", req="states.lun.tier == 3", queue="lun_eventqueue_play_with_yourself", autoenqueue=True, autodequeue=False)
default lun_ev_play_with_yourself_t4_e1 = Event(id="lun_ev_play_with_yourself_t4_e1", label="ll_pf_masturbate_T4_E1_repeat", req="states.lun.tier >= 4", queue="lun_eventqueue_play_with_yourself", autoenqueue=True, autodequeue=False)
default lun_eventqueue_blowjob = EventQueue("lun_eventqueue_blowjob")
default lun_ev_blowjob_t4_e1 = Event(id="lun_ev_blowjob_t4_e1", label="ll_pf_blowjob_T4_E1_intro", req="states.lun.tier >= 4", queue="lun_eventqueue_blowjob", autoenqueue=True, autodequeue=False, repeat=False)
default lun_ev_blowjob_t4_e2 = Event(id="lun_ev_blowjob_t4_e2", label="ll_pf_blowjob_T4_E2_intro", req="states.lun.tier >= 4", queue="lun_eventqueue_blowjob", autoenqueue=True, autodequeue=False, repeat=False)
default lun_ev_blowjob_t4_e3 = Event(id="lun_ev_blowjob_t4_e3", label="ll_pf_blowjob_T4_E3_intro", req="states.lun.tier >= 4", queue="lun_eventqueue_blowjob", autoenqueue=True, autodequeue=False, repeat=False)

View File

@ -95,6 +95,7 @@ label update_lun_tier:
# T5 NOT AVAILABLE
return
# unreachable
# Requirement: Tier 4 - Blow me T4 E3
$ lun_level_up = 4
return

View File

@ -611,8 +611,8 @@ label snape_intro_E4:
sna "......................." ("snape_01")
sna "Yeah, right..." ("snape_01")
"\"I don't have a brother, Severus.\"":
sna "........................" ("snape_01")
sna "You may not have one, but the real Albus Dumbledore does." ("snape_01")
sna "........................" ("snape_01")
sna "You may not have one, but the real Albus Dumbledore does." ("snape_01")
"-Use magic to get the right answer-":
nar "You use your phenomenal cosmic powers to peek into the very fabric of the universe and get the correct answer."
gen "My little brother Aberforth? Why would I miss him?" ("base", xpos="far_left", ypos="head")
@ -640,8 +640,8 @@ label snape_intro_E4:
"\"A week or so...\"":
sna "*Hmm*.... A week, huh..." ("snape_01")
"\"Could be months...\"":
sna "That long?" ("snape_01")
sna "Now isn't that just \"perfect\"?" ("snape_01")
sna "That long?" ("snape_01")
sna "Now isn't that just \"perfect\"?" ("snape_01")
"\"I have no clue...\"":
sna "....................." ("snape_01")
sna "Splendid..." ("snape_31")

Some files were not shown because too many files have changed in this diff Show More