39 Commits dd52659140 ... 2f2b878daa

Author SHA1 Message Date
  Christine 2f2b878daa [fixed] Taras will visit less often 5 years ago
  Christine 7ffb309b12 [added] More Taras sleep events 5 years ago
  Christine b4d88c6398 [added] New dominant Gala events 5 years ago
  Christine d382756001 [fixed] Various fixes 5 years ago
  Christine 5d2d6faa0f [added] Mirror in servant bathroom 5 years ago
  Christine 642c4b4b30 Merge branch 'dev' into galaMistress 5 years ago
  Christine fcecaddba3 Merge branch 'dev' into galaMistress 5 years ago
  Christine 52e8affd7e Merge branch 'dev' into galaMistress 5 years ago
  Christine 72dda0b2d3 [fixed] No evaluation required during free days 5 years ago
  Christine 1fb05baacf [fixed] "The next 0 days"-message removed 5 years ago
  Christine c43fdb8b7a Merge branch 'dev' into galaMistress 5 years ago
  Christine 2e16833cd1 Merge branch 'dev' into galaMistress 5 years ago
  Christine 6c78699b7b [added] Get abducted by Taras after preventing his plan for Gala 5 years ago
  Christine 0a81b9a69c [added] Galas slave: Follow Taras plan 5 years ago
  Christine 3d409de538 [added] Galas slave: Public humiliation punishment 5 years ago
  Christine 00dbd1decd [added] Galas slave: Tattoo punishment 5 years ago
  Christine 390f657597 [added] Galas slave: First implant punishment 5 years ago
  Christine 73946b4293 [fixed] Maid debug menu: Minor fix 5 years ago
  Christine 41952d015e Merge branch 'dev' into galaMistress 5 years ago
  Christine ac853212b7 [added] Galas slave content 5 years ago
  Christine d71e844d46 Merge branch 'dev' into galaMistress 5 years ago
  Christine 92916416c3 [added] Gala Abortion 5 years ago
  Christine fa54bbe75a Merge branch 'dev' into galaMistress 5 years ago
  Christine 84d2304283 [added] Doctor visit 5 years ago
  Christine e4bcd336c3 [added] Another visit by Taras 5 years ago
  Christine 0f7c7bb00d [added] WIP: Taras plans to abduct Gala 5 years ago
  Christine cbaa3e4944 Merge branch 'dev' into galaMistress 5 years ago
  Christine a743c555a0 [added] WIP: more nightly Taras visits 5 years ago
  Christine 1aa93da3f5 [added] Taras visits Sveta at night 5 years ago
  Christine 7affbe3063 [added] Gala introduces Taras to Svetas slavery contract 5 years ago
  Christine eb4ed1c2c7 [added] Gala random slave entertainment 5 years ago
  Christine c36f06f7bf [added] Gala molests Sveta while cleaning the living room 5 years ago
  Christine dfd2e4c8cf [added] WIP: Gala slave intro 5 years ago
  Christine ecbce8aec0 Merge branch 'tanya' into galaMistress 5 years ago
  Christine 5292739908 Merge branch 'dev' into galaMistress 5 years ago
  Christine c27d8646c6 Merge branch 'dev' into galaMistress 5 years ago
  Christine 9139557cb8 Merge branch 'dev' into galaMistress 5 years ago
  Christine 601022e356 Merge branch 'master' into galaMistress 5 years ago
  Christine 6405d3ae69 [added] Maid: Gala making a contract with Sveta WIP 5 years ago

+ 3 - 1
locations/arousal.qsrc

@@ -629,7 +629,9 @@ if $ARGS[0] ! 'end' and $ARGS[0] ! 'checks' and $ARGS[0] ! 'count' and $ARGS[0]
 	killvar '$orgasm_txt'
 	killvar '$stim_les'
 	killvar '$stim_foot'
-
+	
+	gs 'nichUtil','onArouse',$ARGS[0]
+	
 end
 
 !!-----------------------------------------------

+ 6 - 3
locations/bed2.qsrc

@@ -150,9 +150,7 @@ if $ARGS[0] = 'sleep':
 		notathomesleep = 0
 	end
 
-	if $loc = 'nichBedroomServant':
-		gs 'nichBedroomServant', 'sleepEvents'
-	end
+	
 
 	if succubusflag = 1 and sucwalkday <= daystart and (succublvl <= rand(1,20) or pcs_willpwr < ((succublvl * willpowermax) / 10) or sucpowzeroed >= 3): gs 'succubus', 'sucwalkinginit'
 
@@ -243,6 +241,11 @@ if $ARGS[0] = 'sleep':
 end
 
 if $ARGS[0] = 'dream':
+
+	if $loc = 'nichBedroomServant':
+		gs 'nichBedroomServant', 'sleepEvents'
+	end
+
 	*clr & cla
 	menu_off = 1
 	InSleep = 1

+ 1 - 1
locations/nichApartment.qsrc

@@ -36,7 +36,7 @@ if $ARGS[0] = '' or $ARGS[0] = 'start' or $ARGS[0] = 'return':
 	'You are standing in a luxurious and spacious city center home.'
 	
 	$nickFamDesc = 'It belongs to <a href="exec: gt ''nichNicholas'', ''desc''">Nicholas</a>, who is also the head of home.'
-	$nickFamDesc += ' He lives here with his wife <a href="exec: gt ''nichGala'', ''desc''">Gala</a>.'
+	if nichGalaDisabled = 0: $nickFamDesc += ' He lives here with his wife <a href="exec: gt ''nichGala'', ''desc''">Gala</a>.'
 	$nickFamDesc += ' <a href="exec: gt ''nichTanya'', ''desc''">Tanya</a> is the daughter of Gala and step-daughter of Nicholas. She also lives here.'
 	$nickFamDesc
 	killvar '$nickFamDesc'

+ 1 - 1
locations/nichBathServant.qsrc

@@ -18,7 +18,7 @@ gs 'themes', 'indoors'
 if $ARGS[0] = '' or $ARGS[0] = 'start' or $ARGS[0] = 'return':
 	'<center><b><font color="maroon">Servant Bathroom</font></b></center>'
 	'<center><img <<$set_imgh>> src="images/locations/city/citycenter/nichApartment/bathroomServant.jpg"></center>'
-	'This is the servants bathroom. It includes a shower, a toilet and a sink. There is a washing machine standing in one corner of the room.' 
+	'This is the servants bathroom. It includes a shower, a toilet and a sink with a <a href="exec:gt ''mirror'',''start''">mirror</a>. There is a washing machine standing in one corner of the room.' 
 
 
 

+ 308 - 7
locations/nichBedroomServant.qsrc

@@ -140,14 +140,17 @@ if $ARGS[0] = '' or $ARGS[0] = 'start' or $ARGS[0] = 'return':
 	end
 	
 	''
-	'On the wall next to your desk hangs todays work schedule:'
-	if nichVactionTil = daystart:
+	'On the wall next to your desk hangs your work schedule:'
+	if nichVactionTil >= daystart:
 		'<b>You don''t have to work today.</b>'
-	elseif nichVactionTil > daystart:
-		'<b>You don''t have to work today</b>. The next '+(nichVactionTil-daystart)+' days are also free.'
-	else
-		'You should start preparing breakfast before 7:15 during the week and before 8:15 on weekends.'
+		if nichVactionTil = daystart + 1:
+			'Tomorrow is also a free day.'
+		elseif nichVactionTil > daystart + 1:
+			'The next '+(nichVactionTil-daystart)+' days are also free.'
+		end
+		
 	end
+	'You should start preparing breakfast before 7:15 during the week and before 8:15 on weekends.'
 	
 	if (thinkpreg > 0 or knowpreg > 0) and nichPregnancy = 0:
 		''
@@ -211,10 +214,308 @@ elseif $ARGS[0] = 'redeemSalary':
 	act 'Back': gt 'nichBedroomServant', 'return'
 
 elseif $ARGS[0] = 'sleepEvents':
+	menu_off = 1
 	if ARGS[1] = 0:
-		if nichGalaOpponent = 30 and hour <= 23 and hour >= 19:
+		if nichGalaOpponent = 30 and hour <= 23 and hour >= 19 and nichDebug = 1:
+			!! Start abduction
+			!! TODO
 			gt 'nichBedroomServant','sleepEvents', 1000
+		elseif nichGalaContractTaras = 1 and nichGalaContractTarasLast + rand(3,10) <= daystart:
+			!! Taras visits
+			gt 'nichBedroomServant','sleepEvents', 100
+		end
+	elseif ARGS[1] = 100:
+		nichGalaContractTarasLast = daystart
+	
+		nichRand = -1
+		
+		if nichGalaContractTarasCount > 10: nichRand = rand(0,10)
+		
+		if nichTarSaunaPay >= 20000:
+			'<center><img <<$set_imgh>> src="images/characters/city/gala/slave/taras/chat.jpg"></center>'
+			'You wake up by the feeling of something heavy resting on you. A little bit sleepy you open your eyes and see the face of Taras directly in front of yours.'
+			'"Slut, you did your job well. You earned all the money I needed and I was able to, well... , start my preparations."'
+			'He hesitates for a second.'
+			'"I guess I can as well introduce you to my plan. As you might have guessed by now I have strong feelings for Mistress Gala. Sadly she didn''t realize that she would be better off with me than with her husband. That''s why I need to spend some quality time with her to convince her."'
+			'"Of course she wouldn''t agree to it if I just asked her. That''s why I needed to create a little ruse. I needed you money so I was able to prepare our travel without anybody realizing that I was doing it."'
+			'"And now I need your help again. I need a trigger for Mistress Gala to ask me to get her out of city, so the rest of the staff and the family don''t get suspicious. And this trigger is you."'
+			'"Lets just say that Mistress Gala has some secrets. And lets also say that she doesn''t want to be around when they get revealed."'
+			'"There is some problem I helped her with some time ago. And it is perfect for this situation."'
+			'"Just tell her that somebody from the police called and that it''s about a girl named Katinka. Leave everything else to me."'
+			'"You will probably see neither of us ever again. But you can be assured that you helped true love to find its way."'
+			'He stands up and leaves your room.'
+			''
+			'<b>You should talk to Gala about this. You can either follow Taras plan or expose it.</b>'
+			nichGalaTarasPlan = 1
+			killvar 'nichTarSauna'
+			killvar 'nichTarSaunaPay'
+			!!TODO: CONT
+			act 'Back to sleep': gt 'bed2','dream'
+		elseif nichTarSaunaPay > 10000:
+			'<center><img <<$set_imgh>> src="images/characters/city/gala/slave/taras/chat.jpg"></center>'
+			'You wake up by the feeling of something heavy resting on you. A little bit sleepy you open your eyes and see the face of Taras directly in front of yours.'
+			'"Slut, I heard that you are doing a fine job in the sauna. I knew you would perform this job with enthusiasm."'
+			'"Don''t slack off now! I need 20000 <b>₽</b> in total from you. I am sure you can easily earn them for me. You are already more than half-way there."'
+			'He gives you a light smack on your face, then he stands up and leaves your room.'
+			nichGalaContractTarasCount += 1
+			act 'Back to sleep': gt 'bed2','dream'
+		elseif nichGalaContractTarasCount = 10:
+			'<center><img <<$set_imgh>> src="images/characters/city/gala/slave/taras/chat.jpg"></center>'
+			'You wake up by the feeling of something heavy resting on you. A little bit sleepy you open your eyes and see the face of Taras directly in front of yours.'
+			'"Oh, good. You are awake."'
+			'He softly runs his hand down your cheek. You didn''t even know this soft side of his existed.'
+			'"I have the feeling that the both of us are getting along quite well."'
+			'You look at him in disbelief. Is he serious?'
+			'"As a matter of fact there is something you can do for me. I need to get some money outside of the books. Lets just say it''s for a personal hobby of mine."'
+			'You feel him touching your pussy.'
+			'"And since you are such an obedient little slut I thought I could involve you in this. It is actually pretty simple. I have a friend working at the sauna in the residential area. You go there and service customers. I get the money, you get your wholes filled. Everybody wins. Of course I whitelisted the sauna for this little implant you are wearing."'
+			'"Oh, and Mistress Gala doesn''t need to know about this. Lets just say it''s a surprise for her."'
+			'He stands up and leaves your room.'
+			''
+			'<b>Maybe you should go to this sauna to avoid being punished by Taras?</b>'
+			nichGalaImplant = 2
+			nichGalaContractTarasCount += 1
+			nichTarSauna = 1
+			nichTarSaunaPay = 0
+			SaunaWhore = 1
+			act 'Back to sleep': gt 'bed2','dream'
+		elseif nichGalaContractTarasCount = 0 or nichRand = 0:
+			
+			'<center><img <<$set_imgh>> src="images/characters/city/gala/slave/taras/bed7.jpg"></center>'
+			'There is a sudden pain in your ass cheek and you are instantly awake. Somebody has smacked your ass.'
+			'Clearing your senses you realize that not only your mouth is shut by some sort of sticking plaster. Also your wrists and ankles are chained to each other with short chains.'
+			'In front of your bed you see Taras.'
+			'"Sorry, slut. I don''t have time for you. So you have to enjoy this substitute."'
+			'He pushes a vibrator into your vagina and sets it to the max setting.'
+			gs 'arousal','vaginal',30,'bound'
+			gs 'arousal','end'
+			gs 'stat'
+			'After about half an hour Taras returns and removes the vibrator.'
+			'"I know you prefer the real deal. Don''t worry, it won''t take long before you can experience it again."'
+			'He unties you and leaves your room.'
+			nichGalaContractTarasCount += 1
+			act 'Back to sleep': gt 'bed2','dream'
+		elseif nichGalaContractTarasCount = 1 or nichRand = 1:	
+			'<center><img <<$set_imgh>> src="images/characters/city/gala/slave/taras/bed9.jpg"></center>'
+			'You have an erotic dream of being tied up tightly.'
+			'Suddenly you are wide awake as your nostiles are blocked. You open your mouth to gasp for air and feel a dick being pushed into it.'
+			'It takes a few seconds for you to realize what is happening. You are on your back, your hands being tied behind you. It wasn''t a dream after all.'
+			'The man who slowly fucks your skull upside down must be Taras. But you can only guess, since you see nothing of him but his balls directly in front of your face.'
+			'It doesn''t take long before Taras comes into your mouth. But he doesn''t pull his dick out.'
+			'"Swallow, slut!"'
+			'Having no choice you do as ordered.'
+			'"I knew you were a dirty cum-eater. At least you are good for something."'
+			'He unties one of your hands so you are able to remove the other ropes. Then he leaves your room without saying another word.'
+			gs 'arousal','bj',5,'bound','rough','rape'
+			gs 'arousal','end'
+			gs 'cum_call', 'mouth', 'A513', 1
+			gs 'stat'
+			swallow += 1
+			nichGalaContractTarasCount += 1
+			act 'Back to sleep': gt 'bed2','dream'
+		elseif nichGalaContractTarasCount = 2 or nichRand = 2:	
+			'<center><img <<$set_imgh>> src="images/characters/city/gala/slave/taras/bed3.jpg"></center>'
+			'Just when you fell aslepp you feel being lifted out of bed. You are immediately wide awake.'
+			'Realizing you are awake Taras places you on your feet and twists your arm behind your back while pushing you forward. There is no way you to fight back.'
+			'"Lets go, slut!"'
+			'He leads you up to the attic. There he chains you up on your stomach and places a belt around your neck.'
+			'He then probes your ass with his index finger befor he begins to fuck it mercilessly.'
+			'At the same time he pulls at the belt around your neck and you begin to choke. You begin to panic as you get less and less air. Taras obviously enjoys you struggling in panic and only releases the belt when you are close to blacking out.'
+			'You didn''t even regain your breath when he repeats his vile game. It goes on several times before he finally is about to cum.'
+			'Only this time he doesn''t release the belt. The last thing you feel before everything goes black is him cumming inside of your ass.'
+			'...'
+			'You wake up back in your bed. Apparently Taras has carried you down here after he was done with you.'
+			gs 'arousal','anal',5,'bound','rough','rape'
+			gs 'arousal','end'
+			gs 'cum_call', 'anus', 'A513', 1
+			gs 'stat'
+			nichGalaContractTarasCount += 1
+			act 'Back to sleep': gt 'bed2','dream'
+		elseif nichGalaContractTarasCount = 3 or nichRand = 3:	
+			'<center><img <<$set_imgh>> src="images/characters/city/gala/slave/taras/bed6.jpg"></center>'
+			'You wake up to a painful hit on your butt. Instintively you try to reach down there, but your wrists and ankles are tied to the opposite corners of your bed. There is nothing you can do than lie on your stomach.'
+			'"Good, you are awake."'
+			'Apparently Taras is standing right behind you.'
+			'"Sadly I don''t have time to play with you. But I brought a little something so you don''t forget me."'
+			'He pushes a vibrator into your exposed pussy and turns it on. At first you don''t feel anything but then a powerful vibration starts. Taras watches you struggle for a few minutes, then he leaves the room.'
+			'Suddenly the vibration is off again only to kick back on about 5 minutes later. Apparently the vibrator is set to a random program.'
+			gs 'arousal','vaginal_vibe',30,'bound'
+			gs 'arousal','end'
+			gs 'stat'
+			'You are just to exhausted to stay awake for much longer. During another pause of the vibrator you fall asleep. You have some erotic dreams about being fucked by various guys and girls with the ongoing vibrations of the vibrator being a part of it.'
+			'You don''t know how long Taras left the vibrator inside of you, but when you wake up next you are untied and the vibrator is gone.'
+			nichGalaContractTarasCount += 1
+			act 'Back to sleep': gt 'bed2','dream'
+			!! TODO: CONT
+		elseif nichGalaContractTarasCount = 4 or nichRand = 4:	
+			'<center><img <<$set_imgh>> src="images/characters/city/gala/slave/taras/bed4x1.jpg"></center>'
+			'You get pulled out of your sleep abruptly as your legs get pulled upwards. You want to scream in surprise but your mouth is taped shut, as are your eyes.'
+			'You try to get away, but your hands are tied up as well. The person who restrained you also ties your ankles with a rope connected to the head end of the bed, leaving you completely exposed.'
+			'"Very nice. We just have to add a final touch."'
+			'It''s the voice of Taras.'
+			'You feel your breasts being squeezed as Taras ties them up as well.'
+			'After he is done is wastes no time and begins to fuck you.'
+			gs 'arousal','vaginal',10,'bound'
+			gs 'arousal','end'
+			'After about 10 minutes you feel him cumming inside of you.'
+			gs 'cum_call', '', 'A513', 1
+			gs 'stat'
+			'Without saying another word he stands up and leaves the room.'
+			'He can''t leave you tied up like this, can he?'
+			act 'Wait':
+				cla & *clr
+				'<center><img <<$set_imgh>> src="images/characters/city/gala/slave/taras/bed4x2.jpg"></center>'
+				'You don''t know how long Taras was gone. But you must have fallen asleep at some point.'
+				'You get woken up by Taras fucking you again. At first you thought this was a dream, but then you realize that this is reality.'
+				gs 'arousal','vaginal',20,'bound'
+				gs 'arousal','end'
+				'This time it takes a little longer before Taras cums. When he does he pulls out of you and sends his load right into your face.'
+				gs 'cum_call', 'face', 'A513', 1
+				gs 'stat'
+				'"I am sure you will enjoy this."'
+				'He unties your right wrist, allowing you to remove the other restraints, before he leaves your room again.'
+				nichGalaContractTarasCount += 1
+				act 'Back to sleep': gt 'bed2','dream'
+			end
+		elseif nichGalaContractTarasCount = 5 or nichRand = 5:	
+			'<center><img <<$set_imgh>> src="images/characters/city/gala/slave/taras/bed2.jpg"></center>'
+			'You are suddenly awake as you are dragged out of your bed. You want to scream, but a rope around your neck makes it hard for you to breath and impossible to make a sound.'
+			'Starting to panic you try to struggle free as you get pushed to the floor. Your left arm is twisted behind your back, making every attempt to get free futile.'
+			'Then you feel a cock being rammed into your ass. You try to get free frantically. Whenever you settle down a bit the rope around your neck gets tightened until you start to panic again.'
+			gs 'arousal','vaginal',15,'bound'
+			gs 'arousal','end'
+			'Finally you feel that your tormentor is cumming inside of you.'
+			gs 'cum_call', 'anus', 'A513', 1
+			'He drops the rope and pets your head.'
+			'"Well done, slut. If you haven''t struggled that much I wouldn''t have had so much fun."'
+			'It was Taras all along. He picks up his rope and leaves your room.'
+			nichGalaContractTarasCount += 1
+			act 'Back to sleep': gt 'bed2','dream'
+		elseif nichGalaContractTarasCount = 6 or nichRand = 6:
+			'<center><img <<$set_imgh>> src="images/characters/city/gala/slave/taras/bed10.jpg"></center>'
+			'Suddenly you wake up. Your butt hurts. You realize that you are tied to your bed and that somebody is sitting next to you, spanking your ass.'
+			'"Silence, slut! You don''t want to wake anybody up!"'
+			'Taras continues to spank you for about 30 minutes.'
+			gs 'pain',8,'asscheeks','spank'
+			minut += 30
+			gs 'stat'
+			'After a while he seems to get tired. His hits get less frequent and less painful.'
+			'He gives you three last hits, then he stands up and unties you.'
+			'"At least you have a nice ass, slave."'
+			nichGalaContractTarasCount += 1
+			act 'Back to sleep': gt 'bed2','dream'
+		elseif nichGalaContractTarasCount = 7 or nichRand = 7:	
+			'<center><img <<$set_imgh>> src="images/characters/city/gala/slave/taras/bed1x1.jpg"></center>'
+			'You get woken up by a slap to your breast. You want to shriek up, but once again you are tied to your bed. A ballgag in your mouth prevents you from making any sound.'
+			'Opening your eyes you see Taras standing above you.'
+			'"Oh, good, you are awake. I think you were a good slut lately, that''s why I wanted to reward you."'
+			act 'Wait':
+				cla & *clr
+				'<center><img <<$set_imgh>> src="images/characters/city/gala/slave/taras/bed1x2.jpg"></center>'
+				'He takes out a vibrator and pushes inside your vagina. Then he turns it on. You feel the strong vibrations everywhere in your body.'
+				'"I bet you will enjoy this. It will feel like being fucked by dozens of guys all night long."'
+				'He leaves your room, leaving you tied up and being tormented by the vibrator.'
+				gs 'arousal','vaginal_vibe',30,'bound'
+				'It feels like forever, but Taras does not return.'
+				gs 'arousal','vaginal_vibe',30,'bound'
+				gs 'stat'
+				act 'Wait':
+					cla & *clr
+					'<center><img <<$set_imgh>> src="images/characters/city/gala/slave/taras/bed1x3.jpg"></center>'
+					gs 'arousal','vaginal_vibe',30,'bound'
+					'You wait for what seems to be forever. The constant vibrations in your pussy began being painful long ago but you can''t deny that they still arouse you as well.'
+					gs 'arousal','vaginal_vibe',30,'bound'
+					gs 'arousal','end'
+					gs 'stat'
+					'Finally Taras returns and unties you. You waste no time and remove the vibrator, starring at him angrily.'
+					'"I knew you would enjoy it. While normal people like me sleep at night sluts like you want to get fucked all night long. And I am nothing but supportive in this regard."'
+					'He leaves you with a grin on his face.'
+					nichGalaContractTarasCount += 1
+					act 'Back to sleep': gt 'bed2','dream'
+				end
+			end
+		elseif nichGalaContractTarasCount = 8 or nichRand = 8:	
+			'<center><img <<$set_imgh>> src="images/characters/city/gala/slave/taras/bed11.jpg"></center>'
+			'Suffocation... '
+			'You open your eyes in panic. A rope around your neck makes it impossible for you to breath. You try to struggle, but you are completely tied up.'
+			'Just before you black out the rope gets loosened and you can grasp for air.'
+			'"Take a deep breath, slut. We are only beginning todays fun."'
+			'He tightenes the rope again and once again you feel like suffocating.'
+			'Then you hear the sound of his handy. He loosens the rope and takes a look at it.'
+			'"Damn. My service are required. I am sorry, but I am afraid we have to continue our little fun another time."'
+			'He unties you and leaves your room without saying another word.'
+			nichGalaContractTarasCount += 1
+			act 'Back to sleep': gt 'bed2','dream'
+		elseif nichGalaContractTarasCount = 9 or nichRand = 9:	
+			'<center><img <<$set_imgh>> src="images/characters/city/gala/slave/taras/bed5.jpg"></center>'
+			'No air...'
+			'You open your eyes in panic. There is a plastic bag over your head. You desperatley try to remove it, but your hands are tied behind your back.'
+			'You try to get up. But you are already to weak and the darkness comes quickly. The last thing you see is Taras who is filming you with a small camcorder. He is grinning.'
+			act 'The end?':
+				cla & *clr
+				'<center><img <<$set_imgh>> src="images/characters/city/gala/slave/taras/bed5.jpg"></center>'
+				'As you wake up you see Taras standing right in front of you. You are still tied up in your bed and a gag in your mouth prevents you from making any intelligible sounds.'
+				'"You liked that, did you? So did I. I''m recording the fun we have together so I have something to watch in my spare time. And maybe I can even make some money selling the material."'
+				'He holds the plastic bag in front of your face.'
+				'"And you will be happy to provide me some additional material, won''t you?"'
+				'You desperately shake your head no but he pulls the bag over your head nevertheless.'
+				'It doesn''t take long before the panic sets back in. You struggle wildly, but there is no use. You pass out again.'
+				act 'Suffocate?':
+					cla & *clr
+					'<center><img <<$set_imgh>> src="images/characters/city/gala/slave/taras/bed5.jpg"></center>'
+					'You wake up once more. Your head spins like crazy. Taras is still in your room and nothing about your situation has changed.'
+					'"That was fun, don''t you agree. How about another round?"'
+					'You do everything you can. But pleading with your eyes, shaking your head and making muffled sounds doesn''t help.'
+					'Soon you have the bag back over your head. Once again you panic as the suffocation sets in.'
+					act 'Black out':
+						cla & *clr
+						'As you wake up this time Taras is gone and you are untied.'
+						'One horrific thought comes to your mind and makes you shiver: this man shows utter neglect for your safety. What if one day he kills you by accident?'
+						nichGalaContractTarasCount += 1
+						act 'Back to sleep': gt 'bed2','dream'
+					end
+				end
+			end
+		else
+			'<center><img <<$set_imgh>> src="images/characters/city/gala/slave/taras/bed8x1.jpg"></center>'
+			'You awaken by the feeling of something being pushed inside your mouth.'
+			'You try to push it away, only to find out that your arms are tied up behind your back.'
+			'Opening your eyes you only see the crotch of a man.'
+			'"Good, you are finally awake."'
+			'Of course it''s Taras who is fucking your mouth.'
+			gs 'arousal','bj',5,'bound','rough','rape' & gs 'stat'
+			
+			act 'Continue':
+				cla & *clr
+				'<center><img <<$set_imgh>> src="images/characters/city/gala/slave/taras/bed8x2.jpg"></center>'
+				'Taras pushes himself as far into your mouth as he can. You feel his dick deep in you throat.'
+				'As he grabs your skull and pulls it to his crotch it gets even harder for you to breath.'
+				gs 'arousal','bj',5,'bound','rough','rape' & gs 'stat'
+				
+				act 'Continue':
+					cla & *clr
+					'<center><img <<$set_imgh>> src="images/characters/city/gala/slave/taras/bed8x3.jpg"></center>'
+					'He turns you around and starts fucking your exposed pussy.'
+					gs 'arousal','vaginal',5,'bound','rough','rape' & gs 'stat'
+					
+					act 'Continue':
+						cla & *clr
+						'<center><img <<$set_imgh>> src="images/characters/city/gala/slave/taras/bed8x4.jpg"></center>'
+						'It doesn''t take long before he cums inside of you.'
+						'"Well done, slave."'
+						gs 'arousal','end'
+						gs 'cum_call', '', 'A513', 1
+			
+						gs 'stat'
+						'He unties you and leaves your room again.'
+						nichGalaContractTarasCount += 1
+						act 'Back to sleep': gt 'bed2','dream'
+					end
+				end
+			end
 		end
+		
+		
 	elseif ARGS[1] = 1000:
 		hour = 23
 		minut += 180

+ 93 - 1
locations/nichChore.qsrc

@@ -387,6 +387,7 @@ elseif $ARGS[0] = 'work':
 	
 	!! Events which have to happen before the work result is computed
 	if ARGS[2] ! 1:
+		nichRand = rand(1,100)
 		if nichChoreID = 5:
 			!! Tanyas room
 			if nichTanyaRelationship = 1 and nichTanyaDominance >= 20:
@@ -394,7 +395,6 @@ elseif $ARGS[0] = 'work':
 				nichTanyPresent = FUNC('nichUtil','isPresent','tanya','bedroomTanya')
 				if nichTanyPresent ! 0:
 					!!and if Tanya is actually in the room
-					nichRand = rand(1,100)
 					if nichRand <= 30 or nichDebug = 1:
 						'<center><img <<$set_imgh>> src="images/characters/city/tanya/encounter/dom1.jpg"></center>'
 						'When you start cleaning Tanya approaches you from behind and smacks you on your butt.'					
@@ -420,6 +420,98 @@ elseif $ARGS[0] = 'work':
 					end
 				end
 			end
+		elseif nichChoreID = 8:
+			!! Living room
+			if nichGalaContractActive = 1 and nichRand <= 40:
+				!! Sveta is Galas slave
+				if FUNC('nichUtil','isAlone','gala','living') = 1:
+					!! Gala and Sveta are alone
+					nichRand = rand(1,10)
+					if nichRand <= 5:
+						'Gala sits on the sofa and watches you as you start cleaning. It doesn''t take long before she snaps her finger.'
+						'"Slave! You missed a spot. Get over here!"'
+						'She points at her left shoe.'
+						'"And use your tongue!"'
+						act 'Lick her shoe':
+							cla & *clr
+							'<center><img <<$set_imgh>> src="images/characters/city/gala/slave/maid1.jpg"></center>'
+							'You get down to your knees and lick her shoe the best you can.'
+							if nichRand = 1:
+								'"Good enough. Now get back to work!"'
+								act 'Continue cleaning':
+									gt 'nichChore', 'work', ARGS[1], 1
+								end
+							else
+								'"Still not clean. You are not trying hard enough!"'
+								act 'Continue licking':
+									cla & *clr
+									'<center><img <<$set_imgh>> src="images/characters/city/gala/slave/maid2.jpg"></center>'
+									'She pushes your head down with her other foot while you continue licking her shoe.'
+									if nichRand <= 3:
+										'"Good enough. Now get back to work!"'
+										act 'Continue cleaning':
+											gt 'nichChore', 'work', ARGS[1], 1
+										end
+									elseif nichRand = 4:
+										'Finally she pulls away her shoe and inspects it closely.'
+										'"You did a fine job there. I think you earned yourself a reward."'
+										act 'Continue':
+											cla & *clr
+											'<center><img <<$set_imgh>> src="images/characters/city/gala/slave/strapon1.jpg"></center>'
+											'She undresses and fastens a strapon around her waist. You know what to do and drop to your knees in front of her.'
+											'She grabs your head and starts mercilessly fucking your skull, forcing her dildo down your throat.'
+											'Once she is done she forces you back to your feet by pulling your hair.'
+											'"Enough fun. Now get back to work!"'
+											gs 'arousal','bj',5,'rough','lesbian','deepthroat'
+											gs 'stat'
+											act 'Continue cleaning':
+												gt 'nichChore', 'work', ARGS[1], 1
+											end
+										end
+									else
+										'Finally she pulls away her shoe and inspects it closely.'
+										'"What is that?! You made it even more dirty. I think it''s time to teach you a lesson."'
+										act 'Continue':
+											cla & *clr
+											'<center><img <<$set_imgh>> src="images/characters/city/gala/slave/maid3.jpg"></center>'
+											'She bends you over and pulls your skirt up.'
+											'"Don''t ... be ... lazy ... you ... stupid ... cunt!"'
+											'She emphasizes each word with a smack on your butt. She repeats her sentence several times.'
+											'"Do you understand? Yes? Then back to work!"'
+											'You pull down your skirt and get back up.'
+											gs 'pain', 1, 'asscheeks','spank'
+											gs 'stat'
+											act 'Continue cleaning':
+												gt 'nichChore', 'work', ARGS[1], 1
+											end
+										end
+									end
+								end
+							end
+						end
+					else
+						'Gala sits on the sofa and watches you as you start cleaning. It doesn''t take long before she snaps her finger.'
+						'"Slave! You missed a spot. Get over here! Bend over!"'
+						act 'Bent over':
+							cla & *clr
+							'<center><img <<$set_imgh>> src="images/characters/city/gala/slave/maid3.jpg"></center>'
+							'You bend over and pull your skirt up.'
+							'"Don''t ... be ... lazy ... you ... stupid ... cunt!"'
+							'She emphasizes each word with a smack on your butt. She repeats her sentence several times.'
+							'"Do you understand? Yes? Then back to work!"'
+							'You pull down your skirt and get back up.'
+							gs 'pain', 1, 'asscheeks','spank'
+							gs 'stat'
+							act 'Continue cleaning':
+								gt 'nichChore', 'work', ARGS[1], 1
+							end
+						end
+					end
+					
+					exit
+						
+				end
+			end
 		end
 	end
 	

+ 841 - 7
locations/nichGala.qsrc

@@ -8,6 +8,8 @@
 !! nichGalaTrainCounter
 !! nichGalaTrainLast
 
+!! nichGalaDisabled
+
 !! nichGalaContractDay: the day the contract has been signed
 !! nichGalaContract: 
 !!						0: 	the contract has not been offered
@@ -15,6 +17,24 @@
 !!						20: the contract has been offered and rejected
 !!						30: the contract has been offered and accepted
 !!						1000-1999: reserved for the contract being broken
+!! nichGalaContractActive:
+!!						0: no
+!!						1: yes
+!! nichGalaContractLast: the last day Gala used Sveta as her slave
+!! nichGalaContractTaras: whether Taras is enabled
+!! nichGalaContractTarasCount
+!! nichGalaContractTarasLast
+!! nichGalaDoc: whether Sveta has visited Galas doctor
+!! nichGalaImplant: whether Sveta has an implant
+!! nichGalaImplantCount: how often the implant has been triggered since last check
+!! nichGalaTattoo: whether Sveta got tattoed by Gala
+!! nichGalaTarasPlan:
+!!						0:	Sveta does not know the plan
+!!						1:	Sveta knows the plan
+!!						10: Taras and Gala left
+!!						20: Nicholas and Tanya are informed
+!!						100:Sveta told Gala about the plan
+!!						110:Gala told Sveta that Taras vanished
 
 if $ARGS[0] = 'start' or $ARGS[0] = '':
 	'<center><img <<$set_imgh>> src="images/characters/city/gala/02.jpg"></center>'
@@ -53,25 +73,839 @@ if $ARGS[0] = 'start' or $ARGS[0] = '':
 	end
 
 elseif $ARGS[0] = 'approach':
+	menu_off = 1 & gs 'stat'
 	'<center><img <<$set_imgh>> src="images/characters/city/gala/02.jpg"></center>'
 	'You wait for Gala to notice you, then you approach her and curtsy.'
 	'"<<$pcs_nickname>>, what is it?"'
 	
-	if nichGalaTraining = 1 and nichGalaTrainLast ! daystart:
-		act 'Special Training':
-			'"I am here for the special maid training, Mistress Gala."'
-			'"Very well. Follow me to the attic!"'
+	if nichGalaTraining = 1 and nichGalaContract = 0 and nichGalaTrainCounter >= 5:
+		gt 'nichGala', 'contractOffer'
+	end
+	
+	if nichGalaContractActive = 1:
+		act 'Slave entertainment':
+			gt 'nichGala','slaveGeneric'
+		end
+	else
+		if nichGalaTraining = 1 and nichGalaTrainLast ! daystart:
+			act 'Special Training':
+				'"I am here for the special maid training, Mistress Gala."'
+				'"Very well. Follow me to the attic!"'
+				cla
+				act 'Follow her':
+					nichGalaTrainStage = 0
+					gt 'nichGala', 'training'
+				end
+			end
+		end
+	end
+	
+	if nichGalaContract = 10:
+		act 'Slave offer':
 			cla
-			act 'Follow her':
-				nichGalaTrainStage = 0
-				gt 'nichGala', 'training'
+			'"About your offer... the extended training one..."'
+			'"Yes? Did you make up your mind?"'
+			act 'Accept':
+				xgt 'nichGala', 'contractOfferAccept'
 			end
+			act 'Reject':
+				xgt 'nichGala', 'contractOfferReject'
+			end
+			act 'Not yet':
+				gt $loc, 'return'
+			end
+		end
+	end
+	
+	if nichGalaTarasPlan = 1:
+		act 'Taras Plan':
+			cla & *clr
+			'<center><img <<$set_imgh>> src="images/characters/city/gala/02.jpg"></center>'
+			'Taras told you that he wants to spend some "quality time" with Gala. You assume that that''s a nice description for her abduction.'
+			''
+			'You have 3 choices:'
+			'1. Follow the plan: Taras told you that you won''t see him or Gala again after his plan succeeded.'
+			'2. Expose the plan: Tell Gala everyhting you know. Taras will be extremely annoyed and you don''t know how Gala might react.'
+			'3. Ignore the plan: Do nothing and maybe act later.'
+			act 'Follow plan': gt 'nichGala','tarasPlan', 0
+			act 'Expose plan': gt 'nichGala','tarasPlan', 100
+			act 'Ignore plan': gt $loc, 'return'
 		end
 	end
 	
 	act 'Back':
 		gt $loc, 'return'
 	end
+
+elseif $ARGS[0] = 'tarasPlan':
+	if ARGS[1] = 0:
+		!! Follow the plan
+		'<center><img <<$set_imgh>> src="images/pc/activities/maidCleaning/phone.jpg"></center>'
+		'You pretend using the phone talking to somebody who gives you a lot of information in a short amount of time.'
+		'Afterwards you act confused and walk over to Gala.'
+		'"Mistress Gala, I just talked to a policemen. He said that he will come over soon to talk with you."'
+		'"Wait, what?! What are you talking about?!"'
+		'"He said it''s about somebody... a girl named Katinka? Anyways, he said he will be over in about half an hour and that you must not leave the house."'
+		'"Okay... thank you... you have to leave now... at once!"'
+		'You leave the room. It only takes two minutes before you hear Taras storming in.'
+		'After another five minutes you hear both of them leaving the apartment. Apparently they packed some belongings of Gala in an hurry.'
+		minut += 5
+		nichGalaTarasPlan = 10
+		
+		nichGalaDisabled = 1
+		nichGalaContractTaras = 0
+		nichGalaContractActive = 0
+		
+		gs 'stat'
+		act 'Continue': gt $loc, 'return'
+	elseif ARGS[1] = 100:
+		'<center><img <<$set_imgh>> src="images/characters/city/gala/02.jpg"></center>'
+		'You hesitate at first, but then you tell Gala everything you know about the plan of Taras.'
+		'She is clearly shocked by this reveal. But she trusts your word. Who else could have told you about Katinka than Taras?'
+		'"Thank you, <<$pcs_nickname>>. You really did me a favor here. I will tell Nicholas men to take care of our Taras-problem."'
+		nichGalaTarasPlan = 100
+		nichGalaContractTaras = 0
+		
+	end
+elseif $ARGS[0] = 'contractOffer':
+	'<center><img <<$set_imgh>> src="images/characters/city/gala/02.jpg"></center>'
+	'"<<$pcs_nickname>>, I have been thinking. I really enjoy our little training sessions. And I believe you do as well. What would you say if we took them a little further?"'
+	act 'Further?':
+		cla
+		'"Further, Mistress Gala?"'
+		'"Yes. You would not only be trained when you ask for it but whenever I feel like it. Are you familiar with the concept of masters and slaves? It is a BDSM thing."'
+		'"You would be my slave. Make no mistake, that''s more than a just name. You would have to give up most of your independence and follow my commands. Fullfilling my desires would be your top priority."'
+		'"Of course you would still have to work for my husband. He must not know about our arrangement."'
+		'"What do you say?"'
+		act 'Reject':
+			xgt 'nichGala', 'contractOfferReject'
+		end
+		act 'Need time to consider':
+			cla
+			'"I am sorry Mistress Gala, but I''m not sure if that''s something I want. May I have some time to consider your offer, please?"'
+			'"Of course. Just tell me when you made up your mind."'
+			nichGalaContract = 10
+			act 'Back':
+				gt $loc, 'return'
+			end
+		end
+		act 'Accept':
+			xgt 'nichGala', 'contractOfferAccept'
+		end
+	end
+elseif $ARGS[0] = 'contractOfferAccept':
+	'"It sounds like a exciting idea."'
+	'She smiles at you viciously.'
+	'"I am glad you see it this way. I have prepared some paperwork. It''s mostly annoying legal stuff. I need to need your confirmation that I am allowed to spank you for example."'
+	'She hands you a binder containing a contract and a pen.'
+	act 'Sign without reading':
+		gt 'nichGala', 'contractOfferSign'
+	end
+	act 'Read':
+		nichGalaContractRead = 0
+		gt 'nichGala', 'contractOfferRead'
+	end
+elseif $ARGS[0] = 'contractOfferRead':
+	'<center><img <<$set_imgh>> src="images/characters/city/gala/slave/contract.jpg"></center>'
+	
+	if nichGalaContractRead = 0:
+		'You start reading the first few lines:'
+		''
+		'Slave Contract'
+		'Contract between <<$pcs_firstname>> <<$pcs_lastname>> (the slave) and Gala Polyakov (the owner).'
+	elseif nichGalaContractRead = 1:
+		if pcs_intel >= 30:
+			'The contract states that you are not allowed to speak about your status as a slave or Galas involvement in this to anybody.'
+		else
+			'There are lots of difficult legal statements. Maybe a non-disclosure agreement? You struggle to make any sense of it.'
+			'<font color = red>Apparently you are not smart enough to understand this section of the contract.</font>'
+		end
+	elseif nichGalaContractRead = 2:
+		if pcs_intel >= 40:
+			'It appears as if the contract can only be ended by Gala and not by you. She can do so anytime.'
+		else
+			'There are lots of difficult legal statements. It''s something about the contracts duration. You struggle to make any sense of it.'
+			'<font color = red>Apparently you are not smart enough to understand this section of the contract.</font>'
+		end
+	elseif nichGalaContractRead = 3:
+		if pcs_intel >= 50:
+			'The contract also allows Gala to put you under constant surveillance.'
+		else
+			'There are lots of difficult legal statements. At some point there''s something about a webcam. You struggle to make any sense of it.'
+			'<font color = red>Apparently you are not smart enough to understand this section of the contract.</font>'
+		end
+	elseif nichGalaContractRead = 4:
+		if pcs_intel >= 60:
+			'The contract also allows Gala to make lasting alterations to your body, including cutting your hair, giving your piercings and tattoos and even performing plastic surgeries.'
+		else
+			'There are lots of difficult legal statements. There is something about your body. You struggle to make any sense of it.'
+			'<font color = red>Apparently you are not smart enough to understand this section of the contract.</font>'
+		end
+	elseif nichGalaContractRead = 5:
+		if pcs_intel >= 70:
+			'Also you are required to live wherever Gala wants you to. You are not allowed to leave your home without her permission and she can restrain you anywhere anyhow and for as long as she wants. This can''t be legal, can it?'
+		else
+			'There are lots of difficult legal statements. It sounds as if she wants to cuff you. You struggle to make any sense of it.'
+			'<font color = red>Apparently you are not smart enough to understand this section of the contract.</font>'
+		end
+	elseif nichGalaContractRead = 6:
+		if pcs_intel >= 80:
+			'Gala is also allowed to share you with any number of other people and even sell you to somebody else. This surely isn''t legal.'
+		else
+			'There are lots of difficult legal statements. Something about purchases. Does she want to buy something for you? You struggle to make any sense of it.'
+			'<font color = red>Apparently you are not smart enough to understand this section of the contract.</font>'
+		end
+	elseif nichGalaContractRead = 7:
+		if pcs_intel >= 20:
+			'On the last pages the responsibilities of Gala are listed.'
+			'Basically she has to make sure you stay alive and healthy.'
+		else
+			'There are lots of difficult legal statements. You struggle to make any sense of it.'
+			'<font color = red>Apparently you are not smart enough to understand this section of the contract.</font>'
+		end
+	end
+	
+	if nichGalaContractRead < 7:
+		act 'Read further':
+			nichGalaContractRead += 1
+			gt 'nichGala', 'contractOfferRead'
+		end
+	end
+	act 'Sign':
+		gt 'nichGala', 'contractOfferSign'
+	end
+	act 'Don''t sign':
+		cla
+		'You look up from the papers.'
+		'"I am sorry, Mistress Gala, but I can''t sign that."'
+		'She looks dissapointed.'
+		'"A pity. Of course I expect you never to talk about this again. And you can still come to me for our normal training sessions."'
+		nichGalaContract = 20
+		act 'Back':
+			gt $loc, 'return'
+		end
+	end
+elseif $ARGS[0] = 'contractOfferReject':
+	'"I am sorry Mistress Gala, but I can''t be your slave."'
+	'She looks dissapointed.'
+	'"A pity. But you can still come to me for our training sessions."'
+	nichGalaContract = 20
+	act 'Back':
+		gt $loc, 'return'
+	end
+elseif $ARGS[0] = 'contractOfferSign':
+	nichGalaContract = 30
+	nichGalaContractActive = 1
+	nichGalaContractDay = daystart
+	'<center><img <<$set_imgh>> src="images/characters/city/gala/slave/contract.jpg"></center>'
+	'You take the pen and sign the contract.'
+	'Gala smiles at you and takes the papers out of your hands once you have placed your signature.'
+	'"Well done, slave."'
+	'She leaves the room to safely lock the contract away. When she returns she holds a golden ring in her hand.'
+	'"This is my first gift to you." She hands the ring over to you.'
+	act 'Take it':
+		*clr & cla
+		'<center><img <<$set_imgh>> src="images/characters/city/gala/slave/ring.jpg"></center>'
+		'You take the ring and inspect it. It is a little heavier than you expected. You assume that it is made of stainless steel. It has a round triskelion-symbol on top of it.'
+		'You put it on your right hands ring finger. It takes quite some effort since it is a very tight fit.'
+		'"Good. Now show me your hand."'
+		'You reach over to her and she inspects the fit of the ring. Then she takes a tiny key which fits into the symbol on top of the ring. She turns it just a tiny bit. You can feel that the ring becomes even tighter. You try to bend your finger. To your relief the ring doesn''t cause any discomfort.'
+		'"Now remove the ring."'
+		'You try pulling and pushing but the ring won''t move even a tiny bit. Gala smiles while watching you.'
+		'"This ring marks you as my slave. Without the proper key it is next to impossible to remove it. Now lets go to the attic. I want to introduce you to your new life."'
+		act 'Upstairs':
+			*clr & cla
+			'<center><img <<$set_imgh>> src="images/characters/city/gala/slave/intro1.jpg"></center>'
+			'Gala leads you upstairs into the attic. You know what is expected of you and put off your clothes.'
+			'She then points at some restraints resting on a small table.'
+			'"Put these on!"'
+			'Gala watches you as you put a black leather collar with a big metal ring in front of it around your neck, followed by cuffs around your wrists, upper arms and finally ankles.'
+			'The last thing is a big bit which you put into your mouth. You rhen realize that there are also padlocks without the matching keys. Reluctantly you lock all your restraints in place.'
+			'"Now get to your knees."'
+			'You comply. Gala first locks your ankle cuffs together, then she connects your wrist cuffs and your collar with a sturdy metal chain. Afterwards she connects the cuffs at your upper arms with a very short chain, forcing them together and effectively rendering your amrs completely immobile.'
+			'Lastly she pulls you up by your hair hand connects the back side of your collar to a chain hanging from the ceiling.'
+			act 'Continue':
+				*clr & cla
+				'<center><img <<$set_imgh>> src="images/characters/city/gala/slave/intro1.jpg"></center>'
+				'You are forced into a very akward position. Resting on your knees is painfull and more than just a little uncomfortable since it requires tension in nearly all of your body. But if you relax the collar begins to strangle you.'
+				'"This is your first lesson, slave. Your whole purpose is to serve and entertain me now. And I enjoy watching you struggle."'
+				'She goes over to her leather chair and sits down. She drinks a glass of wine while she watches you struggle.'
+				*nl
+				gs 'pain',2,'legL','ache'
+				gs 'pain',2,'legR','ache'
+				minut += 30
+				gs 'stat'
+				if pcs_stren >= 50:
+					'You struggle for what feels at least half an hour. Your <b>high strenght</b> allows you to stay in your awkward position without being strangled too much.'
+					act 'Continue': gt 'nichGala','slaveIntro',1
+				elseif pcs_vital >= 60:
+					'You struggle for what feels at least half an hour. As your legs grow tired you get strangled more and more. Your <b>high endurance</b> allows you to stay awake anyways.'
+					act 'Continue': gt 'nichGala','slaveIntro',1
+				else
+					'You struggle for what feels like an eternity. As your legs grow tired you get strangled more and more. Finally you can''t force yourself up anymore. You start to panic as you realize that you are going to choke.'
+					'Everything goes dark. The last thing you see is that Gala slowly stands up from her seat and walks over to you.'
+					act 'Continue': gt 'nichGala','slaveIntro',2
+				end
+			end
+		end
+	end
+elseif $ARGS[0] = 'slaveIntro':
+	if ARGS[1] = 1:
+		gs 'pain',10,'nipples','pinch'
+		minut += 5
+		gs 'stat'
+		'<center><img <<$set_imgh>> src="images/characters/city/gala/slave/intro2.jpg"></center>'
+		'Gala slowly stands up and walks over to you.'
+		'"Well done, slave. I thought I would have to rescue you at some point."'
+		'She takes out two big nipples clamps and attaches them to your nipples. They are a little uncomfortable but don''t hurt.'
+		'"Do you like these clamps? The good thing about them is that they can be adjusted. Lets make them a little tighter. Just give me a sign when the pain is too intense."'
+		'She turns small cogwheels attached to the clamps. After two turns the pain is so intense you have to shriek and frantically shake your head no.'
+		'"Enough already? Little slave bitches like yourself always want to go the easy route."'
+		'She turns the cogwheels half a turn further and your nipples feel like they are on fire.'
+		'You can''t help but scream. She looks down at you and pets your head while smiling.'
+		'It takes a few minutes for your screams to become silent sobs. Your nipples still hurt badly but since your blood can''t flow freely there they become increasingly numb.'
+		'Gala then wraps your hands in pieces of clothes and secures them with tape, preventing you from reaching your nipples and removing the clamps.'
+		'Then she disconnects you from the chain that leads connects you to the ceiling and lets you fall on your side.'
+		act 'Continue': gt 'nichGala','slaveIntro',10
+	elseif ARGS[1] = 2:	
+		gs 'pain',10,'nipples','pinch'
+		minut += 5
+		gs 'stat'
+		'<center><img <<$set_imgh>> src="images/characters/city/gala/slave/intro2.jpg"></center>'
+		'You wake up to an horrible pain in your nipples. Apparently there are extremely tight clamps attached to them.'
+		'Opening your eyes you realize that you are now lying on your side, still bound the same way you were before.'
+		'Your hands are wrapped in clothes and secure with tape, preventing you from reaching your nipples and removing the clamps.'
+		'The pain in your nipples is too intense to bare. You can''t help but scream.'
+		'It takes a few minutes for your screams to become silent sobs. Your nipples still hurt badly but since your blood can''t flow freely there they become increasingly numb.'
+		'You then see Gala stepping over your body and placing. Her shoes are directly in front of your face. Apparently she was standing behind you the whole time.'
+		act 'Continue': gt 'nichGala','slaveIntro',10
+	elseif ARGS[1] = 10:		
+		'<center><img <<$set_imgh>> src="images/characters/city/gala/slave/intro3.jpg"></center>'
+		'"There is a valuable lesson for you to learn here, slave: you are here for my entertainment. And you being in discomfort is very entertaining to me. If you don''t like that you better provide another form of entertainment."'
+		'She walks behind you. From the corner of you eye you see that she kneels down at your back when she returns. Suddenly you feel a pressure against your butthole.'
+		'"Now for the last lesson of today. You are my property now. And that includes your slut-holes. I expect you to keep them in prestine condition and ready to be used. Now relax!"'
+		'There is no use resisting. Gala presses a dildo into your ass and then a second one into your vagina. She secures both of them in place with a cable running between your legs.'
+		'Just as you are starting to wonder why she chose small sizes you feel them inflating. Gala pumps them up until they are quite uncomfotable.'
+		'You try pressing them out, but they don''t move a tiny bit.'
+		'Gala stands up and steps in front of you. You can see nothing but her feet in her high heel shoes.'
+		gs 'pain',4,'vaginal','stretch'
+		gs 'pain',4,'asshole','stretch'
+		minut += 5
+		gs 'stat'
+		act 'Continue': gt 'nichGala','slaveIntro',20
+	elseif ARGS[1] = 20:	
+		'<center><img <<$set_imgh>> src="images/characters/city/gala/slave/intro2.jpg"></center>'
+		'"I have things to do now. You will stay here and think about how much you are my property, how much you want to serve me and how bad you want to avoid punishment."'
+		'She closes the door behind her as she leaves the room. You hear the key being turned. You are alone now.'
+		'At first you try to get out of your bindings. Or at least get a little more comfort. But it is no use. Gala has tied you up expertly and there is nothing you can do but wait.'
+		''
+		'It takes a few hours until you hear the lock being opened again.'
+		'You are reliefed by the sight how Gala. Despite her being the one who locked you here you can''t really feel angry at her since you also know that she is the only person who can free you.'
+		'"Lazy slut, lying around all day."'
+		'She throws the keys to your restraints at the floor in front of you and frees your left hand. Then she leaves.'
+		'At first you free your nipples. As the blood runs back into them the pain also returns. You have to pause shortly before you are able to undo your restraints. It takes quite some effort to do so since the locks are hard to reach from your position.'
+		'Lastly you are able to remove the dildos after you deflated them.'
+		'Still a little bit unsure on your feet you stand back up and put on your clothes.'
+		minut += 120
+		gs 'stat'
+		act 'Downstairs': gt 'nichApartment'
+	end
+
+elseif $ARGS[0] = 'slaveDoc':
+	if ARGS[1] <= 1:
+		'<center><img <<$set_imgh>> src="images/characters/city/gala/slave/doctorExt.jpg"></center>'
+		'The two of you get into Galas car and her driver drives you in the direction of the suburbs. You wonder where you are going but you don''t dare asking.'
+		'Finally the car drives up a driveway to a big building that''s surrounded by a big park. The driver stops right in front of it and steps out to open Galas door. You step out yourself.'
+		'Taking a closer look at the building you are standing before you see a sign: "Mental Institution". All the windows have bars before them, just like a prison, and it''s impossible to see what''s going on inside.'
+		'You throw a questioning look at Gala.'
+		'"Don''t worry, this is not an actual mental asylum anymore. Although it is still about correcting behavioral flaws in some regard."'
+		''
+		'Gala walks inside and you follow her. There are two security guards right behind the door and another heavy door behind them. One of them locks the door behind you and nods at the other guard who nods back and opens the second door for you.'
+		minut += 30 & gs 'stat'
+		act 'Go inside': gt 'nichGala','slaveDoc',2
+	elseif ARGS[1] = 2:
+		'<center><img <<$set_imgh>> src="images/characters/city/gala/slave/doctorNur.jpg"></center>'
+		'Just behind the door you are greeted by a nurse. To your surprise she is wearing a latex outfit. Is she an actual nurse or is this a costume?'
+		'"Welcome to our institute. You are just in time for you appointment. Please follow me."'
+		'She is only talking to Gala and doesn''t pay you any attention.'
+		'The nurse leads you to a small room that looks like an examination room. There is a gynochair in on cornor of it.'
+		'"Please tell your slave to undress and get in the chair."'
+		'Gala points at the chair.'
+		'"You heard her, slave."'
+		minut += 5 & gs 'stat'
+		act 'Comply': gt 'nichGala','slaveDoc',3
+	elseif ARGS[1] = 3:
+		'<center><img <<$set_imgh>> src="images/characters/city/gala/slave/doctorEx.jpg"></center>'
+		'You relunctantly undress and get into the chair. Why did Gala bring you here? You could have had an examination by your regular gynecologist.'
+		'"Please tell your slave to hold still. This is for her own safety."'
+		'Gala waves her hand at you, signaling you that she expects you to follow the nurses commands.'
+		'The nurse then secures you in place using some leather straps and ropes. She then steps behind you.'
+		'"Mistress Gala, is this really nece..."'
+		'You are cut short by a ballgag being pushed into your mouth. The nurse secures it in place, then steps back.'
+		'"I will inform the doctor that you are ready for him."'
+		'She leaves the room.'
+		minut += 2 & gs 'stat'
+		act 'Wait': gt 'nichGala','slaveDoc',4
+	elseif ARGS[1] = 4:
+		'<center><img <<$set_imgh>> src="images/characters/city/gala/slave/doctorGre.jpg"></center>'
+		'A few minutes later a middle-aged man enters the room. He must be the doctor. The nurse follows him.'
+		'The doctor goes over to Gala and shakes her hand.'
+		'"Greetings. My name is Dr. Alexeev. And you must be Mrs. Polyakov. I am glad we finally meet in person."'
+		'Gala and the doctor exchange some courtesy. Then he directs his attention at you.'
+		'"Now let us see what we have here."'
+		'He grabs a stool and places himself right between your legs. Then he begins examining your genitals.'
+		minut += 10 & gs 'stat'
+		act 'Next': gt 'nichGala','slaveDoc',5
+	elseif ARGS[1] = 5:
+		'<center><img <<$set_imgh>> src="images/characters/city/gala/slave/doctorEx.jpg"></center>'
+		'The doctor probes you with various tools and also takes a blood sample.'
+		if venera = 0:
+			'"Good news. It appears as if your slave is healthy."'
+		else
+			'"I am afraid I have bad news. Your slave has a STD. I have the cure for it here. But it isn''t cheap. Buying a new slave might be cheaper."'
+			'"I don''t care about the money. Just do it."'
+			'The doctor nods and tells the nurse to prepare everything. When she returns she administers several shots to your genitals.'
+			'"This should cure her soon."'
+			gs 'medical_din','healSTDs'
+			minut += 10
+		end
+		''
+		if pcs_vag > 15:
+			'"I  noticed that your slave had her vagina stretched very much. I could shrink it a little. Maybe you might have fun training her again."'
+			'"Sure, that sounds like a wonderful idea."'
+			'The doctor takes a syringe and administers a shot into your vagina. It starts to contract painfully.'
+			'After about five minutes the pain is nearly gone. The doctor probes you again.'
+			'"Good, she is way tighter now."'
+			pcs_vag = 8
+			minut += 10
+		end
+		minut += 10 & gs 'stat'
+		act 'Next': gt 'nichGala','slaveDoc',6
+	elseif ARGS[1] = 6:
+		if preg = 0: gt 'nichGala','slaveDoc',8
+		!! Pregnency
+		'<center><img <<$set_imgh>> src="images/characters/city/gala/slave/doctorEx.jpg"></center>'
+		'The doctor points at your belly.'
+		if pregchem > 4000:
+			'"You know that your slave is pregnant? Of course you do, it is fairly obvious."'
+		else
+			'"You know that your slave is pregnant?"'
+		end
+		'"Do you want me to do something about it?"'
+		if pregchem >= 1863:
+			'"Isn''t it too late for this?"'
+			'"It isn''t too late for me if it isn''t too late for you."'
+		end
+		'"Fine. I need her full attention. She can''t be distracted by a kid. She is too young for one anyways."'
+		'She comes over to you and pets your head.'
+		'"You will understand that that''s the best for you in time."'
+		
+		act 'Next': gt 'nichGala','slaveDoc',7
+		if nichCheat > 0:
+			act 'Cheat: Stay pregnant': gt 'nichGala','slaveDoc',8
+		end
+	elseif ARGS[1] = 7:
+		'<center><img <<$set_imgh>> src="images/characters/city/gala/slave/doctorEx.jpg"></center>'
+		if knowpreg = 1:
+			'You watch in horror as the nurse prepares everything to end your pregnancy. They are seriously going to kill your baby!'
+		else
+			'You watch the nurse prepare everything to end your pregnancy. You didn''t know that you were pregnant until know and therefore you are not quite sure what to think about this procedure.'	
+		end
+		'You get a shot to sedate your lower body. You can''t see what is going on and you can''t feel anything.'
+		'After about half an hour the doctor announces that he is finished.'
+		if pregchem > 4000:
+			'To your surprise your belly is already deflated as if you were never pregnant in the first place.'
+		end
+		gs 'medical_din','abortion'
+		minut += 30 & gs 'stat'
+		act 'Next': gt 'nichGala','slaveDoc',8
+	elseif ARGS[1] = 8:
+		'<center><img <<$set_imgh>> src="images/characters/city/gala/slave/doctorEx.jpg"></center>'
+		'The doctor gives you another shot, this time into your left arm.'
+		'"This will make sure she doesn''t get pregnant in the future. It''s a standard fomular which is also used at more traditional medical institutes."'
+		gs 'medical_din','birthControlShot'
+		minut += 5 & gs 'stat'
+		act 'Next': gt 'nichGala','slaveDoc',9
+	elseif ARGS[1] = 9:
+		'<center><img <<$set_imgh>> src="images/characters/city/gala/slave/doctorImpl.jpg"></center>'
+		'"I believe you were also interested in my little pet project?"'
+		'"Yes, that''s right. Although I am still not completely sure what it is about."'
+		'"Well, basically it is a way to teach your slave to stay chaste. Some owners prefer a chastity belt but I always found them to be quite inconvenient. They have to be cleaned regularly and you always have to mind about the key."'
+		'He takes out a tiny metal contraption and shows it to Gala.'
+		'"This little thing is a sensor I invented. I will insert it into the slaves pussy. There it will record anytime the slave has someone or something enter her. You can then easily check when and where it happened. You can use your phone for this, it can connect to the sensor wirelessly."'
+		'"Sounds like a great idea. Does it has to be recharged at some point?"'
+		'"No. It generates power by using the natural body movements of the slave. And the gold plating I used makes sure that it can stay in there forever."'
+		'Gala nods and the doctor gets down between your legs again. You feel his hand entering you and then a short stitching pain as he secures the sensor in place.'
+		'"Okay, slave. I will whitelist my apartment so I won''t get notified everytime you get fucked by me or my guests. But if the sensor triggers somewhere else wihtout my permission I will punish you severely."'
+		'You are shocked. This type of surveillance will rob you of an important part of your privacy.'
+		nichGalaImplant = 1
+		nichGalaImplantCount = 0
+		nichGalaImplantDay = daystart
+		minut += 10 & gs 'stat'
+		act 'Next': gt 'nichGala','slaveDoc',10
+	elseif ARGS[1] = 10:
+		'<center><img <<$set_imgh>> src="images/characters/city/gala/slave/doctorGre.jpg"></center>'
+		'"Could I do something else for you? Maybe breast implants for your slave?"'
+		'"No, thank you. I think that''s enough for today."'
+		'"Are you sure? We also have some psychological programs to offer."'
+		'"Thank you, but not today."'
+		'"Very well. Then I have one last thing for you."'
+		'He hands Gala a black and a red card. The black one has her face on it, the red one yours.'
+		'"Give them to the guards and they will let you pass."'
+		'He says his goodbyes and leaves the room. The nurse unties you and you put your clothes back on.'
+		'She leads Gala and you back to the entrace. Gala hands one of the guards the two cards. After a close inspection he lets you pass.'
+		'Outside Gala turns to you.'
+		'"Well done, slave. I know that it might not be easy for you to except the changes I had the doctor perform on you. But that''s your life now. Since you are such an obedient little slut I will tell my husband that you helped me with something important today, so he won''t expect you to work til tomorrow."'
+		'The two of you climb back into the car. The drive back home is rather uneventful.'
+		gs 'nichUtil','freeDay'
+		nichGalaDoc = 1
+		minut += 5 & gs 'stat'
+		act 'Back home': minut += 30 & gt 'nichApartment'		
+	end
+elseif $ARGS[0] = 'slaveImplant':
+	!! Punishment for having the implant activated
+	if ARGS[1] = 0:
+		if nichGalaImplantLevel = 0:
+			gt 'nichGala','slaveImplant',1
+		else
+			$nichGalaTxt = 'Gala pulls you by your hair. She is obviously angry with you.'
+			nichTempDayDifference = daystart - nichGalaImplantDay
+			if nichTempDayDifference <= 4:
+				$nichGalaTxt += '"Seriously, slave? Did you forget your last punishment already? I told you not to whore around."'
+				nichGalaImplantLevel = min(nichGalaImplantLevel+1,3)
+			elseif nichTempDayDifference <= 14:
+				!! don''t change punishment level
+				$nichGalaTxt += '"Stupid slave bitch. You can''t even walk around for two weeks without offering your pussy to strangers, can''t you?"'
+			else
+				$nichGalaTxt += '"You naughty little bitch. I told you not to whore around the city. At least you managed to keep your legs closed for a few weeks."'
+				nichGalaImplantLevel = max(nichGalaImplantLevel-1,1)
+			end
+			
+			if nichGalaImplantLevel = 1:
+				gt 'nichGala','slaveImplant',10
+			elseif nichGalaImplantLevel = 2:
+				gt 'nichGala','slaveImplant',50
+			elseif nichGalaImplantLevel = 3:
+				if nichGalaTattoo = 0:
+					gt 'nichGala','slaveImplant',100
+				else
+					gt 'nichGala','slaveImplant',120
+				end
+			end
+			
+		end
+	elseif ARGS[1] = 1:
+		!! The first time this happens
+		'<center><img <<$set_imgh>> src="images/characters/city/gala/slave/dildo2.jpg"></center>'
+		'Gala pulls you by your hair. She leads you to your room.'
+		'"You little skank. Did you forget that I monitor your sexual activity? Or do you just don''t care?"'
+		'She forces you to undress. Then she ties your wrists together and forces you to the ground.'
+		'"This will satisfy your cock-hungry pussy."'
+		'She forces a big black dildo into your vagina.'
+		'"Oh, and just to be sure..."'
+		'She pushes another big dildo into your ass. Then she starts fucking you furiously with both of them.'
+		gs 'arousal','vaginal_dildo',10,'bound','rough','lesbian'
+		gs 'arousal','anal_dildo',-10,'bound','rough','lesbian'
+		gs 'arousal','end'
+		'After she is done she pulls the dildos out roughly and throws them onto your bed.'
+		'"Let this be a warning. I went soft on you because this was your first offense. Next time you will experience a real punishment."'
+		'She unties your wrists and leaves you alone.'
+		nichGalaImplantCount = 0
+		nichGalaImplantDay = daystart
+		nichGalaImplantLevel = 1
+		act 'Continue': gt 'nichBedroomServant'
+	elseif ARGS[1] = 10:
+		'<center><img <<$set_imgh>> src="images/characters/city/gala/slave/whipped'+rand(1,2)+'.jpg"></center>'
+		'<<$nichGalaTxt>>'
+		'She leads you to your room. There she makes you undress. Once you are naked she ties you up.'
+		'"I will make sure you remember that you might carry your pussy around but that it is my property."'
+		'She starts whipping you, paying careful attention to hitting your breasts and your vagina.'
+		'After about 15 minutes she unties you and leaves you alone.'
+		gs 'pain', 7, 'breasts','hit'
+		gs 'pain', 7, 'pubic','hit'
+		nichGalaImplantCount = 0
+		nichGalaImplantDay = daystart
+		minut += 15
+		gs 'stat'
+		act 'Continue': gt 'nichBedroomServant'
+	elseif ARGS[1] = 50:
+		'<center><img <<$set_imgh>> src="images/characters/city/gala/slave/cane'+rand(1,3)+'.jpg"></center>'
+		'<<$nichGalaTxt>>'
+		'She leads you up to the attic. There she makes you undress. Once you are naked she ties you up.'
+		'"Don''t forget that you brought that onto yourself."'
+		'She starts canning your butt furiously. You are quickly reduced to a sobbing mess but she won''t stop.'
+		'Only when you are so exhausted from screaming that you can''t get out another tone she finally stops.'
+		'"You think it''s over? Guess again. I will give you time to think about your failures."'
+		'She leaves you alone. With your tight restraints and your ass still burning like hell you don''t dare moving too much.'
+		'Gala returns about two hours later. Without another word she grabs her cane again and continues hitting you. Once again you are back to screaming and begging.'
+		'Once she is finally done you doubt that you will ever be able to sit without extreme pain again.'
+		'"Don''t forget this lesson, slave."'
+		'She unties you and then leaves you alone. You have quite some troubles putting you clothes back on, since even the softes touch feels like molten metal.'
+		pain['asscheeks'] = 100
+		nichGalaImplantCount = 0
+		nichGalaImplantDay = daystart
+		minut += 120
+		if pcs_makeup > 1:pcs_makeup = 0
+		gs 'stat'
+		act 'Continue': gt 'nichApartment'
+	elseif ARGS[1] = 100:
+		!! Sveta get a tattoo
+		'<<$nichGalaTxt>>'
+		'She leads you outside the house and to her car. She has her driver drive you to a tattoo studio.'
+		'"I will make sure everybody knows what you are."'
+		minut += 15
+		nichGalaImplantCount = 0
+		nichGalaImplantDay = daystart
+		gs 'stat'
+		act 'Continue': gt 'nichGala','slaveImplant',101
+	elseif ARGS[1] = 101:
+		nichTempOverwrite = 0
+		if tatvag = 0: 
+			tatvag = 47
+			'<center><img <<$set_imgh>> src="images/pc/body/tattoos/pubic/tatvag<<tatvag>>.jpg"></center>'
+		elseif tatass = 0:
+			tatass = 19
+			'<center><img <<$set_imgh>> src="images/pc/body/tattoos/ass/tatass<<tatass>>.jpg"></center>'	
+		elseif tatleg = 0:
+			tatleg = 37
+			'<center><img <<$set_imgh>> src="images/pc/body/tattoos/legs/tatleg<<tatleg>>.jpg"></center>'
+		elseif tatupb = 0:
+			tatupb = 13
+			'<center><img <<$set_imgh>> src="images/pc/body/tattoos/trampStamp/tatlowbck<<tatupb>>.jpg"></center>'
+		else
+			tatupb = 13
+			'<center><img <<$set_imgh>> src="images/pc/body/tattoos/trampStamp/tatlowbck<<tatupb>>.jpg"></center>'
+			nichTempOverwrite = 1
+		end
+		
+		'Gala leads you to the back of the studio. There she tells you to get naked.'
+		'Once the tattoo artist arrives Gala tells him to give a demeaning tattoo. He asks you whether you want this as well and you just nod.'
+		
+		if nichTempOverwrite = 1:
+			'He starts inspecting your body. But since you already own numerous tattoos he doesn''t find the perfect spot to add the new one.'
+			'Then Gala spins you around and points at your back.'
+			'"Just tattoo over her tramp stamp."'
+		end
+		
+		'The artist starts his work and about an hour later he is done. Gala inspects his work.'
+		'She is obviously happy with what he did and pays him a little extra before heading back home with you.'
+		
+		killvar 'nichTempOverwrite'
+		
+		nichGalaTattoo = 1
+		
+		minut += 60
+		gs 'stat'
+
+		act 'Back home': minut += 15 & gt 'nichApartment'
+	elseif ARGS[1] = 120:
+		'<center><img <<$set_imgh>> src="images/characters/city/gala/slave/pubhum1x1.jpg"></center>'
+		'<<$nichGalaTxt>>'
+		'She leads you outside the house and to her car. She has her driver drive you to the bar of a biker gang outside the city.'
+		'The bar is filled with people, both men and women. Gala pushes you to the middle of the room. You feel like all eyes are set on you.'
+		'"Undress!"'
+		'You can''t believe what Gala just said. She wants you to get naked in front of all these people!'
+		'"Undress! Now!"'
+		'You reluctantly put your clothes off. Once you are done Gala grabs you by your chin and forcey you down to your knees. She starts whispering into your ear.'
+		'"You want your slut-holes filled? Then that''s what you get. Hopefully you will have enough of this once I come back and pick you up. Now you will stand up and tell these good people that you are a bad little slut and that you need to be punished."'
+		minut += 30
+		gs 'stat'
+		act 'Obey': gt 'nichGala','slaveImplant',121
+	elseif ARGS[1] = 121:	
+		'<center><img <<$set_imgh>> src="images/characters/city/gala/slave/pubhum1x2.jpg"></center>'
+		'You clear your voice. By now everybody is starring at you. With uncertain voice you tell them what Gala wanted you to say: that you are a dirty slut and that you need punishment.'
+		'Gala grins and leaves the bar.'
+		'It doesn''t take long before the first woman walks up to you, bends you over and starts whipping your ass. Clearly enjoying herself she encourages the other guests to follow her exmple.'
+		minut += 5
+		gs 'pain', 3, 'asscheeks','hit'
+		gs 'stat'
+		act 'Continue': gt 'nichGala','slaveImplant',121 + rand(1,2)
+	elseif ARGS[1] = 122:	
+		'<center><img <<$set_imgh>> src="images/characters/city/gala/slave/pubhum1x3.jpg"></center>'
+		'Next in line is a couple. The guy pushes you down to your knees and forces his dick into your mouth.'
+		'The girl pushes your head from behind to force her boyfriends cock further down your throat.'
+		'"It''s so hot seeing you skullfucking this bitch. I think we should come here more often."'
+		gs 'arousal','bj',5,'exhibitionism','humiliation','deepthroat','unknown','bound','group'
+		'After some minutes the guy comes in your mouth and forces you to swallow his cum while kissing his girlfriend.'
+		'Once he is limp again he kicks you away.'
+		gs 'cum_call','mouth','',0
+		gs 'stat'
+		act 'Continue': gt 'nichGala','slaveImplant',122 + rand(1,2)
+	elseif ARGS[1] = 123:
+		'<center><img <<$set_imgh>> src="images/characters/city/gala/slave/pubhum1x4.jpg"></center>'
+		'Next comes a guy who bends you over without saying a word and starts ramming is dick into your ass.'
+		'His friends stand around you cheering at him.'
+		'"Hey, lets use this."'
+		'One of them pushes a bottle into your vagina while is buddy continues grinding into you.'
+		gs 'arousal','anal',5,'exhibitionism','humiliation','unknown','bound','group'
+		'Just before he is about to come the guy pulls out of you and sprays his cum at your back.'
+		gs 'cum_call','back','',0
+		gs 'stat'
+		act 'Continue': gt 'nichGala','slaveImplant',123 + rand(1,2)
+	elseif ARGS[1] = 124:
+		'<center><img <<$set_imgh>> src="images/characters/city/gala/slave/pubhum1x5.jpg"></center>'
+		'A girl steps right in front of you and pulls down her top.'
+		'Being pushed down by one of her friends she forces you to suck on her breasts.'
+		'"This feels amazing, you should try that as well."'
+		gs 'arousal','kiss_give',5,'exhibitionism','humiliation','unknown','bound','group','lesbian'
+		gs 'stat'
+		act 'Continue': gt 'nichGala','slaveImplant',124 + rand(1,2)
+	elseif ARGS[1] = 125:	
+		'<center><img <<$set_imgh>> src="images/characters/city/gala/slave/pubhum1x6.jpg"></center>'
+		'A married couple, about 50 years old, is next. They force you down on a table.'
+		'The man forces his dick into the mouth while the woman starts fucking your pussy with a strapon provided by the barkeeper.'
+		'It doesn''t take long before a random bystander starts to use a vibrator on your clit as well.'
+		gs 'arousal','bj',5,'exhibitionism','humiliation','deepthroat','unknown','bound','group'
+		'After a few minutes the couple leaves for the bathroom, announcing that you are free for the next person to use.'
+		gs 'stat'
+		act 'Continue': gt 'nichGala','slaveImplant',125 + rand(1,2)
+	elseif ARGS[1] = 126:
+		'<center><img <<$set_imgh>> src="images/characters/city/gala/slave/pubhum1x7.jpg"></center>'
+		'The barkeeper is next. While his girlfriend uses a vibrator on your vagina he roughly fucks your ass.'
+		gs 'arousal','anal',5,'exhibitionism','humiliation','unknown','bound','group'
+		'He cums after a few minutes. After he is done he smacks your butt.'
+		'"Feel free to come here any time."'
+		gs 'cum_call','anus','',0
+		gs 'stat'
+		act 'Continue': gt 'nichGala','slaveImplant',126 + rand(1,2)
+	elseif ARGS[1] = 127:
+		'<center><img <<$set_imgh>> src="images/characters/city/gala/slave/pubhum1x8.jpg"></center>'
+		'An old rocker steps next to you. He is accompanied by a girl who is about your age.'
+		'"I know exactly what bitches like this one need."'
+		'He pushes you onto a table. Then he instructs the girl next to you to shove her whole fist into you and fuck you with it.'
+		gs 'arousal','anal_fist',5,'exhibitionism','humiliation','unknown','bound','group'
+		'After a few minutes the man and the girl start kissing, forgetting all about you.'
+		gs 'stat'
+		act 'Continue': gt 'nichGala','slaveImplant',127 + rand(1,2)
+	elseif ARGS[1] = 128:
+		'<center><img <<$set_imgh>> src="images/characters/city/gala/slave/pubhum1x9.jpg"></center>'
+		'There is nobody else waiting for you. Therefore the barkeepers girlfriend pushes you to the ground and ties you into a painful hogtie.'
+		'You stay on the ground for nearly an hour. Sometimes a guest spits at you or gives you a kick, but they seem to be mostly done with you.'
+		minut += 60
+		gs 'stat'
+		act 'Continue': gt 'nichGala','slaveImplant',129
+	elseif ARGS[1] = 129:
+		'<center><img <<$set_imgh>> src="images/characters/city/gala/slave/pubhum1x10.jpg"></center>'
+		'Finally Gala returns. The barkeepers girlfriend removes your restraints for her.'
+		'"If you ever have enough of your slut just tell us. She is a great entertainment for our guests."'
+		'Gala just nods. She waits for you to dress again, then the both of you drive back to the apartment.'
+		nichGalaImplantCount = 0
+		nichGalaImplantDay = daystart
+		act 'Back home': minut += 30 & gt 'nichApartment'
+	end
+	
+	
+elseif $ARGS[0] = 'slaveGeneric':
+	
+	if nichGalaContractTaras = 0 and nichGalaContractDay + 14 <= daystart:
+		gt 'nichGala','slaveTarasIntro'
+	end
+	
+	
+	nichRand = rand(1,10)
+	nichGalaContractLast = daystart
+	!! TODO: CONT
+	if nichRand = 1 and pcs_cupsize > 15:	
+		!!Hang by tits
+		'<center><img <<$set_imgh>> src="images/characters/city/gala/slave/bound6.jpg"></center>'
+		'Gala leads you up to the attic. There ties your ankles together and secures your hands behind your back.'
+		'Then she tightly bind your brests to a rope which she pulls up. You are hanging by your breasts only.'
+		'The pain is intense and you can''t help but scream. It feels as if your breasts are ripped off.'
+		'Gala grins and circles you from time to time, smacking your butt each time.'
+		'Finally she lets you down and orders you to put your clothes back on.'
+		gs 'pain', 8, 'breasts','bind'
+		minut += 30
+		gs 'stat'
+		act 'Downstairs': gt 'nichApartment'
+	elseif nichRand <= 6:
+		!! Being bound
+		'<center><img <<$set_imgh>> src="images/characters/city/gala/slave/bound'+rand(1,5)+'.jpg"></center>'
+		'Gala leads you up to the attic. There she restrains you in an incredibly uncomfortable position.'
+		'She grins as you try moving your muslces and shifting your weight only to find that you''ve gotten into an even more uncomfortable position.'
+		'After watching you for half an hour Gala leaves you alone. It takes more than an hour before she returns.'
+		'When she does she pets your head.'
+		'"See what a nice Mistress I am? I let you relax while others would make you work."'
+		'She frees you and you put your clothes back on.'
+		minut += 120
+		gs 'stat'
+		act 'Downstairs': gt 'nichApartment'
+	else nichRand <= 8:
+		!! Being restrained
+		'<center><img <<$set_imgh>> src="images/characters/city/gala/slave/whipped'+rand(1,2)+'.jpg"></center>'
+		'Gala leads you to her bedroom. There she makes you undress, ties you up and takes out her whip.'
+		gs 'pain', 3, 'tummy', 'hit'
+		minut += 15
+		gs 'stat'
+		'For about 15 minutes she whips you and calls you degrading names before finally releasing you.'
+		act 'Downstairs': gt 'nichApartment'
+	else
+		'<center><img <<$set_imgh>> src="images/characters/city/gala/slave/restrained'+rand(1,3)+'.jpg"></center>'
+		'Gala leads you up to the attic. There she makes you undress.'
+		'Then she ties you to some kind of metal restaints. They force you into an awkward position.'
+		'"It think you earned yourself a reward, slave."'
+		'She pushes a big vibrator into your vagina and turns it on. You feel its powerful impulses in your whole body.'
+		'"Now open your other slut hole."'
+		'She pushes a dildo gag into your mouth. It fills your mouth almost completely. She locks it in place. You try pushing it with your tongue, but it won''t move at all.'
+		'"Enjoy, slut!"'
+		act 'Downstairs': gt 'nichApartment'
+	end
+elseif $ARGS[0] = 'slaveTarasIntro':
+	if ARGS[1] = 0:
+		'<center><img <<$set_imgh>> src="images/characters/city/gala/slave/taras/intro0.jpg"></center>'
+		'Gala leads you up to the attic. You put your clothes off, then she binds you to an old rusty bed and secures a ballgag in your mouth.'
+		'Then she leaves the room. To your surprise she returns a few minutes later with her bodyguard.'
+		'Shocked by this unexpected visitor you instinctively try to cover yourself. But of course that''s not possible.'
+		'"You know my bodyguard Taras, don''t you, slave? He is an exceptional employee and his services are constantly exceeding expectations. That''s why I decided to give him a special reward."'
+		'You are shocked. Can she be serious?'
+		'"Yes, you guessed right. From now on you will serve him as well. He can use you as he sees fit whenever I don''t require your services."'
+		'"I think it''s best if the two of you get to know each other."'
+		'You hear her leaving the room.'
+		act 'Continue': gt 'nichGala','slaveTarasIntro',1
+	elseif ARGS[1] = 1:
+		'<center><img <<$set_imgh>> src="images/characters/city/gala/slave/taras/intro1.jpg"></center>'
+		'Without saying a word Taras grabs a crop and starts hitting your back with it.'
+		'He expertly administers his strokes to inflict the most pain without leaving any visible damage.'
+		gs 'pain',3,'back','spank'
+		minut += 10
+		gs 'stat'
+		act 'Continue': gt 'nichGala','slaveTarasIntro',2
+	elseif ARGS[1] = 2:
+		'<center><img <<$set_imgh>> src="images/characters/city/gala/slave/taras/intro2.jpg"></center>'
+		'He steps next to the bed and you feel his hand around your throat.'
+		'"Listen, slut. You better learn to enjoy this. This is your life now."'
+		'He begins squeezing your throat. It becomes hard for you to breath.'
+		'"Are you enjoying it yet?"'
+		'Not knowing what he expects of you you just look at him with a questioning look in your eyes.'
+		'"I said do you enjoy it?"'
+		'He squeezes your throat a little tighter. Not having another choice you nod your head yes.'
+		'"Do you love what is happening to you."'
+		'His grip is now so tight you will pass out soon. Starting to panic you frantically nod.'
+		'"Well, that is good."'
+		'He losens his grip a little bit?'
+		'"Do you want me to fuck you then? I have to ask. After all I am no rapist."'
+		'Knowing that he will start choking you again if you decline you can''t do anything but nod.'
+		'"Of course you do. You are nothing but a dirty slut."'
+		gs 'pain',1,'throat','bind'
+		minut += 5
+		gs 'stat'
+		act 'Continue': gt 'nichGala','slaveTarasIntro',3
+	elseif ARGS[1] = 3:
+		'<center><img <<$set_imgh>> src="images/characters/city/gala/slave/taras/intro3.jpg"></center>'
+		'He pulls down his pants and climbs into the bed. Then he begins to fuck you.'
+		'He pushes into you while holding you tightly by your wrist.'
+		gs 'cum_call', '', 'A233', 1
+		gs 'arousal','vaginal',10,'bound','rough'
+		gs 'arousal','end'
+		'It takes about ten minutes before he finally cums.'
+		'"Well, that was fun. We will repeat that soon. Very soon."'
+		'He puts his pants back on before untieing your left wrist so you can remove your other restraints.'
+		'Once you are done removing them Taras is long gone. You put your clothes back on.'
+		
+		gs 'stat'
+		nichGalaContractTaras = 1
+		nichGalaContractTarasLast = daystart
+		act 'Downstairs': gt 'nichApartment'
+	end
 	
 elseif $ARGS[0] = 'training':
 	!!TrainStages:

+ 85 - 3
locations/nichLivingroom.qsrc

@@ -196,6 +196,7 @@ elseif $ARGS[0] = 'evtGalaTele1':
 elseif $ARGS[0] = 'breakfast':
 	!! breakfast starts at 7:45 at weekdays and 8:45 at weekends
 	!! PC will need at least 30 minutes to prepare breakfast.
+	menu_off = 1 & gs 'stat'
 	nichBreakfLast = daystart
 	nichTemp = 7
 	if week > 5:
@@ -205,7 +206,7 @@ elseif $ARGS[0] = 'breakfast':
 	'<center><img <<$set_imgh>> src="images/locations/city/citycenter/nichApartment/breakfast'+rand(0,5)+'.jpg"></center>'
 	if hour < nichTemp or (hour = nichTemp and minut <= 15):
 		'You have enough time to prepare breakfast. You make coffee, collect the newspaper from the mailbox and place everything on the dinner table.'
-		'When the family members arrive one by one the breakfast table if prepared perfectly and you stand ready to fullfill additional requests.'
+		'When the family members arrive one by one the breakfast table is prepared perfectly and you stand ready to fullfill additional requests.'
 		nichBreakFQual = 1
 	elseif hour = nichTemp and minut <= 30:
 		'You hastilty prepare coffee and collect the newspaper from the mailbox.'
@@ -224,7 +225,20 @@ elseif $ARGS[0] = 'breakfast':
 	
 	nichRand = rand(1,100)
 	
-	if preg > 0 and nichPregnancy = 0 and FUNC('body_din','pregnancyVisibility') = 1:
+	if nichGalaTarasPlan = 10:
+		*nl
+		'"<<$pcs_nickname>>, have you seen my wife lately? She wasn''t home this night. That''s quite unusual."'
+		'"I am sorry, Master Nicholas, but I don''t know anything about that."'
+		'Tanya looks annoyed.'
+		'"I guess she just spent the night at one of her friends. It wouldn''t be the first time, right?"'
+		'Nicholas nods slowly, but doesn''t seem convinced.'
+		nichAfterBFEvent = 5000
+	elseif nichGalaTarasPlan = 100:	
+		*nl
+		'Gala looks distressed today.'
+		'"<<$pcs_nickname>>, please talk to me after breakfast."'
+		nichAfterBFEvent = 5010
+	elseif preg > 0 and nichPregnancy = 0 and FUNC('body_din','pregnancyVisibility') = 1:
 		*nl
 		'Nicholas directs his attention at you.'
 		'"<<$pcs_nickname>>, there is something important we need to talk about after breakfast."'
@@ -269,6 +283,8 @@ elseif $ARGS[0] = 'breakfast':
 		'"But..."'
 		'"Enough of this. I am sure you just lost it somewhere in your wardrobe."'
 		'Gala looks dissapointed but drops the topic nevertheless.'
+		''
+		'<b>Maybe you should search for the missing necklace. It would be very bad if you got blamed for its disappearance.</b>'
 		nichGalaOpponent = 21
 	elseif nichGalaOpponent = 21 or nichGalaOpponent = 22:
 		*nl
@@ -278,6 +294,25 @@ elseif $ARGS[0] = 'breakfast':
 		'"Lets look into each room. It has to be somewhere, doesn''t it?"'
 		'"Okay then. We will do this after the breakfast."'
 		nichAfterBFEvent = 100
+	elseif nichGalaImplantCount > 0:
+		*nl
+		'Gala looks at you with a stern look on her face.'
+		'"<<$pcs_nickname>>, I want to talk to you after breakfast."'
+		'"Of course, Mistress Gala." You reply as is expected of you.'
+		nichAfterBFEvent = 220
+	elseif nichGalaContractActive = 1 and nichGalaDoc = 0:
+		!! First visit of the doctor
+		*nl
+		'Gala looks at you with a stern look on her face.'
+		'"<<$pcs_nickname>>, I want to talk to you after breakfast."'
+		'"Of course, Mistress Gala." You reply as is expected of you.'
+		nichAfterBFEvent = 210
+	elseif nichGalaContractActive = 1 and nichGalaContractLast + rand(5,7) <= daystart:
+		*nl
+		'Gala looks at you with a stern look on her face.'
+		'"<<$pcs_nickname>>, I want to talk to you after breakfast."'
+		'"Of course, Mistress Gala." You reply as is expected of you.'
+		nichAfterBFEvent = 200
 	elseif nichGentleclubE1 = 0 and nichPerformance >= 60 and $nichStatMsg = '' and (nichRand <= 40 or nichDebug = 1) and nichDebug = 1: 
 		!! TODO: locked until expanded further
 		'The family members are chatting with each other about topics of little interest to you.'
@@ -447,6 +482,8 @@ elseif $ARGS[0] = 'breakfast':
 				
 			else
 				!! the necklace is in Galas jewelry box
+				killvar 'nichAfterBFEvent'
+				*clr & cla
 				'The first place Nicholas leads is the make-up table of his personal bedroom.'
 				'He carefully opens the jewelry box of Gala and presents the missing necklace.'
 				'"Just as I thought. I hope you think twice before blaming somebody else for stealing your jewelry, dear wife."'
@@ -456,7 +493,52 @@ elseif $ARGS[0] = 'breakfast':
 					gt 'nichLivingroom'
 				end 
 			end
-			
+		
+		elseif nichAfterBFEvent = 200:
+			killvar 'nichAfterBFEvent'
+			*clr & cla
+			'After you are done cleaning up the table you go to Gala as requested.'
+			'"Slave, it is time you serve your owner."'
+			act 'Continue': gt 'nichGala','slaveGeneric'
+		elseif nichAfterBFEvent = 210:
+			killvar 'nichAfterBFEvent'
+			*clr & cla
+			'After you are done cleaning up the table you go to Gala as requested.'
+			'"Slave, today we make a little trip. There is somebody I want you to meet."'
+			act 'Continue': gt 'nichGala','slaveDoc',1
+		elseif nichAfterBFEvent = 220:
+			killvar 'nichAfterBFEvent'
+			gt 'nichGala','slaveImplant'
+		elseif nichAfterBFEvent = 5000:	
+			!! Police investigates after Gala flew the city
+			killvar 'nichAfterBFEvent'
+			*clr & cla
+			'<center><img <<$set_imgh>> src="images/characters/city/gala/events/police.jpg"></center>'
+			'While you clean up you hear the doorbell ringing. To your surprise the police actually showed up.'
+			'The policemen tell you that they really found the girl Katinka, the previous maid of the family, and that they have proof that Gala and Taras conspired to kidnap her. She spent the last month in some basement.'
+			'You get questioned by the police but since you started your job after Katinka vanished there isn''t much they want to know from you. You truthfully tell them that Gala and Taras left the apartment in an hurry the last time you saw them.'
+			'The police also questions Nicholas and Tanya. Once they are done they politely say their goodbyes and leave.'
+			''
+			'Nicholas takes you to the side once they are gone.'
+			'"Sveta, I hope you know what this means. My wife... she is a criminal. You can''t tell anybody about this. Just keep the silence. I will use my connections with the mayor to prevent the police from further investigation. If we are lucky nobody else will find out about this. It could ruin my repuation. Of course I would have to pay the poor girl Katinka... but let me worry about that."'
+			'You wonder whether it was Taras plan all along to let Katinka surface to prevent Nicholas from searching for Gala.'
+			'"And about Tanya... this is very difficult for her. We should give her some time to process these events."'
+			'"Of course, Master Nicholas."'
+			'"Thank you. I also believe that you might need some time yourself. My wife and you had a close connection as far as I know. You can take today and tomorrow off to sort your thoughts."'
+			nichGalaTarasPlan = 20
+			minut += 180
+			gs 'nichUtil','freeDay',2
+			gs 'stat'
+			act 'Continue': gt 'nichLivingroom'
+		elseif nichAfterBFEvent = 5010:	
+			!! Sveta told Gala Taras plan
+			'<center><img <<$set_imgh>> src="images/characters/city/gala/02.jpg"></center>'
+			'After you are done cleaning up the table you go to Gala as requested.'
+			'"I have bad news, slave. The men I told to take care of Taras... well, one of them is in hospital. He got shot in the shoulder. And Taras vanished."'
+			'She hesitates for a second.'
+			'"We should both be on the lookout. He is out there somewhere. And he has nothing to lose."'
+			nichGalaTarasPlan = 110
+			act 'Continue': gt 'nichLivingroom'
 		else
 			gt 'nichLivingroom'
 		end

+ 63 - 12
locations/nichTaras.qsrc

@@ -1,5 +1,12 @@
 # nichTaras
 
+!! nichTarasAbduction:
+!!						0: Sveta is not abducted
+!!						10:Gala ordered Taras to abduct Sveta
+!!						50:Taras abducted Sveta after Gala fired him
+
+!! Note: At the moment Taras will give up trying to abduct Sveta after 10 attempts (the first 2 fail automatically)
+
 menu_off = 0
 timeHidden = 0
 
@@ -65,9 +72,13 @@ if $ARGS[0] = 'abdIntro':
 		*nl
 		'"Look who decided to wake up." the male voice sounds familiar. "Just to make sure you don''t fall asleep again."'
 		*nl
-		'"You hear a swishing sound and your vagina feels like being on fire. Apperently you got whipped."'
+		'You hear a swishing sound and your vagina feels like being on fire. Apperently you got whipped.'
 		*nl
-		'Your eyes widen as the man torturing you steps into your field of view. It''s Taras, the bodyguard of Gala.'
+		if nichTarasAbduction = 10:
+			'Your eyes widen as the man torturing you steps into your field of view. It''s Taras, the bodyguard of Gala.'
+		else
+			'Your eyes widen as the man torturing you steps into your field of view. It''s Taras!'
+		end
 		*nl
 		'"Please sir..." another hit from the whip immidiately turns your plea into a scream.'
 		*nl
@@ -81,7 +92,7 @@ if $ARGS[0] = 'abdIntro':
 		end
 	elseif nichAbdStage = 21:
 		minut += 120
-		gs 'pain', 'pubic', 'spank' 
+		gs 'pain',5, 'pubic', 'hit' 
 		gs 'stat'	
 		'<center><img <<$set_imgh>> src="images/characters/city/taras/intro3.jpg"></center>'
 		'Locked down like this there is nothing you can do than continue waiting.'
@@ -90,14 +101,20 @@ if $ARGS[0] = 'abdIntro':
 		*nl
 		'"Good, you are awake." the male voice sounds familiar. "Just to make sure you don''t fall asleep."'
 		*nl
-		'"You hear a swishing sound and your vagina feels like being on fire. Apperently you got whipped."'
+		'You hear a swishing sound and your vagina feels like being on fire. Apperently you got whipped.'
 		*nl
-		'Your eyes widen as the man torturing you steps into your field of view. It''s Taras, the bodyguard of Gala.'
+		if nichTarasAbduction = 10:
+			'Your eyes widen as the man torturing you steps into your field of view. It''s Taras, the bodyguard of Gala.'
+		else
+			'Your eyes widen as the man torturing you steps into your field of view. It''s Taras!'
+		end
 		*nl
 		'"Please sir..." another hit from the whip immidiately turns your plea into a scream.'
 		*nl
 		'"Shut up, slut! I am sure you''re having a lot of questions right now. But there are only a few things you need to know."'
 		act 'Object':
+			gs 'pain',5, 'pubic', 'hit' 
+			gs 'stat'
 			'Just as you open your mouth you feel the whip once more. Taras obviously doesn''t want you to speak right now.'
 		end
 		act 'Listen':
@@ -108,9 +125,15 @@ if $ARGS[0] = 'abdIntro':
 		gs 'pain', 'breasts', 'twist' 
 		gs 'stat'	
 		'<center><img <<$set_imgh>> src="images/characters/city/taras/intro4.jpg"></center>'
-		'"I bet you''re wondering how you got here. You see, you annoyed Mistress Gala. Being the classy woman she is she can''t tolerate skanks like yourself in her household."'
-		*nl
-		'"That''s why she ordered me to get rid of you. She didn''t specify how you should vanish. At first I thought about disposing you in the wilderness. But then I thought you might make a nice addition to my collection of toys."'
+		if nichTarasAbduction = 10:
+			'"I bet you''re wondering how you got here. You see, you annoyed Mistress Gala. Being the classy woman she is she can''t tolerate skanks like yourself in her household."'
+			*nl
+			'"That''s why she ordered me to get rid of you. She didn''t specify how you should vanish. At first I thought about disposing you in the wilderness. But then I thought you might make a nice addition to my collection of toys."'
+		else
+			'"I bet you''re wondering why I brought you here. It really is your own fault. I wanted Mistress Gala to come here with me. But thanks to you she is out of reach for me now."'
+			*nl
+			'"Of course I won''t treat you the way I would treat her. You are nothing but a dirty slut. For a short time I thought you could be something more, but you really proved me wrong. You are nothing but some holes which I can use for a little entertainment."'
+		end
 		*nl
 		'He knees down next to you and starts painfully squeezing your breasts.'
 		*nl
@@ -122,7 +145,7 @@ if $ARGS[0] = 'abdIntro':
 			gt 'nichTaras','abdIntro' 
 		end
 		act 'No way!':
-			gs 'pain', 'nipples', 'twist' 
+			gs 'pain',6, 'nipples', 'twist' 
 			gs 'stat'
 			'"No! You can''t ..." you are interrupted by him painfully twisting your nipples.'
 			'"I''m asking again: do you understand?"'
@@ -163,7 +186,7 @@ if $ARGS[0] = 'abdIntro':
 		*nl
 		'The girl has a terrified look on her face. When Taras points at the ground she hastily drops on her knees and obediently starts to sucking him off.'
 		*nl
-		'It doesn''t take long for Taras to cum. When he does he grabs the girls head with both hands and forces his dick as deeply inside her throat as he can. You see the panic in the girls eyes as she struggles to breath. With a load moan Taras unloads his cum into her throat.'
+		'It doesn''t take long for Taras to cum. When he does he grabs the girls head with both hands and forces his dick as deeply inside her throat as he can. You see the panic in the girls eyes as she struggles to breath. With a loud moan Taras unloads his cum into her throat.'
 		*nl
 		'You see tears rolling down the girls cheeks as she starts to diligently lick his penis clean.'
 		*nl
@@ -180,8 +203,10 @@ if $ARGS[0] = 'abdIntro':
 		*nl
 		'He gives you a push and you land on your belly. You realize that you are now tied in a hogtie. At least you can move a tiny bit more now. You assume that you could slowly crawl around the basement like this.'
 		*nl
-		'"I have to go now. I need to get ready for work."'
-		*nl
+		if nichTarasAbduction = 10:
+			'"I have to go now. I need to get ready for work."'
+			*nl
+		end
 		'Directed at the other girl he says "Give this skank a wash. She stinks horribly. And make sure she doesn''t starve. I have way more fun planed for her."'
 		*nl
 		'"Yes, sir."'
@@ -702,6 +727,32 @@ elseif $ARGS[0] = 'session':
 		end
 		
 	end
+elseif $ARGS[0] = 'van':
+	'<center><img <<$set_imgh>> src="images/characters/city/taras/van.jpg"></center>'
+	'You see a suspicious looking van a little down the street. It''s the type of van typically used for abductions in movies. But that won''t happen in real life, right?'
+	''
+	'You can walk past the van or take a longer way to avoid it.'
+	nichGalaTarasPlan += 1
+	act 'Walk past it':
+		if nichGalaTarasPlan >= 113: gt 'nichTaras','vanAbduct'
+		gt $loc
+	end
+	act 'Avoid it (10 minutes)': minut += 10 & gt $loc
+elseif $ARGS[0] = 'vanAbduct':
+	if ARGS[1] = 0:
+		'<center><img <<$set_imgh>> src="images/characters/city/taras/abduction.jpg"></center>'
+		'As you pass the van the back door is suddenly opened. You have no time to react before a piece of cloth is pressed against your face.'
+		'It smells sweetish....... and you begin to black out.'
+		nichTarasAbduction = 50
+		act '...': gt 'nichTaras','vanAbduct',1
+	elseif ARGS[1] = 1:
+		'<center><img <<$set_imgh>> src="images/characters/city/taras/abductionVan.jpg"></center>'
+		'You slowly come back to your senses. The first thing you realize is that you are completely tied up. You can''t move at all.'
+		'You open your eyes in panic. You are in the back area of the van and it is moving. You try to scream, but your mouth is taped shut.'
+		'Your eyes are still a little blurred. You can''t see where you are or who the driver is.'
+		'But he must have watched you, because he stops the car, climbs back to you and presses the piece of cloth at your face again. You are falling unconscious once more.'
+		act '...': gt 'nichTaras','abdIntro'
+	end
 end
 
 --- nichTaras ---------------------------------

+ 161 - 67
locations/nichUtil.qsrc

@@ -79,6 +79,16 @@ elseif $ARGS[0] = 'debug':
 			nichGentleclubDayE1 = daystart 
 			nichGentleclubE1 = 1
 			gt 'nichApartment'
+			
+		elseif $ARGS[2] = 'galaContract':	
+			nichGalaTraining = 1
+			nichGalaTrainCounter = 5
+			nichWork = 2
+			nichGalaContractActive = 0
+			nichGalaContract = 0
+			minut = 0
+			hour = 18
+			gt 'nichApartment'
 		end
 	end
 
@@ -97,6 +107,8 @@ elseif $ARGS[0] = 'debug':
 	'<a href="exec: gt ''nichUtil'', ''debug'',''shortcut'',''getHired''">Get hired</a>: You visited Tanya often enough for her to offer you the job as the live-in maid.'
 	'<a href="exec: gt ''nichUtil'', ''debug'',''shortcut'',''tanyaDate100''">Tanya Special Date 1</a>: Tanya became somewhat dominant. Ask her for a date and let her decide where to go.'
 	'<a href="exec: gt ''nichUtil'', ''debug'',''shortcut'',''nichGentleclubE1''">Nicholas Club Event 1</a>: Nicholas has a special guest over. Meet him at his study.'
+	'<a href="exec: gt ''nichUtil'', ''debug'',''shortcut'',''galaContract''">Gala Contract</a>: Gala offers a special contract. Meet her in the living room.'
+	
 	*nl
 	
 	'<i><b>Job performance</b></i>'
@@ -148,6 +160,11 @@ elseif $ARGS[0] = 'debug':
 	end
 	
 elseif $ARGS[0] = 'startWorkday':
+	!! Sveta has free Wednesdays.
+	if nichWorkState > 0 and week = 3 and nichVactionTil < daystart:
+		nichVactionTil = daystart
+	end
+	
 	nichMissedWorkdays = daystart - nichLastWorkDay - 1
 	
 	
@@ -198,15 +215,14 @@ elseif $ARGS[0] = 'startWorkday':
 		end
 	end
 	
-	!! Sveta has free Wednesdays.
-	if nichWorkState > 0 and week = 3 and nichVactionTil < daystart:
-		nichVactionTil = daystart
-	end
+	
 	
 	nichLastWorkDay = daystart
 	
 	if nichWorkState > 0:
 		nichEvaluationLastReq = 0
+	elseif nichVactionTil >= daystart and nichVacationFrom <= daystart:
+		nichEvaluationLastReq = daystart + 1
 	else
 		nichEvaluationLastReq = daystart
 	end
@@ -724,69 +740,73 @@ if $ARGS[0] = 'npcActivity':
 			gs 'nichUtil', 'npcActivityAdd', 'sleep', 24 , 0
 		end
 	elseif $ARGS[1] = 'gala':
-		!!Morning routine
-		if week <= 5:
-			gs 'nichUtil', 'npcActivityAdd', 'sleep', 6 , 45
-			!! gala will wake up the same time Nicholas does (->alarm clock) but she will wait for him to be finished in bath before she goes there
-			gs 'nichUtil', 'npcActivityAdd', 'snooze', 7 , 15
-			!! Gala is in bath while Nicholas is in his study
-			gs 'nichUtil', 'npcActivityAdd', 'bathMorning', 7 , 45
-			!! note: breakfast time should be the same for all three characters
-			gs 'nichUtil', 'npcActivityAdd', 'breakfast', 8 , 30
-		else
-			gs 'nichUtil', 'npcActivityAdd', 'sleep', 7 , 45
-			gs 'nichUtil', 'npcActivityAdd', 'snooze', 8 , 15
-			gs 'nichUtil', 'npcActivityAdd', 'bathMorning', 8 , 45
-			gs 'nichUtil', 'npcActivityAdd', 'breakfast', 9 , 30
-		end
-		!! daily activity
-		if week = 1 or week = 3:
-			gs 'nichUtil', 'npcActivityAdd', 'living', 18 , 05
-		elseif week = 2:
-			!! Gala goes to spa on Tuesdays
-			gs 'nichUtil', 'npcActivityAdd', 'living', 9 , 0
-			gs 'nichUtil', 'npcActivityAdd', 'leaveSpa', 9 , 5
-			gs 'nichUtil', 'npcActivityAdd', 'spa', 15 , 30
-			gs 'nichUtil', 'npcActivityAdd', 'returnSpa', 15 , 35
-			gs 'nichUtil', 'npcActivityAdd', 'living', 18 , 05
-		elseif week = 4:
-			!! Gala visits a friend on Thursdays
-			gs 'nichUtil', 'npcActivityAdd', 'living', 9 , 0
-			gs 'nichUtil', 'npcActivityAdd', 'leaveFriend', 9 , 5
-			gs 'nichUtil', 'npcActivityAdd', 'friend', 17 , 30
-			gs 'nichUtil', 'npcActivityAdd', 'returnFriend', 17 , 35
-			gs 'nichUtil', 'npcActivityAdd', 'living', 18 , 05
-		elseif week = 5:
-			!! TODO: Friday plans
-			gs 'nichUtil', 'npcActivityAdd', 'living', 18 , 05
-		elseif week = 6:
-			!! TODO: Saturday plans
-			gs 'nichUtil', 'npcActivityAdd', 'living', 18 , 05
-		else
-			!! TODO: Sunday plans
-			gs 'nichUtil', 'npcActivityAdd', 'living', 18 , 0
-		end
-		!!evening
-		if week <= 4:
-			!! dinner has to be the same time for all three characters
-			gs 'nichUtil', 'npcActivityAdd', 'dinner', 18 , 30
-			gs 'nichUtil', 'npcActivityAdd', 'living', 20 , 30
-			gs 'nichUtil', 'npcActivityAdd', 'bathEvening', 22 , 15
-			gs 'nichUtil', 'npcActivityAdd', 'sleep', 24 , 0
-		elseif week = 5 or week = 6:
-			!! Gala will prepare herself for the club in the bedroom
-			!! she will accompany Nicholas there, so their times have to be the same
-			gs 'nichUtil', 'npcActivityAdd', 'prepareClub', 18 , 30
-			gs 'nichUtil', 'npcActivityAdd', 'leaveClub', 18 , 35
-			gs 'nichUtil', 'npcActivityAdd', 'club', 23 , 45
-			gs 'nichUtil', 'npcActivityAdd', 'returnClub', 23 , 50
-			gs 'nichUtil', 'npcActivityAdd', 'sleep', 24 , 0
+		if nichGalaDisabled = 1:
+			gs 'nichUtil', 'npcActivityAdd', 'vanished', 24 , 0
 		else
-			gs 'nichUtil', 'npcActivityAdd', 'dinner', 18 , 30
-			!! Nicholas will do her at this time, so she must have the corresponding entry
-			gs 'nichUtil', 'npcActivityAdd', 'nicholas', 21 , 30
-			gs 'nichUtil', 'npcActivityAdd', 'bathEvening', 21 , 45
-			gs 'nichUtil', 'npcActivityAdd', 'sleep', 24 , 0
+			!!Morning routine
+			if week <= 5:
+				gs 'nichUtil', 'npcActivityAdd', 'sleep', 6 , 45
+				!! gala will wake up the same time Nicholas does (->alarm clock) but she will wait for him to be finished in bath before she goes there
+				gs 'nichUtil', 'npcActivityAdd', 'snooze', 7 , 15
+				!! Gala is in bath while Nicholas is in his study
+				gs 'nichUtil', 'npcActivityAdd', 'bathMorning', 7 , 45
+				!! note: breakfast time should be the same for all three characters
+				gs 'nichUtil', 'npcActivityAdd', 'breakfast', 8 , 30
+			else
+				gs 'nichUtil', 'npcActivityAdd', 'sleep', 7 , 45
+				gs 'nichUtil', 'npcActivityAdd', 'snooze', 8 , 15
+				gs 'nichUtil', 'npcActivityAdd', 'bathMorning', 8 , 45
+				gs 'nichUtil', 'npcActivityAdd', 'breakfast', 9 , 30
+			end
+			!! daily activity
+			if week = 1 or week = 3:
+				gs 'nichUtil', 'npcActivityAdd', 'living', 18 , 05
+			elseif week = 2:
+				!! Gala goes to spa on Tuesdays
+				gs 'nichUtil', 'npcActivityAdd', 'living', 9 , 0
+				gs 'nichUtil', 'npcActivityAdd', 'leaveSpa', 9 , 5
+				gs 'nichUtil', 'npcActivityAdd', 'spa', 15 , 30
+				gs 'nichUtil', 'npcActivityAdd', 'returnSpa', 15 , 35
+				gs 'nichUtil', 'npcActivityAdd', 'living', 18 , 05
+			elseif week = 4:
+				!! Gala visits a friend on Thursdays
+				gs 'nichUtil', 'npcActivityAdd', 'living', 9 , 0
+				gs 'nichUtil', 'npcActivityAdd', 'leaveFriend', 9 , 5
+				gs 'nichUtil', 'npcActivityAdd', 'friend', 17 , 30
+				gs 'nichUtil', 'npcActivityAdd', 'returnFriend', 17 , 35
+				gs 'nichUtil', 'npcActivityAdd', 'living', 18 , 05
+			elseif week = 5:
+				!! TODO: Friday plans
+				gs 'nichUtil', 'npcActivityAdd', 'living', 18 , 05
+			elseif week = 6:
+				!! TODO: Saturday plans
+				gs 'nichUtil', 'npcActivityAdd', 'living', 18 , 05
+			else
+				!! TODO: Sunday plans
+				gs 'nichUtil', 'npcActivityAdd', 'living', 18 , 0
+			end
+			!!evening
+			if week <= 4:
+				!! dinner has to be the same time for all three characters
+				gs 'nichUtil', 'npcActivityAdd', 'dinner', 18 , 30
+				gs 'nichUtil', 'npcActivityAdd', 'living', 20 , 30
+				gs 'nichUtil', 'npcActivityAdd', 'bathEvening', 22 , 15
+				gs 'nichUtil', 'npcActivityAdd', 'sleep', 24 , 0
+			elseif week = 5 or week = 6:
+				!! Gala will prepare herself for the club in the bedroom
+				!! she will accompany Nicholas there, so their times have to be the same
+				gs 'nichUtil', 'npcActivityAdd', 'prepareClub', 18 , 30
+				gs 'nichUtil', 'npcActivityAdd', 'leaveClub', 18 , 35
+				gs 'nichUtil', 'npcActivityAdd', 'club', 23 , 45
+				gs 'nichUtil', 'npcActivityAdd', 'returnClub', 23 , 50
+				gs 'nichUtil', 'npcActivityAdd', 'sleep', 24 , 0
+			else
+				gs 'nichUtil', 'npcActivityAdd', 'dinner', 18 , 30
+				!! Nicholas will do her at this time, so she must have the corresponding entry
+				gs 'nichUtil', 'npcActivityAdd', 'nicholas', 21 , 30
+				gs 'nichUtil', 'npcActivityAdd', 'bathEvening', 21 , 45
+				gs 'nichUtil', 'npcActivityAdd', 'sleep', 24 , 0
+			end
 		end
 	elseif $ARGS[1] = 'tanya':
 		!!Morning routine
@@ -896,7 +916,7 @@ if $ARGS[0] = 'npcActivity':
 end
 
 if $ARGS[0] = 'whereIs':	
-	$RESULT = 'nowhere'
+	$RESULT = 'unknown'
 	if $ARGS[1] = 'nicholas':
 		$nichTemp = func('nichUtil','npcActivity','nicholas')
 		if $nichTemp = 'sleep' or $nichTemp = 'gala':
@@ -969,6 +989,37 @@ if $ARGS[0] = 'isHome':
 	end
 end
 
+!! Returns 1 if the character $ARGS[1] is in the room $ARGS[2] and no other characters are there
+!! Returns 0 if the character is not present and/or other characters are present
+if $ARGS[0] = 'isAlone':
+	$nichTempC1 = $ARGS[1]
+	if $nichTempC1 = 'nicholas':
+		$nichTempC2 = 'gala'
+		$nichTempC3 = 'tanya'
+	else
+		$nichTempC2 = 'nicholas'
+		if $nichTempC1 = 'gala':
+			$nichTempC3 = 'tanya'
+		else
+			$nichTempC3 = 'gala'
+		end
+	end
+	
+	if FUNC('nichUtil','isPresent',$nichTempC1,$ARGS[2]) = 0:
+		RESULT = 0
+	else
+		if FUNC('nichUtil','isPresent',$nichTempC2,$ARGS[2]) = 1 or FUNC('nichUtil','isPresent',$nichTempC3,$ARGS[2]) = 1:
+			RESULT = 0
+		else
+			RESULT = 1
+		end
+	end
+	
+	killvar '$nichTempC1'
+	killvar '$nichTempC2'
+	killvar '$nichTempC3'
+end
+
 if $ARGS[0] = 'isPresent':
 	$npcLocation = FUNC('nichUtil','whereIs',$ARGS[1])
 	if $npcLocation = $ARGS[2]:
@@ -979,4 +1030,47 @@ if $ARGS[0] = 'isPresent':
 	
 end
 
+!! Returns 1 if $loc is currently set to a location inside Nicholas apartment
+!! USAGE: x = FUNC('nichUtil','isNicholasHome')
+if $ARGS[0] = 'isNicholasHome':
+	if $loc = 'nichBathMaster' or $loc = 'nichBedroomServant':
+		RESULT = 1
+	else
+		RESULT = 0
+	end
+end
+
+!! Called by arousal.qsrc
+!! Usage: gs 'nichUtil','onArouse',TYPE
+!! Type: $ARGS[0] of arousal
+if $ARGS[0] = 'onArouse':
+	
+	if nichGalaImplant > 0:
+		nichTempNaughtyLoc = 1
+		if FUNC('nichUtil','isNicholasHome') = 1:
+			nichTempNaughtyLoc = 0
+		elseif nichGalaImplant > 1 and $loc = 'sauna':
+			nichTempNaughtyLoc = 0
+		end
+		if nichTempNaughtyLoc = 1:
+			if $ARGS[1] = 'vaginal' or $ARGS[1] = 'vaginal_finger' or $ARGS[1] = 'vaginal_fist' or $ARGS[1] = 'vaginal_dildo' or $ARGS[1] = 'vaginal_strap' or $ARGS[1] = 'vaginal_vibe':
+				nichGalaImplantCount += 1
+			end
+		end
+		killvar 'nichTempNaughtyLoc'
+	end
+	
+end
+
+!! Sveta gets ARGS[1] (default: 1) free days 
+!! Usage: gs 'nichUtil','freeDay'
+if $ARGS[0] = 'freeDay':
+	nichTempFree = iif(ARGS[1]>0,ARGS[1],1)
+	if nichVactionTil < daystart + nichTempFree - 1:
+		nichVacationFrom = daystart
+		nichVactionTil = daystart + nichTempFree - 1
+		nichEvaluationLastReq = nichVactionTil + 1
+	end
+end
+
 --- nichUtil ---------------------------------

+ 7 - 0
locations/saunawhore.qsrc

@@ -791,6 +791,13 @@ if $ARGS[0] = 'clientLeave':
 		gs 'arousal', 'end'
 		gs 'stat'
 
+		act 'Head back to the main area':gt 'saunawhore', 'saunawork'
+	elseif nichTarSauna = 1:
+		nichTarSaunaPay += payment
+		'Having finished with you, the client gets dressed, leaves the room, and pays the sauna <<payment>> <b>₽</b> for your services. This money will be collected by Taras later.'
+		'You earned <<nichTarSaunaPay>> <b>₽</b> for Taras.'
+		gs 'arousal', 'end'
+		gs 'stat'
 		act 'Head back to the main area':gt 'saunawhore', 'saunawork'
 	else
 		money += payment

+ 4 - 1
locations/street_event.qsrc

@@ -293,7 +293,10 @@ end
 
 if $ARGS[1] = 'main':
 	if lesbiday + 21 <= daystart and RAND(0,100) < streetev_mistmeet and lesbiQW >= 11 and hour >= 8 and hour < 21 and $pantyworntype ! 'none' and month > 2 and month ! 12 and sub > 0:gt 'lesbimistress', 'mistmeet'
-
+	
+	!! Getting abducted by Taras
+	if nichGalaTarasPlan >= 110 and nichGalaTarasPlan < 120 and rand(1,2) = 1: gt 'nichTaras','van'
+	
 	streetrand = rand(0, 100)
 	!!start of old random street events that can always happen.