label ast_chibi(action=None, xpos=None, ypos=None, flip=False): $ astoria_chibi.position(xpos, ypos, flip) if action == "hide": $ astoria_chibi.hide() return elif action == "leave": hide astoria_main hide screen bld1 hide screen blktone play sound "sounds/door.ogg" $ astoria_chibi.hide() with d3 pause .5 return elif action == "reset": $ astoria_chibi.do(None) return $ astoria_chibi.do(action) return label ast_walk(xpos=None, ypos=None, speed=1.0, action=None, reduce=False, path=None, flip=False): call hide_characters hide screen bld1 hide screen blktone with d3 if action == "enter": play sound "sounds/door.ogg" call ast_chibi(None, "door", "base", flip) with d3 if xpos or ypos: $ astoria_chibi.move((xpos, ypos), speed, reduce) elif action == "leave": $ astoria_chibi.show() $ astoria_chibi.move(("door", "base"), speed, reduce) play sound "sounds/door.ogg" $ astoria_chibi.hide() with d3 pause .5 elif path: $ astoria_chibi.show() $ astoria_chibi.move(path, speed, reduce) else: $ astoria_chibi.show() $ astoria_chibi.move((xpos, ypos), speed, reduce) return # Screens screen ast_cloth_pile(position=(440, 425)): # Default position: Right of desk, below feet. tag ast_cloth_pile zorder astoria_chibi.zorder add "characters/chibis/cloth_pile_r.webp" pos position zoom 0.5 # Chibi definition default astoria_chibi = Chibi("astoria", ["fix", "base", "bottom", "shoes", "top", "robe", "gloves"], update_astoria_chibi) init python: def update_astoria_chibi(chibi): # Assume chibi action has a matching image definition chibi_image = "ch_ast {}".format(chibi.action or "stand") chibi["base"] = chibi_image # Determine clothing state if astoria.is_worn("top"): chibi["top"] = "ag_top.webp" if astoria.is_worn("bottom") or (astoria.is_worn("top") and astoria.get_equipped("top").id == ast_top_ann.id): chibi["bottom"] = "ag_skirt.webp" if astoria.is_worn("robe") and not chibi.special: chibi["robe"] = "ag_robe.webp" if astoria.is_any_worn("bottom", "stockings"): if chibi.action == "wand_imperio": chibi["shoes"] = "ch_ast imperio_shoes" elif chibi.action == "walk": chibi["shoes"] = "ch_ast walk_shoes" else: chibi["shoes"] = "ag_shoes.webp"