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*..." ("angry", "happy", "sad", "down", cheeks="blush") 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*..." ("soft", "happy", "sad", "downR", cheeks="blush") 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..." ("angry", "happy", "sad", "right", cheeks="blush") sus "" ("normal", "happy", "sad", "mid", cheeks="blush") 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..." ("soft", "base", "base", "mid") elif random_number == 2: sus "A--{w=0.2} Are you s-sure this is appropriate?" ("open", "base", "base", "right") elif random_number == 3: sus "Professor, p--{w=0.2} please..." ("base", "base", "sad", "downR", cheeks="blush") elif what == "breasts": $ mouse_heart() $ random_number = renpy.random.randint(1, 3) if random_number == 1: sus "W--{w=0.2} Why are you..." ("soft", "happy", "sad", "stare", cheeks="blush") elif random_number == 2: sus "P--{w=0.2} please, it's embarrassing..." ("angry", "happy", "sad", "downR", cheeks="blush") elif random_number == 3: sus "D--{w=0.2} don't... Don't look at me sir..." ("soft", "closed", "sad", "mid", cheeks="blush") elif what == "vagina": $ mouse_heart() $ random_number = renpy.random.randint(1, 3) if random_number == 1: sus "M--{w=0.2} My..." ("soft", "happy", "sad", "stare", cheeks="blush") elif random_number == 2: sus "S--{w=0.2} Sir..." ("soft", "closed", "sad", "mid", cheeks="blush") elif random_number == 3: sus "P--{w=0.2} please sir, it's embarrassing..." ("base", "happy", "sad", "downR", cheeks="blush") return label sus_reaction_touch_fail(what): if what == "head": $ mouse_slap() sus "*Eeek!*" ("angry", "happyCl", "sad", "mid", cheeks="blush") sus "I'm sorry sir, you scared me..." ("angry", "base", "sad", "mid", cheeks="blush") gen "(Poor thing isn't used to human touch...)" ("base", xpos="far_left", ypos="head") elif what == "breasts": $ mouse_slap() sus "Please...{w=0.4} Don't bully me [sus_genie_name]." ("angry", "happy", "sad", "down", cheeks="blush") elif what == "vagina": $ mouse_slap() sus "No! Please don't make me do this in front of everyone again..." ("angry", "happyCl", "sad", "mid", cheeks="blush") gen "Do what?" ("base", xpos="far_left", ypos="head") sus "N--{w=0.2} nothing [sus_genie_name], forgive me." ("angry", "wide", "sad", "stare", cheeks="blush") 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..." ("soft", "happy", "base", "right", cheeks="blush") gen "You don't like it?" ("base", xpos="far_left", ypos="head") sus "It's not like t-that, I just..." ("angry", "happy", "worried", "right", cheeks="blush") gen "Not comfortable wearing it?" ("base", xpos="far_left", ypos="head") sus "*Uh-huh*" ("normal", "happy", "worried", "down", cheeks="blush") 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]..." ("open", "happy", "sad", "right", cheeks="blush") elif item.type == "bra": sus "P--{w=0.2} please, I can't be D--{w=0.2} doing that [sus_genie_name].." ("soft", "happy", "worried", "down", cheeks="blush") elif item.type == "top": sus "I don't know if this is a good idea..." ("annoyed", "happy", "sad", "mid", cheeks="blush") gen "You have nothing to be ashamed of." ("base", xpos="far_left", ypos="head") sus "S--{w=0.2} Sorry, I can't..." ("soft", "happyCl", "worried", "mid", cheeks="blush") elif item.type == "bottom": sus "I--{w=0.2} I can't..." ("open", "happyCl", "sad", "mid", cheeks="blush") gen "It's okay, we'll work on your confidence first." ("base", xpos="far_left", ypos="head") sus "Thank you..." ("soft", "happy", "base", "mid", cheeks="blush") 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?" ("base", xpos="far_left", ypos="head") sus "Of course, [sus_genie_name]." ("base", "base", "base", "mid") sus "I'll just go and change real quick..." ("open", "base", "base", "right") ########################## ## 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--{w=0.2} *Ehm*...{w=0.4} Which clothing, [sus_genie_name]?" ("soft", "happy", "raised", "mid") gen "The boring sweater one, and the jeans." ("base", xpos="far_left", ypos="head") sus "My muggle clothing?" ("open", "base", "raised", "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...{w=0.4} One moment [sus_genie_name]." ("base", "narrow", "base", "downR", cheeks="blush") ############################## ## Latex Underwear Outfit 1 ## ############################## elif item ==sus_outfit_latex1: gen "Put your latex underwear on for me." sus "The-- The latex, but it's so tight..." ("soft", "narrow", "base", "down", cheeks="blush") gen "I know! Perfectly enhances your greatest features!" gen "Or squishes them, rather..." sus "Alright, if you say so..." ("base", "narrow", "base", "down", cheeks="blush") else: gen "Could you put this on for me?" ("base", xpos="far_left", ypos="head") sus "Of course [sus_genie_name]..." ("base", "base", "base", "mid") # 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!?" ("angry", "wide", "shocked", "mid", cheeks="blush") gen "Yep." ("base", xpos="far_left", ypos="head") sus "I--{w=0.2} I--{w=0.2} Why would you ask me to--" ("angry", "happyCl", "worried", "mid", cheeks="blush") gen "...{w=0.4} Maybe some other time then." ("base", xpos="far_left", ypos="head") ############################## ## Latex Underwear Outfit 1 ## ############################## elif item ==sus_outfit_latex1: gen "Put your latex underwear on for me." ("base", xpos="far_left", ypos="head") sus "The-- The what?!?" ("angry", "wide", "shocked", "mid", cheeks="blush") gen "These!" ("grin", xpos="far_left", ypos="head") sus "Oh, heavens!" ("clench", "wide", "base", "down", cheeks="blush") sus "I can't wear these!" ("open", "happyCl", "worried", "mid", cheeks="blush") gen "Of course you can! I made sure to have them made specifically for your size of--" ("base", xpos="far_left", ypos="head") gen "I mean, your size!" ("angry", xpos="far_left", ypos="head") sus "..." ("annoyed", "happy", "sad", "mid", cheeks="blush") gen "Oh, you meant can't as in won't." ("base", xpos="far_left", ypos="head") gen "Alright..." ("base", xpos="far_left", ypos="head") gen "Or squishes them, rather..." sus "Alright, if you say so..." ("base", "narrow", "base", "down", cheeks="blush") else: sus "I--{w=0.2} I..." ("angry", "happy", "sad", "mid") gen "You don't like it?" ("base", xpos="far_left", ypos="head") sus "It's not t-that I--{w=0.2} I just..." ("soft", "happyCl", "sad", "mid", cheeks="blush") gen "Not comfortable wearing it?" ("base", xpos="far_left", ypos="head") sus "*Uh-huh*" ("soft", "happy", "sad", "down", cheeks="blush") gen "Okay, maybe later then." ("base", xpos="far_left", ypos="head") return label sus_reaction_blacklist(item): sus "B--{w=0.2} but..." ("angry", "happy", "sad", "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..." ("annoyed", "happy", "sad", "down") if "bottom" in item.blacklist and susan.is_worn("bottom"): sus "I c--{w=0.2} can't take off my bottoms." ("open", "happy", "sad", "down", cheeks="blush") gen "Can't or won't?" ("base", xpos="far_left", ypos="head") sus "Won't..." ("annoyed", "happy", "sad", "mid", cheeks="blush") gen "Come off it, I'm sure you'll like it." ("base", xpos="far_left", ypos="head") sus "..." ("soft", "happy", "base", "right", cheeks="blush") 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*" ("soft", "happy", "sad", "down", cheeks="blush") sus "" ("soft", "happy", "sad", "mid", cheeks="blush") if "panties" in item.blacklist and susan.is_worn("panties"): sus "M--{w=0.2} My panties..." ("angry", "happy", "sad", "down", cheeks="blush") gen "Oh, right... Yeah you'd need to do something about those..." ("base", xpos="far_left", ypos="head") sus "I'd have to--{w=0.4} To..." ("soft", "happy", "sad", "downR", cheeks="blush") 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, would that be okay?" ("base", xpos="far_left", ypos="head") sus "Alright..." ("base", "happy", "base", "down", cheeks="blush") sus "" ("base", "happy", "base", "mid", cheeks="blush") 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." ("open", "base", "base", "right") sus "" ("base", "base", "base", "mid") return