define sus_requirements = { "category upper undergarment": 5, "category lower undergarment": 5, "category piercings & tattoos": 16, "touch head": 4, "touch breasts": 12, "touch vagina": 18, "unequip panties": 6, "unequip bra": 6, "unequip top": 3, "unequip bottom": 3, } define sus_responses = { "category_fail": "sus_reaction_category_fail", "equip": "sus_reaction_equip", "equip_fail": "sus_reaction_equip_fail", "unequip": "sus_reaction_unequip", "unequip_fail": "sus_reaction_unequip_fail", "touch": "sus_reaction_touch", "touch_fail": "sus_reaction_touch_fail", "equip_outfit": "sus_reaction_equip_outfit", "equip_outfit_fail": "sus_reaction_equip_outfit_fail", "blacklist": "sus_reaction_blacklist", "fallback": "sus_reaction_fallback", } label sus_reaction_category_fail(category): if category == "upper undergarment": sus "M--{w=0.2} my underwear? W-- {w=0.2}Why do you require me to--{w=0.2} *Ehm*..." ("base", "base", "base", "mid") elif category == "lower undergarment": sus "M--{w=0.2} my underwear? W--{w=0.2} Why do you require me to--{w=0.2} *Ehm*..." ("base", "base", "base", "mid") elif category == "piercings & tattoos": sus "W--{w=0.2} What would people... Sir, I don't want to be made f--{w=0.2} fun of..." ("base", "base", "base", "mid") return label sus_reaction_touch(what): if what == "head": $ mouse_headpat() else: $ mouse_heart() if what == "head": $ mouse_headpat() $ random_number = renpy.random.randint(1, 3) if random_number == 1: sus "S--{w=0.2} Sir..." ("base", "base", "base", "mid") elif random_number == 2: sus "A--{w=0.2} Are you s-sure this is appropriate?" ("base", "base", "base", "mid") elif random_number == 3: sus "Professor, p--{w=0.2} please..." ("base", "base", "base", "mid") elif what == "breasts": $ mouse_heart() $ random_number = renpy.random.randint(1, 3) if random_number == 1: sus "W--{w=0.2} Why are you..." ("base", "base", "base", "mid") elif random_number == 2: sus "P--{w=0.2} please, it's embarrassing..." ("base", "base", "base", "mid") elif random_number == 3: sus "D--{w=0.2} don't... Don't look at me sir..." ("base", "base", "base", "mid") elif what == "vagina": $ mouse_heart() $ random_number = renpy.random.randint(1, 3) if random_number == 1: sus "M--{w=0.2} My..." ("base", "base", "base", "mid") elif random_number == 2: sus "S--{w=0.2} Sir..." ("base", "base", "base", "mid") elif random_number == 3: sus "P--{w=0.2} please sir, it's embarrassing..." ("base", "base", "base", "mid") return label sus_reaction_touch_fail(what): if what == "head": $ mouse_slap() sus "*Eeek!*" ("base", "base", "base", "mid") sus "I'm sorry sir, you scared me..." ("base", "base", "base", "mid") gen "(Poor thing isn't used to human touch...)" ("base", xpos="far_left", ypos="head") elif what == "breasts": $ mouse_slap() sus "Please don't bully me [sus_genie_name]..." ("base", "base", "base", "mid") elif what == "vagina": $ mouse_slap() sus "No! Please don't make me do this in front of everyone again..." ("base", "base", "base", "mid") gen "Do what?" ("base", xpos="far_left", ypos="head") sus "N--{w=0.2} nothing [sus_genie_name], forgive me." ("base", "base", "base", "mid") gen "(...)" ("base", xpos="far_left", ypos="head") return label sus_reaction_equip(item): ### Add specific clothing reactions here. # if item == : # sus "This looks awesome! I'll wear this with pride!" # TODO: Blacklist fallbacks have to be added. return label sus_reaction_equip_fail(item): ### Add specific clothing reactions here. # if item == : # sus "I won't wear because!" # else: # sus "I--{w=0.2} I..." ("base", "base", "base", "mid") gen "You don't like it?" ("base", xpos="far_left", ypos="head") sus "It's not like t-that, I just..." ("base", "base", "base", "mid") gen "Not comfortable wearing it?" ("base", xpos="far_left", ypos="head") sus "*Uh-huh*" ("base", "base", "base", "mid") gen "Okay, maybe later then." ("base", xpos="far_left", ypos="head") return label sus_reaction_unequip(item): ### Example # if item.type == "panties": # if sus_whoring > 15: # sus "You want to see my snatch?" # sus "You got it [genie_name]!" # return label sus_reaction_unequip_fail(item): if item.type == "panties": sus "I'm N--{w=0.2} not comfortable with that, [sus_genie_name]..." ("base", "base", "base", "mid") elif item.type == "bra": sus "P--{w=0.2} please, I can't be W--{w=0.2} wearing this [sus_genie_name].." ("base", "base", "base", "mid") elif item.type == "top": sus "I don't know if this is a good idea..." ("base", "base", "base", "mid") gen "You have nothing to be ashamed of." ("base", xpos="far_left", ypos="head") sus "S--{w=0.2} Sorry, I can't..." ("base", "base", "base", "mid") elif item.type == "bottom": sus "I can't..." ("base", "base", "base", "mid") gen "It's okay, we'll work on your confidence first." ("base", xpos="far_left", ypos="head") sus "Thank you..." ("base", "base", "base", "mid") return label sus_reaction_equip_outfit(item): ######################## ## Default Schoolgirl ## ######################## if item == _sus_outfit_default: gen "Could you put on your regular school uniform for me?" sus "Of course, [sus_genie_name]." ("base", "base", "base", "mid") sus "I'll just go and change real quick..." ("base", "base", "base", "mid") ########################## ## Muggle Casual Outfit ## ########################## elif item == sus_outfit_muggle_casual1: gen "Could you put on your normal clothing for me." ("base", xpos="far_left", ypos="head") sus "What do you... *Ehm*... Which clothing, [sus_genie_name]?" ("base", "base", "base", "mid") gen "The boring sweater one, and the jeans." ("base", xpos="far_left", ypos="head") sus "My muggle clothing?" ("base", "base", "base", "mid") gen "Sure!" ("base", xpos="far_left", ypos="head") sus "Okay then." ("base", "base", "base", "mid") ######################## ## Lingerie Outfit 1 ## ######################## elif item == sus_outfit_lace1: gen "Could you put on these lingerie for me please?" ("base", xpos="far_left", ypos="head") sus "Okay... One moment [sus_genie_name]." ("base", "base", "base", "mid") else: gen "Could you put this on for me?" ("base", xpos="far_left", ypos="head") sus "Of course [sus_genie_name]..." # TODO: Blacklist fallbacks have to be added. return label sus_reaction_equip_outfit_fail(item): ######################## ## Lingerie Outfit 1 ## ######################## if item == sus_outfit_lace1: gen "Could you put on these lingerie for me please?" ("base", xpos="far_left", ypos="head") sus "L--{w=0.2} Lingerie!?" ("base", "base", "base", "mid") gen "Yep." ("base", xpos="far_left", ypos="head") sus "I--{w=0.2} I--{w=0.2} Why would you ask me to--" ("base", "base", "base", "mid") gen "...{w=0.4} Maybe some other time then." ("base", xpos="far_left", ypos="head") else: sus "I--{w=0.2} I..." ("base", "base", "base", "mid") gen "You don't like it?" ("base", xpos="far_left", ypos="head") sus "It's not like t-that, I just..." ("base", "base", "base", "mid") gen "Not comfortable wearing it?" ("base", xpos="far_left", ypos="head") sus "*Uh-huh*" ("base", "base", "base", "mid") gen "Okay, maybe later then." ("base", xpos="far_left", ypos="head") return label sus_reaction_blacklist(item): sus "B--{w=0.2} but..." ("base", "base", "base", "mid") gen "But what?" ("base", xpos="far_left", ypos="head") if "top" in item.blacklist and susan.is_worn("top"): sus "I would feel cold without my top..." ("base", "base", "base", "mid") if "bottom" in item.blacklist and susan.is_worn("bottom"): sus "I c--{w=0.2} can't take off my skirt." ("base", "base", "base", "mid") gen "Can't or won't?" ("base", xpos="far_left", ypos="head") sus "Won't..." ("base", "base", "base", "mid") if "bra" in item.blacklist and susan.is_worn("bra"): gen "Let me guess, you aren't comfortable without a bra?" ("base", xpos="far_left", ypos="head") sus "*uh-huh*" ("base", "base", "base", "mid") if "panties" in item.blacklist and susan.is_worn("panties"): sus "The panties are e-essential for me..." ("base", "base", "base", "mid") gen "How about just giving it a try?" ("base", xpos="far_left", ypos="head") gen "If you don't like it you can always change back, that okay?" ("base", xpos="far_left", ypos="head") sus "Alright..." ("base", "base", "base", "mid") return label sus_reaction_fallback(item): if sus_whoring < get_character_requirement("susan", "unequip top") and not "top" in susan.blacklist and not item.type == "top": $ susan.equip(sus_top_school1) if sus_whoring < get_character_requirement("susan", "unequip bottom") and not "bottom" in susan.blacklist and not item.type == "bottom": $ susan.equip(sus_bottom_school1) if sus_whoring < get_character_requirement("susan", "unequip bra") and not "bra" in susan.blacklist and not item.type == "bra": $ susan.equip(sus_bra_base1) if sus_whoring < get_character_requirement("susan", "unequip panties") and not "panties" in susan.blacklist and not item.type == "panties": $ susan.equip(sus_panties_base1) sus "Just give me a second, I need to get my clothes back in order." ("base", "base", "base", "mid") sus "" ("base", "base", "base", "mid") return