16 Commits 8cf412507c ... e38cda7219

Author SHA1 Message Date
  Kevin_Smarts e38cda7219 [fixed] A couple of incorrect vales and changed description in Bomba 1 year ago
  Kevin_Smarts 333b770eec [fixed] typo, should be 80 not 800 1 year ago
  Kevin_Smarts ece20a57c4 [fixed] Had the stripping to clear underwear directly after the bit where you wear it. Doh! 1 year ago
  Kevin_Smarts 13aefbc741 [changed] Updated version number for dev release 1 year ago
  Kevin_Smarts 51ae0702bd [added] Bodysuit now chages worn bra and panty type so the checks for none will all still work in scenes correctly. 1 year ago
  Kevin_Smarts 2d9d4e9115 [added] example attributes files for first 10 lusso bras and panties plus some notes to clarify the exposure variables 1 year ago
  Kevin_Smarts 909517b5c2 [added] Purse for ugly duckling start 1 year ago
  Kevin_Smarts 6a6aae008b Merge remote-tracking branch 'Anya/master' 1 year ago
  Kevin_Smarts 2967a2d663 [added] Bras and panty set linking so that they can be bought and worn as sets 1 year ago
  Kevin_Smarts 76cf2707e7 [fixed] Typo 1 year ago
  Anya a228222bba Merge branch 'master' of https://git.catrenelle.com/Kevin_Smarts/glife 1 year ago
  Anya 8bfe66935d [changed] a small bit of Nat code 1 year ago
  Kevin_Smarts b22f0ec486 [added] Bodysuit system with example set for Lusso (commented out so you can't purcahse them) 1 year ago
  Kevin_Smarts f4498983f4 [fixed] Missing apostrophe 1 year ago
  bgkjdgbizgblzdgbr 795d692750 Merge branch 'master' of https://git.catrenelle.com/Kevin_Smarts/glife 1 year ago
  bgkjdgbizgblzdgbr 3466878f4f [changed] Added new exits to Katja action if you are in her dorm room and not the Meynold house. 1 year ago

+ 4 - 0
glife.qproj

@@ -182,8 +182,12 @@
 		<Location name="$bra_image"/>
 		<Location name="panties"/>
 		<Location name="$panty_image"/>
+		<Location name="underwear_bodysuits"/>
 		<Location name="underwear_attributes"/>
 		<Location name="underwear_descriptions"/>
+		<Location name="$attributes_lusso_bodysuit"/>
+		<Location name="$attributes_lusso_bra"/>
+		<Location name="$attributes_lusso_panties"/>
 	</Folder>
 	<Folder name="Accessories">
 		<Location name="purses"/>

+ 359 - 54
locations/KatjaHomeTalk.qsrc

@@ -665,7 +665,13 @@ if $ARGS[0] = 'katjaknows':
 		'"I wouldn''t be pregnant if he wasn''t," you laugh. "I only let the best cock inside me."'
 		'Katja blushes and you give her a quick kiss before she can react.'
 
-		act 'Continue':gt 'KatjaHomeTalk'
+		act 'Continue':
+			if $loc = 'Katja_dorm':
+				gt 'katja_dorm', 'talk'
+			else
+				gt 'KatjaHomeTalk'
+			end
+		end
 	elseif katjaQW['slut'] < 60 and $wombthfath = 'Stepfather' and npc_rel['A28'] > 50:
 		minut += 10
 		'"So, who''s the baby-daddy?" Katja teases.'
@@ -674,7 +680,13 @@ if $ARGS[0] = 'katjaknows':
 		'"You were knocked up by your step-dad!? That''s so crazy!"'
 		'Katja blushes and you give her a quick kiss before she can react.'
 
-		act 'Continue':gt 'KatjaHomeTalk'
+		act 'Continue':
+			if $loc = 'Katja_dorm':
+				gt 'katja_dorm', 'talk'
+			else
+				gt 'KatjaHomeTalk'
+			end
+		end
 	elseif katjaQW['slut'] < 60 and $wombthfath = 'Biological Father' and npc_rel['A29'] > 50:
 		minut += 10
 		'"So, who''s the baby-daddy?" Katja teases.'
@@ -683,7 +695,13 @@ if $ARGS[0] = 'katjaknows':
 		'"You were knocked up by your own father!? That''s so crazy!"'
 		'Katja blushes and you give her a quick kiss before she can react.'
 
-		act 'Continue':gt 'KatjaHomeTalk'
+		act 'Continue':
+			if $loc = 'Katja_dorm':
+				gt 'katja_dorm', 'talk'
+			else
+				gt 'KatjaHomeTalk'
+			end
+		end
 	elseif katjaQW['slut'] < 60 and $wombthfath = '':
 		minut += 10
 		'"So, who''s the baby-daddy?" Katja teases.'
@@ -694,7 +712,13 @@ if $ARGS[0] = 'katjaknows':
 		'Katja places a hand on your shoulder "<<$pcs_nickname>>, if I can do anything to make your life a little easier, please let me know."'
 		'You blush and thank her before planting a quick kiss on her cheek.'
 
-		act 'Continue':gt 'KatjaHomeTalk'
+		act 'Continue':
+			if $loc = 'Katja_dorm':
+				gt 'katja_dorm', 'talk'
+			else
+				gt 'KatjaHomeTalk'
+			end
+		end
 	elseif katjaQW['slut'] >= 60 and $wombthfath = 'Kolka' and npc_rel['A34'] > 50:
 		minut += 10
 		'"Who''d you let dump their load into that wonderful body of yours?" Katja asks while biting her bottom lip.'
@@ -705,7 +729,13 @@ if $ARGS[0] = 'katjaknows':
 		'Katja chuckles. "I appreciate honesty and I think everyone should be free to explore their passions. Even if those passions revolve around riding your brother''s dick."'
 		'You find yourself questioning what you did to deserve such a wonderful woman in your life.'
 
-		act 'Continue':gt 'KatjaHomeTalk'
+		act 'Continue':
+			if $loc = 'Katja_dorm':
+				gt 'katja_dorm', 'talk'
+			else
+				gt 'KatjaHomeTalk'
+			end
+		end
 	elseif katjaQW['slut'] >= 60 and $wombthfath = 'Stepfather' and npc_rel['A28'] > 50:
 		minut += 10
 		'"Who''d you let dump their load into that wonderful body of yours?" Katja asks while biting her bottom lip.'
@@ -716,7 +746,13 @@ if $ARGS[0] = 'katjaknows':
 		'Katja chuckles. "I appreciate honesty and I think everyone should be free to explore their passions. Even if those passions are part of an Electra complex."'
 		'You find yourself questioning what you did to deserve such a wonderful woman in your life.'
 
-		act 'Continue':gt 'KatjaHomeTalk'
+		act 'Continue':
+			if $loc = 'Katja_dorm':
+				gt 'katja_dorm', 'talk'
+			else
+				gt 'KatjaHomeTalk'
+			end
+		end
 	elseif katjaQW['slut'] >= 60 and $wombthfath = 'Biological Father' and npc_rel['A29'] > 50:
 		minut += 10
 		'"Who''d you let dump their load into that wonderful body of yours?" Katja asks while biting her bottom lip.'
@@ -727,7 +763,13 @@ if $ARGS[0] = 'katjaknows':
 		'Katja chuckles. "I appreciate honesty and I think everyone should be free to explore their passions. Even if those passions are part of an Electra complex."'
 		'You find yourself questioning what you did to deserve such a wonderful woman in your life.'
 
-		act 'Continue':gt 'KatjaHomeTalk'
+		act 'Continue':
+			if $loc = 'Katja_dorm':
+				gt 'katja_dorm', 'talk'
+			else
+				gt 'KatjaHomeTalk'
+			end
+		end
 	elseif katjaQW['slut'] >= 60 and $wombthfath = '':
 		minut += 10
 		'"Who''d you let dump their load into that wonderful body of yours?" Katja asks while biting her bottom lip.'
@@ -738,7 +780,13 @@ if $ARGS[0] = 'katjaknows':
 		'"<<$pcs_nickname>>, I would never judge you. Plus, if I''m being honest, I''m a little jealous. I wish I could let myself have that much fun."'
 		'You find yourself questioning what you did to deserve such a wonderful woman in your life.'
 
-		act 'Continue':gt 'KatjaHomeTalk'
+		act 'Continue':
+			if $loc = 'Katja_dorm':
+				gt 'katja_dorm', 'talk'
+			else
+				gt 'KatjaHomeTalk'
+			end
+		end
 	else
 		minut += 10
 		'"So, who''s the baby-daddy?" Katja teases.'
@@ -746,7 +794,13 @@ if $ARGS[0] = 'katjaknows':
 		'"It looks like I got knocked up by <<$wombthfath>>"'
 		'"I hope they know how lucky they are," she says while clearly blushing.'
 
-		act 'Continue':gt 'KatjaHomeTalk'
+		act 'Continue':
+			if $loc = 'Katja_dorm':
+				gt 'katja_dorm', 'talk'
+			else
+				gt 'KatjaHomeTalk'
+			end
+		end
 	end
 end
 
@@ -764,44 +818,100 @@ if $ARGS[0] = 'katjaknows1':
 		'"Damn, I never thought I''d meet someone who wanted to be an incest baby factory."'
 		'"I just hope he makes you happy. It''s sometimes hard to believe that you''re the woman I fell in love with." Her eyes widen and her cheeks redden at the realization that she just admitted she loves you. Before you can respond, she cuts you off with a passionate kiss.'
 
-		act 'Continue':minut += 10 & gt 'KatjaHomeTalk'
+		act 'Continue':
+			minut += 10
+			if $loc = 'Katja_dorm':
+				gt 'katja_dorm', 'talk'
+			else
+				gt 'KatjaHomeTalk'
+			end
+		end
 	elseif katjaQW['slut'] >= 60 and arrpos('$ChildThFath',$wombthfath) >= 0 and arrpos('$ChildThFath',$wombthfath) ! arrsize('$ChildThFath')-1 and (($wombthfath = 'Kolka' and npc_rel['A34'] > 50) or ($wombthfath = 'Stepfather' and npc_rel['A28'] > 50) or ($wombthfath = 'Biological Father' and npc_rel['A29'] > 50)):
 		'You tell Katja that <<$wombthfath>> got you pregnant again.'
 		'"Damn, I never thought I''d meet someone who wanted to be an incest baby factory."'
 		'"God, you''re the hottest bitch I know. I didn''t think I could be any more in love with you." Her eyes widen and her cheeks redden at the realization that she just admitted she loves you. Before you can respond, she cuts you off with a passionate kiss.'
 		'After a few minutes, she breaks the kiss, but keeps her lips inches from yours. "Don''t let this distract from my wanting you to become his breeding bitch. I want him to keep you pregnant. I need something to masturbate about when you’re not around." As soon as she finishes speaking, her lips are magnetically pulled back to yours.'
 
-		act 'Continue':minut += 10 & gt 'KatjaHomeTalk'
+		act 'Continue':
+			minut += 10
+			if $loc = 'Katja_dorm':
+				gt 'katja_dorm', 'talk'
+			else
+				gt 'KatjaHomeTalk'
+			end
+		end
 	elseif katjaQW['slut'] < 60 and arrpos('$ChildThFath',$wombthfath) = arrsize('$ChildThFath')-1 and (($wombthfath = 'Kolka' and npc_rel['A34'] > 50) or ($wombthfath = 'Stepfather' and npc_rel['A28'] > 50) or ($wombthfath = 'Biological Father' and npc_rel['A29'] > 50)):
 		'Blushing, you tell Katja that a member of your family impregnated you, but this time it was <<$wombthfath>>.'
 		'Her eyes widen. "wow, your family must be really close," she giggles.'
 		'"To think I''d fall in love with a woman who lets multiple members of her own family knock her up." Her eyes widen and her cheeks redden at the realization that she just admitted she loves you. Before you can respond, she cuts you off with a passionate kiss.'
 
-		act 'Continue':minut += 10 & gt 'KatjaHomeTalk'
+		act 'Continue':
+			minut += 10
+			if $loc = 'Katja_dorm':
+				gt 'katja_dorm', 'talk'
+			else
+				gt 'KatjaHomeTalk'
+			end
+		end
 	elseif katjaQW['slut'] >= 60 and arrpos('$ChildThFath',$wombthfath) = arrsize('$ChildThFath')-1 and (($wombthfath = 'Kolka' and npc_rel['A34'] > 50) or ($wombthfath = 'Stepfather' and npc_rel['A28'] > 50) or ($wombthfath = 'Biological Father' and npc_rel['A29'] > 50)):
 		'Blushing, you tell Katja that a member of your family impregnated you, but this time it was <<$wombthfath>>.'
 		'Her eyes widen. "Wow, your family must be really close," she giggles.'
 		'"Shit, ''which of your family members did you like being knocked up by the most?'' might be the hottest question anyone has ever made me think of. Just when I started thinking I couldn''t love you any more." Her eyes widen and her cheeks redden at the realization that she just admitted she loves you. Before you can respond, she cuts you off with a passionate kiss.'
 		'After a few minutes, she breaks the kiss, but keeps her lips inches from yours. "Don''t think I''ll forget the image of you being passed around your family like a good little slut. I need something to masturbate about when you''re not around." As soon as she finishes speaking, her lips are magnetically pulled back to yours.'
 
-		act 'Continue':minut += 10 & gt 'KatjaHomeTalk'
+		act 'Continue':
+			minut += 10
+			if $loc = 'Katja_dorm':
+				gt 'katja_dorm', 'talk'
+			else
+				gt 'KatjaHomeTalk'
+			end
+		end
 	elseif arrpos('$ChildThFath',$wombthfath) >= 0 and arrpos('$ChildThFath',$wombthfath) ! arrsize('$ChildThFath')-1 and ($wombthfath ! 'Kolka' and $wombthfath ! 'Stepfather' and $wombthfath ! 'Biological Father'):
 		'"I hope he makes you happy. And that he doesn''t mind sharing you with me," she blushes. "I would hate to completely lose the woman I love." Her eyes widen and her cheeks redden at the realization that she just admitted she loves you. Before you can respond, she cuts you off with a passionate kiss.'
 
-		act 'Continue':minut += 10 & gt 'KatjaHomeTalk'
+		act 'Continue':
+			minut += 10
+			if $loc = 'Katja_dorm':
+				gt 'katja_dorm', 'talk'
+			else
+				gt 'KatjaHomeTalk'
+			end
+		end
 	elseif arrpos('$ChildThFath',$wombthfath) = arrsize('$ChildThFath')-1 and ($wombthfath ! 'Kolka' and $wombthfath ! 'Stepfather' and $wombthfath ! 'Biological Father'):
 		'"I''m glad you realize you''re too special to limit yourself to one man. I love you too much to let you do anything less." Her eyes widen and her cheeks redden at the realization that she just admitted she loves you. Before you can respond, she cuts you off with a passionate kiss.'
 
-		act 'Continue':minut += 10 & gt 'KatjaHomeTalk'
+		act 'Continue':
+			minut += 10
+			if $loc = 'Katja_dorm':
+				gt 'katja_dorm', 'talk'
+			else
+				gt 'KatjaHomeTalk'
+			end
+		end
 	elseif katjaQW['slut'] < 60 and $wombthfath = '':
 		'"Seems like you had a little too much fun then," she chuckles.'
 
-		act 'Continue':minut += 10 & gt 'KatjaHomeTalk'
+		act 'Continue':
+			minut += 10
+			if $loc = 'Katja_dorm':
+				gt 'katja_dorm', 'talk'
+			else
+				gt 'KatjaHomeTalk'
+			end
+		end
 	elseif katjaQW['slut'] >= 60 and $wombthfath = '':
 		'"Seems like you had a little too much fun then," she chuckles.'
 		'"I hope you''ll include me next time."'
 
-		act 'Continue':minut += 10 & gt 'KatjaHomeTalk'
+		act 'Continue':
+			minut += 10
+			if $loc = 'Katja_dorm':
+				gt 'katja_dorm', 'talk'
+			else
+				gt 'KatjaHomeTalk'
+			end
+		end
 	end
 end
 
@@ -913,7 +1023,14 @@ if $ARGS[0] = 'Sextalk':
 				gs 'stat'
 				'<center><img <<$set_imgh>> src="images/characters/shared/headshots_main/big14.jpg"></center>'
 				'You tell Katja that you have never given a blowjob to a guy. She admits that she hasn''t either. "Vicky talks about how good it is all the time, but I don''t know. Guys usually smell bad and I''m sure it would taste awful."'
-				act 'Further':minut += 15 & gt 'KatjaHomeTalk'
+				act 'Further':
+					minut += 15
+					if $loc = 'Katja_dorm':
+						gt 'katja_dorm', 'talk'
+					else
+						gt 'KatjaHomeTalk'
+					end
+				end
 			end
 		end
 	elseif kattalkrand = 1:
@@ -934,7 +1051,14 @@ if $ARGS[0] = 'Sextalk':
 				'<center><img <<$set_imgh>> src="images/characters/shared/headshots_main/big14.jpg"></center>'
 				'You tell Katja about the times you''ve had sex and how it felt. She blushes and bites her lip.'
 
-				act 'Further':minut += 15 & gt 'KatjaHomeTalk'
+				act 'Further':
+					minut += 15
+					if $loc = 'Katja_dorm':
+						gt 'katja_dorm', 'talk'
+					else
+						gt 'KatjaHomeTalk'
+					end
+				end
 			end
 		else
 			act 'No':
@@ -942,7 +1066,14 @@ if $ARGS[0] = 'Sextalk':
 				gs 'stat'
 				'<center><img <<$set_imgh>> src="images/characters/shared/headshots_main/big14.jpg"></center>'
 				'You tell Katja that you''ve never had sex with a guy, and she admits that she''s also still a virgin. "That probably makes us the only non nerds who haven''t had sex! Vicky does it all the time with Vanya. She won''t shut up about it!"'
-				act 'Further':minut += 15 & gt 'KatjaHomeTalk'
+				act 'Further':
+					minut += 15
+					if $loc = 'Katja_dorm':
+						gt 'katja_dorm', 'talk'
+					else
+						gt 'KatjaHomeTalk'
+					end
+				end
 			end
 		end
 
@@ -964,7 +1095,14 @@ if $ARGS[0] = 'Sextalk':
 				'<center><img <<$set_imgh>> src="images/characters/shared/headshots_main/big14.jpg"></center>'
 				'You tell Katja about the times you''ve had anal sex and what it feels like. She blushes and bites her lip.'
 
-				act 'Further':minut += 15 & gt 'KatjaHomeTalk'
+				act 'Further':
+					minut += 15
+					if $loc = 'Katja_dorm':
+						gt 'katja_dorm', 'talk'
+					else
+						gt 'KatjaHomeTalk'
+					end
+				end
 			end
 		else
 			act 'You''ve never had anal sex':
@@ -972,7 +1110,14 @@ if $ARGS[0] = 'Sextalk':
 				gs 'stat'
 				'<center><img <<$set_imgh>> src="images/characters/shared/headshots_main/big14.jpg"></center>'
 				'You tell Katja that you''ve never had anal sex. She says that she heard that a lot of girls in your class do, some more than others.'
-				act 'Further':minut += 15 & gt 'KatjaHomeTalk'
+				act 'Further':
+					minut += 15
+					if $loc = 'Katja_dorm':
+						gt 'katja_dorm', 'talk'
+					else
+						gt 'KatjaHomeTalk'
+					end
+				end
 			end
 		end
 	elseif kattalkrand = 3:
@@ -1011,16 +1156,34 @@ if $ARGS[0] = 'Sextalk':
 						'"Sorry <<$pcs_nickname>>, maybe next time. We need to finish our homework," she says sweetly. You pause before nodding in understanding. You see that new confident look intensify on her face as she smiles and the two of you finish your homework.'
 
 						gs 'arousal', 'cuni_give', 15, 'sub', 'lesbian'
+						gs 'arousal', 'end'
 						gs 'stat'
 
 						act 'Further':
-							gs 'arousal', 'end'
+							if $loc = 'Katja_dorm':
+								gt 'katja_dorm', 'talk'
+							else
+								gt 'KatjaHomeTalk'
+							end
+						end
+					end
+					act 'Ignore her':
+						minut += 15
+						if $loc = 'Katja_dorm':
+							gt 'katja_dorm', 'talk'
+						else
 							gt 'KatjaHomeTalk'
 						end
 					end
-					act 'Ignore her':minut += 15 & gt 'KatjaHomeTalk'
 				else
-					act 'Further':minut += 15 & gt 'KatjaHomeTalk'
+					act 'Further':
+						minut += 15
+						if $loc = 'Katja_dorm':
+							gt 'katja_dorm', 'talk'
+						else
+							gt 'KatjaHomeTalk'
+						end
+					end
 				end
 			end
 		else
@@ -1029,7 +1192,14 @@ if $ARGS[0] = 'Sextalk':
 				gs 'stat'
 				'<center><img <<$set_imgh>> src="images/characters/shared/headshots_main/big14.jpg"></center>'
 				'You tell Katja that you''ve never gone down on a girl. She seems a little surprised and you get the feeling that this was not what she wanted to hear.'
-				act 'Further':minut += 15 & gt 'KatjaHomeTalk'
+				act 'Further':
+					minut += 15
+					if $loc = 'Katja_dorm':
+						gt 'katja_dorm', 'talk'
+					else
+						gt 'KatjaHomeTalk'
+					end
+				end
 			end
 		end
 	elseif kattalkrand = 4:
@@ -1049,7 +1219,14 @@ if $ARGS[0] = 'Sextalk':
 				'You tell Katja how you masturbate in the bathroom and she blushes and bites her lip.'
 
 				if katjaQW['masturbates'] = 0:
-					act 'Further':minut += 15 & gt 'KatjaHomeTalk'
+					act 'Further':
+						minut += 15
+						if $loc = 'Katja_dorm':
+							gt 'katja_dorm', 'talk'
+						else
+							gt 'KatjaHomeTalk'
+						end
+					end
 				else
 					act 'Further':
 						cls
@@ -1058,7 +1235,14 @@ if $ARGS[0] = 'Sextalk':
 						'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/girl/katja/sex/school/mastr.jpg"></center>'
 						'Katja tells you she also masturbates, right here in this room, fondling herself between her legs.'
 
-						act 'Further':minut += 15 & gt 'KatjaHomeTalk'
+						act 'Further':
+							minut += 15
+							if $loc = 'Katja_dorm':
+								gt 'katja_dorm', 'talk'
+							else
+								gt 'KatjaHomeTalk'
+							end
+						end
 					end
 				end
 			end
@@ -1080,7 +1264,11 @@ if $ARGS[0] = 'Sextalk':
 							gt 'katjaHomeTalk', 'fisting_ask'
 						else
 							minut += 15
-							gt 'KatjaHomeTalk'
+							if $loc = 'Katja_dorm':
+								gt 'katja_dorm', 'talk'
+							else
+								gt 'KatjaHomeTalk'
+							end
 						end
 					end
 				end
@@ -1100,7 +1288,11 @@ if $ARGS[0] = 'Sextalk':
 
 					act 'Further':
 						minut += 15
-						gt 'KatjaHomeTalk'
+						if $loc = 'Katja_dorm':
+							gt 'katja_dorm', 'talk'
+						else
+							gt 'KatjaHomeTalk'
+						end
 					end
 				end
 			end
@@ -1110,7 +1302,14 @@ if $ARGS[0] = 'Sextalk':
 				gs 'stat'
 				'<center><img <<$set_imgh>> src="images/characters/shared/headshots_main/big14.jpg"></center>'
 				'You tell Katja that you''ve never masturbated. She seems surprised at your answer.'
-				act 'Further':minut += 15 & gt 'KatjaHomeTalk'
+				act 'Further':
+					minut += 15
+					if $loc = 'Katja_dorm':
+						gt 'katja_dorm', 'talk'
+					else
+						gt 'KatjaHomeTalk'
+					end
+				end
 			end
 		end
 	end
@@ -1120,7 +1319,14 @@ if $ARGS[0] = 'Sextalk':
 		gs 'stat'
 		'You refuse to talk about such topics with her and she looks down in confusion and mumbles. "Sorry, <<$pcs_nickname>>, I didn''t mean to pry."'
 
-		act 'Further':minut += 15 & gt 'KatjaHomeTalk'
+		act 'Further':
+			minut += 15
+			if $loc = 'Katja_dorm':
+				gt 'katja_dorm', 'talk'
+			else
+				gt 'KatjaHomeTalk'
+			end
+		end
 	end
 end
 
@@ -1139,7 +1345,14 @@ if $ARGS[0] = 'bj_talk1':
 				'<center><img <<$set_imgh>> src="images/characters/shared/headshots_main/big14.jpg"></center>'
 				'"No," you shake your head before shamelessly lying through your teeth. "I''ve never given a blowjob before."'
 				'"Oh." She sits back, looking disappointed for some reason.'
-				act 'Continue':minut += 15 & gt 'KatjaHomeTalk'
+				act 'Continue':
+					minut += 15
+					if $loc = 'Katja_dorm':
+						gt 'katja_dorm', 'talk'
+					else
+						gt 'KatjaHomeTalk'
+					end
+				end
 			end
 			act'Yes':
 				cla & *clr
@@ -1162,7 +1375,14 @@ if $ARGS[0] = 'bj_talk1':
 			'<center><img <<$set_imgh>> src="images/characters/shared/headshots_main/big14.jpg"></center>'
 			'"No," you shake your head. "I''ve never given a blowjob before."'
 			'"Oh." She sits back, looking disappointed for some reason. "Guess we''re both clueless then, huh?"'
-			act 'Continue':minut += 15 & gt 'KatjaHomeTalk'
+			act 'Continue':
+				minut += 15
+				if $loc = 'Katja_dorm':
+					gt 'katja_dorm', 'talk'
+				else
+					gt 'KatjaHomeTalk'
+				end
+			end
 		end
 		!!act'I''ve given a few (lie)':
 	end
@@ -1173,14 +1393,28 @@ if $ARGS[0] = 'bj_talk2':
 		cla & *nl
 		'"It tastes funny," you wrinkle your nose. "It''s like, kinda salty? But also sort of... musty? I don''t think I mind the act itself that much, but dick has a weird flavor."'
 		'Katja seems taken aback, almost disappointed. You guess this isn''t the answer she was hoping for.'
-		act 'Continue':minut += 15 & gt 'KatjaHomeTalk'
+		act 'Continue':
+			minut += 15
+			if $loc = 'Katja_dorm':
+				gt 'katja_dorm', 'talk'
+			else
+				gt 'KatjaHomeTalk'
+			end
+		end
 	end
 	
 	act'It''s fun':
 		cla & *nl
 		'"It''s fun!" you grin. "I''m not really sure what it is, but something about having a dick in your mouth is really entertaining. It''s like, totally alive! And you can feel it making all these tiny movements when it''s on your tongue. I really like giving head."'
 		'Katja hangs on your every word, nodding excitedly for you to keep describing your experiences with oral sex to her.'
-		act 'Continue':minut += 15 & gt 'KatjaHomeTalk'
+		act 'Continue':
+			minut += 15
+			if $loc = 'Katja_dorm':
+				gt 'katja_dorm', 'talk'
+			else
+				gt 'KatjaHomeTalk'
+			end
+		end
 	end
 	
 	act'It''s whatever':
@@ -1188,21 +1422,42 @@ if $ARGS[0] = 'bj_talk2':
 		'"I don''t mind doing it but I don''t love it either," you say. "Dick doesn''t really taste like anything if it''s clean. Kinda salty if it isn''t. I don''t know. It''s whatever I guess."'
 		'You shrug.'
 		'Katja seems taken aback, almost disappointed. You guess this isn''t the answer she was hoping for.'
-		act 'Continue':minut += 15 & gt 'KatjaHomeTalk'
+		act 'Continue':
+			minut += 15
+			if $loc = 'Katja_dorm':
+				gt 'katja_dorm', 'talk'
+			else
+				gt 'KatjaHomeTalk'
+			end
+		end
 	end
 	
 	act'It''s boring':
 		cla & *nl
 		'"It''s boring," you roll your eyes. "You have to keep sucking the whole time and after a while my jaw just starts to ache with the motion. It''s a dick in your mouth, I don''t know what to tell you.'
 		'Katja seems taken aback, looking almost worried. You guess you just shattered some impressions she had about giving head.'
-		act 'Continue':minut += 15 & gt 'KatjaHomeTalk'
+		act 'Continue':
+			minut += 15
+			if $loc = 'Katja_dorm':
+				gt 'katja_dorm', 'talk'
+			else
+				gt 'KatjaHomeTalk'
+			end
+		end
 	end
 	
 	act'It turns me on':
 		cla & *nl
 		'"It turns me on so much," you admit, biting your lip in a lusty smile. "When someone''s in your mouth, you can make them feel <i>really</i> good. And they''ll respond to what you do. If you take their whole length, they''ll squirm. If you lick the head, it''ll twitch under your touch. Just knowing you can make someone else feel that way... Ugh, just <i>thinking</i> about it gets me wet!"'
 		'Katja hangs on your every word, nodding along with wide eyes as you describe what it is you love so much about giving head. A faint blush also comes to her cheeks and you notice her unconsciously rubbing her thighs together.'
-		act 'Continue':minut += 15 & gt 'KatjaHomeTalk'
+		act 'Continue':
+			minut += 15
+			if $loc = 'Katja_dorm':
+				gt 'katja_dorm', 'talk'
+			else
+				gt 'KatjaHomeTalk'
+			end
+		end
 	end	
 end
 
@@ -1223,7 +1478,14 @@ if $ARGS[0] = 'hornykiss':
 				katjaQW['horny'] += 5
 				'Katja giggles and pushes your face away from her.'
 
-				act 'Change the subject':minut += 15 & gt 'KatjaHomeTalk'
+				act 'Change the subject':
+					minut += 15
+					if $loc = 'Katja_dorm':
+						gt 'katja_dorm', 'talk'
+					else
+						gt 'KatjaHomeTalk'
+					end
+				end
 
 !!				if pcs_dom > 0:
 					act 'Grab Katja''s face':
@@ -1283,8 +1545,16 @@ if $ARGS[0] = 'tender_kiss':
 					'<center><img <<$set_imgh>> src="images/characters/shared/headshots_main/big14.jpg"></center>'
 					'You refuse to kiss Katja and she gets mad at you.'
 
-					act 'Talk about something else': gt 'KatjaHomeTalk'
-					if mey_vika['key'] = 1:
+					act 'Talk about something else':
+						if $loc = 'Katja_dorm':
+							gt 'katja_dorm', 'talk'
+						else
+							gt 'KatjaHomeTalk'
+						end
+					end
+					if $loc = 'katja_dorm':
+						act 'Stop talking': gt 'katja_dorm', 'start'
+					elseif mey_vika['key'] = 1:
 						Act 'Leave the room': gt 'mey_home', 'start'
 					else
 						act 'Say goodbye and leave':minut += 5 & gt 'pav_residential'
@@ -1323,9 +1593,17 @@ if $ARGS[0] = 'tender_kiss':
 					'<center><img <<$set_imgh>> src="images/characters/shared/headshots_main/big14.jpg"></center>'
 					'You refuse to kiss Katja and she gets mad at you.'
 
-					act 'Talk about something else': gt 'KatjaHomeTalk'
-					if mey_vika['key'] = 1:
-						Act 'Leave the room': gt 'mey_home', 'start'
+					act 'Talk about something else':
+						if $loc = 'Katja_dorm':
+							gt 'katja_dorm', 'talk'
+						else
+							gt 'KatjaHomeTalk'
+						end
+					end
+					if $loc = 'katja_dorm':
+						act 'Stop talking': gt 'katja_dorm', 'start'
+					elseif mey_vika['key'] = 1:
+						act 'Leave the room': gt 'mey_home', 'start'
 					else
 						act 'Say goodbye and leave':minut += 5 & gt 'pav_residential'
 					end
@@ -1653,8 +1931,16 @@ if $ARGS[0] = 'preventation_talk':
 	'"If you want to '+iif( katjaQW['QWstage'] = 7, 'have sex with boys in the park', 'continue having sex with boys around here')+', you should get on birth control," you tell Katja. "Most of the boys around here don''t want to use condoms, and don''t care if they get the girls pregnant."'
 	'"And if they get a girl pregnant, they''ll just pretend it wasn''t them. You don''t want to raise a child on your own right now, do you?" you ask. "No" she answer weakly "No, I don''t. I want to have children, but not right now. Not before I go to university."' 
 	'"Then you should get on the pill," you continue. "I''m sure if you ask your mother, then she''ll help you. I can''t imagine Vicky not being on the pill at this point, but if you don''t want to ask her, you can buy it at the local pharmacy. My aunt Luda works there and she won''t tell anybody about it. She knows how to be discreet."'
-	act 'Talk about something else': gt 'KatjaHomeTalk'
-	if mey_vika['key'] = 1:
+	act 'Talk about something else':
+		if $loc = 'Katja_dorm':
+			gt 'katja_dorm', 'talk'
+		else
+			gt 'KatjaHomeTalk'
+		end
+	end
+	if $loc = 'katja_dorm':
+		act 'Stop talking': gt 'katja_dorm', 'start'
+	elseif mey_vika['key'] = 1:
 		act 'Leave the room': gt 'mey_home', 'start'
 	else
 		act 'Say goodbye and leave':minut += 5 & gt 'pav_residential'
@@ -1854,15 +2140,16 @@ if $ARGS[0] = 'katja_uni_tell':
 	*clr & cla
 	minut += 15
 	 katjaQW['know_katja_uni'] = 1
+	katjaQW['knows_dorm_room_number'] = 1
 	gs 'stat'
 	'<center><img <<$set_imgh>> src="images/characters/shared/headshots_main/big14.jpg"></center>'
 	if katjaQW['know_going_to_teaching_degree'] = 0:
-		'Katja excitedly tells you that she has been accepted into the university to study teaching. She then tells you about how great the program is.' 
+		'Katja excitedly tells you that she has been accepted into the university to study teaching. She then tells you about how great the program is. She also tells you that she are going to move into room 26 at the university dorm in the beginning August.' 
 		if university['student'] = 1 and $university['enrolled_in'] = 'teaching_studies':
 			act 'Tell Katja that you''re going to the university': gt 'KatjaHomeTalk', 'uni_tell'
 		end	
 	else
-		'Katja excitedly tells you that she has also been accepted into the university to study teaching, and that it will be fun studying at the university together. You then spend the next few minutes talking excitedly about what you know about the program.'
+		'Katja excitedly tells you that she has also been accepted into the university to study teaching, and that it will be fun studying at the university together. She also tells you that she are going to move into room 26 at the university dorm in the beginning August. You then spend the next few minutes talking excitedly about what you know about the program.'
 	end
 	if $loc = 'mey_home':
 		act 'Talk about something else': gt 'KatjaHomeTalk'
@@ -1881,8 +2168,16 @@ if $ARGS[0] = 'boy_no':
 	gs 'stat'
 	'<center><img <<$set_imgh>> src="images/characters/shared/headshots_main/big14.jpg"></center>'
 	'"I don''t have interest in boys" you tell Katja. "Oh" she replies "Does that mean..." she starts but her voice falters. "Yes. I am only interested in girls" you say. Katja doesn''t say anything but her face is getting redder and she looks intensely at you with her big eyes.'
-	act 'Talk about something else': gt 'KatjaHomeTalk'
-	if mey_vika['key'] = 1:
+	act 'Talk about something else':
+		if $loc = 'Katja_dorm':
+			gt 'katja_dorm', 'talk'
+		else
+			gt 'KatjaHomeTalk'
+		end
+	end
+	if $loc = 'katja_dorm':
+		act 'Stop talking': gt 'katja_dorm', 'start'
+	elseif mey_vika['key'] = 1:
 		act 'Leave the room': gt 'mey_home', 'start'
 	else
 		act 'Say goodbye and leave':minut += 5 & gt 'pav_residential'
@@ -1897,8 +2192,16 @@ if $ARGS[0] = 'boy_yes':
 	gs 'stat'
 	'<center><img <<$set_imgh>> src="images/characters/shared/headshots_main/big14.jpg"></center>'
 	'"So I told you earlier that I had no interest in boys" you say "Yes I remember" she say. "Turns out I was wrong. I am in fact starting find boys attractive" you say. "So have you already done something with a boy? Tell me me everything you have done? What is it  you find attractive about boys. Who is the hottest guy in school..." Katja start bombarding you whit questions. "Slow down. This is also something new for me. But we can talk about boys if you want to" you say, as you see Katja''s face getting more red'
-	act 'Talk about something else': gt 'KatjaHomeTalk'
-	if mey_vika['key'] = 1:
+	act 'Talk about something else':
+		if $loc = 'Katja_dorm':
+			gt 'katja_dorm', 'talk'
+		else
+			gt 'KatjaHomeTalk'
+		end
+	end
+	if $loc = 'katja_dorm':
+		act 'Stop talking': gt 'katja_dorm', 'start'
+	elseif mey_vika['key'] = 1:
 		act 'Leave the room': gt 'mey_home', 'start'
 	else
 		act 'Say goodbye and leave':minut += 5 & gt 'pav_residential'
@@ -1916,7 +2219,9 @@ if $ARGS[0] = 'fisting_ask':
 		*clr & cla
 		'<center><img <<$set_imgh>> src="images/characters/shared/headshots_main/big14.jpg"></center>'
 		'You tell Katja that you are not in the mood right now, but you might do it anther time if she asks.'
-		if mey_vika['key'] = 1:
+		if $loc = 'katja_dorm':
+			act 'Stop talking': gt 'katja_dorm', 'start'
+		elseif mey_vika['key'] = 1:
 			act 'Leave the room': gt 'mey_home', 'start'
 		else
 			act 'Say goodbye and leave':minut += 5 & gt 'pav_residential'

+ 110 - 0
locations/_attributes_lusso_bodysuit.qsrc

@@ -0,0 +1,110 @@
+# $attributes_lusso_bodysuit
+
+
+if ARGS[1] = 1:
+	BraQuality = 2
+	BraMaterial = 3
+	BraType = 6
+	BraFun = 1
+	PanThinness = 6
+	BraThinness = 6
+	PanExpose = 4
+	PanButt = 4
+	BraExpose = 4
+
+elseif ARGS[1] = 2:
+	BraQuality = 3
+	BraMaterial = 6
+	BraType = 7
+	BraFun = 1
+	PanThinness = 5
+	BraThinness = 3
+	PanButt = 3
+	BraExpose = 4
+
+elseif ARGS[1] = 3:
+	BraQuality = 3
+	BraMaterial = 3
+	BraType = 6
+	BraFun = 1
+	PanThinness = 5
+	BraThinness = 4
+	PanExpose = 1
+	PanButt = 2
+	BraExpose = 3
+
+elseif ARGS[1] = 4:
+	BraQuality = 3
+	BraMaterial = 6
+	BraType = 6
+	BraFun = 1
+	PanThinness = 3
+	BraThinness = 4
+	PanExpose = 4
+	PanButt = 4
+	BraExpose = 4
+
+elseif ARGS[1] = 5:
+	BraQuality = 2
+	BraMaterial = 6
+	BraType = 2
+	BraFun = 1
+	PanThinness = 4
+	BraThinness = 5
+	PanExpose = 4
+	PanButt = 4
+	BraExpose = 4
+
+elseif ARGS[1] = 6:
+	BraQuality = 3
+	BraMaterial = 3
+	BraType = 5
+	BraFun = 1
+	PanThinness = 6
+	BraThinness = 6
+	PanExpose = 4
+	PanButt = 4
+	BraExpose = 4
+
+elseif ARGS[1] = 7:
+	BraQuality = 4
+	BraType = 6
+	BraFun = 1
+	PanThinness = 2
+	BraThinness = 3
+	PanButt = 4
+	BraExpose = 1
+
+elseif ARGS[1] = 8:
+	BraQuality = 1
+	BraMaterial = 6
+	BraType = 7
+	BraFun = 1
+	PanThinness = 6
+	BraThinness = 6
+	PanButt = 4
+	BraExpose = 3
+
+elseif ARGS[1] = 9:
+	BraQuality = 3
+	BraMaterial = 3
+	BraType = 7
+	BraFun = 1
+	PanThinness = 6
+	BraThinness = 6
+	PanButt = 4
+	BraExpose = 2
+
+elseif ARGS[1] = 10:
+	BraQuality = 4
+	BraMaterial = 3
+	BraType = 3
+	BraFun = 1
+	PanThinness = 6
+	BraThinness = 1
+	PanButt = 4
+	BraExpose = 1
+end
+
+--- $attributes_lusso_bodysuit ---------------------------------
+

+ 79 - 0
locations/_attributes_lusso_bra.qsrc

@@ -0,0 +1,79 @@
+# $_attributes_lusso_bra
+
+
+if ARGS[1] = 1:
+	BraQuality = 3
+	BraMaterial = 6
+	BraType = 5
+	BraFun = 1
+	BraThinness = 2
+	underwear['set'] = 1
+
+elseif ARGS[1] = 2:
+	BraQuality = 2
+	BraMaterial = 6
+	BraType = 5
+	BraFun = 1
+	BraThinness = 3
+	underwear['set'] = 2
+
+elseif ARGS[1] = 3:
+	BraQuality = 3
+	BraMaterial = 3
+	BraType = 9
+	BraFun = 1
+	BraThinness = 5
+	underwear['set'] = 3
+
+elseif ARGS[1] = 4:
+	BraQuality = 3
+	BraType = 2
+	BraFun = 1
+	BraThinness = 2
+	underwear['set'] = 4
+
+elseif ARGS[1] = 5:
+	BraQuality = 2
+	BraType = 3
+	BraFun = 1
+	BraThinness = 2
+	underwear['set'] = 5
+
+elseif ARGS[1] = 6:
+	BraQuality = 3
+	BraType = 1
+	BraFun = 1
+	BraThinness = 2
+	underwear['set'] = 6
+
+elseif ARGS[1] = 7:
+	BraQuality = 4
+	BraType = 9
+	BraFun = 1
+	BraThinness = 2
+	underwear['set'] = 7
+
+elseif ARGS[1] = 8:
+	BraQuality = 1
+	BraType = 4
+	BraFun = 1
+	BraThinness = 2
+	underwear['set'] = 8
+
+elseif ARGS[1] = 9:
+	BraQuality = 3
+	BraType = 3
+	BraFun = 1
+	BraThinness = 2
+	underwear['set'] = 9
+
+elseif ARGS[1] = 10:
+	BraQuality = 4
+	BraType = 9
+	BraFun = 1
+	BraThinness = 2
+	underwear['set'] = 10
+end
+
+--- $_attributes_lusso_bra ---------------------------------
+

+ 110 - 0
locations/_attributes_lusso_panties.qsrc

@@ -0,0 +1,110 @@
+# $_attributes_lusso_panties
+
+
+if ARGS[1] = 1:
+	BraQuality = 2
+	BraMaterial = 3
+	BraType = 6
+	BraFun = 1
+	PanThinness = 6
+	BraThinness = 6
+	PanExpose = 4
+	PanButt = 4
+	underwear['set'] = 1
+
+elseif ARGS[1] = 2:
+	BraQuality = 3
+	BraMaterial = 6
+	BraType = 7
+	BraFun = 1
+	PanThinness = 5
+	BraThinness = 3
+	PanButt = 3
+	underwear['set'] = 1
+
+elseif ARGS[1] = 3:
+	BraQuality = 3
+	BraMaterial = 3
+	BraType = 6
+	BraFun = 1
+	PanThinness = 5
+	BraThinness = 4
+	PanExpose = 1
+	PanButt = 2
+	underwear['set'] = 1
+
+elseif ARGS[1] = 4:
+	BraQuality = 3
+	BraMaterial = 6
+	BraType = 6
+	BraFun = 1
+	PanThinness = 3
+	BraThinness = 4
+	PanExpose = 4
+	PanButt = 4
+	underwear['set'] = 1
+
+elseif ARGS[1] = 5:
+	BraQuality = 2
+	BraMaterial = 6
+	BraType = 2
+	BraFun = 1
+	PanThinness = 4
+	BraThinness = 5
+	PanExpose = 4
+	PanButt = 4
+	underwear['set'] = 1
+
+elseif ARGS[1] = 6:
+	BraQuality = 3
+	BraMaterial = 3
+	BraType = 5
+	BraFun = 1
+	PanThinness = 6
+	BraThinness = 6
+	PanExpose = 4
+	PanButt = 4
+	underwear['set'] = 1
+
+elseif ARGS[1] = 7:
+	BraQuality = 4
+	BraType = 6
+	BraFun = 1
+	PanThinness = 2
+	BraThinness = 3
+	PanButt = 4
+	underwear['set'] = 1
+
+elseif ARGS[1] = 8:
+	BraQuality = 1
+	BraMaterial = 6
+	BraType = 7
+	BraFun = 1
+	PanThinness = 6
+	BraThinness = 6
+	PanButt = 4
+	underwear['set'] = 1
+
+elseif ARGS[1] = 9:
+	BraQuality = 3
+	BraMaterial = 3
+	BraType = 7
+	BraFun = 1
+	PanThinness = 6
+	BraThinness = 6
+	PanButt = 4
+	underwear['set'] = 1
+
+elseif ARGS[1] = 10:
+	BraQuality = 4
+	BraMaterial = 3
+	BraType = 3
+	BraFun = 1
+	PanThinness = 6
+	BraThinness = 1
+	PanButt = 4
+	underwear['set'] = 1
+end
+
+--- $_attributes_lusso_panties ---------------------------------
+

+ 10 - 0
locations/_body_image.qsrc

@@ -137,6 +137,16 @@ if $ARGS[0] = 'bra':
 	end
 end
 
+if $ARGS[0] = 'bodysuit':
+	if $braworntype = 'none':
+		$RESULT = 'images/pc/body/tits/t<<tits>>.jpg'
+		$body_image_msg += 'You are not wearing a bodysuit. Your breasts would be considered an EU <<$titsize>>'
+	else
+		$RESULT = FUNC('$pcs_outfit_image', $bodysuitworntype+'_bodysuits', bodysuitwornnumber)
+		$body_image_msg += 'You are wearing <<$bodysuitworntype>> bodysuit <<bodysuitwornnumber>>. Your breasts would be considered an EU <<$titsize>>'
+	end
+end
+
 if $ARGS[0] = 'shoes':
 	if $clothingworntype = 'nude' or $shoeworntype = 'none':
 		$RESULT = 'images/pc/body/feet.jpg'

+ 1 - 1
locations/_pcs_outfit_image.qsrc

@@ -4,7 +4,7 @@
 !! ARGS 0 - clothing group name
 !! ARGS 1 - clothing index
 $shop_name = $MID($ARGS[0],1,STRPOS($ARGS[0],'_')-1)
-$class_name = $MID($ARGS[0],STRPOS($ARGS[0],'_')+1,LEN($ARGS[0])-STRPOS($ARGS[0],'_')-1) 
+$class_name = $MID($ARGS[0],STRPOS($ARGS[0],'_')+1,LEN($ARGS[0])-STRPOS($ARGS[0],'_')) 
 
 
 if $ARGS[0] = 'misc_outfits':

+ 1 - 1
locations/albina_house_events.qsrc

@@ -1019,7 +1019,7 @@ if $ARGS[0] = 'flash_drive':
 					cla & *clr
 					'<center><video autoplay loop src="images/characters/pavlovsk/school/girl/albina/laptop/video4.mp4"></video></center>'
 					'You open the fourth video and immediately notice that it was taken from a hidden camera in the study where you found the flash drive. Albina is on her knees wearing only a crop top, looking at the floor and avoiding eye contact with the naked man in front of her. The man grabs a fistful of her hair and pulls her head up to slap her face. "Look at me when I''m talking to you, bitch!" he snarls. "Now get those perky little tits of yours out!" Albina reaches down and slowly pulls her crop top up to expose her breasts. Satisfied, the man slaps his erect cock against her face before shoving it into her mouth. "Be a good little whore and suck my dick!"'
-					Still holding her by her hair, he starts forcing her head up and down on his cock, not caring as she gags and splutters before he forces her to take it into her throat and deepthroat him. This continues for a few more minutes before he finally lets her go and she gasps loudly for air as drool drips from her mouth. She then kicks and screams in protest as the mysterious man grabs her tightly by the wrist and roughly drags her out of sight before the video cuts off.'
+					'Still holding her by her hair, he starts forcing her head up and down on his cock, not caring as she gags and splutters before he forces her to take it into her throat and deepthroat him. This continues for a few more minutes before he finally lets her go and she gasps loudly for air as drool drips from her mouth. She then kicks and screams in protest as the mysterious man grabs her tightly by the wrist and roughly drags her out of sight before the video cuts off.'
 
 					act 'Watch the fifth video':
 						cla & *clr

+ 209 - 37
locations/bras.qsrc

@@ -1,45 +1,10 @@
 # bras
+!!This is separate bras file and that means underwear['type'] = 0
 !!2021/04/15
 !!gs 'bras', 'dispose'
 !!gs 'bras', 'remove'
 !!gs 'bras', 'wear'
 
-if $ARGS[0] = 'dispose':
-	dynamic $braworntype + '_bras[<<lastwornbranumber>>] = 0'
-	$lastwornbratype = 'none'
-	lastwornbranumber = 0
-	$braworntype = 'none'
-	brawornnumber = 0
-end
-
-if $ARGS[0] = 'remove':
-	$lastwornbratype = $braworntype
-	lastwornbranumber = brawornnumber
-	$braworntype = 'none'
-	brawornnumber = 0
-end
-
-if $ARGS[0] = 'wear':
-	if $ARGS[1] = '':
-		if dyneval('RESULT = <<$lastwornbratype>>_brasS[<<lastwornbranumber>>]') = 0 and $lastwornbratype ! '':
-			$braworntype = $lastwornbratype
-			brawornnumber = lastwornbranumber
-		else
-			$braworntype = 'none'
-			brawornnumber = 0
-		end
-	else
-		if dyneval('RESULT = <<$ARGS[1]>>_brasS[<<ARGS[2]>>]') = 0:
-			$braworntype = $ARGS[1]
-			brawornnumber = ARGS[2]
-		else
-			$braworntype = 'none'
-			brawornnumber = 0
-		end
-	end
-end
-
-
 if $ARGS[0] = 'view_bra_list':
 	!! ARGS 0 - view_bra_list
 	!! ARGS 1 - action type (draw, store, unwanted)
@@ -147,6 +112,14 @@ if $ARGS[0] = 'view_bra_item':
 !!	$RESULT += '<<ARGS[3]>>'
 !!	'<<$RESULT>>'
 	gs 'bras', 'descriptions', $ARGS[2]
+	if underwear['set'] ! 0:
+		'This bra forms a set with panty #<<underwear[''set'']>>.'
+		if dyneval('RESULT = <<$ARGS[2]>>_panties[<<underwear[''set'']>>]') = 1:
+			'You own these panties and can wear this set.'
+		else
+			'You do not own these panties so you cannot wear this set.'
+		end
+	end
 
 	if $ARGS[1] = 'shop':
 		if dyneval('RESULT = <<$ARGS[2]>>_bras[<<ARGS[3]>>]') = 1:
@@ -176,6 +149,34 @@ if $ARGS[0] = 'view_bra_item':
 			else
 				'You do not have enough money in your bank to buy this bra.'
 			end
+			if dyneval('RESULT = <<$ARGS[2]>>_panties[<<underwear[''set'']>>]') = 0:
+				price_set = ARGS[4]*10/9
+				'price for set: <<price_set>> <b>₽</b>'
+				if money >= price_set:
+					act 'Buy (cash)':
+						money -= price_set
+						dynamic $ARGS[2] + '_bras[<<ARGS[3]>>] = 1'
+						dynamic $ARGS[2] + '_brasS[<<ARGS[3]>>] = 0'
+						dynamic $ARGS[2] + '_panties[<<underwear[''set'']>>] = 1'
+						dynamic $ARGS[2] + '_pantiesS[<<underwear[''set'']>>] = 0'
+						gt $loc, $loc_arg
+					end
+				else
+					'You do not have enough cash to buy this set.'
+				end
+				if karta + bankDebtLimit >= price_set:
+					act 'Buy (card)':
+						karta -= price_set
+						dynamic $ARGS[2] + '_bras[<<ARGS[3]>>] = 1'
+						dynamic $ARGS[2] + '_brasS[<<ARGS[3]>>] = 0'
+						dynamic $ARGS[2] + '_panties[<<underwear[''set'']>>] = 1'
+						dynamic $ARGS[2] + '_pantiesS[<<underwear[''set'']>>] = 0'
+						gt $loc, $loc_arg
+					end
+				else
+					'You do not have enough money in your bank to buy this set.'
+				end
+			end
 		end
 	else
 		if $ARGS[1] ! 'bathroom':
@@ -226,6 +227,101 @@ if $ARGS[0] = 'view_bra_item':
 							else
 								gs 'bras', 'wear', $ARGS[2], ARGS[3]
 
+								if $ARGS[1] = 'wardrobe':
+									gt 'wardrobe', 'main'
+								else
+									gt $loc, $loc_arg
+								end
+							end
+						end
+					end
+				end
+				if underwear['set'] ! 0 and dyneval('RESULT = <<$ARGS[2]>>_panties[<<underwear[''set'']>>]') = 1:
+					act 'Wear set':
+						if CloBra = 1:
+							msg'You cannot wear a bra with this top'
+						elseif CloPanties = 1:
+							msg'You cannot wear a panties with this outfit'
+						else
+							if hypnoBra > 0 and hypnoPanty > 0:
+								cla
+								*clr
+								'You pick up the bra and panties and think about trying them on... but you don''t really like wearing underwear.'
+								gs 'willpower', 'misc', 'resist'
+								will_cost += hypnoTime
+								if will_cost <= pcs_willpwr:
+									act 'Wear it anyway anyways (<<will_cost>> Willpower)':
+										gs 'willpower', 'pay', 'resist'
+										gs 'stat'
+										gs 'panties', 'wear', $ARGS[2], underwear['set']
+										gs 'bras', 'wear', $ARGS[2], ARGS[3]
+		
+										if $ARGS[1] = 'wardrobe':
+											gt 'wardrobe', 'main'
+										else
+											gt $loc, $loc_arg
+										end
+									end
+								else
+									act 'Wear it anyway anyways (<font color="red"><<will_cost>> Willpower</font>)': '<br><font color="red">You don''t have enough willpower to use this action.</font>'
+								end
+								act 'Back':
+									gt 'wardrobe', 'main'
+								end
+							elseif hypnoBra > 0:
+								cla
+								*clr
+								'You pick up the bra and think about trying them on... but you don''t really like wearing bras.'
+								gs 'willpower', 'misc', 'resist', 'easy'
+								will_cost += hypnoTime
+								if will_cost <= pcs_willpwr:
+									act 'Put them on anyways (<<will_cost>> Willpower)':
+										gs 'willpower', 'pay', 'resist'
+										gs 'stat'
+										gs 'panties', 'wear', $ARGS[2], underwear['set']
+										gs 'bras', 'wear', $ARGS[2], ARGS[3]
+		
+										if $ARGS[1] = 'wardrobe':
+											gt 'wardrobe', 'main'
+										else
+											gt $loc, $loc_arg
+										end
+									end
+								else
+									act 'Put them on anyways (<font color="red"><<will_cost>> Willpower</font>)': '<br><font color="red">You don''t have enough willpower to use this action.</font>'
+								end
+								act 'Back':
+									gt 'wardrobe', 'main'
+								end
+							elseif hypnoPanty > 0:
+								cla
+								*clr
+								'You pick up the panties and think about trying them on... but you don''t really like wearing panties.'
+								gs 'willpower', 'misc', 'resist', 'easy'
+								will_cost += hypnoTime
+								if will_cost <= pcs_willpwr:
+									act 'Put them on anyways (<<will_cost>> Willpower)':
+										gs 'willpower', 'pay', 'resist'
+										gs 'stat'
+										gs 'panties', 'wear', $ARGS[2], underwear['set']
+										gs 'panties', 'wear', $ARGS[2], ARGS[3]
+			
+										if $ARGS[1] = 'wardrobe':
+											gt 'wardrobe', 'main'
+										else
+											gt $loc, $loc_arg
+										end
+									end
+								else
+									act 'Put them on anyways (<font color="red"><<will_cost>> Willpower</font>)': '<br><font color="red">You don''t have enough willpower to use this action.</font>'
+								end
+								act 'Back':
+									gt 'wardrobe', 'main'
+								end
+							else
+								gs 'panties', 'wear', $ARGS[2], underwear['set']
+								gs 'bras', 'wear', $ARGS[2], ARGS[3]
+
 								if $ARGS[1] = 'wardrobe':
 									gt 'wardrobe', 'main'
 								else
@@ -312,4 +408,80 @@ if $ARGS[0] = 'sum':
 	killvar('temp1')
 	killvar('temp2')
 end
---- bras ---------------------------------
+
+
+if $ARGS[0] = 'dispose':
+	if underwear['type'] = 2: gs 'underwear_bodysuits', 'dispose'
+	dynamic $braworntype + '_bras[<<lastwornbranumber>>] = 0'
+	$lastwornbratype = 'none'
+	lastwornbranumber = 0
+	$braworntype = 'none'
+	brawornnumber = 0
+end
+
+if $ARGS[0] = 'remove':
+	if underwear['type'] = 2: gs 'underwear_bodysuits', 'remove'
+	$lastwornbratype = $braworntype
+	lastwornbranumber = brawornnumber
+	$braworntype = 'none'
+	brawornnumber = 0
+	underwear['lastworntype'] = 0
+end
+
+if $ARGS[0] = 'wear':
+	if $ARGS[1] = '':
+		if dyneval('RESULT = <<$lastwornbratype>>_brasS[<<lastwornbranumber>>]') = 0 and $lastwornbratype ! '' and underwear['lastworntype'] ! 2:
+			gs 'bras', 'wear2', $lastwornbratype, lastwornbranumber
+		else
+			$braworntype = 'none'
+			brawornnumber = 0
+		end
+	else
+		if dyneval('RESULT = <<$ARGS[1]>>_brasS[<<ARGS[2]>>]') = 0:
+			gs 'bras', 'wear2', $ARGS[1], ARGS[2]
+		else
+			$braworntype = 'none'
+			brawornnumber = 0
+		end
+	end
+end
+
+if $ARGS[0] = 'wear2':
+	!! ARGS 0 - action
+	!! ARGS 1 - bras type name
+	!! ARGS 2 - bras index
+
+!! removing bra or bodysuit if worn
+	if underwear['type'] = 0:
+		gs 'bras', 'remove'
+	else
+		gs 'underwear_bodysuit', 'remove'
+	end
+	underwear['type'] = 0
+
+	$braworntype = $ARGS[1]
+	brawornnumber = ARGS[2]
+
+	dynamic $ARGS[1] + '_w[<<ARGS[2]>>] = 1'
+
+	gs 'underwear_attributes', $ARGS[1], ARGS[2]
+
+	dynamic '<<$ARGS[1]>>_s[<<ARGS[2]>>] = 0'
+
+	PBraMaterial = BraMaterial
+	PBraType = BraType
+	PBraFun = BraFun
+	PBraQuality = BraQuality
+	PBraThinness = BraThinness
+	PBraExpose = BraExpose
+end
+
+if $ARGS[0] = 'wear_last_worn':
+	!!contingency
+	if $lastwornbratype = '': $lastwornbranumber = 'none'
+	gs 'bras', 'wear', $lastwornbratype, lastwornbranumber
+end
+
+
+--- bras ---------------------------------
+

+ 4 - 0
locations/intro_city_select.qsrc

@@ -1217,6 +1217,10 @@ if $ARGS[0] = 'uglyduckling':
 			pcs_lashes = 2
 		end
 		school_clothing = 3
+		$currentpursetype = 'gm'
+		currentpursenumber = 8
+		gm_purses[8] = 1
+		bag = 1
 		salo = 130
 		willpowermax = 70
 		gs 'grades', 'grade_award', 'school', 'math', 55

+ 135 - 32
locations/katjaEvDin.qsrc

@@ -49,7 +49,13 @@ if $ARGS[0] = 'kiss':
 				'<center><img <<$set_imgh>> src="images/characters/shared/headshots_main/big14.jpg"></center>'
 				'You remove her hands and smile at Katja.'
 
-				act 'Further':gt 'KatjaHomeTalk'
+				act 'Further':
+					if $loc = 'Katja_dorm':
+						gt 'katja_dorm', 'talk'
+					else
+						gt 'KatjaHomeTalk'
+					end
+				end
 			end
 		else
 			act 'Remove her hands (<font color="red"><<will_cost>> Willpower</font>)': '<br><font color="red">You don''t have enough willpower to use this action.</font>'
@@ -71,7 +77,11 @@ if $ARGS[0] = 'kiss':
 				act 'Accept Katja''s decision':
 					gs 'arousal', 'end'
 					gs 'stat'
-					gt 'KatjaHomeTalk'
+					if $loc = 'Katja_dorm':
+						gt 'katja_dorm', 'talk'
+					else
+						gt 'KatjaHomeTalk'
+					end
 				end
 
 				gs 'willpower', 'sex', 'force', 'hard'
@@ -90,7 +100,9 @@ if $ARGS[0] = 'kiss':
 							gs 'stat'
 							'Katja pushes your arms apart and pulls away. You understand that she doesn''t want more.'
 
-							if mey_vika['key'] = 1:
+							if $loc = 'katja_dorm':
+								act 'Stop talking': gt 'katja_dorm', 'start'
+							elseif mey_vika['key'] = 1:
 								Act 'Leave the room': gt 'mey_home', 'start'
 							else
 								act 'Say goodbye and leave':minut += 5 & gt 'pav_residential'
@@ -155,7 +167,13 @@ if $ARGS[0] = 'kiss':
 							'<center><img <<$set_imgh>> src="images/characters/shared/headshots_main/big14.jpg"></center>'
 							'You remove her hands and smile at Katja.'
 
-							act 'Further':gt 'KatjaHomeTalk'
+							act 'Further':
+								if $loc = 'Katja_dorm':
+									gt 'katja_dorm', 'talk'
+								else
+									gt 'KatjaHomeTalk'
+								end
+							end
 						end
 					else
 						act 'Remove her hands (<font color="red"><<will_cost>> Willpower</font>)': '<br><font color="red">You don''t have enough willpower to use this action.</font>'
@@ -168,8 +186,16 @@ if $ARGS[0] = 'kiss':
 		gs 'stat'
 		'Katja turns and begins collecting books, pretending that nothing has happened.'
 
-		act 'Talk about something else': gt 'KatjaHomeTalk'
-		if mey_vika['key'] = 1:
+		act 'Talk about something else': 
+			if $loc = 'Katja_dorm':
+				gt 'katja_dorm', 'talk'
+			else
+				gt 'KatjaHomeTalk'
+			end
+		end
+		if $loc = 'katja_dorm':
+			act 'Stop talking': gt 'katja_dorm', 'start'
+		elseif mey_vika['key'] = 1:
 			Act 'Smile and leave the room': gt 'mey_home', 'start'
 		else
 			act 'Say goodbye and leave':gt 'pav_residential'
@@ -215,17 +241,24 @@ if $ARGS[0] = 'strapon_main':
 	end
 
 	if katjaQW['horny'] < 0:katjaQW['horny'] = 0
+	gs 'arousal', 'end'
 
-	act 'Get dressed and talk about something else': gt 'KatjaHomeTalk'
-	if mey_vika['key'] = 1:
-		act 'Smile and leave the room': 
-			gs 'arousal', 'end'
+	act 'Get dressed and talk about something else':
+		if $loc = 'Katja_dorm':
+			gt 'katja_dorm', 'talk'
+		else
+			gt 'KatjaHomeTalk'
+		end
+	end
+	if $loc = 'katja_dorm':
+		act 'Get dressed and stop talking': gt 'katja_dorm', 'start'
+	elseif mey_vika['key'] = 1:
+		Act 'Smile and leave the room': 
 			gt 'mey_home', 'start'
 		end
 	else
 		act 'Say goodbye and leave':
 			minut += 5
-			gs 'arousal', 'end'
 			gt 'pav_residential'
 		end
 	end
@@ -398,19 +431,23 @@ if $ARGS[0] = 'sex':
 			katjaQW['slut'] += 1
 			katjaQW['horny'] = min(katjaQW['horny'], 40)
 			'Katja is embarrassed and pulls her hand away from you.'
+			gs 'arousal', 'end'
 
 			act 'Talk about something else':
-				gs 'arousal', 'end'
-				gt 'KatjaHomeTalk'
+				if $loc = 'Katja_dorm':
+					gt 'katja_dorm', 'talk'
+				else
+					gt 'KatjaHomeTalk'
+				end
 			end
-			if mey_vika['key'] = 1:
+			if $loc = 'katja_dorm':
+				act 'Stop talking': gt 'katja_dorm', 'start'
+			elseif mey_vika['key'] = 1:
 				act 'Leave the room': 
-					gs 'arousal', 'end'
 					gt 'mey_home', 'start'
 				end
 			else
 				act 'Say goodbye and go home':
-					gs 'arousal', 'end'
 					gt 'pav_residential'
 				end
 			end
@@ -437,9 +474,18 @@ if $ARGS[0] = 'sex':
 
 			act 'Talk about something else':
 				gs 'arousal', 'end'
-				gt 'KatjaHomeTalk'
+				if $loc = 'Katja_dorm':
+					gt 'katja_dorm', 'talk'
+				else
+					gt 'KatjaHomeTalk'
+				end
 			end
-			if mey_vika['key'] = 1:
+			if $loc = 'katja_dorm':
+				act 'Stop talking': 
+					gs 'arousal', 'end'
+					gt 'katja_dorm', 'start'
+				end
+			elseif mey_vika['key'] = 1:
 				act 'Leave the room': 
 					gs 'arousal', 'end'
 					gt 'mey_home', 'start'
@@ -488,9 +534,18 @@ if $ARGS[0] = 'kuni':
 	else
 		act 'Talk about something else':
 			gs 'arousal', 'end'
-			gt 'KatjaHomeTalk'
+			if $loc = 'Katja_dorm':
+				gt 'katja_dorm', 'talk'
+			else
+				gt 'KatjaHomeTalk'
+			end
 		end
-		if mey_vika['key'] = 1:
+		if $loc = 'katja_dorm':
+			act 'Stop talking': 
+				gs 'arousal', 'end'
+				gt 'katja_dorm', 'start'
+			end
+		elseif mey_vika['key'] = 1:
 			act 'Leave the room': 
 				gs 'arousal', 'end'
 				gt 'mey_home', 'start'
@@ -529,9 +584,18 @@ if $ARGS[0] = 'fisting':
 	else
 		act 'Talk about something else':
 			gs 'arousal', 'end'
-			gt 'KatjaHomeTalk'
+			if $loc = 'Katja_dorm':
+				gt 'katja_dorm', 'talk'
+			else
+				gt 'KatjaHomeTalk'
+			end
 		end
-		if mey_vika['key'] = 1:
+		if $loc = 'katja_dorm':
+			act 'Stop talking':
+				gs 'arousal', 'end'
+				gt 'katja_dorm', 'start'
+			end
+		elseif mey_vika['key'] = 1:
 			act 'Leave the room': 
 				gs 'arousal', 'end'
 				gt 'mey_home', 'start'
@@ -568,9 +632,18 @@ if $ARGS[0] = 'kuni_p':
 	else
 		act 'Talk about something else':
 			gs 'arousal', 'end'
-			gt 'KatjaHomeTalk'
+			if $loc = 'Katja_dorm':
+				gt 'katja_dorm', 'talk'
+			else
+				gt 'KatjaHomeTalk'
+			end
 		end
-		if mey_vika['key'] = 1:
+		if $loc = 'katja_dorm':
+			act 'Stop talking':
+				gs 'arousal', 'end'
+				gt 'katja_dorm', 'start'
+			end
+		elseif mey_vika['key'] = 1:
 			act 'Leave the room': 
 				gs 'arousal', 'end'
 				gt 'mey_home', 'start'
@@ -614,7 +687,11 @@ if $ARGS[0] = 'kuni_dom':
 					gs 'arousal', 'end'
 					gs 'willpower', 'pay', 'resist'
 					gs 'stat'
-					gt 'pav_residential'
+					if $loc = 'katja_dorm':
+						gt 'uni_dorm', 'second_floor'
+					else
+						gt 'pav_residential'
+					end
 				end
 			else
 				act 'Say goodbye and go home (<font color="red"><<will_cost>> Willpower</font>)': '<br><font color="red">You don''t have enough willpower to use this action.</font>'
@@ -633,7 +710,11 @@ if $ARGS[0] = 'kuni_dom':
 						gs 'arousal', 'end'
 						gs 'willpower', 'pay', 'resist'
 						gs 'stat'
-						gt 'pav_residential'
+						if $loc = 'katja_dorm':
+							gt 'uni_dorm', 'second_floor'
+						else
+							gt 'pav_residential'
+						end
 					end
 				else
 					act 'Decline and go home (<font color="red"><<will_cost>> Willpower</font>)': '<br><font color="red">You don''t have enough willpower to use this action.</font>'
@@ -663,7 +744,11 @@ if $ARGS[0] = 'kuni_dom':
 								gs 'arousal', 'end'
 								gs 'willpower', 'pay', 'resist'
 								gs 'stat'
-								gt 'pav_residential'
+								if $loc = 'katja_dorm':
+									gt 'uni_dorm', 'second_floor'
+								else
+									gt 'pav_residential'
+								end
 							end
 						else
 							act 'Decline and go home (<font color="red"><<will_cost>> Willpower</font>)': '<br><font color="red">You don''t have enough willpower to use this action.</font>'
@@ -688,7 +773,11 @@ if $ARGS[0] = 'kuni_dom':
 									gs 'arousal', 'end'
 									gs 'willpower', 'pay', 'resist'
 									gs 'stat'
-									gt 'pav_residential'
+									if $loc = 'katja_dorm':
+										gt 'uni_dorm', 'second_floor'
+									else
+										gt 'pav_residential'
+									end
 								end
 							else
 								act 'Decline and go home (<font color="red"><<will_cost>> Willpower</font>)': '<br><font color="red">You don''t have enough willpower to use this action.</font>'
@@ -715,8 +804,16 @@ if $ARGS[0] = 'kuni_dom':
 								'You take the time to rest and relax yourself, coming down from the pounding you just received. A few minutes later, she kisses your back and your neck before climbing off you and pulling the dildo out slowly. Getting up yourself, you see her taking the harness off and tossing it aside. You notice that her thighs are slick with sweat and her own juices. She grabs you by the neck and gives you a passionate, deep and very long kiss. "My god <<$pcs_nickname>>, that was amazing! I hope I didn''t hurt you too much and you enjoyed it as much as I did. No wonder boys fuck us like that, that was amazing!" she says upon breaking the kiss.'
 								'She falls back on her bed, still breathing hard and looking at you with a somewhat possessive look as you lie down next to her. "It was wonderful. I''m glad you enjoyed it too, even if you were a little rough at times." She leans over and gives you another kiss. "Sorry, but that was beyond description. We''re going to have to do that again sometime." The two of you lay quietly for a while, basking in the aftermath. You know something in your relationship has changed and you think for the better. After a while, you get up and get dressed.'
 
-								act 'Talk about something else': gt 'KatjaHomeTalk'
-								if mey_vika['key'] = 1:
+								act 'Talk about something else':
+									if $loc = 'Katja_dorm':
+										gt 'katja_dorm', 'talk'
+									else
+										gt 'KatjaHomeTalk'
+									end
+								end
+								if $loc = 'katja_dorm':
+									act 'Stop talking': gt 'katja_dorm', 'start'
+								elseif mey_vika['key'] = 1:
 									Act 'Leave the room': gt 'mey_home', 'start'
 								else
 									act 'Say goodbye and go home':gt 'pav_residential'
@@ -729,8 +826,14 @@ if $ARGS[0] = 'kuni_dom':
 		end
 	else
 		gs 'arousal', 'end'
-		act 'Talk about something else': gt 'KatjaHomeTalk'
-		if mey_vika['key'] = 1:
+		if $loc = 'Katja_dorm':
+			gt 'katja_dorm', 'talk'
+		else
+			gt 'KatjaHomeTalk'
+		end
+		if $loc = 'katja_dorm':
+			act 'Stop talking': gt 'katja_dorm', 'start'
+		elseif mey_vika['key'] = 1:
 			Act 'Leave the room': gt 'mey_home', 'start'
 		else
 			act 'Say goodbye and go home':gt 'pav_residential'

+ 33 - 0
locations/lusso.qsrc

@@ -22,6 +22,8 @@ if $ARGS[0] = 'start':
 	act 'View panties': minut += 5 & gt 'lusso', 'panties'
 
 	act 'View bras': minut += 5 & gt 'lusso', 'bras'
+	
+!!	act 'View bodysuits': minut += 5 & gt 'lusso', 'bodysuit'
 end
 
 if $ARGS[0] = 'panties':
@@ -86,6 +88,37 @@ if $ARGS[0] = 'bras2':
 
 end
 
+if $ARGS[0] = 'bodysuit':
+	$loc_arg = 'bodysuit'
+	$loc = 'lusso'
+	$menu_loc = 'lusso'
+	$menu_arg = 'bodysuit'
+	menu_off = 0
+	*clr & cla
+	gs'stat'
+
+	act 'Return': minut += 1 & gt 'lusso', 'start'
+
+	i = 1
+
+	:looplusso_bodysuit
+		if boutique_bodysuit[i] = 0:*p '<a href="exec: i = <<i>> & gt ''lusso'', ''bodysuit2''"><img src="images/pc/items/lusso/bodysuits/<<i>>.jpg" 	height="250" /></a> '
+		i += 1
+	if i <= 10:jump 'looplusso_bodysuit'
+end
+
+if $ARGS[0] = 'bodysuit2':
+	cla
+	menu_off = 1
+	if boutique_bodysuit[i] ! 0:
+		msg 'You already own this bodysuit.'
+		gt 'lusso', 'bodysuit'
+	end
+
+	gt 'underwear_bodysuits', 'view_bodysuit_item', 'shop', 'lusso',i, 1000
+
+end
+
 
 --- lusso ---------------------------------
 

+ 84 - 76
locations/natbel_cp_1.qsrc

@@ -32,12 +32,14 @@ NatbelQW['panty_stuff_day'] is set to daystart each morning you stuff Natasha''s
 
 
 if $ARGS[0] = 'nat_debt_timer':
-	*nl
-	NatbelQW['DebtTimeLeft'] = NatbelQW['DebtDay'] - daystart
-	if NatbelQW['DebtTimeLeft'] > 0:
-		'Natasha has promised to pay you back in <<NatbelQW[''DebtTimeLeft'']>> day(s).'
-	else
-		'Natasha promised to pay you back by now, maybe you should talk to her about it.'
+	if NatbelQW['QWstage'] >= 2 and NatbelQW['Debt'] > 0:
+		*nl
+		NatbelQW['DebtTimeLeft'] = NatbelQW['DebtDay'] - daystart
+		if NatbelQW['DebtTimeLeft'] > 0:
+			'Natasha has promised to pay you back in <<NatbelQW[''DebtTimeLeft'']>> day(s).'
+		else
+			'Natasha promised to pay you back by now, maybe you should talk to her about it.'
+		end
 	end
 end
 
@@ -117,27 +119,31 @@ end
 
 ! Only if Natasha owes you money
 if $ARGS[0] = 'make_her_do_homework':
-	*clr & cla
-	minut += 60
-	menu_off = 1
-	gs 'grades', 'homework', 'school', 'yes', 1, 2, 'A16'
-	NatbelQW['homework'] += 1
-	if NatbelQW['homework'] >= 3 and NatbelQW['QWstage'] = 3: NatbelQW['QWstage'] = 4
-	gs 'stat'
-	'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/girl/natasha/study.jpg"></center>'
-	if NatbelQW['QWstage'] = 3:
-		'"Well Natasha, since I won''t be seeing my money anytime soon I think it''s best for now if you repay me by doing my homework for me." You tell her in a threatening voice.'
-	elseif NatbelQW['QWstage'] = 4:
-		'"Well Natasha, on top of doing my homework for me, you''ll be carrying my books to school in the morning from now on." You tell her in a threatening voice.'
-	end
-	'Natasha sighs with a resigned look as she nods meekly and starts working on your homework as well as hers.'
-	if NatbelQW['QWstage'] > 5:
-		act 'Continue': gt 'natbel_cp_1', 'hwundress'
-	else
-		'You relax on her bed and start daydreaming for a while.'
-		'You are woken out of your daydream by Natasha saying: "It''s done <<$pcs_nickname>>."'
-		'"Good, let me have a look at it."'
-		act 'Take your finished homework': gt 'natbelapt', 'natroom'
+	if NatbelQW['QWstage'] >= 2 and lernHome > 0 and NatbelQW['Debt'] > 0:
+		act 'Make her do your homework':
+			*clr & cla
+			minut += 60
+			menu_off = 1
+			gs 'grades', 'homework', 'school', 'yes', 1, 2, 'A16'
+			NatbelQW['homework'] += 1
+			if NatbelQW['homework'] >= 3 and NatbelQW['QWstage'] = 3: NatbelQW['QWstage'] = 4
+			gs 'stat'
+			'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/girl/natasha/study.jpg"></center>'
+			if NatbelQW['QWstage'] = 3:
+				'"Well Natasha, since I won''t be seeing my money anytime soon I think it''s best for now if you repay me by doing my homework for me." You tell her in a threatening voice.'
+			elseif NatbelQW['QWstage'] = 4:
+				'"Well Natasha, on top of doing my homework for me, you''ll be carrying my books to school in the morning from now on." You tell her in a threatening voice.'
+			end
+			'Natasha sighs with a resigned look as she nods meekly and starts working on your homework as well as hers.'
+			if NatbelQW['QWstage'] > 5:
+				act 'Continue': gt 'natbel_cp_1', 'hwundress'
+			else
+				'You relax on her bed and start daydreaming for a while.'
+				'You are woken out of your daydream by Natasha saying: "It''s done <<$pcs_nickname>>."'
+				'"Good, let me have a look at it."'
+				act 'Take your finished homework': gt 'natbelapt', 'natroom'
+			end
+		end
 	end
 end
 
@@ -339,64 +345,66 @@ if $ARGS[0] = 'afterhomework':
 end
 
 if $ARGS[0] = 'corrupt_choices':
-	if NatbelQW['QWstage'] >= 5:
-		gs 'willpower', 'humiliation', 'force', 'easy'
-		if will_cost <= pcs_willpwr:
-			act 'Make her lick your feet (<<will_cost>> Willpower)':
-				gs 'willpower', 'humiliation', 'force', 'easy'
-				gs 'willpower', 'pay', 'force'
-				gt 'natbel_cp_1', 'lick_feet'
+	if NatbelQW['Debt'] > 0 and NatbelQW['DebtDay'] <= daystart:
+		if NatbelQW['QWstage'] >= 5:
+			gs 'willpower', 'humiliation', 'force', 'easy'
+			if will_cost <= pcs_willpwr:
+				act 'Make her lick your feet (<<will_cost>> Willpower)':
+					gs 'willpower', 'humiliation', 'force', 'easy'
+					gs 'willpower', 'pay', 'force'
+					gt 'natbel_cp_1', 'lick_feet'
+				end
+			else
+				act 'Make her lick your feet (<font color="red"><<will_cost>> Willpower</font>)': '<br><font color="red">You don''t have enough willpower to use this action.</font>'
 			end
-		else
-			act 'Make her lick your feet (<font color="red"><<will_cost>> Willpower</font>)': '<br><font color="red">You don''t have enough willpower to use this action.</font>'
 		end
-	end
-	if NatbelQW['QWstage'] >= 6:
-		gs 'willpower', 'humiliation', 'force', 'easy'
-		if will_cost <= pcs_willpwr:
-			act 'Spit in face (<<will_cost>> Willpower)':
-				gs 'willpower', 'humiliation', 'force', 'easy'
-				gs 'willpower', 'pay', 'force'
-				gt 'natbel_cp_1', 'spit_face'
+		if NatbelQW['QWstage'] >= 6:
+			gs 'willpower', 'humiliation', 'force', 'easy'
+			if will_cost <= pcs_willpwr:
+				act 'Spit in face (<<will_cost>> Willpower)':
+					gs 'willpower', 'humiliation', 'force', 'easy'
+					gs 'willpower', 'pay', 'force'
+					gt 'natbel_cp_1', 'spit_face'
+				end
+			else
+				act 'Spit in face (<font color="red"><<will_cost>> Willpower</font>)': '<br><font color="red">You don''t have enough willpower to use this action.</font>'
 			end
-		else
-			act 'Spit in face (<font color="red"><<will_cost>> Willpower</font>)': '<br><font color="red">You don''t have enough willpower to use this action.</font>'
 		end
-	end
-	if NatbelQW['QWstage'] >= 7:
-		gs 'willpower', 'cuni', 'force', 'easy'
-		if will_cost <= pcs_willpwr:
-			act 'Make her lick your pussy (<<will_cost>> Willpower)':
-				gs 'willpower', 'cuni', 'force', 'easy'
-				gs 'willpower', 'pay', 'force'
-				gt 'natbel_cp_1', 'lick_pussy'
+		if NatbelQW['QWstage'] >= 7:
+			gs 'willpower', 'cuni', 'force', 'easy'
+			if will_cost <= pcs_willpwr:
+				act 'Make her lick your pussy (<<will_cost>> Willpower)':
+					gs 'willpower', 'cuni', 'force', 'easy'
+					gs 'willpower', 'pay', 'force'
+					gt 'natbel_cp_1', 'lick_pussy'
+				end
+			else
+				act 'Make her lick your pussy (<font color="red"><<will_cost>> Willpower</font>)': '<br><font color="red">You don''t have enough willpower to use this action.</font>'
 			end
-		else
-			act 'Make her lick your pussy (<font color="red"><<will_cost>> Willpower</font>)': '<br><font color="red">You don''t have enough willpower to use this action.</font>'
 		end
-	end
-	if NatbelQW['QWstage'] >= 8 and hour >= 18 and hour < 21 and NatbelQW['KolkaFuckDay'] < daystart and NatbelQW['KolkaWantsNat'] = 1:
-		gs 'willpower', 'sex', 'force', 'easy'
-		if will_cost <= pcs_willpwr:
-			act 'Make her fuck Kolka (<<will_cost>> Willpower)':
-				gs 'willpower', 'sex', 'force', 'easy'
-				gs 'willpower', 'pay', 'force'
-				gt 'natkolev', 'kolkabj'
+		if NatbelQW['QWstage'] >= 8 and hour >= 18 and hour < 21 and NatbelQW['KolkaFuckDay'] < daystart and NatbelQW['KolkaWantsNat'] = 1:
+			gs 'willpower', 'sex', 'force', 'easy'
+			if will_cost <= pcs_willpwr:
+				act 'Make her fuck Kolka (<<will_cost>> Willpower)':
+					gs 'willpower', 'sex', 'force', 'easy'
+					gs 'willpower', 'pay', 'force'
+					gt 'natkolev', 'kolkabj'
+				end
+			else
+				act 'Make her fuck Kolka (<font color="red"><<will_cost>> Willpower</font>)': '<br><font color="red">You don''t have enough willpower to use this action.</font>'
 			end
-		else
-			act 'Make her fuck Kolka (<font color="red"><<will_cost>> Willpower</font>)': '<br><font color="red">You don''t have enough willpower to use this action.</font>'
 		end
-	end
-	if NatbelQW['QWstage'] >= 9 and OluQW['sex'] = 1:
-		gs 'willpower', 'anal', 'force', 'easy'
-		if will_cost <= pcs_willpwr:
-			act 'Take her to see Olu (<<will_cost>> Willpower)':
-				gs 'willpower', 'anal', 'force', 'easy'
-				gs 'willpower', 'pay', 'force'
-				gt 'natpimp', 'go_see_olu'
+		if NatbelQW['QWstage'] >= 9 and OluQW['sex'] = 1:
+			gs 'willpower', 'anal', 'force', 'easy'
+			if will_cost <= pcs_willpwr:
+				act 'Take her to see Olu (<<will_cost>> Willpower)':
+					gs 'willpower', 'anal', 'force', 'easy'
+					gs 'willpower', 'pay', 'force'
+					gt 'natpimp', 'go_see_olu'
+				end
+			else
+				act 'Take her to see Olu (<font color="red"><<will_cost>> Willpower</font>)': '<br><font color="red">You don''t have enough willpower to use this action.</font>'
 			end
-		else
-			act 'Take her to see Olu (<font color="red"><<will_cost>> Willpower</font>)': '<br><font color="red">You don''t have enough willpower to use this action.</font>'
 		end
 	end
 end

+ 4 - 4
locations/natbelapt.qsrc

@@ -402,7 +402,7 @@ if $ARGS[0] = 'kitchen':
 		'As you walk into the kitchen, you see Natasha pouring herself a glass of milk.'
 		'When she notices you standing there her face starts turning red immediately.'
 		'"I-I needed a drink." She stammers as she puts the milk back into the fridge and heads towards the door.'
-		'"You''re forgetting your milk." You tell her, unable to hold in your laughter as you watch her dart back to the table and grabbing her glass before leaving as quickly as she can. Her face a brilliant shade of crimson by now.'
+		'"You''re forgetting your milk." You tell her, unable to hold in your laughter as you watch her dart back to the table and grabbing her glass before leaving as quickly as she can. Her face is a brilliant shade of crimson now.'
 	elseif NatashaLoc = 3 and NatbelQW['seethroughwearing'] = 0:
 		*clr & cla
 		'<center><img <<$set_imgh>> src="images/locations/pavlovsk/resident/apartment/natbelapt/natfridge.jpg"></center>'
@@ -656,9 +656,9 @@ if $ARGS[0] = 'natroom':
 
 		if lernHome > 0: act 'Study together': gs 'natbelEv', 'study_together'
 
-		if NatbelQW['QWstage'] >= 2 and lernHome > 0 and NatbelQW['Debt'] > 0: act 'Make her do your homework': gs 'natbel_cp_1', 'make_her_do_homework'
-		if NatbelQW['Debt'] > 0 and NatbelQW['DebtDay'] <= daystart: gs 'natbel_cp_1', 'corrupt_choices'
-		if NatbelQW['QWstage'] >= 2 and NatbelQW['Debt'] > 0: gs 'natbel_cp_1', 'nat_debt_timer'
+		gs 'natbel_cp_1', 'make_her_do_homework'
+		gs 'natbel_cp_1', 'corrupt_choices'
+		gs 'natbel_cp_1', 'nat_debt_timer'
 	elseif NatashaShower = 1 and NatashaLoc ! 2:
 		*clr & cla
 		menu_off = 1

+ 212 - 35
locations/panties.qsrc

@@ -1,4 +1,5 @@
 # panties
+!!This is separate panties file and that means underwear['type'] = 0
 !!2021/04/15
 !!gs 'panties', 'dispose'
 !!to remove panties and destroy them
@@ -9,41 +10,6 @@
 
 menu_off = 1
 
-if $ARGS[0] = 'dispose':
-	dynamic $pantyworntype + '_panties[<<pantywornnumber>>] = 0'
-	$lastwornpantytype = 'none'
-	lastwornpantynumber = 0
-	$pantyworntype = 'none'
-	pantywornnumber = 0
-end
-
-if $ARGS[0] = 'remove':
-	$lastwornpantytype = $pantyworntype
-	lastwornpantynumber = pantywornnumber
-	$pantyworntype = 'none'
-	pantywornnumber = 0
-end
-
-if $ARGS[0] = 'wear':
-	if $ARGS[1] = '':
-		if dyneval('RESULT = <<$lastwornbratype>>_pantiesS[<<lastwornbranumber>>]') = 0 and $lastwornbratype ! '':
-			$pantyworntype = $lastwornpantytype
-			pantywornnumber = lastwornpantynumber
-		else
-			$pantyworntype = 'none'
-			pantywornnumber = 0
-		end
-	else
-		if dyneval('RESULT = <<$ARGS[1]>>_pantiesS[<<ARGS[2]>>]') = 0:
-			$pantyworntype = $ARGS[1]
-			pantywornnumber = ARGS[2]
-		else
-			$pantyworntype = 'none'
-			pantywornnumber = 0
-		end
-	end
-end
-
 if $ARGS[0] = 'view_panty_list':
 	!! ARGS 0 - view_panty_list
 	!! ARGS 1 - action type (clean, dirty, store, bathroom)
@@ -150,8 +116,16 @@ if $ARGS[0] = 'view_panty_item':
 !!	$RESULT += '<<ARGS[3]>>'
 !!	'<<$RESULT>>'
 	gs 'panties', 'descriptions', $ARGS[2]
+	if underwear['set'] ! 0: 'These panties form a set with bra #<<underwear[''set'']>>.'
 
 	if $ARGS[1] = 'shop':
+		if underwear['set'] ! 0:
+			if dyneval('RESULT = <<$ARGS[2]>>_bra[<<underwear[''set'']>>]') = 1:
+				'You own the matching bra for this set.'
+			else
+				'You do not own the matching bra for this set.'
+			end
+		end
 		if dyneval('RESULT = <<$ARGS[2]>>_panties[<<ARGS[3]>>]') = 1:
 			'You already own this item.'
 			act 'Leave': gt $loc, $loc_arg
@@ -179,8 +153,43 @@ if $ARGS[0] = 'view_panty_item':
 			else
 				'You do not have enough money in your bank to buy these panties.'
 			end
+			if dyneval('RESULT = <<$ARGS[2]>>_bras[<<underwear[''set'']>>]') = 0:
+				price_set = ARGS[4]*10/9
+				'price for set: <<price_set>> <b>₽</b>'
+				if money >= price_set:
+					act 'Buy (cash)':
+						money -= price_set
+						dynamic $ARGS[2] + '_panties[<<ARGS[3]>>] = 1'
+						dynamic $ARGS[2] + '_pantiesS[<<ARGS[3]>>] = 0'
+						dynamic $ARGS[2] + '_bras[<<underwear[''set'']>>] = 1'
+						dynamic $ARGS[2] + '_brasS[<<underwear[''set'']>>] = 0'
+						gt $loc, $loc_arg
+					end
+				else
+					'You do not have enough cash to buy this set.'
+				end
+				if karta + bankDebtLimit >= price_set:
+					act 'Buy (card)':
+						karta -= price_set
+						dynamic $ARGS[2] + '_panties[<<ARGS[3]>>] = 1'
+						dynamic $ARGS[2] + '_pantiesS[<<ARGS[3]>>] = 0'
+						dynamic $ARGS[2] + '_bras[<<underwear[''set'']>>] = 1'
+						dynamic $ARGS[2] + '_brasS[<<underwear[''set'']>>] = 0'
+						gt $loc, $loc_arg
+					end
+				else
+					'You do not have enough money in your bank to buy this set.'
+				end
+			end
 		end
 	else
+		if underwear['set'] ! 0:
+			if dyneval('RESULT = <<$ARGS[2]>>_bra[<<underwear[''set'']>>]') = 1:
+				'You own this bra and can wear this set.'
+			else
+				'You do not own this bra so you cannot wear this set.'
+			end
+		end
 		if $ARGS[1] ! 'bathroom':
 			if metka_panties ! 1:$RESULT += 'Move these panties to <a href="exec:gt ''panties'', ''dest1'', ''<<$ARGS[1]>>'', ''<<$ARGS[2]>>'', <<ARGS[3]>>">Storage</a><BR>'
 			if metka_panties ! 0:$RESULT += 'Move these panties to  <a href="exec:gt ''panties'', ''dest0'', ''<<$ARGS[1]>>'', ''<<$ARGS[2]>>'', <<ARGS[3]>>">Wardrobe</a><BR>'
@@ -229,6 +238,101 @@ if $ARGS[0] = 'view_panty_item':
 							else
 								gs 'panties', 'wear', $ARGS[2], ARGS[3]
 
+								if $ARGS[1] = 'wardrobe':
+									gt 'wardrobe', 'main'
+								else
+									gt $loc, $loc_arg
+								end
+							end
+						end
+					end
+				end
+				if underwear['set'] ! 0 and dyneval('RESULT = <<$ARGS[2]>>_bras[<<underwear[''set'']>>]') = 1:
+					act 'Wear set':
+						if CloBra = 1:
+							msg'You cannot wear a bra with this top'
+						elseif CloPanties = 1:
+							msg'You cannot wear a panties with this outfit'
+						else
+							if hypnoBra > 0 and hypnoPanty > 0:
+								cla
+								*clr
+								'You pick up the bra and panties and think about trying them on... but you don''t really like wearing underwear.'
+								gs 'willpower', 'misc', 'resist'
+								will_cost += hypnoTime
+								if will_cost <= pcs_willpwr:
+									act 'Wear it anyway anyways (<<will_cost>> Willpower)':
+										gs 'willpower', 'pay', 'resist'
+										gs 'stat'
+										gs 'panties', 'wear', $ARGS[2], ARGS[3]
+										gs 'bras', 'wear', $ARGS[2], underwear['set']
+		
+										if $ARGS[1] = 'wardrobe':
+											gt 'wardrobe', 'main'
+										else
+											gt $loc, $loc_arg
+										end
+									end
+								else
+									act 'Wear it anyway anyways (<font color="red"><<will_cost>> Willpower</font>)': '<br><font color="red">You don''t have enough willpower to use this action.</font>'
+								end
+								act 'Back':
+									gt 'wardrobe', 'main'
+								end
+							elseif hypnoBra > 0:
+								cla
+								*clr
+								'You pick up the bra and think about trying them on... but you don''t really like wearing bras.'
+								gs 'willpower', 'misc', 'resist', 'easy'
+								will_cost += hypnoTime
+								if will_cost <= pcs_willpwr:
+									act 'Put them on anyways (<<will_cost>> Willpower)':
+										gs 'willpower', 'pay', 'resist'
+										gs 'stat'
+										gs 'panties', 'wear', $ARGS[2], ARGS[3]
+										gs 'bras', 'wear', $ARGS[2], underwear['set']
+		
+										if $ARGS[1] = 'wardrobe':
+											gt 'wardrobe', 'main'
+										else
+											gt $loc, $loc_arg
+										end
+									end
+								else
+									act 'Put them on anyways (<font color="red"><<will_cost>> Willpower</font>)': '<br><font color="red">You don''t have enough willpower to use this action.</font>'
+								end
+								act 'Back':
+									gt 'wardrobe', 'main'
+								end
+							elseif hypnoPanty > 0:
+								cla
+								*clr
+								'You pick up the panties and think about trying them on... but you don''t really like wearing panties.'
+								gs 'willpower', 'misc', 'resist', 'easy'
+								will_cost += hypnoTime
+								if will_cost <= pcs_willpwr:
+									act 'Put them on anyways (<<will_cost>> Willpower)':
+										gs 'willpower', 'pay', 'resist'
+										gs 'stat'
+										gs 'panties', 'wear', $ARGS[2], ARGS[3]
+										gs 'panties', 'wear', $ARGS[2], underwear['set']
+			
+										if $ARGS[1] = 'wardrobe':
+											gt 'wardrobe', 'main'
+										else
+											gt $loc, $loc_arg
+										end
+									end
+								else
+									act 'Put them on anyways (<font color="red"><<will_cost>> Willpower</font>)': '<br><font color="red">You don''t have enough willpower to use this action.</font>'
+								end
+								act 'Back':
+									gt 'wardrobe', 'main'
+								end
+							else
+								gs 'panties', 'wear', $ARGS[2], ARGS[3]
+								gs 'panties', 'wear', $ARGS[2], underwear['set']
+
 								if $ARGS[1] = 'wardrobe':
 									gt 'wardrobe', 'main'
 								else
@@ -316,5 +420,78 @@ if $ARGS[0] = 'sum':
 	killvar('temp2')
 end
 
+if $ARGS[0] = 'dispose':
+	if underwear['type'] = 2: gs 'underwear_bodysuits', 'dispose'
+	dynamic $pantyworntype + '_panties[<<pantywornnumber>>] = 0'
+	$lastwornpantytype = 'none'
+	lastwornpantynumber = 0
+	$pantyworntype = 'none'
+	pantywornnumber = 0
+end
+
+if $ARGS[0] = 'remove':
+	if underwear['type'] = 2: gs 'underwear_bodysuits', 'remove'
+	$lastwornpantytype = $pantyworntype
+	lastwornpantynumber = pantywornnumber
+	$pantyworntype = 'none'
+	pantywornnumber = 0
+	underwear['lastworntype'] = 0
+end
+
+if $ARGS[0] = 'wear':
+	if underwear['lastworntype'] = 2: gs 'bodysuits', 'wear'
+	if $ARGS[1] = '':
+		if dyneval('RESULT = <<$lastwornpantytype>>_pantiesS[<<lastwornpantynumber>>]') = 0 and $lastwornpantytype ! '':
+			gs 'panties', 'wear2', $lastwornpantytype, lastwornpantynumber
+		else
+			$pantyworntype = 'none'
+			pantywornnumber = 0
+		end
+	else
+		if dyneval('RESULT = <<$ARGS[1]>>_pantiesS[<<ARGS[2]>>]') = 0:
+			gs 'panties', 'wear2', $ARGS[1], ARGS[2]
+		else
+			$pantyworntype = 'none'
+			pantywornnumber = 0
+		end
+	end
+end
+
+if $ARGS[0] = 'wear2':
+	!! ARGS 0 - action
+	!! ARGS 1 - panties type name
+	!! ARGS 2 - panties index
+
+!! removing panties or bodysuit if worn
+	if underwear['type'] = 0:
+		gs 'panties', 'remove'
+	else
+		gs 'underwear_bodysuit', 'remove'
+	end
+	underwear['type'] = 0
+
+	$pantyworntype = $ARGS[1]
+	pantywornnumber = ARGS[2]
+
+	dynamic $ARGS[1] + '_w[<<ARGS[2]>>] = 1'
+
+	gs 'underwear_attributes', $ARGS[1], ARGS[2]
+
+	dynamic '<<$ARGS[1]>>_s[<<ARGS[2]>>] = 0'
+
+	PPanMaterial = PanMaterial
+	PPantyFun = PantyFun
+	PPanQuality = PanQuality
+	PPanThinness = PanThinness
+	PPanExpose = PanExpose
+	PPanButt = PanButt
+end
+
+if $ARGS[0] = 'wear_last_worn':
+	!!contingency
+	if $lastwornpantytype = '': $lastwornpantynumber = 'none'
+	gs 'panties', 'wear', $lastwornpantytype, lastwornpantynumber
+end
+
 --- panties ---------------------------------
 

+ 1 - 1
locations/saveg.qsrc

@@ -16,6 +16,6 @@
 version_major = 0
 version_minor = 8
 version_revision = 7
-version_patch = 0
+version_patch = 1
 --- saveg ---------------------------------
 

+ 1 - 1
locations/shop_dolls.qsrc

@@ -169,7 +169,7 @@ if $ARGS[0] = 'clothing':
 				end
 			end
 			i += 2
-		if i <= 800:jump 'loopdolls'
+		if i <= 80:jump 'loopdolls'
 
 	clo_i += 1
 	if clothingfilter['quality'] = 0 and clo_i <= 7:

+ 1 - 1
locations/shop_tsar_bomba.qsrc

@@ -15,7 +15,7 @@ if $ARGS[0] = 'start':
 	'<center><b><font color="maroon">Tsar Bomba</font></b></center>'
 	'<center><img <<$set_imgh>> src="images/locations/pushkin/bomba/shop.jpg"></center>'
 	*nl
-	'Tsar Bomba, a small clothing shop in the Okhlopkov Square. The shop is unique and has always catered to rebels both young and old. You can find alternative style clothing here.'
+	'Tsar Bomba, a small clothing shop in the Okhlopkov Square. The shop is unique and used to be very cool with punk fashion. These days it is much more generic and alternative, it could easily be mistaken for an alt. fashion chain store.'
 	'Simply put this place is very cool and most of the clothes are strange and wonderful.'
 
 	act 'Leave the bomba': minut += 3 & gt 'liames'

+ 1 - 1
locations/sportShop.qsrc

@@ -294,7 +294,7 @@ if $ARGS[0] = 'purses':
 	:loopdanilovich_purses
 		if danilovich_purses[i] = 0:*p '<a href="exec: i = <<i>> & gt ''sportShop'', ''purses2''"><img src="images/pc/items/danilovich/purses/<<i>>.jpg" 	height="150" /></a> '
 		i += 1
-	if i <= 60:jump 'loopdanilovich_purses'
+	if i <= 20:jump 'loopdanilovich_purses'
 end
 
 if $ARGS[0] = 'purses2': gt 'purses', 'view_purse_item', 'shop', 'danilovich',i, 1500

+ 1 - 2
locations/therapist.qsrc

@@ -139,8 +139,7 @@ if $ARGS[0] = 'therapyOptions':
 	end
 	if hypnoAskFuck = 1 and succubusflag = 0:
 		act 'Ask Dr. Pavlov to fuck you':
-			* clr & cla
-			*clr
+			*clr & cla
 			if rand(0,1) = 0:
 				'<center><img src="images/locations/pavlovsk/clinic/therapist/showPussyForSex<<rand(1,1)>>.jpg"></center>'
 				'You kneel forward on the couch and present your bare pussy to Dr. Pavlov before asking him to fuck you.'

+ 18 - 6
locations/underwear.qsrc

@@ -5,21 +5,33 @@
 !!gs 'underwear', 'wear'
 
 if $ARGS[0] = 'dispose':
-	gs 'panties', 'dispose'
-	gs 'bras', 'dispose'
+	if underwear['type'] = 2:
+		gs 'underwear_bodysuits', 'dispose'
+	else
+		gs 'panties', 'dispose'
+		gs 'bras', 'dispose'
+	end
 end
 
 if $ARGS[0] = 'remove':
 	!!check for swimwear to prevent duplicate stripping stopping Sveta putting underwear on when she puts her clothes on
 	if $clothingworntype ! 'danilovich_swimsuit' and $clothingworntype ! 'scandalicious_swimsuit' and $clothingworntype ! 'scandalicious_bikinis' and $clothingworntype ! 'allure_swimsuit' and $clothingworntype ! 'allure_bikinis' and $clothingworntype ! 'nerdvana_swimsuit' and $clothingworntype ! 'nerdvana_bikinis' and ($pantyworntype ! 'none' or $braworntype ! 'none'):
-		gs 'panties', 'remove'
-		gs 'bras', 'remove'
+		if underwear['type'] = 2:
+			gs 'underwear_bodysuits', 'remove'
+		else
+			gs 'panties', 'remove'
+			gs 'bras', 'remove'
+		end
 	end
 end
 
 if $ARGS[0] = 'wear':
-	gs 'panties', 'wear'
-	gs 'bras', 'wear'
+	if underwear['lastworntype'] = 2:
+		gs 'bodysuits', 'wear'
+	else
+		gs 'panties', 'wear'
+		gs 'bras', 'wear'
+	end
 end
 
 if $ARGS[0] = 'dresser':

+ 12 - 10
locations/underwear_attributes.qsrc

@@ -6,7 +6,7 @@
 !!
 !! **underwear Variables
 !!
-!! PanMaterial/BraMaterial: Used for bra, panty and bodysuit material (bodysuit uses pan) description and maybe some specific reactions. (bodysuit uses BraMaterial)
+!! PanMaterial/BraMaterial: Used for bra, panty and bodysuit material (bodysuit uses bra) description and maybe some specific reactions. (bodysuit uses BraMaterial)
 !!							1 - Leather
 !!							2 - rubber
 !!							3 - mesh
@@ -22,6 +22,8 @@
 !!							5 - bralette
 !!							6 - sports
 !!							7 - shelf
+!!							8 - open
+!!							9 - under wire
 !!
 !! BraType					Used for description of bodysuit with same variable that bra uses, could be useful for specific reactions
 !!							1 - Full
@@ -33,7 +35,7 @@
 !!							7 - spaghetti strap
 !!							8 - romper
 !!
-!! BraFun/PantyFun			For function of underwear
+!! BraFun/PantyFun			For function of underwear (bodysuit uses bra)
 !!							1 - regular
 !!							2 - sports
 !!
@@ -47,23 +49,23 @@
 !!				5 semi-transparent - Can see through it but not immediately obvious, would include wide mesh
 !!				4 slightly transparent - You have to really stare but you can make out some details, includes fine mesh
 !!				3 thin - Cannot see through it but can make put the shape clearly, needs to also be tight
-!!				2 not particularly thick or thin - This is everything in teh middle and should cover the widest range
+!!				2 not particularly thick or thin - This is everything in the middle and should cover the widest range
 !!				1 thick - This should stand out as being thicker than you''d expect for underwear, things like thermals or knitted wool that would be obvious if worn with a thin outfit.
 !!
 !! (bodysuit uses all 3 exposure variables if required)
-!! PanExpose:	1-4 scale not required to be set
+!! PanExpose:	1-4 scale not required to be set must expose the vagina at least partially
 !!		Ex: 	4 Pussy not covered at all 
 !!				3 Pussy is covered but the material is completely transparent, or wide fishnet
 !!				2 Pussy covered but still visible, inc. wide mesh
 !!				1 Pussy can barely be seen through material if you look hard enough, inc. fine mesh
 !!
-!! PanButt:		1-4 scale not required to be set
+!! PanButt:		1-4 scale not required to be set exposure of the butt, the presence of a g-string or thong does not mean the butt is covered
 !!		Ex: 	4 Butt not covered at all 
 !!				3 Butt is covered but the material is completely transparent, or wide fishnet
 !!				2 Butt covered but still visible, inc. wide mesh
 !!				1 Butt can barely be seen through material if you look hard enough, inc. fine mesh
 !!
-!! BraExpose:	1-4 scale not required to be set
+!! BraExpose:	1-4 scale not required to be set. Breast exposure, must be some nipple or the whole of the rest of the breast for it to count. Deep cleavage without nipple does not count.
 !!		Ex: 	4 Breasts not covered at all 
 !!				3 Breasts is covered but the material is completely transparent, or wide fishnet
 !!				2 Breasts covered but still visible, inc. wide mesh
@@ -81,12 +83,12 @@ BraThinness = 0
 PanExpose = 0
 PanButt = 0
 BraExpose = 0
+underwear['set'] = 0
 
 
-!!{example
-if $ARGS[0] = 'gm_bodysuits':
-	*P FUNC('$attributes_gm_bodysuits', $ARGS[0], ARGS[1])
+if $ARGS[0] = 'lusso_bodysuits':
+	*P FUNC('$attributes_lusso_bodysuit', $ARGS[0], ARGS[1])
 end
-}
+
 --- underwear_attributes ---------------------------------
 

+ 303 - 0
locations/underwear_bodysuits.qsrc

@@ -0,0 +1,303 @@
+# underwear_bodysuits
+
+!!This is bodysuits file and that means underwear['type'] = 2
+!!bodysuits use the panty term in variables, this is intentional
+!!gs 'bodysuits', 'dispose'
+!!to remove bodysuits and destroy them
+!!gs 'bodysuits', 'remove'
+!!To remove bodysuits and store them
+!!gs 'bodysuits', 'wear'
+!!To wear bodysuits
+
+menu_off = 1
+
+if $ARGS[0] = 'view_bodysuit_list':
+	!! ARGS 0 - view_bodysuit_list
+	!! ARGS 1 - action type (clean, dirty, store, bathroom)
+	
+	if $pursepantytype ! '' or $pursebratype ! '':
+		'<center><b>You put the '+iif($pursepantytype ! '','bodysuits','')+iif($pursepantytype ! '' and $pursebratype ! '',' and ','')+iif($pursebratype ! '','bra','')+' from your purse back in the wardrobe.</b></center><br>'
+		killvar '$pursepantytype' & killvar 'pursepantynumber'
+		killvar '$pursebratype' & killvar 'pursebranumber'
+	end
+
+	if $ARGS[1] ! 'bathroom':
+		act 'Return': gt 'wardrobe', 'main'
+	else
+		act 'Return': gt $loc, $loc_arg
+	end
+
+	if $ARGS[1] = 'wardrobe':
+		metka_bodysuits = 0
+	end
+
+	if $ARGS[1] = 'store':
+		metka_bodysuits = 1
+	end
+
+	if $ARGS[1] = 'unwanted':
+		metka_bodysuits = 2
+	end
+
+	'<center><table border=1><TH><a href="exec:gt ''underwear_bodysuits'', ''view_bodysuit_list'', ''wardrobe''">Draw</a></TH><TH><a href="exec:gt ''underwear_bodysuits'', ''view_bodysuit_list'', ''store''">Storage</a></TH><TH><a href="exec:gt ''underwear_bodysuits'', ''view_bodysuit_list'', ''unwanted''">Unwanted</a></TH></table></center>'
+
+	if $pantyworntype ! 'none':act 'Remove bodysuits':gs 'underwear_bodysuits', 'remove' & gt 'underwear_bodysuits', 'view_bodysuit_list', $ARGS[1]
+	
+	if $ARGS[1] = 'store':
+		cloc = 1
+	end
+
+	'<center><img src="images/locations/city/citycenter/mall/Lusso.png"></center>'
+
+	i = 1
+	:looplussobodysuits 
+	if lusso_bodysuits_s[i] = metka_bodysuits and lusso_bodysuits[i] = 1:*p '<a href="exec:gt ''underwear_bodysuits'', ''view_bodysuit_item'', ''<<$ARGS[1]>>'', ''lusso'', <<i>>"><img src="images/pc/items/lusso/bodysuits/<<i>>.jpg" 	height="150" /></a>'
+	i += 1
+	if i <= ARRSIZE('lusso_bodysuits'):jump 'looplussobodysuits'
+end
+
+if $ARGS[0] = 'view_bodysuit_item':
+	!! ARGS 0 - view_bodysuit_item
+	!! ARGS 1 = action type (draw, shop)
+	!! ARGS 2 - bodysuit type
+	!! ARGS 3 - bodysuit index
+	!! ARGS 4 - price for shop
+	cla
+	'<center><img src="<<FUNC(''$pcs_outfit_image'', $ARGS[2]+''_bodysuits'', ARGS[3])>>"></center>'
+	gs 'underwear_attributes', $ARGS[2]+'_bodysuits', ARGS[3]
+	gs 'underwear_descriptions', 'bodysuit'
+
+	if $ARGS[1] = 'shop':
+		if dyneval('RESULT = <<$ARGS[2]>>_bodysuits[<<ARGS[3]>>]') = 1:
+			'You already own this item.'
+			act 'Leave': gt $loc, $loc_arg
+		else
+			price = ARGS[4]
+			'Price: <<ARGS[4]>> <b>₽</b>'
+			act 'Leave': gt $loc, $loc_arg
+			if money >= price:
+				act 'Buy (cash)':
+					money -= price
+					dynamic $ARGS[2] + '_bodysuits[<<ARGS[3]>>] = 1'
+					dynamic $ARGS[2] + '_bodysuits_s[<<ARGS[3]>>] = 0'
+					gt $loc, $loc_arg
+				end
+			else
+				'You do not have enough cash to buy this bodysuit.'
+			end
+			if karta + bankDebtLimit >= price:
+				act 'Buy (card)':
+					karta -= price
+					dynamic $ARGS[2] + '_bodysuits[<<ARGS[3]>>] = 1'
+					dynamic $ARGS[2] + '_bodysuits_s[<<ARGS[3]>>] = 0'
+					gt $loc, $loc_arg
+				end
+			else
+				'You do not have enough money in your bank to buy this bodysuit.'
+			end
+		end
+	else
+		if $ARGS[1] ! 'bathroom':
+			if metka_bodysuits ! 1:$RESULT += 'Move this bodysuit to <a href="exec:gt ''bodysuits'', ''dest1'', ''<<$ARGS[1]>>'', ''<<$ARGS[2]>>'', <<ARGS[3]>>">Storage</a><BR>'
+			if metka_bodysuits ! 0:$RESULT += 'Move this bodysuit to  <a href="exec:gt ''bodysuits'', ''dest0'', ''<<$ARGS[1]>>'', ''<<$ARGS[2]>>'', <<ARGS[3]>>">Wardrobe</a><BR>'
+			if metka_bodysuits ! 2:$RESULT += 'Move this bodysuit to  <a href="exec:gt ''bodysuits'', ''dest2'', ''<<$ARGS[1]>>'', ''<<$ARGS[2]>>'', <<ARGS[3]>>">Unwanted</a>'
+		end
+		
+		act 'Return':gt 'bodysuits', 'view_bodysuit_list', $ARGS[1]
+		
+		if $ARGS[1] = 'store':
+			'This bodysuit is in storage.'
+		elseif $ARGS[1] = 'unwanted':
+			'This bodysuit is unwanted.'
+		else
+			if $bodysuitworntype = $ARGS[2] and bodysuitwornnumber = ARGS[3]:
+				'You are wearing this bodysuit.'
+			else
+				if metka_bodysuits = 0:
+					act 'Wear':
+						if CloPanties = 1 and CloBra = 1:
+							msg'Your outfit is already replacing your underwear'
+						else
+							if hypnoPanty > 0:
+								cla
+								*clr
+								'You pick up the bodysuit and think about trying it on... but you don''t really like wearing bodysuits.'
+								gs 'willpower', 'misc', 'resist', 'easy'
+								will_cost += hypnoTime
+								if will_cost <= pcs_willpwr:
+									act 'Put it on anyways (<<will_cost>> Willpower)':
+										gs 'willpower', 'pay', 'resist'
+										gs 'stat'
+										gs 'underwear_bodysuits', 'wear2', $ARGS[2], ARGS[3]
+			
+										if $ARGS[1] = 'wardrobe':
+											gt 'wardrobe', 'main'
+										else
+											gt $loc, $loc_arg
+										end
+									end
+								else
+									act 'Put it on anyways (<font color="red"><<will_cost>> Willpower</font>)': '<br><font color="red">You don''t have enough willpower to use this action.</font>'
+								end
+								act 'Back':
+									gt 'wardrobe', 'main'
+								end
+							else
+								gs 'underwear_bodysuits', 'wear2', $ARGS[2], ARGS[3]
+
+								if $ARGS[1] = 'wardrobe':
+									gt 'wardrobe', 'main'
+								else
+									gt $loc, $loc_arg
+								end
+							end
+						end
+					end
+				end
+			end
+		end
+		if $ARGS[1] ! 'store':
+			act 'Move to storage': gt 'underwear_bodysuits', 'dest1', $ARGS[1], $ARGS[2], ARGS[3]
+		end
+		if $ARGS[1] ! 'unwanted':
+			act 'Move to unwanted': gt 'underwear_bodysuits', 'dest2', $ARGS[1], $ARGS[2], ARGS[3]
+		end
+		if $ARGS[1] ! 'wardrobe':
+			act 'Move to wardrobe': gt 'underwear_bodysuits', 'dest0', $ARGS[1], $ARGS[2], ARGS[3]
+		end
+	end
+end
+
+if $ARGS[0] = 'dest0':
+	*clr
+	dynamic '<<$ARGS[2]>>_bodysuits_s[<<ARGS[3]>>] = 0'
+	gt 'underwear_bodysuits', 'view_bodysuit_item', $ARGS[1], $ARGS[2], ARGS[3]
+end
+
+if $ARGS[0] = 'dest1':
+	*clr
+	dynamic '<<$ARGS[2]>>_bodysuits_s[<<ARGS[3]>>] = 1'
+	gt 'underwear_bodysuits', 'view_bodysuit_item', $ARGS[1], $ARGS[2], ARGS[3]
+end
+
+if $ARGS[0] = 'dest2':
+	*clr
+	dynamic '<<$ARGS[2]>>_bodysuits_s[<<ARGS[3]>>] = 2'
+	gt 'underwear_bodysuits', 'view_bodysuit_item', $ARGS[1], $ARGS[2], ARGS[3]
+end
+
+if $ARGS[0] = 'sum':
+	$t[0] = 'boutique'
+	$t[1] = 'cats'
+	$t[2] = 'exhibitionist'
+	$t[3] = 'fashionista'
+	$t[4] = 'cheap'
+	$t[5] = 'sexshop'
+	$t[6] = 'sport'
+	result = 0
+	i = 0
+	:loopsumbodysuits_i
+	$temp = $t[i]
+	j = 1
+	:loopsumbodysuits_j
+	$temp1 = '<<$temp>>_bodysuits[<<j>>]'
+	$temp2 = '<<$temp>>_bodysuits_s[<<j>>]'
+	dynamic 'if <<$temp1>> = 1 and <<$temp2>> = 0: result +=1'
+	j += 1
+	if j <= dyneval('result = arrsize(''<<$temp>>_bodysuits'')') : jump 'loopsumbodysuits_j'
+	i += 1
+	if i <= arrsize('$t'): jump 'loopsumbodysuits_i'
+	if $ARGS[1] = 'dresser': if $pantyworntype ! 'none' and result > 0: result -= 1
+	killvar('t')
+	killvar('temp')
+	killvar('temp1')
+	killvar('temp2')
+end
+
+if $ARGS[0] = 'dispose':
+	dynamic $pantyworntype + '_bodysuit[<<pantywornnumber>>] = 0'
+	$lastwornbodysuittype = 'none'
+	lastwornbodysuitnumber = 0
+	$bodysuitworntype = 'none'
+	bodysuitwornnumber = 0
+	$pantyworntype = 'none'
+	$braworntype = 'none'
+end
+
+if $ARGS[0] = 'remove':
+	$lastwornbodysuittype = $bodysuitworntype
+	lastwornbodysuitnumber = bodysuitwornnumber
+	$bodysuitworntype = 'none'
+	bodysuitwornnumber = 0
+	underwear['lastworntype'] = 2
+	$pantyworntype = 'none'
+	$braworntype = 'none'
+end
+
+if $ARGS[0] = 'wear':
+	if $ARGS[1] = '':
+		if dyneval('RESULT = <<$lastwornbodysuittype>>_bodysuits_s[<<lastwornbodysuitnumber>>]') = 0 and $lastwornbodysuittype ! '':
+			$bodysuitworntype = $lastwornbodysuittype
+			bodysuitwornnumber = lastwornbodysuitnumber
+			gs 'wear2', $lastwornpantytype, lastwornpantynumber
+		else
+			underwear['type'] = 0
+			$bodysuitworntype = 'none'
+			bodysuitwornnumber = 0
+		end
+	else
+		if dyneval('RESULT = <<$ARGS[1]>>_bodysuits_s[<<ARGS[2]>>]') = 0:
+			gs 'wear2', $ARGS[2], ARGS[3]
+		else
+			underwear['type'] = 0
+			$bodysuitworntype = 'none'
+			bodysuitwornnumber = 0
+		end
+	end
+end
+
+if $ARGS[0] = 'wear2':
+	!! ARGS 0 - action
+	!! ARGS 1 - bodysuits type name
+	!! ARGS 2 - bodysuits index
+
+!! removing bra and panties or bodysuit if worn
+	if underwear['type'] = 0:
+		gs 'panties', 'remove'
+		gs 'bras', 'remove'
+	else
+		gs 'underwear_bodysuit', 'remove'
+	end
+	underwear['type'] = 2
+
+	$bodysuitworntype = $ARGS[1]
+	bodysuitwornnumber = ARGS[2]
+	$pantyworntype = 'bodysuit'
+	$braworntype = 'bodysuit'
+
+	dynamic $ARGS[1] + '_w[<<ARGS[2]>>] = 1'
+
+	gs 'underwear_attributes', $ARGS[1], ARGS[2]
+
+	dynamic '<<$ARGS[1]>>_s[<<ARGS[2]>>] = 0'
+
+	PBraQuality = BraQuality
+	PBraMaterial = BraMaterial
+	PBraType = BraType
+	PBraFun = BraFun
+	PPanThinness = PanThinness
+	PBraThinness = BraThinness
+	PPanExpose = PanExpose
+	PPanButt = PanButt
+	PBraExpose = BraExpose
+end
+
+if $ARGS[0] = 'wear_last_worn':
+	!!contingency
+	if $lastwornbodysuittype = '': $lastwornbodysuitnumber = 'none'
+	gs 'underwear_bodysuits', 'wear', $lastwornbodysuittype, lastwornbodysuitnumber
+end
+
+
+--- underwear_bodysuits ---------------------------------
+

+ 25 - 23
locations/underwear_descriptions.qsrc

@@ -2,7 +2,7 @@
 !Builds a dynamic underwear description based on the attributes of the bra, panties or bodysuit
 
 $description = ''
-if $ARGS[0] = 'panties' and underwear['type'] = 0:
+if $ARGS[0] = 'panties':
 	if PanStyle = 1:
 		$description += 'These'
 	elseif PanStyle = 2:
@@ -84,7 +84,7 @@ if $ARGS[0] = 'panties' and underwear['type'] = 0:
 	end
 
 
-elseif $ARGS[0] = 'bras' and underwear['type'] = 0:
+elseif $ARGS[0] = 'bras':
 	if BraQuality = 1:
 		$description = 'This crappy quality'
 	elseif BraQuality = 2:
@@ -157,7 +157,7 @@ elseif $ARGS[0] = 'bras' and underwear['type'] = 0:
 		$description += 'Your breasts are not covered at all.'
 	end
 
-elseif underwear['type'] = 2:
+elseif $ARGS[0] = 'bodysuit':
 
 	if BraQuality = 1:
 		$description = 'This crappy quality'
@@ -210,55 +210,55 @@ elseif underwear['type'] = 2:
 	$description += ' bodysuit is'
 
 	if BraThinness = 1:
-		$description += ', transparent.'
+		$description += ' transparent'
 	elseif BraThinness = 2:
-		$description += ', semi-transparent.'
+		$description += ' semi-transparent'
 	elseif BraThinness = 3:
-		$description += ', slightly transparent.'
+		$description += ' slightly transparent'
 	elseif BraThinness = 4:
-		$description += ', thin.'
+		$description += ' thin'
 	elseif BraThinness = 5:
-		$description += ' not particularly thick or thin.'
+		$description += ' not particularly thick or thin'
 	elseif BraThinness = 6:
-		$description += ', thick.'
+		$description += ' thick'
 	end
 
 	$description += ' on top and'
 
 	if PanThinness = 1:
-		$description += ', transparent'
+		$description += ' transparent'
 	elseif PanThinness = 2:
-		$description += ', semi-transparent'
+		$description += ' semi-transparent'
 	elseif PanThinness = 3:
-		$description += ', slightly transparent'
+		$description += ' slightly transparent'
 	elseif PanThinness = 4:
-		$description += ', thin'
+		$description += ' thin'
 	elseif PanThinness = 5:
 		$description += ' not particularly thick or thin'
 	elseif PanThinness = 6:
-		$description += ', thick'
+		$description += ' thick'
 	end
 
-	$description += ' on the bottom.'
+	$description += ' on the bottom. '
 
 	if PanExpose = 1:
-		$description += 'Your pussy can just about be seen in the right light.'
+		$description += 'Your pussy can just about be seen in the right light. '
 	elseif PanExpose = 2:
-		$description += 'Your pussy is partly visible.'
+		$description += 'Your pussy is partly visible. '
 	elseif PanExpose = 3:
-		$description += 'Your pussy is clearly visible.'
+		$description += 'Your pussy is clearly visible. '
 	elseif PanExpose = 4:
-		$description += 'Your pussy is not covered at all.'
+		$description += 'Your pussy is not covered at all. '
 	end
 
 	if PanButt = 1:
-		$description += 'Your butt can just about be seen in the right light.'
+		$description += 'Your butt can just about be seen in the right light. '
 	elseif PanButt = 1:
-		$description += 'Your butt is partly visible.'
+		$description += 'Your butt is partly visible. '
 	elseif PanButt = 1:
-		$description += 'Your butt is clearly visible.'
+		$description += 'Your butt is clearly visible. '
 	elseif PanButt = 1:
-		$description += 'Your butt is not covered at all.'
+		$description += 'Your butt is not covered at all. '
 	end
 
 	if BraExpose = 1:
@@ -272,5 +272,7 @@ elseif underwear['type'] = 2:
 	end
 end
 
+$description
+
 --- underwear_descriptions ---------------------------------
 

+ 58 - 14
locations/wardrobe.qsrc

@@ -51,20 +51,30 @@ if $ARGS[0] = 'main':
 		killvar '$pursebratype' & killvar 'pursebranumber'
 	end
 	'<center><font color="maroon">These are the clothes you are currently wearing - Click on an item to change it</font></center><center><table border=0 cellspacing=<<ward_img_hgt/25>> cellpadding=5>'
-	*p '<TH>Bra worn</TH><TH>Outfit worn</TH><TH>Coat (only worn outside when cold)</TH>'
-	*P '<TR><TD><center><a href="exec:gt ''bras'', ''view_bra_list'', ''wardrobe''"><img Height = <<ward_img_hgt>> src="<<FUNC(''$body_image'',''bra'')>>"></a></center></TD><TD><center><a href="exec:gt ''clothing_QV'', ''list''"><img Height = <<ward_img_hgt * 2>> src="<<FUNC(''$body_image'',''clothes'')>>"></a></center></TD><TD><center>'
+	if underwear['type'] = 0:
+		*p '<TH>Bra worn</TH><TH>Outfit worn</TH><TH>Coat (only worn outside when cold)</TH>'
+		*P '<TR><TD><center><a href="exec:gt ''wardrobe'', ''underwear_options'', ''bra''"><img Height = <<ward_img_hgt>> src="<<FUNC(''$body_image'',''bra'')>>"></a></center></TD><TD><center><a href="exec:gt ''clothing_QV'', ''list''"><img Height = <<ward_img_hgt * 2>> src="<<FUNC(''$body_image'',''clothes'')>>"></a></center></TD><TD><center>'
+	else
+		*p '<TH>Bodysuit worn</TH><TH>Outfit worn</TH><TH>Coat (only worn outside when cold)</TH>'
+		*P '<TR><TD ROWSPAN=4><center><a href="exec:gt ''wardrobe'', ''underwear_options'', ''full''"><img Height = <<ward_img_hgt>>*2 src="<<FUNC(''$body_image'',''bodysuit'')>>"></a></center></TD><TD><center><a href="exec:gt ''clothing_QV'', ''list''"><img Height = <<ward_img_hgt * 2>> src="<<FUNC(''$body_image'',''clothes'')>>"></a></center></TD><TD><center>'
+	end
+		
 	if $coatworntype = 'none':
 		'<a href="exec:gt ''coats'', ''view_coat_list'', ''wardrobe''">Search the wardrobe</a>'
 	else
 		'<a href="exec:gt ''coats'', ''view_coat_list'', ''wardrobe''"><img Height = <<ward_img_hgt * 2>> src="<<FUNC(''$body_image'', ''coat'')>>"></a>'
 	end
-	'</center></TD><TR><TD><center>'
-	if $braworntype ! 'none':
-		'<a href="exec:gs ''bras'', ''remove'' & gt ''wardrobe'', ''main''">Remove</a>'
+	if underwear['type'] = 0:
+		'</center></TD><TR><TD><center>'
+		if $braworntype ! 'none':
+			'<a href="exec:gs ''bras'', ''remove'' & gt ''wardrobe'', ''main''">Remove</a>'
+		else
+			'Remove'
+		end
+		'</center></TD><TD><center>'
 	else
-		'Remove'
+		'</center></TD><TR><TD><center>'
 	end
-	'</center></TD><TD><center>'
 	if $clothingworntype ! 'nude':
 		'<a href="exec:gs ''clothing'', ''strip'' & gt ''wardrobe'', ''main''">Remove</a>'
 	else
@@ -78,20 +88,32 @@ if $ARGS[0] = 'main':
 	end
 	'</center></TD>'
 
-	*p '<TR><TH>Panties worn</TH><TH>Shoes (Only worn outside)</TH><TH>Purse worn</TH>'
-	*P '<TR><TD><center><a href="exec:gt ''panties'', ''view_panty_list'', ''wardrobe''"><img Height = <<ward_img_hgt>> src="<<FUNC(''$body_image'',''panties'')>>"></a></center></TD><TD><center><a href="exec:gt ''shoes'', ''view_shoe_list'', ''wardrobe''"><img Height = <<ward_img_hgt>> src="<<FUNC(''$body_image'', ''shoes'')>>"></a></center></TD><TD><center>'
+	if underwear['type'] = 0:
+		*p '<TR><TH>Panties worn</TH><TH>Shoes (Only worn outside)</TH><TH>Purse worn</TH>'
+		*P '<TR><TD><center><a href="exec:gt ''wardrobe'', ''underwear_options'', ''panties''"><img Height = <<ward_img_hgt>> src="<<FUNC(''$body_image'',''panties'')>>"></a></center></TD><TD><center><a href="exec:gt ''shoes'', ''view_shoe_list'', ''wardrobe''"><img Height = <<ward_img_hgt>> src="<<FUNC(''$body_image'', ''shoes'')>>"></a></center></TD><TD><center>'
+	else
+		*p '<TR><TH>Shoes (Only worn outside)</TH><TH>Purse worn</TH>'
+		*P '<TR><TD><center><a href="exec:gt ''shoes'', ''view_shoe_list'', ''wardrobe''"><img Height = <<ward_img_hgt>> src="<<FUNC(''$body_image'', ''shoes'')>>"></a></center></TD><TD><center>'
+	end
 	if bag = 1:
 		'<a href="exec:gt ''purses'', ''view_purse_list'',''wardrobe''"><img Height = <<ward_img_hgt>> src="<<FUNC(''$purse_image'', $currentpursetype, currentpursenumber)>>"></a>'
 	else
 		'<a href="exec:gt ''purses'', ''view_purse_list'',''wardrobe''">Search the wardrobe</a>'
 	end
-	'</center></TD><TR><TD><center>'
-	if $pantyworntype ! 'none':
-		'<a href="exec:gs ''panties'', ''remove'' & gt ''wardrobe'', ''main''">Remove</a>'
+	
+	if underwear['type'] = 0:
+		'</center></TD><TR><TD><center>'
+		if $pantyworntype ! 'none':
+			'<a href="exec:gs ''panties'', ''remove'' & gt ''wardrobe'', ''main''">Remove</a>'
+		else
+			'Remove'
+		end
+		'</center></TD><TD><center>'
 	else
-		'Remove'
+		'</center></TD><TR><TD><center>'
+		'<a href="exec:gs ''underwear_bodysuits'', ''remove'' & underwear[''type''] = 0 & gt ''wardrobe'', ''main''">Remove</a>'
+		'</center></TD><TD><center>'
 	end
-	'</center></TD><TD><center>'
 	if $shoeworntype ! 'none':
 		'<a href="exec:gs ''shoes'', ''strip'' & gt ''wardrobe'', ''main''">Remove</a>'
 	else
@@ -133,6 +155,28 @@ if $ARGS[0] = 'main':
 	end
 end
 
+if $ARGS[0] = 'underwear_options':
+	'<center><font color="maroon">Please select an option</font></center>'
+	*nl
+	*nl
+	*nl
+	'<center><a href="exec:gt ''underwear_bodysuits'', ''view_bodysuit_list'', ''wardrobe''"><img src="images/system/icons/clothing/bodysuits.png" height="150"></a></center>'
+	if $ARGS[1] = 'bra' or $ARGS[1] = 'full':
+		*nl
+		*nl
+		*nl
+		'<center><a href="exec:gt ''bras'', ''view_bra_list'', ''wardrobe''"><img src="images/system/icons/clothing/bras.png" height="150"></a></center>'
+	end
+	if $ARGS[1] = 'panties' or $ARGS[1] = 'full':
+		*nl
+		*nl
+		*nl
+		'<center><a href="exec:gt ''panties'', ''view_panty_list'', ''wardrobe''"><img src="images/system/icons/clothing/panties.png" height="150"></a></center>'
+	end
+
+	act 'Return': gt 'wardrobe', 'main'
+end
+
 if $ARGS[0] = 'removeall':
 	gs 'bras', 'remove'
 	gs 'clothing', 'strip'