* Fixed character calls breaking when the supplied number of expressions was less than 4, from now on expressions must be supplied as keyword arguments (this is already internally enforced)
63 lines
1.7 KiB
Plaintext
63 lines
1.7 KiB
Plaintext
|
|
label end_hooch_event:
|
|
hide hooch_main
|
|
with d3
|
|
pause.5
|
|
|
|
$ hooch.xzoom = 1
|
|
$ active_girl = None
|
|
$ hooch_busy = True
|
|
$ hooch.wear("all")
|
|
$ hooch.set_cum(None)
|
|
|
|
call music_block
|
|
jump main_room_menu
|
|
|
|
define character.hooch_say = Character("name_hooch_genie", show_icon="hooch", dynamic=True)
|
|
|
|
init python:
|
|
def hoo(what, mouth=None, eyes=None, eyebrows=None, pupils=None, cheeks=None, tears=None,
|
|
emote=None, face=None, xpos=None, ypos=None, pos=None, flip=None, trans=None, animation=False, **kwargs):
|
|
|
|
redraw = False
|
|
tag = hooch.tag
|
|
layer = hooch.layer
|
|
#showing = renpy.showing(name=tag, layer=layer)
|
|
|
|
if xpos != None or ypos != None:
|
|
xpos = sprite_pos.get("x").get(xpos, xpos) or hooch.pos[0]
|
|
ypos = sprite_pos.get("y").get(ypos, ypos) or hooch.pos[1]
|
|
hooch.pos = (xpos, ypos)
|
|
redraw = True
|
|
|
|
head_only = hooch.pos[1] == sprite_pos.get("y").get("head")
|
|
|
|
if any((mouth, eyes, eyebrows, pupils, cheeks, tears)):
|
|
hooch.set_face(mouth=mouth, eyes=eyes, eyebrows=eyebrows, pupils=pupils, cheeks=cheeks, tears=tears)
|
|
redraw = True
|
|
|
|
hooch.set_emote(emote)
|
|
|
|
if animation != False:
|
|
hooch.animation = animation
|
|
redraw = True
|
|
|
|
if flip != None:
|
|
hooch.xzoom = -1 if flip else 1
|
|
redraw = True
|
|
|
|
if redraw:
|
|
hooch.show()
|
|
|
|
if not renpy.in_rollback():
|
|
if trans:
|
|
renpy.with_statement(trans)
|
|
else:
|
|
renpy.with_statement(d2)
|
|
|
|
if what:
|
|
character.hooch_say(what, **kwargs)
|
|
|
|
if head_only:
|
|
hooch.hide()
|