Menus and bug fixes
* Reimplemented named menu options and a back/cancel button support * Reimplemented icon harts * Fixed flag check in blowjob public request * Fixed a potential resolution glitch in gui initialisation * Fixed a potential label parsing bug in Hermione's summon menu
This commit is contained in:
parent
2f74221abb
commit
dd128db58c
@ -132,7 +132,7 @@ label end_hg_pr_blowjob:
|
|||||||
$ hermione.set_cum(None)
|
$ hermione.set_cum(None)
|
||||||
|
|
||||||
# Increase Points
|
# Increase Points
|
||||||
if _events_filtered_completed_all:
|
if not _events_filtered_completed_all:
|
||||||
$ states.her.public_level += 1
|
$ states.her.public_level += 1
|
||||||
|
|
||||||
jump end_hermione_event
|
jump end_hermione_event
|
||||||
|
@ -87,13 +87,13 @@ default her_ev_anal_t6_e2 = Event(id="anal_t6_e2", label="hg_anal_sex_2_intro",
|
|||||||
default her_ev_anal_t6_e3 = Event(id="anal_t6_e3", label="hg_anal_sex_3", priority=7, req="states.her.tier >= 6", queue="her_eventqueue_anal", autoenqueue=True, autodequeue=False)
|
default her_ev_anal_t6_e3 = Event(id="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 = [
|
define hermione_favors = [
|
||||||
"her_eventqueue_talk_to_me",
|
("her_eventqueue_talk_to_me", "Talk to me!"),
|
||||||
"her_eventqueue_admire_panties",
|
("her_eventqueue_admire_breasts", "Show me your tits!"),
|
||||||
"her_eventqueue_admire_breasts",
|
("her_eventqueue_admire_panties", "Show me your panties!"),
|
||||||
"her_eventqueue_grope",
|
("her_eventqueue_grope", "Grope her!"),
|
||||||
"her_eventqueue_strip_for_me",
|
("her_eventqueue_strip_for_me", "Strip for me!"),
|
||||||
"her_eventqueue_handjob",
|
("her_eventqueue_handjob", "Give me a handy!"),
|
||||||
"her_eventqueue_titjob",
|
("her_eventqueue_titjob", "Give me a tittyjob!"),
|
||||||
"her_eventqueue_blowjob",
|
("her_eventqueue_blowjob", "Suck it!"),
|
||||||
"her_eventqueue_sex",
|
("her_eventqueue_sex", "Let's have sex!"),
|
||||||
]
|
]
|
||||||
|
@ -148,12 +148,12 @@ default her_ev_sex_public_t6_e2_hub = Event(id="sex_public_t6_e2_hub", label="hg
|
|||||||
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 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"])
|
||||||
|
|
||||||
define hermione_requests = [
|
define hermione_requests = [
|
||||||
"her_eventqueue_flirt_students",
|
("her_eventqueue_flirt_students", "Flirt with students!"),
|
||||||
"her_eventqueue_flirt_teachers",
|
("her_eventqueue_flirt_teachers", "Flirt with teachers!"),
|
||||||
"her_eventqueue_grope_public",
|
("her_eventqueue_grope_public", "Let them grope you!"),
|
||||||
"her_eventqueue_flash_public",
|
("her_eventqueue_flash_public", "Flash your tits!"),
|
||||||
"her_eventqueue_kiss_public",
|
("her_eventqueue_kiss_public", "Kiss a girl!"),
|
||||||
"her_eventqueue_handjob_public",
|
("her_eventqueue_handjob_public", "Give a handjob!"),
|
||||||
"her_eventqueue_blowjob_public",
|
("her_eventqueue_blowjob_public", "Give a blowjob!"),
|
||||||
"her_eventqueue_sex_public"
|
("her_eventqueue_sex_public", "Have sex!")
|
||||||
]
|
]
|
@ -151,7 +151,7 @@ label hermione_favor_menu:
|
|||||||
|
|
||||||
if not is_in_lead(gryffindor):
|
if not is_in_lead(gryffindor):
|
||||||
|
|
||||||
label silver_requests_root:
|
label .skip_points_check:
|
||||||
|
|
||||||
if her_level_up != None:
|
if her_level_up != None:
|
||||||
call tutorial("milestones")
|
call tutorial("milestones")
|
||||||
@ -165,13 +165,15 @@ label hermione_favor_menu:
|
|||||||
call tutorial("hearts")
|
call tutorial("hearts")
|
||||||
|
|
||||||
$ result = show_events_menu(hermione_favors)
|
$ result = show_events_menu(hermione_favors)
|
||||||
|
|
||||||
|
if result:
|
||||||
$ result.start()
|
$ result.start()
|
||||||
|
|
||||||
jump hermione_favor_menu
|
jump hermione_favor_menu
|
||||||
|
|
||||||
"-Public requests-" (icon="interface/icons/small/star_yellow.webp", style="disabled") if not game.daytime:
|
"-Public requests-" (icon="interface/icons/small/star_yellow.webp", style="disabled") if not game.daytime:
|
||||||
nar "Public requests are available during the day only."
|
nar "Public requests are available during the day only."
|
||||||
jump silver_requests_root
|
jump .skip_points_check
|
||||||
|
|
||||||
"-Public requests-" (icon="interface/icons/small/star_yellow.webp") if game.daytime:
|
"-Public requests-" (icon="interface/icons/small/star_yellow.webp") if game.daytime:
|
||||||
if states.her.public_level >= 16 and not "public" in states.her.ev.yule_ball.variant:
|
if states.her.public_level >= 16 and not "public" in states.her.ev.yule_ball.variant:
|
||||||
@ -186,16 +188,18 @@ label hermione_favor_menu:
|
|||||||
$ states.her.ev.yule_ball.variant = "public"
|
$ states.her.ev.yule_ball.variant = "public"
|
||||||
"No, go back.":
|
"No, go back.":
|
||||||
$ renpy.music.set_volume(1.0, 1.0)
|
$ renpy.music.set_volume(1.0, 1.0)
|
||||||
jump silver_requests_root
|
jump .skip_points_check
|
||||||
|
|
||||||
$ result = show_events_menu(hermione_requests)
|
$ result = show_events_menu(hermione_requests)
|
||||||
|
|
||||||
|
if result:
|
||||||
$ result.start()
|
$ result.start()
|
||||||
|
|
||||||
jump hermione_favor_menu
|
jump hermione_favor_menu
|
||||||
|
|
||||||
"-Public Shaming-" (icon="interface/icons/small/star_pink.webp", style="disabled") if not game.daytime:
|
"-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."
|
nar "Public Shaming events are available during the day only."
|
||||||
jump silver_requests_root
|
jump .skip_points_check
|
||||||
|
|
||||||
"-Public Shaming-" (icon="interface/icons/small/star_pink.webp")if game.daytime:
|
"-Public Shaming-" (icon="interface/icons/small/star_pink.webp")if game.daytime:
|
||||||
label not_now_ps:
|
label not_now_ps:
|
||||||
@ -210,7 +214,7 @@ label hermione_favor_menu:
|
|||||||
result = renpy.display_menu(menu_choices)
|
result = renpy.display_menu(menu_choices)
|
||||||
|
|
||||||
if result == "nvm":
|
if result == "nvm":
|
||||||
jump silver_requests_root
|
jump .skip_points_check
|
||||||
elif result == "vague":
|
elif result == "vague":
|
||||||
call favor_not_ready
|
call favor_not_ready
|
||||||
jump not_now_ps
|
jump not_now_ps
|
||||||
@ -227,19 +231,19 @@ label hermione_favor_menu:
|
|||||||
her "But I'll do anything for you, [name_genie_hermione]..." ("smile", "happy", "base", "mid")
|
her "But I'll do anything for you, [name_genie_hermione]..." ("smile", "happy", "base", "mid")
|
||||||
her "But if you really need it, I may as well..." ("smile", "happy", "base", "mid")
|
her "But if you really need it, I may as well..." ("smile", "happy", "base", "mid")
|
||||||
her "But I'll do it anyway..." ("smile", "happy", "base", "mid")
|
her "But I'll do it anyway..." ("smile", "happy", "base", "mid")
|
||||||
jump silver_requests_root
|
jump .skip_points_check
|
||||||
elif states.her.level >=20 and states.her.favors_convinced_stage == 2:
|
elif states.her.level >=20 and states.her.favors_convinced_stage == 2:
|
||||||
random:
|
random:
|
||||||
her "But an even bigger lead wouldn't hurt, I suppose..." ("base", "happy", "base", "mid")
|
her "But an even bigger lead wouldn't hurt, I suppose..." ("base", "happy", "base", "mid")
|
||||||
her "But since you've been helping me earn points for my house, I'll do it anyway..." ("base", "happy", "base", "mid")
|
her "But since you've been helping me earn points for my house, I'll do it anyway..." ("base", "happy", "base", "mid")
|
||||||
her "But since I'm already here, I might as well do it..." ("base", "happy", "base", "mid")
|
her "But since I'm already here, I might as well do it..." ("base", "happy", "base", "mid")
|
||||||
jump silver_requests_root
|
jump .skip_points_check
|
||||||
elif states.her.level >=18 and states.her.favors_convinced_stage == 2:
|
elif states.her.level >=18 and states.her.favors_convinced_stage == 2:
|
||||||
random:
|
random:
|
||||||
her "Although, considering what you said before... I'll do it anyway." ("soft", "wink", "base", "mid")
|
her "Although, considering what you said before... I'll do it anyway." ("soft", "wink", "base", "mid")
|
||||||
her "Although, I suppose another house may catch up... Okay, I'll do it." ("soft", "wink", "base", "mid")
|
her "Although, I suppose another house may catch up... Okay, I'll do it." ("soft", "wink", "base", "mid")
|
||||||
her "Although, an ever bigger lead would really show the Slytherins which house is the best." ("base", "wink", "base", "mid")
|
her "Although, an ever bigger lead would really show the Slytherins which house is the best." ("base", "wink", "base", "mid")
|
||||||
jump silver_requests_root
|
jump .skip_points_check
|
||||||
elif states.her.level >=16:
|
elif states.her.level >=16:
|
||||||
her "I have told you before, [name_genie_hermione], it was just a one time thing..." ("open", "happy", "base", "mid")
|
her "I have told you before, [name_genie_hermione], it was just a one time thing..." ("open", "happy", "base", "mid")
|
||||||
gen "What about tomorrow though?" ("base", xpos="far_left", ypos="head")
|
gen "What about tomorrow though?" ("base", xpos="far_left", ypos="head")
|
||||||
@ -263,7 +267,7 @@ label hermione_favor_menu:
|
|||||||
her "Yes... Just like that." ("base", "closed", "base", "mid")
|
her "Yes... Just like that." ("base", "closed", "base", "mid")
|
||||||
gen "That's my girl!" ("grin", xpos="far_left", ypos="head")
|
gen "That's my girl!" ("grin", xpos="far_left", ypos="head")
|
||||||
$ states.her.favors_convinced_stage = 2
|
$ states.her.favors_convinced_stage = 2
|
||||||
jump silver_requests_root
|
jump .skip_points_check
|
||||||
|
|
||||||
gen "If you do it, you could secure the win for your house you know..." ("base", xpos="far_left", ypos="head")
|
gen "If you do it, you could secure the win for your house you know..." ("base", xpos="far_left", ypos="head")
|
||||||
|
|
||||||
@ -271,12 +275,12 @@ label hermione_favor_menu:
|
|||||||
her "You really know how to talk me through, [name_genie_hermione]." ("soft", "narrow", "worried", "down")
|
her "You really know how to talk me through, [name_genie_hermione]." ("soft", "narrow", "worried", "down")
|
||||||
her "Okay I agree." ("open", "narrow", "base", "down")
|
her "Okay I agree." ("open", "narrow", "base", "down")
|
||||||
$ states.her.favors_convinced_stage = 2
|
$ states.her.favors_convinced_stage = 2
|
||||||
jump silver_requests_root
|
jump .skip_points_check
|
||||||
elif states.her.level >=16 and not states.her.favors_convinced_stage == 1:
|
elif states.her.level >=16 and not states.her.favors_convinced_stage == 1:
|
||||||
her "I guess you're right..." ("open", "happy", "base", "mid_soft")
|
her "I guess you're right..." ("open", "happy", "base", "mid_soft")
|
||||||
her "I'll do it... But just this once okay?" ("grin", "happyCl", "base", "mid")
|
her "I'll do it... But just this once okay?" ("grin", "happyCl", "base", "mid")
|
||||||
$ states.her.favors_convinced_stage = 1
|
$ states.her.favors_convinced_stage = 1
|
||||||
jump silver_requests_root
|
jump .skip_points_check
|
||||||
else:
|
else:
|
||||||
her "I could..." ("soft", "narrow", "base", "mid_soft")
|
her "I could..." ("soft", "narrow", "base", "mid_soft")
|
||||||
her "But I don't want to." ("normal", "closed", "base", "mid")
|
her "But I don't want to." ("normal", "closed", "base", "mid")
|
||||||
|
@ -311,34 +311,44 @@ init -1 python:
|
|||||||
total_applicable = len(filtered_queue)
|
total_applicable = len(filtered_queue)
|
||||||
total_events = len(queue.queue)
|
total_events = len(queue.queue)
|
||||||
completed = 0
|
completed = 0
|
||||||
hints = []
|
icons = []
|
||||||
|
|
||||||
|
path = "interface/icons/small/"
|
||||||
|
|
||||||
for ev in filtered_queue:
|
for ev in filtered_queue:
|
||||||
if ev.completed:
|
if ev.completed:
|
||||||
hints.append("v")
|
icons.append("interface/icons/small/heart_red.webp")
|
||||||
completed += 1
|
completed += 1
|
||||||
elif ev.completed_failed:
|
elif ev.completed_failed:
|
||||||
hints.append("x")
|
icons.append("interface/icons/small/heart_black.webp")
|
||||||
completed += 1
|
completed += 1
|
||||||
else:
|
else:
|
||||||
hints.append("o")
|
icons.append("interface/icons/small/heart_empty.webp")
|
||||||
|
|
||||||
s = "(" + "".join(hints) + f") {completed}/{total_applicable}"
|
hints = f" {completed}/{total_applicable}/{total_events}"
|
||||||
|
|
||||||
if config.developer:
|
return (hints, icons)
|
||||||
s += f"/{total_events}"
|
|
||||||
|
|
||||||
return s
|
|
||||||
|
|
||||||
l = []
|
l = []
|
||||||
|
|
||||||
for queue in queues:
|
for queue, title in queues:
|
||||||
if isinstance(queue, str):
|
if isinstance(queue, str):
|
||||||
queue = getattr(store, queue)
|
queue = getattr(store, queue)
|
||||||
|
|
||||||
title = f"-{queue.id}- {menu_hints(queue, filter)}"
|
hints, icons = menu_hints(queue, filter)
|
||||||
|
|
||||||
l.append( (title, queue) )
|
_kwargs = {"progress": icons}
|
||||||
|
title = f"-{title}-"
|
||||||
|
|
||||||
|
if config.developer:
|
||||||
|
title += hints
|
||||||
|
|
||||||
|
location = renpy.game.context().current
|
||||||
|
choice = ui.ChoiceReturn(title, queue, location, kwargs=_kwargs)
|
||||||
|
|
||||||
|
l.append( (title, choice) )
|
||||||
|
|
||||||
|
l.append( ("-Never mind-", False) )
|
||||||
|
|
||||||
return renpy.display_menu(l, **kwargs)
|
return renpy.display_menu(l, **kwargs)
|
||||||
|
|
||||||
|
@ -8,7 +8,7 @@ init python in gui:
|
|||||||
import store
|
import store
|
||||||
from store import settings
|
from store import settings
|
||||||
|
|
||||||
init(1080, 600)
|
init(1280, 720)
|
||||||
|
|
||||||
def is_dark():
|
def is_dark():
|
||||||
theme = settings.get("theme")
|
theme = settings.get("theme")
|
||||||
|
Loading…
Reference in New Issue
Block a user