WTS/game/scripts/events/labels.rpy
LoafyLemon 1c813f5efb Bug fixes
* Fixed teleport animation issues
* Reimplemented and fixed 'centered' speaker
* Removed menu yalign params (obsolete)
* Reimplemented side image support for speakers
* Fixed selected item usable state for non-owned items in inventory
2024-09-24 16:32:33 +01:00

176 lines
4.2 KiB
Plaintext

label setup_fireplace_hangout(char=None):
if not states.env.daytime: # Night time
show screen blkfade
$ states.fireplace_started = True
$ fireplace_OBJ.foreground = "fireplace_fire"
scene onlayer dolls
call gen_chibi("hide")
call sna_chibi("hide")
call ton_chibi("hide")
else: # states.env.daytime
stop background
show screen blkfade
scene onlayer dolls
call gen_chibi("hide")
call sna_chibi("hide")
call ton_chibi("hide")
# Proceed as usual
if char == "snape":
show screen with_snape(ani=True)
elif char == "tonks":
show screen with_tonks_animated
$ chair_OBJ.hidden = True
$ chair_left_OBJ.hidden = True
hide screen bld1
hide screen blkfade
with fade
return
label slap_her:
play sound "sounds/slap_02.ogg" #SLAP!
show screen white
with hpunch
pause.08
hide screen white
return
label kiss_her:
play sound "sounds/kiss.ogg" #Kiss!
with hpunch
pause.08
return
label spit_on_her:
play sound "sounds/spit.ogg" #Kiss!
show screen white
pause.2
hide screen white
with hpunch
pause.08
return
label cast_spell(spell=""):
if spell in ["revelio","imperio"]:
stop music fadeout 2.0
play sound "sounds/magic2.ogg"
show screen white
pause.1
hide screen white
with hpunch
return
label cum_block:
show screen white
pause.1
hide screen white
pause.2
show screen white
pause.1
hide screen white
with hpunch
return
label increase_house_points(house, points):
call bld
call notes
if house.startswith("g"):
$ states.env.gryffindor += points
nar "Gryffindor has received {number=points} house points today!"
elif house.startswith("h"):
$ states.env.hufflepuff += points
nar "Hufflepuff has received {number=points} house points today!"
elif house.startswith("r"):
$ states.env.ravenclaw += points
nar "Ravenclaw has received {number=points} house points today!"
else:
$ states.env.slytherin += points
nar "Slytherin has received {number=points} house points today!"
return
#TODO Check and fix teleport/heal effect position (chibis are now anchored bottom-left)
label teleport(position=None,effect=True,poof_label=None):
python:
if position == "genie":
teleport_xpos = genie_chibi.pos[0]+75
teleport_ypos = genie_chibi.pos[1]
teleport_zorder = 3
elif position == "hermione":
teleport_xpos = hermione_chibi.pos[0]+45
teleport_ypos = hermione_chibi.pos[1]
teleport_zorder = 3
elif position == "cho":
teleport_xpos = cho_chibi.pos[0]+45
teleport_ypos = cho_chibi.pos[1]
teleport_zorder = 3
elif position == "astoria":
teleport_xpos = astoria_chibi.pos[0]+45
teleport_ypos = astoria_chibi.pos[1]
teleport_zorder = 3
elif position == "desk":
teleport_xpos = 320
teleport_ypos = 450
teleport_zorder = 5
else:
teleport_xpos = position[0]
teleport_ypos = position[1]
teleport_zorder = 2
if effect == True:
play sound "sounds/magic4.ogg"
show screen whitefade
with d1
hide screen whitefade
with d1
show screen blkfade
with d1
hide screen blkfade
show heal_ani onlayer screens zorder teleport_zorder:
anchor (0.5, 1.0)
pos (teleport_xpos, teleport_ypos)
zoom 0.5
with d3
#stop music fadeout 1
hide heal_animation onlayer screens
if poof_label is not None:
call expression poof_label
show teleport_ani onlayer screens zorder teleport_zorder:
anchor (0.5, 0.7)
pos (teleport_xpos, teleport_ypos)
zoom 0.5
with d5
hide teleport_ani onlayer screens
with d5
if effect == True:
pause 1
return
# Dummy labels. To prevent crashes. # TODO: Remove later.
default hermione_action = None
label set_her_action(action=None, update=None):
$ hermione_action = action
return