code:
label lily_first_best_friend(the_sister, the_person):
    $ scene_manager = Scene()
    $ scene_manager.add_actor(the_person)
    mc.name "I've got some note cards right here if you need more."
    "You give a weak smile and she returns it, shaking her head a bit at the joke."
    the_person "No... I wanted to apologise again. I know I kind of blind sided you and I wanted to make sure things were good between us."
    mc.name "I admit it was surprising, but I'll get over it. Does that mean you'll still be around."
    the_person "At least for the semester, and after that... well I hope to keep spending time with [the_sister.fname]. If that's okay with you."
    mc.name "Of course, I'd never put some minor awkwardness over the happiness of my sister."
    the_person "Thank you, spending time with [the_sister.fname] is important to my happiness too."
    mc.name "It is good that you two get along so well. I know it can sometimes be hard to find friends in a class."
    the_person "Friends... right, has she... um... said anything about our friendship?"
    mc.name "She likes you, thinks you are smart and hard working."
    the_person "Oh, likes me as a classmate, that is good I suppose."
    mc.name "As a person too, she thinks you are fun to spend time with."
    $ scene_manager.update_actor(the_person, emotion = "sad")
    the_person "Yeah... she is great too..."
    "Something about the way she looks off into space as she talks about [the_sister.fname] catches your attention."
    mc.name "Were you hoping maybe for something more than just friendship with my sister?"
    "[the_person.fname] blushes and turns her head slightly."
    $ scene_manager.update_actor(the_person, emotion = "happy")
    the_person "I never see her with boys at school, it's like she just doesn't see them. So I started to wonder if she was, you know..."
    the_person "Sorry, is this going to make things more awkward?"
    mc.name "It doesn't have to, in fact it might make it less so. I mean I don't have to worry about what I did wrong if [the_sister.fname] is the reason you broke off our relationship."
    the_person "That was a big part of it, I meant it when I said I was looking for something different. I didn't think explaining it at the time would help."
    mc.name "At the time it probably wouldn't have, but I understand."
    the_person "At the risk of making it awkward again... do you know if [the_sister.fname] would ever consider someone like me?"
    "That is a tough question, you might want to be careful how you answer. It could have a pretty big impact on how your relationships progress."
    menu:
        "Absolutely (not fully written) (disabled)":
            mc.name "She would definitely be open to the idea of spending time with another woman."
            mc.name "She has done it before, but usually with a man present as well."
            the_person "Wow, I didn't think she was that adventurous. Do you happen to know what guy it was with?"
            menu:
                "Tell her":
                    mc.name "It was me, we have been fucking for awhile, and recently our mom joined us as well."
                    mc.name "If you'd like, I could suggest that you join us the next time we are looking for an extra partner."
                    "[the_person.title]'s face clearly shows her shock. She stands there frozen not sure how to react."
                    mc.name "I'm serious, if you'd like we can go ask right now. I'm sure she wouldn't mind."
                    "She stammers a bit, but clearly can't form a coherent response."
                    "You figure it might be better to cut to the chase, so you take her by the wrist and gently pull her down the hall to your sister's room."
                    $ scene_manager.add_actor(the_sister, position = "sitting")
                    mc.name "Hey, [the_sister.title], [the_person.fname] thinks you are hot and wondered if you would ever consider someone like her."
                    if willing_to_threesome(the_person, the_sister):
                        the_sister "That is sweet, she is pretty sexy too. Do you think we should get together."
                        mc.name "Absolutely, you two would be so hot together. I'd love to watch, or maybe even join in."
                        the_sister "Sounds good to me, what do you think [the_person.fname]."
                        "[the_person.fname] still can't figure out what to do, and stands there stunned."
                        "[the_sister.fname] grins and starts to walk forward, slowly pulling at the hem of her shirt to expose part of her midriff."
                        if willing_to_threesome(the_person, the_sister):
                            "[the_person.fname] is still frozen, but it is clear she wants this to happen."
                            "By the time [the_sister.title] is next to [the_person.fname] her shirt is off, and she leans forward to kiss her tentatively."
                            the_person "God, this is going so fast but I am so excited."
                            $ the_person.event_triggers_dict["friend_with_benefits"] = 100

                        else:
                            "[the_person.fname] takes a step back, horror starting to appear on her face."
                            "Suddenly, [the_sister.fname] doubles over laughing, dropping her seductive act."
                            the_sister "I'm so sorry, [the_person.fname]. I couldn't resist playing along. The look on your face."
                            "[the_sister.fname] shoots you a dirty look while [the_person.fname] isn't watching."
                            $ the_sister.change_happiness(-5)
                            the_person "Wait, what do you mean?"
                            mc.name "I'm sorry [the_person.title], I was just messing with you."
                            the_sister "I should have warned you about my brother, he can be so inappropriate sometimes."
                            the_person "Oh, right, I should have known you wouldn't be interested in me."
                            "[the_person.title] looks crestfallen as she takes another step back"
                            the_sister "Wait, he didn't make up that part?"
                            "[the_person.title] stammers a bit but can't get anything coherent out, instead she turns and rushes down the hall towards the bathroom."
                            the_sister "God, [mc.name], you have a real way with people you know that."
                            mc.name "I just don't see any reason to hesitate, I was trying to help."
                            the_sister "Well I think you've done enough, why don't you leave us alone for a bit."
                            $ the_person.change_happiness(-5)
                            $ the_person.event_triggers_dict["friend_with_benefits"] = 4
                            "Well, that was interesting. You head back to your room while [the_sister.title] goes to try and talk with [the_person.title]."

                    else:
                        the_sister "Not funny, [mc.name]. I've told you not to harass my friends when they are over."
                        $ the_sister.change_happiness(-5)
                        $ the_sister.change_love(-5)

                "Be cautious":
                    mc.name "It's not really something I got a ton of details about..."
                    the_person "Right, of course. She is your sister after all."
                    mc.name "Exactly, but if you want I can try and talk to her and find out more. See if maybe you have a chance."
                    the_person "Really? Thanks, [mc.name] that would be great."
                    $ the_person.change_happiness(5)
                    mc.name "Come see me next week and I'll give you an update."
        "Potentially":
            mc.name "I know she has been fairly non-traditional with relationships in the past."
            mc.name "I don't see any reason why it wouldn't work with you."
            the_person "Oh, good, I've been so nervous about scaring her away if it wasn't something she wants."
            mc.name "I could talk to her if you want, see what she thinks of the idea."
            the_person "That would be great, thanks [the_person.mc_title]!"
            mc.name "Come see me next week and I'll give you an update."
        "Maybe":
            mc.name "I'm not really sure, we haven't spent a lot of time talking about her sexual preferences."
            the_person "Oh, right, of course. I just meant has she ever dated anyone like me?"
            mc.name "Sorry, [the_person.fname], you would be the first but that doesn't mean it can't happen."
            mc.name "I could try and bring the topic up, get a feel for which way she would lean."
            the_person "Really? That would be awesome, thanks [the_person.mc_title]!"
            mc.name "Come see me next week and I'll give you an update."
        "No":
            mc.name "I can't imagine that she would."
            $ scene_manager.update_actor(the_person, emotion = "sad")
            if not the_sister.has_taboo("sucking_cock") or not the_sister.has_taboo("vaginal_sex") or not the_sister.has_taboo("anal_sex"):
                mc.name "I am confident that she likes dick and is currently getting all she needs."
            else:
                mc.name "I've never known her to show an interest in other girls. You should probably look elsewhere."
            mc.name "If you want, I could try to help you find someone who is interested."
            if the_person.sluttiness > 160: # currently disabled
                the_person "You know that would be kind of nice."
                # crisis to find her a partner
                mc.name "Come see me next week and I'll give you an update."
            else:
                the_person "No, that isn't really what I'm looking for."
                the_person "I guess I'll just keep hanging out with your sister and see if anything develops."
                mc.name "Alright, I'm here if that doesn't work out."
            $ the_person.event_triggers_dict["friend_with_benefits"] = 4 # she has to do it alone
    the_person "Alright, have a good night."
    "[the_person.title] waves goodbye as she leaves to get back to [the_sister.fname]."
    $ willing = lily_willing_threesome()
    if willing:
        "[the_sister.title] is certainly willing to do things with another girl."
    else:
        "You aren't sure what [the_sister.title] thinks of sex with another girl."
    "You definitely need to talk to her about this. Of course you also need to decide what you want her to do."
    if the_sister.event_triggers_dict.get("vaginal_revisit_complete", False) == True:
        "She has become your fuck toy and getting her into a new relationship might change that."
    elif the_sister.event_triggers_dict.get("anal_revisit_complete", False) == True:
        "She has been letting you fuck her ass, and getting her into a new relationship might put a stop to that."
    elif the_sister.event_triggers_dict.get("oral_revisit_complete", False) == True:
        "Now that she is willing to suck you off you aren't sure you want her to find someone else."
    "Should you encourage her to start dating [the_person.title]? If you do is there any possibility that you end up joining them in the future?"
    $ lily_first_followup = Action("[the_sister.name] First Followup", lily_mon_followup_requirement, "lily_first_followup_label")
    $ mc.business.add_mandatory_crisis(lily_first_followup)
    $ scene_manager.clear_scene()
    call advance_time from _call_advance_first_bf
    return

label lily_first_followup_label():
    $ scene_manager = Scene()
    $ the_person = get_lab_partner()
    $ the_sister = lily
    "As you are getting ready for bed you decide there is no time like the present and make your way to [the_sister.possessive_title]'s room."
    $ mc.location = lily_bedroom
    $ scene_manager.add_actor(the_sister, position = "sitting")
    the_sister "Hey there, [the_sister.mc_title]. Should I get used to seeing you on Mondays?"
    if cousin.location == lily_bedroom:
        $ cousin.change_location(downtown)
        mc.name "Hey, [the_sister.title], where is [cousin.fname]?"
        the_sister "Don't know, don't care. Just happy to have some alone time."
        mc.name "Oh, sorry, I can go."
        the_sister "No, wait! I meant from her, I like spending time with you."
        the_sister "You are always welcome to spend time with me."
    if mc.event_triggers_dict.get("lily_comfort", None) == "sex" or mc.event_triggers_dict.get("lily_comfort", None) == "hand" or mc.event_triggers_dict.get("lily_comfort", None) == "oral":
        "While it is tempting to try for a repeat of last time, you should actually talk to her first."
        "Maybe afterwards..."
        mc.name "I mean... I'm not gonna argue if you want me to come see you at night."
        "She smiles and starts to walk towards you before you hold out a hand to stop her."
        mc.name "Unfortunately that isn't why I'm here. I need to ask you some delicate questions."
    else:
        mc.name "I'd like that, but it's kinda going to depend on how you answer some delicate questions."
    the_sister "Oh, what's going on?"
    mc.name "First, I want you to promise to take some time to think. This is a bit complicated and I don't want you to make any rash decisions."
    the_sister "Now I'm a little worried, is something wrong with you or mom?"
    mc.name "No, nothing like that. Nothing is wrong, it's just well... [the_person.fname] asked me something and I wasn't sure how to answer her."
    the_sister "[the_person.fname]? She was just here. What did she ask?"
    mc.name "Look, she is scared of messing up your friendship and that is the last thing she wants."
    mc.name "Can you just promise you'll think before you do anything major with this information?"
    the_sister "...okay... I promise."
    if the_sister.has_role(girlfriend_role):
        "Well, no going back now. How are you going to ask your sister/girlfriend if she wants to start dating your ex?"
        mc.name "So you and I are dating, but obviously that relationship has some inherent difficulties."
        mc.name "[the_person.fname] and I hit it off after a few conversations, and started spending some time together too."
        the_sister "I know, and that is fine. I still don't understand where this is going."
        mc.name "I'm getting there, hang on."
        mc.name "So you know she kinda broke up with me, but neither of us have told you why."
        mc.name "The thing is that while she was getting closer to me she started to develop a crush on someone else..."
        mc.name "You."
        "Understanding dawns on [the_sister.possessive_title]'s face and you can tell that she is deep in thought, no doubt re-examining her recent interactions with [the_person.title]."
        mc.name "Obviously I can't blame her for picking you over me, I would do the same thing."
        "That earns you a faint smile, although she is still thinking."
        mc.name "And it would be pretty hypocritical of me to say you couldn't explore a relationship with her when I already have."
        mc.name "So she is scared to come out to you and wreck your friendship if you wouldn't be interested, but I couldn't exactly explain why she hasn't seen you flirting with boys at school."
    else:
        "Well, no going back now. How are you going to ask your sister if she wants to start dating your ex?"
        if not the_sister.has_taboo("vaginal_sex"):
            mc.name "So you and I have gotten very close, but I'm not sure what kind of future we really have."
        elif not the_sister.has_taboo("sucking_cock"):
            mc.name "Getting close to you has been lots of fun, but there are limits to what we should really do together."
        mc.name "[the_person.fname] and I hit it off after a few conversations, and started spending some time together too."
        the_sister "I know, and that is fine. I still don't understand where this is going."
        mc.name "I'm getting there, hang on."
        mc.name "So you know she kinda broke up with me, but neither of us have told you why."
        mc.name "The thing is that when we fooled around it was clear she wanted something else, and she was developing a crush on someone else..."
        mc.name "You."
        "Understanding dawns on [the_sister.possessive_title]'s face and you can tell that she is deep in thought, no doubt re-examining her recent interactions with [the_person.title]."
        mc.name "Obviously I can't blame her for picking you over me, I would do the same thing."
        "That earns you a faint smile, although she is still thinking."
        mc.name "And it would be pretty hypocritical of me to say you couldn't fool around with her when I already have."
        mc.name "So she is scared to come out to you and make unwelcome advances, but I couldn't exactly explain why she hasn't seen you hanging off any boys at school."
    the_sister "Wow... that is a lot. I want to say I'm surprised, but I guess I'm really not."
    the_sister "It is sort of like finally figuring out an optical illusion. Things make more sense now when I think about the way she behaves."
    the_sister "Plus I'm a little flattered but at the same time embarrassed that she didn't think she could talk to me directly."
    mc.name "It can be a tough conversation to have, and I don't think she has really had it with too many people yet."
    the_sister "Oh god, do you think we are the only two people that know? Will it mess her up if I reject her?"
    mc.name "I don't know. Like I said, it is a delicate situation."
    the_sister "Yeah..."
    mc.name "Of course the real question is what you want to do. You can't guilt yourself into a relationship you don't want to make her happy."
    $ willing = lily_willing_threesome()
    if willing:
        the_sister "Well first things first, I obviously don't have a problem with being intimate with another girl."
        if mc.business.event_triggers_dict.get("family_threesome", False) == True:
            the_sister "Even when you aren't around me and Mom have been getting pretty... involved."
    else:
        the_sister "I'm not opposed to the idea, I just kinda always pictured myself with a man."
    mc.name "Okay, that is one aspect of this taken care of, what about the relationship aspect?"
    the_sister "I don't know, I hadn't really thought of her in that way, and it's gonna take some time for me to process."
    mc.name "That's good, but she will want to know what I found out about your sexuality. What should I tell her?"
    if willing:
        the_sister "Go ahead and tell her I have some experience with women, but don't be too specific."
        mc.name "Obviously."
    else:
        the_sister "Tell her the truth, I've never been with a woman but I don't think I'd have a problem if we had a good connection."
        mc.name "Okay."
    the_sister "Does she know you were going to out her to me?"
    mc.name "No, and I feel terrible about that, but I didn't see a way to ask you without telling you why."
    the_sister "Yeah... maybe I can try and set her up with a boy and see how she reacts. Or maybe I could call a girl hot and see what she does... I'll figure something out."
    mc.name "Then what? If she confesses and asks you out are you going to say yes?"
    the_sister "I guess. I mean if it is just a date it won't be too different than hanging out with my friend."
    the_sister "What do you think I should do?"
    menu:
        "Go for it" if willing:
            $ the_person.event_triggers_dict["lily_truth"] = 3
            mc.name "My vote is definitely that you go for it. The two of you would be so hot together."
            the_sister "You know I'm not gonna let you watch right?"
            mc.name "Don't worry, I can imagine it just fine."
            mc.name "But seriously, I think she could make you happy. You are only young once, might as well take advantage of the opportunity while you have it."
        "Go for it \n Must have had a threesome (disabled)" if not willing:
            pass
        "Take it slow":
            $ the_person.event_triggers_dict["lily_truth"] = 1
            mc.name "You can always take things slow too, no need to rush right into sex."
            if not the_sister.has_taboo("vaginal_sex"):
                the_sister "Really? Promoting abstinence while you fuck your sister is a bit disingenuous."
                mc.name "Well everyone is different. You don't need to model your sex life after mine."
            elif not the_sister.has_taboo("sucking_cock") or not the_sister.has_taboo("anal_sex"):
                the_sister "Really? The restraint speech from you sounds a bit hypocritical."
                mc.name "Hey, I'm just saying it is an option."
            else:
                the_sister "Yeah, wouldn't want to do anything we regret."
                mc.name "Exactly."
        "Don't do it":
            $ the_person.event_triggers_dict["lily_truth"] = -1
            mc.name "It's not a good idea. If something goes wrong what are you going to do the rest of the semester?"
            the_sister "I guess you're right."
    if willing or (the_sister.sluttiness + 10*the_sister.opinion.getting_head) > 60:
        if the_person.event_triggers_dict.get("lily_truth", 0) > 1:
            the_sister "I guess you're right. I mean she is hot."
            the_sister "I'm kind of excited about next week now."
        elif the_person.event_triggers_dict.get("lily_truth", 0) > 0:
            the_sister "Right, no harm no foul. She is kinda hot."
            the_sister "Maybe I'll just make the first move and see what happens."
        else:
            the_sister "It's a shame, she is pretty hot."
            the_sister "I'll just wait for her to make the first move."
        $ the_person.event_triggers_dict["lily_truth"] += 1
    else:
        if the_person.event_triggers_dict.get("lily_truth", 0) > 0:
            the_sister "Sounds like a plan. I'll just wait for her to make the first move."
        else:
            the_sister "I'll just think of it as a compliment and try to move past this."
    mc.name "I think that whatever happens and whatever you ultimately decide she wants to keep your friendship strong."
    if the_person.event_triggers_dict.get("lily_truth", 0) > 0:
        the_sister "I know, and I do too, but if we could have something more that might be even better."
    else:
        the_sister "I know, I just hope she isn't too upset."
    $ scene_manager.clear_scene()
    return

label lily_second_best_friend(the_sister, the_person):
    the_person "So... did you talk to [the_sister.fname] about... things."
    "You did, but that doesn't mean you have to be honest about it. Plus you should be able to talk to [the_sister.possessive_title] again."
    if the_person.event_triggers_dict.get("lily_truth", 0) >= 3:
        "Last week you told [the_sister.title] to pursue [the_person.title]."
    elif the_person.event_triggers_dict.get("lily_truth", 0) >= 1:
        "Last week you told [the_sister.title] to accept a relationship with [the_person.title]."
    elif the_person.event_triggers_dict.get("lily_truth", 0) >= -1:
        "Last week you told [the_sister.title] to avoid a relationship with [the_person.title]."
    else:
        "You can't remember what you told [the_sister.title] last week, better just make something up for [the_person.title]."
    menu:
        "She is curious":
            mc.name "She is certainly curious. When I brought up the idea of her dating a girl she seemed intrigued."
            mc.name "If I had to guess she has thought about it before, but probably liked boys enough to go with the flow."
            mc.name "I think I could get her to ask you out if you give me a bit of time."
            $ the_person.event_triggers_dict["lily_lie"] = 2
        "Give her time":
            mc.name "She seemed a little surprised when I asked, sort of like she had never really thought about it before."
            mc.name "When we finished talking it seemed like she was deep in thought."
            mc.name "I think you need to give her some time, let her come around to the idea of seeing you as more than a friend."
            mc.name "I'll be sure to bring it up again, see if I can help nudge her in the right direction."
            $ the_person.event_triggers_dict["lily_lie"] = 1
        "Not going to happen":
            mc.name "She likes you, she really does, but nothing is going to happen."
            mc.name "I don't think she is ever going to return your feelings."
            mc.name "I'll talk to her again, but I think you might need to look elsewhere."
            $ the_person.event_triggers_dict["lily_lie"] = -1
    the_person "Well, that is good to know. At least I have some idea of what to expect."
    the_person "I guess no matter what I'm still gonna be hanging around. Maybe I'll be able to sway her a bit more while we are studying."
    mc.name "Sure, you never know what will happen."
    "You better make sure that your story checks out before [the_person.title] catches you in a lie."
    "Maybe your serums could help out. Can you convince [the_sister.title] that she wants to do what you already promised [the_person.title]?"
    the_person "Thanks again. I know this is kind of awkward and I really appreciate the help."
    if the_person.height < 0.9:
        "She steps forward goes up on her toes and kisses you on the cheek."
    else:
        "She steps forward and gives you a kiss on the cheek."
    $ lily_second_followup = Action("[the_sister.name] Second Followup", lily_mon_followup_requirement, "lily_second_followup_label")
    $ mc.business.add_mandatory_crisis(lily_second_followup)
    $ scene_manager.clear_scene()
    call advance_time from _call_advance_second_bf
    return

label lily_second_followup_label():
    $ scene_manager = Scene()
    $ the_person = get_lab_partner()
    $ the_sister = lily
    $ the_person.event_triggers_dict["friend_with_benefits"] = 2
    "As you are getting ready for bed you decide there is no time like the present and make your way to [the_sister.possessive_title]'s room."
    $ mc.location = lily_bedroom
    $ scene_manager.add_actor(the_sister, position = "sitting")
    the_sister "Hey there, [the_sister.mc_title]. Back again?"
    if cousin.location == lily_bedroom:
        $ cousin.change_location(downtown)
        mc.name "Hey, [the_sister.title], where is [cousin.fname]?"
        the_sister "Don't know, don't care. Just happy to have some alone time."
        mc.name "Oh, sorry, I can go."
        the_sister "No, wait! Did you want to talk?"
    mc.name "Yeah, I seems like [the_person.fname] chickened out."
    the_sister "Yeah... There were a few times where it seemed like she wanted to ask me something, but she kept changing the topic when I asked."
    mc.name "Have you thought anymore about what you want to do?"
    $ willing = lily_willing_threesome()
    if the_person.event_triggers_dict.get("lily_truth", 0) < 0 and willing:
        the_sister "Well since last week things have changed a bit."
        the_sister "I obviously don't have a problem with being intimate with another girl."
        if mc.business.event_triggers_dict.get("family_threesome", False) == True:
            the_sister "Even when you aren't around me and mom have been getting pretty involved."
    else:
        the_sister "Nothing has really changed for me. Did you change your mind about what I should do?"
    menu:
        "Go for it" if willing:
            $ the_person.event_triggers_dict["lily_truth"] = 2
            mc.name "In light of recent developments I think you should go for it."
            the_sister "You know I'm not gonna let you watch right?"
            mc.name "Don't worry, I can imagine it just fine."
            mc.name "But seriously, I think she could make you happy. You are only young once, might as well take advantage of the opportunity while you have it."
        "Go for it \n Must have had a threesome (disabled)" if not willing:
            pass
        "Take it slow":
            $ the_person.event_triggers_dict["lily_truth"] = 1
            mc.name "I've been thinking about it and you should give her a chance."
            mc.name "You can always take things slow too, no need to rush right into sex."
            if not the_sister.has_taboo("vaginal_sex"):
                the_sister "Really? Promoting abstinence while you fuck your sister is a bit disingenuous."
                mc.name "Well everyone is different. You don't need to model your sex life after mine."
            elif not the_sister.has_taboo("sucking_cock") or not the_sister.has_taboo("anal_sex"):
                the_sister "Really? The restraint speech from you sounds a bit hypocritical."
                mc.name "Hey, I'm just saying it is an option."
            else:
                the_sister "Yeah, wouldn't want to do anything we regret."
                mc.name "Exactly."
        "Don't do it":
            $ the_person.event_triggers_dict["lily_truth"] = -1
            mc.name "It's still not a good idea. If something goes wrong what are you going to do the rest of the semester?"
            the_sister "I guess you're right."
    if willing or (the_sister.sluttiness + 10*the_sister.opinion.getting_head) > 60:
        if the_person.event_triggers_dict.get("lily_truth", 0) > 1:
            the_sister "I guess you're right. I mean she is hot."
            the_sister "I'm kind of excited about next week now."
        elif the_person.event_triggers_dict.get("lily_truth", 0) > 0:
            the_sister "Right, no harm no foul. She is kinda hot."
            the_sister "Maybe I'll just make the first move and see what happens."
        else:
            the_sister "It's a shame, she is pretty hot."
            the_sister "I'll just wait for her to make the first move."
        $ the_person.event_triggers_dict["lily_truth"] += 1
    else:
        if the_person.event_triggers_dict.get("lily_truth", 0) > 0:
            the_sister "Sounds like a plan. I'll just wait for her to make the first move."
        else:
            the_sister "I'll just think of it as a compliment and try to move past this."
    mc.name "I think that whatever happens and whatever you ultimately decide she wants to keep your friendship strong."
    if the_person.event_triggers_dict.get("lily_truth", 0) > 0:
        the_sister "I know, and I do too, but if we could have something more that might be even better."
    else:
        the_sister "I know, I just hope she isn't too upset."
    $ scene_manager.clear_scene()
    return

label lily_third_best_friend(the_sister, the_person):
    $ wait = False
    if the_person.event_triggers_dict.get("lily_truth", 0) > 2: # lily starts things
        "As it gets later and later it seems like [the_person.title] is not going to visit you today."
        "That makes sense, [the_sister.title] was pretty excited about initiating things after your talk last week."
        if the_person.event_triggers_dict.get("lily_lie", 0) < 1: # it is a surprise
            "[the_person.title] must have been incredibly surprised when she made the first move."
        else: # it is welcome
            "[the_person.title] must have been thrilled when she made the first move."
    elif the_person.event_triggers_dict.get("lily_lie", 0) <1: # wait for next week
        $ wait = True
        if the_person.event_triggers_dict.get("lily_lie", 0) <0: # doesn't want to be disappointed LOOP
            the_person "Hey, [the_person.mc_title]."
            mc.name "Hey, shouldn't you be talking with [the_sister.fname]?"
            the_person "I chickened out. I was hoping maybe you had talked with her again."
            the_person "If anything has changed in the last week it might give me the courage to talk to her."
            mc.name "As a matter of fact..."
        else: # first time answer
            the_person "Hey, [the_person.mc_title]. Sorry to sound like a broken record, but did you happen to talk to [the_sister.fname]?"
            mc.name "I did, we had a bit of a heart–to–heart, and she is a bit like you."
            mc.name "She is young and she isn't exactly sure what kind of relationships she will be okay with."
        "Now for the moment of truth. Your serums give you some control over [the_sister.possessive_title] so if you want to change her opinion you probably have that power."
        if the_person.event_triggers_dict.get("lily_truth", 0) < 0:
            "She is currently opposed to the idea, but you don't need to tell [the_person.title] that."
        else:
            "She would go along with it, but not too eagerly. That doesn't mean you have to tell [the_person.title] the truth."
        menu:
            "She loves you":
                $ the_person.event_triggers_dict["lily_lie"] = 2
                mc.name "Despite that I think she has a bit of a crush on you too."
                mc.name "When I brought up the idea of being with another girl she seemed to keep thinking of you as that girl."
                mc.name "So at the very least I can assure you she thinks you are hot. Combine that with your shared friendship and I think you'll be pleased with her response."
                the_person "Wow, that is great. I've got butterflies just thinking about this."
            "You have a shot":
                $ the_person.event_triggers_dict["lily_lie"] = 1
                mc.name "She is certainly curious. Maybe not as much as you are, but she definitely does not have a problem with the idea."
                mc.name "It seems like it hadn't really occurred to her before, but now that I brought up the idea she is open to something."
                mc.name "She might still be a bit shocked when you come out to her, but you have a real shot of getting her to go out with you."
                the_person "That's good to know, takes some of the pressure off to not be scared of her reaction."
            "It's hopeless":
                $ the_person.event_triggers_dict["lily_lie"] = -1
                mc.name "Despite that I think you are going to have trouble convincing her to go out with you."
                mc.name "She still has some pretty strongly ingrained beliefs of what an appropriate relationship looks like."
                mc.name "Secretly I think she is curious but the social stigma she associates with the idea is going to make it hard to actually act on that curiosity."
                the_person "That is disappointing. I still think I need to take my shot, even if it doesn't work out."
        the_person "Alright, now I just need to work up the courage to tell her how I feel."
        mc.name "Give me another week to talk with her. I might be able to improve your odds."
        the_person "Yeah, of course. It is too late now anyway. I really hope we don't have too much homework next week."
        "With the conversation set for next week you have another chance to try and change [the_sister.title]'s opinion."
    else: # person starts things
        "As it gets later and later it seems like [the_person.title] is not going to visit you today."
        if the_person.event_triggers_dict.get("lily_lie", 0) > 1:
            "That makes sense, you already told her [the_sister.title] would definitely be interested."
        else:
            "That makes sense, you already told her you thought [the_sister.title] would come around eventually."
        if the_person.event_triggers_dict.get("lily_truth", 0) > 0: # it is welcome
            "Fortunately for her, [the_sister.possessive_title] is going to eagerly accept."
        elif the_person.event_triggers_dict.get("lily_truth", 0) > -1: # it is acceptable
            "Luckily [the_sister.title] is not going to object too much to the idea."
        else: # it is not good
            "Unfortunately [the_sister.title] is going to reject her. [the_person.title] is going to be pissed."
            $ the_person.change_stats(happiness = -20, love = -20, obedience = -20)
            $ the_person.event_triggers_dict["anger"] = 2
    if wait:
        $ lily_second_followup = Action("[the_sister.name] Second Followup", lily_mon_followup_requirement, "lily_second_followup_label")
        $ mc.business.add_mandatory_crisis(lily_second_followup)
    else:
        "You'll have to check in with [the_sister.title] and see how things went."
        $ lily_third_followup = Action("[the_sister.name] Third Followup", lily_mon_followup_requirement, "lily_third_followup_label")
        $ mc.business.add_mandatory_crisis(lily_third_followup)
    $ scene_manager.clear_scene()
    call advance_time from _call_advance_third_bf
    return

label lily_third_followup_label():
    $ scene_manager = Scene()
    $ temp_recording = None
    $ the_person = get_lab_partner()
    $ the_sister = lily
    if the_person.event_triggers_dict.get("lily_truth", 0) > 2: # she started
        $ temp_recording = "[the_sister.title] Proposes"
        $ scene_manager.add_actor(the_sister, emotion = "happy")
        "As you are getting ready for bed you hear a rapid knock at your door before [the_sister.title] pushes it open and lets herself in."
        "She is smiling widely and practically bubbling over with excitement."
        the_sister "Oh my god! [the_sister.mc_title] me and [the_person.fname] are dating!"
        the_sister "We were studying and I basically propositioned her."
        $ scene_manager.update_actor(the_sister, position = "sitting")
        "She makes her way over to your bed and sits down next to you."
        if the_person.event_triggers_dict.get("lily_lie", 0) < 1: #surprise
            the_sister "At first she was a little surprised. Honestly I worried for a moment that you were lying to me about her feelings."
        else: # as expected
            the_sister "She was acting nervous all day and I figured I would just cut to the chase. She was so relieved and excited."
        the_sister "We had some work to do, but we are both eager to start spending more time together."
    elif the_person.event_triggers_dict.get("lily_truth", 0) > -1: # she accepted
        $ temp_recording = "Buddy Proposes"
        if the_person.event_triggers_dict.get("lily_truth", 0) > 0: # that is great
            $ scene_manager.update_actor(the_sister, emotion = "happy")
            "As you are getting ready for bed you hear a knock at your door before [the_sister.title] pushes it open and lets herself in."
            "She has a silly grin on her face. It is pretty clear something good happened tonight."
            the_sister "Hey [the_sister.mc_title], you'll never guess what happened today."
            "You grin back and put on a thoughtful expression."
            mc.name "You got a good score on a test?"
            the_sister "No, silly, [the_person.fname] worked up the courage to ask me out."
            mc.name "Really, what did you say?"
            the_sister "I said yes, just like you wanted. She was so relieved and excited."
        else: # you told her not to
            $ scene_manager.update_actor(the_sister, emotion = "sad")
            "As you are getting ready for bed you hear a hesitant knock at your door before [the_sister.title] pushes it open a crack."
            the_sister "Hey, [the_sister.mc_title] could I come in a talk to you?"
            mc.name "Yeah, sure. Is something wrong?"
            "She makes her way over to your bed and sits down next to you taking your hand in hers."
            $ scene_manager.update_actor(the_sister, position = "sitting", emotion = "sad")
            the_sister "Kind of, [the_person.fname] asked me out tonight. I know you said I should turn her down, but she looked so..."
            the_sister "I don't know exactly. It was like she was hanging all of her hopes on my answer."
            the_sister "I just couldn't say no to that face. I want to explore a relationship with her."
            if the_sister.obedience > 180:
                menu:
                    "Be understanding":
                        pass
                    "Break them up":
                        mc.name "[the_sister.title] that is completely unacceptable. I told you what to do."
                        mc.name "Now you are going to have to break up with her."
                        the_sister "What? No I couldn't... it will break her heart."
                        mc.name "I'll take some of the blame, I should have been more clear the first time. This is not a request it is an order."
                        mc.name "You WILL do this."
                        $ the_sister.change_stats(happiness = -20, love = -20, obedience = 20)
                        the_sister "Yes, sorry I will."
                        mc.name "What was that?"
                        the_sister "Yes Master. I live to serve you."
                        if the_person.obedience > 180:
                            $ the_person.change_stats(happiness = -20, love = -20, obedience = 20)
                        else:
                            $ the_person.change_stats(happiness = -20, love = -20, obedience = -20)
                        $ the_person.event_triggers_dict["anger"] = 2
                        "That was harder than it should have been. Now you are going to have to deal with [the_person.title] too."
                        $ scene_manager.clear_scene()
                        if temp_recording not in mc.business.event_triggers_dict.get("study_recordings", []):
                            $ mc.business.event_triggers_dict["study_recordings"].append(temp_recording)
                        # Scene where you the_person comes to you after the_sister breaks up with her. New study buddy
                        return
            mc.name "That's okay. I understand."
            mc.name "I should have expected this. You've been so adventurous I really can't fault you for wanting to experiment more."
            mc.name "After all, I am the one who has pushed you to keep going further."
            if the_sister.obedience > 180:
                the_sister "I'll try to be better Master. I want to serve you and make you happy."
                $ the_sister.change_stats(happiness = 10, love = 10, obedience = 20)
            else:
                the_sister "I'm sorry I let you down, thank you for understanding."
                $ the_sister.change_stats(happiness = 10, love = 10, obedience = -10)
            mc.name "What are you plans now?"
    else: # she rejected
        $ temp_recording = "[the_sister.title] Rejects"
        "As you are getting ready for bed your door suddenly slams open and an angry looking [the_sister.fname] storms in."
        $ scene_manager.update_actor(the_sister, emotion = "angry")
        the_sister "What the FUCK!?! Did you tell [the_person.fname] that I would go out with her?"
        the_sister "What were you thinking? You told me to turn her down and then sent her in there to get rejected."
        the_sister "She was so confident she just blurted it out and I had to tell her no. The look on her face broke my heart, it was like she couldn't even understand what I was saying."
        the_sister "Fuck, you are such an asshole [mc.name]."
        $ scene_manager.update_actor(the_sister, position = "walking_away")
        $ the_sister.change_stats(happiness = -20, love = -20, obedience = -20)
        "With that she spins and walks out, leaving your door standing open."
        $ scene_manager.clear_scene()
        "Maybe that was a mistake..."
        #mom comes to check on you maybe
        if not mc.business.event_triggers_dict.get("study_recordings", []):
            $ mc.business.event_triggers_dict["study_recordings"] = []
        if "1. Friend Recording" not in mc.business.event_triggers_dict.get("study_recordings", []):
            $ mc.business.event_triggers_dict["study_recordings"].append("1. Friend Recording")
        if "2. Friend Recording" not in mc.business.event_triggers_dict.get("study_recordings", []):
            $ mc.business.event_triggers_dict["study_recordings"].append("2. Friend Recording")
        if temp_recording not in mc.business.event_triggers_dict.get("study_recordings", []):
            $ mc.business.event_triggers_dict["study_recordings"].append(temp_recording)
        return
    the_sister "We are going to start doing our classwork on campus between classes so that we can come back here on Monday night."
    the_sister "She hasn't told her parents yet, and I don't really want mom to know so soon."
    if mc.business.event_triggers_dict.get("family_threesome", False) == True:
        the_sister "I don't think she would be jealous, but still better safe than sorry."
    elif lily.event_triggers_dict.get("vaginal_revisit_complete", False) or the_sister.is_girlfriend:
        the_sister "After all it isn't like I'm a lesbian. We are just fooling around a bit."
    else:
        the_sister "I'm not really sure how I would explain it. I'm not even sure how much I'm going to like girls."
    the_sister "We also might try to meet up on some other days, but that will depend on how our scehdules work out."
    mc.name "Don't worry, your secret is safe with me. I am excellent at keeping secrets."
    the_sister "Thanks, I knew I could count on you."
    if the_sister.is_girlfriend:
        the_sister "This doesn't have to change anything between us."
        the_sister "Our relationship is still my highest priority, but I'm looking forward to exploring something with her too."
    elif the_sister.has_role(slave_role):
        the_sister "Of course you can still use me anytime you need."
        the_sister "I'll always be here for you [the_sister.mc_title], and maybe someday I can get her to be here for you too."
    elif lily.event_triggers_dict.get("vaginal_revisit_complete", False):
        the_sister "Don't worry you will still get to fuck me when you want."
        the_sister "I don't think I could give up real hot dick for her. Maybe I can even convince her to join us."
    elif lily.event_triggers_dict.get("anal_revisit_complete", False):
        the_sister "Don't worry, I'll still let you use my ass for relief."
        the_sister "We just have to be careful so she doesn't taste your cum if she eats me out."
    elif lily.event_triggers_dict.get("oral_revisit_complete", False):
        the_sister "I can still service you from time to time if you want."
        the_sister "But you better return the favour, [the_person.fname] might be better than you."
    else:
        the_sister "I'm sure you'll find someone too, maybe one of the girls at your office?"
    $ scene_manager.clear_scene()
    if not mc.business.event_triggers_dict.get("study_recordings", []):
        $ mc.business.event_triggers_dict["study_recordings"] = []
    if "1. Friend Recording" not in mc.business.event_triggers_dict.get("study_recordings", []):
        $ mc.business.event_triggers_dict["study_recordings"].append("1. Friend Recording")
    if "2. Friend Recording" not in mc.business.event_triggers_dict.get("study_recordings", []):
        $ mc.business.event_triggers_dict["study_recordings"].append("2. Friend Recording")
    if temp_recording not in mc.business.event_triggers_dict.get("study_recordings", []):
        $ mc.business.event_triggers_dict["study_recordings"].append(temp_recording)
    # mention that mc can watch the video
    # figure out how to reduce duplication in this label
    $ lily_buddy_date = Action("Lesbian Date", lily_buddy_date_requirement, "lily_buddy_date_label", requirement_args=day)
    $ mc.business.add_mandatory_crisis(lily_buddy_date)
    $ buddy_thanks = Action("Buddy Thanks", buddy_followup_requirement, "buddy_thanks_label")
    $ the_person.add_unique_on_talk_event(buddy_thanks)
    $ scene_manager.clear_scene()
    return

label buddy_thanks_label(the_person):
    $ scene_manager = Scene()
    $ temp_recording = None
    $ the_sister = lily
    $ scene_manager.add_actor(the_person, emotion = "happy")
    "As you wander across campus you spot [the_person.title]."
    "When she sees you, her face lights up, looking excited but then nervous."
    "Once you get close enough she seems almost bashful."
    the_person "Hey, [the_person.mc_title]."
    mc.name "Hi [the_person.title], what's new?"
    "She takes a deep breath, her eyes shining with excitement."
    the_person "So... [the_sister.fname] said yes."
    mc.name "Really? That's great news! I'm so happy for both of you."
    the_person "Thank you, you were always there for me when things got tough. And now..."
    "Her voice breaks slightly as she trails off into silence."
    "You wrap an arm around her, and feel the tension in her shoulders."
    mc.name "It was never about anything more than wanting to see you happy, [the_person.title]. You deserve it."
    "Your words are soft and comforting, filling the space between the two of you with warmth."
    the_person "You've been so incredible. I'm so glad that I met you and [the_sister.fname]."
    mc.name "Me too."
    "You pause for a moment, letting her relax a bit more"
    mc.name "Does this mean I won't be seeing you anymore on Mondays?"
    the_person "Probably not, I think I'm gonna mostly be in [the_sister.fname]'s room. But I'll be around, maybe even more often than before."
    $ the_person.change_stats(happiness = 10, love = 2, obedience = 10)
    "The two of you make a bit of small talk, before she has to move on for her next class."
    $ scene_manager.clear_scene()
    return

license: unknown


code:
init 4 python:
    def lily_buddy_date_requirement(the_day):
        if lily.available and get_lab_partner().available:
            if day%7 not in [0, 1, 4]:
                if not (erica.event_triggers_dict.get("insta_pic_intro_complete", False) and day%7 == 5):
                    if time_of_day > 2:
                        if day > the_day + TIER_1_TIME_DELAY:
                            return True
        return False

label lily_buddy_date_label(): # 4/5/6/7
    $ scene_manager = Scene()
    $ the_person = get_lab_partner()
    $ the_sister = lily
    $ the_person.event_triggers_dict["friend_with_benefits"] = the_person.event_triggers_dict.get("friend_with_benefits", 0) + 1
    $ single_orgasm = None
    #recordings unlock and follow up events
    if the_person.event_triggers_dict.get("friend_with_benefits", 0) > 3:
        if "Lily/Buddy Kissing" not in mc.business.event_triggers_dict.get("study_recordings", []):
            $ mc.business.event_triggers_dict["study_recordings"].append("Lily/Buddy Kissing")
            $ date_followup = Action("Date followup", lily_followup_requirement, "date_followup_label")
            $ mc.business.add_mandatory_crisis(date_followup)
    if the_person.event_triggers_dict.get("friend_with_benefits", 0) > 4:
        if "Lily/Buddy Groping" not in mc.business.event_triggers_dict.get("study_recordings", []):
            $ mc.business.event_triggers_dict["study_recordings"].append("Lily/Buddy Groping")
            if the_sister.sluttiness > the_person.sluttiness: #TODO both?
                $ lily_cuddle = Action("Lily cuddle", lily_followup_requirement, "lily_cuddle_label")
                $ mc.business.add_mandatory_crisis(lily_cuddle)
            else:
                $ buddy_gossip = Action("Buddy Gossip", buddy_followup_requirement, "buddy_gossip_label")
                $ the_person.add_unique_on_talk_event(buddy_gossip)
    if the_person.event_triggers_dict.get("friend_with_benefits", 0) > 5:
        if "Lily/Buddy Stripping" not in mc.business.event_triggers_dict.get("study_recordings", []):
            $ mc.business.event_triggers_dict["study_recordings"].append("Lily/Buddy Stripping")
            $ date_followup = Action("Date followup", lily_followup_requirement, "date_followup_label")
            $ mc.business.add_mandatory_crisis(date_followup)
    if the_person.event_triggers_dict.get("friend_with_benefits", 0) > 6:
        if "Lily/Buddy Oral Sex" not in mc.business.event_triggers_dict.get("study_recordings", []):
            $ mc.business.event_triggers_dict["study_recordings"].append("Lily/Buddy Oral Sex")
            if the_sister.sluttiness > the_person.sluttiness:
                $ lily_cuddle = Action("Lily cuddle", lily_followup_requirement, "lily_cuddle_label")
                $ mc.business.add_mandatory_crisis(lily_cuddle)
            else:
                $ buddy_gossip = Action("Buddy Gossip", buddy_followup_requirement, "buddy_gossip_label")
                $ the_person.add_unique_on_talk_event(buddy_gossip)
    #effect on girls
    $ temp_sluttiness = 0
    $ temp_happiness = 0
    $ temp_arousal = 0
    if the_person.event_triggers_dict.get("friend_with_benefits", 0) < 5: #kiss
        $ temp_sluttiness = 2
        $ temp_happiness = 5
        $ temp_arousal = 20
    elif the_person.event_triggers_dict.get("friend_with_benefits", 0) < 6: #grope
        $ temp_sluttiness = 5
        $ temp_happiness = 10
        $ lesbian_orgasm(the_person)
        $ lesbian_orgasm(the_sister)
    elif the_person.event_triggers_dict.get("friend_with_benefits", 0) < 7: #strip
        $ temp_sluttiness = 5
        $ temp_happiness = 2
        $ temp_arousal = 40
    else: #oral
        $ temp_sluttiness = 10
        $ temp_happiness = 10
        $ lesbian_orgasm(the_person)
        $ lesbian_orgasm(the_sister)
    if the_sister.sluttiness > the_person.sluttiness:
        $ the_sister.change_stats(happiness = temp_happiness, arousal = temp_arousal)
        $ the_person.change_stats(happiness = temp_happiness, slut = temp_sluttiness, arousal = temp_arousal)
    else:
        $ the_person.change_stats(happiness = temp_happiness, arousal = temp_arousal)
        $ the_sister.change_stats(happiness = temp_happiness, slut = temp_sluttiness, arousal = temp_arousal)
    $ del temp_sluttiness
    $ del temp_happiness
    $ del temp_arousal
    #current scene
    if day%7 == 0:
        "Unsurprisingly you do not get a visit during [the_sister.possessive_title]'s study time with [the_person.title]."
    if mc.business.event_triggers_dict.get("home_cameras", []):
        "You get an alert on your phone, it looks like [the_sister.title] and [the_person.title] are having some alone time in [the_sister.possessive_title]'s room."
    else:
        $ mc.start_text_convo(the_sister)
        the_sister "I'll be in my room with [the_person.fname], if you could run interference with mom." (what_style = "text_message_style")
        $ mc.end_text_convo()
        "You respond with a quick thumbs up, and wish you had a camera to see what they were up to."
    if mc.current_location_hub != home_hub:
        menu:
            "Go home":
                $ mc.change_location(bedroom)
                "Not wanting to miss a thing, you quickly go home and head to your room."
            "Stay where you are":
                pass
    elif mc.location != bedroom:
        "You move to your bedroom, so you can be sure not to miss a thing."
        $ mc.change_location(bedroom)
    if mc.location == bedroom:
        if the_person.event_triggers_dict.get("friend_with_benefits", 0) < 7:
            if not mc.business.event_triggers_dict.get("home_cameras", []):
                "You do occasionally hear the murmur of them talking. Maybe you should try to find a way to spy on their dates in the future."
            else:
                "You do occasionally hear the murmur of them talking. You should check your camera to see what is happening."
                if the_person.event_triggers_dict.get("friend_with_benefits", 0) < 5:
                    call lily_room_kiss(the_sister, the_person) from _call_lily_room_kiss_bf
                elif the_person.event_triggers_dict.get("friend_with_benefits", 0) < 6:
                    call lily_room_grope(the_sister, the_person) from _call_lily_room_grope_bf
                elif the_person.event_triggers_dict.get("friend_with_benefits", 0) < 7:
                    call lily_room_strip(the_person, the_sister) from _call_lily_room_strip_bf
                "With the action over (for now), you shut down your computer and get ready for bed."
            if the_person.event_triggers_dict.get("friend_with_benefits", 0) < 5:
                call lesbian_sex(the_sister, the_person, path = ["kiss", "kiss", "grope", "grope"] ) from _call_lesbian_sex_kiss_bf
            elif the_person.event_triggers_dict.get("friend_with_benefits", 0) < 6:
                call lesbian_sex(the_sister, the_person, path = ["kiss", "grope", "finger1", "both_finger", "both_finger", "both_finger", "both_finger"]) from _call_lesbian_sex_grope_bf
            elif the_person.event_triggers_dict.get("friend_with_benefits", 0) < 7:
                call lesbian_sex(the_sister, the_person, path = ["self_strip1", "self_strip1", "self_strip1", "self_strip1", "self_strip1", "self_strip1"]) from _call_lesbian_sex_strip_bf
        else:
            if not mc.business.event_triggers_dict.get("home_cameras", []):
                "You do occasionally hear what could be muffled moans. Some kind of spy camera is definitely sounding like a good investment."
            else:
                "You do occasionally hear what could be muffled moans. You should check your camera to see what is happening."
                if the_sister.sluttiness >= the_person.sluttiness:
                    call lily_room_oral(the_sister, the_person) from _call_lily_room_oral_bf
                else:
                    call lily_room_oral(the_person, the_sister) from _call_lily_room_oral_bf2
            call lesbian_sex(the_sister, the_person, path = ["suck1", "suck2", "oral1", "oral2", "69", "69", "69", "69"])
    if the_person.event_triggers_dict.get("friend_with_benefits", 0) < 7:
        $ lily_buddy_date = Action("Lesbian Date", lily_buddy_date_requirement, "lily_buddy_date_label", requirement_args=day)
        $ mc.business.add_mandatory_crisis(lily_buddy_date)
    else:
        $ lily_buddy_corruption = Action("Lesbian Date", lily_buddy_corruption_requirement, "lily_buddy_corruption_label", requirement_args=day)
        $ mc.business.add_mandatory_crisis(lily_buddy_corruption)
    $ scene_manager.clear_scene
    return

label date_followup_label():
    $ scene_manager = Scene()
    $ the_person = get_lab_partner()
    $ the_sister = lily
    $ needs_help = None
    if the_person.event_triggers_dict.get("friend_with_benefits", 0) == 4:
        $ needs_help = the_sister
    elif the_person.event_triggers_dict.get("friend_with_benefits", 0) == 6:
        $ needs_help = the_person
    if the_person.sluttiness < 40 < the_sister.sluttiness:
        $ needs_help = the_person
    elif the_sister.sluttiness < 40 < the_person.sluttiness:
        $ needs_help = the_sister
    if needs_help == the_sister: # lily needs work
        "Some time late in the night, you're awoken by the buzz of your phone getting a text. You roll over and ignore it."
        "A few minutes later it buzzes again, then again. You're forced to wake up and see what is the matter."
        $ mc.phone.add_non_convo_message(the_person, "Hey, are you awake?")
        $ mc.phone.add_non_convo_message(the_person, "I want to ask you about your sister")
        $ mc.phone.add_non_convo_message(the_person, "She is being a bit of a prude")
        "[the_person.title] has been texting you. She's sent you several messages, with the last ending:"
        $ mc.start_text_convo(the_person)
        the_person "Hello? I really need your help"
        mc.name "Sorry, I was sleeping. What's up?"
        the_person "Well, we've been spending a lot of time together, but she just doesn't seem to be interested in taking things to the next level"
        if not the_person.has_taboo("vaginal_sex") or not the_person.has_taboo("anal_sex"):
            the_person "I figured, being related to you, she would have no problem with physical relationships but she is holding back"
        elif not the_person.has_taboo("sucking_cock"):
            the_person "I mean, you and me didn't go too fast, but she is really reluctant to take the next step"
        else:
            the_person "I know you and I didn't really do much, but I was hoping to get a bit more physical with her"
        mc.name "And this is my problem how?"
        the_person "Please I don't know who else to go to with this. I was hoping maybe you could find some way to encourage her more wild side"
        mc.name "Okay, I'll see what I can do. You're gonna owe me one"
        the_person "Oh my god, thank you so much!"
        $ the_person.change_stats(happiness = 10)
        mc.name "Going back to sleep now"
        the_person "Right, sorry"
        the_person "Good night"
        the_person "Sorry"
        $ mc.end_text_convo()
        "You should probably find some time this week to try and corrupt [the_sister.title]. If you slip her a serum on Monday night it wouldn't hurt."
        if the_sister.sluttiness > 50:
            "Although, to be honest she probably just needs time. She has been pretty throughly corrupted already."
    elif needs_help == the_person: # person needs work
        $ scene_manager.add_actor(the_sister, get_pajama_outfit(the_sister))
        "As you are getting comfortable [the_sister.title] steps into the room and closes the door."
        the_sister "Hey, [the_person.mc_title] do you have a few minutes to talk?"
        mc.name "For you? Always."
        the_sister "It's about [the_person.fname]. We have been having fun lately, a lot of fun, but she seems reluctant to go further."
        mc.name "Well not everyone is as free spirited as we are."
        the_sister "I know, but you have done so much this year to help me open up..."
        if not the_sister.has_taboo("anal_sex"):
            "You reach out and give her ass a squeeze."
            mc.name "In more ways than one."
            "She moans slightly, but playfully swats your hand away."
            the_sister "I'm serious."
        mc.name "You're wondering if I could help her open up too?"
        the_sister "Yes, exactly. If you did I would be happy to repay you. Maybe I could even get [the_person.fname] to help."
        mc.name "For such a noble cause I'd be happy to help."
        the_sister "Great, maybe next time she is here you could talk to her."
        mc.name "Of course, I'll try to swing by with some drinks for you again. Make some excuse to leave the room and we will talk."
        the_sister "Awesome, I'm so excited to be able to spend time with both of you."
        $ scene_manager.update_actor(the_sister, position = "walking_away")
        "With her problem taken care of for the night [the_sister.possessive_title] turns to head back to her room for the night."
        if not the_sister.has_taboo("sucking_cock"):
            menu:
                "Stop her":
                    mc.name "Wait!"
                    $ scene_manager.update_actor(the_sister, position = "back_peek")
                    the_sister "Yeah?"
                    mc.name "Instead of repaying me after I help, what if you prepaid me now?"
                    the_sister "What's the matter, does the thought of helping me corrupt [the_person.fname] get you excited?"
                    $ scene_manager.update_actor(the_sister, position = "stand3", emotion = "happy")
                    the_sister "Are you picturing me playing with her [the_person.tits_description]?"
                    $ body_word = get_body_word(the_person)
                    the_sister "Or burying my head between her [body_word] thighs as I lick her sweet pussy?"
                    mc.name "Well I certainly am now."
                    "You reach down to adjust your pants, and then start to open them."
                    mc.name "Come on [the_sister.title], help me take care of this before you go back to bed."
                    $ scene_manager.update_actor(the_sister, position = "kneeling1")
                    "Coming closer with a grin, [the_sister.possessive_title] drops to her knees in front of you."
                    "You don't waste any more time, quickly revealing your half hard cock and subtly thrusting it towards [the_sister.title]'s eager mouth."
                    the_sister "You poor thing, let me see what I can do."
                    "She starts by planting a few kisses on your rapidly hardening shaft."
                    the_sister "Is this all for me? Or are you still thinking about [the_person.fname]?"
                    "She wraps her lips around your head, suckling gently while looking up at you for an answer."
                    mc.name "Honesty, [the_person.fname] is hot, but you are even hotter. What really gets me going though, is the idea of you two together."
                    "She moans appreciatively sliding further down your now fully erect dick before pulling off."
                    the_sister "Good enough, I can't wait to get to share you with her, but you've got some work to do first."
                    mc.name "Of course, speaking of work..."
                    "You thrust your hips suggestively. [the_sister.possessive_title!c] takes the hint and takes you back into her mouth."
                    "She works her way up and down a few times as you imagine how much better it will be to have two girls servicing you."
                    call fuck_person(the_sister, private = True, start_position = blowjob, start_object = mc.location.get_object_with_name("floor"), skip_intro = False, girl_in_charge = False, self_strip = True, hide_leave = False, position_locked = True, report_log = None, affair_ask_after = False, ignore_taboo = False, skip_condom = False) from _call_fuck_person_corruption_visit
                    mc.name "Thanks, you're incredible [the_sister.title]."
                    the_sister "I'm always happy to trade favors, but now I'm tired."
                    mc.name "Good night."
                    $ scene_manager.update_actor(the_sister, position = "back_peek")
                    "She treats you to one last smile as she leaves, swaying her hips deliberately as she steps into the hallway."
                "Let her go":
                    pass
    elif the_person.sluttiness < 40 and the_sister.sluttiness < 40: # they need a push
        if not mc.business.event_triggers_dict.get("home_cameras", []):
            "It is hard to tell from your room, but it seems like [the_sister.title] and [the_person.title] are taking things slow in their relationship."
        else:
            "Judging from the footage, it seems like [the_sister.title] and [the_person.title] are taking things slow in their relationship."
        "If you want them to get more physical with one another you are probably going to have to give them a push."
        "Maybe some serums slipped in their drinks Monday evening could get the job done."
    else:
        if not mc.business.event_triggers_dict.get("home_cameras", []):
            "It is hard to tell from your room, but it seems like [the_sister.title] and [the_person.title] are making progress in their physical relationship."
        else:
            "Judging from the footage, it seems like [the_sister.title] and [the_person.title] are taking things pretty fast in their physical relationship."
    "You roll over and try to get to sleep."
    $ scene_manager.clear_scene()
    return

label lily_cuddle_label():
    $ scene_manager = Scene()
    $ the_person = get_lab_partner()
    $ the_sister = lily
    $ temp_outfit = get_pajama_outfit(the_sister)
    "You are stirred awake as your bed is shifted by the weight of someone else climbing on the edge."
    $ scene_manager.add_actor(the_sister, temp_outfit, position = "sitting", emotion = "sad")
    $ scene_manager.apply_outfit(the_sister, temp_outfit)
    "Opening your eyes you are not terribly surprised to see [the_sister.possessive_title] looking at you with a bashful smile."
    the_sister "Sorry to wake you, [the_sister.mc_title], I was having trouble getting to sleep and thought you could help me."
    mc.name "Okay, I don't mind as long as you aren't keeping me up all night."
    if the_sister.arousal_perc < 50:
        the_sister "I hope I don't, but I need some help."
    elif the_sister.arousal_perc < 66:
        the_sister "That's okay, this shouldn't take too long."
    else:
        the_sister "That's okay. This should be quick."
    $ scene_manager.update_actor(the_sister, position = "walking_away")
    "[the_sister.title] slips under the covers next to you."
    "You can feel the heat radiating from her body, and she can't seem to settle down, shifting back and forth endlessly."
    "You roll onto your side and put your arm around [the_sister.title], pulling her close so you can spoon."
    if not the_sister.has_taboo("vaginal_sex") or not the_sister.has_taboo("anal_sex"):
        "As soon as she is in position she pushes back and starts to grind against you."
        mc.name "Were you looking for more than just cuddling [the_sister.title]?"
        the_sister "Sorry, yes. [the_person.fname] and I were fooling around earlier and it left me wanting more."
        the_sister "She's fun, but nothing compares to your big hard cock."
        "[the_sister.title] sighs and snuggles closer to you."
        if not the_sister.vagina_visible or not the_sister.tits_visible:
            mc.name "I don't think I'll be able to help you in all those clothes."
            $ scene_manager.update_actor(the_sister, position = "stand2")
            "[the_sister.title] nods and slips out of your arms. She quickly strips out of everything, including her panties, then slides back into bed."
            $ scene_manager.strip_to_vagina(the_sister)
            $ scene_manager.strip_to_tits(the_sister)
            $ scene_manager.update_actor(the_sister, position = "back_peek", emotion = "happy")
            the_sister "Is this better?"
            mc.name "Much."
        "You slip an arm around her chest and grab hold of a tit, then grind your hips against her ass a little bit."
        $ the_sister.change_arousal(5)
        "[the_sister.title] just lays next to you and moans softly while you play with her."
        "After a few minutes you slide your pants down and pull your cock out."
        mc.name "You've got me all worked up now too [the_sister.title]. We're going to have to take care of this before I can get to sleep."
        the_sister "I'm sorry. Do whatever you want, it's my fault anyway."
        "You slip your cock between her legs and run the tip along her pussy. [the_sister.title] moans softly, but stays perfectly still for you."
        $ the_sister.change_arousal(5)
        mc.name "That's a good girl, stay just like that until I'm finished."
        if not the_sister.has_taboo("vaginal_sex"):
            "Once you've gotten your tip wet from her juices you slide all the way into your sister."
            "[the_sister.title] gasps the first few times you pump into her, but before long the only noises she's making are soft moans. You pinch her nipple and roll it between your fingers while you fuck her."
            $ the_sister.change_arousal(5)
            "With her legs together [the_sister.title]'s pussy is incredibly tight, and within a few minutes you're ready to finish."
            $ the_sister.change_arousal(5)
            "You pump faster, bumping your hips into her ass each time, then begin to fire your load inside her."
            if the_sister.has_role(breeding_fetish_role):
                the_sister "Oh god, yes! Fill me up!"
                "[the_sister.title] quivers with pleasure, suddenly climaxing at the same time as you."
            else:
                "[the_sister.title] gasps in surprise, but still doesn't move."
            $ the_sister.have_orgasm(sluttiness_increase_limit = 50, reset_arousal = False, add_to_log = True)
            "You hold yourself tight against her, then give a few final thrusts before pulling out. [the_sister.title] sighs as you slip out of her, going limp against you."
            mc.name "That was great [the_sister.title]. Now we can get to bed."
            if the_sister.has_role(breeding_fetish_role) or the_sister.on_birth_control:
                "[the_sister.title] nods and cuddles closer to you. You fall asleep together, your cum dripping slowly out of her pussy."
            else:
                the_sister "We have to be more careful in the future [the_sister.mc_title], that or I need to start taking my birth control again. Eventually you're going to get me pregnant like this..."
                "[the_sister.title] cuddles closer to you. You fall asleep together, your cum dripping slowly out of her pussy."
        else:
            "Once you've gotten your tip wet from her juices you shift backward and slide all the way into your sister's ass."
            "[the_sister.title] gasps the first few times you pump into her, but before long the only noises she's making are soft moans. You pinch her nipple and roll it between your fingers while you fuck her ass."
            $ the_sister.change_arousal(5)
            "With her legs together [the_sister.title]'s ass is incredibly tight, and within a few minutes you're ready to finish."
            $ the_sister.change_arousal(5)
            "You pump faster, bumping your hips into her ass each time, then begin to fire your load into her bowels."
            if the_sister.has_role(cum_fetish_role):
                the_sister "Oh god, yes! Fill me up!"
                "[the_sister.title] quivers with pleasure, suddenly climaxing at the same time as you."
            else:
                "[the_sister.title] gasps in surprise, but still doesn't move."
            $ the_sister.have_orgasm(sluttiness_increase_limit = 50, reset_arousal = False, add_to_log = True)
            "You hold yourself tight against her, then give a few final thrusts before pulling out. [the_sister.title] sighs as you slip out of her, going limp against you."
            mc.name "That was great [the_sister.title]. Now we can get to bed."
            "[the_sister.title] nods and cuddles closer to you. You fall asleep together, your cum dripping slowly out of her ass."
    elif not the_sister.has_taboo("touching_vagina"):
        the_sister "Oh, hey there."
        mc.name "There isn't much room on the bed, so we're going to have to get nice and close."
        the_sister "You're right. In that case..."
        $ mc.change_locked_clarity(10)
        $ scene_manager.update_actor(the_sister, position = "stand2")
        "[the_sister.title] slips out of your arms and stands up, pulling her pajamas off and leaving them in a pile. When she's down to just her underwear she slips back in and slides against you."
        $ scene_manager.strip_to_underwear(the_sister)
        the_sister "I don't want to get too hot, if we're right next to each other."
        $ scene_manager.update_actor(the_sister, position = "back_peek")
        if the_sister.tits_visible:
            "She pulls your arm around her again, planting your hand firmly on one of her naked tits. While she's getting comfortable she also rubs her ass up and down against your hard cock."
        else:
            "She pulls your arm around her again, planting your hand firmly on one of her tits. While she's getting comfortable she also rubs her ass up and down against your hard cock."
        $ scene_manager.update_actor(the_sister, temp_outfit)
        $ mc.change_locked_clarity(10)
        mc.name "Easy there [the_sister.title], or I'm going to have to repay the favour."
        "You pinch her nipple between a finger and thumb and she gasps."
        $ the_sister.change_arousal(5)
        mc.name "Or maybe that's what you want, right? To be played with?"
        "You slip your other hand down her legs, rubbing the inside of her thighs."
        the_sister "No, I just couldn't sleep and want to be comfortable."
        "[the_sister.title] moans while you play with her tits, then gasps again when you rub a finger along the length of her pussy."
        $ the_sister.change_arousal(5)
        mc.name "You're already wet, what's really going on?"
        the_sister "Okay... so me and [the_person.fname] were fooling around and well... I'm so horny, I need more."
        mc.name "So you came to me to see if I could help you get off?"
        $ scene_manager.strip_to_vagina(the_sister, half_off = True)
        "You pull her panties to the side and slip two fingers inside her, causing her to moan and arch her back a little bit."
        $ the_sister.change_arousal(5)
        the_sister "No, I just... ah..."
        mc.name "Don't say a word, I'll take care of you."
        "You knead your sister's breast with one hand while you finger her with the other. She was already wet when you slid your hand down, and now she's completely soaked."
        $ the_sister.change_arousal(5)
        "[the_sister.title] pants and moans, gasping any time your fingers brush against her clit. After a few minutes you feel her thighs start to tighten up around your hand."
        $ the_sister.change_arousal(5)
        mc.name "Are you getting close?"
        "[the_sister.title] whimpers and nods, legs clenching up."
        $ the_sister.change_arousal(5)
        "You finger her faster for a while, then pull out and rub her clit as fast as you can with two fingers."
        $ the_sister.change_arousal(5)
        "[the_sister.title] tenses up, curling into a ball and moaning loudly. Her breathing comes in short gasps for a few moments while you keep playing with her through her orgasm."
        $ the_sister.have_orgasm(sluttiness_increase_limit = 50, reset_arousal = False, add_to_log = True)
        "Finally you stop and let her recover. She straightens out on the bed again and pushes herself back against you."
        mc.name "Was that good?"
        the_sister "Mmhm. Thank you."
        mc.name "Good. Now let's get to sleep."
        "You hold [the_sister.title] next to you as you both drift off to sleep."
    elif not the_sister.has_taboo("touching_body"):
        the_sister "Hey!"
        mc.name "There isn't much room on the bed [the_sister.title]. If you want to sleep in here we're going to have to be close to each other."
        "[the_sister.title] thinks for a moment, then nods and pulls closer to you. You wrap an arm around her torso, ending up with one hand cupping a boob."
        $ mc.change_locked_clarity(10)
        the_sister "Comfortable?"
        mc.name "Ya, that feels good. Goodnight [the_sister.title]."
        the_sister "Goodnight [the_sister.mc_title]."
        "You both drift off to sleep cuddling with each other."
        $ the_sister.change_stats(happiness = 5, slut = 2)
    else:
        the_sister "Hey!"
        mc.name "There isn't much room on the bed [the_sister.title]. If you want to sleep in here we're going to have to be close to each other."
        the_sister "Sorry, this was a bad idea. I'll just go back to my room."
        $ the_sister.change_stats(slut = 2)
    $ scene_manager.clear_scene()
    return

label buddy_gossip_label(the_person):
    $ scene_manager = Scene()
    $ the_person = get_lab_partner()
    $ the_sister = lily
    if the_person.event_triggers_dict.get("friend_with_benefits", 0) < 6:
        $ scene_manager.add_actor(the_person)
        "It's been a while since you checked in with [the_person.title] so you approach her on campus."
        the_person "Hey [the_person.mc_title], how are you doing?"
        mc.name "I've been pretty good, but what about you? How are things going?"
        "[the_person.possessive_title!c]'s cheeks flush slightly."
        "There good... there's something I've been wanting to talk to you about. It involves [the_sister.fname]."
        mc.name "Oh? What about her?"
        the_person "Well... we've been seeing each other more often lately. Spending time together outside of class."
        "A mischievous grin spreads across her lips."
        the_person "And things have been getting pretty intense between us."
        "You nod slowly."
        the_person "She's just so amazing [the_person.mc_title], her body feels so good against mine, and when she kisses me... oh god, it makes me crazy."
        mc.name "Um, well, that's... great, I guess?"
        "Your voice sounds a little unconvinving, and [the_person.title] seems to notice the discomfort."
        the_person "Oh, sorry, I guess that was a bit inappropriate."
        the_person "I just wanted to fill you in. I know we've had some difficulty in the past, but I really value your opinion and advice."
        mc.name "Of course, it's been a long road for us, but I'm happy with where the three of us are right now."
        the_person "Thanks, I knew I could count on you!"
    else:
        $ scene_manager.add_actor(the_person, position = "sitting")
        "As you make your way across campus, you spot [the_person.title] sitting on a nearby bench, staring off in the distance."
        "Without thinking too much about it, you decide to join her."
        "You wave when you get close, but she doesn't notice until you walk right up and say hello."
        the_person "Hey there, sorry, I was a bit lost in thought."
        mc.name "Everything okay?"
        the_person "Better than okay, I think I know what they mean by head over heels in love now."
        mc.name "So you and [the_sister.fname] are having fun?"
        the_person "Oh my god, [the_person.mc_title], you would not believe how amazing last night was!"
        the_person "[the_sister.fname] and I went out for dinner, then we ended up at this super sexy club..."
        the_person "The music was incredible, and the atmosphere was just electric. We started dancing together, and pretty soon we couldn't keep our hands off each other."
        "Her voice drops to a husky whisper as she leans closer to you."
        the_person "She was grinding against me so hard, I swear I could feel every inch of her through our clothes."
        the_person "And when she wrapped her legs around my waist and arched her back... God, it was like nothing I've ever experienced before."
        "She bites her bottom lip, remembering the sensation clearly."
        "Her hands flutter nervously in her lap, but eventually find their way back to her thigh, tracing tiny circles along the muscle."
        the_person "And then we found this private little area where we could be alone, and she undid my top and started sucking on my nipples... It felt incredible."
        "Her eyes meet yours, searching for approval or understanding."
        the_person "I never knew she had it in her, it makes me want to explore even more... With her, I mean."
        "The more she talks, the harder it becomes to concentrace on anything besides the images forming in your mind."
        "Your cock strains painfully against your pants, and when she is staring off into space you take a moment to adjust yourself."
        if not the_person.has_taboo("touching_penis") or not the_person.has_taboo("sucking_cock") or not the_person.has_taboo("touching_body"):
            the_person "Is everything alright down there?"
            "She's caught you, and rests her hand on your thigh, rubbing up towards your crotch."
            the_person "I'm sorry [the_person.mc_title]! Here, let me help you with that."
            "Her fingers brush lightly against your erection, causing a wave of pleasure to ripple through your entire body."
            "Taking a deep breath, you nod slowly and close your eyes as she starts to stroke you."
            "After a quick look around at your surroundings, she opens your pants and lets your cock spring free."
            if not the_person.has_taboo("sucking_cock"):
                the_person "Yep, I was right you definitely need my help."
                call get_fucked(the_person, start_position = blowjob) from _call_get_fucked_buddy_gossip_1
            elif not the_person.has_taboo("touching_body") and the_person.has_large_tits:
                call get_fucked(the_person, start_position = tit_fuck) from _call_get_fucked_buddy_gossip_2
                the_person "Feeling better?"
            else:
                call get_fucked(the_person, start_position = handjob) from _call_get_fucked_buddy_gossip_3
            "You nod, still trying to catch your breath."
            mc.name "Yeah... thanks. That was really intense"
        else:
            "When she looks back, her eyes widen a bit, can she see the effect her story had on you?"
            the_person "I'm sorry [the_person.mc_title]! I shouldn't be talking about [the_sister.fname] like that to you... her brother."
            mc.name "It's okay, I'm just glad you're happy."
            the_person "I am happy. Really happy, and I'm pretty sure she is too."
            mc.name "Good, then I'm always here for you if you need someone to talk too."
        the_person "Now, I really should get going. Thanks for listening."
        "With one last glance in your direction she turns and walks away, disappearing around the corner of a building."
    $ the_person.change_stats(happiness = 10, obedience = 10, slut = 2)
    $ scene_manager.clear_scene()
    return