label setup_fireplace_hangout(char=None): if not game.daytime: # Night time show screen blkfade $ states.fireplace_started = True $ fireplace_OBJ.foreground = "fireplace_fire" call hide_characters call gen_chibi("hide") call sna_chibi("hide") call ton_chibi("hide") else: # game.daytime stop background show screen blkfade call hide_characters 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"): $ gryffindor += points nar "Gryffindor has received {number=points} house points today!" elif house.startswith("h"): $ hufflepuff += points nar "Hufflepuff has received {number=points} house points today!" elif house.startswith("r"): $ ravenclaw += points nar "Ravenclaw has received {number=points} house points today!" else: $ 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): if position_ == "genie": dynamic: teleport_pos = (genie_chibi.pos[0]+75, genie_chibi.pos[1]) teleport_zorder = 3 elif position_ == "hermione": dynamic: teleport_pos = (hermione_chibi.pos[0]+45, hermione_chibi.pos[1]) teleport_zorder = 3 elif position_ == "cho": dynamic: teleport_pos = (cho_chibi.pos[0]+45, cho_chibi.pos[1]) teleport_zorder = 3 elif position_ == "astoria": dynamic: teleport_pos = (astoria_chibi.pos[0]+45, astoria_chibi.pos[1]) teleport_zorder = 3 elif position_ == "desk": dynamic: teleport_pos = (320, 450) teleport_zorder = 5 else: dynamic: teleport_pos = position_ teleport_zorder = 2 if effect: 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_pos 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_pos zoom 0.5 with d5 hide teleport_animation onlayer screens with d5 if effect: 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