Owner/slave paths for College Teachers

This commit is contained in:
kotax 2023-08-03 22:24:25 +00:00 committed by BondageProjects
parent 81e7a009ad
commit fa561b8cfd
13 changed files with 160 additions and 14 deletions
BondageClub
C008_DramaClass/Julia
C009_Library/Yuki
C011_LiteratureClass/Mildred
C013_BondageClub/Entrance

View file

@ -37,6 +37,18 @@ function CollegeDetentionGetTeacherKey() { LogAdd("TeacherKey", "College"); }
*/
function CollegeDetentionYukiWillRelease() { return (CollegeDetentionYukiWillReleaseAt < CurrentTime); }
/**
* Checks, if Yuki dominated the player in the library and player is not owned
* @returns {boolean} - Returns true if Yuki is Dominant and player is not owned
*/
function CollegeDetentionIsYukiDominant() { return (DialogLogQuery("Dominant", "NPC-Yuki") && !(Player.Owner)); }
/**
* Checks, if Yuki was blackmailed in the library
* @returns {boolean} - Returns true if Yuki is Submissive
*/
function CollegeDetentionIsYukiSubmissive() { return (DialogLogQuery("Submissive", "NPC-Yuki")); }
/**
* Creates a fully dressed Yuki
* @param {Character} C - The character object to dress up
@ -192,9 +204,10 @@ function CollegeDetentionRestrainPlayer(Type) {
/**
* The player invites Yuki to her room. Add her ribbon and the sleeping pill to the player's inventory
* @param {string} Role - How Yuki should join private room (Default: "None")
* @returns {void} - Nothing
*/
function CollegeDetentionInviteToPrivateRoom() {
function CollegeDetentionInviteToPrivateRoom(Role="None") {
CollegeDetentionDressBack();
/** @type {ItemBundle[]} */
@ -213,6 +226,18 @@ function CollegeDetentionInviteToPrivateRoom() {
NPCTraitSet(C, "Rude", 60);
NPCTraitSet(C, "Serious", 40);
C.Love = 20;
if (Role == "Submissive") {
NPCEventAdd(C, "NPCCollaring", CurrentTime);
InventoryWear(C, "SlaveCollar", "ItemNeck");
C.Owner = Player.Name;
C.Love = 100;
}
if (Role == "Domninant") {
NPCEventAdd(C, "PlayerCollaring", CurrentTime);
NPCEventAdd(C, "LastGift", CurrentTime);
Player.Owner = "NPC-Yuki";
C.Love = 100;
}
NPCTraitDialog(C);
ServerPrivateCharacterSync();
DialogLeave();

View file

@ -5,7 +5,7 @@ Orgasm,,,(She shakes and screams from a long orgasm.) Fuuuuuuuuck yeah! That..
NoOrgasm,,,(She pushes you away.) That's enough! I'm not in the mood anymore and I need to go.,,
0,,,(A small woman welcomes you coldly.) Another one? What's your story? Why were you sent to detention?,,
0,,Who are you?,I'm teacher Yuki. I monitor the detention room today. Why are you here?,DialogRemove(),"!DialogLogQuery(""BondageCollege"", ""Import"")"
0,,Hello teacher Yuki.,Hello DialogPlayerName. Why were you sent to detention today?,DialogRemove(),"DialogLogQuery(""BondageCollege"", ""Import"")"
0,3000,Hello teacher Yuki.,Hello DialogPlayerName. Why were you sent to detention today?,,"DialogLogQuery(""BondageCollege"", ""Import"")"
0,10,I shouldn't be here.,"If a teacher sent you here, then you should be here. What did you do wrong?",,
0,10,You're mistaken.,You've made the mistake by getting sent here. What did you do wrong?,,
0,10,That's none of your business.,(She frowns.) That's absolutely my business. What did you do wrong?,YukiLoveChange(-1),
@ -169,3 +169,16 @@ NoOrgasm,,,(She pushes you away.) That's enough! I'm not in the mood anymore a
2210,,No goodbye kisses?,Don't think you're funny young lady.,DialogRemove(),
2210,,What are you doing later?,That's none of your business. Now go.,DialogRemove(),
2210,,(Leave her.),,DialogLeave(),
3000,3100,"Your little pet is coming back to owner. ","How adorable DialogPlayerName, but I'm busy with detention right now. ",,IsYukiDominant()
3000,3200,(Menacingly) I'm putting you in detention.,(She stiffens from your tone and eyes you warily.) You dare to bring up the trap you laid in the library?,,IsYukiSubmissive()
3000,10,I just came by to say hi.,No one comes in by just to do that. What did you do wrong?,,
3100,3110,I've a room at a club just for pets like me.,"Oh? I can meet you there after I'm finished, but you must understand all pets need a collar. (She dangles a collar in your face.)",,CanInviteToPrivateRoom()
3100,20,But I just wanted to play for a little while.,A little while? How about the rest of the day instead!,,
3110,3120,Of course. (Kneel and allow her to lock the collar.),"(She smirks.) Now you're all mine to play with. See you at the club later, kitty.",,
3110,20,"I'm sorry, I can't wear that. ",(She frowns.) You've got some guts playing around. Looks like you get to spend the rest of the day with me!,,
3120,,(Meet her at the club later.),,"InviteToPrivateRoom(""Dominant"")",
3200,3210,"I dare, because I know a way to keep you quiet. ",And what might that be?,,
3210,3220,(Show her a collar). This will ensure your silence.,"(She shivers.) Well, I can't argue with that... ",,CanInviteToPrivateRoom()
3210,20,Um.... (You search frantically for a spare collar),Hah! I knew you were bluffing. Now you get to spend the rest of the day with me!,,
3220,3230,Now kneel and let me collar you.,"(She kneels and bows her head). Yes, Miss DialogPlayerName.",,
3230,,(Bring her to your room.),,"InviteToPrivateRoom(""Submissive"")",

1 PlayerGagged Isn't the sound of silence wonderful? (She laughs at you.)
5 NoOrgasm (She pushes you away.) That's enough! I'm not in the mood anymore and I need to go.
6 0 (A small woman welcomes you coldly.) Another one? What's your story? Why were you sent to detention?
7 0 Who are you? I'm teacher Yuki. I monitor the detention room today. Why are you here? DialogRemove() !DialogLogQuery("BondageCollege", "Import")
8 0 3000 Hello teacher Yuki. Hello DialogPlayerName. Why were you sent to detention today? DialogRemove() DialogLogQuery("BondageCollege", "Import")
9 0 10 I shouldn't be here. If a teacher sent you here, then you should be here. What did you do wrong?
10 0 10 You're mistaken. You've made the mistake by getting sent here. What did you do wrong?
11 0 10 That's none of your business. (She frowns.) That's absolutely my business. What did you do wrong? YukiLoveChange(-1)
169 2210 No goodbye kisses? Don't think you're funny young lady. DialogRemove()
170 2210 What are you doing later? That's none of your business. Now go. DialogRemove()
171 2210 (Leave her.) DialogLeave()
172 3000 3100 Your little pet is coming back to owner. How adorable DialogPlayerName, but I'm busy with detention right now. IsYukiDominant()
173 3000 3200 (Menacingly) I'm putting you in detention. (She stiffens from your tone and eyes you warily.) You dare to bring up the trap you laid in the library? IsYukiSubmissive()
174 3000 10 I just came by to say hi. No one comes in by just to do that. What did you do wrong?
175 3100 3110 I've a room at a club just for pets like me. Oh? I can meet you there after I'm finished, but you must understand all pets need a collar. (She dangles a collar in your face.) CanInviteToPrivateRoom()
176 3100 20 But I just wanted to play for a little while. A little while? How about the rest of the day instead!
177 3110 3120 Of course. (Kneel and allow her to lock the collar.) (She smirks.) Now you're all mine to play with. See you at the club later, kitty.
178 3110 20 I'm sorry, I can't wear that. (She frowns.) You've got some guts playing around. Looks like you get to spend the rest of the day with me!
179 3120 (Meet her at the club later.) InviteToPrivateRoom("Dominant")
180 3200 3210 I dare, because I know a way to keep you quiet. And what might that be?
181 3210 3220 (Show her a collar). This will ensure your silence. (She shivers.) Well, I can't argue with that... CanInviteToPrivateRoom()
182 3210 20 Um.... (You search frantically for a spare collar) Hah! I knew you were bluffing. Now you get to spend the rest of the day with me!
183 3220 3230 Now kneel and let me collar you. (She kneels and bows her head). Yes, Miss DialogPlayerName.
184 3230 (Bring her to your room.) InviteToPrivateRoom("Submissive")

View file

@ -18,6 +18,19 @@ function CollegeTeacherCanInviteToPrivateRoom() { return (LogQuery("RentRoom", "
*/
function CollegeTeacherMildredLoveIs(LoveLevel) { return (CollegeTeacherMildredLove >= parseInt(LoveLevel)); }
/**
* Checks, if Mildred won the Literature Class quiz and player is not owned
* @returns {boolean} - Returns true if Mildred is Dominant and player is not owned
*/
function CollegeDetentionIsMildredDominant() { return (DialogLogQuery("Dominant", "NPC-Mildred") && !(Player.Owner)); }
/**
* Checks, if Mildred lost the Literature Class quiz
* @returns {boolean} - Returns true if Mildred is Submissive
*/
function CollegeDetentionIsMildredSubmissive() { return (DialogLogQuery("Submissive", "NPC-Mildred")); }
/**
* Fully dress-up Mildred
* @param {Character} C - The character object to dress up
@ -140,9 +153,10 @@ function CollegeTeacherNewBackground(New) {
//
/**
* When the plater invites Mildred to her room, she gets the pillory
* @param {string} Role - How Mildred should join private room (Default: "None")
* @returns {void} - Nothing
*/
function CollegeTeacherInviteToPrivateRoom() {
function CollegeTeacherInviteToPrivateRoom(Role="None") {
CollegeTeacherDressBack();
InventoryAdd(Player, "Pillory", "ItemArms");
CommonSetScreen("Room", "Private");
@ -156,6 +170,20 @@ function CollegeTeacherInviteToPrivateRoom() {
NPCTraitSet(C, "Wise", 30);
NPCTraitSet(C, "Serious", 80);
C.Love = 20;
if (Role == "Submissive") {
NPCTraitSet(C, "Dominant", 40);
NPCEventAdd(C, "NPCCollaring", CurrentTime);
InventoryWear(C, "SlaveCollar", "ItemNeck");
C.Owner = Player.Name;
C.Love = 100;
}
if (Role == "Domninant") {
NPCTraitSet(C, "Dominant", 80);
NPCEventAdd(C, "PlayerCollaring", CurrentTime);
NPCEventAdd(C, "LastGift", CurrentTime);
Player.Owner = "NPC-Mildred";
C.Love = 100;
}
NPCTraitDialog(C);
ServerPrivateCharacterSync();
DialogLeave();

View file

@ -1,11 +1,11 @@
PlayerGagged,,,(She smirks and makes fun of your mumblings.),,
0,,,(A gray-haired woman stares at you as you enter the teacher's lounge.) What are you doing here?,,
0,,Who are you?,I'm teacher Mildred. How did you get here little miss?,DialogRemove(),"!DialogLogQuery(""BondageCollege"", ""Import"")"
0,,Hello teacher Mildred.,Greetings little miss DialogPlayerName. How did you get here?,DialogRemove(),"DialogLogQuery(""BondageCollege"", ""Import"")"
0,10,The door was open.,"That's impossible. I always double-check it. You've sneaked in, didn't you?",,
0,1000,Hello teacher Mildred.,Greetings little miss DialogPlayerName. How did you get here?,,"DialogLogQuery(""BondageCollege"", ""Import"")"
0,10,The door was open.,"That's impossible. I always double-check it. You sneaked in, didn't you?",,
0,10,I've found this key.,You've stolen it! And now you're sneaking in to steal our belongings?,,
0,10,Julia let me in.,"Even an eccentric like her wouldn't do that. You've sneaked in, didn't you?",,
0,10,Yuki let me in.,"That's impossible. Teacher Yuki knows the rules. You've sneaked in, didn't you?",,
0,10,Julia let me in.,"Even an eccentric like her wouldn't do that. You sneaked in, didn't you?",,
0,10,Yuki let me in.,"That's impossible. Teacher Yuki knows the rules. You sneaked in, didn't you?",,
0,,"Sorry, I will leave. (Leave her.)",,DialogLeave(),
10,20,I was looking for a place to relax.,That's not valid reason little miss. You should not be here.,,
10,20,I was curious. Is that a crime?,"(She gets angry.) Yes, it's against the rules! You should not be here little miss.",MildredLoveChange(-1),
@ -146,3 +146,16 @@ PlayerGagged,,,(She smirks and makes fun of your mumblings.),,
390,395,(Leave her.),,DialogLeave(),
395,,,Get out before I call security.,,
395,,(Leave her.),,DialogLeave(),
1000,1010,About the quiz in Literature Class...,(She noticably pauses and raises an eyebrow.),,CanInviteToPrivateRoom()
1000,10,I wanted to ask you a math question.,"It's not my office hours, and I don't leave the door unlocked. You sneaked in, didn't you?",,
1010,1100,I need discipline to improve my grades.,That much is clear. It's a pity that even the school has limits.,,IsMildredDominant()
1010,1200,You clearly don't have the discipline to lead.,"(She sighs.) I thought discipline was lacking in today's students, but it turns out it was me.",,IsMildredSubmissive()
1010,10,I'm not clear about question 69.,"It's not my office hours, and I don't leave the door unlocked. You sneaked in, didn't you?",,
1100,1110,Can you tutor me? I have a private room.,"I'm glad you're seeking discipline. However, I require strict obedience. Do you accept? (She shows you a collar.)",,
1110,1120,"Yes, Miss. (You kneel and the collar is locked.)","Good. Now take me to your room so we can start your lessons. ",,
1110,10,"(You gulp.) No, that's too much!",Then you snuck in here without a reason?,,
1120,,(Bring her to your room.),,"InviteToPrivateRoom(""Dominant"")",
1200,1210,"I can give you ""Professional Development"".","You would do that for me? I would be eternally grateful. ",,
1210,1220,I'll need your compliance. (Show her a collar.),"Yes Miss, anything to be more disciplined.",,
1210,10,"Actually, that sounds like too much work.",(She fumes.) You think this is funny? Why are you really here?,,
1220,,"Come with me now. ",,"InviteToPrivateRoom(""Submissive"")",

1 PlayerGagged (She smirks and makes fun of your mumblings.)
2 0 (A gray-haired woman stares at you as you enter the teacher's lounge.) What are you doing here?
3 0 Who are you? I'm teacher Mildred. How did you get here little miss? DialogRemove() !DialogLogQuery("BondageCollege", "Import")
4 0 1000 Hello teacher Mildred. Greetings little miss DialogPlayerName. How did you get here? DialogRemove() DialogLogQuery("BondageCollege", "Import")
5 0 10 The door was open. That's impossible. I always double-check it. You've sneaked in, didn't you? That's impossible. I always double-check it. You sneaked in, didn't you?
6 0 10 I've found this key. You've stolen it! And now you're sneaking in to steal our belongings?
7 0 10 Julia let me in. Even an eccentric like her wouldn't do that. You've sneaked in, didn't you? Even an eccentric like her wouldn't do that. You sneaked in, didn't you?
8 0 10 Yuki let me in. That's impossible. Teacher Yuki knows the rules. You've sneaked in, didn't you? That's impossible. Teacher Yuki knows the rules. You sneaked in, didn't you?
9 0 Sorry, I will leave. (Leave her.) DialogLeave()
10 10 20 I was looking for a place to relax. That's not valid reason little miss. You should not be here.
11 10 20 I was curious. Is that a crime? (She gets angry.) Yes, it's against the rules! You should not be here little miss. MildredLoveChange(-1)
146 390 395 (Leave her.) DialogLeave()
147 395 Get out before I call security.
148 395 (Leave her.) DialogLeave()
149 1000 1010 About the quiz in Literature Class... (She noticably pauses and raises an eyebrow.) CanInviteToPrivateRoom()
150 1000 10 I wanted to ask you a math question. It's not my office hours, and I don't leave the door unlocked. You sneaked in, didn't you?
151 1010 1100 I need discipline to improve my grades. That much is clear. It's a pity that even the school has limits. IsMildredDominant()
152 1010 1200 You clearly don't have the discipline to lead. (She sighs.) I thought discipline was lacking in today's students, but it turns out it was me. IsMildredSubmissive()
153 1010 10 I'm not clear about question 69. It's not my office hours, and I don't leave the door unlocked. You sneaked in, didn't you?
154 1100 1110 Can you tutor me? I have a private room. I'm glad you're seeking discipline. However, I require strict obedience. Do you accept? (She shows you a collar.)
155 1110 1120 Yes, Miss. (You kneel and the collar is locked.) Good. Now take me to your room so we can start your lessons.
156 1110 10 (You gulp.) No, that's too much! Then you snuck in here without a reason?
157 1120 (Bring her to your room.) InviteToPrivateRoom("Dominant")
158 1200 1210 I can give you "Professional Development". You would do that for me? I would be eternally grateful.
159 1210 1220 I'll need your compliance. (Show her a collar.) Yes Miss, anything to be more disciplined.
160 1210 10 Actually, that sounds like too much work. (She fumes.) You think this is funny? Why are you really here?
161 1220 Come with me now. InviteToPrivateRoom("Submissive")

View file

@ -27,6 +27,16 @@ function CollegeTheaterCanChooseRole() { return ((ReputationGet("Dominant") > -3
* @returns {void} - Nothing
*/
function CollegeTheaterGetTeacherKey() { LogAdd("TeacherKey", "College"); }
/**
* Checks if Julia stopped rebellion as Queen in College and if player doesn't have owner.
* @returns {boolean} - Returns TRUE if Julia stopped rebellion as Queen in College and if player doesn't have owner
*/
function CollegeTheaterIsJuliaQueen() { return (LogQuery("Dominant", "NPC-Julia") && !(Player.Owner)); }
/**
* Checks if Julia submitted as a damsel in College.
* @returns {boolean} - Returns TRUE if Julia submitted as a damsel in College
*/
function CollegeTheaterIsJuliaDamsel() { return (LogQuery("Submissive", "NPC-Julia")); }
/**
* Dresses Julia in her full theater outfit.
@ -219,6 +229,18 @@ function CollegeTheaterInviteToPrivateRoom(Role) {
NPCTraitSet(C, "Horny", 40);
NPCTraitSet(C, "Polite", 20);
C.Love = 20;
if (Role == "Submissive") {
NPCEventAdd(C, "NPCCollaring", CurrentTime);
InventoryWear(C, "SlaveCollar", "ItemNeck");
C.Owner = Player.Name;
C.Love = 100;
}
if (Role == "Domninant") {
NPCEventAdd(C, "PlayerCollaring", CurrentTime);
NPCEventAdd(C, "LastGift", CurrentTime);
Player.Owner = "NPC-Julia";
C.Love = 100;
}
NPCTraitDialog(C);
ServerPrivateCharacterSync();
DialogLeave();

View file

@ -1,7 +1,7 @@
PlayerGagged,,,Pupil! This is not a silent play. (She laughs.),,
0,,,(A large woman greets you warmly.) Oooooh! Are you here to audition for the next play?,,
0,,Who are you?,I'm Julia! An art teacher is this wonderful institution. I'm pleased to meet you pupil.,DialogRemove(),"!DialogLogQuery(""BondageCollege"", ""Import"")"
0,,It's nice to see you again Julia.,(She gives you a warm hug.) It's grande to see you again young pupil!,DialogRemove(),"DialogLogQuery(""BondageCollege"", ""Import"")"
0,2000,It's nice to see you again Julia.,(She gives you a warm hug.) It's grande to see you again young pupil!,,"DialogLogQuery(""BondageCollege"", ""Import"")"
0,10,Theater is for losers.,"No, no, no, no. Teatro is one of the oldest and greatest form or art, it transcends time and your soul.",JuliaLoveChange(0),
0,10,I'm not a great actor.,"Practice makes perfect! Teatro is one of the oldest and greatest form or art, it transcends time and your soul.",JuliaLoveChange(1),
0,10,I would love to audition.,"Magnifico! Teatro is one of the oldest and greatest form or art, it transcends time and your soul.",JuliaLoveChange(2),
@ -165,7 +165,7 @@ PlayerGagged,,,Pupil! This is not a silent play. (She laughs.),,
710,720,In a club downtown.,A club where I could meet artists? An acting club? An impro club?,,
710,720,I've had great teachers.,"I would love to meet them, are they in a school in town? Or in a theater group?",,
710,1000,That's my secret.,"I respect that. Check the school board, as soon as all the actors are found, we will start repeating.",,
720,730,I could bring you there.,"I would love to go there with you, but you cannot out like that.",,CanInviteToPrivateRoom()
720,730,I could bring you there.,"I would love to go there with you, but you cannot go out like that.",,CanInviteToPrivateRoom()
720,1000,I could bring you there.,"Maybe another day. For now, check the school board, as soon as all the actors are found, we will start repeating.",,!CanInviteToPrivateRoom()
720,1000,I'll tell you more another time.,"Very well. Check the school board, as soon as all the actors are found, we will start repeating.",,
730,740,That's not a problem. I'll explain on the road.,If you say so. Let's change and let's go young pupil.,,
@ -177,3 +177,18 @@ PlayerGagged,,,Pupil! This is not a silent play. (She laughs.),,
1000,1010,I'll do that.,"(You both dress up as she smiles.) You have lots of potential, see you soon little pupil.",DressBack(),
1010,,,"See you soon little pupil. If you see the next student, you can tell her to come in.",,
1010,,See you soon. (Leave her.),,DialogLeave(),
2000,2100,Doth my queen need ministrations from this servant?,"(She smiles broadly) Surely your services are indeed valuable, alas, this is but a fleeting moment.",,IsJuliaQueen()
2000,2200,"My damsel dearest, your services were most enjoyable.","(She giggles) And would I adore to serve you again, alas this is but a fleeting moment.",,IsJuliaDamsel()
2000,10,"I see you're running another show, can I audition?",Of course dear!,JuliaLoveChange(2),
2100,2110,"Maybe not. I have room at a club downtown. ",Si! And you could continue to serve me there!,,CanInviteToPrivateRoom()
2100,10,"And what a pity, but maybe we have a different story?",Teatro always has more stories to tell!,JuliaLoveChange(2),
2110,2120,The club does not take relationships lightly.,"(She turns serious and offers you a collar) I've seen this around campus as a symbol of service, do you promise to serve me?",,
2120,2130,"I do, Queen. (Kneel and allow her to lock the collar.)","Splendid! Take me to thy domicile, servant!",,
2120,10,I cannot. Maybe we can discover another relationship?,Magnifico! How about auditioning for my new show?,JuliaLoveChange(2),
2130,,(Bring her to your room.),,"InviteToPrivateRoom(""Dominant"")",
2200,2210,"Maybe not. I have room at a club downtown. ",Si! And I could continue to serve you there!,,CanInviteToPrivateRoom()
2200,10,"And what a pity, but maybe we have a different story?",Teatro always has more stories to tell!,JuliaLoveChange(2),
2210,2220,The club does not take relationships lightly.,"(She kneels and offers you a collar) I've seen this around campus as a symbol of service, can you take me as your servant?",,
2220,2230,"I do, my girl. (Lock the collar on her.)",Thank you Mistress! I promise to obey and serve you!,,
2220,10,I cannot. Maybe we can discover another relationship?,Magnifico! How about auditioning for my new show?,JuliaLoveChange(2),
2230,,(Bring her to your room.),,"InviteToPrivateRoom(""Submissive"")",

1 PlayerGagged Pupil! This is not a silent play. (She laughs.)
2 0 (A large woman greets you warmly.) Oooooh! Are you here to audition for the next play?
3 0 Who are you? I'm Julia! An art teacher is this wonderful institution. I'm pleased to meet you pupil. DialogRemove() !DialogLogQuery("BondageCollege", "Import")
4 0 2000 It's nice to see you again Julia. (She gives you a warm hug.) It's grande to see you again young pupil! DialogRemove() DialogLogQuery("BondageCollege", "Import")
5 0 10 Theater is for losers. No, no, no, no. Teatro is one of the oldest and greatest form or art, it transcends time and your soul. JuliaLoveChange(0)
6 0 10 I'm not a great actor. Practice makes perfect! Teatro is one of the oldest and greatest form or art, it transcends time and your soul. JuliaLoveChange(1)
7 0 10 I would love to audition. Magnifico! Teatro is one of the oldest and greatest form or art, it transcends time and your soul. JuliaLoveChange(2)
165 710 720 In a club downtown. A club where I could meet artists? An acting club? An impro club?
166 710 720 I've had great teachers. I would love to meet them, are they in a school in town? Or in a theater group?
167 710 1000 That's my secret. I respect that. Check the school board, as soon as all the actors are found, we will start repeating.
168 720 730 I could bring you there. I would love to go there with you, but you cannot out like that. I would love to go there with you, but you cannot go out like that. CanInviteToPrivateRoom()
169 720 1000 I could bring you there. Maybe another day. For now, check the school board, as soon as all the actors are found, we will start repeating. !CanInviteToPrivateRoom()
170 720 1000 I'll tell you more another time. Very well. Check the school board, as soon as all the actors are found, we will start repeating.
171 730 740 That's not a problem. I'll explain on the road. If you say so. Let's change and let's go young pupil.
177 1000 1010 I'll do that. (You both dress up as she smiles.) You have lots of potential, see you soon little pupil. DressBack()
178 1010 See you soon little pupil. If you see the next student, you can tell her to come in.
179 1010 See you soon. (Leave her.) DialogLeave()
180 2000 2100 Doth my queen need ministrations from this servant? (She smiles broadly) Surely your services are indeed valuable, alas, this is but a fleeting moment. IsJuliaQueen()
181 2000 2200 My damsel dearest, your services were most enjoyable. (She giggles) And would I adore to serve you again, alas this is but a fleeting moment. IsJuliaDamsel()
182 2000 10 I see you're running another show, can I audition? Of course dear! JuliaLoveChange(2)
183 2100 2110 Maybe not. I have room at a club downtown. Si! And you could continue to serve me there! CanInviteToPrivateRoom()
184 2100 10 And what a pity, but maybe we have a different story? Teatro always has more stories to tell! JuliaLoveChange(2)
185 2110 2120 The club does not take relationships lightly. (She turns serious and offers you a collar) I've seen this around campus as a symbol of service, do you promise to serve me?
186 2120 2130 I do, Queen. (Kneel and allow her to lock the collar.) Splendid! Take me to thy domicile, servant!
187 2120 10 I cannot. Maybe we can discover another relationship? Magnifico! How about auditioning for my new show? JuliaLoveChange(2)
188 2130 (Bring her to your room.) InviteToPrivateRoom("Dominant")
189 2200 2210 Maybe not. I have room at a club downtown. Si! And I could continue to serve you there! CanInviteToPrivateRoom()
190 2200 10 And what a pity, but maybe we have a different story? Teatro always has more stories to tell! JuliaLoveChange(2)
191 2210 2220 The club does not take relationships lightly. (She kneels and offers you a collar) I've seen this around campus as a symbol of service, can you take me as your servant?
192 2220 2230 I do, my girl. (Lock the collar on her.) Thank you Mistress! I promise to obey and serve you!
193 2220 10 I cannot. Maybe we can discover another relationship? Magnifico! How about auditioning for my new show? JuliaLoveChange(2)
194 2230 (Bring her to your room.) InviteToPrivateRoom("Submissive")

View file

@ -19,9 +19,9 @@ function ImportBondageCollege(C) {
if ((localStorage.getItem("BondageCollegeExportOwner") != null) && (localStorage.getItem("BondageCollegeExportOwner") != "")) C.Owner = "NPC-" + localStorage.getItem("BondageCollegeExportOwner");
if ((localStorage.getItem("BondageCollegeExportLover") != null) && (localStorage.getItem("BondageCollegeExportLover") != "")) C.Lover = "NPC-" + localStorage.getItem("BondageCollegeExportLover");
// Imports the 4 main character status
// Imports the 4 main students and 3 main teachers status
if ((localStorage.getItem("BondageClubImportSource") != null) && (localStorage.getItem("BondageClubImportSource") == "BondageCollege")) {
for (const storyline of ["Amanda", "Sarah", "Sidney", "Jennifer", "AmandaSarah", "SarahIntro"]) {
for (const storyline of ["Amanda", "Sarah", "Sidney", "Jennifer", "AmandaSarah", "SarahIntro", "Julia", "Yuki", "Mildred"]) {
const value = localStorage.getItem("BondageCollegeExport" + storyline);
if (value)
LogAdd(value, /** @type {keyof LogNameType} */ ("NPC-" + storyline));

View file

@ -3643,6 +3643,9 @@ interface LogNameType {
"NPC-Sarah": "SarahLover" | "SarahCollared" | "SarahCollaredWithCurfew",
"NPC-SarahIntro": "SarahWillBePunished" | "SarahCameWithPlayer",
"NPC-Sidney": "SidneyLover" | "SidneyMistress" | "SidneyCollared" | "SidneyCollaredWithCurfew",
"NPC-Julia": "Dominant" | "Submissive",
"NPC-Yuki": "Dominant" | "Submissive",
"NPC-Mildred": "Dominant" | "Submissive",
// NOTE: A number of owner rules can have arbitrary suffices, and can thus not be expressed as string literals
OwnerRule: (
"BlockChange"

View file

@ -210,6 +210,7 @@ function C008_DramaClass_Julia_Masturbate() {
ActorChangeAttitude(2, 0);
OverridenIntroText = GetText("Orgasm");
OverridenIntroImage = "BackgroundOrgasm.jpg";
GameLogAdd("DamselSuccess");
}
}

View file

@ -439,4 +439,11 @@ function C009_Library_Yuki_StopPleasure() {
ActorSetPose("Sleepy");
}
}
// Chapter 9 Library - Yuki Blackmailed
function C009_Library_Yuki_Blackmailed() {
//Logged for BondageClub
GameLogAdd("Blackmailed");
}

View file

@ -226,8 +226,8 @@ Stage,LoveReq,SubReq,VarReq,Interaction,Result,NextStage,LoveMod,SubMod,Function
610,0,0,,Yes Miss Yuki.|(Turn around.),(You turn around and give her your hands|while she straps them in an armbinder.),300,0,-1,RestrainPlayer()
620,0,0,,You would be humiliated|if people knew.,You're not thinking about starting|rumors on what happened are you?,630,0,0,"SetPose("""")"
620,0,0,,"Everyone will know|what happened, unless... ",Unless what? You're not thinking|about starting rumors are you?,630,0,0,"SetPose("""")"
630,0,0,,If you stay good to|me. I won't talk.,"Fine, we have a deal Miss.|I won't cause you any trouble.",640,0,1,
630,0,0,,You stay cool.|I stay cool.,"Very well, we have a deal.|I won't cause you any trouble.",640,0,0,
630,0,0,,If you stay good to|me. I won't talk.,"Fine, we have a deal Miss.|I won't cause you any trouble.",640,0,1,Blackmailed()
630,0,0,,You stay cool.|I stay cool.,"Very well, we have a deal.|I won't cause you any trouble.",640,0,0,Blackmailed()
640,0,0,,"Alright, I'm going now.|(Walk away.)",,650,0,0,PlayerLeaveForBook()
640,0,0,,I don't want to|see you again.,Fine! Go away then.,650,-1,0,
640,0,0,,Very good Yuki.|(Shake her hand.),(You both shake hands with a firm grip.)|You're free to wander young lady.,650,1,0,

1 Stage LoveReq SubReq VarReq Interaction Result NextStage LoveMod SubMod Function
226 610 0 0 Yes Miss Yuki.|(Turn around.) (You turn around and give her your hands|while she straps them in an armbinder.) 300 0 -1 RestrainPlayer()
227 620 0 0 You would be humiliated|if people knew. You're not thinking about starting|rumors on what happened are you? 630 0 0 SetPose("")
228 620 0 0 Everyone will know|what happened, unless... Unless what? You're not thinking|about starting rumors are you? 630 0 0 SetPose("")
229 630 0 0 If you stay good to|me. I won't talk. Fine, we have a deal Miss.|I won't cause you any trouble. 640 0 1 Blackmailed()
230 630 0 0 You stay cool.|I stay cool. Very well, we have a deal.|I won't cause you any trouble. 640 0 0 Blackmailed()
231 640 0 0 Alright, I'm going now.|(Walk away.) 650 0 0 PlayerLeaveForBook()
232 640 0 0 I don't want to|see you again. Fine! Go away then. 650 -1 0
233 640 0 0 Very good Yuki.|(Shake her hand.) (You both shake hands with a firm grip.)|You're free to wander young lady. 650 1 0

View file

@ -346,11 +346,13 @@ function C011_LiteratureClass_Mildred_CheckForWinnerMildred() {
OverridenIntroImage = "";
if (C011_LiteratureClass_Mildred_PlayerVictoryCount >= C011_LiteratureClass_Mildred_MildredVictoryCount) {
GameLogSpecificAdd(CurrentChapter, "", "WonVersusMildred");
GameLogAdd("PlayerWon");
ActorChangeAttitude(1, 1);
C011_LiteratureClass_Mildred_CurrentStage = 150;
OverridenIntroText = GetText("MildredShameForDefeat");
} else {
GameLogSpecificAdd(CurrentChapter, "", "LostVersusMildred");
GameLogAdd("PlayerLost");
if (C011_LiteratureClass_Mildred_QuizMildredStatus != "Clothed")
OverridenIntroText = GetText("MildredFreedBySidney");
}

View file

@ -87,7 +87,21 @@ function C013_BondageClub_Entrance_EnterClub() {
if ((ActorGetValue(ActorOwner) == "Player") && GameLogQuery("", "Jennifer", "CurfewStay")) Jennifer = "JenniferCollaredWithCurfew";
if (Common_PlayerOwner == "Jennifer") Jennifer = "JenniferMistress";
// Exports all items and Sarah's data
// Save Teacher status
var Julia = "";
CurrentActor = "Julia";
if (GameLogQuery("C008_DramaClass", CurrentActor, "DamselSuccess")) Julia = "Submissive";
if (GameLogQuery("C008_DramaClass", CurrentActor, "Rebellion")) Julia = "Dominant";
var Yuki = "";
CurrentActor = "Yuki";
if (GameLogQuery("C009_Library", CurrentActor, "Blackmailed")) Yuki = "Submissive";
if (GameLogQuery("C009_Library", CurrentActor, "PleasureSuccess")) Yuki = "Dominant";
var Mildred = "";
CurrentActor = "Mildred";
if (GameLogQuery("C011_LiteratureClass", CurrentActor, "PlayerWon")) Mildred = "Submissive";
if (GameLogQuery("C011_LiteratureClass", CurrentActor, "PlayerLost")) Mildred = "Dominant";
// Exports all actors, items, and skills data
localStorage.setItem("BondageClubImportSource", "BondageCollege");
localStorage.setItem("BondageCollegeExportName", Common_PlayerName);
localStorage.setItem("BondageCollegeExportLover", Common_PlayerLover);
@ -101,6 +115,9 @@ function C013_BondageClub_Entrance_EnterClub() {
localStorage.setItem("BondageCollegeExportSarah", Sarah);
localStorage.setItem("BondageCollegeExportSidney", Sidney);
localStorage.setItem("BondageCollegeExportJennifer", Jennifer);
localStorage.setItem("BondageCollegeExportJulia", Julia);
localStorage.setItem("BondageCollegeExportYuki", Yuki);
localStorage.setItem("BondageCollegeExportMildred", Mildred);
localStorage.setItem("BondageCollegeExportBallGag", (PlayerHasInventory("BallGag")) ? "true" : "false");
localStorage.setItem("BondageCollegeExportClothGag", (PlayerHasInventory("ClothGag")) ? "true" : "false");
localStorage.setItem("BondageCollegeExportTapeGag", (PlayerHasInventory("TapeGag")) ? "true" : "false");