2022-05-16 23:48:22 +00:00
|
|
|
|
2023-03-31 22:41:48 +00:00
|
|
|
# General states
|
2022-05-16 23:48:22 +00:00
|
|
|
|
2023-03-31 22:41:48 +00:00
|
|
|
default states.her.tier = 1
|
|
|
|
default states.her.level = 0
|
|
|
|
default states.her.public_tier = IntLike(_her_public_tier)
|
|
|
|
default states.her.public_level = 0
|
|
|
|
default states.her.mood = 0
|
|
|
|
default states.her.unlocked = False
|
|
|
|
default states.her.busy = False
|
|
|
|
default states.her.gifted = False
|
|
|
|
default states.her.favors_unlocked = False
|
|
|
|
default states.her.favors_convinced_stage = 0
|
|
|
|
default states.her.wardrobe_unlocked = False
|
|
|
|
default states.her.wardrobe_scheduling = True
|
|
|
|
default states.her.chatted = False
|
2022-05-16 23:48:22 +00:00
|
|
|
|
2023-03-31 22:41:48 +00:00
|
|
|
# Sexual activity states
|
|
|
|
|
|
|
|
default states.her.status.kissing = False
|
|
|
|
default states.her.status.stripping = False
|
|
|
|
default states.her.status.handjob = False
|
|
|
|
default states.her.status.blowjob = False
|
|
|
|
default states.her.status.masturbating = False
|
|
|
|
default states.her.status.sex = False
|
|
|
|
default states.her.status.anal = False
|
|
|
|
|
|
|
|
# Event flags
|
|
|
|
|
|
|
|
default states.her.ev.tutoring.offered = False
|
|
|
|
default states.her.ev.tutoring.unlocked = False
|
|
|
|
default states.her.ev.tutoring.stage = 1
|
|
|
|
default states.her.ev.intro.masturbated = False # Genie jerked off during the first encounter.
|
|
|
|
default states.her.ev.intro.e1_complete = False # 1st visit
|
|
|
|
default states.her.ev.intro.e2_complete = False # 2nd visit, MRM + informed the Ministry.
|
|
|
|
default states.her.ev.intro.e3_complete = False # 3rd visit, did she fail a test?
|
|
|
|
default states.her.ev.intro.e4_complete = False # 4th visit, she's crying. Failed a test.
|
|
|
|
default states.her.ev.intro.e5_complete = False # 5th visit, asks to be tutored, summon unlocked.
|
|
|
|
default states.her.ev.intro.convinced = False # Tonks convinces Hermione to sell favours.
|
|
|
|
default states.her.ev.intro.e6_complete = False # 6th visit, asks to buy favours, favours unlocked.
|
|
|
|
default states.her.ev.panty_thief.soaked = False
|
|
|
|
default states.her.ev.forest_bj.stage = 1
|
|
|
|
default states.her.ev.sealed_scroll.sample = False
|
|
|
|
default states.her.ev.sealed_scroll.examined = False
|
|
|
|
default states.her.ev.sell_cards.first_time = True
|
|
|
|
default states.her.ev.sell_cards.helped = False
|
|
|
|
default states.her.ev.buttplugs.magic_known = False
|
|
|
|
default states.her.ev.buttplugs.medium_question = False
|
|
|
|
default states.her.ev.dance_for_me.snape_invited = False
|
|
|
|
default states.her.ev.suck_it.snape_encounter = False
|
|
|
|
default states.her.ev.suck_it.tonks_encounter = False
|
|
|
|
default states.her.ev.suck_it.luna_encounter = False
|
|
|
|
default states.her.ev.yule_ball.variant = "personal"
|
|
|
|
default states.her.ev.yule_ball.e1_complete = False
|
|
|
|
default states.her.ev.yule_ball.e2_complete = False
|
|
|
|
default states.her.ev.yule_ball.e3_complete = False
|
|
|
|
default states.her.ev.yule_ball.e4_complete = False
|
|
|
|
default states.her.ev.yule_ball.gave_dress = False
|
|
|
|
default states.her.ev.yule_ball.started = False
|
|
|
|
default states.her.ev.yule_ball.complete = 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.
|
2022-05-16 23:48:22 +00:00
|
|
|
|
|
|
|
# Names
|
2023-03-31 22:41:48 +00:00
|
|
|
|
2023-03-01 22:14:00 +00:00
|
|
|
default name_genie_hermione = "Sir"
|
|
|
|
default name_hermione_genie = "Miss Granger"
|
2022-05-16 23:48:22 +00:00
|
|
|
|
2023-03-31 22:41:48 +00:00
|
|
|
init python early:
|
2022-07-23 20:57:42 +00:00
|
|
|
# Public requests design is flawed at its core to the point it would
|
|
|
|
# require going back to the drawing board, so instead, we will
|
|
|
|
# simulate tiers without spending weeks refactoring it and risking
|
|
|
|
# breaking save compatibility again. Technical debt sucks. ¯\_(ツ)_/¯
|
2023-03-31 22:41:48 +00:00
|
|
|
def _her_public_tier():
|
2022-07-23 20:57:42 +00:00
|
|
|
if hg_pr_sex.counter > 0:
|
|
|
|
return 6
|
|
|
|
|
|
|
|
elif hg_pr_blowjob.counter > 0:
|
|
|
|
return 5
|
|
|
|
|
|
|
|
elif hg_pr_handjob.counter > 0:
|
|
|
|
return 4
|
|
|
|
|
|
|
|
elif hg_pr_kiss.counter > 0 or hg_pr_flash.counter > 0:
|
|
|
|
return 3
|
|
|
|
|
|
|
|
elif hg_pr_grope.counter > 0:
|
|
|
|
return 2
|
|
|
|
else:
|
|
|
|
return 1
|