Compare commits

...

5 Commits

Author SHA1 Message Date
65af3fd0d5 Kinetic text
* Added kinetic text to Hermione anal sex favour.
* Removed unnecessary ctc calls.

* Minor fixes.
2024-05-30 17:26:10 +02:00
40a35cbc54 Merge remote-tracking branch 'origin/interface2' into kinetic_text 2024-05-30 14:03:42 +02:00
792467e25a Handle choice menu overflow 2024-05-29 22:16:58 +01:00
e9cadcdc89 Improve styling and implement confirm popup 2024-05-29 21:31:12 +01:00
676a90f519 Bug fix
* Fixed menu scale
2024-05-29 20:33:31 +01:00
5 changed files with 217 additions and 192 deletions

View File

@ -1351,7 +1351,7 @@ label hg_sex_2:
show her_sex_personal mouth_angry eyebrows_base eyes_happycl cheeks_blush as cg
her "{hearts}{shake}*AH*! IT'S FILLING ME UP!{/shake}{hearts}"
gen "I'm not done yet, bitch!"
gen "{shake}{size=+15}*ARGH*!!!!!!!!!!!!!!!!{/size}{/shake}"
gen "{shake}*ARGH*!!!!!!!!!!!!!!!!{/shake}"
stop background fadeout 2
play sound "sounds/slick_01.ogg"
@ -1589,7 +1589,7 @@ label hg_sex_3:
her "{wave}*Mmm*....{/wave}{heart}"
menu:
"-Agree with her-":
gen "Indeed [name_hermione_genie]... A perfectly normal response to getting ploughed by your headmaster."
gen "Indeed [name_hermione_genie]... A perfectly ordinary response to getting ploughed by your headmaster."
show her_sex_personal mouth_soft eyebrows_base eyes_narrow_mid cheeks_blush as cg
her "{hearts}*Mmm*...{hearts}"
gen "Because why shouldn't you enjoy it..."
@ -1824,34 +1824,34 @@ label hg_sex_3:
call slap_her
show her_sex_personal mouth_open_tongue eyebrows_worried eyes_wide_up cheeks_blush as cg
her "{shake}{size=+5}*Aah*....{/size}{/shake}{w=0.4}{nw}"
her "{shake}*Aah*....{/shake}{w=0.4}{nw}"
show her_sex_personal mouth_grin eyebrows_worried eyes_narrow_mid cheeks_blush as cg
her "{shake}{size=+5}*Aah*....{/size}{/shake}{fast}"
her "{shake}*Aah*....{/shake}{fast}"
call slap_her
show her_sex_personal mouth_open_tongue eyebrows_base eyes_wide_up cheeks_blush as cg
her "{shake}{size=+5}*Ah*....{/size}{/shake}{w=0.4}{nw}"
her "{shake}*Ah*....{/shake}{w=0.4}{nw}"
show her_sex_personal mouth_soft eyebrows_base eyes_narrow_mid cheeks_blush as cg
her "{shake}{size=+5}*Ah*....{/size}{/shake}{fast}"
her "{shake}*Ah*....{/shake}{fast}"
gen "You should be grateful--"
call slap_her
show her_sex_personal mouth_open_tongue eyebrows_base eyes_wide_up cheeks_blush as cg
her "{shake}{size=+5}*Ah*....{/size}{/shake}{w=0.4}{nw}"
her "{shake}*Ah*....{/shake}{w=0.4}{nw}"
show her_sex_personal mouth_soft eyebrows_base eyes_narrow_up cheeks_blush as cg
her "{shake}{size=+5}*Ah*....{/size}{/shake}{fast}"
her "{shake}*Ah*....{/shake}{fast}"
gen "That I--"
call slap_her
show her_sex_personal mouth_open_tongue eyebrows_base eyes_wide_up cheeks_blush as cg
her "{shake}{size=+5}*Ah*....{/size}{/shake}{w=0.4}{nw}"
her "{shake}*Ah*....{/shake}{w=0.4}{nw}"
show her_sex_personal mouth_soft eyebrows_base eyes_narrow_mid cheeks_blush as cg
her "{shake}{size=+5}*Ah*....{/size}{/shake}{fast}"
her "{shake}*Ah*....{/shake}{fast}"
gen "Take such good care of you!"
@ -1864,7 +1864,7 @@ label hg_sex_3:
play sound "sounds/slick_01.ogg"
with kissiris
show her_sex_personal mouth_grin eyebrows_base eyes_narrow_up cheeks_blush as cg
her "{shake}{size=+7}*Aah*!!!{heart}{heart}{heart} [name_genie_hermione]!{/size}{/shake}"
her "{shake}*Aah*!!!{heart}{heart}{heart} [name_genie_hermione]!{/shake}"
if name_genie_hermione == "Master":
@ -1919,7 +1919,7 @@ label hg_sex_3:
play sound "sounds/slick_01.ogg"
with kissiris
show her_sex_personal mouth_grin eyebrows_base eyes_narrow_up cheeks_blush as cg
her "{shake}{size=+7}{heart}*Ah*!!!{heart}{heart}{/size}{/shake}"
her "{shake}{heart}*Ah*!!!{heart}{heart}{/shake}"
gen "What did I just tell you!"

View File

@ -5,7 +5,7 @@ label modal_popup(title, entry, img=None, confirm="Okay"):
$ enable_game_menu()
return
screen modal_popup(title, entry, img=None, confirm="Okay", xysize=(600, 350)):
screen modal_popup(title, entry, img=None, confirm="Okay"):
modal True
layer "interface"
zorder 5
@ -17,17 +17,15 @@ screen modal_popup(title, entry, img=None, confirm="Okay", xysize=(600, 350)):
frame:
at gui_modal_popup
xysize xysize
label title
vbox:
ypos 20
add img xalign 0.5
text entry
textbutton confirm align (1.0, 1.0) action Return(True)
textbutton confirm action Return(True)
transform gui_fade:
@ -51,6 +49,8 @@ image gui_fade_both = Fixed(Frame(Image("gui/creamy_pumpkin_pie/fade_top.png", o
style frame is empty:
align (0.5, 0.5)
yminimum 200
maximum (600, 450)
fit_first True
xfill False
yfill False
@ -61,6 +61,7 @@ style frame_vbox:
xalign 0.5
first_spacing 0
yspacing 5
ypos 30
fit_first True
xfill False
yfill False
@ -75,12 +76,20 @@ style frame_label_text is who:
outlines [(2, "#000000", 1, 1)]
style frame_text is what:
xalign 0.5
xoffset 0
ypos 0
xsize None
color "#fff"
outlines [(1, "#000000", 1, 1)]
hinting "bytecode"
size 12
size 16
xmaximum 500
style frame_button is button:
hover_background Frame(Image("gui/creamy_pumpkin_pie/choice_alt.png", oversample=4), 0, 4, 0, 4, tile=False)
xpadding 25
align (0.5, 1.0)
style frame_button_text is choice_text:
align (0.5, 0.5)

View File

@ -15,17 +15,14 @@ screen confirm(message, yes_action=Return(True), no_action=Return(False)):
modal True
layer "interface"
zorder 5
style_prefix "frame"
style_prefix "confirm"
add "gui_fade_both" at gui_fade
frame:
at gui_modal_popup
xysize (500, 250)
vbox:
ypos 20
text message
hbox:
@ -35,6 +32,17 @@ screen confirm(message, yes_action=Return(True), no_action=Return(False)):
## Right-click and escape answer "no".
key "game_menu" action no_action
style confirm_frame is frame
style confirm_vbox is frame_vbox
style confirm_hbox:
fit_first True
align (0.5, 1.0)
spacing 25
style confirm_button is frame_button
style confirm_button_text is frame_button_text
style confirm_text is frame_text:
size 20
# Skip indicator screen
#
# The skip_indicator screen is displayed to indicate that skipping is in

View File

@ -153,44 +153,52 @@ screen choice(items):
variant "pc"
default has_icons = any(x is not None for x in [e.kwargs.get("icon", None) for e in items])
default columns = math.ceil(len(items) / 12)
vbox:
hbox:
at gui_choice_show_hide
for i, entry in enumerate(items, 1):
$ scale = (1.0 * (32 / max(32, len(entry.caption))))
$ icon = entry.kwargs.get("icon", None)
$ progress = entry.kwargs.get("progress", None)
for column in range(columns):
vbox:
spacing 2
$ start_index = column * 12
$ end_index = start_index + 12
for i, entry in enumerate(items[start_index:end_index], 1):
$ scale = (1.0 * (28 / max(28, len(entry.caption))))
$ icon = entry.kwargs.get("icon", None)
$ progress = entry.kwargs.get("progress", None)
button:
action entry.action
if i < 10 and entry.action:
keysym ("K_"+str(i), "K_KP"+str(i))
button:
action entry.action
text "[i]" style "choice_number":
at gui_perspective
# Handle columns
if columns > 1:
xmaximum (config.screen_width // columns)
hbox:
null width 16
at gui_perspective, gui_perspective_hover
if i < 10 and entry.action:
keysym ("K_"+str(i), "K_KP"+str(i))
if has_icons:
if icon:
add icon xysize (32, 32) xcenter 12 yalign 1.0 yoffset -4
else:
null width 32
text "[i+start_index]" style "choice_number":
at gui_perspective
text entry.caption size 32 * scale
hbox:
null width 16
at gui_perspective, gui_perspective_hover
if progress:
bar value StaticValue(progress[0], progress[1]) offset (-16, 22)
if progress[0] == progress[1]:
text _("{wave}{size=20}Done!{/size}{/wave}") style "choice_progress" at transform:
rotate 12.5
gui_hover
if has_icons:
if icon:
add icon xysize (32, 32) xcenter 12 yalign 1.0 yoffset -4
else:
null width 32
text entry.caption size 32 * scale
if progress:
bar value StaticValue(progress[0], progress[1]) offset (-16, 22)
if progress[0] == progress[1]:
text _("{wave}{size=20}Done!{/size}{/wave}") style "choice_progress" at transform:
rotate 12.5
gui_hover
transform gui_perspective:
@ -257,12 +265,13 @@ style choice_button is button
style choice_button_text is button_text
style choice_vbox:
xalign 0.5
yanchor 1.0
ypos 0.75
align (0.5, 1.0)
spacing 10
style choice_hbox:
xalign 0.5
yanchor 1.0
ypos 0.75
spacing 2
style choice_button: