Browse Source

Merge branch 'master' of https://git.tfgames.site/Kevin_Smarts/glife

* 'master' of https://git.tfgames.site/Kevin_Smarts/glife:
  [changed] layout changes, killvarred temp variables, used + + instead of << >>
  [removed] unneeded spaces
  [fixed] accidentally used a string variable (`$`) instead of an integer
  [fixed] masseuse rehire text always saying 400 rubles instead of the actual pay
  [fixed] Possible to unlock the salon massage work without certifaction. Reported by YanDnepr
  [Added] Sonia post-fall expansion from Nutluck and Sonia variable migration
  [qsrc2tw] added `setup.variableStorageUsage`
  [fixed] wait action and telefon were available even when `menu_off = 1`
  [changed] minor layout changes
  [fixed] changingroom count swim item would set `menu_off = 1` which was not intended
  [fixed] blank screens in the pavlovsk shoplifting stuff
  [fixed] revealing outfits did not get the correct symbol
  [fixed] 600 minutes of metered internet now costs the correct amount of 155 Rubles instead of 115.
  [qsrc2tw] Nicer Savegame-names
  [qsrc2tw] Layout changes: using gridstack is now optional, custom CSS and dedicated mobile interface
Myles Croft (Hooded Silence) 3 months ago
parent
commit
92d82355ae
60 changed files with 1884 additions and 1270 deletions
  1. 1 0
      glife.qproj
  2. 2 2
      locations/Cheatmenu_din.qsrc
  3. 1 1
      locations/artemhome.qsrc
  4. 1 0
      locations/booty_call_sms.qsrc
  5. 2 2
      locations/camera.qsrc
  6. 5 1
      locations/changingroom.qsrc
  7. 111 103
      locations/fuelstation_carwash.qsrc
  8. 1 1
      locations/gdktoilet_mens.qsrc
  9. 10 10
      locations/gschool_break.qsrc
  10. 13 13
      locations/gschool_chats.qsrc
  11. 1 1
      locations/gschool_cheerleading.qsrc
  12. 4 4
      locations/gschool_events.qsrc
  13. 49 49
      locations/gschool_girls_bathroom.qsrc
  14. 33 33
      locations/gschool_gossip.qsrc
  15. 5 5
      locations/gschool_lessonsev1.qsrc
  16. 5 5
      locations/gschool_lessonsev2.qsrc
  17. 2 2
      locations/gschool_lunch.qsrc
  18. 2 2
      locations/gschool_outcast_chats.qsrc
  19. 5 5
      locations/gschool_post_shower.qsrc
  20. 112 112
      locations/gschool_socialchg.qsrc
  21. 2 2
      locations/journal.qsrc
  22. 29 29
      locations/journal_quests.qsrc
  23. 1 1
      locations/nerd_game_night.qsrc
  24. 1 1
      locations/npcstatic1.qsrc
  25. 2 2
      locations/pav_aptcourtev.qsrc
  26. 2 2
      locations/pav_church.qsrc
  27. 46 46
      locations/pav_disco.qsrc
  28. 2 2
      locations/pav_disco_classmates.qsrc
  29. 40 40
      locations/pav_hotelWork.qsrc
  30. 1 1
      locations/pav_lake.qsrc
  31. 22 20
      locations/pav_lake_nude.qsrc
  32. 1 1
      locations/pav_parkev.qsrc
  33. 59 69
      locations/pav_station.qsrc
  34. 3 3
      locations/placer_pav_park.qsrc
  35. 26 26
      locations/post_deliveries.qsrc
  36. 2 2
      locations/pushkin_ballet_init.qsrc
  37. 1 1
      locations/pushkin_ballet_res.qsrc
  38. 2 2
      locations/radapt.qsrc
  39. 3 3
      locations/radchat.qsrc
  40. 6 6
      locations/salon.qsrc
  41. 24 2
      locations/saveupdater.qsrc
  42. 3 3
      locations/shop.qsrc
  43. 4 5
      locations/shoplifting.qsrc
  44. 74 451
      locations/soniadisco.qsrc
  45. 383 0
      locations/soniaev1.qsrc
  46. 574 123
      locations/soniahome.qsrc
  47. 19 17
      locations/stat_display.qsrc
  48. 13 13
      locations/vasilyhome.qsrc
  49. 0 10
      qsrc2tw/tools/QSRC2TW/resources/DebugTools.tw
  50. 17 0
      qsrc2tw/tools/QSRC2TW/resources/Interface/DebugTools.js
  51. 28 0
      qsrc2tw/tools/QSRC2TW/resources/Interface/DebugTools.tw
  52. 1 1
      qsrc2tw/tools/QSRC2TW/resources/Interface/StoryInterface.tw
  53. 37 20
      qsrc2tw/tools/QSRC2TW/resources/Interface/UISettingsDialog.tw
  54. 32 3
      qsrc2tw/tools/QSRC2TW/resources/Interface/UserStyle.js
  55. 17 3
      qsrc2tw/tools/QSRC2TW/resources/Interface/grid/grid.js
  56. 0 0
      qsrc2tw/tools/QSRC2TW/resources/Interface/grid/gridstack-all.js
  57. 0 0
      qsrc2tw/tools/QSRC2TW/resources/Interface/grid/gridstack.min.css
  58. 0 8
      qsrc2tw/tools/QSRC2TW/resources/resources/PassageFooter.tw
  59. 21 1
      qsrc2tw/tools/QSRC2TW/resources/style.css
  60. 21 0
      qsrc2tw/twine-code/misc/savegameNames.js

+ 1 - 0
glife.qproj

@@ -619,6 +619,7 @@
 	<Folder name="Sonia">
 		<Location name="soniadisco"/>
 		<Location name="soniahome"/>
+		<Location name="soniaev1"/>
 	</Folder>
 	<Folder name="Generator">
 		<Location name="placer"/>

+ 2 - 2
locations/Cheatmenu_din.qsrc

@@ -1397,7 +1397,7 @@ $cheatmenu['reputation'] = {
 			'<<$npc_firstname[''A146'']>> <<$npc_lastname[''A146'']>>: <<npc_rel[''A146'']>>  <a href="exec:npc_rel[''A146''] += 10 & dynamic $cheatmenu[''reputation'']">+10</a> <a href="exec:npc_rel[''A146''] -= 10 & dynamic $cheatmenu[''reputation'']">-10</a>'
 			'<<$npc_firstname[''A147'']>> <<$npc_lastname[''A147'']>>: <<npc_rel[''A147'']>>  <a href="exec:npc_rel[''A147''] += 10 & dynamic $cheatmenu[''reputation'']">+10</a> <a href="exec:npc_rel[''A147''] -= 10 & dynamic $cheatmenu[''reputation'']">-10</a>'
 			'<<$npc_firstname[''A148'']>> <<$npc_lastname[''A148'']>>: <<npc_rel[''A148'']>>  <a href="exec:npc_rel[''A148''] += 10 & dynamic $cheatmenu[''reputation'']">+10</a> <a href="exec:npc_rel[''A148''] -= 10 & dynamic $cheatmenu[''reputation'']">-10</a>'
-			if soniaPS = 0:	'<<$npc_firstname[''A25'']>> <<$npc_lastname[''A25'']>>: <<npc_rel[''A25'']>>	<a href="exec:npc_rel[''A25''] += 10 & dynamic $cheatmenu[''reputation'']">+10</a> <a href="exec:npc_rel[''A25''] -= 10 & dynamic $cheatmenu[''reputation'']">-10</a>'
+			if soniaQW['slut'] = 0:	'<<$npc_firstname[''A25'']>> <<$npc_lastname[''A25'']>>: <<npc_rel[''A25'']>>	<a href="exec:npc_rel[''A25''] += 10 & dynamic $cheatmenu[''reputation'']">+10</a> <a href="exec:npc_rel[''A25''] -= 10 & dynamic $cheatmenu[''reputation'']">-10</a>'
 			'<<$npc_firstname[''A139'']>> <<$npc_lastname[''A139'']>>: <<npc_rel[''A139'']>>  <a href="exec:npc_rel[''A139''] += 10 & dynamic $cheatmenu[''reputation'']">+10</a> <a href="exec:npc_rel[''A139''] -= 10 & dynamic $cheatmenu[''reputation'']">-10</a>'
 			'<<$npc_firstname[''A140'']>> <<$npc_lastname[''A140'']>>: <<npc_rel[''A140'']>>  <a href="exec:npc_rel[''A140''] += 10 & dynamic $cheatmenu[''reputation'']">+10</a> <a href="exec:npc_rel[''A140''] -= 10 & dynamic $cheatmenu[''reputation'']">-10</a>'
 		end
@@ -1468,7 +1468,7 @@ $cheatmenu['reputation'] = {
 		if Enable_reputation_outcasts = 1:
 			'<a href="exec:Enable_reputation_outcasts = 0 & dynamic $cheatmenu[''reputation'']">Hide details</a>'
 			'<<$npc_firstname[''A7'']>> <<$npc_lastname[''A7'']>>: <<npc_rel[''A7'']>>	<a href="exec:npc_rel[''A7''] += 10 & dynamic $cheatmenu[''reputation'']">+10</a> <a href="exec:npc_rel[''A7''] -= 10 & dynamic $cheatmenu[''reputation'']">-10</a>'
-			if soniaPS > 0:	'<<$npc_firstname[''A25'']>> <<$npc_lastname[''A25'']>>: <<npc_rel[''A25'']>>	<a href="exec:npc_rel[''A25''] += 10 & dynamic $cheatmenu[''reputation'']">+10</a> <a href="exec:npc_rel[''A25''] -= 10 & dynamic $cheatmenu[''reputation'']">-10</a>'
+			if soniaQW['slut'] > 0:	'<<$npc_firstname[''A25'']>> <<$npc_lastname[''A25'']>>: <<npc_rel[''A25'']>>	<a href="exec:npc_rel[''A25''] += 10 & dynamic $cheatmenu[''reputation'']">+10</a> <a href="exec:npc_rel[''A25''] -= 10 & dynamic $cheatmenu[''reputation'']">-10</a>'
 			if fedormasha = 1:	'<<$npc_firstname[''A5'']>> <<$npc_lastname[''A5'']>>: <<npc_rel[''A5'']>>	<a href="exec:npc_rel[''A5''] += 10 & dynamic $cheatmenu[''reputation'']">+10</a> <a href="exec:npc_rel[''A5''] -= 10 & dynamic $cheatmenu[''reputation'']">-10</a>'
 			'<<$npc_firstname[''A159'']>> <<$npc_lastname[''A159'']>>: <<npc_rel[''A159'']>>  <a href="exec:npc_rel[''A159''] += 10 & dynamic $cheatmenu[''reputation'']">+10</a> <a href="exec:npc_rel[''A159''] -= 10 & dynamic $cheatmenu[''reputation'']">-10</a>'
 		end

+ 1 - 1
locations/artemhome.qsrc

@@ -1257,7 +1257,7 @@ if $ARGS[0] = 'chat':
 		'"I still love you..." he whispers.'
 		'You smile at him. "Are you sure you want to be seen with a whore? Everyone will look down on you too!"'
 		'"I don''t care what others call you, or what they think... I just want to be with you," he tells you.'
-		if soniaPS > 0:
+		if soniaQW['slut'] > 0:
 			'You continue. "You saw what happened to Sonia! She used to get along with everyone, but ever since that night at the disco, they all treat her like dirt! That will happen to me too, I just know it! And you, if people see you near me!"'
 		else
 			'You shake your head sadly. "I know you think that now, but it won''t be the same. People will treat me like dirt, Artem! And they''ll do the same to you for dating a whore!"'

+ 1 - 0
locations/booty_call_sms.qsrc

@@ -403,6 +403,7 @@ if $ARGS[0] = 'new_booty_call':
 			$SMSTree['e2'] = 'its late. text me earlier next time.'
 
 			!! hour - message_received_hour >= 3
+			!! Add daystart as well??
 			$SMSTree['f2'] = 'sorry'
 				$SMSTree['fa3'] = 'didn''t see your message until now'
 					$SMSTree['fa4'] = 'whatsup?'

+ 2 - 2
locations/camera.qsrc

@@ -171,7 +171,7 @@ if $ARGS[0] = 'check_location':
 				gt 'camera', $camera_event
 			end
 		! If they photographed the lake but did not trigger the sonia conditions, offer her
-		elseif $camera_event = 'pav_lake' and camera_found['sonia'] ! 1 and sunWeather = 1 and soniaPS > 0:
+		elseif $camera_event = 'pav_lake' and camera_found['sonia'] ! 1 and sunWeather = 1 and soniaQW['slut'] > 0:
 			gs 'camera', 'pav_lake_sonia', 'describe'
 		end
 	end
@@ -396,7 +396,7 @@ if $ARGS[0] = 'pav_lake':
 	'<center><img src="images/pc/activities/photography/sveta_camera.jpg"></center>'
 	'As you look out over the lake, you realize what a wonderful photo this place would make. You walk around the shore several times until you find the perfect spot and take several pictures before pausing and checking them. Finally, you''re happy with the results, knowing you have something to add to your portfolio.'
 	act 'Put your camera away': gt $loc, $loc_arg
-	if soniaPS > 0 and sunWeather = 1 and temp > 15 and hour > 6 or hour < 22:
+	if soniaQW['slut'] > 0 and sunWeather = 1 and temp > 15 and hour > 6 or hour < 22:
 		'Just as you''re about to put your camera away, you notice a girl sunbathing topless. It takes you a minute to realize that it''s Sonia, and she appears alone. You wonder if she would make a good subject, a take on how innocence can be lost in a cruel world.'
 		gs 'camera', 'pav_lake_sonia'
 	else

+ 5 - 1
locations/changingroom.qsrc

@@ -2,9 +2,10 @@
 
 
 $locclass = 'changingroom'
-menu_off = 1
 
 if $ARGS[0] = 'view_swim_list':
+	menu_off = 1
+	gs 'stat'
 	!! ARGS[1] - Ignore Inhibition
 	!!           0: no
 	!!           1: Partially, overcome through willpower
@@ -131,6 +132,9 @@ end
 
 
 if $ARGS[0] = 'view_swim_item':
+	menu_off = 1
+	gs 'stat'
+
 	!!  ARGS 0 - view_clothing_item
 	!! $ARGS 1 - clothing type
 	!!  ARGS 2 - clothing index

+ 111 - 103
locations/fuelstation_carwash.qsrc

@@ -14,7 +14,7 @@ if $ARGS[0] = 'start':
 	if (cumloc[6] = 1 or cumloc[7] = 1) or cumloc[11] = 1:
 		minut += 5
 		pcs_mood -= 5
-		gs 'fame', 'pav', 'sex', rand(0,2)
+		gs 'fame', 'pav', 'sex', rand(0, 2)
 
 		'The gas station worker chases you away. "At least wash yourself off first, whore!"'
 
@@ -35,7 +35,7 @@ if $ARGS[0] = 'wash':
 
 	! only wearing bimbo or prostitute clothing and looking good can get propositioned by a customer
 	if PCloBimbo = 1 or PCloStyle = 4:
-		'<center><img <<$set_imgh>> src="images/locations/shared/carwash/bimboclean' + rand(1,4) + '.jpg"></center>'
+		'<center><img <<$set_imgh>> src="images/locations/shared/carwash/bimboclean<<rand(1, 4)>>.jpg"></center>'
 
 		minut += 60
 		pcs_mood -= 5
@@ -48,19 +48,18 @@ if $ARGS[0] = 'wash':
 
 			! min chance of 20 percent; max chance of 80 percent; percent chance scales with fame['city_slut'] or fame['pav_slut']
 			! as your reputation increases you will be asked more often
-			skimpyCustomerChance = rand(1, 100)
-			if skimpyCustomerChance <= min(max(20,slut_compare),80):
+			if rand(1, 100) <= min(max(20, slut_compare), 80):
 				'As you finish washing another car, the driver walks up to you to give you a tip. From the way he''s looking at you, it''s obvious he''s interested in something more as well.'
 				! starts off with always doing titsQ when rep is low, as rep increases they may skip a question since they know you will do it anyway
 				! also different people have different tastes so you wont be asked the same thing in the same order every time by every customer that walks up to you
 				carwashscene = rand(1, 100)
-				if carwashscene <= min(max(25,slut_compare),50) and carwashscene >= 25:
+				if carwashscene <= min(max(25, slut_compare), 50) and carwashscene >= 25:
 					gt 'fuelstation_carwash', 'assQ'
-				elseif carwashscene <= min(max(50,slut_compare),65) and carwashscene >= 50:
+				elseif carwashscene <= min(max(50, slut_compare), 65) and carwashscene >= 50:
 					gt 'fuelstation_carwash', 'pussyQ'
-				elseif carwashscene <= min(max(65,slut_compare),85) and carwashscene >= 65:
+				elseif carwashscene <= min(max(65, slut_compare), 85) and carwashscene >= 65:
 					gt 'fuelstation_carwash', 'handQ'
-				elseif carwashscene <= min(max(85,slut_compare),100) and carwashscene >= 85:
+				elseif carwashscene <= min(max(85, slut_compare), 100) and carwashscene >= 85:
 					gt 'fuelstation_carwash', 'blowQ'
 				else
 					gt 'fuelstation_carwash', 'titsQ'
@@ -81,7 +80,7 @@ if $ARGS[0] = 'wash':
 		gs 'sweat', 'add', 2
 		money += 60
 
-		'<center><img <<$set_imgh>> src="images/locations/shared/carwash/regular' + rand(1,4) + '.jpg"></center>'
+		'<center><img <<$set_imgh>> src="images/locations/shared/carwash/regular<<rand(1, 4)>>.jpg"></center>'
 
 		! normal money just for the car washing
 		'You wash the windows of several cars and earn 60 <b>₽</b>.'
@@ -100,7 +99,7 @@ if $ARGS[0] = 'flash_passing':
 end
 
 if $ARGS[0] = 'titsQ':
-	'<center><img <<$set_imgh>> src="images/locations/shared/carwash/bimboclean' + rand(1,4) + '.jpg"></center>'
+	'<center><img <<$set_imgh>> src="images/locations/shared/carwash/bimboclean<<rand(1, 4)>>.jpg"></center>'
 
 	'"Want to earn some more cash, girl? Show me your tits and I''ll give you 50 <b>₽</b>. It''s easy money."'
 
@@ -110,7 +109,7 @@ if $ARGS[0] = 'titsQ':
 end
 
 if $ARGS[0] = 'assQ':
-	'<center><img <<$set_imgh>> src="images/locations/shared/carwash/bimboclean' + rand(1,4) + '.jpg"></center>'
+	'<center><img <<$set_imgh>> src="images/locations/shared/carwash/bimboclean<<rand(1, 4)>>.jpg"></center>'
 
 	'"What a nice ass you have there. Will 50 <b>₽</b> convince you to show it to me?"'
 
@@ -120,7 +119,7 @@ if $ARGS[0] = 'assQ':
 end
 
 if $ARGS[0] = 'pussyQ':
-	'<center><img <<$set_imgh>> src="images/locations/shared/carwash/bimboclean' + rand(1,4) + '.jpg"></center>'
+	'<center><img <<$set_imgh>> src="images/locations/shared/carwash/bimboclean<<rand(1, 4)>>.jpg"></center>'
 
 	'"You look like a cool girl. Let me see your pussy and I''ll give you 50 <b>₽</b>."'
 
@@ -130,7 +129,7 @@ if $ARGS[0] = 'pussyQ':
 end
 
 if $ARGS[0] = 'handQ':
-	'<center><img <<$set_imgh>> src="images/locations/shared/carwash/bimboclean' + rand(1,4) + '.jpg"></center>'
+	'<center><img <<$set_imgh>> src="images/locations/shared/carwash/bimboclean<<rand(1, 4)>>.jpg"></center>'
 
 	'"Could you help me out, girl? It''s getting tight down here in my pants just looking at you. How about you... help me out? I''ll pay you 200 <b>₽</b>."'
 
@@ -140,7 +139,7 @@ if $ARGS[0] = 'handQ':
 end
 
 if $ARGS[0] = 'blowQ':
-	'<center><img <<$set_imgh>> src="images/locations/shared/carwash/bimboclean' + rand(1,4) + '.jpg"></center>'
+	'<center><img <<$set_imgh>> src="images/locations/shared/carwash/bimboclean<<rand(1, 4)>>.jpg"></center>'
 
 	'"Looking hot today, girl! How about you put your mouth to good use? I''ll pay you 200 <b>₽</b>."'
 
@@ -151,7 +150,7 @@ end
 
 if $ARGS[0] = 'refuse':
 	! just being asked can slowly change your inhibitions which will enable a player to eventually agree to the questions above
-	if pcs_inhib < 35: inhib_exp += rand(1,2)
+	if pcs_inhib < 35: inhib_exp += rand(1, 2)
 	pcs_mood += 5
 	gs 'stat'
 
@@ -167,9 +166,8 @@ end
 if $ARGS[0] = 'titsFlash':
 	! chance for using photos or videos
 	if rand(1,100) < 50:
-		i = rand(1,100)
 		! chance of using old pics since there are so many newer pics to choose from
-		if i < 15:
+		if rand(1,100) < 15:
 			if PCloPants > 0:
 				$flash_image = 'images/locations/shared/carwash/pants/titsflash<<rand(1, 2)>>.jpg'
 			else
@@ -189,15 +187,15 @@ if $ARGS[0] = 'titsFlash':
 
 	! text differences depending on whether you were paid, whether you are flashing for a customer or for the cars on the road, and what type of clothing you are wearing
 	if $ARGS[1] = 'Paid':
-		$flash_text[0] = 'You <<iif(PCloSkirt > 0, ''pull down'', ''lift up'')>> your top and show him your breasts for a few seconds.'
+		$flash_text[0] = 'You ' + iif(PCloSkirt > 0, 'pull down', 'lift up') + ' your top and show him your breasts for a few seconds.'
 		$flash_text[1] = 'You quickly cover up and take your money.'
 	else
 		if $ARGS[2] = 'Question':
-			$flash_text[0] = 'You <<iif(PCloSkirt > 0, ''pull down'', ''lift up'')>> your top and show him your breasts for a few seconds. You give your breasts a little shake for him.'
-			$flash_text[1] = 'You <<iif(PCloSkirt > 0, ''lift up'', ''pull down'')>> your top and cover up.'
+			$flash_text[0] = 'You ' + iif(PCloSkirt > 0, 'pull down', 'lift up')   + ' your top and show him your breasts for a few seconds. You give your breasts a little shake for him.'
+			$flash_text[1] = 'You ' + iif(PCloSkirt > 0, 'lift up',   'pull down') + ' your top and cover up.'
 		else
-			$flash_text[0] = 'You <<iif(PCloSkirt > 0, ''pull down'', ''lift up'')>> your top and expose your breasts to the road for a few seconds. A few cars pass by and honk in appreciation as you give your breasts a little shake.'
-			$flash_text[1] = 'You <<iif(PCloSkirt > 0, ''lift up'', ''pull down'')>> your top and cover up.'
+			$flash_text[0] = 'You ' + iif(PCloSkirt > 0, 'pull down', 'lift up')   + ' your top and expose your breasts to the road for a few seconds. A few cars pass by and honk in appreciation as you give your breasts a little shake.'
+			$flash_text[1] = 'You ' + iif(PCloSkirt > 0, 'lift up',   'pull down') + ' your top and cover up.'
 		end
 	end
 
@@ -207,13 +205,13 @@ if $ARGS[0] = 'titsFlash':
 	if $ARGS[1] = 'Paid':
 		money += 50
 		if $region = 'city':
-			gs 'fame', 'city', 'prostitute', rand(0,1)
+			gs 'fame', 'city', 'prostitute', rand(0, 1)
 		elseif $region = 'pav':
-			gs 'fame', 'pav', 'prostitute', rand(0,1)
+			gs 'fame', 'pav', 'prostitute', rand(0, 1)
 		end
 	end
 
-	if pcs_inhib < 30: inhib_exp += rand(2,4)
+	if pcs_inhib < 30: inhib_exp += rand(2, 4)
 	pcs_mood += 5
 	gs 'stat'
 
@@ -265,15 +263,15 @@ if $ARGS[0] = 'assFlash':
 	end
 
 	if $ARGS[1] = 'Paid':
-		$flash_text[0] = 'You <<iif(PCloSkirt > 0, ''lift your <<iif(PCloDress = 1, ''''dress'''', ''''skirt'''')>> up '', ''pull your pants down'')>> and show him your ass for a few seconds.'
+		$flash_text[0] = 'You ' + iif(PCloSkirt > 0, 'lift your ' + iif(PCloDress = 1, 'dress', 'skirt') + ' up', 'pull your pants down') + ' and show him your ass for a few seconds.'
 		$flash_text[1] = 'You quickly cover up and take your money.'
 	else
 		if $ARGS[2] = 'Question':
-			$flash_text[0] = 'You <<iif(PCloSkirt > 0, ''lift your <<iif(PCloDress = 1, ''''dress'''', ''''skirt'''')>> up '', ''pull your pants down'')>> and show him your ass for a few seconds. You give your ass a little shake for him before covering up.'
-			$flash_text[1] = 'You <<iif(PCloSkirt > 0, ''pull your <<iif(PCloDress = 1, ''''dress'''', ''''skirt'''')>> down '', ''pull your pants up'')>> and cover up.'
+			$flash_text[0] = 'You ' + iif(PCloSkirt > 0, 'lift your ' + iif(PCloDress = 1, 'dress', 'skirt') + ' up',   'pull your pants down') + ' and show him your ass for a few seconds. You give your ass a little shake for him before covering up.'
+			$flash_text[1] = 'You ' + iif(PCloSkirt > 0, 'pull your ' + iif(PCloDress = 1, 'dress', 'skirt') + ' down', 'pull your pants up')   + ' and cover up.'
 		else
-			$flash_text[0] = 'You <<iif(PCloSkirt > 0, ''lift your <<iif(PCloDress = 1, ''''dress'''', ''''skirt'''')>> up '', ''pull your pants down'')>> and expose your ass to the road for a few seconds. A few cars pass by and honk in appreciation as you give your ass a little shake.'
-			$flash_text[1] = 'You <<iif(PCloSkirt > 0, ''pull your <<iif(PCloDress = 1, ''''dress'''', ''''skirt'''')>> down '', ''pull your pants up'')>> and cover up.'
+			$flash_text[0] = 'You ' + iif(PCloSkirt > 0, 'lift your ' + iif(PCloDress = 1, 'dress', 'skirt') + ' up',   'pull your pants down') + ' and expose your ass to the road for a few seconds. A few cars pass by and honk in appreciation as you give your ass a little shake.'
+			$flash_text[1] = 'You ' + iif(PCloSkirt > 0, 'pull your ' + iif(PCloDress = 1, 'dress', 'skirt') + ' down', 'pull your pants up')   + ' and cover up.'
 		end
 	end
 
@@ -283,21 +281,21 @@ if $ARGS[0] = 'assFlash':
 	if $ARGS[1] = 'Paid':
 		money += 50
 		if $region = 'city':
-			gs 'fame', 'city', 'prostitute', rand(0,1)
+			gs 'fame', 'city', 'prostitute', rand(0, 1)
 		elseif $region = 'pav':
-			gs 'fame', 'pav', 'prostitute', rand(0,1)
+			gs 'fame', 'pav', 'prostitute', rand(0, 1)
 		end
 	end
-	if pcs_inhib < 30: inhib_exp += rand(2,4)
+	if pcs_inhib < 30: inhib_exp += rand(2, 4)
 	pcs_mood += 5
 	gs 'stat'
 
 	!if (bimbolevel >= 1 or pcs_horny >= 10) and (PCloBimbo = 1 or PCloStyle = 4) and $ARGS[2] = 'Question':
 	if (bimbolevel >= 1 or pcs_horny >= 10) and (PCloBimbo = 1 or PCloStyle = 4) and $ARGS[2] = 'Question':
-		carwashscene = rand(1,100)
-		if carwashscene <= min(max(50,slut_compare),75) and carwashscene >= 50:
+		carwashscene = rand(1, 100)
+		if carwashscene <= min(max(50, slut_compare), 75) and carwashscene >= 50:
 			act 'Continue': gt 'fuelstation_carwash', 'handQ'
-		elseif carwashscene <= min(max(75,slut_compare),100) and carwashscene >= 75:
+		elseif carwashscene <= min(max(75, slut_compare), 100) and carwashscene >= 75:
 			act 'Continue': gt 'fuelstation_carwash', 'blowQ'
 		else
 			act 'Continue': gt 'fuelstation_carwash', 'pussyQ'
@@ -315,15 +313,15 @@ end
 if $ARGS[0] = 'pussyFlash':
 	!! Flash image is handled the the 'flash' function
 	if $ARGS[1] = 'Paid':
-		$flash_text[0] = 'You <<iif(PCloSkirt > 0, ''lift your <<iif(PCloDress = 1, ''''dress'''', ''''skirt'''')>> up '', ''pull your pants down'')>> and show him your pussy for a few seconds.'
+		$flash_text[0] = 'You ' + iif(PCloSkirt > 0, 'lift your ' + iif(PCloDress = 1, 'dress', 'skirt') + ' up ', 'pull your pants down') + ' and show him your pussy for a few seconds.'
 		$flash_text[1] = 'You quickly cover up and take your money.'
 	else
 		if $ARGS[2] = 'Question':
-			$flash_text[0] = 'You <<iif(PCloSkirt > 0, ''lift your <<iif(PCloDress = 1, ''''dress'''', ''''skirt'''')>> up '', ''pull your pants down'')>> and show him your pussy for a few seconds, rubbing your clit a little for him.'
-			$flash_text[1] = 'You <<iif(PCloSkirt > 0, ''pull your <<iif(PCloDress = 1, ''''dress'''', ''''skirt'''')>> down '', ''pull your pants up'')>> and cover up.'
+			$flash_text[0] = 'You ' + iif(PCloSkirt > 0, 'lift your ' + iif(PCloDress = 1, 'dress', 'skirt') + ' up',   'pull your pants down') + ' and show him your pussy for a few seconds, rubbing your clit a little for him.'
+			$flash_text[1] = 'You ' + iif(PCloSkirt > 0, 'pull your ' + iif(PCloDress = 1, 'dress', 'skirt') + ' down', 'pull your pants up')   + ' and cover up.'
 		else
-			$flash_text[0] = 'You <<iif(PCloSkirt > 0, ''lift your <<iif(PCloDress = 1, ''''dress'''', ''''skirt'''')>> up '', ''pull your pants down'')>> and expose your pussy to the road for a few seconds. A few cars pass by and honk in appreciation as you rub your clit a little.'
-			$flash_text[1] = 'You <<iif(PCloSkirt > 0, ''pull your <<iif(PCloDress = 1, ''''dress'''', ''''skirt'''')>> down '', ''pull your pants up'')>> and cover up.'
+			$flash_text[0] = 'You ' + iif(PCloSkirt > 0, 'lift your ' + iif(PCloDress = 1, 'dress', 'skirt') + ' up',   'pull your pants down') + ' and expose your pussy to the road for a few seconds. A few cars pass by and honk in appreciation as you rub your clit a little.'
+			$flash_text[1] = 'You ' + iif(PCloSkirt > 0, 'pull your ' + iif(PCloDress = 1, 'dress', 'skirt') + ' down', 'pull your pants up')   + ' and cover up.'
 		end
 	end
 
@@ -339,14 +337,14 @@ if $ARGS[0] = 'pussyFlash':
 		end
 	end
 
-	if pcs_inhib < 40: inhib_exp += rand(4,6)
+	if pcs_inhib < 40: inhib_exp += rand(4, 6)
 	pcs_mood += 5
 	gs 'stat'
 
 	!if (bimbolevel >= 1 or pcs_horny >= 15) and (PCloBimbo = 1 or PCloStyle = 4) and $ARGS[2] = 'Question':
 	if (bimbolevel >= 1 or pcs_horny >= 15) and (PCloBimbo = 1 or PCloStyle = 4) and $ARGS[2] = 'Question':
-		carwashscene = rand(1,100)
-		if carwashscene <= min(max(60,slut_compare),100) and carwashscene >= 60:
+		carwashscene = rand(1, 100)
+		if carwashscene <= min(max(60, slut_compare), 100) and carwashscene >= 60:
 			act 'Continue': gt 'fuelstation_carwash', 'blowQ'
 		else
 			act 'Continue': gt 'fuelstation_carwash', 'handQ'
@@ -380,14 +378,13 @@ if $ARGS[0] = 'handjob':
 	gs 'stat'
 
 	if rand(1, 100) < 50:
-		i = rand(1,2)
-		if i = 1:
+		if rand(0, 1) = 0:
 			'<center><img <<$set_imgh>> src="images/shared/sex/handjob/hand.jpg"></center>'
 		else
 			'<center><img <<$set_imgh>> src="images/shared/sex/handjob/hj.jpg"></center>'
 		end
 	else
-		i = rand(0,2)
+		i = rand(0, 2)
 		if i = 0:
 			'<center><video autoplay loop src="images/shared/sex/handjob/hj<<i>>.mp4"></video></center>'
 		else
@@ -414,7 +411,7 @@ end
 ! $ARGS[2] = whether this act came from a customer question or already giving a customer a handjob
 if $ARGS[0] = 'blowjob':
 	if $ARGS[2] = 'Question':
-		gs 'npcgeneratec', 0, 'gas station customer', rand(18,40)
+		gs 'npcgeneratec', 0, 'gas station customer', rand(18, 40)
 		gs 'boyStat', $npclastgenerated
 	end
 
@@ -428,14 +425,14 @@ if $ARGS[0] = 'blowjob':
 	elseif $ARGS[1] = 'Free':
 		gs 'fame', 'pav', 'sex', 2
 	end
-	if pcs_inhib < 50: inhib_exp += rand(6,8)
+	if pcs_inhib < 50: inhib_exp += rand(6, 8)
 	pcs_mood += 5
 	gs 'stat'
 
-	if rand(1,100) < 50:
-		'<center><img <<$set_imgh>> src="images/locations/shared/carwash/sex/blowjob' + rand(1,4) + '.jpg"></center>'
+	if rand(1, 100) < 50:
+		'<center><img <<$set_imgh>> src="images/locations/shared/carwash/sex/blowjob<<rand(1, 4)>>.jpg"></center>'
 	else
-		'<center><video autoplay loop src="images/locations/shared/carwash/sex/blowjob' + rand(1,3) + '.mp4"></video></center>'
+		'<center><video autoplay loop src="images/locations/shared/carwash/sex/blowjob<<rand(1, 3)>>.mp4"></video></center>'
 	end
 
 	if $ARGS[2] = 'Question':
@@ -467,7 +464,7 @@ if $ARGS[0] = 'blowjob':
 			act 'Offer your ass': gt 'fuelstation_carwash', 'fuckAnal', 'Paid'
 		end
 	end
-	act 'Suck harder to make him cum':gt 'fuelstation_carwash', 'blowjobEndQ'
+	act 'Suck harder to make him cum': gt 'fuelstation_carwash', 'blowjobEndQ'
 end
 
 ! $ARGS[1] = whether you got paid for this
@@ -482,14 +479,14 @@ if $ARGS[0] = 'fuckPussy':
 	elseif $ARGS[1] = 'Free':
 		gs 'fame', 'pav', 'sex', 4
 	end
-	if pcs_inhib < 60: inhib_exp += rand(14,16)
+	if pcs_inhib < 60: inhib_exp += rand(14, 16)
 	pcs_mood += 10
 	gs 'stat'
 
-	if rand(1,100) < 50:
-		'<center><img <<$set_imgh>> src="images/locations/shared/carwash/sex/fuckpussy' + rand(1,4) + '.jpg"></center>'
+	if rand(1, 100) < 50:
+		'<center><img <<$set_imgh>> src="images/locations/shared/carwash/sex/fuckpussy<<rand(1, 4)>>.jpg"></center>'
 	else
-		'<center><video autoplay loop src="images/locations/shared/carwash/sex/fuckpussy' + rand(1,4) + '.mp4"></video></center>'
+		'<center><video autoplay loop src="images/locations/shared/carwash/sex/fuckpussy<<rand(1, 4)>>.mp4"></video></center>'
 	end
 
 	if $ARGS[1] = 'Paid':
@@ -516,14 +513,14 @@ if $ARGS[0] = 'fuckAnal':
 	elseif $ARGS[1] = 'Free':
 		gs 'fame', 'pav', 'sex', 4
 	end
-	if pcs_inhib < 60: inhib_exp += rand(14,16)
+	if pcs_inhib < 60: inhib_exp += rand(14, 16)
 	pcs_mood += 10
 	gs 'stat'
 
-	if rand(1,100) < 50:
-		'<center><img <<$set_imgh>> src="images/locations/shared/carwash/sex/fuckanal' + rand(1,4) + '.jpg"></center>'
+	if rand(1, 100) < 50:
+		'<center><img <<$set_imgh>> src="images/locations/shared/carwash/sex/fuckanal<<rand(1, 4)>>.jpg"></center>'
 	else
-		'<center><video autoplay loop src="images/locations/shared/carwash/sex/fuckanal' + rand(1,4) + '.mp4"></video></center>'
+		'<center><video autoplay loop src="images/locations/shared/carwash/sex/fuckanal<<rand(1, 4)>>.mp4"></video></center>'
 	end
 
 	gs 'arousal', 'auto_lube', 'anal'
@@ -536,8 +533,8 @@ if $ARGS[0] = 'fuckAnal':
 	end
 	gs 'stat'
 
-	rapePussyChance = rand(1,100)
-	if rapePussyChance <= min(max(1,slut_compare),20):
+	rapePussyChance = rand(1, 100)
+	if rapePussyChance <= min(max(1, slut_compare), 20):
 		act 'Continue': gt 'fuelstation_carwash', 'rapePussy'
 	else
 		act 'Continue': gt 'fuelstation_carwash', 'analEndQ'
@@ -545,8 +542,7 @@ if $ARGS[0] = 'fuckAnal':
 end
 
 if $ARGS[0] = 'rapePussy':
-	i = rand(1,5)
-	'<center><video autoplay loop src="images/locations/shared/carwash/sex/hardanal<<i>>.mp4"></video></center>'
+	'<center><video autoplay loop src="images/locations/shared/carwash/sex/hardanal<<rand(1, 5)>>.mp4"></video></center>'
 
 	'The man fucks your ass furiously, taking no heed of your painful moans. As you try to move away to limit the depth he can reach in your ass, he slaps your ass hard.'
 	'"Stop moving, bitch! Who do you think you are that you can tell me what to do?!" he shouts.'
@@ -554,8 +550,7 @@ if $ARGS[0] = 'rapePussy':
 	if pcs_vag = 0:
 		'He gropes your ass, lifts it up and suddenly spots your hymen.'
 		'"Wait, you''re a virgin?! Such a tease and still a virgin!"'
-		rapeAnyway = rand(1,100)
-		if rapeAnyway <= min(max(1,slut_compare),50):
+		if rand(1, 100) <= min(max(1, slut_compare), 50):
 			'"It would have happened sooner or later anyway, virgin slut. Now enjoy and remember this moment; I know I will!"'
 			act 'Continue': gt 'fuelstation_carwash', 'rapePussyYes', 'virgin'
 		else
@@ -569,9 +564,9 @@ end
 
 ! $ARGS[1] = whether you were a virgin before this or not
 if $ARGS[0] = 'rapePussyYes':
-	inhib_exp += rand(10,20)
+	inhib_exp += rand(10, 20)
 
-	'<center><video autoplay loop src="images/locations/shared/carwash/sex/pussytoanal' + rand(1,3) + '.mp4"></video></center>'
+	'<center><video autoplay loop src="images/locations/shared/carwash/sex/pussytoanal<<rand(1, 3)>>.mp4"></video></center>'
 
 	if $ARGS[1] = 'virgin':
 		pcs_mood -= 30
@@ -604,13 +599,13 @@ end
 
 ! $ARGS[1] = whether this was rape or not
 if $ARGS[0] = 'vaginaCum':
-	if pcs_inhib < 40: inhib_exp += rand(4,6)
+	if pcs_inhib < 40: inhib_exp += rand(4, 6)
 	pcs_vag += 1
 	pain['vaginal'] += 4
 	gs 'cum_call', ''
 	gs 'stat'
 
-	'<center><video autoplay loop src="images/locations/shared/carwash/sex/cumpussy' + rand(1,5) + '.mp4"></video></center>'
+	'<center><video autoplay loop src="images/locations/shared/carwash/sex/cumpussy<<rand(1, 5)>>.mp4"></video></center>'
 
 	if $ARGS[1] = 'consensual':
 		pcs_mood += 20
@@ -627,7 +622,7 @@ if $ARGS[0] = 'vaginaCum':
 end
 
 if $ARGS[0] = 'assCum':
-	if pcs_inhib < 40: inhib_exp += rand(4,6)
+	if pcs_inhib < 40: inhib_exp += rand(4, 6)
 	minut += 5
 	pcs_mood += 10
 	pcs_ass += 1
@@ -635,7 +630,7 @@ if $ARGS[0] = 'assCum':
 	gs 'cum_call', 'anus'
 	gs 'stat'
 
-	'<center><video autoplay loop src="images/locations/shared/carwash/sex/cumanal' + rand(1,2) + '.mp4"></video></center>'
+	'<center><video autoplay loop src="images/locations/shared/carwash/sex/cumanal<<rand(1, 2)>>.mp4"></video></center>'
 	'You let him cum inside your ass. A pleasant warmth fills your insides as he shoots his load deep inside you. When he pulls out, some of it leaks out of you before you can tighten your worn out anus.'
 	gs 'arousal', 'end'
 	gs 'stat'
@@ -651,15 +646,15 @@ if $ARGS[0] = 'handjobEndQ':
 end
 
 if $ARGS[0] = 'handjobEndHands':
-	if pcs_inhib < 30: inhib_exp += rand(2,4)
+	if pcs_inhib < 30: inhib_exp += rand(2, 4)
 	pcs_mood += 5
 	gs 'cum_call', 'hands'
 	gs 'stat'
 
-	if rand(1,100) < 30:
-		'<center><video autoplay loop src="images/shared/sex/cum/handjob/hand0,' + rand(0,1) + '.mp4"></video></center>'
+	if rand(1, 100) < 30:
+		'<center><video autoplay loop src="images/shared/sex/cum/handjob/hand0,<<rand(0, 1)>>.mp4"></video></center>'
 	else
-		'<center><img <<$set_imgh>> src="images/shared/sex/cum/handjob/hand' + rand(1,2) + '.jpg"></center>'
+		'<center><img <<$set_imgh>> src="images/shared/sex/cum/handjob/hand<<rand(1, 2)>>.jpg"></center>'
 	end
 
 	'When the man starts cumming, you quickly point his cock away from your face. Your hands are covered in cum by the time he''s done.'
@@ -679,15 +674,15 @@ end
 
 ! $ARGS[1] = whether his cock was inside or outside of you before he cums on your face
 if $ARGS[0] = 'blowjobEndFace':
-	if pcs_inhib < 30: inhib_exp += rand(2,4)
+	if pcs_inhib < 30: inhib_exp += rand(2, 4)
 	pcs_mood += 5
 	gs 'cum_call', 'face'
 	gs 'stat'
 
-	if rand(1,100) < 30:
-		'<center><video autoplay loop src="images/locations/shared/carwash/sex/cumface' + rand(1,2) + '.mp4"></video></center>'
+	if rand(1, 100) < 30:
+		'<center><video autoplay loop src="images/locations/shared/carwash/sex/cumface<<rand(1,2)>>.mp4"></video></center>'
 	else
-		'<center><img <<$set_imgh>> src="images/locations/shared/carwash/sex/cumface' + rand(1,4) + '.jpg"></center>'
+		'<center><img <<$set_imgh>> src="images/locations/shared/carwash/sex/cumface<<rand(1,4)>>.jpg"></center>'
 	end
 
 	if $ARGS[1] = 'outside':
@@ -707,8 +702,8 @@ if $ARGS[0] = 'blowjobEndMouth':
 	gs 'cum_call', 'mouth', $boy
 	gs 'stat'
 
-	if rand(1,100) < 60:
-		'<center><img <<$set_imgh>> src="images/locations/shared/carwash/sex/cummouth' + rand(1,4) + '.jpg"></center>'
+	if rand(1, 100) < 60:
+		'<center><img <<$set_imgh>> src="images/locations/shared/carwash/sex/cummouth<<rand(1, 4)>>.jpg"></center>'
 	else
 		'<center><video autoplay loop src="images/locations/shared/carwash/sex/cummouth1.mp4"></video></center>'
 	end
@@ -728,12 +723,12 @@ if $ARGS[0] = 'blowjobEndMouth':
 end
 
 if $ARGS[0] = 'blowjobEndMouthSwallow':
-	if pcs_inhib < 40: inhib_exp += rand(4,6)
+	if pcs_inhib < 40: inhib_exp += rand(4, 6)
 	swallow += 1
 	pcs_mood += 10
 	gs 'stat'
 
-	'<center><img <<$set_imgh>> src="images/locations/shared/carwash/sex/swallow' + rand(1,4) + '.jpg"></center>'
+	'<center><img <<$set_imgh>> src="images/locations/shared/carwash/sex/swallow<<rand(1, 4)>>.jpg"></center>'
 	'You gulp down the mouthful of cum and present your tongue to him.'
 	'The man smiles and slaps you mildly on the face. "What a nice young slut you are. Next time I need a refill, I''ll be sure to stop by."'
 	stat['swallow'] += 1
@@ -744,11 +739,11 @@ if $ARGS[0] = 'blowjobEndMouthSwallow':
 end
 
 if $ARGS[0] = 'blowjobEndMouthSpit':
-	if pcs_inhib < 30: inhib_exp += rand(2,4)
+	if pcs_inhib < 30: inhib_exp += rand(2, 4)
 	gs 'stat'
 
-	if rand(1,100) > 50:
-		'<center><img <<$set_imgh>> src="images/locations/shared/carwash/sex/spit' + rand(1,3) + '.jpg"></center>'
+	if rand(1, 100) > 50:
+		'<center><img <<$set_imgh>> src="images/locations/shared/carwash/sex/spit<<rand(1, 3)>>.jpg"></center>'
 	else
 		'<center><video autoplay loop src="images/locations/shared/carwash/sex/spit1.mp4"></video></center>'
 	end
@@ -764,8 +759,7 @@ if $ARGS[0] = 'runback':
 	! runSuccess uses a simpler version of the formula used with carwashscene
 	! just based on strength and agility; uses whichever is higher to try and run away
 	! min 25 percent chance; max 75 percent chance for this initial getaway
-	runSuccess = rand(1,100)
-	if runSuccess <= min(max(25,pcs_stren,pcs_agil),75):
+	if rand(1, 100) <= min(max(25, pcs_stren, pcs_agil), 75):
 		'<center><img <<$set_imgh>> src="images/locations/gadukino/village/turn_back.jpg"></center>'
 		'You manage to escape his grasp and take a quick look behind you to make sure he''s not following you before heading back to the gas station.'
 		gs 'arousal', 'end'
@@ -787,10 +781,13 @@ if $ARGS[0] = 'runback':
 		! these values are based off of the cheat menu values for players who turn off these stats as they can never go below 35
 		gs 'willpower', 'skill', 'resist', 'stren_lvl'
 		will_cost = (will_cost * 3) / 2
-		if will_cost <= pcs_willpwr:
-			act 'Push him off and escape (<<will_cost>> Willpower)': gs 'willpower', 'pay', 'resist' & gt 'fuelstation_carwash', 'fight'
-		else
+		if pcs_willpwr < will_cost:
 			act 'Push him off and escape (<font color="red"><<will_cost>> Willpower</font>)': '<br><font color="red">You don''t have enough willpower to use this action.</font>'
+		else
+			act 'Push him off and escape (<<will_cost>> Willpower)':
+				gs 'willpower', 'pay', 'resist'
+				gt 'fuelstation_carwash', 'fight'
+			end
 		end
 	end
 end
@@ -809,7 +806,7 @@ end
 
 if $ARGS[0] = 'punish':
 	! once again punishType uses the same logic as carwashscene for dynamic choices
-	punishType = rand(1,100)
+	punishType = rand(1, 100)
 	if punishType <= min(max(50,slut_compare),75) and punishType >= 50:
 		gt 'fuelstation_carwash', 'punishAnal'
 	elseif punishType <= min(max(75,slut_compare),100) and punishType >= 75:
@@ -822,7 +819,7 @@ end
 if $ARGS[0] = 'punishSpank':
 	pcs_horny = 0
 	pcs_mood -= 10
-	inhib_exp += rand(2,4)
+	inhib_exp += rand(2, 4)
 	pain['asscheeks'] += 5
 	gs 'stat'
 
@@ -839,12 +836,11 @@ if $ARGS[0] = 'punishAnal':
 	pcs_horny = 0
 	pcs_mood -= 20
 	pain['asshole'] += 6
-	inhib_exp += rand(5,10)
+	inhib_exp += rand(5, 10)
 	gs 'cum_call', 'anus'
 	gs 'stat'
 
-	i = rand(1,3)
-	'<center><video autoplay loop src="images/locations/shared/carwash/sex/punishanal<<i>>.mp4"></video></center>'
+	'<center><video autoplay loop src="images/locations/shared/carwash/sex/punishanal<<rand(1, 3)>>.mp4"></video></center>'
 	'The angry man drags you to a more secluded area, bends you over and sticks a finger in your ass.'
 	'Your anus fully exposed, he starts fucking it ruthlessly.'
 	'After half an hour of rough assfucking, he releases his grip on you so you can finally crawl away, your aching ass sore from the brutal penetration.'
@@ -860,7 +856,7 @@ if $ARGS[0] = 'punishPussyQ':
 	if pcs_vag = 0:
 		'"Wait, you''re a virgin?! Such a slutty tease and you''re still a virgin?"'
 
-		penetrate = rand (1,100)
+		penetrate = rand (1, 100)
 		if penetrate <= min(max(50,slut_compare),75) and penetrate >= 50:
 			'"I''ll spare your virginity, but you''re still getting fucked. Sluts have more than one hole for a reason, right?"'
 
@@ -884,11 +880,11 @@ end
 if $ARGS[0] = 'punishPussy':
 	pcs_horny = 0
 	pain['vaginal'] += 4
-	inhib_exp += rand(5,10)
+	inhib_exp += rand(5, 10)
 	gs 'cum_call', ''
 	gs 'stat'
 
-	'<center><video autoplay loop src="images/locations/shared/carwash/sex/punishpussy' + rand(1,5) + '.mp4"></video></center>'
+	'<center><video autoplay loop src="images/locations/shared/carwash/sex/punishpussy<<rand(1, 5)>>.mp4"></video></center>'
 
 	if $ARGS[1] = 'virgin':
 		'Your pussy fully exposed, he slowly inserts his cock inside you. He pushes right up against your hymen, savoring the moment. Suddenly, you feel your hymen break and know your virginity is now gone forever.'
@@ -908,8 +904,7 @@ end
 !! SM it was too hard to get abducted so remove old check against strength/agility, now only checks against slut reputation
 !! minimum chance of 1% maximum chance of 90% to be abducted
 if $ARGS[0] = 'punishEnd':
-	abductionChance = min(max(1,slut_compare),180)/2
-	if abductionChance >= rand(1,100):
+	if rand(1, 100) <= min(max(1, slut_compare), 180):
 		'Your perpetrator isn''t done with you, however.'
 		'He catches you again, drags you to his car and pushes you into the trunk...'
 		'You have a feeling this won''t go well for you...'
@@ -921,5 +916,18 @@ if $ARGS[0] = 'punishEnd':
 	end
 end
 
+
+
+
+
+
+
+!! cleanup
+killvar 'carwashscene'
+killvar 'punishType'
+killvar 'penetrate'
+
+
+
 --- fuelstation_carwash ---------------------------------
 

+ 1 - 1
locations/gdktoilet_mens.qsrc

@@ -140,7 +140,7 @@ if $ARGS[0] = 'mens_entrance_events':
 				act 'Leave': gt 'gdktoilet', 'start'
 			end
 		end
-	elseif temp >= 50 and temp <=79 and soniaPS >= 1 and hour >= 20 and hour <=23:
+	elseif temp >= 50 and temp <=79 and soniaQW['slut'] >= 1 and hour >= 20 and hour <=23:
 		pcs_horny += 5
 		minut += 5
 		*clr & cla

+ 10 - 10
locations/gschool_break.qsrc

@@ -463,22 +463,22 @@ if $ARGS[0] = 'boys_restroom_events':
 			'You glance at him as you walk to the sinks. "Shut up, I just need to use a mirror. It''s not like it''s hurting you." you tell him as you take a look at yourself in the mirror, checking your hair and makeup.'
 			gs 'gschool_break', 'restroom_actions'
 		end
-	elseif boys_event_rand = 3 and soniaPS >= 3:
-		if soniaPS = 3:
+	elseif boys_event_rand = 3 and soniaQW['slut'] >= 3:
+		if soniaQW['slut'] = 3:
 			soniasexrand = 1
-		elseif soniaPS = 4:
+		elseif soniaQW['slut'] = 4:
 			soniasexrand = rand(1,2)
-		elseif soniaPS = 5:
+		elseif soniaQW['slut'] = 5:
 			soniasexrand = rand(1,3)
 		end
-		if soniasextime >= 3 and soniaPS = 3:
-			soniaPS = 4 & soniasextime = 0
-		elseif soniasextime >= 5 and soniaPS = 4:
-			soniaPS = 5 & soniasextime = 0
+		if soniaQW['sextime'] >= 3 and soniaQW['slut'] = 3:
+			soniaQW['slut'] = 4 & soniaQW['sextime'] = 0
+		elseif soniaQW['sextime'] >= 5 and soniaQW['slut'] = 4:
+			soniaQW['slut'] = 5 & soniaQW['sextime'] = 0
 		end
 		if soniasexrand = 1:
 			*clr & cla
-			if soniaPS < 5:soniasextime += 1
+			if soniaQW['slut'] < 5:soniaQW['sextime'] += 1
 			gs 'stat'
 			'<center><video autoplay loop src="images/locations/pavlovsk/school/bathroom/sex/soniabj.mp4"></video></center>'
 			'You go to the boys restroom and see Sonia on her knees with an open blouse and a cock in her mouth, enthusiastically deepthroating a boy you''ve never seen before.'
@@ -537,7 +537,7 @@ if $ARGS[0] = 'boys_restroom_events':
 		elseif soniasexrand = 2:
 			*clr & cla
 			pcs_horny += 15
-			if soniaPS < 5:soniasextime += 1
+			if soniaQW['slut'] < 5:soniaQW['sextime'] += 1
 			gs'stat'
 			'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/girl/sonia/sex/school/sonia.school1,'+rand(0,3)+'.jpg"></center>'
 			'When you enter the restroom, you see Sonia bent over with her skirt hiked up and her panties around her ankles, getting fucked from behind by some guy you''ve never seen before. She''s is moaning like a wanton whore and seems to really be enjoying the pounding the boy is giving her. Neither of them seem to have noticed you yet.'

+ 13 - 13
locations/gschool_chats.qsrc

@@ -44,7 +44,7 @@ if $ARGS[0] = 'nerds':
 				if PCloInhibit >= 30 or PCloTopCut = 4:
 				grupvalue[3] -= 1
 					gs 'gschool_socialchg', 'group_rel_change', 'nerds', -1
-					if soniaPS > 0: gs 'npc_relationship', 'modify', 'A25', 'like'
+					if soniaQW['slut'] > 0: gs 'npc_relationship', 'modify', 'A25', 'like'
 					gs 'npc_relationship', 'modify', 'A159', 'like'
 					if grupTipe = 3:
 						'You enter the classroom that you and your fellow nerds like to hang out in and find them, as usual, all gathered around a table talking and engaging in various hobby projects. A few of them look up as you walk closer. Feofan and Artem are struggling to conceal their disapproving stares about your chosen uniform while Julia''s eyes seem to linger on your attire for just a bit longer; you don''t feel her gaze is all that welcoming either.'
@@ -76,7 +76,7 @@ if $ARGS[0] = 'nerds':
 				if PCloInhibit >= 35 or PCloTopCut = 4:
 					grupvalue[3] -= 1
 					gs 'gschool_socialchg', 'group_rel_change', 'nerds', -1
-					if soniaPS > 0: gs 'npc_relationship', 'modify', 'A25', 'like'
+					if soniaQW['slut'] > 0: gs 'npc_relationship', 'modify', 'A25', 'like'
 					gs 'npc_relationship', 'modify', 'A159', 'like'
 					if grupTipe = 3:
 						'You enter the classroom that you and your fellow nerds like to hang out in and find them, as usual, all gathered around a table talking and engaging in various hobby projects. A few of them look up as you walk closer. Feofan and Artem are struggling to conceal their disapproving stares about your chosen uniform while Julia''s eyes seem to linger on your attire for just a bit longer; you don''t feel her gaze is all that welcoming either.'
@@ -95,7 +95,7 @@ if $ARGS[0] = 'nerds':
 				else
 					grupvalue[3] -= 1
 					gs 'gschool_socialchg', 'group_rel_change', 'nerds', -1
-					if soniaPS > 0: gs 'npc_relationship', 'modify', 'A25', 'like'
+					if soniaQW['slut'] > 0: gs 'npc_relationship', 'modify', 'A25', 'like'
 					gs 'npc_relationship', 'modify', 'A159', 'like'
 					if grupTipe = 3:
 						'You enter the classroom that you and your fellow nerds like to hang out in and find them, as usual, all gathered around a table talking and engaging in various hobby projects. A few of them look up as you walk closer. Feofan and Artem are struggling to conceal their disapproving stares about your chosen uniform while Julia''s eyes seem to linger on your attire for just a bit longer; you don''t feel her gaze is all that welcoming either.'
@@ -111,7 +111,7 @@ if $ARGS[0] = 'nerds':
 				gs 'gschool_socialchg', 'group_rel_change', 'nerds', -5
 				gs 'npc_relationship', 'modify', 'A16', 3
 				gs 'npc_relationship', 'modify', 'A152', 3
-				if soniaPS > 0: gs 'npc_relationship', 'modify', 'A25', 'love'
+				if soniaQW['slut'] > 0: gs 'npc_relationship', 'modify', 'A25', 'love'
 				gs 'npc_relationship', 'modify', 'A159', 'like'
 				if grupTipe = 3:
 					'When you walk in, the room goes dead silent and everyone stares at you. Several of the nerds blush at the scandalous display of flesh from your uniform, or lack there of before Feofan finally speaks up. "What are you wearing?" Natasha butts in. "A better questions is why?" As you get closer, the nerds all share looks before looking at Feofan, who swallows. "Maybe you should go hang out somewhere else or go change or something?" They all close ranks, making sure not to give you space to walk up and talk to them. The outcasts, on the other hand, don''t seem to care as much.'
@@ -306,7 +306,7 @@ if $ARGS[0] = 'cooljocks':
 				gs 'npc_relationship', 'modify', 'A19', -1
 				gs 'npc_relationship', 'modify', 'A22', 'dislike'
 				gs 'npc_relationship', 'modify', 'A23', 'dislike'
-				if soniaPS = 0: gs 'npc_relationship', 'modify', 'A25', -1
+				if soniaQW['slut'] = 0: gs 'npc_relationship', 'modify', 'A25', -1
 				gs 'npc_relationship', 'modify', 'A139', -1
 				gs 'npc_relationship', 'modify', 'A140', -1
 				gs 'npc_relationship', 'modify', 'A147', -1
@@ -335,7 +335,7 @@ if $ARGS[0] = 'cooljocks':
 					gs 'npc_relationship', 'modify', 'A17', 'dislike'
 					gs 'npc_relationship', 'modify', 'A18', 'hate'
 					gs 'npc_relationship', 'modify', 'A22', 'hate'
-					if soniaPS = 0: gs 'npc_relationship', 'modify', 'A25', 'like'
+					if soniaQW['slut'] = 0: gs 'npc_relationship', 'modify', 'A25', 'like'
 					gs 'npc_relationship', 'modify', 'A139', 'dislike'
 					gs 'npc_relationship', 'modify', 'A140', 'dislike'
 					'As you approach, everyone is staring at you. Irina speaks up. "What on earth are you wearing? Forget to change out of your whoring clothes last night?" Several of the others laugh and you can sense the general feeling of agreement from the rest.'
@@ -350,7 +350,7 @@ if $ARGS[0] = 'cooljocks':
 					gs 'npc_relationship', 'modify', 'A17', 'dislike'
 					gs 'npc_relationship', 'modify', 'A18', 'hate'
 					gs 'npc_relationship', 'modify', 'A22', 'hate'
-					if soniaPS = 0: gs 'npc_relationship', 'modify', 'A25', 'like'
+					if soniaQW['slut'] = 0: gs 'npc_relationship', 'modify', 'A25', 'like'
 					gs 'npc_relationship', 'modify', 'A139', 'dislike'
 					gs 'npc_relationship', 'modify', 'A140', 'dislike'
 					'As you approach them, several of them give you once over, obviously noticing your uniform. "Someone''s trying hard to look tough," Stasya says with a smirk.'
@@ -365,7 +365,7 @@ if $ARGS[0] = 'cooljocks':
 					gs 'npc_relationship', 'modify', 'A17', 1
 					gs 'npc_relationship', 'modify', 'A22', 1
 					gs 'npc_relationship', 'modify', 'A23', 1
-					if soniaPS = 0: gs 'npc_relationship', 'modify', 'A25', 1
+					if soniaQW['slut'] = 0: gs 'npc_relationship', 'modify', 'A25', 1
 					gs 'npc_relationship', 'modify', 'A139', 1
 					gs 'npc_relationship', 'modify', 'A140', 1
 					'As you approach them, several of them give you approving looks. "Looking good <<$pcs_nickname>>! Where did you buy that uniform?" Stasya comments.'
@@ -387,7 +387,7 @@ if $ARGS[0] = 'cooljocks':
 					gs 'npc_relationship', 'modify', 'A17', 'dislike'
 					gs 'npc_relationship', 'modify', 'A18', 'hate'
 					gs 'npc_relationship', 'modify', 'A22', 'hate'
-					if soniaPS = 0: gs 'npc_relationship', 'modify', 'A25', 'like'
+					if soniaQW['slut'] = 0: gs 'npc_relationship', 'modify', 'A25', 'like'
 					gs 'npc_relationship', 'modify', 'A139', 'dislike'
 					gs 'npc_relationship', 'modify', 'A140', 'dislike'
 					'As you approach, everyone is staring at you. Irina speaks up. "What on earth are you wearing? Forget to change out of your whoring clothes last night?" Several of the others laugh and you can sense the general feeling of agreement from the rest.'
@@ -402,7 +402,7 @@ if $ARGS[0] = 'cooljocks':
 					gs 'npc_relationship', 'modify', 'A17', 'dislike'
 					gs 'npc_relationship', 'modify', 'A18', 'hate'
 					gs 'npc_relationship', 'modify', 'A22', 'hate'
-					if soniaPS = 0: gs 'npc_relationship', 'modify', 'A25', 'like'
+					if soniaQW['slut'] = 0: gs 'npc_relationship', 'modify', 'A25', 'like'
 					gs 'npc_relationship', 'modify', 'A139', 'dislike'
 					gs 'npc_relationship', 'modify', 'A140', 'dislike'
 					'As you approach them, several of them give you once over, obviously noticing your uniform. "Someone''s trying hard to look tough," Stasya says with a smirk.'
@@ -413,7 +413,7 @@ if $ARGS[0] = 'cooljocks':
 					grupvalue[1] += 2
 					gs 'gschool_socialchg', 'group_rel_change', 'jocks', 1
 					grupvalue[2] += 1
-					if soniaPS = 0: gs 'npc_relationship', 'modify', 'A25', 'like'
+					if soniaQW['slut'] = 0: gs 'npc_relationship', 'modify', 'A25', 'like'
 
 					'As you approach them, several of them give you approving looks. "Looking good <<$pcs_nickname>>! Where did you buy that uniform?" Stasya comments.'
 					'"Yeah, looking sexy <<$pcs_nickname>>!" Vicky adds. Katja, Irina, Albina, '+iif(npc_grupTipe['A25'] ! 5, 'Sonia, ', '')+' Lizaveta and Bella all comment on how nice your outfit looks while Dimka, Marcus, Andrey, Mefodiy, Ivan, '+iif(npc_grupTipe['A5'] ! 5, 'Fedor, ', '')+' and Svyatoslav talk among themselves. However, you do notice Igor seems to be somewhat paying attention, maybe to you in particular. Christina just pretends you don''t exist while she talks to Lina and Lariska while Veronika is reading something and seems to be entirely unaware of the conversation.'
@@ -423,7 +423,7 @@ if $ARGS[0] = 'cooljocks':
 					gs 'npc_relationship', 'modify', 'A3', 'love'
 					gs 'npc_relationship', 'modify', 'A5', 'love'
 					gs 'npc_relationship', 'modify', 'A8', 'love'
-					if soniaPS = 0: gs 'npc_relationship', 'modify', 'A25', 'like'
+					if soniaQW['slut'] = 0: gs 'npc_relationship', 'modify', 'A25', 'like'
 					gs 'npc_relationship', 'modify', 'A146', 'like'
 					gs 'npc_relationship', 'modify', 'A147', 'like'
 					gs 'npc_relationship', 'modify', 'A148', 'like'
@@ -444,7 +444,7 @@ if $ARGS[0] = 'cooljocks':
 				gs 'npc_relationship', 'modify', 'A17', 'dislike'
 				gs 'npc_relationship', 'modify', 'A18', 'hate'
 				gs 'npc_relationship', 'modify', 'A22', 'hate'
-				if soniaPS = 0: gs 'npc_relationship', 'modify', 'A25', 'like'
+				if soniaQW['slut'] = 0: gs 'npc_relationship', 'modify', 'A25', 'like'
 				gs 'npc_relationship', 'modify', 'A139', 'dislike'
 				gs 'npc_relationship', 'modify', 'A140', 'dislike'
 				'As you approach, everyone is staring at you. Irina speaks up. "What on earth are you wearing? Forget to change out of your whoring clothes last night?" Several of the others laugh and you can sense the general feeling of agreement from the rest.'

+ 1 - 1
locations/gschool_cheerleading.qsrc

@@ -971,7 +971,7 @@ if $ARGS[0] = 'bella':
 			act 'Leave them to it': gt 'gschool_grounds', 'change_room'
 		end
 	elseif bellawatch = 1:
-		if soniaPS ! 4:
+		if soniaQW['slut'] ! 4:
 			'You''re alone in the locker room when you hear the familiar sounds coming from across the hall.'
 			gs 'stat'
 

+ 4 - 4
locations/gschool_events.qsrc

@@ -418,7 +418,7 @@ if $ARGS[0] = 'break_events':
 			end
 			gt 'gschool_sex', 'lunch_bj'
 		end
-	elseif break_rand <= 9 and fame['pav_slut'] > 200 and soniaPS >= 3:
+	elseif break_rand <= 9 and fame['pav_slut'] > 200 and soniaQW['slut'] >= 3:
 		cla
 		'During the break, you are approached by some gopniks. "I know why you look so glum <<$pcs_nickname>>, you miss our cocks! Ain''t that right, cocksucker? Don''t worry, you can come along with us. We''ll give you all the dick you want."'
 		'You struggle as the guys try to grab you, and you can see them get frustrated. ", Ah, forget about her," one of them says. "We already have Sonia in there, ready and willing. She''ll just have to suck the dicks for both of them today."'
@@ -1328,7 +1328,7 @@ if $ARGS[0] = 'afterschool_events':
 				'She shakes her head as she opens her locker, pulls out a gym bag and starts getting dressed. "Thanks, but I got it. See you around." She finishes getting dressed then hurries away, likely to run home.'
 				act 'Leave': gt 'gschool_grounds', 'main'
 			end
-		elseif break_rand = 7 and soniaPS >= 3:
+		elseif break_rand = 7 and soniaQW['slut'] >= 3:
 			'<center><img <<$set_imgh>> src="images/locations/pavlovsk/school/events/afterschool/sonialeash.jpg"></center>'
 			'As you walk down the hallway, you''re greeted by an unusual sight. Sonia crawling along on all fours, a collar around her neck with a leash attached to it. Vitek holds onto the leash, walking Sonia like a dog with several other gopniks walking along with them. The boys are making crude jokes about Sonia being "their little bitch" and how after the walk, they''re going to show her "a real good time". Sonia keeps her head down while a few of the gopniks look at at you as they pass. Knowing you couldn''t do anything about it even if you wanted to, you go on your way.'
 		elseif break_rand = 8:
@@ -1599,7 +1599,7 @@ if $ARGS[0] = 'afterschool_classroom_events':
 	menu_off = 1
 	*clr & cla
 	gs 'stat'
-	if soniaPS = 5:
+	if soniaQW['slut'] = 5:
 		break_rand = rand(1,9)
 	else
 		break_rand = rand(1,8)
@@ -1656,7 +1656,7 @@ if $ARGS[0] = 'afterschool_classroom_events':
 		gs 'arousal', 'voyeur_sex', 10
 		gs 'arousal', 'end'
 		gs 'stat'
-	elseif break_rand = 9 and soniaPS = 5:
+	elseif break_rand = 9 and soniaQW['slut'] = 5:
 		'<center><img <<$set_imgh>> src="images/locations/pavlovsk/school/lunch/school.jpg"></center>'
 		'As you walk past the Computer Science classroom, you hear a strange moaning coming from inside.'
 		act 'Leave': gt 'gschool_grounds', 'main'

+ 49 - 49
locations/gschool_girls_bathroom.qsrc

@@ -66,7 +66,7 @@ if $ARGS[0] = 'bathroom2':
 	'<center><b><font color="maroon">Girls bathroom</font></b></center>'
 	if school_bunk = 0:
 		'<center><img <<$set_imgh>> src="images/locations/pavlovsk/school/bathroom/usephone'+ rand(1,2) +'.jpg"></center>'
-		'You play on your phone for the rest of the period. Despite several instances of boredom and indecision that leave you wishing you could just go out, you find it very relaxing to be your own master and by the time the bell rings, you''re in a far better mood than before.'	
+		'You play on your phone for the rest of the period. Despite several instances of boredom and indecision that leave you wishing you could just go out, you find it very relaxing to be your own master and by the time the bell rings, you''re in a far better mood than before.'
 	else
 		'<center><img <<$set_imgh>> src="images/locations/pavlovsk/school/bathroom/smoke'+ rand(1,3) +'.jpg"></center>'
 		'You spend the rest of the period playing on your phone while you smoke. The games on your phone are boring, and once or twice you hear somebody walking around out in the corridor, causing your heart to skip a beat when you realize they might smell the smoke, but despite all that, you find this use of the period very relaxing and by the time the bell rings, you''re in a far better mood than before.'
@@ -90,7 +90,7 @@ if $ARGS[0] = 'bathroom3':
 		'<center><b><font color="maroon">Girls bathroom</font></b></center>'
 		'<center><img <<$set_imgh>> src="images/locations/pavlovsk/school/bathroom/usephone'+ rand(1,2) +'.jpg"></center>'
 		'You decide to play on your phone to pass the time. With class in session, most people you text with take agonizingly long to respond, and the few games you find to occupy yourself with are pretty terrible, but it''s a welcome distraction to take your mind off what happened.'
-		
+
 		act 'Make yourself presentable':
 			pcs_hairbsh = 1
 			'<center><img <<$set_imgh>> src="images/locations/pavlovsk/school/bathroom/girlsbathroom.jpg"></center>'
@@ -103,7 +103,7 @@ if $ARGS[0] = 'bathroom3':
 				pcs_makeup = 1
 				'You don''t have any makeup left to replace what was ruined.'
 			end
-			'You give yourself a final once over in the mirror and, happy that your appearance won''t arouse any suspicion, head on your way.' 
+			'You give yourself a final once over in the mirror and, happy that your appearance won''t arouse any suspicion, head on your way.'
 			act 'Go to class':gt 'gschool_lessons', 'short_break'
 		end
 	end
@@ -116,7 +116,7 @@ if $ARGS[0] = 'bathroom3':
 			'<center><b><font color="maroon">Girls bathroom</font></b></center>'
 			'<center><img <<$set_imgh>> src="images/locations/pavlovsk/school/bathroom/smoke'+ rand(1,3) +'.jpg"></center>'
 			'You need a smoke. Badly. You pull out a cigarette and light it before taking a long drag and holding it for a while. You immediately feel yourself relaxing, the smoke''s familiar tingling in your lungs taking your mind off what happened.'
-			
+
 			act 'Make yourself presentable':
 				pcs_hairbsh = 1
 				'<center><img <<$set_imgh>> src="images/locations/pavlovsk/school/bathroom/girlsbathroom.jpg"></center>'
@@ -129,10 +129,10 @@ if $ARGS[0] = 'bathroom3':
 					pcs_makeup = 1
 					'You don''t have any makeup left to replace what was ruined.'
 				end
-				'You give yourself a final once over in the mirror and, happy that your appearance won''t arouse any suspicion, head on your way.' 
+				'You give yourself a final once over in the mirror and, happy that your appearance won''t arouse any suspicion, head on your way.'
 				act 'Go to class':gt 'gschool_lessons', 'short_break'
 			end
-			
+
 		end
 	end
 end
@@ -142,7 +142,7 @@ if $ARGS[0] = 'girls':
 	i = rand(1,100)
 	if i <= 25:
 		gt 'gschool_girls_bathroom', 'girl3'
-	elseif i <= 50 and soniaPS > 0:
+	elseif i <= 50 and soniaQW['slut'] > 0:
 		gt 'gschool_girls_bathroom', 'girl2'
 	else
 		gt 'gschool_girls_bathroom', 'girl1'
@@ -158,8 +158,8 @@ if $ARGS[0] = 'girl1':
 	jump_counter = 0
 	'<center><b><font color="maroon">Girls bathroom</font></b></center>'
 	'<center><img <<$set_imgh>> src="images/locations/pavlovsk/school/bathroom/girlsbathroom.jpg"></center>'
-	'After a few minutes, you hear the bathroom door open and carefully peek out, half-expecting to see a teacher, but see <<$rand_girl>> instead. Relieved and smiling, you exit the stall and greet her. She turns around, slightly startled at first but then breaking into a smile when she sees you. Within seconds, the two of you are chatting away about school, boys, clothes, makeup and anything else that strikes your fancy.' 
-	'Before you know it, the bell rings and you both bid each other farewell before heading to your next class.'		
+	'After a few minutes, you hear the bathroom door open and carefully peek out, half-expecting to see a teacher, but see <<$rand_girl>> instead. Relieved and smiling, you exit the stall and greet her. She turns around, slightly startled at first but then breaking into a smile when she sees you. Within seconds, the two of you are chatting away about school, boys, clothes, makeup and anything else that strikes your fancy.'
+	'Before you know it, the bell rings and you both bid each other farewell before heading to your next class.'
 	act 'Go to class':gt 'gschool_lessons', 'short_break'
 end
 
@@ -184,11 +184,11 @@ if $ARGS[0] = 'girl2':
 			'You can understand why the boys are going crazy over Sonia - something about the way she looks, talks, even smells is incredibly tempting. It takes all of your strength of will to gently push her away. "Sorry Sonia, but that''s not what I meant."'
 			'Sonia seems a little surprised at first, but then shrugs and goes back to the mirror to continue working on her makeup. "So what <i>did</i> you have in mind?"'
 			*nl
-			'"We could, you know, just talk. I mean, how have you been? I know things have been rough but that doesn''t mean we can''t be friends and talk to each other, right?" you ask as you walk up to stand next to her.' 
+			'"We could, you know, just talk. I mean, how have you been? I know things have been rough but that doesn''t mean we can''t be friends and talk to each other, right?" you ask as you walk up to stand next to her.'
 			'Now that the spell is broken, you can''t help but feel sorry for her. She made a stupid mistake, some guys took advantage of her drunken, horny mood, and now she is a pariah, the school slut that practically nobody wants to be seen with... including you.'
 			*nl
-			'She glances at you, and smiles - not seductively like before but in a way you''ve rarely seen since her fall from grace: Genuine, glad, happy even. "Sure. Yeah, I think I''d like that."' 
-			'The two of you spend the next hour talking about a variety of things, like you used to before. She gives you more than a few tips about how to use makeup, and you help her finish her own, putting into practice what she taught you. You talk about school and what you want to do after, about family, about life... about anything and everything, except one thing: Sex. For one short period, you and Sonia pretend that you''re both innocent schoolgirls again.' 
+			'She glances at you, and smiles - not seductively like before but in a way you''ve rarely seen since her fall from grace: Genuine, glad, happy even. "Sure. Yeah, I think I''d like that."'
+			'The two of you spend the next hour talking about a variety of things, like you used to before. She gives you more than a few tips about how to use makeup, and you help her finish her own, putting into practice what she taught you. You talk about school and what you want to do after, about family, about life... about anything and everything, except one thing: Sex. For one short period, you and Sonia pretend that you''re both innocent schoolgirls again.'
 			'Before you know it, the bell rings and Sonia gives you lingering hug and a final, dazzling smile before both of you head to class.'
 			act 'Go to class':gt 'gschool_lessons', 'short_break'
 		end
@@ -339,7 +339,7 @@ if $ARGS[0] = 'girl3':
 					'Afraid of what they might do, you run straight out of the bathroom - you''re just as surprised at the fact that this worked as they must have been at you even attempting to flee. With your footsteps echoing from the walls, you can''t tell if they''re on your tail or not, so you keep running down the hall; you don''t really know where you''re going, you just want to put some distance between them and you. When you finally stop and lean against some lockers to catch your breath, you don''t see them and it seems no one noticed you. Sighing, you spend the rest of the period trying not to be spotted until your next class.'
 					act 'Go to class':gt 'gschool_lessons', 'short_break'
 				end
-			end	
+			end
 		else
 			act 'Try to run out (<font color="red"><<will_cost>> Willpower</font>)': '<br><font color="red">You don''t have enough willpower to use this action.</font>'
 		end
@@ -355,7 +355,7 @@ if $ARGS[0] = 'girl3':
 			act 'Toy bunny': gt 'gschool_girls_bathroom', 'toy bunny'
 		end
 	end
-	
+
 	if grupTipe = 4:
 		act 'Maybe later':
 			*clr & cla
@@ -375,7 +375,7 @@ if $ARGS[0] = 'girl3':
 			act 'Go to class':gt 'gschool_lessons', 'short_break'
 		end
 	end
-	
+
 	if grupTipe = 2:
 		act 'Fuck off':
 		  *clr & cla
@@ -384,15 +384,15 @@ if $ARGS[0] = 'girl3':
 		  'You step out of the stall and look the two girls up and down, unimpressed at their attempt to intimidate you. You grab the cigarette from Lera and throw it into the toilet. "You need to get out of my face and fuck off... bitch," you taunt as you get up in Lera''s face, but Lena shoves you from behind.'
 		  '"Think you''re tough, huh? We''ll see who''s laughing when you''re swallowing your fucking teeth, cunt!" she snarls as she raises her fists.'
 		  '"You should run, bitch..." Lera smirks as she cracks her knuckles.'
-			
+
 			act 'Fight them':
 				gs 'fight', 'initFight'
 				gs 'fight_npcdata', 'lena'
 				gs 'fight_npcdata', 'lera'
 				fightEnding = 22
-				gt 'fight', 'start'	
+				gt 'fight', 'start'
 			end
-			
+
 			act 'Run away':
 				*clr & cla
 				runout = rand(1,4)
@@ -410,8 +410,8 @@ if $ARGS[0] = 'girl3':
 					'The mere thought of fighting them fills you with dread. They laugh at and mock you as you dash past them and flee down the hall until you''re sure you''re in the clear. Breathless, you lean against some lockers. You don''t see them and it seems no one noticed you. Sighing, you spend the rest of the period trying not to be spotted until your next class.'
 					act 'Go to class':gt 'gschool_lessons', 'short_break'
 				end
-			end	
-	    end	
+			end
+	    end
 	end
 end
 
@@ -621,7 +621,7 @@ if $ARGS[0] = 'company3':
 	'You see Arkadi with his pants around his ankles, Anushka squatting in front of him and sucking his dick. You watch for a few seconds and you''d like to watch even longer, but Arkadi keeps looking around, and in your direction. You duck back into the stall before you get spotted... and feel yourself getting very aroused from watching them, listening to them, even just knowing what they are doing. The sucking sounds soon stop and are quickly replaced by soft female moans of pleasure.'
 	if pcs_horny < 70:
 		act 'Wait':
-			*clr & cla 
+			*clr & cla
 			gs 'arousal', 'end'
 			'You banish these thoughts from your mind - with great effort - and decide to keep quiet and wait until they''re done fucking. She gets very loud after a while, obviously having an orgasm, and moans obscenities, encouraging him to fuck her harder. A few minutes later, he grunts as well. You then hear the water running and they talk in low voices before you hear the door open and close, and all is quiet once more.'
 			if school_bunk = 0:
@@ -632,7 +632,7 @@ if $ARGS[0] = 'company3':
 		end
 	else
 		gs 'willpower', 'misc', 'self', 'hard'
-		if will_cost <= pcs_willpwr:	
+		if will_cost <= pcs_willpwr:
 			act 'Wait and resist masturbating (<<will_cost>> Willpower)':
 				cla & *nl
 				gs 'willpower', 'pay', 'self'
@@ -654,10 +654,10 @@ if $ARGS[0] = 'company3':
 		'<center><b><font color="maroon">Boys bathroom</font></b></center>'
 		'<center><video autoplay loop src="images/locations/pavlovsk/school/bathroom/sex/masturbate'+ rand(1,2) +'.mp4"></video></center>'
 		if $pantyworntype = 'none':
-			'Listening to Anushka getting pounded, the constant slapping sounds of flesh and her moans of pleasure is exciting - too exciting for you. You know you shouldn''t, you know it''s risky, but you just can''t resist: You hike up your skirt and spread your legs. Your hand slides down your thigh, then back up towards your crotch. Your pussy lips are already swollen and starting to get wet, and your clit stands out as if to make it easier for you to find it.' 
+			'Listening to Anushka getting pounded, the constant slapping sounds of flesh and her moans of pleasure is exciting - too exciting for you. You know you shouldn''t, you know it''s risky, but you just can''t resist: You hike up your skirt and spread your legs. Your hand slides down your thigh, then back up towards your crotch. Your pussy lips are already swollen and starting to get wet, and your clit stands out as if to make it easier for you to find it.'
 			'You rub your sensitive little nub carefully to ease yourself into the pleasure; if you don''t stay in control, you''re going to make sounds and you don''t want them to notice you. After teasing yourself for a bit, you sink two of your fingers into your wet hole, gasping soundlessly, and mimic the fuck Arkadi is giving Anushka. You add your other hand to the mix, rubbing your clit while you''re fingerfucking yourself, faster and faster as they get louder and louder.'
 		else
-			'Listening to Anushka getting pounded, the constant slapping sounds of flesh and her moans of pleasure is exciting - too exciting for you. You know you shouldn''t, you know it''s risky, but you just can''t resist: You pull your panties off, hike up your skirt and spread your legs. Your hand slides down your thigh, then back up towards your crotch. Your pussy lips are already swollen and starting to get wet, and your clit stands out as if to make it easier for you to find it.' 
+			'Listening to Anushka getting pounded, the constant slapping sounds of flesh and her moans of pleasure is exciting - too exciting for you. You know you shouldn''t, you know it''s risky, but you just can''t resist: You pull your panties off, hike up your skirt and spread your legs. Your hand slides down your thigh, then back up towards your crotch. Your pussy lips are already swollen and starting to get wet, and your clit stands out as if to make it easier for you to find it.'
 			'You rub your sensitive little nub carefully to ease yourself into the pleasure; if you don''t stay in control, you''re going to make sounds and you don''t want them to notice you. After teasing yourself for a bit, you sink two of your fingers into your wet hole, gasping soundlessly, and mimic the fuck Arkadi is giving Anushka. You add your other hand to the mix, rubbing your clit while you''re fingerfucking yourself, faster and faster as they get louder and louder.'
 		end
 		$orgasm_txt = 'You have to bite your lip to keep from crying out as an orgasm shoots through your body and causes you to convulse on the toilet seat.'
@@ -719,10 +719,10 @@ if $ARGS[0] = 'company4':
 		'<center><b><font color="maroon">Girls bathroom</font></b></center>'
 		'<center><video autoplay loop src="images/locations/pavlovsk/school/bathroom/sex/masturbate'+ rand(1,2) +'.mp4"></video></center>'
 		if $pantyworntype ! 'none':
-			'Listening to Miss Orlov getting pounded, the constant slapping sounds of flesh and her moans of pleasure is exciting - too exciting for you. You know you shouldn''t, you know it''s risky, but you just can''t resist: You pull your panties off, hike up your skirt and spread your legs. Your hands slide down your thigh, then back up towards your crotch. Your pussy lips are already swollen and starting to get wet, and your clit stands out as if to make it easier for you to find it.' 
+			'Listening to Miss Orlov getting pounded, the constant slapping sounds of flesh and her moans of pleasure is exciting - too exciting for you. You know you shouldn''t, you know it''s risky, but you just can''t resist: You pull your panties off, hike up your skirt and spread your legs. Your hands slide down your thigh, then back up towards your crotch. Your pussy lips are already swollen and starting to get wet, and your clit stands out as if to make it easier for you to find it.'
 			'You rub your sensitive little nub carefully to ease yourself into the pleasure; if you don''t stay in control, you''re going to make sounds and you don''t want them to notice you. After teasing yourself for a bit, you sink two of your fingers into your wet hole, gasping soundlessly, and mimic the fuck Mr. Kuznetsov is giving Miss Orlov. You add your other hand to the mix, rubbing your clit while you''re fingerfucking yourself, faster and faster as they get louder and louder.'
 		else
-			'Listening to Miss Orlov getting pounded, the constant slapping sounds of flesh and her moans of pleasure is exciting - too exciting for you. You know you shouldn''t, you know it''s risky, but you just can''t resist: You hike up your skirt and spread your legs. Your hands slide down your thigh, then back up towards your crotch. Your pussy lips are already swollen and starting to get wet, and your clit stands out as if to make it easier for you to find it.' 
+			'Listening to Miss Orlov getting pounded, the constant slapping sounds of flesh and her moans of pleasure is exciting - too exciting for you. You know you shouldn''t, you know it''s risky, but you just can''t resist: You hike up your skirt and spread your legs. Your hands slide down your thigh, then back up towards your crotch. Your pussy lips are already swollen and starting to get wet, and your clit stands out as if to make it easier for you to find it.'
 			'You rub your sensitive little nub carefully to ease yourself into the pleasure; if you don''t stay in control, you''re going to make sounds and you don''t want them to notice you. After teasing yourself for a bit, you sink two of your fingers into your wet hole, gasping soundlessly, and mimic the fuck Mr. Kuznetsov is giving Miss Orlov. You add your other hand to the mix, rubbing your clit while you''re fingerfucking yourself, faster and faster as they get louder and louder.'
 		end
 		$orgasm_or = 'custom'
@@ -759,7 +759,7 @@ if $ARGS[0] = 'caught1':
 	gs 'stat'
 	'<center><b><font color="maroon">Girls bathroom</font></b></center>'
 	'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/teacher/raven/sex/school/caughtf.jpg"></center>'
-	'After a few minutes, you hear someone else in the bathroom with you. You peek out and see Ms. Braakman at the mirror, causing you to duck back into the stall and close the door as quietly as you can, your heart beating like crazy as you pray she didn''t notice you. You hear the click of her heels coming closer, closer... and stop, right outside your stall door.' 
+	'After a few minutes, you hear someone else in the bathroom with you. You peek out and see Ms. Braakman at the mirror, causing you to duck back into the stall and close the door as quietly as you can, your heart beating like crazy as you pray she didn''t notice you. You hear the click of her heels coming closer, closer... and stop, right outside your stall door.'
 	'"I saw you in the mirror, young lady!" she says sternly as she pushes the door open. "What do you think you''re doing in the bathroom in the middle of the period? Skipping class?"'
 	if school_bunk = 1:'Her nostrils flare and her eyes narrow when she finds the source of the acrid smoke. Your cigarette, the shock over her appearance having caused you to drop it, is smoldering on the floor. "And smoking in school, I see. I really thought you were smarter than that, Miss <<$pcs_lastname>>."'
 	*nl
@@ -782,7 +782,7 @@ if $ARGS[0] = 'caught1':
 			else
 				'<center><img <<$set_imgh>> src="images/locations/pavlovsk/school/bathroom/eartwist.jpg"></center>'
 				'You hang your head and feign shame as best you can. "I know, and I''m sorry Ms. Braakman. I was feeling stressed out and I just needed a break, just a few minutes alone. I know I shouldn''t have, but I couldn''t help it." You give her a pleading look. "Please, please don''t report me. I promise I won''t do it again."'
-				'Ms. Braakman looks at you in silence. For a moment, you think you''ve convinced her, but then you see something change in her eyes: She wasn''t angry before, but she definitely is now. "You <i>dare</i> lie to my face like that? Do you really think I''m dumb enough to fall for that?" She doesn''t give you a chance to reply but reaches out, grabs you by the arm and, with surprising strength, pulls you out of the stall before leading you out of the bathroom. "I''m taking you to the principal''s office. You should pray that she''s feeling more lenient than I do right now."' 
+				'Ms. Braakman looks at you in silence. For a moment, you think you''ve convinced her, but then you see something change in her eyes: She wasn''t angry before, but she definitely is now. "You <i>dare</i> lie to my face like that? Do you really think I''m dumb enough to fall for that?" She doesn''t give you a chance to reply but reaches out, grabs you by the arm and, with surprising strength, pulls you out of the stall before leading you out of the bathroom. "I''m taking you to the principal''s office. You should pray that she''s feeling more lenient than I do right now."'
 				'True to her word, she drags you around the school by your arm, furiously muttering under her breath, until you''re standing in front of the principal''s office.'
 				act 'Go to the principal''s office':
 					demerit += 10
@@ -811,7 +811,7 @@ if $ARGS[0] = 'caught1':
 			gs 'gschool_events', 'sweet'
 			if rand(1,100) < Sweet_talk:
 				'<center><img <<$set_imgh>> src="images/locations/pavlovsk/school/bathroom/eartwist.jpg"></center>'
-				'Ms. Braakman looks at you in silence. For a moment, you think you''ve convinced her, but then you see something change in her eyes: She wasn''t angry before, but she definitely is now. "You <i>dare</i> trying to manipulate me like that? Do you really think I''d fall for such juvenile attempts at seduction?" She doesn''t give you a chance to reply before she reaches out, grabs you by the arm and, with surprising strength, pulls you to your feet before leading you out of the bathroom. "I''m taking you to the principal''s office. You should pray that she''s feeling more lenient than I do right now."' 
+				'Ms. Braakman looks at you in silence. For a moment, you think you''ve convinced her, but then you see something change in her eyes: She wasn''t angry before, but she definitely is now. "You <i>dare</i> trying to manipulate me like that? Do you really think I''d fall for such juvenile attempts at seduction?" She doesn''t give you a chance to reply before she reaches out, grabs you by the arm and, with surprising strength, pulls you to your feet before leading you out of the bathroom. "I''m taking you to the principal''s office. You should pray that she''s feeling more lenient than I do right now."'
 				'True to her word, she drags you around the school by your arm, furiously muttering under her breath, until you''re standing in front of the principal''s office.'
 				act 'Go to the principal''s office':
 					demerit += 10
@@ -833,7 +833,7 @@ if $ARGS[0] = 'caught1':
 						gs 'pain', 2, 'asscheeks', 'spank'
 						'<center><b><font color="maroon">Girls bathroom</font></b></center>'
 						'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/teacher/raven/sex/school/caughtfspank.jpg"></center>'
-						'Ms. Braakman stares at you for a long time, seemingly considering her options. You can see a hardness in her eyes, a desire to punish you that seems greater than you expected. A moment later, she has made up her mind and walks over to you. "I suppose the principal doesn''t have to know about this, as long as you get properly punished." She grabs you by the hair, pulls you over to the sinks and bends you over, your head nearly touching the mirror. "And make no mistake: I will make sure you''ll remember this lesson." She pulls your skirt up and your panties down with an ease that speaks of habit - maybe those rumors about the principal being a dominatrix were about the wrong teacher?' 
+						'Ms. Braakman stares at you for a long time, seemingly considering her options. You can see a hardness in her eyes, a desire to punish you that seems greater than you expected. A moment later, she has made up her mind and walks over to you. "I suppose the principal doesn''t have to know about this, as long as you get properly punished." She grabs you by the hair, pulls you over to the sinks and bends you over, your head nearly touching the mirror. "And make no mistake: I will make sure you''ll remember this lesson." She pulls your skirt up and your panties down with an ease that speaks of habit - maybe those rumors about the principal being a dominatrix were about the wrong teacher?'
 						'You watch her rummage through her purse and bite your lower lip, a bit turned on by her display of dominance and experience and looking forward to a little spanking... but then your eyes grow wide: The object she had been looking for is a large black wooden paddle. You suddenly wonder if the principal might have been the better alternative...'
 						'Before you even have a chance to protest, she brings the paddle down on your bare ass. The smack echoes in the room, as does your yelp of pain. After just one swing, your ass is already stinging sharply, and her swings come quickly, each one bringing her full force and anger down on your cheeks. Each of them makes you jump inadvertently; you even hit your head against the mirror several times. Out of instinct, you try to shield your tender flesh from the paddle''s next blow, but Ms. Braakman quickly grabs your hands with her free one and pulls them out of the way, once again exhibiting a strength you wouldn''t expect from this slender woman.'
 						gs 'arousal', 'foreplay', 10, 'sub', 'maso'
@@ -864,12 +864,12 @@ if $ARGS[0] = 'caught1':
 		'<center><b><font color="maroon">Girls bathroom</font></b></center>'
 		'<center><img <<$set_imgh>> src="images/locations/pavlovsk/school/bathroom/seduction.jpg"></center>'
 		'You get down on your knees in front of her and hike up your skirt a little bit to reveal more of your legs. When you''re sure you have her eyes on you, you look up at your teacher and suggestively lick your lips. "You seem tense, ma''am . How about I help you relax a little and you just pretend you didn''t see me here?"'
-		act 'Continue': 
+		act 'Continue':
 			*clr & cla
 			gs 'gschool_events', 'sweet'
 			if rand(1,100) < Sweet_talk:
 				'<center><img <<$set_imgh>> src="images/locations/pavlovsk/school/bathroom/eartwist.jpg"></center>'
-				'Ms. Braakman looks at you in silence. For a moment, you think you''ve convinced her, but then you see something change in her eyes: She wasn''t angry before, but she definitely is now. "You <i>dare</i> trying to manipulate me like that? Do you really think I''d be base enough to fall for such juvenile attempts at seduction?" She doesn''t give you a chance to reply but reaches out, grabs you by the arm and, with surprising strength, pulls you to your feet before leading you out of the bathroom. "I''m taking you to the principal''s office. And you should pray that she''s feeling more lenient than I do right now."' 
+				'Ms. Braakman looks at you in silence. For a moment, you think you''ve convinced her, but then you see something change in her eyes: She wasn''t angry before, but she definitely is now. "You <i>dare</i> trying to manipulate me like that? Do you really think I''d be base enough to fall for such juvenile attempts at seduction?" She doesn''t give you a chance to reply but reaches out, grabs you by the arm and, with surprising strength, pulls you to your feet before leading you out of the bathroom. "I''m taking you to the principal''s office. And you should pray that she''s feeling more lenient than I do right now."'
 				'True to her word, she drags you around the school by your arm, furiously muttering under her breath, until you''re standing in front of the principal''s office.'
 				act 'Go to principal''s office':
 					demerit += 10
@@ -967,7 +967,7 @@ if $ARGS[0] = 'caught1_slut_punishment':
 							gs 'arousal', 'end'
 							gs 'stat'
 							*nl
-							'All too soon, she cries out, nearly collapsing on your back and burying the strapon fully up your ass when her orgasm hits. You can feel her kisses on the back of your neck, a display of affection to contrast the rough anal you received. "My my," she whsipers. "I think you''ve earned the rest of the period off." She gently pulls the strapon out of you and takes the harness off, then moves to the sinks to clean it up. "This will be our little secret, <<$pcs_firstname>>..." she promises, smiling absentmindedly as she dries the dildo.' 
+							'All too soon, she cries out, nearly collapsing on your back and burying the strapon fully up your ass when her orgasm hits. You can feel her kisses on the back of your neck, a display of affection to contrast the rough anal you received. "My my," she whsipers. "I think you''ve earned the rest of the period off." She gently pulls the strapon out of you and takes the harness off, then moves to the sinks to clean it up. "This will be our little secret, <<$pcs_firstname>>..." she promises, smiling absentmindedly as she dries the dildo.'
 							'After checking her appearance, she walks towards the exit and gives you one last look, a hint of desire gleaming through the cracks of her mask of authority and indifference, before she silently leaves the bathroom. You rub your ass and get dressed while your mind goes over what you just experienced, and you eventually find yourself back in your stall where you have to decide what to do with the rest of the period.'
 							if school_bunk = 0:
 								act 'Continue to play on phone':gt 'gschool_girls_bathroom', 'bathroom2'
@@ -985,10 +985,10 @@ end
 if $ARGS[0] = 'caught1_anal':
 	*clr & cla
 	menu_off = 1
-	gs 'boyStat', 'D4' 
+	gs 'boyStat', 'D4'
 	gs 'stat'
 	'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/teacher/raven/sex/school/caughtfanal2.jpg"></center>'
-	'It''s not exactly pleasant, and she seems to have no intention of stopping until at least a good part of it is inside you, but the pain is bearable. After a few seconds, she has worked the <<dick>>cm <<$dick_girth>> dildo balls deep into your ass. Once she''s worked it all the way into your ass, she pulls out again until only the tip is still inside of you before she starts fucking your ass. However, that too proves much gentler than you''d expect, going neither very fast nor hard. In fact, now that your backdoor has had some time to adjust to the intrusion, it''s slowly starting to feel good. You remember that your hand is still resting on your pussy and tentatively brush against your clit.' 
+	'It''s not exactly pleasant, and she seems to have no intention of stopping until at least a good part of it is inside you, but the pain is bearable. After a few seconds, she has worked the <<dick>>cm <<$dick_girth>> dildo balls deep into your ass. Once she''s worked it all the way into your ass, she pulls out again until only the tip is still inside of you before she starts fucking your ass. However, that too proves much gentler than you''d expect, going neither very fast nor hard. In fact, now that your backdoor has had some time to adjust to the intrusion, it''s slowly starting to feel good. You remember that your hand is still resting on your pussy and tentatively brush against your clit.'
 	'As you play with your now wet pussy, pleasure replaces pain and a moan of desire escapes you. You hear a buzz coming from the harness - sounds like the strapon came with extras...'
 	gs 'arousal', 'anal_strap', 10, 'lesbian', 'sub', 'lube'
 	gs 'stat'
@@ -1000,7 +1000,7 @@ if $ARGS[0] = 'caught1_anal':
 		gs 'arousal', 'end'
 		gs 'stat'
 		*nl
-		'All too soon, she cries out, nearly collapsing on your back and burying the strapon fully up your ass when her orgasm hits. You can feel her kisses on the back of your neck, a display of affection to contrast the rough anal you received. "My my," she whsipers. "I think you''ve earned the rest of the period off." She gently pulls the strapon out of you and takes the harness off, then moves to the sinks to clean it up. "This will be our little secret, <<$pcs_firstname>>..." she promises, smiling absentmindedly as she dries the dildo.' 
+		'All too soon, she cries out, nearly collapsing on your back and burying the strapon fully up your ass when her orgasm hits. You can feel her kisses on the back of your neck, a display of affection to contrast the rough anal you received. "My my," she whsipers. "I think you''ve earned the rest of the period off." She gently pulls the strapon out of you and takes the harness off, then moves to the sinks to clean it up. "This will be our little secret, <<$pcs_firstname>>..." she promises, smiling absentmindedly as she dries the dildo.'
 		'After checking her appearance, she walks towards the exit and gives you one last look, a hint of desire gleaming through the cracks of her mask of authority and indifference, before she silently leaves the bathroom. You rub your ass and get dressed while your mind goes over what you just experienced, and you eventually find yourself back in your stall where you have to decide what to do with the rest of the period.'
 		if school_bunk = 0:
 			act 'Continue to play on phone':gt 'gschool_girls_bathroom', 'bathroom2'
@@ -1016,7 +1016,7 @@ if $ARGS[0] = 'caught2':
 	gs 'stat'
 	'<center><b><font color="maroon">Girls bathroom</font></b></center>'
 	'<center><img <<$set_imgh>> src="images/locations/pavlovsk/school/bathroom/caught'+ rand(1,2) +'.jpg"></center>'
-	'After a few minutes, you hear someone else in the bathroom with you. You peek out and see Mr. Vasilyev standing at the mirror,causing you to duck back into the stall and close the door as quietly as you can, your heart beating like crazy as you pray he didn''t notice you. What the hell is he doing in here?! You hear his footsteps coming closer, closer... and stop, right outside your stall door.'   
+	'After a few minutes, you hear someone else in the bathroom with you. You peek out and see Mr. Vasilyev standing at the mirror,causing you to duck back into the stall and close the door as quietly as you can, your heart beating like crazy as you pray he didn''t notice you. What the hell is he doing in here?! You hear his footsteps coming closer, closer... and stop, right outside your stall door.'
 	'"I saw you in the mirror, young lady!" he says sternly as he pushes the door open. "What do you think you''re doing anyway? Skipping class?"'
 	if school_bunk = 1:'His eyes narrow when they fall on the smoldering cigarette on the ground. "Smoking in school, I see. I really thought you were smarter than that, Miss <<$pcs_lastname>>."'
 	*nl
@@ -1033,7 +1033,7 @@ if $ARGS[0] = 'caught2':
 		if rand(1,100) < Sweet_talk:
 			'<center><img <<$set_imgh>> src="images/locations/pavlovsk/school/bathroom/angryteacher.jpg"></center>'
 			'You hang your head and feign shame as best you can. "I know, and I''m sorry sir, but I was feeling stressed out and I just needed a break, just a few minutes alone. I know I shouldn''t have, but I couldn''t help it." You give him a pleading look. "Please, please don''t report me. I promise I won''t do it again."'
-			'Mr. Vasilyev looks at you and snorts. "Do you really think I''m dumb enough to fall for that?" He doesn''t wait for your reply and reaches out, grabs you by the arm and pulls you out of the stall before leading you out of the bathroom. "Come on, I''m taking you to the principal''s office."' 
+			'Mr. Vasilyev looks at you and snorts. "Do you really think I''m dumb enough to fall for that?" He doesn''t wait for your reply and reaches out, grabs you by the arm and pulls you out of the stall before leading you out of the bathroom. "Come on, I''m taking you to the principal''s office."'
 			'He''s nothing if not a man of his word, and he drags you down the hall by your arm until you''re standing in front of the principal''s office.'
 			act 'Go to the principal''s office':
 				demerit += 10
@@ -1061,7 +1061,7 @@ if $ARGS[0] = 'caught2':
 			gs 'gschool_events', 'sweet', 'sex'
 			if rand(1,100) < Sweet_talk:
 				'<center><img <<$set_imgh>> src="images/locations/pavlovsk/school/bathroom/angryteacher.jpg"></center>'
-				'Mr. Vasilyev looks at you and snorts. "Please don''t embarrass yourself, or me, with such juvenile attempts at seduction. Did you really think that would work on me?" He doesn''t wait for your reply but reaches out, grabs you by the arm and pulls you out of the stall before leading you out of the bathroom. "Come on, I''m taking you to the principal''s office."' 
+				'Mr. Vasilyev looks at you and snorts. "Please don''t embarrass yourself, or me, with such juvenile attempts at seduction. Did you really think that would work on me?" He doesn''t wait for your reply but reaches out, grabs you by the arm and pulls you out of the stall before leading you out of the bathroom. "Come on, I''m taking you to the principal''s office."'
 				'He''s nothing if not a man of his word, and he drags you down the hall by your arm until you''re standing in front of the principal''s office.'
 				act 'Go to principal''s office':
 					demerit += 10
@@ -1084,7 +1084,7 @@ if $ARGS[0] = 'caught2':
 					'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/teacher/makar/sex/school/caughtcum.jpg"></center>'
 					'You pick up the pace even more since you want him finish soon. "I''m about to cum!" he mutters weakly, as if trying to warn you, but you don''t care and suck him even harder. He starts grunting and you feel his dick throbbing in your mouth before he suddenly pulls your head away, his hand in your hair firmly gripping you.'
 					'As soon his dick loudly pops out of your mouth, he jerks it a few times while pointing it at you. It soon starts spurting warm cum all over your face, mostly around your mouth. When he finishes, he rubs the tip of his dick against your lips and then shoves it back into your mouth, the sight of you covered in his cum emboldening him. You look up at him while you suck his cock clean, smiling around him as you feel him getting soft in your mouth. He then pulls out of your mouth and tucks his dick back into his pants.'
-					'Without a word, he walks over to one of the sinks and washes his hands; he seems to be ignoring you, but you can see that he''s looking at you in the mirror. Finally, he smiles. "Feel free to cut class any time you like, <<$pcs_firstname>>. I''ll happily keep your secret." With a chuckle, he leaves - in fact, you think you can hear him whistling outside as he walks away.' 
+					'Without a word, he walks over to one of the sinks and washes his hands; he seems to be ignoring you, but you can see that he''s looking at you in the mirror. Finally, he smiles. "Feel free to cut class any time you like, <<$pcs_firstname>>. I''ll happily keep your secret." With a chuckle, he leaves - in fact, you think you can hear him whistling outside as he walks away.'
 					'You go to the mirror yourself, clean yourself up and fix your hair. That wasn''t too bad, you think, and at least you have the rest of the period to yourself. Still, you wonder what he was doing in the girls bathroom in the first place.'
 					if school_bunk = 0:
 						act 'Continue to play on phone':gt 'gschool_girls_bathroom', 'bathroom2'
@@ -1105,7 +1105,7 @@ if $ARGS[0] = 'caught2':
 			gs 'gschool_events', 'sweet', 'sex'
 			if rand(1,100) < Sweet_talk:
 				'<center><img <<$set_imgh>> src="images/locations/pavlovsk/school/bathroom/angryteacher.jpg"></center>'
-				'Mr. Vasilyev looks at you and snorts. "Please don''t embarrass yourself, or me, with such juvenile attempts at seduction. Did you really think that would work on me?" He doesn''t wait for your reply but reaches out, grabs you by the arm and pulls you out of the stall before leading you out of the bathroom. "Come on, I''m taking you to the principal''s office."' 
+				'Mr. Vasilyev looks at you and snorts. "Please don''t embarrass yourself, or me, with such juvenile attempts at seduction. Did you really think that would work on me?" He doesn''t wait for your reply but reaches out, grabs you by the arm and pulls you out of the stall before leading you out of the bathroom. "Come on, I''m taking you to the principal''s office."'
 				'He''s nothing if not a man of his word, and he drags you down the hall by your arm until you''re standing in front of the principal''s office.'
 				act 'Go to the principal''s office':
 					demerit += 10
@@ -1114,7 +1114,7 @@ if $ARGS[0] = 'caught2':
 				end
 			else
 				'<center><img <<$set_imgh>> src="images/locations/pavlovsk/school/bathroom/seduction.jpg"></center>'
-				'Mr. Vasilyev stares at you for a long time, seemingly considering his options; you can see one of those ''options'' getting hard in his pants while he stares at your ass. You smile and tug at your skirt, causing it to rise and fall just a tiny bit every time. Only a few seconds later, he walks towards you while pulling out his dick and stroking it. When he reaches you, he pushes you down. "Get on your knees and give me a blowjob."' 
+				'Mr. Vasilyev stares at you for a long time, seemingly considering his options; you can see one of those ''options'' getting hard in his pants while he stares at your ass. You smile and tug at your skirt, causing it to rise and fall just a tiny bit every time. Only a few seconds later, he walks towards you while pulling out his dick and stroking it. When he reaches you, he pushes you down. "Get on your knees and give me a blowjob."'
 				'You do as he says and reach out for his cock.'
 				act 'Suck him':
 					*clr & cla
@@ -1129,7 +1129,7 @@ if $ARGS[0] = 'caught2':
 							*clr & cla
 							'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/teacher/makar/sex/school/caughtcum.jpg"></center>'
 							'You suck him for a little longer until he starts groaning and pulls his dick out of your mouth. He holds it right in front of your mouth and jerks it a few times. It starts spurting warm all over your face, mostly around your mouth. When he finishes, he rubs the tip of his dick against your lips and then shoves it back into your mouth, the sight of you covered in his cum emboldening him. You look up at him while you suck his cock clean, smiling around him as you feel him getting soft in your mouth. He pulls out of your mouth and tucks his dick back into his pants.'
-							'Without a word, he walks over to one of the sinks and washes his hands; he seems to be ignoring you, but you can see him giving you sideways glances. Finally, he smiles. "Feel free to cut class any time you like, <<$pcs_firstname>>. I''ll happily keep your secret."' 
+							'Without a word, he walks over to one of the sinks and washes his hands; he seems to be ignoring you, but you can see him giving you sideways glances. Finally, he smiles. "Feel free to cut class any time you like, <<$pcs_firstname>>. I''ll happily keep your secret."'
 							'You smile back. "If I get ''punished'' like that every time I skip class, I will." He chuckles at that, shakes his head, then leaves the bathroom - you think you can hear him whistling outside as he walks away. Still, you can''t help but wonder what he was doing in the girls bathroom in the first place.'
 							gs 'cum_call', 'face', 'A128', 1
 							gs 'arousal', 'end'
@@ -1176,7 +1176,7 @@ if $ARGS[0] = 'caught2':
 											*clr & cla
 											'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/teacher/makar/sex/school/caughtcum.jpg"></center>'
 											'He pulls out of you and gently pushes you down on your knees while he gets rid of the condom. He holds his dick in your face and jerks it a few times. It starts spurting warm cum all over your face, mostly around your mouth. When he finishes, he rubs the tip of his dick against your lips and then shoves it back into your mouth, the sight of you covered in his cum emboldening him. You look up at him while you suck his cock clean, smiling around him as you feel him getting soft in your mouth. He pulls out of your mouth and tucks his dick back into his pants.'
-											'Without a word, he walks over to one of the sinks and washes his hands; he seems to be ignoring you, but you can see him giving you sideways glances. Finally, he smiles. "Feel free to cut class any time you like, <<$pcs_firstname>>. I''ll happily keep your secret."' 
+											'Without a word, he walks over to one of the sinks and washes his hands; he seems to be ignoring you, but you can see him giving you sideways glances. Finally, he smiles. "Feel free to cut class any time you like, <<$pcs_firstname>>. I''ll happily keep your secret."'
 											'You smile back. "If I get ''punished'' like that every time I skip class, I will." He chuckles at that, shakes his head, then leaves the bathroom - you think you can hear him whistling outside as he walks away. Still, you can''t help but wonder what he was doing in the girls bathroom in the first place.'
 											gs 'cum_call', 'face', 'A128', 1
 											gs 'arousal', 'end'
@@ -1203,7 +1203,7 @@ if $ARGS[0] = 'caught3':
 	gs 'stat'
 	'<center><b><font color="maroon">Girls bathroom</font></b></center>'
 	'<center><img <<$set_imgh>> src="images/locations/pavlovsk/school/bathroom/caughtpr1.jpg"></center>'
-	'After a few minutes, you hear someone else in the bathroom with you. You peek out and see Miss Volkov standing at the mirror, causing you to duck back into the stall and close the door as quietly as you can, your heart beating like crazy as you pray she didn''t notice you. You hear the click of her heels coming closer, closer... and stop, right outside your stall door.' 
+	'After a few minutes, you hear someone else in the bathroom with you. You peek out and see Miss Volkov standing at the mirror, causing you to duck back into the stall and close the door as quietly as you can, your heart beating like crazy as you pray she didn''t notice you. You hear the click of her heels coming closer, closer... and stop, right outside your stall door.'
 	'"I saw you in the mirror, young lady!" she says menacingly as she pushes the door open. "What do you think you''re doing? Skipping class, I presume?" Her eyes narrow when they fall on the smoldering cigarette on the ground. "And smoking in school too, huh? You know how I feel about students smoking in my school."'
 	act 'Continue':
 		*clr & cla
@@ -1223,22 +1223,22 @@ if $ARGS[0] = 'caught3':
 				act 'This isn''t fair':
 					*clr & cla
 					'<center><img <<$set_imgh>> src="images/locations/pavlovsk/school/bathroom/caughtpr5.jpg"></center>'
-					if $pantyworntype = 'none': 
+					if $pantyworntype = 'none':
 						'As you lick her shoes, she reaches down, grabs you by the hair and twists it painfully in her hand before painfully yanking you to your feet. She then pushes you forward, bending you over as her hand in you hair holds you in place while her other hand pulls up your skirt. When she can''t find your panties, she again painfully twists your hair. "You dirty little slut, where are your panties? You better be wearing some in my school from now on, you hear me?!" She''s not waiting for a reply.'
-					else	
+					else
 						'As you lick her shoes, she reaches down, grabs you by the hair and twists it painfully in her hand before painfully yanking you to your feet. She then pushes you forward, bending you over as her hand in your hair holds you in place while her other hand pulls up your skirt and pulls your panties down around your knees.'
 					end
 					gs 'arousal', 'foreplay', 10, 'sub', 'maso'
 					gs 'arousal', 'end'
 					gs 'stat'
-					
+
 					if detention_set = 0:
 						detention_set = 1
 						gs 'pain', 2, 'asscheeks', 'spank'
 						'Once your bare ass is exposed, she starts spanking you. She uses the full force of her swings to deliver stinging slaps to your bare ass and spanks you until your ass is bright red. She only stops when her hand starts to hurt too much to continue. She finally lets go of you and steps away. "In addition, you will report to detention this weekend. Now get your ass to class! I don''t want to catch you cutting class again, you understand?" You nod your head and wipe away the tears before you straighten up your clothes and go to class.'
 					else
 						gs 'pain', 2, 'asscheeks', 'spank'
-						'Once your bare ass is exposed, she starts spanking you. She uses the full force of her swings to deliver stinging slaps to your bare ass and spanks you until your ass is bright red. She only stops when her hand starts to hurt too much to continue. She finally lets go of you and steps away.' 
+						'Once your bare ass is exposed, she starts spanking you. She uses the full force of her swings to deliver stinging slaps to your bare ass and spanks you until your ass is bright red. She only stops when her hand starts to hurt too much to continue. She finally lets go of you and steps away.'
 						!!Todo: Has to be written
 						!!'"In addition you will report to my office after school. Now get your ass to class! I don''t want to catch you playing truant again, you understand?" You nod your head and wipe away the tears as you straighten up your clothes and go to class.'
 					end

+ 33 - 33
locations/gschool_gossip.qsrc

@@ -3,7 +3,7 @@
 
 if $ARGS[0] = 'morning':
 	!! Will need the code for the new Sonia gossip here in the morning
-	if soniafall['gossip'] ! soniafall and soniafall > 0 and soniafall < 8: gs 'gschool_gossip', 'sonia_disco_gossip'
+	if soniafall['gossip'] ! soniaQW['soniafall'] and soniaQW['soniafall'] > 0 and soniaQW['soniafall'] < 8: gs 'gschool_gossip', 'sonia_disco_gossip'
 	if sveta_dyke_rumor = 30 or sveta_dyke_rumor = 24 or sveta_dyke_rumor = 18 or sveta_dyke_rumor = 12 or sveta_dyke_rumor = 6 or sveta_dyke_rumor = 1:
 		gs 'gschool_gossip', 'sveta_dyke_rumors', 'picture'
 	else
@@ -45,22 +45,22 @@ if $ARGS[0] = 'gossip':
 		*nl
 	end
 
-	if soniaPS > 0 and soniaPS < 4 and rand(0,1+SoniaPS)= 0:
-		if soniaPS = 1:
-			if (soniaPSdays+7) < daystart:
-				soniaPS = 2
-				killvar 'soniaPSdays'
+	if soniaQW['slut'] > 0 and soniaQW['slut'] < 4 and rand(0,1+soniaQW['slut'])= 0:
+		if soniaQW['slut'] = 1:
+			if (soniaQW['slutdays']+7) < daystart:
+				soniaQW['slut'] = 2
+				killvar 'soniaQW['slutdays']'
 			end
 			*nl
 			'"Did you hear what happened at the disco the other night? Sonia gave like five guys a blowjob, all at once!"'
 			'"Yeah, I heard. I don''t think anyone will want to go out with her now, not after Kotov and his cronies had their way with her."'
 			'"What do you mean?"'
 			'"They all came right on her face and made her walk out like that. I bet half the town has seen pictures of her face covered in cum. It''s disgusting!"'
-		elseif soniaPS = 2:
+		elseif soniaQW['slut'] = 2:
 			*nl
 			'"Have you heard what Sonia is up to nowadays? Apparently, she''s in the bathroom during break giving out blowjobs to literally anyone!"'
 			'"That''s nasty! Think we should go have a look?"'
-		elseif soniaPS = 3:
+		elseif soniaQW['slut'] = 3:
 			*nl
 			'"Sonia turned into a huge whore all of a sudden. She has all sorts of sex now, no matter how nasty! Such a shame."'
 			'"What do you mean, such a shame? Why do you even care?"'
@@ -129,7 +129,7 @@ if $ARGS[0] = 'gossip':
 		'"So is it true? Did Albina actually start throwing punches at Karine?"'
 		'"Damn straight. She just flew at her as soon as she saw her. Girl wouldn''t be walking if Vicky didn''t stop her."'
 		'"So she''s off the squad then? I know I won''t be signing up to replace her. Albina scares me."'
-		'"Apparently, she terrified Karine so much that she went to live with her aunt in Moscow."' 
+		'"Apparently, she terrified Karine so much that she went to live with her aunt in Moscow."'
 		'"Damn. I wonder how a younger girl made the squad in the first place?"'
 		'"Albina said it was because she had talent nobody in our year had, but I think it was the..." The girl cups her breasts in her hands and bounces them slightly as the other girl nods in agreement.'
 	!! '<=' on purpose, since this kind of gossip spreads fast
@@ -161,7 +161,7 @@ if $ARGS[0] = 'mixed':
 		'Walking down the halls, you barely notice the poor state of the school anymore, having grown used to it. Approaching your locker, you see several of your classmates who you wave to. As you do, you overhear some of them talking about a variety of things, including some juicy gossip.'
 		*nl
 	end
-	
+
 	chat_rand = rand(1,95)
 	if chat_rand = 1:
 		'"Man, this town is so boring! We really need to graduate soon, so we can go live in the city!"'
@@ -541,7 +541,7 @@ if $ARGS[0] = 'boys':
 
 	chat_rand = rand(1,45)
 	if chat_rand = 1:
-		'"Dude, you should''ve seen me in League of Legends yesterday. I totally carried my crappy team to victory!"' 
+		'"Dude, you should''ve seen me in League of Legends yesterday. I totally carried my crappy team to victory!"'
 		'His friend doesn''t seem impressed. "I''ve seen you play before," he scoffs. "You couldn''t carry a paper bag to the litter bin if your life depended on it!"'
 	elseif chat_rand = 2:
 		'"Double rainbows man... What do they even mean?"'
@@ -778,7 +778,7 @@ if $ARGS[0] = 'boys':
 	elseif chat_rand = 44:
 		'You overhear two boys speaking to each other.'
 		'"The things I''d do to have a shot with Albina..." one says with a grin. "Wouldn''t you love to put your junk in her trunk?"'
-		'His friend looks in Albina''s direction. "Even just copping a feel of that ass would be heaven! How does Lazar do it?"' 
+		'His friend looks in Albina''s direction. "Even just copping a feel of that ass would be heaven! How does Lazar do it?"'
 	elseif chat_rand = 45:
 		'As you walk down the hallway, you overhear a group of boys from another class whispering at each other.'
 		'"I don''t know, she''s kind of scary..." one of them says, looking rather nervous.'
@@ -1013,7 +1013,7 @@ if $ARGS[0] = 'girls':
 		'"I was told that Albina is a lesbian, which is why she doesn''t like guys hitting on her," one says.'
 		'"Told by who?" a second one asks.'
 		'"Lizeveta. Although I also heard she sometimes skips class to hook with some of the hot guys in the bathroom."'
-	else	
+	else
 		gs 'gschool_gossip', 'girls', $ARGS[1]
 	end
 	if dimaRevenge = 4 and dimaRevChoice = 2 and hour >= 13:
@@ -1147,66 +1147,66 @@ if $ARGS[0] = 'Lizaveta':
 	end
 end
 
-!!I''m adding this as an event that should happen each Monday when this number goes up. It should only trigger once at each stage and then never again. (soniafall is set in soniadisco file)
+!!I''m adding this as an event that should happen each Monday when this number goes up. It should only trigger once at each stage and then never again. (soniaQW['soniafall'] is set in soniadisco file)
 if $ARGS[0] = 'sonia_disco_gossip':
-	if soniafall = 1:
+	if soniaQW['soniafall'] = 1:
 		'"You should have seen Sonia at the disco."'
 		'"Why? What happened?"'
 		'"She kept getting drinks from the gopniks all night and when she was on the dance floor, she was grinding on anyone and everyone that wanted to dance with her. She got totally wasted, but one of the girls screwed it all up and took her home."'
 		'"Damn! I can''t believe I missed that."'
-	elseif soniafall = 2:
+	elseif soniaQW['soniafall'] = 2:
 		'"Sonia was at it again at the disco."'
 		'"What? Again? When?"'
 		'"Right after you left. She kept getting drinks from the gopniks all night again and when she was on the dance floor, she was grinding on anyone and everyone that wanted to dance with her. She got totally wasted again! Of course, one of the girls screwed it all up again and took her home."'
 		'"Damn! I can''t believe I missed that... Again."'
-	elseif soniafall = 3:
+	elseif soniaQW['soniafall'] = 3:
 		'"Sonia went off with some of the gopniks and came back totally wasted with one of her tits hanging out."'
 		'"Are you kidding me?!"'
 		'"No, it was really amazing. Of course, some girl eventually had to ruin it, but it was nice while it lasted."'
 		'"Why does all of this keep happening when I''m not there?!"'
-	elseif soniafall = 4:
+	elseif soniaQW['soniafall'] = 4:
 		'"Sonia went off with some of the gopniks at the disco and got totally wasted with them. She took off her top and flashed them all her tits."'
 		'"No way! How do you know?"'
 		'"It''s true! Pauline took a video of her and I seen it."'
 		'"Shit, I need to ask Pauline for a copy..."'
-	elseif soniafall = 5:
+	elseif soniaQW['soniafall'] = 5:
 		'"Sonia went off with some of the gopniks at the disco and got totally wasted with them. She took off her panties and flashed her pussy at them."'
 		'"Fuck, are you serious?! I honestly can''t believe Sonia would go that far! I know she''s been acting slutty lately, but damn..."'
 		'"Yeah, no shit. I always thought she was one of those good girls like Katja, but now she''s worse than Vicky."'
 		'"Did Pauline record it again?"'
 		'"Yeah, she has a nice pussy."'
 		'"Fuck, how do you always find out about this first? I need to see that video."'
-	elseif soniafall = 6:
+	elseif soniaQW['soniafall'] = 6:
 		'"Sonia went off with some of the gopniks at the disco and got totally wasted with them. She gave Vitek a blowjob!"'
 		'"Lucky bastard. I guess she really is turning into a slut."'
 		'"Totally. It''s a shame since she was such a nice girl." He looks at his friend and sighs. "Yes, Pauline recorded it."'
 		'"I didn''t... Well if everyone has seen it, then I should too I guess..."'
-	elseif soniafall = 7:
-		'You see Sonia walking down the hall ahead of you with her head down. Some people are laughing, many are jeering at her, and more than a few are calling her a slut. When they''re not doing that, they''re on their phones watching something. You get a ping on your phone and stop to pull it out.' 
+	elseif soniaQW['soniafall'] = 7:
+		'You see Sonia walking down the hall ahead of you with her head down. Some people are laughing, many are jeering at her, and more than a few are calling her a slut. When they''re not doing that, they''re on their phones watching something. You get a ping on your phone and stop to pull it out.'
 		'It''s a message from Pauline with a video attached. You open the video, and to your shock, see Sonia getting gangbanged by a group of gopniks. When they all finish on her face, they drag her back to the disco, where she is paraded around like a prize as cum drips off her face. She eventually realizes what''s going on and flees as everyone laughs at her.'
 		*nl
 		'You know her reputation is in tatters now. One drunk mistake and her life as she knew it is over. The cool kids will dump her after this and no one will take her in. The only people that will talk to her now are boys wanting to use her for sex. You sigh and put your phone away.'
 	end
-	soniafall['gossip'] = soniafall
+	soniafall['gossip'] = soniaQW['soniafall']
 end
 	
 if $ARGS[0] = 'gosip':
-	if soniaPS > 0 and soniaPS < 4 and rand(0,2) = 0:
-		if soniaPS = 1:
-			if (soniaPSdays+7) < daystart:
-				soniaPS = 2
-				killvar 'soniaPSdays'
+	if soniaQW['slut'] > 0 and soniaQW['slut'] < 4 and rand(0,2) = 0:
+		if soniaQW['slut'] = 1:
+			if (soniaQW['slutdays']+7) < daystart:
+				soniaQW['slut'] = 2
+				killvar 'soniaQW['slutdays']'
 			end
 			*nl
 			'"Did you hear what happened at the disco the other night? Sonia gave like five guys a blowjob, all at once!"'
 			'"I heard. I don''t think anyone will go out with her now, not after Kotov and his cronies had their way with her."'
 			'"What do you mean?"'
 			'"They all came right on her face, and made her walk out like that. I bet half the town has seen pictures of her face covered in cum. It''s disgusting!"'
-		elseif soniaPS = 2:
+		elseif soniaQW['slut'] = 2:
 			*nl
 			'"Have you heard what Sonia is up to nowadays? Apparently, she''s giving out blowjobs in the bathroom during breaks!"'
 			'"That''s nasty! Should we go have a look?"'
-		elseif soniaPS = 3:
+		elseif soniaQW['slut'] = 3:
 			*nl
 			'"Sonia turned into a huge whore all of a sudden. She has all sorts of sex now, no matter how nasty! Such a shame."'
 			'"What do you mean, ''such a shame''? Why do you even care?"'
@@ -1268,7 +1268,7 @@ if $ARGS[0] = 'sveta_dyke_rumors':
 
 	if sveta_dyke_rumor = 30:
 		'Two boys are chatting in the hallway as you walk past. "Hey dyke, cock not good enough for you?"'
-		'His friend laughs. "Maybe no one''s given her a good enough ride yet. Hey rug muncher, come and find out what a real man is like!" 
+		'His friend laughs. "Maybe no one''s given her a good enough ride yet. Hey rug muncher, come and find out what a real man is like!"
 		They both laugh as you keep walking, but they follow you and make more crude comments. Several of your fellow students laugh or give you disgusted looks when they hear the boys comments.'
 	elseif sveta_dyke_rumor = 24:
 		'"Hey dyke," two boys say as you walk past them in the hallway. "I hear you''re creeping the other girls out. You know, if they kick you out of the girls locker room, you can always come over to the boys side."'
@@ -1278,7 +1278,7 @@ if $ARGS[0] = 'sveta_dyke_rumors':
 		'Two boys are chatting in the hallway as you walk past. "Did you hear about <<$pcs_nickname>>?" one of them asks.'
 		'"What? That she''s a dyke? Everyone knows that!" his friend replies while glancing at you.'
 		'"No. Well, sort of. She was caught rubbing one out at the other girls when they were showering," the first one replies.'
-		'"Fuck, she''s a bigger dyke than Lera!"' 
+		'"Fuck, she''s a bigger dyke than Lera!"'
 		'Eventually, you walk far enough way to no longer be able to hear them as you head on your way.'
 	elseif sveta_dyke_rumor = 12:
 		'Two boys are chatting in the hallway as you walk past. "<<$pcs_nickname>> is such a dyke. She just won''t stop checking out the other girls in the locker room."'
@@ -1287,7 +1287,7 @@ if $ARGS[0] = 'sveta_dyke_rumors':
 		'Eventually, you walk far enough way to no longer be able to hear them as you head on your way.'
 	elseif sveta_dyke_rumor = 6:
 		'Two boys are chatting in the hallway as you walk past. "<<$pcs_nickname>>''s been at it again. She was caught checking out several of the other girls."'
-		'"Damn, I guess she really is a muff diver."' 
+		'"Damn, I guess she really is a muff diver."'
 		'Eventually, you walk far enough way to no longer be able to hear them as you head on your way.'
 	else
 		'Two boys are chatting in the hallway as you walk past. "Did you hear about <<$pcs_nickname>>?" one of them asks the other as you walk past.'

+ 5 - 5
locations/gschool_lessonsev1.qsrc

@@ -1119,7 +1119,7 @@ if $ARGS[0] = 'computer':
 			'Glancing around the class, you notice Vasily reaching around the girl sitting in front of him and grabbing her breast. At first, she tries to fend him off and tell him to stop, but after Mr. Ivanov shoots her a few dirty looks for the noise she''s making, she just gives up and tries to ignore his groping hands.'
 			act 'Wait for the end of the lesson': gt 'gschool_lessons', 'short_break'
 		elseif scooltiperand = 7:
-			if soniaPS = 1:
+			if soniaQW['slut'] = 1:
 				'<center><video autoplay loop src="images/locations/pavlovsk/school/classroom/classflash.mp4"></video></center>'
 				'Mr. Ivanov engages the class in conversation when Sonia starts openly flirting with him and keeps dropping none too subtle sexual innuendos at him. He does his best to ignore them, but you notice that his crotch is developing a serious bulge. Sonia notices too and pulls her shirt open, flashing her breasts at him and the rest of the class.'
 				'He quickly tells the class to read some chapters in their textbook while he hurries to sit down at his desk, though his eyes linger on a smiling Sonia. You wonder why she wasn''t sent to the principal''s office. If anyone else had done that, they would have been kicked out of class immediately.'
@@ -1477,7 +1477,7 @@ if $ARGS[0] = 'computer':
 			'<center><img <<$set_imgh>> src="images/locations/pavlovsk/school/classroom/computer/lizskirt.jpg"></center>'
 			'At the end of class, Mr. Ivanov gives a final assignment for the day. As your fellow students finish it, they sit next to each other to talk. Bella and Lizaveta end up sitting next to each other, chatting while they look at something on Bella''s monitor. Lizaveta leans over to get a better view, which gives a nice view of her thigh.'
 			act 'Wait for the end of the lesson': gt 'gschool_lessons', 'short_break'
-		elseif scooltiperand = 21 and soniaPS = 1:
+		elseif scooltiperand = 21 and soniaQW['slut'] = 1:
 			gs 'stat'
 			'<center><img <<$set_imgh>> src="images/locations/pavlovsk/school/classroom/computer/soniabutt.jpg"></center>'
 			'At the end of class, Mr. Ivanov gives a final assignment for the day. It''s a fairly hard assignment and you''re just about to start when Sonia walks past you to Mr. Ivanov''s desk, where she tells him she doesn''t understand and asks if he can help. He turns his monitor so she can see it and starts explaining what he just told the class.'
@@ -1591,14 +1591,14 @@ if $ARGS[0] = 'russian':
 			'Lesco quickly wiggles himself out, gets the desk upright again and hurriedly sits down again, blushing furiously all the while. After making sure he''s okay, Mr. Yenotin gets the class back under control and finishes the lesson.'
 			act 'Wait for the end of the lesson': gt 'gschool_lessons', 'short_break'
 		elseif scooltiperand = 7:
-			if soniaPS = 1:
+			if soniaQW['slut'] = 1:
 				'<center><video autoplay loop src="images/locations/pavlovsk/school/classroom/classflash.mp4"></video></center>'
 				'Mr. Yenotin engages the class in conversation when Sonia starts openly flirting with him and keeps dropping none too subtle sexual innuendos at him. He does his best to ignore them, but you notice his crotch is developing a serious bulge and he quickly tells the class to read some chapters in their textbook while he hurries to sit down at his desk.'
 				act 'Wait for the end of the lesson': gt 'gschool_lessons', 'short_break'
 			else
 				gs 'gschool_lessonsev1', 'russian'
 			end
-		elseif scooltiperand = 8 and soniaPS = 1:
+		elseif scooltiperand = 8 and soniaQW['slut'] = 1:
 			'<center><img <<$set_imgh>> src="images/locations/pavlovsk/school/classroom/soniaflash.jpg"></center>'
 			'You hear some whispers and see some other students looking towards the back of the room every time Mr. Yenotin is not looking. You glance back and see Sonia flashing her breasts at Marcus every time Mr. Yenotin looks away, while the boys take pictures of her each time and keep encouraging her to show more.'
 			gs 'arousal', 'voyeur', 5
@@ -1809,7 +1809,7 @@ if $ARGS[0] = 'russian':
 			else
 				act 'Ignore it (<font color="red"><<will_cost>> Willpower</font>)': '<br><font color="red">You don''t have enough willpower to use this action.</font>'
 			end
-		elseif scooltiperand = 15 and (soniafall = 5 or soniaPS = 1):
+		elseif scooltiperand = 15 and (soniaQW['soniafall'] = 5 or soniaQW['slut'] = 1):
 			'<center><img <<$set_imgh>> src="images/locations/pavlovsk/school/classroom/russian/soniadare1.jpg"></center>'
 			'As you work on your class assignment, you hear Pauline talking to Sonia. "I dare you to walk up to Mr. Yenotin and ask him for help. Then bend over his desk, pull your panties down and show everyone your ass."'
 			'Sonia blushes a little, but also looks thrilled at the idea. "Everyone would see..."'

+ 5 - 5
locations/gschool_lessonsev2.qsrc

@@ -359,7 +359,7 @@ if $ARGS[0] = 'geography':
 					act 'Wait for the end of the lesson': gt 'gschool_lessons', 'short_break'
 				end
 			else
-				if soniaPS > 0:
+				if soniaQW['slut'] > 0:
 					'"Well, everyone has a bigger cock than you, but why not ask the expert on cocks?" Lazar says before he turns to Sonia. "Is there any truth to this ''fact'', Sonia?"'
 					'Sonia blushes heavily and avoids answering, but the smirk on her lips betrays her thoughts.'
 					'"I knew it!" Lazar grins and Sonia blushes even more.'
@@ -467,20 +467,20 @@ if $ARGS[0] = 'math':
 			act 'Wait for the end of the lesson': gt 'gschool_lessons', 'short_break'
 		elseif scooltiperand = 3:
 			VK = rand(1,3)
-			if VK = 1 and soniaPS = 1:
+			if VK = 1 and soniaQW['slut'] = 1:
 				'<center><img <<$set_imgh>> src="images/locations/pavlovsk/school/classroom/breastg.jpg"></center>'
 				'While stretching out, you glance over at Sonia and notice Niko reaching under her arms and fondling her breasts. She tries to ignore it, but as Niko continues caressing her breasts, she starts looking light headed as she licks her lips and gets more into it.'
 				gs 'arousal', 'voyeur', 5
 				gs 'arousal', 'end'
 				gs 'stat'
-			elseif VK = 2 and soniaPS = 1:
+			elseif VK = 2 and soniaQW['slut'] = 1:
 				'<center><video autoplay loop src="images/locations/pavlovsk/school/classroom/classflash.mp4"></video></center>'
 				'As Mr. Tsarev has everyone work on solving math problems, Sonia raises her hand and asks for assistance. When he comes over, she starts openly flirting and dropping none too subtle innuendos, which he does his best to dismiss, but you notice a bulge forming in his pants.'
 				'At this point, Sonia pulls open her shirt and flashes her breasts at Mr. Tsarev and the whole class. Mr. Tsarev pauses in shock for a moment. "That is very inappropriate behavior," he says and does his best to silence the class before rushing back to his desk. You occasionally catch him staring back at Sonia when he believes no one is looking.'
 				gs 'arousal', 'erotic_nudity', 5
 				gs 'arousal', 'end'
 				gs 'stat'
-			elseif VK = 3 and soniaPS = 1:
+			elseif VK = 3 and soniaQW['slut'] = 1:
 				'<center><img <<$set_imgh>> src="images/locations/pavlovsk/school/classroom/soniaflash.jpg"></center>'
 				'You hear some whispers and see some of the other students looking towards the back of the room every time Mr. Tsarev is not looking. You curiously glance back to see Sonia flashing her breasts at the boys every time Mr. Tsarev looks away, while the boys take pictures of her while encouraging her to show more.'
 				gs 'arousal', 'erotic_nudity', 5
@@ -634,7 +634,7 @@ if $ARGS[0] = 'math':
 			gs 'arousal', 'end'
 			gs 'stat'
 			act 'Wait for the end of the lesson': gt 'gschool_lessons', 'short_break'
-		elseif scooltiperand = 12 and soniaPS = 1:
+		elseif scooltiperand = 12 and soniaQW['slut'] = 1:
 			'<center><img <<$set_imgh>> src="images/locations/pavlovsk/school/classroom/math/soniachair.jpg"></center>'
 			'Mr. Tsarev gives the class the last five minutes to do what they want. Some students talk to their fellow students next to them and a few get up and walk around. Sonia gets up and tries to step over a desk, but ends up straddling the back of a chair. Instead of stepping the rest of the way over it, she stops and bites her lower lip, then scoots back and forth along the chair. Before anyone really notices what she''s doing, the bell rings and everyone leaves.'
 			gs 'arousal', 'voyeur', 5

+ 2 - 2
locations/gschool_lunch.qsrc

@@ -169,7 +169,7 @@ if $ARGS[0] = 'break':
 		if school_period = 6:
 			if lunch_event ! daystart: lunch_event = daystart & gt 'gschool_lunch', 'events'
 
-			if soniaPS = 2: soniaPS = 3 & 'During break, you''re wandering through the school hallways killing time when you notice Sonia and Vitek talking about something. Sonia looks like she''s about to cry, but eventually she gives a quiet nod as Vitek whispers something in her ear.'
+			if soniaQW['slut'] = 2: soniaQW['slut'] = 3 & 'During break, you''re wandering through the school hallways killing time when you notice Sonia and Vitek talking about something. Sonia looks like she''s about to cry, but eventually she gives a quiet nod as Vitek whispers something in her ear.'
 
 			act 'Use water cooler': $breaktype = 'long' & gt 'gschool_break', 'watercooler'
 			act 'Go to the girls restroom': $breaktype = 'long' & gt 'gschool_break', 'girls_restroom'
@@ -180,7 +180,7 @@ if $ARGS[0] = 'break':
 				gt 'gschool_events', 'break_events'
 			end
 
-			if soniaPS = 2: soniaPS = 3 & 'During break, you''re wandering through the school hallways killing time when you notice Sonia and Vitek talking about something. Sonia looks like she''s about to cry, but eventually she gives a quiet nod as Vitek whispers something in her ear.'
+			if soniaQW['slut'] = 2: soniaQW['slut'] = 3 & 'During break, you''re wandering through the school hallways killing time when you notice Sonia and Vitek talking about something. Sonia looks like she''s about to cry, but eventually she gives a quiet nod as Vitek whispers something in her ear.'
 
 			act 'Use water cooler': $breaktype = 'short' & gt 'gschool_break', 'watercooler'
 			act 'Go to the girls restroom': $breaktype = 'short' & gt 'gschool_break', 'girls_restroom'

+ 2 - 2
locations/gschool_outcast_chats.qsrc

@@ -68,10 +68,10 @@ if $ARGS[0] = 'petia':
 	if fame['pav_slut'] > 200:
 		if npc_rel['A159'] >= 50:
 			'"Look everyone, the other school bike is here! We don''t have to share Sonia anymore!" The nerds awkwardly ignore him as he walks up to you with a wide grin. His filthy teeth look like they haven''t seen a toothbrush in years, if ever. "Are you here to finally give me a blowjob?" he asks with a creepy stare. Despite your reputation, even you still have standards and snort in disgust before walking away.'
-			if soniaPS > 0: 'Unfazed by your rejection, he walks up to Sonia and asks her the same question. You can see her visibly gag in disgust.'
+			if soniaQW['slut'] > 0: 'Unfazed by your rejection, he walks up to Sonia and asks her the same question. You can see her visibly gag in disgust.'
 		else
 			'He backs away when he sees you approaching. "Get away from me you disgusting slut!" He then stops, turns around and walks back. "Unless you want to give me a blowjob that is?" he asks hopefully, but even you have standards and snort in disgust before walking away.'
-			if soniaPS > 0: 'Unfazed by your rejection, he walks up to Sonia and asks her the same question. You can see her visibly gag in disgust.'
+			if soniaQW['slut'] > 0: 'Unfazed by your rejection, he walks up to Sonia and asks her the same question. You can see her visibly gag in disgust.'
 		end
 	elseif grupTipe = 1:
 		grupvalue[1] -= 1

+ 5 - 5
locations/gschool_post_shower.qsrc

@@ -29,7 +29,7 @@ if $ARGS[0] = 'post_shower':
 			elseif tits = 2:
 				'Upon inspection, you notice her breasts are the same size as your own, with a nice firm shape to them. They are average-sized compared to the other girls.'
 			else
-				'Upon inspection, you notice her breasts have a nice firm shape to them, but are smaller than your own and most of your classmates.' 
+				'Upon inspection, you notice her breasts have a nice firm shape to them, but are smaller than your own and most of your classmates.'
 			end
 			*nl
 			gs 'arousal', 'erotic_nudity', 3
@@ -740,7 +740,7 @@ if $ARGS[0] = 'post_shower':
 				cla
 				if rand (1,4) = 1:
 					if npc_rel['A25'] >= 60:
-						if soniaPS = 0:
+						if soniaQW['slut'] = 0:
 							'Letting your gaze linger, you are surprised when she suddenly looks in your direction. Seeing you staring, she gives you a smile and turns her body, giving you a better look.'
 							'You should probably get dressed and leave before this goes any further.'
 						else
@@ -750,7 +750,7 @@ if $ARGS[0] = 'post_shower':
 						'Letting your gaze linger, you are surprised when she suddenly looks in your direction. Seeing you staring, she gives you a dirty look and turns around, hiding her body as she quickly gets dressed and leaves.'
 						'You should probably get dressed and leave before it gets more awkward.'
 					else
-						if soniaPS = 0:
+						if soniaQW['slut'] = 0:
 							'She is focused on getting dressed when she suddenly stops and looks at you. Seeing you staring, she gives you a hesitant smile before continuing to get dressed.'
 							'You should probably get back to getting dressed yourself before others notice you staring.'
 						else
@@ -1639,7 +1639,7 @@ if $ARGS[0] = 'post_shower2':
 			*clr & cla
 			if rand (1,4) = 1:
 				if npc_rel['A25'] >= 60:
-					if soniaPS = 0:
+					if soniaQW['slut'] = 0:
 						'<center><img <<$set_imgh>> src="images/locations/pavlovsk/school/gym/shower/watchson1.jpg"></center>'
 						'Letting your gaze linger, you are surprised when she suddenly looks in your direction. Seeing you staring, she gives you a smile and turns, giving you a better look.'
 						'You should finish showering and leave before this gets more awkward.'
@@ -1653,7 +1653,7 @@ if $ARGS[0] = 'post_shower2':
 					'Letting your gaze linger, you are surprised when she suddenly looks in your direction. Seeing you staring, she gives you a dirty look and turns around, hiding her body.'
 					'You should finish showering and leave before it gets more awkward.'
 				else
-					if soniaPS = 0:
+					if soniaQW['slut'] = 0:
 						'<center><img <<$set_imgh>> src="images/locations/pavlovsk/school/gym/shower/watchson1.jpg"></center>'
 						'She seems to be enjoying her shower when she suddenly stops and looks at you. Seeing you staring, she gives you a hesitant smile before continuing her shower.'
 						'You should get back to your own shower before others notice you staring.'

+ 112 - 112
locations/gschool_socialchg.qsrc

@@ -55,7 +55,7 @@ if $ARGS[0] = 'test':
 		gt 'gschool_socialchg', 'gopnik outcast'
 	elseif grupvalue[4] < 400 and grupTipe = 4 and grupwarning[4] = 0:
 		gt 'gschool_socialchg', 'gopnik warn 1'
-	elseif grupvalue[4] < 300 and grupTipe = 4 and grupwarning[4] >= 0: 
+	elseif grupvalue[4] < 300 and grupTipe = 4 and grupwarning[4] >= 0:
 		gt 'gschool_socialchg', 'gopnik warn 2'
 	elseif fame['pav_slut'] > 250 and grupTipe = 4 and grupslutwarning[4] = 0:
 		gt 'gschool_socialchg', 'gopnik slut warn'
@@ -94,7 +94,7 @@ if $ARGS[0] = 'Pavlovsk slut':
 	grupslutwarning[2] = 0
 	grupslutwarning[3] = 0
 	grupslutwarning[4] = 0
-	
+
 	gs 'gschool_socialchg', 'group_rel_change','cool kids', -30
 	gs 'gschool_socialchg', 'group_rel_change','jocks', -25
 	gs 'gschool_socialchg', 'group_rel_change','gopniks', -20
@@ -102,11 +102,11 @@ if $ARGS[0] = 'Pavlovsk slut':
 
 	if grupTipe = 1:
 		'<center><img <<$set_imgh>> src="images/locations/pavlovsk/school/events/coolslut.jpg"></center>'
-		if soniaPS = 0:
+		if soniaQW['slut'] = 0:
 			'Irina and Dimka walk up to you. Dimka is smirking at you while Irina looks you over from head to toe in complete disgust. Just as you''re about to ask what''s going on, Irina cuts you off. "Shut your cum hole, slut! I don''t want to smell your cum breath. We''ve all heard about what you''ve been up to, and your ass is out. You''re no longer welcome around us. Find some dick to suck, and maybe they will pretend to care about you." With that, Irina turns and walks away as Dimka gives you a final look and shakes his head.'
-		else	
+		else
 			'Irina and Dimka walk up to you. Dimka is smirking at you while Irina looks you over from head to toe in complete disgust. Then, just as you''re about to ask what''s going on, Irina cuts you off. "Shut your cum hole, slut! I don''t want to smell your cum breath. We''ve all heard about what you''ve been up to, and your ass is out. You''re no longer welcome around us. Go and find Sonia. I''m sure you two have a lot in common now." With that, Irina turns and walks away as Dimka gives you a final look and shakes his head.'
-		end	
+		end
 		'"What a waste, you fucking slut." He then spits at your feet before leaving as well. You hear many of the students around you laughing as you look around. Having been publicly shamed and disavowed by your clique, the other students are ready to prey on your weakness and either start mocking you or actively look away. You grab your stuff and hurry to your next class.'
 	elseif grupTipe = 2:
 		'<center><img <<$set_imgh>> src="images/locations/pavlovsk/school/events/jockslut.jpg"></center>'
@@ -115,11 +115,11 @@ if $ARGS[0] = 'Pavlovsk slut':
 		else
 			'Albina and Lazar walk up to you with looks of disgust on their face. "What are you doing here? Shouldn''t you be in the boys'' bathroom sucking dick like the whore that you are?" Lazar says mockingly. Albina opens her mouth to say something but chooses to remain quiet and stares at the floor. Christina smirks at you from behind them, not daring to challenge you directly but enjoying the moment.'
 		end
-		if soniaPS = 0:
+		if soniaQW['slut'] = 0:
 			'"Go hang out with the other losers because none of us gives a shit about you anymore," Lazar says before turning and walking away. Albina looks at you with what you think is disappointment before she shakes her head and follows Lazar. Having been publicly shamed and disavowed by your clique, the other students are ready to prey on your weakness and either start mocking you or actively look away. You grab your stuff and hurry to your next class.'
-		else	
+		else
 			'"Go hang out with the other losers because none of us gives a shit about you anymore. I''m sure you and Sonia have a lot in common now." Lazar says mockingly before walking away. Albina looks at you with what you think is disappointment before she shakes her head and follows Lazar. Having been publicly shamed and disavowed by your clique, the other students are ready to prey on your weakness and either start mocking you or actively look away. You grab your stuff and hurry to your next class.'
-		end	
+		end
 	elseif grupTipe = 3:
 		'<center><img <<$set_imgh>> src="images/locations/pavlovsk/school/events/nerdslut.jpg"></center>'
 		'A group of students stand in front of you, wanting a better look at what''s written on your locker. They start laughing when you look at them and quickly hurry away from you as if you have the plague. You turn and try to find some of your friends, but most seem to be hiding or hurrying off when you approach. You finally manage to catch up to Gerasim, but he turns to you just as you''re about to say something. "Please go away! I don''t know what you''ve gotten yourself into, but the things they say you''ve done..." He looks disgusted. "I''m sorry, but I can''t be seen hanging out with you anymore. I''ve got enough problems without you making them worse."'
@@ -160,11 +160,11 @@ if $ARGS[0] = 'coolkid':
 		'<center><img <<$set_imgh>> src="images/locations/pavlovsk/school/events/joincool.jpg"></center>'
 		'You nod your head. "Yes, I would love to! I love hanging out with you guys!"'
 		'Vicky gives you a hug. Once she lets go, Andrey wraps an arm around your shoulder and starts leading you to your next class. "From now on, you''re one of us." Stasya gives you a friendly smile as the four of you walk to your next class.'
-		
+
 		grupvalue[2] = min(rand(675,725),grupvalue[2])
 		grupvalue[3] = min(rand(625,675),grupvalue[3])
 		grupvalue[4] = min(rand(600,650),grupvalue[4])
-		
+
 		if grupTipe = 2: grupvalue[2] = rand(500,600)
 		if grupTipe = 3: grupvalue[3] = rand(500,600)
 		if grupTipe = 4: grupvalue[4] = rand(500,600)
@@ -173,10 +173,10 @@ if $ARGS[0] = 'coolkid':
 		old_grupvalue[2] = grupvalue[2]
 		old_grupvalue[3] = grupvalue[3]
 		old_grupvalue[4] = grupvalue[4]
-		
+
 		grupTipe = 1
 		grupTipe['joined_cool'] = 1
-		
+
 		gs 'gschool_socialchg', 'group_rel_change','cool kids', 5
 		gs 'stat'
 
@@ -248,7 +248,7 @@ if $ARGS[0] = 'jock':
 		grupvalue[1] = min(rand(675,725),grupvalue[1])
 		grupvalue[3] = min(rand(600,650),grupvalue[3])
 		grupvalue[4] = min(rand(650,700),grupvalue[4])
-		
+
 		if grupTipe = 1: grupvalue[1] = rand(500,600)
 		if grupTipe = 3: grupvalue[3] = rand(500,600)
 		if grupTipe = 4: grupvalue[4] = rand(500,600)
@@ -260,7 +260,7 @@ if $ARGS[0] = 'jock':
 
 		grupTipe = 2
 		grupTipe['joined_jock'] = 1
-		
+
 		gs 'gschool_socialchg', 'group_rel_change','jocks', 5
 		gs 'stat'
 
@@ -326,14 +326,14 @@ if $ARGS[0] = 'nerd':
 		'<center><img <<$set_imgh>> src="images/locations/pavlovsk/school/events/joinnerd.jpg"></center>'
 		'You nod your head. "Yes, I would love to hang out with you guys! A game night sounds like a lot of fun."'
 		'They all start speaking at once, excited about you joining them. Feofan then speaks up. "That''s great, <<$pcs_nickname>>! Meet us at the community center library tonight at 20:00. See you then." Then, they all start leaving and going to class, saying they look forward to seeing you tonight.'
-		
+
 		!! Used at the first d&d game to se if Sveta is new in the nerd group.
 		if grupTipe['joined_nerds'] = 0: grupTipe['joined_nerds'] = 1
-		
+
 		grupvalue[1] = min(rand(600,650),grupvalue[1])
 		grupvalue[2] = min(rand(625,625),grupvalue[2])
 		grupvalue[4] = min(rand(600,650),grupvalue[4])
-		
+
 		if grupTipe = 1: grupvalue[1] = rand(500,600)
 		if grupTipe = 2: grupvalue[2] = rand(500,600)
 		if grupTipe = 4: grupvalue[4] = rand(500,600)
@@ -342,13 +342,13 @@ if $ARGS[0] = 'nerd':
 		old_grupvalue[2] = grupvalue[2]
 		old_grupvalue[3] = grupvalue[3]
 		old_grupvalue[4] = grupvalue[4]
-				
+
 		grupTipe = 3
 		grupTipe['joined_nerd'] = 1
-		
+
 		nerd_game['invite_day'] = daystart
 		nerd_game['game_day'] = daystart
-		
+
 		gs 'gschool_socialchg', 'group_rel_change','nerds', 5
 		gs 'stat'
 
@@ -474,7 +474,7 @@ if $ARGS[0] = 'coolkid outcast':
 	grupvalue[2] = min(rand(600,650),grupvalue[2])
 	grupvalue[3] = min(rand(650,700),grupvalue[3])
 	grupvalue[4] = min(rand(700,750),grupvalue[4])
-		
+
 	old_grupvalue[1] = grupvalue[1]
 	old_grupvalue[2] = grupvalue[2]
 	old_grupvalue[3] = grupvalue[3]
@@ -482,7 +482,7 @@ if $ARGS[0] = 'coolkid outcast':
 
 	grupTipe = 5
 	grupTipe['before_outcast'] = 1
-	
+
 	gs 'gschool_socialchg', 'group_rel_change','cool kids', -20
 	gs 'stat'
 
@@ -499,12 +499,12 @@ if $ARGS[0] = 'jock outcast':
 		'Christina, Lariska and Lina walk up to you. Lariska and Lina look at you like you did something wrong while Christina smirks. She shoves you hard up against your locker. "What are you doing here bitch? You belong with the loser crowd now, so fuck off." She laughs, and Lariska and Lina join in openly mocking you. "Stay away from us, or I''ll show you what happens to little bitches who don''t know their place," Christina warns before they turn and walk away. Having been publicly disavowed by your clique, the other students are ready to prey on your weakness, and either start mocking you or actively look away. You grab your stuff and hurry to your next class.'
 	end
 	'<font color = red>You have been kicked out of your social group and become an outcast.</font>'
-	
+
 	grupvalue[1] = min(rand(600,650),grupvalue[1])
 	grupvalue[2] = 0
 	grupvalue[3] = min(rand(650,700),grupvalue[3])
 	grupvalue[4] = min(rand(675,725),grupvalue[4])
-		
+
 	old_grupvalue[1] = grupvalue[1]
 	old_grupvalue[2] = grupvalue[2]
 	old_grupvalue[3] = grupvalue[3]
@@ -512,7 +512,7 @@ if $ARGS[0] = 'jock outcast':
 
 	grupTipe = 5
 	grupTipe['before_outcast'] = 2
-	
+
 	gs 'gschool_socialchg', 'group_rel_change','jocks', -20
 	gs 'stat'
 
@@ -530,7 +530,7 @@ if $ARGS[0] = 'nerd outcast':
 	grupvalue[2] = min(rand(650,700),grupvalue[2])
 	grupvalue[3] = 0
 	grupvalue[4] = min(rand(625,675),grupvalue[4])
-		
+
 	old_grupvalue[1] = grupvalue[1]
 	old_grupvalue[2] = grupvalue[2]
 	old_grupvalue[3] = grupvalue[3]
@@ -538,7 +538,7 @@ if $ARGS[0] = 'nerd outcast':
 
 	grupTipe = 5
 	grupTipe['before_outcast'] = 3
-	
+
 	gs 'gschool_socialchg', 'group_rel_change','nerds', -20
 	gs 'stat'
 
@@ -551,12 +551,12 @@ if $ARGS[0] = 'gopnik outcast':
 	'<center><img <<$set_imgh>> src="images/locations/pavlovsk/school/events/outcast.jpg"></center>'
 	'As you approach your locker, Pauline, Lera, and Lena walk up next to you. Pauline looks like she''s preparing to beat you up, while Lera looks at you with disgust. Pauline shakes her head at you and finally speaks up. "I don''t know what your problem is, but apparently, hanging out, partying and having a good time wasn''t enough for you. Nooo, you had to become a spineless cunt afraid of her own shadow, so stay the fuck away from us, or I''ll beat the shit out of you!" With that, Pauline shoves you against your locker and walks away. Lena gives you a final look of disgust and pushes you again while Lera gives you a few parting words before walking away. "You''re so pathetic. Even the nerds will kick your ass now." Having been publicly disavowed by your clique, the other students are ready to prey on your weakness, and either start mocking you or actively look away. You grab your stuff and hurry to your next class.'
 	'<font color = red>You have been kicked out of your social group and become an outcast.</font>'
-	
+
 	grupvalue[1] = min(rand(625,675),grupvalue[1])
 	grupvalue[2] = min(rand(650,700),grupvalue[2])
 	grupvalue[3] = min(rand(600,650),grupvalue[3])
 	grupvalue[4] = 0
-		
+
 	old_grupvalue[1] = grupvalue[1]
 	old_grupvalue[2] = grupvalue[2]
 	old_grupvalue[3] = grupvalue[3]
@@ -564,7 +564,7 @@ if $ARGS[0] = 'gopnik outcast':
 
 	grupTipe = 5
 	grupTipe['before_outcast'] = 4
-	
+
 	gs 'gschool_socialchg', 'group_rel_change','gopniks', -20
 	gs 'stat'
 
@@ -595,7 +595,7 @@ if $ARGS[0] = 'group_rel_change':
 	if $ARGS[3] = 'male' or $ARGS[3] = 'boy': gtemp = 1
 	if $ARGS[3] = 'female' or $ARGS[3] = 'girl': gtemp = 2
 	temp = arrsize('npc_dna')
-	
+
 	:gs_socloop
 	if npc_grupTipe['A<<temp>>'] = ntemp and (gtemp = 0 or npc_gender['A<<temp>>'] = gtemp - 1):
 		npc_rel['A<<temp>>'] += ARGS[2]
@@ -610,89 +610,89 @@ end
 if $ARGS[0] = 'group_student_rel_change':
 	if grupvalue_student_day ! daystart:
 		if npc_rel['A1'] >= 60: grupvalue[1] += 1
-		if npc_rel['A1'] <= 20: grupvalue[1] -= 1 
+		if npc_rel['A1'] <= 20: grupvalue[1] -= 1
 		if npc_rel['A2'] >= 60: grupvalue[3] += 1
 		if npc_rel['A2'] <= 20: grupvalue[3] -= 1
-		if npc_rel['A3'] >= 60: grupvalue[2] += 1     
-		if npc_rel['A3'] <= 20: grupvalue[2] -= 1   
-		if npc_rel['A4'] >= 60: grupvalue[1] += 1     
-		if npc_rel['A4'] <= 20: grupvalue[1] -= 1   
-		if fedormasha = 0 and npc_rel['A5'] >= 60: grupvalue[3] += 1     
-		if fedormasha = 0 and npc_rel['A5'] <= 20: grupvalue[3] -= 1   
-		if npc_rel['A6'] >= 60: grupvalue[3] += 1     
-		if npc_rel['A6'] <= 20: grupvalue[3] -= 1   
-		if npc_rel['A7'] >= 60: grupvalue[5] += 1     
-		if npc_rel['A7'] <= 20: grupvalue[5] -= 1   
-		if npc_rel['A8'] >= 60: grupvalue[2] += 1     
-		if npc_rel['A8'] <= 20: grupvalue[2] -= 1   
-		if npc_rel['A9'] >= 60: grupvalue[4] += 1     
-		if npc_rel['A9'] <= 20: grupvalue[4] -= 1   
-		if npc_rel['A10'] >= 60: grupvalue[4] += 1     
-		if npc_rel['A10'] <= 20: grupvalue[4] -= 1   
-		if npc_rel['A11'] >= 60: grupvalue[4] += 1     
-		if npc_rel['A11'] <= 20: grupvalue[4] -= 1   
-		if npc_rel['A12'] >= 60: grupvalue[3] += 1     
-		if npc_rel['A12'] <= 20: grupvalue[3] -= 1   
-		if npc_rel['A13'] >= 60: grupvalue[2] += 1     
-		if npc_rel['A13'] <= 20: grupvalue[2] -= 1   
-		if npc_rel['A14'] <= 20: grupvalue[1] -= 1   
-		if npc_rel['A14'] >= 60: grupvalue[1] += 1     
-		if npc_rel['A15'] >= 60: grupvalue[1] += 1     
-		if npc_rel['A15'] <= 20: grupvalue[1] -= 1   
-		if npc_rel['A16'] >= 60: grupvalue[3] += 1     
-		if npc_rel['A16'] <= 20: grupvalue[3] -= 1   
-		if npc_rel['A17'] >= 60: grupvalue[1] += 1     
+		if npc_rel['A3'] >= 60: grupvalue[2] += 1
+		if npc_rel['A3'] <= 20: grupvalue[2] -= 1
+		if npc_rel['A4'] >= 60: grupvalue[1] += 1
+		if npc_rel['A4'] <= 20: grupvalue[1] -= 1
+		if fedormasha = 0 and npc_rel['A5'] >= 60: grupvalue[3] += 1
+		if fedormasha = 0 and npc_rel['A5'] <= 20: grupvalue[3] -= 1
+		if npc_rel['A6'] >= 60: grupvalue[3] += 1
+		if npc_rel['A6'] <= 20: grupvalue[3] -= 1
+		if npc_rel['A7'] >= 60: grupvalue[5] += 1
+		if npc_rel['A7'] <= 20: grupvalue[5] -= 1
+		if npc_rel['A8'] >= 60: grupvalue[2] += 1
+		if npc_rel['A8'] <= 20: grupvalue[2] -= 1
+		if npc_rel['A9'] >= 60: grupvalue[4] += 1
+		if npc_rel['A9'] <= 20: grupvalue[4] -= 1
+		if npc_rel['A10'] >= 60: grupvalue[4] += 1
+		if npc_rel['A10'] <= 20: grupvalue[4] -= 1
+		if npc_rel['A11'] >= 60: grupvalue[4] += 1
+		if npc_rel['A11'] <= 20: grupvalue[4] -= 1
+		if npc_rel['A12'] >= 60: grupvalue[3] += 1
+		if npc_rel['A12'] <= 20: grupvalue[3] -= 1
+		if npc_rel['A13'] >= 60: grupvalue[2] += 1
+		if npc_rel['A13'] <= 20: grupvalue[2] -= 1
+		if npc_rel['A14'] <= 20: grupvalue[1] -= 1
+		if npc_rel['A14'] >= 60: grupvalue[1] += 1
+		if npc_rel['A15'] >= 60: grupvalue[1] += 1
+		if npc_rel['A15'] <= 20: grupvalue[1] -= 1
+		if npc_rel['A16'] >= 60: grupvalue[3] += 1
+		if npc_rel['A16'] <= 20: grupvalue[3] -= 1
+		if npc_rel['A17'] >= 60: grupvalue[1] += 1
 		if npc_rel['A17'] <= 20: grupvalue[1] -= 1
-		if npc_rel['A19'] >= 60: grupvalue[2] += 1     
-		if npc_rel['A19'] <= 20: grupvalue[2] -= 1   
-		if npc_rel['A200'] >= 60: grupvalue[4] += 1     
-		if npc_rel['A200'] <= 20: grupvalue[4] -= 1   
-		if npc_rel['A21'] >= 60: grupvalue[4] += 1     
-		if npc_rel['A21'] <= 20: grupvalue[4] -= 1   
-		if npc_rel['A22'] >= 60: grupvalue[1] += 1     
-		if npc_rel['A22'] <= 20: grupvalue[1] -= 1   
-		if npc_rel['A23'] >= 60: grupvalue[2] += 1     
-		if npc_rel['A23'] <= 20: grupvalue[2] -= 1   
-		if npc_rel['A24'] <= 20: grupvalue[4] -= 1   
-		if npc_rel['A24'] >= 60: grupvalue[4] += 1     
-		if soniaPS = 0 and npc_rel['A25'] >= 60: grupvalue[1] += 1     
-		if soniaPS = 0 and npc_rel['A25'] <= 20: grupvalue[1] -= 1   
-		if npc_rel['A139'] >= 60: grupvalue[1] += 1  
-		if npc_rel['A139'] <= 20: grupvalue[1] -= 1   
-		if npc_rel['A140'] >= 60: grupvalue[1] += 1     
-		if npc_rel['A140'] <= 20: grupvalue[1] -= 1   
-		if npc_rel['A141'] <= 20: grupvalue[2] -= 1   
-		if npc_rel['A141'] >= 60: grupvalue[2] += 1     
-		if npc_rel['A142'] >= 60: grupvalue[3] += 1     
-		if npc_rel['A142'] <= 20: grupvalue[3] -= 1   
-		if npc_rel['A143'] >= 60: grupvalue[4] += 1     
-		if npc_rel['A143'] <= 20: grupvalue[4] -= 1   
-		if npc_rel['A144'] >= 60: grupvalue[4] += 1     
-		if npc_rel['A144'] <= 20: grupvalue[4] -= 1   
-		if npc_rel['A145'] >= 60: grupvalue[4] += 1     
-		if npc_rel['A145'] <= 20: grupvalue[4] -= 1   
-		if npc_rel['A146'] >= 60: grupvalue[1] += 1     
-		if npc_rel['A146'] <= 20: grupvalue[1] -= 1   
-		if npc_rel['A147'] >= 60: grupvalue[1] += 1     
-		if npc_rel['A147'] <= 20: grupvalue[1] -= 1   
-		if npc_rel['A148'] >= 60: grupvalue[1] += 1     
-		if npc_rel['A148'] <= 20: grupvalue[1] -= 1   
-		if npc_rel['A149'] >= 60: grupvalue[2] += 1     
-		if npc_rel['A149'] <= 20: grupvalue[2] -= 1   
-		if npc_rel['A150'] >= 60: grupvalue[2] += 1     
-		if npc_rel['A150'] <= 20: grupvalue[2] -= 1   
-		if npc_rel['A151'] >= 60: grupvalue[3] += 1     
-		if npc_rel['A151'] <= 20: grupvalue[3] -= 1   
-		if npc_rel['A152'] >= 60: grupvalue[3] += 1     
-		if npc_rel['A152'] <= 20: grupvalue[3] -= 1   
-		if npc_rel['A153'] >= 60: grupvalue[3] += 1     
-		if npc_rel['A153'] <= 20: grupvalue[3] -= 1   
-		if npc_rel['A154'] >= 60: grupvalue[4] += 1     
-		if npc_rel['A154'] <= 20: grupvalue[4] -= 1   
-		if npc_rel['A155'] >= 60: grupvalue[4] += 1     
-		if npc_rel['A155'] <= 20: grupvalue[4] -= 1   
-		if npc_rel['A156'] >= 60: grupvalue[4] += 1     
-		if npc_rel['A156'] <= 20: grupvalue[4] -= 1   
+		if npc_rel['A19'] >= 60: grupvalue[2] += 1
+		if npc_rel['A19'] <= 20: grupvalue[2] -= 1
+		if npc_rel['A200'] >= 60: grupvalue[4] += 1
+		if npc_rel['A200'] <= 20: grupvalue[4] -= 1
+		if npc_rel['A21'] >= 60: grupvalue[4] += 1
+		if npc_rel['A21'] <= 20: grupvalue[4] -= 1
+		if npc_rel['A22'] >= 60: grupvalue[1] += 1
+		if npc_rel['A22'] <= 20: grupvalue[1] -= 1
+		if npc_rel['A23'] >= 60: grupvalue[2] += 1
+		if npc_rel['A23'] <= 20: grupvalue[2] -= 1
+		if npc_rel['A24'] <= 20: grupvalue[4] -= 1
+		if npc_rel['A24'] >= 60: grupvalue[4] += 1
+		if soniaQW['slut'] = 0 and npc_rel['A25'] >= 60: grupvalue[1] += 1
+		if soniaQW['slut'] = 0 and npc_rel['A25'] <= 20: grupvalue[1] -= 1
+		if npc_rel['A139'] >= 60: grupvalue[1] += 1
+		if npc_rel['A139'] <= 20: grupvalue[1] -= 1
+		if npc_rel['A140'] >= 60: grupvalue[1] += 1
+		if npc_rel['A140'] <= 20: grupvalue[1] -= 1
+		if npc_rel['A141'] <= 20: grupvalue[2] -= 1
+		if npc_rel['A141'] >= 60: grupvalue[2] += 1
+		if npc_rel['A142'] >= 60: grupvalue[3] += 1
+		if npc_rel['A142'] <= 20: grupvalue[3] -= 1
+		if npc_rel['A143'] >= 60: grupvalue[4] += 1
+		if npc_rel['A143'] <= 20: grupvalue[4] -= 1
+		if npc_rel['A144'] >= 60: grupvalue[4] += 1
+		if npc_rel['A144'] <= 20: grupvalue[4] -= 1
+		if npc_rel['A145'] >= 60: grupvalue[4] += 1
+		if npc_rel['A145'] <= 20: grupvalue[4] -= 1
+		if npc_rel['A146'] >= 60: grupvalue[1] += 1
+		if npc_rel['A146'] <= 20: grupvalue[1] -= 1
+		if npc_rel['A147'] >= 60: grupvalue[1] += 1
+		if npc_rel['A147'] <= 20: grupvalue[1] -= 1
+		if npc_rel['A148'] >= 60: grupvalue[1] += 1
+		if npc_rel['A148'] <= 20: grupvalue[1] -= 1
+		if npc_rel['A149'] >= 60: grupvalue[2] += 1
+		if npc_rel['A149'] <= 20: grupvalue[2] -= 1
+		if npc_rel['A150'] >= 60: grupvalue[2] += 1
+		if npc_rel['A150'] <= 20: grupvalue[2] -= 1
+		if npc_rel['A151'] >= 60: grupvalue[3] += 1
+		if npc_rel['A151'] <= 20: grupvalue[3] -= 1
+		if npc_rel['A152'] >= 60: grupvalue[3] += 1
+		if npc_rel['A152'] <= 20: grupvalue[3] -= 1
+		if npc_rel['A153'] >= 60: grupvalue[3] += 1
+		if npc_rel['A153'] <= 20: grupvalue[3] -= 1
+		if npc_rel['A154'] >= 60: grupvalue[4] += 1
+		if npc_rel['A154'] <= 20: grupvalue[4] -= 1
+		if npc_rel['A155'] >= 60: grupvalue[4] += 1
+		if npc_rel['A155'] <= 20: grupvalue[4] -= 1
+		if npc_rel['A156'] >= 60: grupvalue[4] += 1
+		if npc_rel['A156'] <= 20: grupvalue[4] -= 1
 		if npc_rel['A157'] >= 60: grupvalue[4] += 1
 		if npc_rel['A157'] <= 20: grupvalue[4] -= 1
 		if npc_rel['A158'] >= 60: grupvalue[4] += 1
@@ -709,7 +709,7 @@ if $ARGS[0] = 'group_student_rel_change':
 		if grupvalue[3] < 0: grupvalue[3] = 0
 		if grupvalue[4] < 0: grupvalue[4] = 0
 	end
-end	
+end
 
 
 --- gschool_socialchg ---------------------------------

+ 2 - 2
locations/journal.qsrc

@@ -242,7 +242,7 @@ if $ARGS[0] = 'relationstab':
 		if npc_rel['A146'] > 0: 'Friendship with Marcus:'   & gs 'journal', 'relindex', 'A146'
 		if npc_rel['A147'] > 0: 'Friendship with Andrey:'   & gs 'journal', 'relindex', 'A147'
 		if npc_rel['A148'] > 0: 'Friendship with Mefodiy:'  & gs 'journal', 'relindex', 'A148'
-		if soniaPS = 0 and npc_rel['A25'] > 0: 'Friendship with Sonia:' & gs 'journal', 'relindex', 'A25'
+		if soniaQW['slut'] = 0 and npc_rel['A25'] > 0: 'Friendship with Sonia:' & gs 'journal', 'relindex', 'A25'
 		if npc_rel['A139'] > 0: 'Friendship with Stasya:'   & gs 'journal', 'relindex', 'A139'
 		if npc_rel['A140'] > 0: 'Friendship with Lizaveta:' & gs 'journal', 'relindex', 'A140'
 
@@ -294,7 +294,7 @@ if $ARGS[0] = 'relationstab':
 
 		if npc_rel['A7']   > 0: 'Friendship with Lesco:' & gs 'journal', 'relindex', 'A7'
 		if npc_rel['A159'] > 0: 'Friendship with Petia:' & gs 'journal', 'relindex', 'A159'
-		if soniaPS    > 0 and npc_rel['A25'] > 0: 'Friendship with Sonia:' & gs 'journal', 'relindex', 'A25'
+		if soniaQW['slut']    > 0 and npc_rel['A25'] > 0: 'Friendship with Sonia:' & gs 'journal', 'relindex', 'A25'
 		if fedormasha = 1 and npc_rel['A5']  > 0: 'Friendship with Fedor:' & gs 'journal', 'relindex', 'A5'
 
 		'<center><h2>Teachers/Coaches/School Staff Relations</h2></center>'

+ 29 - 29
locations/journal_quests.qsrc

@@ -42,18 +42,18 @@ if $ARGS[0] = 'start':
 				elseif MiraVars['QW'] = 5:
 					'After a lengthy discussion, Mira agrees to fulfill 3 Wishes. Wish #1, is for you to watch Mitka have anal sex with Mira. Mira might need some help setting it up... try getting her drunk with the boys, in the evening.'
 				elseif MiraVars['QW'] < 15:
-					'You have watched Mira having anal sex with Mitka and she sucessfully fulfilled her First Wish. You are still thinking on what you want her to do for your Second Wish. You should keep getting her drunk with the boys for now, until something comes to mind.'
+					'You have watched Mira having anal sex with Mitka and she successfully fulfilled her First Wish. You are still thinking about what you want her to do for your Second Wish. You should keep getting her drunk with the boys for now, until something comes to mind.'
 				elseif MiraVars['QW'] = 15 and MiraVars['prostitute'] = 0:
-					'You have watched Mira having anal sex with Mitka and she sucessfully fulfilled her First Wish. You are still thinking on what you want her to do for your second wish. Maybe a walk through the village will give you some ideas.'
+					'You have watched Mira having anal sex with Mitka and she successfully fulfilled her First Wish. You are still thinking about what you want her to do for your second wish. Maybe a walk through the village will give you some ideas.'
 				elseif MiraVars['QW'] < 20 and MiraVars['prostitute'] > 0:
 					!! Sveta can make her third wish. Can be raised by either prostitution or having sex with the boys when drunk.
-					'Congratulations, you are now Mira''s pimp, thus fulfilling your Second Wish. You should check up on her at the road in the evenings and make sure she is working for you, until you come up with an idea for your third and Final Wish.'
+					'Congratulations, you are now Mira''s pimp, thus fulfilling your Second Wish. You should check up on her at the road in the evenings and make sure she is working for you until you come up with an idea for your third and Final Wish.'
 				elseif MiraVars['QW'] = 21 and daystart < MiraVars['emb_day']:
-					'You have convinced her to walk through town naked, to fufill your Third Wish. She is red with shame and has stayed home. Maybe if you talk to her you can convince her to come out of the house again. It may take a few tries though.'
+					'You have convinced her to walk through town naked, to fulfill your Third Wish. She is red with shame and has stayed home. Maybe if you talk to her you can convince her to come out of the house again. It may take a few tries though.'
 				elseif MiraVars['QW'] = 21 and daystart >= MiraVars['emb_day']:
-					'You have convinced her to walk through town naked, to fufill your Third Wish. She came out of her house and you can continue to pimp her out during the evenings. <b>This is the end of Mira and the Three Wishes</b>'
+					'You have convinced her to walk through town naked, to fulfill your Third Wish. She came out of her house and you can continue to pimp her out during the evenings. <b>This is the end of Mira and the Three Wishes</b>'
 				elseif MiraVars['QW'] = 22:
-					'In the end, you couldn''t force Mira to walk through town naked, and let her off the hook and forgave her for breaking her promise. She is happy with your decision and you grow even closer. You are still able to pimp her out in the evenings. <b>This is the end of Mira and the Three Wishes</b>'
+					'In the end, you couldn''t force Mira to walk through town naked and forgave her for breaking her promise. She is happy with your decision and you grow even closer. You are still able to pimp her out in the evenings. <b>This is the end of Mira and the Three Wishes</b>'
 				end
 			elseif MiraVars['meadow'] = 3:
 				'You have found a Secret Meadow and shown Mira, but told her she could not go there without you. <b>This choice blocked Mira and the Three Wishes</b>'
@@ -95,7 +95,7 @@ if $ARGS[0] = 'start':
 				if christinaQW['fight'] = 1:
 					'I fought Christina and won! She cannot touch me now, and if I demand it, she will give it, or get another beating.'
 				else
-					'I have decided I''m going to beat the crap out of Christina. I should do it afterschool, but in front of the school too, so everybody sees it happen.'
+					'I have decided I''m going to beat the crap out of Christina. I should do it after school, but in front of the school too, so everybody sees it happen.'
 				end
 			elseif christinaQW['blackmail'] >= 1 or christinaQW['pre_bm'] >= 1:
 				if christinaQW['blackmail'] >= 2:
@@ -296,7 +296,7 @@ if $ARGS[0] = 'start':
 			*nl
 			'<b>This is the end of this storyline for now, more next dev cycle.</b>'
 		elseif NatbelQW['FriendLover'] = 7:
-			'I have been on a 2nd shopping trip with Natasha, maybe its time to take our relationship further.'
+			'I have been on a 2nd shopping trip with Natasha, maybe it''s time to take our relationship further.'
 		elseif NatbelQW['FriendLover'] = 6:
 			'I have suggested a 2nd shopping trip to my lover, Natasha.'
 		elseif NatbelQW['FriendLover'] = 5:
@@ -342,7 +342,7 @@ if $ARGS[0] = 'start':
 		elseif NatbelQW['disco_invite'] = 2:
 			'You have asked her to go to the disco with you so you should visit her place on Friday or Saturday evening.'
 		elseif NatbelQW['disco_invite'] = 3:
-			'You''ve been to the disco with her and she''ll be happy to dance with you there in future.'
+			'You''ve been to the disco with her and she''ll be happy to dance with you there in the future.'
 		end
 		if NatbelQW['disco_invite'] = 3 and NatbelQW['shopping'] = 2:
 			'It seems like Natasha wants to ask something of you. Maybe you should talk to her.'
@@ -401,7 +401,7 @@ if $ARGS[0] = 'start':
 						elseif IvanShowerQW = 1:
 							'I should talk to Ivan about what happened in the sports center the next time I''m at school.'
 						else
-							'I need to not chicken out the next time Ivan tries to join my in the sports center shower.'
+							'I need to not chicken out the next time Ivan tries to join me in the sports center shower.'
 						end
 					elseif kotovVSprohorov = 1:
 						'I should take a shower at the sports center. If the rumors I heard about Ivan are true, he should try to join me.'
@@ -452,12 +452,12 @@ if $ARGS[0] = 'start':
 		elseif katjaQW['QWstage'] = 1:
 			'Katja has agreed to hang out after school. I should do this more often to see where this leads.'
 		elseif katjaQW['QWstage'] = 2:
-			'Katja and I saw her mother and a girl not much older than us kissing and it clearly affected Katja. I thought about asking her if we should try kissing, but decided not to. Maybe if I hang out more with her at her house there will be another opportunity to try?'
+			'Katja and I saw her mother and a girl not much older than us kissing and it clearly affected Katja. I thought about asking her if we should try kissing but decided not to. Maybe if I hang out more with her at her house there will be another opportunity to try?'
 		elseif katjaQW['QWstage'] > 2:
 			if npc_sex['A14'] = 0:
 				'I''ve kissed Katja, but not gone any further.'+iif(katjaQW['slut'] < 20, ' Katja needs to loosen up a little before she will go any further. Maybe I should try to push her a little when kissing or getting her to be naked at the beach?', ' I think it''s possible that she will go further if the opportunity comes up when hanging out at her home.')
 			else
-				'While Katja is a shy girl, she is still quite strong willed, and will not do anything sexual if not in the mood. Fortunately for me, it''s pretty easy to determine if she is aroused by how red her face is.'
+				'While Katja is a shy girl, she is still quite strong-willed, and will not do anything sexual if not in the mood. Fortunately for me, it''s pretty easy to determine if she is aroused by how red her face is.'
 			end
 
 			if katjaQW['school_kiss'] = 0 and katjaQW['QWstage'] > 2 and katjaQW['knows_masturbation'] + katjaQW['knows_BJ'] + katjaQW['knows_sex'] + katjaQW['knows_anal']+ katjaQW['knows_cuni'] >= 2:
@@ -480,7 +480,7 @@ if $ARGS[0] = 'start':
 					'I should buy a strap-on so that I can use it on Katja.'
 				elseif katjaQW['slut'] < 40:
 					if katjaQW['strapon_vag'] + katjaQW['strapon_ass'] + katjaQW['strapon_bj'] > 0:
-						'Katja is not comfortable with trying the stap-on again. She needs to loose some more inhibition.'
+						'Katja is not comfortable with trying the strap-on again. She needs to lose some more inhibition.'
 					else
 						'You need to get Katja to lose some more of her inhibition before you can use your strap-on on her.'
 					end
@@ -508,7 +508,7 @@ if $ARGS[0] = 'start':
 					if katjaQW['QWstage'] = 5:
 						if katjaQW['marcus_asked'] = 0:
 							if Marcus_sextype > 0:
-								'I should ask Marcus about being Katja''s first during break at school.'
+								'I should ask Marcus about being Katja''s first during school break.'
 							else
 								'I need to seduce and have sex with Marcus before I can ask him to be Katja''s first. I could try at the disco.'
 							end
@@ -524,7 +524,7 @@ if $ARGS[0] = 'start':
 					elseif katjaQW['QWstage'] = 6:
 						'Katja wants to talk to me about something at her home. She needs to be somewhat horny to ask me'
 					elseif katjaQW['park_sex'] = 0:
-						'I should take Katja to the park to get her to to hook up with random guys.'
+						'I should take Katja to the park to get her to hook up with random guys.'
 					elseif katjaQW['park_sex'] = 1:
 						'I took Katja to the park and she had sex with a random guy. Maybe if we go again I could get her to have sex with several guys.'
 					elseif katjaQW['park_sex'] = 2:
@@ -544,22 +544,22 @@ if yearstart > 1 and university['enrolled_in_semester'] > university['semester_p
 	'<center><h3>Katja Meynold</h3></center>'
 	*nl
 	if katjaQW['QWstage'] < 2:
-		'Katja is both cute, smart and popular. If I want to be her friend'+iif(npc_rel['A14'] < 70, ', I need to get to know her better by talking with her at at the uni plaza, library or at the Coffee Hole', '')+ iif(pcs_makupskl < 40, ', I need to improve my make up skill since she is very into make up', '')+ iif(fame['city_slut'] >= 150 or fame['pav_slut'] >= 150, ', I need to be seen as less of a slut', '')+ iif(pcs_hotcat < 6, ', I need to improve my looks', '')+ iif(npc_rel['A14'] >= 60 and fame['city_slut'] < 150 and fame['pav_slut'] < 150 and pcs_makupskl >= 40 and pcs_hotcat >= 6, ', something might happen after one of my late university classes.', '.')
+		'Katja is both cute, smart and popular. If I want to be her friend'+iif(npc_rel['A14'] < 70, ', I need to get to know her better by talking with her at the uni plaza, library or at the Coffee Hole', '')+ iif(pcs_makupskl < 40, ', I need to improve my make up skill since she is very into makeup', '')+ iif(fame['city_slut'] >= 150 or fame['pav_slut'] >= 150, ', I need to be seen as less of a slut', '')+ iif(pcs_hotcat < 6, ', I need to improve my looks', '')+ iif(npc_rel['A14'] >= 60 and fame['city_slut'] < 150 and fame['pav_slut'] < 150 and pcs_makupskl >= 40 and pcs_hotcat >= 6, ', something might happen after one of my late university classes.', '.')
 	elseif katjaQW['QWstage'] = 2:
 		'Katja and I saw two women making out at the stairs when she took me to her dorm room. Katja was interested in trying, but I told her no. She might try again later. I know her room and can come by when she is home.'
 	elseif katjaQW['QWstage'] > 2:
 		if npc_sex['A14'] = 0:
-			'I''ve kissed Katja, but not gone any further, when she asked me to have sex.'+iif(katjaQW['slut'] < 20, ' Katja is to timid to try pushing me for sex right now, she need to loosen mor up first.', ' I think it''s possible that she will try to get us to go further if the opportunity comes up again at her home.')
+			'I''ve kissed Katja, but not gone any further, when she asked me to have sex.'+iif(katjaQW['slut'] < 20, ' Katja is too timid to try pushing me for sex right now, she need to loosen up more first.', ' I think it''s possible that she will try to get us to go further if the opportunity comes up again at her home.')
 		else
-			'While Katja is a shy girl, she is still quite strong willed, and will not do anything sexual if not in the mood. Fortunately for me, it''s pretty easy to determine if she is aroused by how red her face is.'
+			'While Katja is a shy girl, she is still quite strong-willed, and will not do anything sexual if not in the mood. Fortunately for me, it''s pretty easy to determine if she is aroused by how red her face is.'
 		end
 
 		if katjaQW['slut'] <75 and katjaQW['liberated'] = 0:
-			'Katja is a good girl that studies a lot, but sometimes on Thursday she will watch a movie in her dorm room at night instead of going to the library.'
-			'She also goes partying on Friday evening, where she will prepare in her dorm room from 19:00 to 19:45. Saturday and Sunday she spends at her mothers house in Pavlovsk.'
+			'Katja is a good girl who studies a lot, but sometimes on Thursday she will watch a movie in her dorm room at night instead of going to the library.'
+			'She also goes partying on Friday evening, where she will prepare in her dorm room from 19:00 to 19:45. Saturday and Sunday she spends at her mother''s house in Pavlovsk.'
 		else
-			'Katja is a good girl that studies a lot abut have started to loose up. On Thursday she doen''t study at night but will watch a movie in her dorm or maybe go partying.'
-			'She also goes partying on Friday evening, where she will prepare in her dorm room from 19:00 to 19:45. Saturday night is also spend partying and Sunday she spends at her mothers house in Pavlovsk.'
+			'Katja is a good girl who studies a lot but has started to loosen up. On Thursday she doesn''t study at night but will watch a movie in her dorm or maybe go partying.'
+			'She also goes partying on Friday evening, where she will prepare in her dorm room from 19:00 to 19:45. Saturday night is also spent partying and Sunday she spends at her mother''s house in Pavlovsk.'
 		end
 
 		!!if katjaQW['pantiesQWstage'] = 0:
@@ -576,7 +576,7 @@ if yearstart > 1 and university['enrolled_in_semester'] > university['semester_p
 				'I should buy a strap-on so that I can use it on Katja.'
 			elseif katjaQW['slut'] < 40:
 				if katjaQW['strapon_vag'] + katjaQW['strapon_ass'] + katjaQW['strapon_bj'] > 0:
-					'Katja is not comfortable with trying the strap-on again. She needs to loose some more inhibition.'
+					'Katja is not comfortable with trying the strap-on again. She needs to lose some more inhibition.'
 				else
 					'You need to get Katja to lose some more of her inhibition before you can use your strap-on on her.'
 				end
@@ -615,7 +615,7 @@ if yearstart > 1 and university['enrolled_in_semester'] > university['semester_p
 					!!elseif katjaQW['QWstage'] = 6:
 					!!	'Katja wants to talk to me about something at her home. She needs to be somewhat horny to ask me'
 					!!elseif katjaQW['park_sex'] = 0:
-					!!	'I should take Katja to the park to get her to to hook up with random guys.'
+					!!	'I should take Katja to the park to get her to hook up with random guys.'
 					!!elseif katjaQW['park_sex'] = 1:
 					!!	'I took Katja to the park and she had sex with a random guy. Maybe if we go again I could get her to have sex with several guys.'
 					!!elseif katjaQW['park_sex'] = 2:
@@ -626,7 +626,7 @@ if yearstart > 1 and university['enrolled_in_semester'] > university['semester_p
 					!!end
 				end
 				if katjaQW['QWstage'] = 5:
-					'Maybe we could find a guy at the nightclub could give Katja her first experience with vaginal sex with a boy.'
+					'Maybe we could find a guy at the nightclub, that could give Katja her first experience with vaginal sex with a boy.'
 				end
 
 				if katjaQW['birth_control_start_day'] = 0 and katjaQW['QWstage'] >= 6:
@@ -653,10 +653,10 @@ if $start_type['cat'] = 'dancer' or (mod_ballet['letter'] > 0 or balletqw['schoo
 		*nl
 	end
 	if 	mod_ballet['letter'] = 1 and balletqw['school'] < 1:
-		'You have accepted the invitation to the Pushkin Ballet Academy. Transport is provided to all students to the week long course from the Pavlosk Community Center. '
+		'You have accepted the invitation to the Pushkin Ballet Academy. Transport is provided to all students to the week-long course from the Pavlosk Community Center. '
 		'Departure: Sunday, 3rd July between 1600 and 1700.'
 		*nl
-		'Ensure you have sufficient toiletries and work on your appearance, physical and dance skills. Note this is a residental school in Pushkin and has strict rules, ensure you have wrapped up any unfinished business before departing.'
+		'Ensure you have sufficient toiletries and work on your appearance, physical and dance skills. Note this is a residential school in Pushkin and has strict rules, ensure you have wrapped up any unfinished business before departing.'
 		*nl
 	end
 	if balletqw['school'] > 1:
@@ -666,13 +666,13 @@ if $start_type['cat'] = 'dancer' or (mod_ballet['letter'] > 0 or balletqw['schoo
 		!! 'You failed the course, there may be other opportunities if you want to achieve your ambition of being a ballerina.s'
 		'You have been accepted into the Pushkin Ballet School. End of Quest at present.'
 	elseif balletqw['school'] = 2:
-		'You was accepted into the without any noticeable distinction.'
+		'you were accepted into the without any noticeable distinction.'
 	elseif balletqw['school'] = 3:
 		'You brokered a deal with Randolph to get accepted into the school.'
 	elseif balletqw['school'] = 4:
 		'Maya helped you get into the dance school by pulling some strings.'
 	elseif balletqw['school'] = 5:
-		'Congratulations you excelled the examination, you was one of the best dancers of this years intake.'
+		'Congratulations you excelled in the examination, you were one of the best dancers of this year''s intake.'
 	end
 end
 

+ 1 - 1
locations/nerd_game_night.qsrc

@@ -1640,7 +1640,7 @@ end
 
 if $ARGS[0] = 'summer2_invite_sms':
 	if nerd_game['first_SMS_received'] = 0:
-		$SMSTree[ '0'] = 'Hey <<$pcs_nickname>> this is Feofan. We are doing our weekly game night at the Coffee Hole, coffee shop now. We will mostly be playing Dungeons and Dragons and board games. I was talking to the others and we were wondering if you was going to keep playing with us? We have a few nights free this week and were wondering which night works best for you. We can do it either on Tuesday or Thursday.'
+		$SMSTree[ '0'] = 'Hey <<$pcs_nickname>> this is Feofan. We are doing our weekly game night at the Coffee Hole, coffee shop now. We will mostly be playing Dungeons and Dragons and board games. I was talking to the others and we were wondering if you were going to keep playing with us? We have a few nights free this week and were wondering which night works best for you. We can do it either on Tuesday or Thursday.'
 	else
 		$SMSTree[ '0'] = 'Hey <<$pcs_nickname>>, would you like to join us for our weekly game night at the Coffee Hole? We have a few nights free this week and were wondering which night works best for you. We can do it either on Tuesday or Thursday.'
 	end

+ 1 - 1
locations/npcstatic1.qsrc

@@ -914,7 +914,7 @@ npc_gender['A<<npctemp>>'] = 1
 
 gs 'npcstaticdefaults', 'defaults'
 
-if soniaPS > 0:
+if soniaQW['slut'] > 0:
 	gs 'npcstaticdefaults', 'group', 'outcast'
 	$npc_notes['A<<npctemp>>'] = 'Ever since Sonia inadvertently got way too drunk and gave five guys including Vitek and his buddies a simultaneous blowjob near the disco, her reputation has been in shambles. The girls in her class all give her the silent treatment, pretending she does not exist. Meanwhile all the guys treat her like a cheap whore and regularly ask (or sometimes even demand) sex from her, knowing she doesn''t have the strength to say no.'
 	npc_rep['A<<npctemp>>'] = 390

+ 2 - 2
locations/pav_aptcourtev.qsrc

@@ -265,7 +265,7 @@ if $ARGS[0] = 'events1':
 		gs 'exp_gain', 'prcptn', rand(1,2)
 		minut += 3
 		'<center><img <<$set_imgh>> src="images/locations/pavlovsk/resident/apartment/events/sex/evgopbj.jpg"></center>'
-		if soniaPS > 0 and rand(0,1) = 0:
+		if soniaQW['slut'] > 0 and rand(0,1) = 0:
 			'Between two of the storage buildings, you notice Sonia squatting between Vitek, Dan and Vasily, taking turns sucking their cocks. It doesn''t take too long before the three gopniks start jerking their dicks and cumming all over Sonia''s face.'
 			'The trio begin laughing as they put their dicks back in the pants. Dan then pulls out his phone and starts taking photos of Sonia covered in their cum. As she gets to her feet, Vitek and Vasily grab her by the arms and start pulling her towards the street, never giving her a chance to clean the cum from her face. She tries to struggle, but they don''t seem to care and they''re soon gone.'
 		else
@@ -667,7 +667,7 @@ if $ARGS[0] = 'events2':
 		gs 'exp_gain', 'prcptn', rand(1,2)
 		minut += 3
 		'<center><img <<$set_imgh>> src="images/locations/pavlovsk/resident/apartment/events/sex/evgopbjn.jpg"></center>'
-		if soniaPS > 0 and rand(0,1) = 0:
+		if soniaQW['slut'] > 0 and rand(0,1) = 0:
 			'Between two of the storage buildings, you notice Sonia squatting between Vitek, Dan and Vasily, taking turns sucking their cocks. It doesn''t take too long before the three gopniks start jerking their dicks and cumming all over Sonia''s face.'
 			'The trio begin laughing as they put their dicks back in the pants. Dan then pulls out his phone and starts taking photos of Sonia covered in their cum. As she gets to her feet, Vitek and Vasily grab her by the arms and start pulling her towards the street, never giving her a chance to clean the cum from her face. She tries to struggle, but they don''t seem to care and they''re soon gone.'
 		else

+ 2 - 2
locations/pav_church.qsrc

@@ -1209,10 +1209,10 @@ if $ARGS[0] = 'fillers':
 	elseif randtext = 7:
 		Kirill += 1
 		$safesub = 'the Russian Orthodox Church'
-	elseif randtext = 8 and soniaPS ! 0:
+	elseif randtext = 8 and soniaQW['slut'] ! 0:
 		Kirill_Crpt += 1
 		$safesub = 'what Sonia has been doing'
-	elseif randtext = 8 and soniaPS = 0:
+	elseif randtext = 8 and soniaQW['slut'] = 0:
 		$safesub = 'your curfew on weekends'
 	elseif randtext = 9:
 		$safesub = 'your grandparents'

+ 46 - 46
locations/pav_disco.qsrc

@@ -30,7 +30,7 @@ if $ARGS[0] = '':
 !! check against clothing and makeup impacting social groups only once per day
 	if social_check['disco'] ! daystart and hour > 6:
 		social_check['disco'] = daystart
-		if PCloskirt = 0: 
+		if PCloskirt = 0:
 			grupvalue[1] -= 1
 			if PCloquality > 4:grupvalue[1] += 1
 		end
@@ -48,13 +48,13 @@ if $ARGS[0] = '':
 			grupvalue[1] -= 5
 			grupvalue[2] -= 5
 			grupvalue[4] -= 1
-		elseif pcs_makeup = 1: 
+		elseif pcs_makeup = 1:
 			grupvalue[1] -= 5
 			grupvalue[2] -= 3
 			grupvalue[4] -= 1
-		elseif pcs_makeup = 2: 
+		elseif pcs_makeup = 2:
 			grupvalue[4] -= 1
-		elseif pcs_makeup = 3: 
+		elseif pcs_makeup = 3:
 			grupvalue[1] += 1
 		elseif pcs_makeup = 4:
 			grupvalue[2] -= 1
@@ -79,14 +79,14 @@ if $ARGS[0] = '':
 		act 'Go to the toilets': gt 'gdktoilet', 'start'
 
 		if mid($start_type,1,2) = 'sg' and yearstart <= 1: 'You see a few of your <a href="exec: gt ''pav_disco_classmates'', ''classmates''">classmates</a>. Some of them dancing, while others stick to their own groups and talk.'
-		
+
 		if artemQW['bf'] = 1:
 			act 'Text Artem to come to the disco': gt 'pav_disco', 'artem_disco'
 		end
 
 		if dimaRevenge = 7 and dimaRevChoice = 4 and dimadisco = 0: gt 'dimaRevenge', 5, 'disco'
 
-		if rand(1,3) = 2 and soniaPS < 1 and soniadisco_day ! daystart and SchoolAtestat = 0 and month > 9 and npc_grupTipe['A25'] ! 5 and mid($start_type,1,2) = 'sg' and BeInSchool > 0 and hour < 22:
+		if rand(1,3) = 2 and soniaQW['slut'] < 1 and soniadisco_day ! daystart and SchoolAtestat = 0 and month > 9 and npc_grupTipe['A25'] ! 5 and mid($start_type,1,2) = 'sg' and BeInSchool > 0 and hour < 22:
 			'You notice Sonia talking to Vitek about something.'
 			act 'Watch Sonia': soniadisco_day = daystart & gt 'soniadisco', 'start'
 		end
@@ -205,11 +205,11 @@ if $ARGS[0] = '':
 						grupvalue[4] += 1
 						'You''re having a lot of fun out on the dance floor. Most people would have a hard time telling you were drunk as you expertly move your body in a seductive manner to the beat of the music.'
 					end
-					if mid($start_type,1,2) = 'sg' and katjaQW['QWstage']  > 1 and rand(1,10) = 1: 
+					if mid($start_type,1,2) = 'sg' and katjaQW['QWstage']  > 1 and rand(1,10) = 1:
 						gt 'pav_disco', 'katja_too_drunk'
 					elseif mid($start_type,1,2) = 'sg' and npc_rel['A25'] >= 50 and rand(1,10) = 1:
-						gt 'pav_disco', 'sonia_too_drunk' 
-					elseif mid($start_type,1,2) = 'sg' and npc_rel['A144'] >= 50 and rand(1,10) = 1 and locat['A144'] = 25: 
+						gt 'pav_disco', 'sonia_too_drunk'
+					elseif mid($start_type,1,2) = 'sg' and npc_rel['A144'] >= 50 and rand(1,10) = 1 and locat['A144'] = 25:
 						gt 'pav_disco', 'anushka_too_drunk'
 					elseif mid($start_type,1,2) = 'sg' and (AlbinaQW['Friends'] = 2 or (npc_rel['A23'] >= 70 and (grupTipe = 1 or grupTipe = 2 or grupTipe = 3))) and rand(1,10) = 1:
 						gt 'pav_disco', 'albina_too_drunk'
@@ -241,11 +241,11 @@ if $ARGS[0] = '':
 							grupvalue[4] += 2
 							'You''re very drunk and forget that you don''t have any panties on. Most people would have a hard time knowing you were very drunk as you expertly move your body around in a seductive manner, but you are too drunk to notice your skirt riding up, exposing your pussy to the observant people on the dance floor with you.'
 						end
-						if mid($start_type,1,2) = 'sg' and katjaQW['QWstage']  > 1 and rand(1,5) = 1: 
+						if mid($start_type,1,2) = 'sg' and katjaQW['QWstage']  > 1 and rand(1,5) = 1:
 							gt 'pav_disco', 'katja_too_drunk'
 						elseif mid($start_type,1,2) = 'sg' and npc_rel['A25'] >= 50 and rand(1,7) = 1:
-							gt 'pav_disco', 'sonia_too_drunk' 
-						elseif mid($start_type,1,2) = 'sg' and npc_rel['A144'] >= 50 and rand(1,7) = 1 and locat['A144'] = 25: 
+							gt 'pav_disco', 'sonia_too_drunk'
+						elseif mid($start_type,1,2) = 'sg' and npc_rel['A144'] >= 50 and rand(1,7) = 1 and locat['A144'] = 25:
 							gt 'pav_disco', 'anushka_too_drunk'
 						elseif mid($start_type,1,2) = 'sg' and (AlbinaQW['Friends'] = 2 or (npc_rel['A23'] >= 70 and (grupTipe = 1 or grupTipe = 2 or grupTipe = 3))) and rand(1,7) = 1:
 							gt 'pav_disco', 'albina_too_drunk'
@@ -271,11 +271,11 @@ if $ARGS[0] = '':
 							grupvalue[2] -= 1
 							'You''re very drunk, but are having a lot of fun out on the dance floor anyway. Most people would have a hard time knowing you were drunk as you expertly move your body around in a seductive manner to the beat of the music.'
 						end
-						if mid($start_type,1,2) = 'sg' and katjaQW['QWstage']  > 1 and rand(1,5) = 1: 
+						if mid($start_type,1,2) = 'sg' and katjaQW['QWstage']  > 1 and rand(1,5) = 1:
 							gt 'pav_disco', 'katja_too_drunk'
 						elseif mid($start_type,1,2) = 'sg' and npc_rel['A25'] >= 50 and rand(1,7) = 1:
-							gt 'pav_disco', 'sonia_too_drunk' 
-						elseif mid($start_type,1,2) = 'sg' and npc_rel['A144'] >= 50 and rand(1,7) = 1 and locat['A144'] = 25: 
+							gt 'pav_disco', 'sonia_too_drunk'
+						elseif mid($start_type,1,2) = 'sg' and npc_rel['A144'] >= 50 and rand(1,7) = 1 and locat['A144'] = 25:
 							gt 'pav_disco', 'anushka_too_drunk'
 						elseif mid($start_type,1,2) = 'sg' and (AlbinaQW['Friends'] = 2 or (npc_rel['A23'] >= 70 and (grupTipe = 1 or grupTipe = 2 or grupTipe = 3))) and rand(1,7) = 1:
 							gt 'pav_disco', 'albina_too_drunk'
@@ -287,11 +287,11 @@ if $ARGS[0] = '':
 					grupvalue[4] -= 1
 					'<center><img <<$set_imgh>> src="images/locations/pavlovsk/community/disco/wasted_dance.jpg"></center>'
 					'You''re far too drunk and are barely able to stay on your feet. You''re mostly just drunkenly bumping into other people as you try and dance.'
-					if mid($start_type,1,2) = 'sg' and katjaQW['QWstage']  > 1 and rand(1,3) = 1: 
+					if mid($start_type,1,2) = 'sg' and katjaQW['QWstage']  > 1 and rand(1,3) = 1:
 						gt 'pav_disco', 'katja_too_drunk'
 					elseif mid($start_type,1,2) = 'sg' and npc_rel['A25'] >= 50 and rand(1,5) = 1:
-						gt 'pav_disco', 'sonia_too_drunk' 
-					elseif mid($start_type,1,2) = 'sg' and npc_rel['A144'] >= 50 and rand(1,5) = 1 and locat['A144'] = 25: 
+						gt 'pav_disco', 'sonia_too_drunk'
+					elseif mid($start_type,1,2) = 'sg' and npc_rel['A144'] >= 50 and rand(1,5) = 1 and locat['A144'] = 25:
 						gt 'pav_disco', 'anushka_too_drunk'
 					elseif mid($start_type,1,2) = 'sg' and (AlbinaQW['Friends'] = 2 or (npc_rel['A23'] >= 70 and (grupTipe = 1 or grupTipe = 2 or grupTipe = 3))) and rand(1,5) = 1:
 						gt 'pav_disco', 'albina_too_drunk'
@@ -338,23 +338,23 @@ if $ARGS[0] = '':
 				elseif alko < 4:
 					'You''re tipsy and stand against the wall while watching the others dance.'
 				elseif alko < 6:
-					if mid($start_type,1,2) = 'sg' and katjaQW['QWstage']  > 1 and rand(1,10) = 1: 
+					if mid($start_type,1,2) = 'sg' and katjaQW['QWstage']  > 1 and rand(1,10) = 1:
 						gt 'pav_disco', 'katja_too_drunk'
 					elseif mid($start_type,1,2) = 'sg' and npc_rel['A25'] >= 50 and rand(1,10) = 1:
-						gt 'pav_disco', 'sonia_too_drunk' 
-					elseif mid($start_type,1,2) = 'sg' and npc_rel['A144'] >= 50 and rand(1,10) = 1 and locat['A144'] = 25: 
+						gt 'pav_disco', 'sonia_too_drunk'
+					elseif mid($start_type,1,2) = 'sg' and npc_rel['A144'] >= 50 and rand(1,10) = 1 and locat['A144'] = 25:
 						gt 'pav_disco', 'anushka_too_drunk'
 					elseif mid($start_type,1,2) = 'sg' and (AlbinaQW['Friends'] = 2 or (npc_rel['A23'] >= 70 and (grupTipe = 1 or grupTipe = 2 or grupTipe = 3))) and rand (1,10) = 1:
 						gt 'pav_disco', 'albina_too_drunk'
 					else
 						'You''re pretty drunk and stand against the wall for support as you watch the others dance.'
-					end	
+					end
 				else
-					if mid($start_type,1,2) = 'sg' and katjaQW['QWstage']  > 1 and rand(1,5) = 1: 
+					if mid($start_type,1,2) = 'sg' and katjaQW['QWstage']  > 1 and rand(1,5) = 1:
 						gt 'pav_disco', 'katja_too_drunk'
 					elseif mid($start_type,1,2) = 'sg' and npc_rel['A25'] >= 50 and rand(1,7) = 1:
-						gt 'pav_disco', 'sonia_too_drunk' 
-					elseif mid($start_type,1,2) = 'sg' and npc_rel['A144'] >= 50 and rand(1,7) = 1 and locat['A144'] = 25: 
+						gt 'pav_disco', 'sonia_too_drunk'
+					elseif mid($start_type,1,2) = 'sg' and npc_rel['A144'] >= 50 and rand(1,7) = 1 and locat['A144'] = 25:
 						gt 'pav_disco', 'anushka_too_drunk'
 					elseif mid($start_type,1,2) = 'sg' and (AlbinaQW['Friends'] = 2 or (npc_rel['A23'] >= 70 and (grupTipe = 1 or grupTipe = 2 or grupTipe = 3))) and rand (1,7) = 1:
 						gt 'pav_disco', 'albina_too_drunk'
@@ -411,7 +411,7 @@ if $ARGS[0] = '':
 			act 'Dance with the guy': gt 'pav_disco', 'dance_vrp'
 			exit
 		end
-		
+
 		if mid($start_type,1,2) = 'sg' and SchoolAtestat = 0: act 'Look for your classmates': gt 'pav_disco_classmates', 'classmates'
 	elseif hour < 20:
 		'<center><b><font color="maroon">Disco</font></b></center>'
@@ -432,7 +432,7 @@ if $ARGS[0] = 'kotov_love':
 		fightboyrand = rand(0, 10)
 
 		if fightboyrand <= 5:
-			'The frightened man begins to speak. "Come on, I didn''t know. I''m leaving."' 
+			'The frightened man begins to speak. "Come on, I didn''t know. I''m leaving."'
 			'Vitek pushes the guy. "Get out of here and don''t come back."'
 		elseif fightboyrand > 5 and fightboyrand < 10:
 			'The guy shoves Vitek back. "Get your hands off me asshole!" Vitek suddenly kicks the guy with a fast and powerful blow.'
@@ -444,7 +444,7 @@ if $ARGS[0] = 'kotov_love':
 	elseif DPgrup = 2:
 		'The guy has a smug look on his face as he calls over his friends, who all come over to crowd around Vitek. "Real tough guy huh?" Vitek''s friends come over to back him up. After a bit of tough talk and shoving, the two groups break apart peacefully, going their own ways.'
 	elseif DPgrup = 3:
-		'The guy throws up his hands. "Sorry man, I didn''t know she was with you."' 
+		'The guy throws up his hands. "Sorry man, I didn''t know she was with you."'
 		'Vitek pushes the guy. "Go back to the city and stay there."'
 	end
 	act 'Go to Vitek':
@@ -582,20 +582,20 @@ if $ARGS[0] = 'dance_vrp':
 			$boydesc = $npc_nickname[$npclastcalled]
 			if rand(1,2) = 1:
 				if DPtipe = 1:
-					'"My name is <<$boydesc>>. What''s yours?" the guy asks.' 
+					'"My name is <<$boydesc>>. What''s yours?" the guy asks.'
 					'"<<$pcs_firstname>>, but people call me <<$pcs_nickname>>." you reply. Once the song ends, the guy asks you to sit with him and chat.'
 				elseif DPtipe = 2:
-					'"My name is <<$boydesc>>. What''s yours?" the guy asks.' 
+					'"My name is <<$boydesc>>. What''s yours?" the guy asks.'
 					'"<<$pcs_firstname>>, but people call me <<$pcs_nickname>>." you reply. The drunk guy humped you throughout the dance and now his face is flushed with excitement. He asks you to leave with him to get some fresh air and talk outside.'
 				end
 
 				act 'Go with the guy': gt 'pav_disco_sex', 'outside', 'nice'
 			else
 				if DPtipe = 1:
-					'"My name is <<$boydesc>>. What''s yours?" the guy asks.' 
+					'"My name is <<$boydesc>>. What''s yours?" the guy asks.'
 					'"<<$pcs_firstname>>, but people call me <<$pcs_nickname>>." you reply. Once the song ends, the guy asks if you want to go outside with him.'
 				elseif DPtipe = 2:
-					'"My name is <<$boydesc>>. What''s yours?" the guy asks.' 
+					'"My name is <<$boydesc>>. What''s yours?" the guy asks.'
 					'"<<$pcs_firstname>>, but people call me <<$pcs_nickname>>." you reply. The drunk guy humped you throughout the dance and now his face is flushed with excitement. He asks you to leave with him and to get some fresh air and talk outside.'
 				end
 				act 'Go with the guy': gt 'pav_disco', 'hookup_nice'
@@ -635,7 +635,7 @@ if $ARGS[0] = 'dance_vrp':
 					'<center><img <<$set_imgh>> src="images/locations/pavlovsk/community/disco/outside_talk.jpg"></center>'
 					$npc_usedname[$npclastcalled] = $npc_nickname[$npclastcalled]
 					$boydesc = $npc_nickname[$npclastcalled]
-					'You go outside with the man. As you walk, he put his arm around your waist. "My name is <<$boydesc>>. What''s yours?" he asks.' 
+					'You go outside with the man. As you walk, he put his arm around your waist. "My name is <<$boydesc>>. What''s yours?" he asks.'
 					'"<<$pcs_firstname>>, but people call me <<$pcs_nickname>>." you answer and the man continues. "That''s a nice name. I''m in town on a business trip and I''m staying at a nearby hotel. There''s virtually nothing to do in this town, so why don''t you come back to my hotel with me? We can drink some whiskey and chat."'
 					if alko < 6 or pcs_horny <= 75 or fame['pav_slut'] <= 50:
 						gs 'willpower', 'drink', 'resist'
@@ -656,7 +656,7 @@ if $ARGS[0] = 'dance_vrp':
 			elseif DPtipe = 2:
 				$npc_usedname[$npclastcalled] = $npc_nickname[$npclastcalled]
 				$boydesc = $npc_nickname[$npclastcalled]
-				'The drunk man molests you for the entire dance and when the dance finally ends, he whispers in your ear. "My name is <<$boydesc>>. What''s yours?"' 
+				'The drunk man molests you for the entire dance and when the dance finally ends, he whispers in your ear. "My name is <<$boydesc>>. What''s yours?"'
 				'"<<$pcs_firstname>>, but people call me <<$pcs_nickname>>." you answer, feeling somewhat disgusted.'
 				'"<<$pcs_nickname>>, I''m not a local. I''m staying in a nearby hotel, so let''s take a taxi and go to my room." he drunkenly stutters.'
 				gs 'arousal', 'foreplay', 5
@@ -801,7 +801,7 @@ if $ARGS[0] = 'familiar2':
 		if bmTip[Tboynum] = 0:'After the Dance <<$boydesc>> offers to go out and drink beer.'
 		if bmTip[Tboynum] = 1:'After the Dance <<$boydesc>> offers to go hang out.'
 		if bmTip[Tboynum] = 2:'After the Dance <<$boydesc>> offers to go to his hotel.'
-		
+
 		gs 'willpower', 'drink', 'resist'
 		if will_cost <= pcs_willpwr:
 			act 'Refuse (<<will_cost>> Willpower)':
@@ -814,7 +814,7 @@ if $ARGS[0] = 'familiar2':
 		else
 			act 'Refuse (<font color="red"><<will_cost>> Willpower</font>)': '<br><font color="red">You don''t have enough willpower to use this action.</font>'
 		end
-		
+
 		act 'Agree':
 			*clr & cla
 			boynumBlock = 1
@@ -889,7 +889,7 @@ if $ARGS[0] = 'hookup_aggressive':
 		act 'Leave':gt $loc, $loc_arg
 		act 'Return to the dance':gt 'pav_disco'
 	end
-	
+
 	act 'Fuck off':
 		cla & *clr
 		'<center><img src="images/pc/reactions/fuckoff3.jpg"></center>'
@@ -900,7 +900,7 @@ if $ARGS[0] = 'hookup_aggressive':
 		act 'Leave':gt $loc, $loc_arg
 		act 'Return to the dance':gt 'pav_disco'
 	end
-	
+
 	act 'That sounds nice':
 		cla & *clr
 		'<center><img src="images/locations/pavlovsk/community/disco/outside_kiss.jpg"></center>'
@@ -911,7 +911,7 @@ if $ARGS[0] = 'hookup_aggressive':
 		gs 'stat'
 		act 'Go to his place':gt 'sex_ev_start', 'hookup_npc_home_start'
 	end
-	
+
 	act 'That sounds great':
 		cla & *clr
 		'<center><img src="images/locations/pavlovsk/community/disco/outside_kiss.jpg"></center>'
@@ -920,10 +920,10 @@ if $ARGS[0] = 'hookup_aggressive':
 		gs 'arousal', 'kiss', 5
 		gs 'arousal', 'end'
 		gs 'stat'
-		
+
 		act 'Go to his place':gt 'sex_ev_start', 'hookup_npc_home_start'
 	end
-	
+
 	if locat['Fam_inGad'] = 1:
 		act 'Take him home':
 			cla & *clr
@@ -949,7 +949,7 @@ if $ARGS[0] = 'hookup_nice':
 		act 'Leave':gt $loc, $loc_arg
 		act 'Return to the dance':gt 'pav_disco'
 	end
-	
+
 	act 'No thanks':
 		cla & *clr
 		'<center><img src="images/locations/pavlovsk/community/disco/outside_talk.jpg"></center>'
@@ -959,7 +959,7 @@ if $ARGS[0] = 'hookup_nice':
 		act 'Leave':gt $loc, $loc_arg
 		act 'Return to the dance':gt 'pav_disco'
 	end
-	
+
 	act 'Hook up with him':
 		cla & *clr
 		gs 'fame', 'pav', 'sex', 1
@@ -970,7 +970,7 @@ if $ARGS[0] = 'hookup_nice':
 		gs 'stat'
 		act 'Go to his place':gt 'sex_ev_start', 'hookup_npc_home_start'
 	end
-	
+
 	act 'Want to fuck?':
 		cla & *clr
 		gs 'fame', 'pav', 'sex', 1
@@ -983,7 +983,7 @@ if $ARGS[0] = 'hookup_nice':
 		gs 'stat'
 		act 'Go to his place':gt 'sex_ev_start', 'hookup_npc_home_start'
 	end
-	
+
 	gs 'family_schedule'
 	if locat['Fam_inGad'] = 1:
 		act'Invite him home (hookup)':
@@ -1009,7 +1009,7 @@ if $ARGS[0] = 'artem_disco':
 	'You text back to him. "I am at the disco, come dance with me, please."'
 	'There is a bit of a pause and then finally he text''s back. "ok, omw."'
 	'You stand around and wait listening to the music, it takes about ten minutes for Artem to show up but he finally does. He smiles and waves when he see''s you and then walks over, giving you a hug. "Not really my place but if my girl wants to dance lets dance." He says as he leads you out onto the dance floor.'
-	act 'Dance with Artem': 
+	act 'Dance with Artem':
 		*clr & cla
 		gs 'npc_relationship', 'modify', 'A2', 'like'
 		if hour > 0: minut += (24 -hour)*60 -minut

+ 2 - 2
locations/pav_disco_classmates.qsrc

@@ -114,7 +114,7 @@ if $ARGS[0] = 'classmates':
 		end
 	end
 
-	if soniaPS > 0 and discoenable['A25'] = 1 and discobloc['A25'] ! daystart:
+	if soniaQW['slut'] > 0 and discoenable['A25'] = 1 and discobloc['A25'] ! daystart:
 		if theme['is_dark'] = 1:
 			$table_disco += '<tr><td><table bgcolor=#404040>'
 		else
@@ -216,7 +216,7 @@ if $ARGS[0] = 'atdisco':
 !!Stasya
 	if discoenable['A147'] = 1: discoenable['A139'] = 1
 !!Sonia
-	if soniaPS > 0:
+	if soniaQW['slut'] > 0:
 		gs 'pav_disco_classmates', 'atdisco4i', 25
 	else
 		gs 'pav_disco_classmates', 'atdisco10', 25

+ 40 - 40
locations/pav_hotelWork.qsrc

@@ -377,7 +377,7 @@ if $ARGS[0] = 'maid':
 					pavhotprosQW = 1
 					gt 'pav_hotel'
 				end
-				
+
 				act 'Where is the other guy?':
 					*clr & cla
 					threesometojoin = 1
@@ -406,11 +406,11 @@ if $ARGS[0] = 'maid':
 						pavhotprosQW = 2
 
 						act 'Continue': gt 'pav_hotel'
-					else	
+					else
 						if montake = 0:
 							money -= 1000
 						else
-							money -= 1000 
+							money -= 1000
 							money += montake
 						end
 						gs 'stat'
@@ -433,13 +433,13 @@ if $ARGS[0] = 'maid':
 							'The girl obediently continues sucking but looks at the man with pleading eyes, hoping this would convince him to stop. Unfortunately for her the cruel bastard takes this as encouragement. '
 							'Without warning the man grabs one of her nipples and gives it a firm twist. You are sure that if the girl didn''t have a mouth full of dick, her scream would have been loud enough for the entire floor to hear.'
 							'Finally, the man relents from his torture and starts focusing on her mouth again. He places both hands on her head and begins face-fucking her, pushing his big cock into her mouth all the way to the base. You reckon that this girl is a deep throat specialist as she seems unfazed by the rough throat-fucking.'
-							
+
 							act 'Continue to watch in silence':
 								*clr & cla
 								gs 'arousal', 'voyeur_sex', 20
 								gs 'arousal', 'end'
 								gs 'stat'
-								
+
 								'<center><img <<$set_imgh>> src="images/shared/sex/mmf/fbdrdp.jpg"></center>'
 								'"Let''s give our audience a proper show." The man says as he slides his slimy dick out of the slut''s abused esophagus.'
 								'The second guy happily agrees and shows his enthusiasm by roughly spanking the girl. "You heard him, bitch! Sit on my cock so I can pound that filthy cunt from below." He crudely orders.'
@@ -456,7 +456,7 @@ if $ARGS[0] = 'maid':
 
 								act 'Go to the lobby': gt 'pav_hotel'
 							end
-							
+
 							act 'Start touching yourself':
 								*clr & cla
 								gs 'arousal', 'vaginal_finger', 10, 'masturbate'
@@ -499,11 +499,11 @@ if $ARGS[0] = 'maid':
 			pcs_mood -= 3
 			gs 'sweat', 'add', 5
 			gs 'stat'
-			
+
 			:new_maid_event
-			if soniaPS = 5 and maidcheck_sonia ! daystart:
+			if soniaQW['slut'] = 5 and maidcheck_sonia ! daystart:
 				maidrand = rand(0,160)
-			else 
+			else
 				maidrand = rand(0,120)
 			end
 
@@ -635,7 +635,7 @@ if $ARGS[0] = 'maid':
 				'Just when you were about to leave the room you notice that the man is sitting on the edge of the bed and is on the verge of tears. He doesn''t know what to do now.'
 
 				act 'Leave the room': gt 'pav_hotelWork', 'maid'
-				
+
 				gs 'willpower', 'hj', 'self'
 				if will_cost <= pcs_willpwr:
 					act 'Try to cheer up the man with your hands (<<will_cost>> Willpower)':
@@ -661,7 +661,7 @@ if $ARGS[0] = 'maid':
 							'You move to the bed and gently place your hand on his bare chest. You push him down on the bed. Then you move your hand down to his waist and take his flaccid penis in your hand. You slowly start moving your hand up and down. It only takes a few strokes for the dick to become rock-hard.'
 							'The man watches you but doesn''t say anything.'
 							'After stroking him for a few minutes he starts moaning loudly and suddenly his cum starts splashing all over your hand.'
-							'You give him a little smile and he smiles back at you. You are happy you were able to cheer him up. Then you stand up, go wash your hands in the bathroom and leave the room to continue your work.'							
+							'You give him a little smile and he smiles back at you. You are happy you were able to cheer him up. Then you stand up, go wash your hands in the bathroom and leave the room to continue your work.'
 						end
 
 						act 'Continue': gt 'pav_hotelWork', 'maid'
@@ -669,7 +669,7 @@ if $ARGS[0] = 'maid':
 				else
 					act 'Try to cheer up the man with your hands (<font color="red"><<will_cost>> Willpower</font>)': '<br><font color="red">You don''t have enough willpower to use this action.</font>'
 				end
-				
+
 				gs 'willpower', 'bj', 'self'
 				if will_cost <= pcs_willpwr:
 					act 'Try to cheer up the man with your mouth (<<will_cost>> Willpower)':
@@ -708,10 +708,10 @@ if $ARGS[0] = 'maid':
 										gs 'willpower', 'swallow', 'self'
 										gs 'willpower', 'pay', 'self'
 										gs 'stat'
-										
+
 										'You swallow the man''s sperm diligently.'
 										'You give him a little smile and he smiles back at you. You are happy you were able to cheer him up. Then you stand up to leave the room and continue your work.'
-										
+
 										act 'Continue': gt 'pav_hotelWork', 'maid'
 									end
 								else
@@ -796,9 +796,9 @@ if $ARGS[0] = 'maid':
 				'You open the door to the next room, and immediately freeze in place when you hear a loud moaning coming from inside. Curious as you are, you decide to sneak a peek and see what''s happening in the room. You see a couple fucking enthusiastically on the bed, completely oblivious to your presence.'
 				gs 'arousal', 'voyeur_sex', 10
 				gs 'stat'
-				
+
 				act 'Get back to work':gt 'pav_hotelWork', 'maid'
-				
+
 				act 'Watch them for a while':
 					cla
 					'Making sure you don''t make a sound, you put your things away and watch them for a while, softly fondling yourself through your clothes. It feels great, and the couple on the bed looks like they''re having a great time as well. Even though you want to keep watching them, you realize you have to get back to work before you''re missed.'
@@ -845,7 +845,7 @@ if $ARGS[0] = 'maid':
 
 					act 'Get back to work': gt 'pav_hotelWork', 'maid'
 				end
-			elseif maidrand <= 110:	
+			elseif maidrand <= 110:
 				if maidcheck_4 = daystart: jump 'new_maid_event'
 				maidcheck_4 = daystart
 
@@ -862,7 +862,7 @@ if $ARGS[0] = 'maid':
 					end
 					'The blonde is bent over her lap and resting her hands on an old TV screen. Both are barely dressed in leather with everything exposed.'
 					'Suddenly the crop strikes against the floor 3 times loudly and the young blond moves.'
-					
+
 					IgorevnaBDSM += 1
 					gs 'arousal', 'voyeur', 10
 					gs 'stat'
@@ -905,14 +905,14 @@ if $ARGS[0] = 'maid':
 							end
 						end
 					end
-				elseif IgorevnaBDSM = 1:				
+				elseif IgorevnaBDSM = 1:
 					'<center><img <<$set_imgh>> src="images/characters/pavlovsk/resident/Anna/peeping/5.jpg"></center>'
 					'After the previous experience with this room, you carefully approach it as you''re expecting to see another act, but this blows your expectations away...'
 					iif(LariskaQW['metAnna'] = 1, 'Anna', 'The brunette')+' is on her knees completely naked, collared and leashed by a woman you''ve never seen before.'
-					
+
 					gs 'arousal', 'voyeur', 3
 					gs 'stat'
-					
+
 					act 'Watch them for a while':
 						IgorevnaBDSM += 1
 						*clr & cla
@@ -934,7 +934,7 @@ if $ARGS[0] = 'maid':
 							act 'What happens next':
 								*clr & cla
 								'<center><img <<$set_imgh>> src="images/characters/pavlovsk/resident/Anna/peeping/8.jpg"></center>'
-								iif(LariskaQW['metAnna'] = 1, 'Anna', 'The brunette')+' quietly obeys placing the bit in her mouth and securing it in place with the straps. Then she climbs on to the strange bench spreading herself to the unknown woman.' 
+								iif(LariskaQW['metAnna'] = 1, 'Anna', 'The brunette')+' quietly obeys placing the bit in her mouth and securing it in place with the straps. Then she climbs on to the strange bench spreading herself to the unknown woman.'
 								'The woman chains her arms and legs to the bench, "Take this bitch! I''ll teach you your place." she yells as she starts whipping '+iif(LariskaQW['metAnna'] = 1, 'Anna', 'the brunette')+'.'
 								'You watch them for some time flabbergasted by what you''re seeing, and after a while, you feel you''ve seen enough as you decide to leave.'
 								gs 'arousal', 'voyeur', 3
@@ -946,13 +946,13 @@ if $ARGS[0] = 'maid':
 						end
 					end
 				elseif IgorevnaBDSM = 2:
-					
+
 					'<center><img <<$set_imgh>> src="images/characters/pavlovsk/resident/Anna/peeping/9.jpg"></center>'
 					'While passing near the room where you have seen '+iif(LariskaQW['metAnna'] = 1, 'Lariska''s mum', 'the brunette')+', you hear a male voice, curious as to why you decide to open the door a little with using you passkey. When you open the door you can see '+iif(LariskaQW['metAnna'] = 1, 'Anna Igorevna', 'the brunette')+' completely naked except for a pair of gloves stocks and suspenders and some rope tied like very skimpy knickers. You cannot hear them clearly as they talk quietly, but from what you are able to hear she does not seem to be in any danger.'
 					'"Only after I put your gag back can you can start to moan and then only after I tell you. Am I clear?" the man says pulling her hair and groping her marvellous boobs. '+iif(LariskaQW['metAnna'] = 1, 'Anna', 'The brunette')+', cannot move, her hands are tied to a rope hanging from the ceiling. She says nothing just simply nods. You can see from her expression that she''s affected by his groping, her boobs must be really sensitive.'
 					'Finally the man moves his hand away and picks up the gag, she says "Thank You."'
 					'"Thank you for what?"'
-					'"Thank you for groping my breast."' 
+					'"Thank you for groping my breast."'
 					IgorevnaBDSM += 1
 					gs 'arousal', 'voyeur', 3
 					gs 'stat'
@@ -995,7 +995,7 @@ if $ARGS[0] = 'maid':
 							end
 						end
 					end
-				elseif IgorevnaBDSM = 3:	
+				elseif IgorevnaBDSM = 3:
 					'<center><img <<$set_imgh>> src="images/characters/pavlovsk/resident/Anna/peeping/13.jpg"></center>'
 					'You pass near the room that '+iif(LariskaQW['metAnna'] = 1, 'Lariska''s mother', 'the brunette')+' usually rents.'
 					'Maybe she''s some kind of whore that likes to be dominated you wonder as you hear some voices coming from the room. Someone is definitely in there. You decide to look in and open the door slightly...'
@@ -1051,7 +1051,7 @@ if $ARGS[0] = 'maid':
 					'You hear a woman mumble, "Mmmmh." That doesn''t tell you much so you put your ear right to the door.'
 					'"Roll!" You clearly hear what seems to be an order but it is not the woman you are expecting, you will have to look so you decide to open the door very slightly.'
 					'You can see two bounded women. One woman with some kind of mask and a collar but dressed in regular clothes rolling on the floor as ordered and another in revealing underwear gagged and knelling next to her.'
-					
+
 					gs 'arousal', 'voyeur', 3
 					gs 'stat'
 
@@ -1110,14 +1110,14 @@ if $ARGS[0] = 'maid':
 							end
 						end
 					end
-				elseif IgorevnaBDSM >= 5:					
+				elseif IgorevnaBDSM >= 5:
 					cla
 					'<center><img <<$set_imgh>> src="images/characters/pavlovsk/resident/Anna/peeping/'+rand(21,24)+'.jpg"></center>'
 					'You peep through the keyhole to see what Anna is up to tonight, the door is locked so you cannot get a good look but as always it is both unusual and sexy.'
 					gs 'arousal', 'voyeur', 10
 					gs 'arousal', 'end'
 					gs 'stat'
-					
+
 					act 'Get back to work': gt 'pav_hotelWork', 'maid'
 				end
 			elseif maidrand <= 120:
@@ -1135,14 +1135,14 @@ if $ARGS[0] = 'maid':
 					'As you are cleaning the guest walks in. She looks like she has had a few drinks and just waves you out of her way.'
 					'She is wearing just a bra, mini skirt and heels all in black. You would guess she''d been clubbing but at this time?'
 					'It''s either too early or far too late.'
-					
+
 					act 'Move aside and let her pass':
 						*clr & cla
 						'<center><img <<$set_imgh>> src="images/locations/pavlovsk/hotel/work/events/tipsy2.jpg"></center>'
 						'She crawls up on the bed exposing her lack of underwear.'
 						'Damn, you think that must have been a hell of a party.'
 						'You can''t help but stare at her pussy as she gives you such a show.'
-						
+
 						gs 'arousal', 'voyeur', 5
 						gs 'arousal', 'voyeur', -15
 						gs 'arousal', 'end'
@@ -1153,7 +1153,7 @@ if $ARGS[0] = 'maid':
 							'<center><img <<$set_imgh>> src="images/locations/pavlovsk/hotel/work/events/tipsy3.jpg"></center>'
 							'Promptly your free show ends as she rolls over and passes out'
 							'You had mostly finished her room and this situation might look bad if your boss saw you so you gather your things and leave feeling a little more aroused than when you started.'
-							
+
 							act 'Get back to work': gt 'pav_hotelWork', 'maid'
 						end
 					end
@@ -1165,19 +1165,19 @@ if $ARGS[0] = 'maid':
 					gs 'arousal', 'voyeur', 5
 					gs 'arousal', 'end'
 					gs 'stat'
-					
+
 					act 'Get back to work': gt 'pav_hotelWork', 'maid'
 				elseif rand(0,5) < 5:
 					'<center><img <<$set_imgh>> src="images/locations/pavlovsk/hotel/work/events/underwear.jpg"></center>'
 					'You walk into the room to find a regular guest standing in her room in just her underwear.'
 					'She is not looking in your direction so you just back out and close the door.'
-					
+
 					act 'Get back to work': gt 'pav_hotelWork', 'maid'
 				else
 					'<center><img <<$set_imgh>> src="images/locations/pavlovsk/hotel/work/events/masturbate1.jpg"></center>'
 					'You walk into the room and see a regular guest on her bed naked and clearly masturbating.'
 					'She is looking to the side and has not realized you are in the room.'
-					
+
 					gs 'arousal', 'voyeur', 5
 					gs 'arousal', 'end'
 					gs 'stat'
@@ -1189,7 +1189,7 @@ if $ARGS[0] = 'maid':
 						'<center><img <<$set_imgh>> src="images/locations/pavlovsk/hotel/work/events/masturbate2.jpg"></center>'
 						'You crouch down so that she won''t see you and have a perfect close view of her pussy.'
 						'She is moaning quite loudly now and you watch her insert a finger deeply inside.'
-							
+
 						gs 'arousal', 'voyeur', 10
 						act 'Maybe you should get back to work':gs 'arousal', 'end' & gt 'pav_hotelWork', 'maid'
 
@@ -1198,21 +1198,21 @@ if $ARGS[0] = 'maid':
 							'<center><img <<$set_imgh>> src="images/locations/pavlovsk/hotel/work/events/masturbate3.jpg"></center>'
 							'She is clearly more aroused as her pussy glistens and the sound of her fucking herself makes it harder to hear her moans even as they grow louder.'
 							'She slides a second finger inside desperate to sate her growing desire.'
-									
+
 							gs 'arousal', 'voyeur', 10
-							
+
 							gs 'stat'
 
 							act 'You really should get back to work':gs 'arousal', 'end' & gt 'pav_hotelWork', 'maid'
 
-					
+
 							act 'Stay to watch her finish':
 								*clr & cla
 								'<center><img <<$set_imgh>> src="images/locations/pavlovsk/hotel/work/events/masturbate4.jpg"></center>'
 								'Bucking her hips and crying out for an orgasm the guest gives up on internal pleasures.'
 								'She removes her fingers and focuses solely on her clit.'
 								'"Oh God! Fuck! Yes!" Her body spasms as she finally achieves what must be a massive orgasm.'
-										
+
 								gs 'arousal', 'voyeur', 10
 								gs 'stat'
 
@@ -1222,7 +1222,7 @@ if $ARGS[0] = 'maid':
 									'<center><img <<$set_imgh>> src="images/locations/pavlovsk/hotel/work/events/masturbate5.jpg"></center>'
 									'She is lying back recovering, the occasional twitch the only sign that she is still conscious.'
 									'You go to pass her a towel so she can stop her juice dripping onto the sheets before you catch yourself and sneak out of the room.'
-									
+
 									act 'Get back to work': gt 'pav_hotelWork', 'maid'
 								end
 							end

+ 1 - 1
locations/pav_lake.qsrc

@@ -150,7 +150,7 @@ if $ARGS[0] = '':
 			menu_off = 1
 			minut += 30
 			pcs_mood += 5
-			gs'stat'
+			gs 'stat'
 
 			if $clothingworntype = 'nude':
 				'<center><img <<$set_imgh>> src="images/locations/pavlovsk/lake/walknude.jpg"></center>'

+ 22 - 20
locations/pav_lake_nude.qsrc

@@ -1,14 +1,12 @@
 # pav_lake_nude
 
+*clr & cla
+menu_off = 0
 $location_type = 'secluded'
-$loc = 'pav_lake_nude'
-$loc_arg = ''
-$menu_loc = 'pav_lake_nude'
-$menu_arg = ''
+gs 'shortgs', 'setloc', 'pav_lake_nude', ''
 $locclass = 'beach'
-menu_off = 0
-*clr & cla
 gs 'stat'
+
 if sound = 0: PLAY 'sound/lakeshore2.mp3',20
 '<center><H4>Secluded beach</H4></center>'
 if month >= 3 and month <= 5:
@@ -68,7 +66,7 @@ if month >= 5 and month <= 9:
 		'You should buy some swimwear if you intend on spending time at the beach'
 		*nl
 	end
-		
+
 	if $clothingworntype ! 'nude' and (pcs_inhib > 30 or (exhibitionist_lvl > 1 and pcs_horny >= 60)):
 		gs 'willpower', 'exhib', 'self'
 		if will_cost <= pcs_willpwr:
@@ -131,7 +129,7 @@ end
 
 act 'Go to the sauna': gt 'pav_lake_nude', 'sauna'
 
-if temper >= 15 and month >= 5 and month <= 9 and hour >= 6 and hour <= 20:	
+if temper >= 15 and month >= 5 and month <= 9 and hour >= 6 and hour <= 20:
 	act 'Take a walk along the beach':
 		*clr & cla
 		menu_off = 1
@@ -156,7 +154,7 @@ if temper >= 15 and month >= 5 and month <= 9 and hour >= 6 and hour <= 20:
 		'You walk along the beach, enjoying the feeling of the sun on your body.'
 		act 'Continue':gt'pav_lake_nude'
 	end
-	
+
 	if PCloswimwear = 1 or $clothingworntype = 'nude':
 		if pcs_stam >= (20 * (10 - sport_clothes_exercise_bonus)) / 2:
 			act 'Go swimming':
@@ -177,8 +175,10 @@ if temper >= 15 and month >= 5 and month <= 9 and hour >= 6 and hour <= 20:
 				if pcs_vital < 30: gs 'exp_gain', 'vital', 1
 				fat -= 1
 				pcs_makeup = 1
-				gs 'stat'
+
 				*clr & cla
+				gs 'stat'
+
 				if $clothingworntype = 'nude':
 					'<center><img <<$set_imgh>> src="images/pc/activities/swim/lake/swim_nude_<<rand(0,10)>>.jpg"></center>'
 					if pcs_inhib < 60:inhib_exp += rand(0,1)
@@ -194,7 +194,7 @@ if temper >= 15 and month >= 5 and month <= 9 and hour >= 6 and hour <= 20:
 			end
 		end
 	end
-	
+
 	if sunWeather = 1 and (PCloswimwear = 1 or $clothingworntype = 'nude'):
 		act 'Go sunbathing':
 			menu_off = 1
@@ -226,6 +226,7 @@ if temper >= 15 and month >= 5 and month <= 9 and hour >= 6 and hour <= 20:
 						'You apply sunscreen to yourself and lie down on the towel to work on your tan. You enjoy the warm rays of the sun on your naked body.'
 					end
 				end
+				gs 'stat'
 				act 'Continue': gt 'pav_lake_nude'
 			else
 				cla
@@ -234,7 +235,7 @@ if temper >= 15 and month >= 5 and month <= 9 and hour >= 6 and hour <= 20:
 			end
 		end
 	end
-	
+
 	if voyeurism_start = 0:
 		act 'Look around the beach':
 			*clr & cla
@@ -325,13 +326,13 @@ if $ARGS[0] = 'sauna':
 	gs 'stat'
 	'<center><img <<$set_imgh>> src="images/locations/pavlovsk/lake/secluded_beach/sauna/sauna.jpg"></center>'
 	'You walk up the small trail from the beach to the sauna. They say it was built for the tourists, but you wonder why they put it on a secluded beach where tourists can''t possibly find it. Either way, you and many others are glad they built it. It''s well built inside and out with three sections - the mens section, the womens section and a co-ed section. You need swimwear to use the sauna, but some people use it naked.'
-	
+
 	if $clothingworntype ! 'nude' or sauna_stripped = 0:
 		act 'Go back to the beach': gt 'pav_lake_nude'
 	else
 		gs 'willpower', 'exhib', 'self'
 		if will_cost <= pcs_willpwr:
-			act 'Go to the beach (<<will_cost>> Willpower)': 
+			act 'Go to the beach (<<will_cost>> Willpower)':
 				gs 'willpower', 'pay', 'self'
 				gt 'pav_lake_nude'
 			end
@@ -339,14 +340,14 @@ if $ARGS[0] = 'sauna':
 			act 'Go to the beach (<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 func('changingroom','count_swim_item') > 0:
 		act 'Use changing room':gt 'changingroom', 'view_swim_list'
 	else
 		*nl
 		'You should buy some swimwear if you intend on spending time at the beach.'
 	end
-		
+
 	if $clothingworntype ! 'nude' and (pcs_inhib > 25 or (exhibitionist_lvl > 1 and pcs_horny >= 60)):
 		act 'Take your clothes off':
 			*clr & cla
@@ -374,11 +375,12 @@ if $ARGS[0] = 'sauna':
 			gs 'clothing', 'wear', $lastwornclothingtype['swim'], lastwornclothingnumber['swim']
 			gs 'panties', 'wear', $lastwornpantytype['swim'], lastwornpantynumber['swim']
 			gs 'bras', 'wear', $lastwornbratype['swim'], lastwornbranumber['swim']
+			gs 'stat'
 			'You put your clothes back on.'
 			act 'Continue': gt 'pav_lake_nude', 'sauna'
 		end
 	end
-	
+
 	if $clothingworntype = 'nude' or PCloswimwear = 1:
 		act 'Go to the womens section':
 			*clr & cla
@@ -420,7 +422,7 @@ if $ARGS[0] = 'sauna':
 				end
 				gs 'stat'
 				'You spend 30 minutes relaxing in the sauna.'
-				
+
 				act 'Leave': gt 'pav_lake_nude', 'sauna'
 				if month = 12 or month < 3: gs 'pav_lake_nude', 'ice_plunge'
 			end
@@ -453,7 +455,7 @@ if $ARGS[0] = 'sauna':
 						if pcs_inhib < 60: inhib_exp += rand(1,2)
 					end
 					'You spend 30 minutes relaxing in the sauna.'
-					
+
 					act 'Leave': gt 'pav_lake_nude', 'sauna'
 					if month = 12 or month < 3: gs 'pav_lake_nude', 'ice_plunge'
 				end
@@ -465,7 +467,7 @@ if $ARGS[0] = 'sauna':
 			*clr & cla
 			menu_off = 1
 			minut += 2
-			gs 'stat'			
+			gs 'stat'
 			if hour < 8 or hour > 22:
 				'<center><img <<$set_imgh>> src="images/locations/pavlovsk/lake/secluded_beach/sauna/saunaempty.jpg"></center>'
 				'It appears to be empty at the moment.'

+ 1 - 1
locations/pav_parkev.qsrc

@@ -440,7 +440,7 @@ if $ARGS[0] = 'walk2':
 		elseif temprand = 18:
 			'<center><img <<$set_imgh>> src="images/locations/pavlovsk/park/event/walk/day/deep/tree_girl_book1.jpg"></center>'
 			'As you walk along one of the trails, you run across a girl sitting next to a tree reading a book. She never looks up at you as you walk past. Whatever the book is, she seems totally engrossed in it.'
-		elseif temprand = 19 and soniaPS = 5 and hour > 14 and hour < 20:
+		elseif temprand = 19 and soniaQW['slut'] = 5 and hour > 14 and hour < 20:
 			!!I copied the old code for this and just added the temprand but I am sure it can be coded better
 			gs 'exp_gain', 'prcptn', rand(1,2)
 			'<center><img <<$set_imgh>> src="images/locations/pavlovsk/park/event/walk/walk_deep_day.jpg"></center>'

+ 59 - 69
locations/pav_station.qsrc

@@ -80,14 +80,13 @@ if $ARGS[0] = 'entrance':
 		temp_tot_booked_pav = policeQW['shoplift_booked_pav'] + policeQW['prostitution_booked_pav']
 
 		if temp_tot_booked_pav = 1:
-			!!a gosub on purpose!!
-			gs 'pav_station', 'first_shoplift'
-		elseif temp_tot_booked_pav < 6:
-			gt 'pav_station', 'repeat'
-		elseif temp_tot_booked_pav < 11:
-			gt 'pav_station', 'repeat'
+			xgt 'pav_station', 'first_shoplift'
+		elseif temp_tot_booked_pav <= 5:
+			xgt 'pav_station', 'repeat'
+		elseif temp_tot_booked_pav <= 10:
+			xgt 'pav_station', 'multiple'
 		else
-			gt 'pav_station', 'regular'
+			xgt 'pav_station', 'regular'
 		end
 
 	else
@@ -96,14 +95,13 @@ if $ARGS[0] = 'entrance':
 		temp_tot_booked_pav = policeQW['shoplift_booked_pav'] + policeQW['prostitution_booked_pav']
 
 		if temp_tot_booked_pav = 1:
-			!!a gosub on purpose!!
-			gs 'pav_station', 'first_prostitution'
-		elseif temp_tot_booked_pav < 6:
-			gt 'pav_station', 'repeat'
-		elseif temp_tot_booked_pav < 11:
-			gt 'pav_station', 'repeat'
+			xgt 'pav_station', 'first_prostitution'
+		elseif temp_tot_booked_pav <= 5:
+			xgt 'pav_station', 'repeat'
+		elseif temp_tot_booked_pav <= 10:
+			xgt 'pav_station', 'multiple'
 		else
-			gt 'pav_station', 'regular'
+			xgt 'pav_station', 'regular'
 		end
 	end
 end
@@ -137,7 +135,7 @@ if $ARGS[0] = 'first_shoplift':
 		'He notices that it''s you that is being lead by the officer and says, "Well, there''s a first time for everything, I suppose. For your sake, lets hope your first time is your last time."'
 	end
 
-	act 'Continue further in':gt 'pav_station', 'booking'
+	act 'Continue further in': gt 'pav_station', 'booking'
 end
 
 if $ARGS[0] = 'first_prostitution':
@@ -181,101 +179,90 @@ end
 
 
 if $ARGS[0] = 'repeat':
+	cla
 	minut += 2
 	gs 'pain', 2, 'armR', 'pinch'
 	gs 'stat'
 
-	if temp_tot_booked = 1:
+	if temp_tot_booked_pav = 1:
 		'"You''re way to young to be doing all these things Miss <<$pcs_lastname>>... We might have to call your mother here..."'
 		'The others smile and shake their heads as he leads you further inside the police station.'
-
-	elseif temp_tot_booked = 2:
+	elseif temp_tot_booked_pav = 2:
 		'"Seems like you don''t learn Miss <<$pcs_lastname>>, it''s really time to call your parents..."'
 		'The others laugh and shake their heads as he leads you further inside the police station.'
-
-	elseif temp_tot_booked = 3:
+	elseif temp_tot_booked_pav = 3:
 		'"I''m shocked seeing you again here <<$pcs_lastname>>... Not really, just as I expected."'
 		'The others smile and shake their heads as he leads you further inside the police station.'
-
-	elseif temp_tot_booked = 4:
+	elseif temp_tot_booked_pav = 4:
 		'"I feel sorry for your parents for having such a disappointing kid..."'
 		'The others shake their heads as he leads you further inside the police station.'
-
-	elseif temp_tot_booked = 5:
+	else
 		'"Well, this is new. I expected one of the Kotov kids or one of their friends, not you, Miss <<$pcs_lastname>>... to be such a repeat offender"'
 		'The others shake their heads as he leads you further inside the police station.'
 	end
 
-	act 'Continue further in':gt 'pav_station', 'booking'
+	act 'Continue further in': gt 'pav_station', 'booking'
 end
 
 if $ARGS[0] = 'multiple':
+	cla
 	minut += 2
 	gs 'pain', 2, 'armR', 'pinch'
 	gs 'stat'
 
-	if temp_tot_booked = 6:
+	if temp_tot_booked_pav = 6:
 		'"Parents like yours should stop having kids if they can''t raise them well."'
 		'The others shake their heads as he leads you further inside the police station.'
-
-	elseif temp_tot_booked = 7:
+	elseif temp_tot_booked_pav = 7:
 		'"What is going on with the kids around here? You been hanging out with those Kotov brats and their loser friends?"'
 		'The others shake their heads as he leads you further inside the police station.'
-
-	elseif temp_tot_booked = 8:
+	elseif temp_tot_booked_pav = 8:
 		'"Oh look, if it isn''t our favorite guest here, Miss <<$pcs_lastname>>. Welcome back, we have a room all waiting for you."'
 		'The others shake their heads as he leads you further inside the police station.'
-
-	elseif temp_tot_booked = 9:
+	elseif temp_tot_booked_pav = 9:
 		'"You must be one of the worst offenders in Pavlovsk. You''re getting caught all the time."'
 		'The others shake their heads as he leads you further inside the police station.'
-
-	elseif temp_tot_booked = 10:
+	else
 		'"What are we going to do with you, <<$pcs_firstname>>? I don''t know how we are going to make you stop..."'
 		'The others shake their heads as he leads you further inside the police station.'
 	end
 
-	act 'Continue further in':gt 'pav_station', 'booking'
+	act 'Continue further in': gt 'pav_station', 'booking'
 end
 
 if $ARGS[0] = 'regular':
+	cla
 	minut += 2
 	gs 'pain', 2, 'armR', 'pinch'
 	gs 'stat'
 
-	temprand = rand(1, 8)
-	if temprand = 1:
+	temp_rand = rand(1, 8)
+	if temp_rand = 1:
 		'The staff sitting at the reception desk glance your way as the arresting officer glares down at you, "I''m sick and tired of processing you, <<$pcs_lastname>>! I hope they lock you away for a long time!"'
 		'The others shake their heads as he leads you further inside the police station.'
-
-	elseif temprand = 2:
+	elseif temp_rand = 2:
 		'The staff sitting at the reception desk glance your way as the arresting officer smirks, "Well, if it isn''t our favorite customer. How long will you be staying this time?"'
 		'The others laugh loudly as he leads you further inside the police station.'
-
-	elseif temprand = 3:
+	elseif temp_rand = 3:
 		'The staff sitting at the reception desk glance at you as the arresting officer sighs heavily, "Why do you continue doing this, <<$pcs_lastname>>? Aren''t you getting tired of this life?"'
 		'The others shake their heads as he leads you further inside the police station.'
-
-	elseif temprand = 4:
+	elseif temp_rand = 4:
 		'The staff sitting at the reception desk glance at you as the arresting officer smiles sarcastically, "What a surprise, it''s our favorite little criminal!"'
 		'The others shake their heads as he leads you further inside the police station.'
-
-	elseif temprand = 5:
+	elseif temp_rand = 5:
 		'"Looks like I won the bet! I knew you would be in here again. Thanks for the 100 rubles, <<$pcs_firstname>>!"'
 		'The others shake their heads as he leads you further inside the police station.'
-
-	elseif temprand = 6:
+	elseif temp_rand = 6:
 		'"So what is it this time, <<$pcs_lastname>>? Don''t you get tired of it?"'
 		'The others shake their heads as he leads you further inside the police station.'
-
-	elseif temprand = 7:
+	elseif temp_rand = 7:
 		'"Have you ever thought about straighting up your act? You''re getting into adulthood soon and should sober up before you end up in a real bad place."'
 		'The others shake their heads as he leads you further inside the police station.'
-
 	else
 		'"Did you really have to bring her to the station? Now I have to do all the extra paperwork..."'
 		'The others shake their heads as he leads you further inside the police station.'
 	end
+	killvar 'temp_rand'
 
 	act 'Continue further in':gt 'pav_station', 'booking'
 end
@@ -292,6 +279,7 @@ end
 
 
 if $ARGS[0] = 'booking1':
+	killvar 'temp_tot_booked_pav'
 	minut += 10
 	gs 'stat'
 
@@ -407,7 +395,7 @@ if $ARGS[0] = 'take_fingerprints1':
 		'<center><img <<$set_imgh>> src="images/locations/shared/police/booked.jpg"></center>'
 		'You sigh and stand still as he takes your mug shot and finishes the last of the paperwork. Once he is done he leads you out of the room and down towards the holding cells. You hear the door slam and it suddenly hits you that you''re all alone and locked up.'
 
-		act 'Inside the holding cell':gt 'pav_station', 'holdingcell'
+		act 'Inside the holding cell': gt 'pav_station', 'holdingcell'
 	end
 
 	gs 'willpower', 'crime', 'self', 'medium'
@@ -423,7 +411,7 @@ if $ARGS[0] = 'take_fingerprints1':
 			'<center><img <<$set_imgh>> src="images/locations/shared/police/bookedfu.jpg"></center>'
 			'You scoff and flip him off as he takes your photo. He looks around the camera and glares at you a moment, then goes over and finishes the last of the paperwork. Once he is done he leads you out of the room and down towards the holding cells. You hear the door slam and it suddenly hits you that you''re all alone and locked up.'
 
-			act 'Inside the holding cell':gt 'pav_station', 'holdingcell'
+			act 'Inside the holding cell': gt 'pav_station', 'holdingcell'
 		end
 	end
 
@@ -443,7 +431,7 @@ if $ARGS[0] = 'take_fingerprints1':
 			'<center><img <<$set_imgh>> src="images/locations/pavlovsk/police/booking_officer.jpg"></center>'
 			'You smile innocently to him. "Nothing just having a little harmless fun." He sighs and shakes his head, then he finishes the last of the paperwork. Once he is done he leads you out of the room and down towards the holding cells. You hear the door slam and it suddenly hits you that you''re all alone and locked up.'
 
-			act 'Inside the holding cell':gt 'pav_station', 'holdingcell'
+			act 'Inside the holding cell': gt 'pav_station', 'holdingcell'
 		end
 
 		act 'Don''t call my parents':
@@ -568,7 +556,7 @@ if $ARGS[0] = 'booking1_undress':
 					'You nod slowly as the officer ushers you out of the room. As you step out, he moves behind you and you feel his large hand groping your ass.'
 					'"You''ll regret that you rejected me," he comments quietly as he''s about to lock the cell door. You hear the door slam and it suddenly hits you that you''re all alone and locked up.'
 
-					act 'Inside the holding cell':gt 'pav_station', 'holdingcell'
+					act 'Inside the holding cell': gt 'pav_station', 'holdingcell'
 				end
 			end
 		end
@@ -577,6 +565,7 @@ end
 
 
 if $ARGS[0] = 'booking2':
+	killvar 'temp_tot_booked_pav'
 	minut += 15
 	gs 'stat'
 
@@ -648,7 +637,7 @@ if $ARGS[0] = 'booking2':
 					'"Once we take your mug shot, it will be time to take you into the holding cell while we wait for one of your parents to come pay your fine and pick you up." He says.'
 					'"And we''re done," he says, He leads you in silence to the holding cell, as the officer opens the door, he pushes you inside of it. You hear the door slam and it suddenly hits that you''re back here again.'
 
-					act 'Inside the holding cell':gt 'pav_station', 'holdingcell'
+					act 'Inside the holding cell': gt 'pav_station', 'holdingcell'
 				end
 			end
 		end
@@ -718,7 +707,7 @@ if $ARGS[0] = 'take_fingerprints2':
 		'"Once we take your mug shot, it will be time to take you into the holding cell while we wait for one of your parents to come pay your fine and pick you up." He says.'
 		'"And we''re done," he says, He leads you in silence to the holding cell, as the officer opens the door, he pushes you inside of it. You hear the door slam and it suddenly hits that you''re back here again.'
 
-		act 'Inside the holding cell':gt 'pav_station', 'holdingcell'
+		act 'Inside the holding cell': gt 'pav_station', 'holdingcell'
 	end
 
 	act 'Flip him off':
@@ -729,7 +718,7 @@ if $ARGS[0] = 'take_fingerprints2':
 		'<center><img <<$set_imgh>> src="images/locations/shared/police/bookedfu.jpg"></center>'
 		'You scoff and flip him off as he takes your photo. He looks around the camera and glares at you a moment, then goes over and finishes the last of the paperwork. Once he is done he leads you out of the room and down towards the holding cells. You hear the door slam and it suddenly hits you that you''re all alone and locked up.'
 
-		act 'Inside the holding cell':gt 'pav_station', 'holdingcell'
+		act 'Inside the holding cell': gt 'pav_station', 'holdingcell'
 	end
 
 	act 'Sexual tease him':
@@ -748,7 +737,7 @@ if $ARGS[0] = 'take_fingerprints2':
 			'<center><img <<$set_imgh>> src="images/locations/pavlovsk/police/booking_officer.jpg"></center>'
 			'You smile innocently to him. "Nothing just having a little harmless fun." He sighs and shakes his head, then he finishes the last of the paperwork. Once he is done he leads you out of the room and down towards the holding cells. You hear the door slam and it suddenly hits you that you''re all alone and locked up.'
 
-			act 'Inside the holding cell':gt 'pav_station', 'holdingcell'
+			act 'Inside the holding cell': gt 'pav_station', 'holdingcell'
 		end
 
 		act 'Don''t call my parents':
@@ -897,7 +886,7 @@ if $ARGS[0] = 'booking2_undress':
 						'You nod slowly as the officer ushers you out of the room. As you step out, he moves behind you and you feel his large hand groping your ass.'
 						'"You''ll regret that you rejected me," he comments quietly as he''s about to lock the cell door. You hear the door slam and it suddenly hits you that you''re all alone and locked up.'
 
-						act 'Inside the holding cell':gt 'pav_station', 'holdingcell'
+						act 'Inside the holding cell': gt 'pav_station', 'holdingcell'
 					end
 				end
 			end
@@ -1045,6 +1034,7 @@ if $ARGS[0] = 'holdingcell':
 		'text'
 		act 'Get taken home': minut += 15 & gt 'korrPar'
 	end
+
 	act 'Look away':
 		*clr & cla
 		gs 'stat'
@@ -1061,7 +1051,7 @@ if $ARGS[0] = 'rape_report':
 	'"I- I''d like t-to report a r-rape..." you stammer out. The officer''s eyes go wide with surprise, but less like he seems shocked at what you said happened to you and more like he didn''t expect you to have a real complaint.'
 	'"Oh! Well, just come this way, we can take your statement over here."'
 
-	act'Continue':
+	act 'Continue':
 		minut += rand(2,5)
 		gs'stat'
 		cla & *clr
@@ -1071,7 +1061,7 @@ if $ARGS[0] = 'rape_report':
 		'"Alright ma''am, tell me what happened to you."'
 		'You explain to the officer as best as you can what happened to you while he takes notes. How you were randomly attacked, how you were violated.'
 
-		act'Continue':
+		act 'Continue':
 			cla & *clr
 			'<center><img <<$set_imgh>> src="images/locations/shared/police/interrogation2.jpg"></center>'
 			'"And where did the attack occur?"'
@@ -1086,7 +1076,7 @@ if $ARGS[0] = 'rape_report':
 			'The blood drains from your face. "I... I-!"'
 			'"Anything about him will be helpful. Height? Build? Hair color? Eye color?"'
 
-			act'I... can''t...':
+			act 'I... can''t...':
 				cla & *nl
 				'<center><img <<$set_imgh>> src="images/locations/shared/police/interrogation1.jpg"></center>'
 				'"He was... I don''t remember how tall he was... And... he was wearing a nondescript hoody, I couldn''t tell what his body type was... And-! And I don''t know what he looks like... he was behind me during... the event..."'
@@ -1094,10 +1084,10 @@ if $ARGS[0] = 'rape_report':
 				*nl
 				'For a moment, you wonder how many other girls like you have sat at this desk filing a report just like this one only for it to go nowhere. You wonder if any of them were been raped by the same man who raped you...'
 
-				act'Finish the interview':
+				act 'Finish the interview':
 					cla & *clr
 					minut += rand(2,5)
-					gs'stat'
+					gs 'stat'
 					'<center><img <<$set_imgh>> src="images/locations/shared/police/pavrec.jpg"></center>'
 					'With that, you conclude the interview and are led to the front door.'
 					'"We''ll take this information into consideration. Again, we''re very sorry for what happened to you."'
@@ -1106,11 +1096,11 @@ if $ARGS[0] = 'rape_report':
 					act 'Leave': minut += 3 & gt 'pav_train_hall'
 				end
 
-				if cumsumvag+cumsumass > 0:
-					act'Can I get a rape kit?':
+				if cumsumvag + cumsumass > 0:
+					act 'Can I get a rape kit?':
 						cla & *clr
 						minut += rand(2,5)
-						gs'stat'
+						gs 'stat'
 
 						'<center><img <<$set_imgh>> src="images/locations/shared/police/interrogation2.jpg"></center>'
 						'Suddenly, a spark of hope alights in your brain.'
@@ -1119,14 +1109,14 @@ if $ARGS[0] = 'rape_report':
 						'"I''m sorry ma''am, but we are a small town police department. We simply don''t have enough funding to afford rape kits. Even if we did, we don''t have a lab that could examine it. I''m sorry."'
 						'As quickly as your hope flared, it is extinguished and you slump in your chair, feeling defeated.'
 
-						act'Finish the interview':
+						act 'Finish the interview':
 							cla & *clr
 							'<center><img <<$set_imgh>> src="images/locations/pavlovsk/police/pavext.jpg"></center>'
 							'With that, you conclude the interview and are led to the front door.'
 							'"We''ll take this information into consideration. Again, we''re very sorry for what happened to you." And then he walks away.'
 							'Leaving you alone with your thoughts and memories of your rape...'
 
-							act'Leave': minut += 3 & gt 'pav_train_hall'
+							act 'Leave': minut += 3 & gt 'pav_train_hall'
 						end
 					end
 				end

+ 3 - 3
locations/placer_pav_park.qsrc

@@ -34,7 +34,7 @@ elseif encounter = 4:
 	$textEvent = 'You see two young girls taking a stroll in the park.'
 elseif encounter = 5:
 	!!people in the park number of guys
-	
+
 	if placerParameter['friend_index'] = 14 and katjaQW['park_sex'] = 0:
 		!!If Katja never have had sex with a random guy at the park you only meet 1 guy.
 		placerParameter['number_of_man'] = 1
@@ -108,7 +108,7 @@ else
 	$textEvent = 'You see 2 women walking in the park, holding each other''s hands tightly. They''re clearly in love.'
 end
 
-if met_someone = 1: 
+if met_someone = 1:
 	gs 'placer_man'
 	met_someone = 0
 end
@@ -189,7 +189,7 @@ end
 !!Copied from gskver - End.
 
 
-if soniaPS=5 and rand(1,10)=>9 and hour>14 and hour<20:
+if soniaQW['slut']=5 and rand(1,10)=>9 and hour>14 and hour<20:
 	''
 	'<b>While you walk past a row of bushes, you hear some strange sounds coming from behind them.</B>'
 	''

+ 26 - 26
locations/post_deliveries.qsrc

@@ -33,7 +33,7 @@ if $ARGS[0] = 'start':
 		'Your bag is so heavy that you have to carry it with both hands. You might have to use some shortcuts if you want to make it back by 15:00!'
 	end
 	'You take some time to get ready for your round, checking all the addresses and planning a route before leaving the post office around noon to get started.'
-	
+
 	act 'Start your round':
 		*clr & cla
 		posteventcounter = 0
@@ -89,12 +89,12 @@ if $ARGS[0] = 'start':
 				else
 					'After another half hour, you take another look in your bag. There''s still a lot to deliver, but you should be able to just about get it done on time if you keep at your current pace.'
 				end
-				
+
 				act 'During your round...': gt 'post_deliveries', 'event'
 			end
 		else
 			act 'Use the more dangerous shortcuts to save time (<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
 end
 
@@ -163,7 +163,7 @@ if $ARGS[0] = 'event':
 		gt 'post_deliveries', 'event'
 	end
 end
-	
+
 !!posteventrand 1-5 lead to longer events, the rest are casual events
 if $ARGS[0] = '1':
 	*clr & cla
@@ -183,11 +183,11 @@ if $ARGS[0] = '1':
 			cla
 			'"No! How would your wife feel if she knew another girl had put those clothes on before her?" you reply.'
 			'The man doesn''t bother to object and closes the door dejectedly before you continue on your round.'
-			act 'Continue your round': gt 'post_deliveries', 'resume'	
+			act 'Continue your round': gt 'post_deliveries', 'resume'
 		end
 	else
 		act 'Refuse and continue your round (<font color="red"><<will_cost>> Willpower</font>)': '<br><font color="red">You don''t have enough willpower to use this action.</font>'
-	end	
+	end
 	act 'Ask him what''s in the parcel':
 		cla
 		posteventQW1 = 1
@@ -204,12 +204,12 @@ if $ARGS[0] = '1':
 				gs 'stat'
 				cla
 				'"Sorry, but no. I really shouldn''t. I have to go!" you reply.'
-				'The man''s shoulders sag a little and he closes the door dejectedly before you continue on your round.'			
+				'The man''s shoulders sag a little and he closes the door dejectedly before you continue on your round.'
 				act 'Continue your round': gt 'post_deliveries', 'resume'
 			end
 		else
 			act 'Refuse (<font color="red"><<will_cost>> Willpower</font>)': '<br><font color="red">You don''t have enough willpower to use this action.</font>'
-		end	
+		end
 		act 'Say you would, but you have a job to do':
 			cla
 			posteventQW1 = 2
@@ -257,7 +257,7 @@ if $ARGS[0] = '2':
 			end
 		else
 			act 'Refuse and ask him to sign (<font color="red"><<will_cost>> Willpower</font>)': '<br><font color="red">You don''t have enough willpower to use this action.</font>'
-		end	
+		end
 		act 'Ask if they can wait until you finish your round':
 			cla
 			posteventQW2 = 2
@@ -299,7 +299,7 @@ if $ARGS[0] = '3':
 		end
 	else
 		act 'Just get his signature and leave (<font color="red"><<will_cost>> Willpower</font>)': '<br><font color="red">You don''t have enough willpower to use this action.</font>'
-	end	
+	end
 	act 'Ask what he wants':
 		cla
 		posteventQW3 = 1
@@ -319,7 +319,7 @@ if $ARGS[0] = '3':
 			end
 		else
 			act 'Tell him you''re not interested (<font color="red"><<will_cost>> Willpower</font>)': '<br><font color="red">You don''t have enough willpower to use this action.</font>'
-		end	
+		end
 		act 'Ask if you can come back after your shift':
 			cla
 			posteventQW3 = 2
@@ -384,12 +384,12 @@ if $ARGS[0] = '4':
 				end
 			else
 				act 'Stick to your guns and leave (<font color="red"><<will_cost>> Willpower</font>)': '<br><font color="red">You don''t have enough willpower to use this action.</font>'
-			end	
+			end
 			act 'Back down and agree to jerk him off': gt 'post_events', '4'
 		end
 	else
 		act 'Say you don''t care if he reports you (<font color="red"><<will_cost>> Willpower</font>)': '<br><font color="red">You don''t have enough willpower to use this action.</font>'
-	end	
+	end
 	gs 'willpower', 'hj', 'resist', 'easy'
 	if will_cost <= pcs_willpwr:
 		act 'Run away from him (<<will_cost>> Willpower)':
@@ -592,7 +592,7 @@ if $ARGS[0] = '10':
 			'You quickly spot that the front and back yards aren''t connected, and try to go around the back after counting out which house you need to be at.'
 			'The home owner is a bit startled to see you suddenly entering her back yard, but understands. "Oh don''t worry about Boomer! I know he looks scary, but he just wants to play!"'
 			'She signs for her mail so you can continue your round. You can still hear the dog barking angrily when you leave the street. No matter what that lady says, there''s no way you would enter that yard!'
-			
+
 			act 'Continue your round': gt 'post_deliveries', 'resume'
 		end
 	end
@@ -670,7 +670,7 @@ if $ARGS[0] = '13':
 	'You nod and give him his mail in exchange for a signature. He then waves you off and slowly closes the door behind him.'
 	if momslut >= 1:
 		'Just before he closes the door completely, you swear you see your mother walking through Sergey''s apartment wearing nothing but a towel! Her hair looked rather disheveled too...'
-	elseif soniaPS >= 1:
+	elseif soniaQW['slut'] >= 1:
 		'When the door is half closed, you catch a glimpse of Sonia walking through his apartment completely naked!'
 		'"Oh hi, <<$pcs_nickname>>!" she says cheerfully and gives you a little wave, right before the door closes.'
 	else
@@ -864,7 +864,7 @@ if $ARGS[0] = '23':
 	'Curious as to what''s going on, you push aside a few branches and get an eyeful of a girl''s ass! Her pants and panties are around her knees and she''s grinning proudly at her boyfriend... until she sees you.'
 	'"Eeeep!" she squeaks and quickly pulls her pants up.'
 	'You giggle and keep walking, realizing the show''s over. You can hear the two of them bickering as you continue on your way.'
-	
+
 	act 'Continue your round': gt 'post_deliveries', 'resume'
 end
 
@@ -1012,7 +1012,7 @@ if $ARGS[0] = 'bandits':
 			cla
 			'"Hey, you can''t do that! Give that back!"'
 			'The two men laugh. "Shut the fuck up. If you want to be left alone on our turf, you should''ve stayed out of our sight!" He signs on your sheet and gives you a cruel grin. "There, you have the signature you need. Now get lost... Unless you came to play?"'
-			
+
 			act 'Ask what they''re talking about':
 				cla
 				postbandQW = 1
@@ -1035,7 +1035,7 @@ if $ARGS[0] = 'bandits':
 				gs 'stat'
 				'You replay in your head what the man said earlier: They only get to play with you if they catch you, so it''s okay to run, right?'
 				'You quickly snatch your bag and try to run away from them.'
-				
+
 				!!running check
 				runnerQW['bmi_penalty'] = 0
 				if pcs_mass['body'] > 30: runnerQW['bmi_penalty'] = ((pcs_mass['body'] - 25)/5)
@@ -1068,7 +1068,7 @@ if $ARGS[0] = 'bandits':
 			end
 		else
 			act 'Wrestle free and run away (<font color="red"><<will_cost>> Willpower</font>)': '<br><font color="red">You don''t have enough willpower to use this action.</font>'
-		end	
+		end
 		act 'Don''t bother':
 			cla
 			'They look like they''re pretty fast, and way too strong to fight off. You quietly resign to the fact that there''s no way you''re getting out of this, and meekly let them guide you behind the building.'
@@ -1156,7 +1156,7 @@ if $ARGS[0] = 'bandsex':
 			'"All in good time," his friend laughs. "She''s done enough for today."'
 			gs 'arousal',10 ,'flash'
 			gs 'stat'
-			
+
 			act 'Laugh it off and get dressed again':
 				cla
 				'You shrug and laugh it off, quickly putting your clothes back on before the talkative one changes his mind.'
@@ -1193,7 +1193,7 @@ if $ARGS[0] = 'bandsex':
 				gs 'arousal', 'hj', 10, 'sub'
 				gs 'arousal', 'end'
 				gs 'stat'
-				
+
 				act 'Find some tissues to clean yourself up with':
 					*clr & cla
 					postbandQW = 6
@@ -1226,7 +1226,7 @@ if $ARGS[0] = 'bandsex':
 			end
 		else
 			act 'Beg (<font color="red"><<will_cost>> Willpower</font>)': '<br><font color="red">You don''t have enough willpower to use this action.</font>'
-		end	
+		end
 		act 'Do what he wants':
 			*clr & cla
 			postbandQW = 6
@@ -1241,7 +1241,7 @@ if $ARGS[0] = 'bandsex':
 			'He waves you off, his attention focused on the TV now. As far as he''s concerned, you''re no longer there.'
 			'You quickly get dressed again and pull your bag out of the other guy''s hand, who was waiting outside. He eyes you up and down suspiciously with a rather unkind look in his eyes.'
 			'You should probably start walking before he decides he wants a piece of you too...'
-			
+
 			act 'Walk away':
 				cla
 				gs 'stat'
@@ -1267,7 +1267,7 @@ if $ARGS[0] = 'bandsex':
 					'<center><img <<$set_imgh>> src="images/locations/shared/postoffice/postgirl.jpg"></center>'
 					'You quickly leave the apartment before they come to find you again and complete your round without any more issues. You run into the guys several times more, but other than a few lewd remarks they leave you alone.'
 
-					act 'Continue your round': gt 'post_deliveries', 'resume'	
+					act 'Continue your round': gt 'post_deliveries', 'resume'
 				end
 			end
 		end
@@ -1354,8 +1354,8 @@ if $ARGS[0] = 'bandsex':
 
 		act 'Continue your round': gt 'post_deliveries', 'resume'
 	end
-end	
-	
+end
+
 if $ARGS[0] = 'finishround':
 	*clr & cla
 	gs 'stat'

+ 2 - 2
locations/pushkin_ballet_init.qsrc

@@ -23,7 +23,7 @@
 !! Ranks
 !! Corps De Ballet, coryphée, demi-soloist, soloist, principle dancer.
 !! balletqw[performances] - How many shows perfomed
-!! mayaqw[grave] - Did you attend Anitchka's grave with Maya, 3 means you talked to Maya, 4 means you was empathic. Has impact later on Maya''s actions towards the player.
+!! mayaqw[grave] - Did you attend Anitchka's grave with Maya, 3 means you talked to Maya, 4 means you were empathic. Has impact later on Maya''s actions towards the player.
 !! mayaqw[trust] - How much Maya trusts you and works in conjunction with npc_rel
 !! Rudolph quest is broken into two variables the main tracker being rudolphqw[stage] and rudolphqw[corruption], the latter reflects his slow insidious undermining of Sveta''s confidence and the former is how
 !! much she has submitted to his authority and demands. Corruption opens dialogue options.
@@ -173,7 +173,7 @@ if $ARGS[0] = 'daily_assessment':
 		elseif balletqw['school'] = 2:
 			$mod_ballet['final_report'] += 'We are pleased to offer you a place at our school, unfortunately your performance at the school was not sufficient to grant you an sponsorship.'
 		elseif balletqw['school'] = 1:
-			$mod_ballet['final_report'] += 'Your performance and discipline as severly lacking and was disappointing. Your attitude was a disgrace and we have never had a student who showed such callous disregad for the privilege you was granted. Therefore you will not be granted a place in the school''s coryphée.'
+			$mod_ballet['final_report'] += 'Your performance and discipline as severly lacking and was disappointing. Your attitude was a disgrace and we have never had a student who showed such callous disregad for the privilege you were granted. Therefore you will not be granted a place in the school''s coryphée.'
 		else
 			$mod_ballet['final_report'] += '<font color="red"><b>Award debug mesage:</b></font>  <<balletqw[''school'']>>'
 		end

+ 1 - 1
locations/pushkin_ballet_res.qsrc

@@ -425,7 +425,7 @@ if $ARGS[0] = 'make_up':
 		if pcs_makupskl <= 30:
 			'You struggle to master the basics of applying your look, wasting a lot of your expensive make-up. You begin to wonder if you need to get help with practicing.'
 		elseif pcs_makupskl <= 69:
-			'You try to replicate the deft strokes that you was taught in school as you apply the basic foundations and contouring. You struggle briefly with the eyelashes before they settle in place. It takes you a few attempts to finalise the blending of your final look but at the end of your practice you are happy with the results even though it won''t win any awards.'
+			'You try to replicate the deft strokes that you were taught in school as you apply the basic foundations and contouring. You struggle briefly with the eyelashes before they settle in place. It takes you a few attempts to finalise the blending of your final look but at the end of your practice you are happy with the results even though it won''t win any awards.'
 		else
 			'You artfully apply the make-up look with a quick, practiced ease that would leave most girls jealous with envy. The final look is almost flawless and you criticaly review the final result trying to find any imperfections.'
 		end

+ 2 - 2
locations/radapt.qsrc

@@ -301,7 +301,7 @@ if $ARGS[0] = 'bathroom':
 				*clr & cla
 				'<center><img <<$set_imgh>> src="images/locations/pavlovsk/resident/apartment/radapt/sex/bathroom/rostislav/post_shower2.jpg"></center>'
 				'You jump with a start and out of instinct pull the towel tighter around your body. You have no clue how long he was in here watching you, but by the smile on his face you would say awhile. "What are you doing in here?" You blurt out.'
-				'He looks you up and down like a piece of meat. "I thought you was my wife. But I am happily wrong, you sure are a pretty little thing arn''t you?"'
+				'He looks you up and down like a piece of meat. "I thought you were my wife. But I am happily wrong, you sure are a pretty little thing arn''t you?"'
 				act 'Tell him to leave':
 					*clr & cla
 					'<center><img <<$set_imgh>> src="images/locations/pavlovsk/resident/apartment/radapt/sex/bathroom/rostislav/post_shower0.jpg"></center>'
@@ -845,7 +845,7 @@ if $ARGS[0] = 'firstvisit':
 			'But before you can answer Radomir lunges at him. "Asshole!" Soon they are wrestling in the hall before they end up going back through the doorway Radislav came out of.'
 		else
 			'He looks back to Radomir. "Fuck bro, I know you don''t got my bod or looks, but have some respect for yourself. No need to settle for a cow like this."'
-			'Then he turns back to you and gives you a look of disgust. "Man genetics was not kind to you was they."'
+			'Then he turns back to you and gives you a look of disgust. "Man genetics was not kind to you were they."'
 			'Radomir''s older brother looks like an older more masculine jock version of him. "<<$pcs_nickname>>."'
 			'But before you can answer Radomir lunges at him. "Asshole!" Soon they are wrestling in the hall before they end up going back through the doorway Radislav came out of.'
 		end

+ 3 - 3
locations/radchat.qsrc

@@ -29,7 +29,7 @@ if $ARGS[0] = 'chat':
 			'He nods. "Yeah, she use to come listen to us play and sometime after we started dating. We was just fourteen when we started dating."'
 			'You listen to him and he seems to actual speak fondly of that time. "So she was your first girlfriend?"'
 			'He shakes his head. "Nah, she was my second girlfriend, but I was her first boyfriend."'
-			'Not a surprise consider how young they was, that he was her first boyfriend. "So you was her first boyfriend then."'
+			'Not a surprise consider how young they was, that he was her first boyfriend. "So you were her first boyfriend then."'
 			'He nods and grinds. "I was her first everything, first guy she gave a hand job too, my dick was the first one she sucked, I popped her cherry, and the first dick in that sweet tight ass of her''s, so I was her first in every single way." Now he sounds more like the Radomir you know, all smug and proud of himself.'
 			act 'So what happened?':
 				*clr & cla
@@ -40,7 +40,7 @@ if $ARGS[0] = 'chat':
 				'He sighs a bit. "It''s complicated."'
 				'You press him and smile a bit. "Try me."'
 				'Gives a half laugh. "Ok fine. Things was great until we started doing gigs, then everything changed."'
-				'You cock your head slightly not exactly the answer you was expecting. "Changed how?"'
+				'You cock your head slightly not exactly the answer you were expecting. "Changed how?"'
 				'He pauses a moment. "I started cheating on her." He actually seems sincere and he sounds like he maybe has a bit of regret to his voice.'
 				*nl
 				'Arching a brow you press on. "So why did you cheat on her?"'
@@ -79,7 +79,7 @@ if $ARGS[0] = 'chat':
 							minut += 3
 							'<center><h4><font color="maroon">Radomir''s Room</font></h4></center>'
 							'<center><img <<$set_imgh>> src="images/locations/pavlovsk/resident/apartment/radapt/rads_room/rad_chat1.jpg"></center>'
-							'You look at him a moment and this was really not what you was expecting from him, he typically always acts so cocky and uncaring. "Do you regret it?"'
+							'You look at him a moment and this was really not what you were expecting from him, he typically always acts so cocky and uncaring. "Do you regret it?"'
 							'He looks up at you at that question. "What cheating on her or breaking up with her?"'
 							'"Either, both." You respond to him.'
 							'He sits there quietly for over a minute long enough you are starting to think he isn''t going to answer you, but then he finally responds. "Yes and no, I don''t regret breaking up, I don''t regret getting all the pussy I could while I can... but I do regret breaking her heart." He genuinely looks sad when he says it and he sounds sincere so much so... you think he might actually be telling the truth. Not sure what more to ask, you decide to change the topic.'

+ 6 - 6
locations/salon.qsrc

@@ -408,13 +408,13 @@ if $ARGS[0] = 'whore_offer2':
 			act 'Sure, let me look':gt 'salon', 'services'
 		end
 		act 'I guess that''s fine':
-			masseuse['jobtype'] = 1
-			masseuse['hourly'] = 100
 			cla & *clr
 			'<center><img <<$set_imgh>> src="images/locations/city/citycenter/mall/salon/xian.jpg"></center>'
 			'"I guess that''s fine."'
 			'"So, are you a certified massage therapist?"'
 			if masseuse['certification'] >= 10:
+				masseuse['jobtype'] = 1
+				masseuse['hourly'] = 100
 				'"Yes I am."'
 				'"Okay, can I see your certificate?" You pull out the paper that certifies you as a massage therapist.'
 				'"Great. I''ll just get your contract set up for you," she says, typing something out on her computer.'
@@ -1008,7 +1008,7 @@ if $ARGS[0] = 'rehire1':
 		cla & *clr
 		'<center><img <<$set_imgh>> src="images/locations/city/citycenter/mall/salon/xian.jpg"></center>'
 		'"I wanted to work as a nude masseuse."'
-		'"Okay," she clacks a few times on a laptop in front of her. "There. Officially rehired as a nude masseuse. Payment at 400 <b>₽</b> per shift."'
+		'"Okay," she clacks a few times on a laptop in front of her. "There. Officially rehired as a nude masseuse. Payment at 500 <b>₽</b> per shift."'
 		masseuse['jobtype'] = 2
 		masseuse['hourly'] = 125
 		act 'Next':gt 'salon', 'rehire2'
@@ -1019,7 +1019,7 @@ if $ARGS[0] = 'rehire1':
 		cla & *clr
 		'<center><img <<$set_imgh>> src="images/locations/city/citycenter/mall/salon/xian.jpg"></center>'
 		'"I wanted to work as a handjob masseuse."'
-		'"Okay," she clacks a few times on a laptop in front of her. "There. Officially rehired as a handjob masseuse. Payment at 400 <b>₽</b> per shift."'
+		'"Okay," she clacks a few times on a laptop in front of her. "There. Officially rehired as a handjob masseuse. Payment at 600 <b>₽</b> per shift."'
 		masseuse['jobtype'] = 3
 		masseuse['hourly'] = 150
 		act 'Next':gt 'salon', 'rehire2'
@@ -1029,7 +1029,7 @@ if $ARGS[0] = 'rehire1':
 		*clr
 		'<center><img <<$set_imgh>> src="images/locations/city/citycenter/mall/salon/xian.jpg"></center>'
 		'"I wanted to work as an oral masseuse."'
-		'"Okay," she clacks a few times on a laptop in front of her. "There. Officially rehired as an oral masseuse. Payment at 400 <b>₽</b> per shift."'
+		'"Okay," she clacks a few times on a laptop in front of her. "There. Officially rehired as an oral masseuse. Payment at 700 <b>₽</b> per shift."'
 		masseuse['jobtype'] = 4
 		masseuse['hourly'] = 175
 		act 'Next':gt 'salon', 'rehire2'
@@ -1040,7 +1040,7 @@ if $ARGS[0] = 'rehire1':
 		*clr
 		'<center><img <<$set_imgh>> src="images/locations/city/citycenter/mall/salon/xian.jpg"></center>'
 		'"I wanted to start working as a whore."'
-		'"Okay," she clacks a few times on a laptop in front of her. "There. Officially rehired as a whore. Payment at 400 <b>₽</b> per shift."'
+		'"Okay," she clacks a few times on a laptop in front of her. "There. Officially rehired as a whore. Payment at 1000 <b>₽</b> per shift."'
 		masseuse['jobtype'] = 5
 		masseuse['hourly'] = 250
 		act 'Next':gt 'salon', 'rehire2'

+ 24 - 2
locations/saveupdater.qsrc

@@ -3327,7 +3327,7 @@ if temp_current_save_version < 00090302:
 
 
 	!! Blackmailer
-	if $blackmailQW['stage'] = 10: blackmailQW['package'] = 1
+	if blackmailQW['stage'] = 10: blackmailQW['package'] = 1
 
 	!! npc_apprnc and hotcat_rating -> npc_hotcat
 	if appearance_update_932 = 0:
@@ -3543,9 +3543,31 @@ if temp_current_save_version < 00090303:
 		if pcs_traits['easy_orgasms'] < pcs_traits['easy_orgams']: pcs_traits['easy_orgasms'] = pcs_traits['easy_orgams']
 		gs 'shortgs', 'remove_array_element', 'pcs_traits', 'easy_orgams'
 	end
-end
 
 
+
+	!!Sonia Variable migration:
+	if soniafall 			! 0: 		soniaQW['soniafall'] 		= soniafall			 & killvar 'soniafall'
+	if soniaPS 				! 0: 		soniaQW['slut'] 			= soniaPS			 & killvar 'soniaPS'
+	if soniafallDay 		! 0: 		soniaQW['fallDay'] 			= soniafallDay		 & killvar 'soniafallDay'
+	if soniaPSdays 			! 0: 		soniaQW['slutdays'] 		= soniaPSdays		 & killvar 'soniaPSdays'
+	if soniahelp 			! 0: 		soniaQW['help'] 			= soniahelp			 & killvar 'soniahelp'
+	if soniaencourage 		! 0: 		soniaQW['encourage'] 		= soniaencourage	 & killvar 'soniaencourage'
+	if soniasex 			! 0: 		soniaQW['sex'] 				= soniasex			 & killvar 'soniasex'
+	if soniasextime 		! 0: 		soniaQW['sextime'] 			= soniasextime		 & killvar 'soniasextime'
+
+	if ivankosup_count 		! 0:	 	ivanko['soup'] 				= ivankosup_count	 & killvar 'ivankosup_count'
+	if ivankowater_count 	! 0:	 	ivanko['water'] 			= ivankowater_count	 & killvar 'ivankowater_count'
+	if ivankolefto_count 	! 0:	 	ivanko['leftovers'] 		= ivankolefto_count	 & killvar 'ivankolefto_count'
+	if ivankosanw_count 	! 0:	 	ivanko['sandwich'] 			= ivankosanw_count	 & killvar 'ivankosanw_count'
+	if ivankofood_day		! 0:	 	ivanko['food_day'] 			= ivankofood_day	 & killvar 'ivankofood_day'
+	if $ivanko_lefto 		! '':	 	$ivanko['leftover_txt'] 	= $ivanko_lefto		 & killvar '$ivanko_lefto'
+	if $ivanko_sup 			! '':	 	$ivanko['soup_txt'] 		= $ivanko_sup		 & killvar '$ivanko_sup'
+	if $ivanko_water 		! '':	 	$ivanko['water_txt'] 		= $ivanko_water		 & killvar '$ivanko_water'
+	if $ivanko_sanw 		! '':	 	$ivanko['sandwich_txt'] 	= $ivanko_sanw		 & killvar '$ivanko_sanw'
+
+
+end
 killvar 'temp_current_save_version'
 gs 'saveg'
 

+ 3 - 3
locations/shop.qsrc

@@ -685,10 +685,10 @@ if $shoplocation = 'megafon':
 			$line += '<td style="padding-left: 10px; padding-right: 10px;">Insufficient balance</td></tr>'
 		end
 
-		$line += '<tr><td style="padding-left: 10px; padding-right: 10px; align: left; "><b>600 minutes</b> (10 hours) of mobile internet for 115<b>₽</b></td>'
+		$line += '<tr><td style="padding-left: 10px; padding-right: 10px; align: left; "><b>600 minutes</b> (10 hours) of mobile internet for 155<b>₽</b></td>'
 
 		if money > 155:
-			$line += '<td style="padding-left: 10px; padding-right: 10px;"><a href="exec: gs ''internet_mobile'', ''top_up_metered'', ''metered_mobile'', 600 & money -= 115 & minut += 10 & gt ''shop'' ">Pay with cash</a></td>'
+			$line += '<td style="padding-left: 10px; padding-right: 10px;"><a href="exec: gs ''internet_mobile'', ''top_up_metered'', ''metered_mobile'', 600 & money -= 155 & minut += 10 & gt ''shop'' ">Pay with cash</a></td>'
 		else
 			$line += '<td style="padding-left: 10px; padding-right: 10px;">Not enough cash</td>'
 		end
@@ -696,7 +696,7 @@ if $shoplocation = 'megafon':
 		if bankAccount = 0:
 			$line += '<td style="padding-left: 10px; padding-right: 10px;">No bank account</td></tr>'
 		elseif karta+bankDebtLimit >= 155:
-			$line += '<td style="padding-left: 10px; padding-right: 10px;"><a href="exec: gs ''internet_mobile'', ''top_up_metered'', ''metered_mobile'', 600 & karta -= 115 & minut += 10 & gt ''shop'' ">Pay with card</a></td></tr>'
+			$line += '<td style="padding-left: 10px; padding-right: 10px;"><a href="exec: gs ''internet_mobile'', ''top_up_metered'', ''metered_mobile'', 600 & karta -= 155 & minut += 10 & gt ''shop'' ">Pay with card</a></td></tr>'
 		else
 			$line += '<td style="padding-left: 10px; padding-right: 10px;">Insufficient balance</td></tr>'
 		end

+ 4 - 5
locations/shoplifting.qsrc

@@ -644,7 +644,7 @@ if $ARGS[0] = 'pav':
 			'Almost there...'
 			'The exit of the supermarket comes closer and closer with every step, and you try to do whatever you can to control your nerves.'
 
-			if rand(0,4) > 0 or pcs_observ+pcs_persuas > 150 or ((pcs_observ + pcs_persuas > 50) and (hour = 12 or hour = 17)):
+			if rand(0,4) > 0 or pcs_observ + pcs_persuas > 150 or ((pcs_observ + pcs_persuas > 50) and (hour = 12 or hour = 17)):
 				!if observation and persuasion = sufficient: and certain time of the day (when the store is full with people)
 				mc_inventory['cosmetics'] += 50
 
@@ -653,7 +653,7 @@ if $ARGS[0] = 'pav':
 				'You desperately try to calm yourself down as with every step you get closer to the exit. No one seems to be stopping you so far... maybe you got lucky?'
 				'Before you know it, you''re standing outside, having managed to get away with your loot. You turn back one last time to make sure that no one is following you.'
 
-				act 'Keep on walking':gt 'pav_commercial'
+				act 'Keep on walking': gt 'pav_commercial'
 
 			elseif pcs_observ + pcs_persuas + pcs_run > 200:
 				!elseif observation, persuasion and running level = sufficient and certain time of day (less people around):
@@ -763,7 +763,6 @@ if $ARGS[0] = 'securityroom_pav':
 
 				act 'Offer him blowjob': gt 'shoplifting', 'bj_pav'
 				if money >= 5000: act 'Offer a bribe (5000 <b>₽</b>)': gt 'shoplifting', 'bribe_pav'
-
 				act 'Keep quiet': gt 'shoplifting', 'quiet_pav'
 			end
 		end
@@ -889,7 +888,7 @@ if $ARGS[0] = 'bj_pav':
 									'"Here take the tape and destroy it," he states, "Be gone now before anyone spots you and we both get in trouble."'
 									'You nod and hurriedly jump away from the chair, grabbing the tape as you walk by the security guard...'
 
-									act 'Head outside':gt 'pav_commercial'
+									act 'Head outside': gt 'pav_commercial'
 								end
 							end
 						end
@@ -939,7 +938,7 @@ if $ARGS[0] = 'bribe_pav':
 			'He quickly counts the money and then has you stand up and hurries you outside the office, pushing you on. He tells you which way to take and not to talk to anyone.'
 			'You give him a smile and thank him for being so nice to you... You turn around one last time to tease him before turning the corner.'
 
-			act 'Walk out':gt 'pav_commercial'
+			act 'Walk out': gt 'pav_commercial'
 		end
 
 		act 'Refuse':

+ 74 - 451
locations/soniadisco.qsrc

@@ -1,17 +1,16 @@
 # soniadisco
 !2021/22/12
-!!I changed Sonia fall to this so their is a total of 7 events so Sonia slowly falls. moved the automatically fall code here from cikl.
-!!We should update Sonia code to work like the rest. I already did it with the new code soniaQW['soniafall_block'], but the rest like soniaPS or soniafall should be updated to soniaQW['soniaPS'] and soniaQW['soniafall'] I didn''t do it because last time I tried I messed some stuff up so I will leave it to one of you coders to update it.
+!!I changed Sonia fall to this so their is a total of 7 events so Sonia slowly falls. moved the automatic fall code here from cikl.
 
 if $ARGS[0] = 'cikl':
 !!Making Sonia''s fall progress if the player do not see the scenes at the disco, by making it such that if at a Sunday her fall have not advanced this weekend it will automatically advance.
-	if mid($start_type,1,2) = 'sg' and week = 7 and soniaPS = 0 and month > 9 and daystart >= soniafallDay + 6:
-		if soniafall < 7:
-			soniafallDay = daystart -1
-			soniafall += 1
+	if mid($start_type,1,2) = 'sg' and week = 7 and soniaQW['slut'] = 0 and month > 9 and daystart >= soniaQW['fallday'] + 6:
+		if soniaQW['soniafall'] < 7:
+			soniaQW['fallday'] = daystart -1
+			soniaQW['soniafall'] += 1
 		else
-			soniaPS = 1
-			soniaPSdays = daystart
+			soniaQW['slut'] = 1
+			soniaQW['slutdays'] = daystart
 			npc_grupTipe['A25'] = 5
 			$npc_notes['A25'] = 'Ever since Sonia got way too drunk and gave Vitek and his friends blowjobs outside the disco, her reputation in Pavlovsk has been in shambles. The girls in her class all give her the silent treatment, while the guys treat her like a cheap whore and regularly ask (or sometimes demand) sex from her, knowing she doesn''t have the strength to say no.'
 			$npcGoSchool['A25'] = '<a href="exec:gt ''gschool_outcast_chats'', ''' + $lcase($npc_usedname['A25']) + '''"><<$npc_usedname["A25"]>></a>'
@@ -19,11 +18,11 @@ if $ARGS[0] = 'cikl':
 	end
 end
 
-!!Which arg it goes to depends on level of soniafall
+!!Which arg it goes to depends on level of soniaQW['soniafall']
 if $ARGS[0] = 'start':
-	if daystart >= soniafallDay + 6:
-		soniafallDay = daystart
-		if soniafall <= 0:
+	if daystart >= soniaQW['fallday'] + 6:
+		soniaQW['fallday'] = daystart
+		if soniaQW['soniafall'] <= 0:
 			gt 'soniadisco', 'disco0'
 		else
 			gt 'soniadisco', 'disco'
@@ -36,7 +35,7 @@ end
 if $ARGS[0] = 'disco0':
 	menu_off = 0
 	*clr & cla
-	if soniafall = 0: soniafall = 1
+	if soniaQW['soniafall'] = 0: soniaQW['soniafall'] = 1
 	minut += 15
 	gs 'stat'
 	'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/girl/sonia/0.jpg"></center>'
@@ -47,7 +46,7 @@ if $ARGS[0] = 'disco0':
 		gs 'stat'
 		'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/girl/sonia/disco/soniadance.jpg"></center>'
 		'You''ve heard the rumors that Sonia had begun hanging around the gopniks lately; drinking, partying and generally cutting loose. But watching her now, you can see that she is getting totally wasted and is starting to really grind on any and everyone that comes up to dance with her. After a while, she seems to barely be able to stand up on her own and is hanging onto the guys she''s grinding into to keep her balance.'
-		if soniafall < 3:
+		if soniaQW['soniafall'] < 3:
 			gs 'soniadisco', 'watchorhelp'
 		else
 			gs 'soniadisco', 'soniashowsboobs'
@@ -178,12 +177,12 @@ end
 if $ARGS[0] = 'disco':
 	menu_off = 0
 	*clr & cla
-	soniafall += 1
+	soniaQW['soniafall'] += 1
 	gs 'stat'
 	'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/girl/sonia/0.jpg"></center>'
-	if soniafall = 0:
+	if soniaQW['soniafall'] = 0:
 		'Sonia is hanging out with the gopniks. Before you have a chance to walk over and see what''s going on, Vitek takes Sonia by the hand and leads her out of the disco, with Dan, Pauline and Vasily following right behind them. Vasily''s carrying a paper bag with the neck of a bottle sticking out top of it.'
-	elseif soniafall <= 3:
+	elseif soniaQW['soniafall'] <= 3:
 		'You see Vitek and some of the other gopniks hanging out, watching Sonia get drunk and dancing wildly. You notice them talking among themselves, before Vitek says something that shuts them all up and he walks over to Sonia. Instead of dancing with her though, he whispers something to her. She looks at him, smiles and nods her head. Vitek leads Sonia off the dance floor and out of the disco. Several of the other gopniks scramble to catch up to the two of them after he waves them over. Vasily''s carrying a paper bag with the neck of a bottle sticking out top of it.'
 	else
 		'Sonia is hanging out by Vitek and some of his friends. Vasily''s carrying a paper bag with the neck of a bottle sticking out top of it. Before too long, they all leave together, heading out of the disco.'
@@ -195,7 +194,7 @@ if $ARGS[0] = 'disco':
 		'You nod quickly yes that you understand and then he relaxes his grip. "I understand."'
 		'Then he lets go of your arms. "Good girl, now go have fun." He gives your ass a slap, before he turns to follow the where the rest went.'
 		act 'Watch them leave':
-			if soniafall <= 6:
+			if soniaQW['soniafall'] <= 6:
 				gt 'soniadisco', 'dance'
 			else
 				gt 'soniadisco', 'dance1'
@@ -213,7 +212,7 @@ if $ARGS[0] = 'disco':
 				gs 'npc_relationship', 'modify', 'A10', 'dislike'
 				gs 'npc_relationship', 'modify', 'A11', 'dislike'
 				gs 'npc_relationship', 'modify', 'A24', 'dislike'
-				if soniafall <= 6:
+				if soniaQW['soniafall'] <= 6:
 					gt 'soniadisco', 'dance', 'declineinvite'
 				else
 					gt 'soniadisco', 'dance1', 'declineinvite'
@@ -226,7 +225,7 @@ if $ARGS[0] = 'disco':
 	elseif grupTipe = 3:
 		'Vitek notices you watching them and frowns. "What the fuck are you looking at, nerd? Get lost!" Then they all head out. Vasily glances back at you and shakes his head, letting you know not to follow them.'
 		act 'Watch them leave':
-			if soniafall <= 6:
+			if soniaQW['soniafall'] <= 6:
 				gt 'soniadisco', 'dance'
 			else
 				gt 'soniadisco', 'dance1'
@@ -235,7 +234,7 @@ if $ARGS[0] = 'disco':
 	elseif grupTipe = 5:
 		'Vitek notices you watching them and frowns. "What the fuck are you looking at, loser? Get lost!" Then they all head out. Vasily glances back at you and shakes his head, letting you know not to follow them.'
 		act 'Watch them leave':
-			if soniafall <= 6:
+			if soniaQW['soniafall'] <= 6:
 				gt 'soniadisco', 'dance'
 			else
 				gt 'soniadisco', 'dance1'
@@ -244,7 +243,7 @@ if $ARGS[0] = 'disco':
 	elseif soniaQW['soniafall_block'] >= 4:
 		'Vitek notices you watching them and frowns. "What the fuck are you looking at, bitch? You had your chance to hang out with us and you blew it, so scram!" Then they all head out. Vasily glances back at you and shakes his head, letting you know not to follow them.'
 		act 'Watch them leave':
-			if soniafall <= 6:
+			if soniaQW['soniafall'] <= 6:
 				gt 'soniadisco', 'dance'
 			else
 				gt 'soniadisco', 'dance1'
@@ -264,7 +263,7 @@ if $ARGS[0] = 'disco':
 				gs 'npc_relationship', 'modify', 'A10', 'dislike'
 				gs 'npc_relationship', 'modify', 'A11', 'dislike'
 				gs 'npc_relationship', 'modify', 'A24', 'dislike'
-				if soniafall <= 6:
+				if soniaQW['soniafall'] <= 6:
 					gt 'soniadisco', 'dance', 'declineinvite'
 				else
 					gt 'soniadisco', 'dance1', 'declineinvite'
@@ -348,7 +347,7 @@ if $ARGS[0] = 'join_them':
 			gs 'soniadisco', 'peerpressure'
 		end
 		act 'Caution Sonia':
-			soniahelp += 1
+			soniaQW['help'] += 1
 			minut += 10
 			grupvalue[4] -= 5
 			gs 'npc_relationship', 'modify', 'A9', 'loathe'
@@ -360,14 +359,14 @@ if $ARGS[0] = 'join_them':
 			$soniadisco_peerpressuretrigger = 'cautionsonia'
 			gs 'soniadisco', 'peerpressure'
 		end
-		if soniafall <= 6:act 'Encourage her': gt 'soniadisco', 'soniadrinkmore'
+		if soniaQW['soniafall'] <= 6:act 'Encourage her': gt 'soniadisco', 'soniadrinkmore'
 	end
 end
 
 if $ARGS[0] = 'soniadrinkmore':
 	*clr & cla
-	soniafall += 1
-	soniaencourage += 1
+	soniaQW['soniafall'] += 1
+	soniaQW['encourage'] += 1
 	gs 'npc_relationship', 'modify', 'A9', 'like'
 	gs 'npc_relationship', 'modify', 'A10', 'like'
 	gs 'npc_relationship', 'modify', 'A11', 'like'
@@ -452,19 +451,19 @@ end
 
 if $ARGS[0] = 'peerpressure':
 	*clr & cla
-	if soniafall <= 2:
+	if soniaQW['soniafall'] <= 2:
 		if $soniadisco_peerpressuretrigger = 'cautionsonia':
 			'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/girl/sonia/disco/soniadrink.jpg"></center>'
 		else
 			'<center><img <<$set_imgh>> src="images/locations/pavlovsk/community/disco/gopdrinking.jpg"></center>'
 		end
-	elseif soniafall = 3:
+	elseif soniaQW['soniafall'] = 3:
 		'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/girl/sonia/disco/panties1.jpg"></center>'
-	elseif soniafall = 4:
+	elseif soniaQW['soniafall'] = 4:
 		'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/girl/sonia/disco/boobs.jpg"></center>'
-	elseif soniafall = 5:
+	elseif soniaQW['soniafall'] = 5:
 		'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/girl/sonia/disco/pussy.jpg"></center>'
-	elseif soniafall = 6:
+	elseif soniaQW['soniafall'] = 6:
 		'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/girl/sonia/disco/popsicle1.jpg"></center>'
 	else
 		'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/girl/sonia/disco/popsicle2.jpg"></center>'
@@ -478,7 +477,7 @@ if $ARGS[0] = 'peerpressure':
 	elseif $soniadisco_peerpressuretrigger = 'cautionsonia':
 		gs 'npc_relationship', 'modify', 'A25', 'dislike'
 		'You move over to sit next to Sonia, turning down the drink. "Slow down, Sonia! You don''t want to get wasted." She turns and gives you a sour look.'
-		if soniahelp > 0:
+		if soniaQW['help'] > 0:
 			'"We''ve already been over this, <<$pcs_nickname>>! You aren''t my mother, so how about you chill out and enjoy it like the rest of us?" She grabs the bottle and chugs down a quarter of it. The gopniks all encourage her to keep going.'
 		else
 			'"What are you, my mother? God, I am tired of always being the good girl, I just want to cut loose and party, for once." The gopniks all cheer and encourage her.'
@@ -492,15 +491,15 @@ if $ARGS[0] = 'peerpressure':
 		end
 	end
 
-	if soniafall <= 2:
+	if soniaQW['soniafall'] <= 2:
 		gs 'soniadisco', 'notpressured'
-	elseif soniafall = 3:
+	elseif soniaQW['soniafall'] = 3:
 		gs 'soniadisco', 'pressuredforpanties'
-	elseif soniafall = 4:
+	elseif soniaQW['soniafall'] = 4:
 		gs 'soniadisco', 'pressuredfortits'
-	elseif soniafall = 5:
+	elseif soniaQW['soniafall'] = 5:
 		gs 'soniadisco', 'pressuredforpussy'
-	elseif soniafall = 6:
+	elseif soniaQW['soniafall'] = 6:
 		gs 'soniadisco', 'pressuredforblowjob'
 	else
 		gs 'soniadisco', 'pressuredforgangbang'
@@ -517,7 +516,6 @@ if $ARGS[0] = 'notpressured':
 end
 
 if $ARGS[0] = 'pressuredforpanties':
-!!check I did this correct this only triggers if Sveta is a pcs_hotcat 6 or more and not a gopnik, otherwise get the else
 	'Sonia''s really getting wasted now. Taking advantage of the situation, Dan asks her, "Hey, Sonia. What color are your panties?"'
 	'She looks a little confused. "What?"'
 	'"You were going to show us what color your panties are," he says.'
@@ -554,7 +552,7 @@ if $ARGS[0] = 'pressuredforpanties':
 					'Vitek gets visibly angry. "Then why are you here? We give you free drinks and this is how you repay us? Fuck you then, get out!"'
 					'Dan gets up and forces you to leave.'
 					act 'Leave':
-						if soniafall <= 6:
+						if soniaQW['soniafall'] <= 6:
 							gt 'soniadisco', 'dance'
 						else
 							gt 'soniadisco', 'dance1'
@@ -589,7 +587,7 @@ if $ARGS[0] = 'pressuredforpanties':
 							'Vitek gets visibly angry. "Then why are you here? We give you free drinks and this is how you repay us? Fuck you then, get out and don''t come back!"'
 							'Dan gets up and forces you to leave.'
 							act 'Leave':
-								if soniafall <= 6:
+								if soniaQW['soniafall'] <= 6:
 									gt 'soniadisco', 'dance'
 								else
 									gt 'soniadisco', 'dance1'
@@ -614,21 +612,20 @@ if $ARGS[0] = 'pressuredforpanties':
 						act 'Go back to the disco': gt 'soniadisco', 'dance', 'staytoend'
 					end
 				end
-			else
-				act 'Show your panties':
-					*clr & cla
-					grupvalue[4] += 1
-					gs 'fame', 'pav', 'sex', 5
-					gs 'stat'
-					'<center><img <<$set_imgh>> src="images/locations/pavlovsk/community/disco/gopnik/panties.jpg"></center>'
-					'Pauline starts to record you while you pull your clothes aside and quickly flash your panties.'
-					'When you cover back up, Sonia yells out with a slight slur in her voice, "I want to go dancing! Let''s go back to the disco!"'
-					gs 'arousal', 'flashlite', 5, 'inhibition'
-					gs 'arousal', 'end'
-					gs 'stat'
-					killvar '$soniadisco_peerpressuretrigger'
-					act 'Go back to the disco': gt 'soniadisco', 'dance', 'staytoend'
-				end
+			end
+			act 'Show your panties':
+				*clr & cla
+				grupvalue[4] += 1
+				gs 'fame', 'pav', 'sex', 5
+				gs 'stat'
+				'<center><img <<$set_imgh>> src="images/locations/pavlovsk/community/disco/gopnik/panties.jpg"></center>'
+				'Pauline starts to record you while you pull your clothes aside and quickly flash your panties.'
+				'When you cover back up, Sonia yells out with a slight slur in her voice, "I want to go dancing! Let''s go back to the disco!"'
+				gs 'arousal', 'flashlite', 5, 'inhibition'
+				gs 'arousal', 'end'
+				gs 'stat'
+				killvar '$soniadisco_peerpressuretrigger'
+				act 'Go back to the disco': gt 'soniadisco', 'dance', 'staytoend'
 			end
 		end
 	else
@@ -686,7 +683,7 @@ if $ARGS[0] = 'pressuredfortits':
 					'Vitek gets visibly angry. "Then why are you here? We give you free drinks and this is how you repay us? Fuck you then, get out!"'
 					'Dan gets up and forces you to leave.'
 					act 'Leave':
-						if soniafall <= 6:
+						if soniaQW['soniafall'] <= 6:
 							gt 'soniadisco', 'dance'
 						else
 							gt 'soniadisco', 'dance1'
@@ -765,7 +762,7 @@ if $ARGS[0] = 'pressuredforpussy':
 					'Vitek gets visibly angry. "Then why are you here? We give you free drinks and this is how you repay us? Fuck you then, get out!"'
 					'Dan gets up and forces you to leave.'
 					act 'Leave':
-						if soniafall <= 6:
+						if soniaQW['soniafall'] <= 6:
 							gt 'soniadisco', 'dance'
 						else
 							gt 'soniadisco', 'dance1'
@@ -814,13 +811,12 @@ if $ARGS[0] = 'pressuredforblowjob':
 	'Sonia turns beet red and mutters, "Whatever. There''s no way you have a popsicle on you anyway."'
 	'"Oh, really?" Vitek replies. "If I did, would you suck it?"'
 	'Sonia smiles at him and confesses, "Of course! I love popsicles! Bu-"'
-	'Vitek reaches into his pocket and actually pulls one out. She looks at him in awe for a moment, almost as if he were a magician that just made a bunny appear out of thin air. When she tries to reach for it, the boy pulls it away. "No, no hands. I''ll hold it, you only use your mouth."'
+	'Vitek reaches into his pocket and actually pulls one out. She looks at him in awe for a moment, almost as if he were a magician who just made a bunny appear out of thin air. When she tries to reach for it, the boy pulls it away. "No, no hands. I''ll hold it, you only use your mouth."'
 	gs 'arousal', 'erotic', 5
 	gs 'stat'
 	act 'Go back to the disco': gt 'soniadisco', 'dance'
 	act 'Watch':
 		*clr & cla
-		soniaQW['vitek_bj_watched'] = 1
 		'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/girl/sonia/disco/popsicle2.jpg"></center>'
 		'Sonia obediently pulls her hands away and opens her mouth, Vitek slowly puts the popsicle against her lips and tongue. She closes her lips around it and sucks on it, while looking at Vitek seductively.'
 		'Vitek grins and lowers the popsicle, further and further, until it is at the same level as his groin. All this time, Sonia has never taken her mouth off it, and eventually, she gets down on her knees after bending over awkwardly and nearly falling over once or twice. The way she''s sucking and licking the popsicle has definitely made Vitek aroused, and you see his cock straining against the fabric of his pants. Meanwhile, Dan and Vasily are looking at the two of them with their mouths open, somewhat awkwardly hiding their erections.'
@@ -865,6 +861,7 @@ if $ARGS[0] = 'pressuredforblowjob':
 				act 'Physically intervene (<font color="red"><<will_cost>> Willpower</font>)': '<br><font color="red">You don''t have enough willpower to use this action.</font>'
 			end
 			act 'Keep watching':
+				soniaQW['vitek_bj_watched'] = 1
 				*clr & cla
 				'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/girl/sonia/sex/disco/bj2.jpg"></center>'
 				'Sonia bobs her head up and down on Vitek''s cock, working her mouth down until she starts to gag. She has her lips tightly wrapped around the shaft, and just like the popsicle, she sucks on his dick with no hands.'
@@ -997,7 +994,7 @@ if $ARGS[0] = 'pressuredforgangbang':
 	'She slaps his chest indignantly, "Vitek! Have you lost your mind!?"'
 	'Vitek raises his hands in defense and smirks, "Whoa, calm down! You liked doing it last time! Come on now, no one will know! We didn''t tell anyone last time."'
 	'Sonia bites her lip, and you can tell she wants to. "OK. You guys won''t tell anyone, right?"'
-	'"Of course not!" he says with a smile. Then he unbuttons his pants and pulls out his semi hard dick. "Now, open wide." She does so, sticking out her tongue in turn.'
+	'"Of course not!" he says with a smile. Then he unbuttons his pants and pulls out his semi-hard dick. "Now, open wide." She does so, sticking out her tongue in turn.'
 	act 'Keep watching':
 		*clr & cla
 		'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/girl/sonia/sex/disco/gangbang1.jpg"></center>'
@@ -1042,7 +1039,7 @@ if $ARGS[0] = 'walkhome':
 	gs 'stat'
 	'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/girl/sonia/disco/walkhome1.jpg"></center>'
 	'As you help her stumble home, she turns to you and smiles, mumbling, "Thanks, <<$pcs_nickname>>."'
-	'The two of you continue the walk to her house mostly in silence. Finally, you come upon a fairly average looking house in the middle of the residential area. She stops and points. "This is me."'
+	'The two of you continue the walk to her house mostly in silence. Finally, you come upon a fairly average-looking house in the middle of the residential area. She stops and points. "This is me."'
 	act 'Warn her':
 		*clr & cla
 		gs 'npc_relationship', 'modify', 'A25', 'hate'
@@ -1089,7 +1086,7 @@ if $ARGS[0] = 'walkhome':
 					'She nods in understanding, but you also notice she frowns a bit. "Sure, no problem. Talk to you later." Then she opens her door and slips inside without another word and closing the door, leaving you alone outside her house.'
 					act 'Leave': gt 'pav_residential'
 				end
-				act 'Yes': gt 'soniadisco', 'homesex'
+				act 'Yes': gt 'soniaev1', 'homesex'
 			end
 		else
 			gs 'stat'
@@ -1151,14 +1148,15 @@ if $ARGS[0] = 'dance1':
 	*clr & cla
 	if hour > 19: discobloc['A25'] = daystart
 	minut += 10
-	soniaPS = 1
-	soniaPSdays = daystart
+	soniaQW['slut'] = 1
+	soniaQW['fallenangel'] = 1
+	soniaQW['slutdays'] = daystart
 	npc_grupTipe['A25'] = 5
 	$npc_notes['A25'] = 'Ever since Sonia inadvertently got too drunk and gave Vitek and his fellow gopniks blowjobs near the disco, her reputation in Pavlovsk has been in shambles. The girls in her class give her the silent treatment, while the guys treat her like a cheap whore and regularly ask (and sometimes demand) sex from her, knowing she doesn''t have the strength to say no.'
 	$npcGoSchool['A25'] = '<a href="exec:gt ''gschool_outcast_chats'', ''' + $lcase($npc_usedname['A25']) + '''"><<$npc_usedname["A25"]>></a>'
 	'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/girl/sonia/sex/disco/cumwalk.jpg"></center>'
 	if $ARGS[1] = 'staytoend':
-		'Vitek is dragging a drunken Sonia around like she''s a trophy on display. She is all smiles and looks pretty happy and completely wasted. You follow them just inside the dance and stop near the door.'
+		'Vitek is dragging a drunken Sonia around like she''s a trophy on display. She is all smiles and looks pretty happy and completely wasted. You follow them just inside the disco and stop near the door.'
 	else
 		if $ARGS[1] = 'declineinvite':
 			'You don''t really want to drink alcohol right now, so you just shake your head. "Thanks for the invite, but I think I''d rather stay here right now. You guys have fun!"'
@@ -1189,7 +1187,7 @@ if $ARGS[0] = 'soniabang':
 	gs 'stat'
 	act 'Try to stop her':
 		*clr & cla
-		soniahelp += 1
+		soniaQW['help'] += 1
 		grupvalue[4] -= 10
 		gs 'npc_relationship', 'modify', 'A9', 'loathe'
 		gs 'npc_relationship', 'modify', 'A10', 'loathe'
@@ -1264,29 +1262,29 @@ if $ARGS[0] = 'followsonia':
 		*clr & cla
 		gs 'stat'
 		'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/girl/sonia/soniasad.jpg"></center>'
-		if soniahelp > soniaencourage:
+		if soniaQW['help'] > soniaQW['encourage']:
 			'You walk up to her. "Are you OK?"'
 			'She gives you a look of disbelief. "No, I''m not OK! You saw what happened, everyone is going to think I''m a slut now. Hell, I am a slut," she says between sobs.'
 			'You nod a bit. "I know, but I tried to help you and I wish I could have done more," you tell her.'
 			'She nods in return. "I know. God, I was so stupid," she says before she starts sobbing harder.'
-		elseif soniaencourage > 0 and npc_rel['A25'] >= 50:
+		elseif soniaQW['encourage'] > 0 and npc_rel['A25'] >= 50:
 			gs 'npc_relationship', 'modify', 'A25', '-10'
 			'When you walk up, she turns to you. "I thought you were my friend, why would you do that to me?"'
-		elseif soniaencourage > 0:
+		elseif soniaQW['encourage'] > 0:
 			gs 'npc_relationship', 'modify', 'A25', 'loathe'
 			'When you walk up, she turns to you. "What do you want? Come to gloat and make fun of me too?"'
 		else
 			'You walk up to her. "Are you OK?"'
 			'She gives you a look of disbelief. "No, I''m not OK! You saw what happened, everyone is going to think I''m a slut now. Hell, I am a slut," she says between sobs.'
 		end
-		if soniahelp > soniaencourage or soniaencourage = 0:
+		if soniaQW['help'] > soniaQW['encourage'] or soniaQW['encourage'] = 0:
 			act 'Comfort her':
 				*clr & cla
 				gs 'npc_relationship', 'modify', 'A25', 'adore'
 				minut += 10
 				gs 'stat'
 				'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/girl/sonia/soniasad.jpg"></center>'
-				if soniahelp > 0:
+				if soniaQW['help'] > 0:
 					'You put your arm around her shoulder and hug her. "I am so sorry this happened to you, I tried to help. I should have done more."'
 					'She shakes her head. "No, you tried to warn me, this is my fault. God, I am so stupid. My life is over!" she cries and starts sobbing even harder. You try wiping the cum off her face and out of her hair as best you can while you hold her as she sobs against your shoulder.'
 					'Once you have her face and hair mostly cleaned up and she seems to be slowing down on her sobs, she says, "I should go home."'
@@ -1324,16 +1322,16 @@ if $ARGS[0] = 'followsonia':
 			*clr & cla
 			gs 'stat'
 			'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/girl/sonia/soniasad.jpg"></center>'
-			if soniahelp > soniaencourage:
+			if soniaQW['help'] > soniaQW['encourage']:
 				'"I tried to help you, but you wouldn''t listen. This is your own fault," you tell her.'
 				'She cries even harder. "I know." Then she takes off running as best she can. Maybe you should have been nicer, even if it is her own fault.'
-			elseif soniaencourage > 0 and npc_rel['A25'] => 50:
+			elseif soniaQW['encourage'] > 0 and npc_rel['A25'] => 50:
 				gs 'npc_relationship', 'modify', 'A25', '-20'
 				'You shake your head. She was all happy before and now crying about it. "What did you expect, you were acting like a slut. You wanted to have fun and walk on the wild side and you did. You have no one to blame but yourself."'
 				'She cries even harder. "I thought you were my friend, you encouraged me! Why would you do that?" she asks you.'
 				'"Come on, we both know nothing I was going to say would have gotten you to stop. You wanted to know what it was like to be a bad girl, so I helped you do what you wanted. That''s not my fault, it''s yours," you tell her.'
 				'"Stay away from me." Then she takes off running as best she can. Maybe you should have been nicer, even if it is her own fault.'
-			elseif soniaencourage > 0:
+			elseif soniaQW['encourage'] > 0:
 				gs 'npc_relationship', 'modify', 'A25', '-10'
 				'You shake your head. She was all happy before and now she''s crying about it. "What did you expect, you were acting like a slut. You wanted to have fun and walk on the wild side and you did. You have no one to blame but yourself."'
 				'She cries even harder. "I know." Then she takes off running as best as she can. Maybe you should have been nicer, even if it is her own fault.'
@@ -1347,381 +1345,6 @@ if $ARGS[0] = 'followsonia':
 	act 'Go back to the disco': gt 'pav_disco'
 end
 
-if $ARGS[0] = 'homesex':
-	*clr & cla
-	'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/girl/sonia/sex/home/walkhome/walksex1.jpg"></center>'
-	'Sonia unlocks the door, and the two of you go inside. As soon as you do, the two of you begin kissing again with renewed vigor. Fumbling behind her, Sonia manages to close the door, and the two of you stumble into the dining room, where you back into the table. Breaking your kiss, she takes hold of your hips with her hands and lifts slightly. You get she is trying to help you sit on the table.'
-	$orgasm_or = 'no'
-	gs 'arousal', 'foreplay', 5, 'lesbian'
-	gs 'stat'
-	act 'Sit':
-		*clr & cla
-		'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/girl/sonia/sex/home/walkhome/walksex2.jpg"></center>'
-		'She helps you sit on the table and then pushes her hips between your knees so she is between your legs. She gently squeezes and massages your breasts while she starts kissing you again. After a bit, she starts to tug at your top, pulling it up to expose your tits, and asks you to lie back.'
-		gs 'arousal', 'foreplay', 5, 'lesbian'
-		gs 'stat'
-		act 'Lay back':
-			*clr & cla
-			'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/girl/sonia/sex/home/walkhome/walksex3.jpg"></center>'
-			'You lie back on the table. She leans forward and starts to kiss your chest. She slowly makes her way to one of your nipples where she suckles and nips at it. While she does this, her other hand massages your other breast.'
-			gs 'arousal', 'foreplay', 5, 'lesbian'
-			gs 'stat'
-			act 'Enjoy':
-				*clr & cla
-				if $pantyworntype = 'none':
-					'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/girl/sonia/sex/home/walkhome/walksex3.jpg"></center>'
-					'She pulls your clothes aside and reaches for your panties. When she doesn''t find any, she smiles at you. "Dirty girl." She starts to kiss her way down your stomach.'
-				else
-					'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/girl/sonia/sex/home/walkhome/walksex4.jpg"></center>'
-					'She pulls your clothes aside until she gets to your panties, which she gently starts pulling off. She tosses them aside and starts kissing your ankle, making her way back up your legs towards your inner thighs.'
-				end
-				gs 'arousal', 'foreplay', 5, 'lesbian'
-				gs 'stat'
-				act 'Let her eat you':
-					*clr & cla
-					'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/girl/sonia/sex/home/walkhome/walksex5.jpg"></center>'
-					'Her kisses slowly lead her to your crotch until you feel her soft lips kiss your clit. She starts to lick and suck on your clitoris, and you can feel your pussy getting wet. Soon, she slides her tongue down, slips it between your pussy lips and starts really eating you out in earnest.'
-					gs 'arousal', 'cuni', 5, 'lesbian'
-					gs 'stat'
-					act 'Get up':
-						*clr & cla
-						'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/girl/sonia/sex/home/walkhome/walksex6.jpg"></center>'
-						'She expertly sucks at your clit and licks your pussy. You don''t know if she has done this a lot or is just a natural, and you really don''t care. As you start moaning a little louder, she stops and puts a finger to your lips. "Shh, don''t wake anyone. Come on, let''s go to my room."'
-						gs 'arousal', 'cuni', 5, 'lesbian'
-						gs 'stat'
-						if mc_inventory['strapon'] = 1 and soniasex = 1:
-							act 'Show her your strap-on':
-								*clr & cla
-								gs 'boyStat', 'D<<strapnumber>>'
-								gs 'stat'
-								'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/girl/sonia/sex/home/livingroom/strapon/strapon2.jpg"></center>'
-								'While she leads you to her room, you grab her hand and pull her back. She looks at you with questioning eyes, wondering if maybe you have changed your mind. Then her eyes get huge when you pull your strap-on out of your purse and show it to her. "Oh my god," she utters with her hands over her mouth and sits down on couch.'
-								'You sit next to her with a huge smile and hold the strap-on between you. She reaches over and touches it and gets a huge grin on her face. "What do you want to do with this?"'
-								act 'Fuck me with it': gt 'soniadisco', 'strapon_fucked'
-								act 'Going to fuck you with it': gt 'soniadisco', 'strapon_fucking'
-							end
-						end
-						act 'Go to her room':
-							*clr & cla
-							'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/girl/sonia/sex/home/walkhome/walksex7.jpg"></center>'
-							'You nod and slide off the table, and the two of you walk to her room, hand in hand. Once there, she pushes you down on your back on the bed and climbs on top of you. Reaching for your face, she stares into your eyes for a moment before she starts kissing you again. You can taste your own wetness on her lips and tongue.'
-							gs 'arousal', 'foreplay', 5, 'lesbian'
-							gs 'stat'
-							act 'Take her dress off':
-								*clr & cla
-								'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/girl/sonia/sex/home/walkhome/walksex8.jpg"></center>'
-								'Stopping making out for a moment, you pull her dress off over the top of her head and toss it aside. The two of you go back to kissing and fondling each other, her stripped down to just her panties.'
-								gs 'arousal', 'foreplay', 5, 'lesbian'
-								gs 'stat'
-								act 'Go down on her': gt 'soniadisco', 'eatsonia'
-								act 'Get finger banged':
-									*clr & cla
-									'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/girl/sonia/sex/home/walkhome/walksex9.jpg"></center>'
-									'She has been leading the action so far, and you decide to just follow her lead. She pulls off most of the rest of your clothes, tossing them aside, and lies down next to you. Her hand slides between your legs and you spread them wider. You feel one finger slide into your wet pussy, soon followed by a second. She fingers you with her fingers until your pussy is soaking wet, then she adds a third finger inside of you.'
-									gs 'arousal', 'vaginal_finger', 5, 'lesbian', 'sub'
-									gs 'stat'
-									act 'Get eaten out again':
-										*clr & cla
-										'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/girl/sonia/sex/home/walkhome/walksex10.jpg"></center>'
-										'As she finger bangs your pussy, she slides down and replaces her fingers with her mouth and tongue. She goes back to eating you out, her face getting covered in your wetness. After a few minutes, she stops and says, "My turn."'
-										gs 'arousal', 'cuni', 5, 'lesbian', 'sub'
-										gs 'stat'
-										act 'Go down on her': gt 'soniadisco', 'eatsonia'
-									end
-								end
-							end
-						end
-					end
-				end
-			end
-		end
-	end
-end
-
-if $ARGS[0] = 'eatsonia':
-	*clr & cla
-	gs 'stat'
-	'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/girl/sonia/sex/home/walkhome/walksex11.jpg"></center>'
-	'You lay her down on her back, then kiss her stomach and her pussy over her panties. She watches you, moaning softly while biting her lip. She obviously wants more, but you take your time. After you tease her for a bit, you take hold of her wet panties and slide them down her legs, slowly. Once they are free, you toss them aside.'
-	gs 'arousal', 'foreplay', 5, 'lesbian'
-	gs 'stat'
-	act 'Lick her pussy':
-		*clr & cla
-		gs 'stat'
-		'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/girl/sonia/sex/home/walkhome/walksex12.jpg"></center>'
-		'You place your head between her legs and start to kiss and lick at her pussy, finding it already soaking wet. It doesn''t take long until she places her hand on your head to encourage you to be more aggressive. You oblige her and start lapping and tonguing her pussy.'
-		gs 'arousal', 'cuni_give', 5, 'lesbian'
-		gs 'stat'
-		act 'Keep licking her pussy':
-			*clr & cla
-			gs 'stat'
-			'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/girl/sonia/sex/home/walkhome/walksex13.jpg"></center>'
-			'You suck and lick her clit for a bit before you stick your tongue back inside of her pussy. You hear her moan and feel the hand on your head adding more pressure as she starts grinding her crotch against you, covering your whole face in her juices. Then she says, "I want to eat you at the same time."'
-			gs 'arousal', 'cuni_give', 5, 'lesbian'
-			gs 'stat'
-			act '69':
-				*clr & cla
-				gs 'stat'
-				'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/girl/sonia/sex/home/walkhome/walksex14.jpg"></center>'
-				'The two of you get into a 69 position. She gets on top and almost sits on your face. You start to lick at her pussy at the same time you can feel her licking at yours. You are both moaning. The combination of having your pussy eaten out while you are eating out another pussy is almost too much.'
-				gs 'arousal', 'cuni', 5, 'lesbian'
-				gs 'arousal', 'cuni_give', -5, 'lesbian'
-				gs 'stat'
-				act 'Paradise':
-					*clr & cla
-					gs 'stat'
-					'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/girl/sonia/sex/home/walkhome/walksex15.jpg"></center>'
-					'Her moans start coming louder and longer and suddenly you are drenched in her wetness. You can feel her body shaking as she has a orgasm.'
-					killvar '$orgasm_or'
-					$orgasm_txt = 'Soon, you feel your body start to spasm as well as your own orgasm rocks your body. It feels like forever, but likely only a couple of minutes pass before your orgasm fades.'
-					gs 'arousal', 'cuni', 5, 'lesbian'
-					gs 'arousal', 'cuni_give', -5, 'lesbian'
-					gs 'arousal', 'end'
-					gs 'stat'
-					act 'Afterglow':
-						*clr & cla
-						gs 'stat'
-						soniasex = 1
-						'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/girl/sonia/sex/home/walkhome/walksex16.jpg"></center>'
-						if $home['current'] ! 'parents_home':
-							'Once the orgasms have passed, she climbs off you and lies down next to you to cuddle. The two of you lie intertwined, basking together in the afterglow. As much as you would like to stay, you know you can''t. You know you need to get home. Reluctantly, you disentangle yourself from her. She gives you a small smile. "Sorry, I need to get going."'
-						else
-							'Once the orgasms have passed, she climbs off you and lies down next to you to cuddle. The two of you lie intertwined, basking together in the afterglow. As much as you would like to stay, you know you can''t. You know you need to get home. Reluctantly, you disentangle yourself from her. She gives you a small smile. "Sorry, I need to get going, or my mom will have a fit."'
-						end
-						'Sonia nods. "I understand, it was fun though."'
-						'You smile at her and give her a lingering kiss, then you get dressed. "Yeah, it was."'
-						'As you finish dressing, she throws on a nightshirt and walks you to the door. "See you at school later."'
-						'"Bye," you tell her as you walk out. She closes the door behind you and locks it. Now you should probably get home.'
-						act 'Leave': gt 'pav_residential'
-					end
-				end
-			end
-		end
-	end
-end
 
-if $ARGS[0] = 'strapon_fucked':
-	*clr & cla
-	'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/girl/sonia/sex/home/livingroom/strapon/strapon1.jpg"></center>'
-	'You tell her, "I want you to put this on and fuck me with it."'
-	'Her grin gets even bigger and she seems to really like the idea. "I would love to fuck you with this," she says as she takes the strap-on and strokes the shaft of the dildo attached. She lays it aside and leans in to kiss you. She caresses your neck as she gives you a long, slow, passionate kiss. She breaks the kiss and quickly gets undressed. You follow suit and undress as well. Once you are both naked, she gently pushes you back on the couch until you are lying on your back, and then she moves to straddle your face.'
-	gs 'arousal', 'foreplay', 5, 'lesbian'
-	gs 'stat'
-	act 'Eat her':
-		*clr & cla
-		'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/girl/sonia/sex/home/livingroom/strapon/strapon3.jpg"></center>'
-		'Once she straddles your face and lowers herself down, you start licking her slit and clit eagerly. You can hear her moan while your tongue works her twat over, you can feel it getting wetter and wetter. Her hand slides down your stomach all the way to your crotch. Once her hand reaches your pussy, you feel two of her fingers slide into it and starts finger banging your twat.'
-		killvar '$orgasm_or'
-		gs 'arousal', 'cuni_give', 5, 'lesbian'
-		gs 'arousal', 'vaginal_finger', -5, 'lesbian'
-		gs 'stat'
-		act '69':
-			*clr & cla
-			'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/girl/sonia/sex/home/livingroom/strapon/strapon4.jpg"></center>'
-			'Once your twat is good and soaking wet from her fingering, she stops and bends over to start licking your pussy while you continue to do the same to hers. The sensation of having your pussy licked while licking another is intoxicating. You both start moaning in pleasure more and louder as you both keep it up. After a few minutes of this, Sonia stands up and climbs off of you.'
-			gs 'arousal', 'cuni_give', 5, 'lesbian'
-			gs 'arousal', 'cuni', -5, 'lesbian'
-			gs 'stat'
-			act 'What''s next':
-				*clr & cla
-				'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/girl/sonia/sex/home/livingroom/strapon/strapon5.jpg"></center>'
-				'You watch as she picks up the harness and starts slipping it on, pulling it over her hips. Once in place, she starts tightening up the straps so the harness fits snugly. When she finishes, she strokes the dildo a few times like it was a dick, which only makes her grin at you. "I better make sure your pussy is nice and wet before I fuck it, huh," she says. Then she crawls forward on the couch, places her face between your legs and starts licking at your already wet twat.'
-				gs 'arousal', 'cuni', 5, 'lesbian'
-				gs 'stat'
-				act 'Mount her':
-					*clr & cla
-					'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/girl/sonia/sex/home/livingroom/strapon/strapon6.jpg"></center>'
-					'A couple of minutes pass until she seems content you are wet enough. She turns and sits down on the couch and pulls you towards her. "Come on and mount my dick," she says with a giggle. You straddle her lap and, with her help, slowly lower yourself down. The <<dick>>cm <<$dick_girth>> dildo slides into your wet pussy, causing you to moan as it fills you up. You begin to slowly ride her, controlling the speed and depth of the dildo in your twat. Sonia begins to lick, kiss and suckle at your nipples as you ride her. The better it feels, the faster and deeper you ride the strap-on dildo.'
-					gs 'arousal', 'vaginal_strap', 5, 'lesbian'
-					gs 'arousal', 'foreplay', -5, 'lesbian'
-					gs 'stat'
-					act 'Turn around':
-						*clr & cla
-						'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/girl/sonia/sex/home/livingroom/strapon/strapon7.jpg"></center>'
-						'Your enjoyment is interrupted when Sonia slaps you on the butt. "Get up and turn around so I can fuck you properly." You get off her and then face away, getting down on your hands and knees, presenting yourself to her. She scoots up behind you on her knees. She quickly slides the wet dildo back into your pussy, causing you to moan. She grabs hold of your hips and starts fucking you, picking up speed and eventually working the dildo deep in your twat as you moan louder and louder.'
-						*nl
-						'Your pleasure is interrupted as you hear Sonia''s mom call out from the bedroom. "Sonia is that you? You know what time it is, you should be in bed! Is anything wrong?"'
-						'Sonia jumps off the couch, pulling the dildo out of your twat as she does. "Everything is fine, mom! A friend stopped by for a few minutes to talk about schoolwork, she was just leaving and I am heading to bed." She quickly takes the harness off and throws her dress over her head as fast as she can. While she is doing that, you take the hint and quickly get dressed as well.'
-						gs 'arousal', 'vaginal_strap', 5, 'lesbian'
-						gs 'stat'
-						act 'Aftermath':
-							*clr & cla
-							minut += 5
-							soniasex = 1
-							'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/girl/sonia/sex/home/livingroom/strapon/strapon1.jpg"></center>'
-							if $home['current'] ! 'parents_home':
-								'Once you are both fully dressed and her mom stops talking, you both sit down on the couch and giggle a little at almost getting caught having sex with a strap-on. Sonia leans forward and gives you a long, slow kiss on the lips. Once she breaks the kiss, she says, "Thanks for walking me home, I had fun. But if I don''t go to bed soon."'
-							else
-								'Once you are both fully dressed and her mom stops talking, you both sit down on the couch and giggle a little at almost getting caught having sex with a strap-on. Sonia leans forward and gives you a long, slow kiss on the lips. Once she breaks the kiss, she says, "Thanks for walking me home, I had fun. But if I don''t go to bed soon, my mom is going to throw a fit."'
-							end
-							'You laugh a little and nod. "I know the feeling, my mom will likely give me hell for being out this late too." When she walks you to the door, she gives you a little wave, before closing and locking the door. You turn and head to the street.'
-							gs 'arousal', 'foreplay', 5, 'lesbian'
-							gs 'arousal', 'end'
-							gs 'stat'
-							act 'Leave': gt 'pav_residential'
-						end
-					end
-				end
-			end
-		end
-	end
-end
-
-if $ARGS[0] = 'strapon_fucking':
-	*clr & cla
-	gs 'stat'
-	'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/girl/sonia/sex/home/bedroom/strapon/strapon.jpg"></center>'
-	'"I am going to fuck you with my cock," you tell her.'
-	'She bites her lower lip, obviously turned on at the idea, before taking you by the hand and leading you to her bedroom. You both start to get undressed, and then you pull the harness up over your hips and pull the straps tight until it fits snugly, giving the dildo a few tugs to ensure it will stay in place. Then you climb up on her bed on your knees and tell her, "Suck my dick."'
-	act 'Suck my dick':
-		*clr & cla
-		'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/girl/sonia/sex/home/bedroom/strapon/straponbj.jpg"></center>'
-		'Only halfway undressed when you say it, she grins and climbs on the bed, getting down on her hands and knees. She takes the dildo into her mouth and starts sucking it. It looks like she really knows what she is doing. You wonder briefly just how many dicks she might have sucked. After she has the dildo nice and wet with her slobber, you tell her, "Hope you are ready because I am going to fuck your..."'
-		gs 'arousal', 'foreplay', 5, 'lesbian'
-		gs 'stat'
-		act 'Pussy': gt 'soniadisco', 'strapon_pussy'
-		gs 'willpower', 'anal', 'force'
-		if will_cost <= pcs_willpwr:
-			act 'Ass (<<will_cost>> Willpower)': gs 'willpower', 'pay', 'force' & gt 'soniadisco', 'strapon_anal'
-		else
-			act 'Ass (<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
-
-if $ARGS[0] = 'strapon_pussy':
-	*clr & cla
-	'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/girl/sonia/sex/home/bedroom/strapon/straponvag1.jpg"></center>'
-	'She stops sucking the dildo and turns around, presenting herself to you while she pulls off the rest of her clothes. You scoot up behind her and rub the tip of the dildo against her slit, which appears to already be soaking wet. The <<dick>>cm <<$dick_girth>> dildo easily slides into her twat. She starts moaning almost at once. She looks back over her shoulder at you with a hungry, lust-filled look. You slide the dildo all the way inside of her until you feel the leather harness pressing up against her butt.'
-	gs 'arousal', 'vaginal_strap_give', 5, 'lesbian'
-	gs 'stat'
-	act 'Fuck that pussy':
-		*clr & cla
-		'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/girl/sonia/sex/home/bedroom/strapon/straponvag2.jpg"></center>'
-		'You start fucking her with deep strokes. The room is filled with the sounds of her moaning and the sound of the leather harness slapping against her butt cheeks as you fuck her with full, deep thrusts. You hold onto her hip with one hand as you thrust the full length of your dildo firmly and rapidly into her twat. A few minutes later, she starts loudly moaning and starts to tremble, having an orgasm from the fucking you''re giving her. Once it passes, you pull the dildo out of her and tell her, "Now, we are going to do something else."'
-		gs 'arousal', 'vaginal_strap_give', 5, 'lesbian'
-		gs 'stat'
-		act 'Make her eat you': gt 'soniadisco', 'strapon_eaten'
-		gs 'willpower', 'anal', 'force'
-		if will_cost <= pcs_willpwr:
-			act 'Fuck her ass (<<will_cost>> Willpower)': gs 'willpower', 'pay', 'force' & gt 'soniadisco', 'strapon_anal'
-		else
-			act 'Fuck her ass (<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
-
-if $ARGS[0] = 'strapon_anal':
-	*clr & cla
-	strapanal = 1
-	'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/girl/sonia/sex/home/bedroom/strapon/straponanal1.jpg"></center>'
-	'"I''m going to fuck your ass," you tell her.'
-	'Her eyes get big, and she looks unsure. "Can''t you just fuck my pussy instead, <<$pcs_nickname>>?"'
-	'You make sure the dildo and her ass are lubed up enough. Your answer to her question is to press the head of the dildo against her asshole and then push forward. You feel her start to pull away, but you quickly reach up and place a hand on her shoulder, pulling her back. With her now held in place and the pressure mounting, you look down and watch as the head of the dildo pops into her asshole. You hear her hiss in pain but also moan in pleasure. You give her butt a few short strokes, working the <<dick>>cm <<$dick_girth>> dildo deeper inside with each one until almost the full length is up her butt.'
-	gs 'arousal', 'anal_strap_give', 5, 'lesbian'
-	gs 'stat'
-	act 'Pound her ass':
-		*clr & cla
-		'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/girl/sonia/sex/home/bedroom/strapon/straponanal2.jpg"></center>'
-		'You finally work the full length up her ass until your hips and the leather of the harness are slapping against her butt cheeks. Then you start fucking her ass with firm strokes that bottom the dildo out in her butt. She bites her lower lip, and you can tell it hurts, but you also know at least part of her is enjoying this. As you start to really pound her little ass, she finally says, "Not so hard, <<$pcs_nickname>>."'
-		gs 'arousal', 'anal_strap_give', 5, 'lesbian'
-		gs 'stat'
-		act 'Ease up':
-			*clr & cla
-			'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/girl/sonia/sex/home/bedroom/strapon/straponanal1.jpg"></center>'
-			'You decide to take pity on her and ease up a bit. You no longer fuck her with the full length of the shaft and try to read her body language, adjusting your speed and depth to what makes her moan the most. After a few minutes of this, her body is wracked by another orgasm. With that, you finally pull the dildo out of her and start taking off the harness. "Now you''re going to eat my pussy," you tell her.'
-			gs 'arousal', 'anal_strap_give', 5, 'lesbian'
-			gs 'stat'
-			act 'Make her eat you': gt 'soniadisco', 'strapon_eaten'
-		end
-		gs 'willpower', 'anal', 'force'
-		if will_cost <= pcs_willpwr:
-			act 'Tear her ass up (<<will_cost>> Willpower)':
-				*clr & cla
-				strapanal = 2
-				gs 'willpower', 'pay', 'force'
-				'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/girl/sonia/sex/home/bedroom/strapon/straponrough.jpg"></center>'
-				'"Shut up and take it, slut," you tell her as you start to really hammer her ass. She tries to pull away, but you grab hold of her hips and prevent her. She leans forward till her shoulders are on the bed, changing the angle. You merely adjust by getting up on your feet and pile driving the dildo down into her ass.'
-				'You can tell she is not really enjoying this as she complains, "Ow, it hurts!"'
-				'You reply to her as you keep hammering her ass, "Don''t worry, you''ll get used to it. Besides, didn''t you want to walk on the wild side?" That seems to have shut her up, but you decide you don''t want to be too mean and stop. Pulling the dildo out of her ass, you hear her sigh in relief. "Very well, you can eat me now, then."'
-				gs 'arousal', 'anal_strap_give', 5, 'lesbian', 'dom', 'rough'
-				gs 'stat'
-				act 'Make her eat you': gt 'soniadisco', 'strapon_eaten'
-			end
-		else
-			act 'Tear her ass up (<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
-
-if $ARGS[0] = 'strapon_eaten':
-	*clr & cla
-	'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/girl/sonia/sex/home/bedroom/strapon/eaten1.jpg"></center>'
-	'You take the harness off and put it aside, then you lie down on the bed and spread you legs. Without being told, Sonia crawls over and starts to lick at your pussy and suck on your clit. Several minutes go by, and you can feel your arousal mounting.'
-	gs 'arousal', 'cuni', 5, 'lesbian'
-	gs 'stat'
-	act 'Just like that':
-		*clr & cla
-		'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/girl/sonia/sex/home/bedroom/strapon/eaten2.jpg"></center>'
-		'She slips a finger into your twat and starts fingering you as she licks, kisses and sucks at your clit. You grab her by the hair and start grinding your crotch against her face, smearing it with your wetness. You want to sit on her face, so you pull her face away from your crotch by her hair. "Lie on your back," you tell her.'
-		gs 'arousal', 'cuni', 5, 'lesbian'
-		gs 'arousal', 'vaginal_finger', -5, 'lesbian'
-		gs 'stat'
-		act 'Sit on her face':
-			*clr & cla
-			'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/girl/sonia/sex/home/bedroom/strapon/facesit.jpg"></center>'
-			'She rolls over onto her back, while you get up. You move over and straddle her face, and then sit back until your pussy makes contact with it again. You can feel her licking your pussy while sliding her tongue inside of your wet twat. You rotate your hips and grind your twat against her face, coating it more and more with your juices.'
-			gs 'arousal', 'cuni', 5, 'lesbian'
-			gs 'stat'
-			act '69':
-				*clr & cla
-				'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/girl/sonia/sex/home/bedroom/strapon/69.jpg"></center>'
-				'You start to feel a little tired and roll off her. "I want to lick your pussy while you lick mine," you tell her. She climbs up and straddles your face now and bends forward to go back to licking your pussy. You lick hers in return. Several minutes of this goes by until her body shudders and she has a orgasm, coating your face in her juices.'
-				killvar '$orgasm_or'
-				$orgasm_txt = 'As she starts to orgasm, it is too much for you, and you feel your own body shake and rock as an orgasm courses through it.'
-				gs 'arousal', 'cuni', 5, 'lesbian'
-				gs 'arousal', 'cuni_give', -5, 'lesbian'
-				gs 'stat'
-				act 'Afterglow':
-					*clr & cla
-					'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/girl/sonia/sex/home/bedroom/strapon/afterglow.jpg"></center>'
-					'She rolls off you, and the two of you lie side by side for several minutes, panting and recovering from the sex you just had. As you start to get up to get dressed, she pulls you over, and the two you share a long, slow, passionate kiss for several minutes before you break apart, sitting up together.'
-					gs 'arousal', 'foreplay', 5, 'lesbian'
-					gs 'arousal', 'end'
-					gs 'stat'
-					act 'Get dressed':
-						*clr & cla
-						minut += 5
-						soniasex = 1
-						gs 'stat'
-						'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/girl/sonia/sex/home/bedroom/strapon/selfie.jpg"></center>'
-						'Once you are both sitting, Sonia grabs her phone and takes a selfie of the two of you, your faces still glistening with each other''s pussy juices. The two of you get dressed again. "Did you have fun?" you ask her.'
-						*nl
-						if strapanal = 1:
-							'She grins. "I feel amazing! That was great, I loved it." Then she blushes a bit as she realizes how much she is gushing about how much she enjoyed it.'
-							'You smile at her. "Even having your butt fucked?" you ask.'
-							'She blushes deeply and nods. "Yeah, I even liked that. Even if my ass hurts a little, I still had fun."'
-							'You give her a quick kiss. "I had fun too, but I should get going. It''s late."'
-						elseif strapanal = 2:
-							'She grins. "I feel amazing! That was great, I loved it." Then she blushes a bit as she realizes how much she is gushing about how much she enjoyed it.'
-							'You smile to her. "Even having your butt fucked?" you ask.'
-							'She blushes, and purses her lips like maybe it wasn''t amazing. "Yeah, even that at first. It hurt a little but then started to feel good, until you got rougher. My ass feels like it''s on fire now," she says a little sourly.'
-							'You give her a quick kiss. "I''m sorry, I just got carried away. But as you get used to it, it won''t hurt anymore and just feel good," you assure her.'
-							'She gives a slightly dubious look. She obviously isn''t convinced but isn''t willing to argue, so she just settles on a nod. You give her another kiss. "Trust me, but I need to get going. It''s late."'
-						else
-							'She grins. "I feel amazing! That was great, I loved it." Then she blushes a bit as she realizes how much she is gushing about how much she enjoyed it.'
-							'You give her a quick kiss. "I had fun too, but I should get going. It''s late."'
-						end
-						*nl
-						'Once you are both dressed and cleaned up, she walks you to her front door. "Night, <<$pcs_nickname>>."'
-						'You tell her, "Night." Then you walk out. She closes the door behind you, and you hear it lock. You turn and walk to the street.'
-						killvar 'strapanal'
-						act 'Leave': gt 'pav_residential'
-					end
-				end
-			end
-		end
-	end
-end
+--- soniadisco ---------------------------------
 
---- soniadisco ---------------------------------

+ 383 - 0
locations/soniaev1.qsrc

@@ -0,0 +1,383 @@
+# soniaev1
+!2021/22/12
+!!I changed Sonia fall to this so their is a total of 7 events so Sonia slowly falls. moved the automatically fall code here from cikl.
+
+if $ARGS[0] = 'homesex':
+	menu_off = 1
+	*clr & cla
+	'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/girl/sonia/sex/home/walkhome/walksex1.jpg"></center>'
+	'Sonia unlocks the door, and the two of you go inside. As soon as you do, the two of you begin kissing again with renewed vigor. Fumbling behind her, Sonia manages to close the door, and the two of you stumble into the dining room, where you back into the table. Breaking your kiss, she takes hold of your hips with her hands and lifts slightly. You get she is trying to help you sit on the table.'
+	$orgasm_or = 'no'
+	gs 'arousal', 'foreplay', 5, 'lesbian'
+	gs 'stat'
+	act 'Sit':
+		*clr & cla
+		'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/girl/sonia/sex/home/walkhome/walksex2.jpg"></center>'
+		'She helps you sit on the table and then pushes her hips between your knees so she is between your legs. She gently squeezes and massages your breasts while she starts kissing you again. After a bit, she starts to tug at your top, pulling it up to expose your tits, and asks you to lie back.'
+		gs 'arousal', 'foreplay', 5, 'lesbian'
+		gs 'stat'
+		act 'Lay back':
+			*clr & cla
+			'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/girl/sonia/sex/home/walkhome/walksex3.jpg"></center>'
+			'You lie back on the table. She leans forward and starts to kiss your chest. She slowly makes her way to one of your nipples where she suckles and nips at it. While she does this, her other hand massages your other breast.'
+			gs 'arousal', 'foreplay', 5, 'lesbian'
+			gs 'stat'
+			act 'Enjoy':
+				*clr & cla
+				if $pantyworntype = 'none':
+					'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/girl/sonia/sex/home/walkhome/walksex3.jpg"></center>'
+					'She pulls your clothes aside and reaches for your panties. When she doesn''t find any, she smiles at you. "Dirty girl." She starts to kiss her way down your stomach.'
+				else
+					'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/girl/sonia/sex/home/walkhome/walksex4.jpg"></center>'
+					'She pulls your clothes aside until she gets to your panties, which she gently starts pulling off. She tosses them aside and starts kissing your ankle, making her way back up your legs towards your inner thighs.'
+				end
+				gs 'arousal', 'foreplay', 5, 'lesbian'
+				gs 'stat'
+				act 'Let her eat you':
+					*clr & cla
+					'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/girl/sonia/sex/home/walkhome/walksex5.jpg"></center>'
+					'Her kisses slowly lead her to your crotch until you feel her soft lips kiss your clit. She starts to lick and suck on your clitoris, and you can feel your pussy getting wet. Soon, she slides her tongue down, slips it between your pussy lips and starts really eating you out in earnest.'
+					gs 'arousal', 'cuni', 5, 'lesbian'
+					gs 'stat'
+					act 'Get up':
+						*clr & cla
+						'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/girl/sonia/sex/home/walkhome/walksex6.jpg"></center>'
+						'She expertly sucks at your clit and licks your pussy. You don''t know if she has done this a lot or is just a natural, and you really don''t care. As you start moaning a little louder, she stops and puts a finger to your lips. "Shh, don''t wake anyone. Come on, let''s go to my room."'
+						gs 'arousal', 'cuni', 5, 'lesbian'
+						gs 'stat'
+						if mc_inventory['strapon'] = 1 and soniaQW['sex'] = 1:
+							act 'Show her your strap-on':
+								*clr & cla
+								gs 'boyStat', 'D<<strapnumber>>'
+								gs 'stat'
+								'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/girl/sonia/sex/home/livingroom/strapon/strapon2.jpg"></center>'
+								'While she leads you to her room, you grab her hand and pull her back. She looks at you with questioning eyes, wondering if maybe you have changed your mind. Then her eyes get huge when you pull your strap-on out of your purse and show it to her. "Oh my god," she utters with her hands over her mouth and sits down on couch.'
+								'You sit next to her with a huge smile and hold the strap-on between you. She reaches over and touches it and gets a huge grin on her face. "What do you want to do with this?"'
+								act 'Fuck me with it': gt 'soniaev1', 'strapon_fucked'
+								act 'Going to fuck you with it': gt 'soniaev1', 'strapon_fucking'
+							end
+						end
+						act 'Go to her room':
+							*clr & cla
+							'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/girl/sonia/sex/home/walkhome/walksex7.jpg"></center>'
+							'You nod and slide off the table, and the two of you walk to her room, hand in hand. Once there, she pushes you down on your back on the bed and climbs on top of you. Reaching for your face, she stares into your eyes for a moment before she starts kissing you again. You can taste your own wetness on her lips and tongue.'
+							gs 'arousal', 'foreplay', 5, 'lesbian'
+							gs 'stat'
+							act 'Take her dress off':
+								*clr & cla
+								'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/girl/sonia/sex/home/walkhome/walksex8.jpg"></center>'
+								'Stopping making out for a moment, you pull her dress off over the top of her head and toss it aside. The two of you go back to kissing and fondling each other, her stripped down to just her panties.'
+								gs 'arousal', 'foreplay', 5, 'lesbian'
+								gs 'stat'
+								act 'Go down on her': gt 'soniaev1', 'eatsonia'
+								act 'Get finger banged':
+									*clr & cla
+									'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/girl/sonia/sex/home/walkhome/walksex9.jpg"></center>'
+									'She has been leading the action so far, and you decide to just follow her lead. She pulls off most of the rest of your clothes, tossing them aside, and lies down next to you. Her hand slides between your legs and you spread them wider. You feel one finger slide into your wet pussy, soon followed by a second. She fingers you with her fingers until your pussy is soaking wet, then she adds a third finger inside of you.'
+									gs 'arousal', 'vaginal_finger', 5, 'lesbian', 'sub'
+									gs 'stat'
+									act 'Get eaten out again':
+										*clr & cla
+										'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/girl/sonia/sex/home/walkhome/walksex10.jpg"></center>'
+										'As she finger bangs your pussy, she slides down and replaces her fingers with her mouth and tongue. She goes back to eating you out, her face getting covered in your wetness. After a few minutes, she stops and says, "My turn."'
+										gs 'arousal', 'cuni', 5, 'lesbian', 'sub'
+										gs 'stat'
+										act 'Go down on her': gt 'soniaev1', 'eatsonia'
+									end
+								end
+							end
+						end
+					end
+				end
+			end
+		end
+	end
+end
+
+if $ARGS[0] = 'eatsonia':
+	*clr & cla
+	gs 'stat'
+	'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/girl/sonia/sex/home/walkhome/walksex11.jpg"></center>'
+	'You lay her down on her back, then kiss her stomach and her pussy over her panties. She watches you, moaning softly while biting her lip. She obviously wants more, but you take your time. After you tease her for a bit, you take hold of her wet panties and slide them down her legs, slowly. Once they are free, you toss them aside.'
+	gs 'arousal', 'foreplay', 5, 'lesbian'
+	gs 'stat'
+	act 'Lick her pussy':
+		*clr & cla
+		gs 'stat'
+		'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/girl/sonia/sex/home/walkhome/walksex12.jpg"></center>'
+		'You place your head between her legs and start to kiss and lick at her pussy, finding it already soaking wet. It doesn''t take long until she places her hand on your head to encourage you to be more aggressive. You oblige her and start lapping and tonguing her pussy.'
+		gs 'arousal', 'cuni_give', 5, 'lesbian'
+		gs 'stat'
+		act 'Keep licking her pussy':
+			*clr & cla
+			gs 'stat'
+			'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/girl/sonia/sex/home/walkhome/walksex13.jpg"></center>'
+			'You suck and lick her clit for a bit before you stick your tongue back inside of her pussy. You hear her moan and feel the hand on your head adding more pressure as she starts grinding her crotch against you, covering your whole face in her juices. Then she says, "I want to eat you at the same time."'
+			gs 'arousal', 'cuni_give', 5, 'lesbian'
+			gs 'stat'
+			act '69':
+				*clr & cla
+				gs 'stat'
+				'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/girl/sonia/sex/home/walkhome/walksex14.jpg"></center>'
+				'The two of you get into a 69 position. She gets on top and almost sits on your face. You start to lick at her pussy at the same time you can feel her licking at yours. You are both moaning. The combination of having your pussy eaten out while you are eating out another pussy is almost too much.'
+				gs 'arousal', 'cuni', 5, 'lesbian'
+				gs 'arousal', 'cuni_give', -5, 'lesbian'
+				gs 'stat'
+				act 'Paradise':
+					*clr & cla
+					gs 'stat'
+					'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/girl/sonia/sex/home/walkhome/walksex15.jpg"></center>'
+					'Her moans start coming louder and longer and suddenly you are drenched in her wetness. You can feel her body shaking as she has a orgasm.'
+					killvar '$orgasm_or'
+					$orgasm_txt = 'Soon, you feel your body start to spasm as well as your own orgasm rocks your body. It feels like forever, but likely only a couple of minutes pass before your orgasm fades.'
+					gs 'arousal', 'cuni', 5, 'lesbian'
+					gs 'arousal', 'cuni_give', -5, 'lesbian'
+					gs 'arousal', 'end'
+					gs 'stat'
+					act 'Afterglow':
+						*clr & cla
+						gs 'stat'
+						soniaQW['sex'] = 1
+						'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/girl/sonia/sex/home/walkhome/walksex16.jpg"></center>'
+						if $home['current'] ! 'parents_home':
+							'Once the orgasms have passed, she climbs off you and lies down next to you to cuddle. The two of you lie intertwined, basking together in the afterglow. As much as you would like to stay, you know you can''t. You know you need to get home. Reluctantly, you disentangle yourself from her. She gives you a small smile. "Sorry, I need to get going."'
+						else
+							'Once the orgasms have passed, she climbs off you and lies down next to you to cuddle. The two of you lie intertwined, basking together in the afterglow. As much as you would like to stay, you know you can''t. You know you need to get home. Reluctantly, you disentangle yourself from her. She gives you a small smile. "Sorry, I need to get going, or my mom will have a fit."'
+						end
+						'Sonia nods. "I understand, it was fun though."'
+						'You smile at her and give her a lingering kiss, then you get dressed. "Yeah, it was."'
+						'As you finish dressing, she throws on a nightshirt and walks you to the door. "See you at school later."'
+						'"Bye," you tell her as you walk out. She closes the door behind you and locks it. Now you should probably get home.'
+						act 'Leave': gt 'pav_residential'
+					end
+				end
+			end
+		end
+	end
+end
+
+if $ARGS[0] = 'strapon_fucked':
+	*clr & cla
+	'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/girl/sonia/sex/home/livingroom/strapon/strapon1.jpg"></center>'
+	'You tell her, "I want you to put this on and fuck me with it."'
+	'Her grin gets even bigger and she seems to really like the idea. "I would love to fuck you with this," she says as she takes the strap-on and strokes the shaft of the dildo attached. She lays it aside and leans in to kiss you. She caresses your neck as she gives you a long, slow, passionate kiss. She breaks the kiss and quickly gets undressed. You follow suit and undress as well. Once you are both naked, she gently pushes you back on the couch until you are lying on your back, and then she moves to straddle your face.'
+	gs 'arousal', 'foreplay', 5, 'lesbian'
+	gs 'stat'
+	act 'Eat her':
+		*clr & cla
+		'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/girl/sonia/sex/home/livingroom/strapon/strapon3.jpg"></center>'
+		'Once she straddles your face and lowers herself down, you start licking her slit and clit eagerly. You can hear her moan while your tongue works her twat over, you can feel it getting wetter and wetter. Her hand slides down your stomach all the way to your crotch. Once her hand reaches your pussy, you feel two of her fingers slide into it and starts finger banging your twat.'
+		killvar '$orgasm_or'
+		gs 'arousal', 'cuni_give', 5, 'lesbian'
+		gs 'arousal', 'vaginal_finger', -5, 'lesbian'
+		gs 'stat'
+		act '69':
+			*clr & cla
+			'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/girl/sonia/sex/home/livingroom/strapon/strapon4.jpg"></center>'
+			'Once your twat is good and soaking wet from her fingering, she stops and bends over to start licking your pussy while you continue to do the same to hers. The sensation of having your pussy licked while licking another is intoxicating. You both start moaning in pleasure more and louder as you both keep it up. After a few minutes of this, Sonia stands up and climbs off of you.'
+			gs 'arousal', 'cuni_give', 5, 'lesbian'
+			gs 'arousal', 'cuni', -5, 'lesbian'
+			gs 'stat'
+			act 'What''s next':
+				*clr & cla
+				'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/girl/sonia/sex/home/livingroom/strapon/strapon5.jpg"></center>'
+				'You watch as she picks up the harness and starts slipping it on, pulling it over her hips. Once in place, she starts tightening up the straps so the harness fits snugly. When she finishes, she strokes the dildo a few times like it was a dick, which only makes her grin at you. "I better make sure your pussy is nice and wet before I fuck it, huh," she says. Then she crawls forward on the couch, places her face between your legs and starts licking at your already wet twat.'
+				gs 'arousal', 'cuni', 5, 'lesbian'
+				gs 'stat'
+				act 'Mount her':
+					*clr & cla
+					'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/girl/sonia/sex/home/livingroom/strapon/strapon6.jpg"></center>'
+					'A couple of minutes pass until she seems content you are wet enough. She turns and sits down on the couch and pulls you towards her. "Come on and mount my dick," she says with a giggle. You straddle her lap and, with her help, slowly lower yourself down. The <<dick>>cm <<$dick_girth>> dildo slides into your wet pussy, causing you to moan as it fills you up. You begin to slowly ride her, controlling the speed and depth of the dildo in your twat. Sonia begins to lick, kiss and suckle at your nipples as you ride her. The better it feels, the faster and deeper you ride the strap-on dildo.'
+					gs 'arousal', 'vaginal_strap', 5, 'lesbian'
+					gs 'arousal', 'foreplay', -5, 'lesbian'
+					gs 'stat'
+					act 'Turn around':
+						*clr & cla
+						'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/girl/sonia/sex/home/livingroom/strapon/strapon7.jpg"></center>'
+						'Your enjoyment is interrupted when Sonia slaps you on the butt. "Get up and turn around so I can fuck you properly." You get off her and then face away, getting down on your hands and knees, presenting yourself to her. She scoots up behind you on her knees. She quickly slides the wet dildo back into your pussy, causing you to moan. She grabs hold of your hips and starts fucking you, picking up speed and eventually working the dildo deep in your twat as you moan louder and louder.'
+						*nl
+						'Your pleasure is interrupted as you hear Sonia''s mom call out from the bedroom. "Sonia is that you? You know what time it is, you should be in bed! Is anything wrong?"'
+						'Sonia jumps off the couch, pulling the dildo out of your twat as she does. "Everything is fine, mom! A friend stopped by for a few minutes to talk about schoolwork, she was just leaving and I am heading to bed." She quickly takes the harness off and throws her dress over her head as fast as she can. While she is doing that, you take the hint and quickly get dressed as well.'
+						gs 'arousal', 'vaginal_strap', 5, 'lesbian'
+						gs 'stat'
+						act 'Aftermath':
+							*clr & cla
+							minut += 5
+							soniaQW['sex'] = 1
+							'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/girl/sonia/sex/home/livingroom/strapon/strapon1.jpg"></center>'
+							if $home['current'] ! 'parents_home':
+								'Once you are both fully dressed and her mom stops talking, you both sit down on the couch and giggle a little at almost getting caught having sex with a strap-on. Sonia leans forward and gives you a long, slow kiss on the lips. Once she breaks the kiss, she says, "Thanks for walking me home, I had fun. But if I don''t go to bed soon."'
+							else
+								'Once you are both fully dressed and her mom stops talking, you both sit down on the couch and giggle a little at almost getting caught having sex with a strap-on. Sonia leans forward and gives you a long, slow kiss on the lips. Once she breaks the kiss, she says, "Thanks for walking me home, I had fun. But if I don''t go to bed soon, my mom is going to throw a fit."'
+							end
+							'You laugh a little and nod. "I know the feeling, my mom will likely give me hell for being out this late too." When she walks you to the door, she gives you a little wave, before closing and locking the door. You turn and head to the street.'
+							gs 'arousal', 'foreplay', 5, 'lesbian'
+							gs 'arousal', 'end'
+							gs 'stat'
+							act 'Leave': gt 'pav_residential'
+						end
+					end
+				end
+			end
+		end
+	end
+end
+
+if $ARGS[0] = 'strapon_fucking':
+	*clr & cla
+	gs 'stat'
+	'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/girl/sonia/sex/home/bedroom/strapon/strapon.jpg"></center>'
+	'"I am going to fuck you with my cock," you tell her.'
+	'She bites her lower lip, obviously turned on at the idea, before taking you by the hand and leading you to her bedroom. You both start to get undressed and then you pull the harness up over your hips and pull the straps tight until it fits snugly, giving the dildo a few tugs to ensure it will stay in place. Then you climb up on her bed on your knees and tell her, "Suck my dick."'
+	act 'Suck my dick':
+		*clr & cla
+		'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/girl/sonia/sex/home/bedroom/strapon/straponbj.jpg"></center>'
+		'Only halfway undressed when you say it, she grins and climbs on the bed, getting down on her hands and knees. She takes the dildo into her mouth and starts sucking it. It looks like she really knows what she is doing. You wonder briefly just how many dicks she might have sucked. After she has the dildo nice and wet with her slobber, you tell her, "Hope you are ready because I am going to fuck your..."'
+		gs 'arousal', 'foreplay', 5, 'lesbian'
+		gs 'stat'
+		act 'Pussy': gt 'soniaev1', 'strapon_pussy'
+		gs 'willpower', 'anal', 'force'
+		if will_cost <= pcs_willpwr:
+			act 'Ass (<<will_cost>> Willpower)': gs 'willpower', 'pay', 'force' & gt 'soniaev1', 'strapon_anal'
+		else
+			act 'Ass (<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
+
+if $ARGS[0] = 'strapon_pussy':
+	*clr & cla
+	'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/girl/sonia/sex/home/bedroom/strapon/straponvag1.jpg"></center>'
+	'She stops sucking the dildo and turns around, presenting herself to you while she pulls off the rest of her clothes. You scoot up behind her and rub the tip of the dildo against her slit, which appears to already be soaking wet. The <<dick>>cm <<$dick_girth>> dildo easily slides into her twat. She starts moaning almost at once. She looks back over her shoulder at you with a hungry, lust-filled look. You slide the dildo all the way inside of her until you feel the leather harness pressing up against her butt.'
+	gs 'arousal', 'vaginal_strap_give', 5, 'lesbian'
+	gs 'stat'
+	act 'Fuck that pussy':
+		*clr & cla
+		'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/girl/sonia/sex/home/bedroom/strapon/straponvag2.jpg"></center>'
+		'You start fucking her with deep strokes. The room is filled with the sounds of her moaning and the sound of the leather harness slapping against her butt cheeks as you fuck her with full, deep thrusts. You hold onto her hip with one hand as you thrust the full length of your dildo firmly and rapidly into her twat. A few minutes later, she starts loudly moaning and starts to tremble, having an orgasm from the fucking you''re giving her. Once it passes, you pull the dildo out of her and tell her, "Now, we are going to do something else."'
+		gs 'arousal', 'vaginal_strap_give', 5, 'lesbian'
+		gs 'stat'
+		act 'Make her eat you': gt 'soniaev1', 'strapon_eaten'
+		gs 'willpower', 'anal', 'force'
+		if will_cost <= pcs_willpwr:
+			act 'Fuck her ass (<<will_cost>> Willpower)': gs 'willpower', 'pay', 'force' & gt 'soniaev1', 'strapon_anal'
+		else
+			act 'Fuck her ass (<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
+
+if $ARGS[0] = 'strapon_anal':
+	*clr & cla
+	strapanal = 1
+	'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/girl/sonia/sex/home/bedroom/strapon/straponanal1.jpg"></center>'
+	'"I''m going to fuck your ass," you tell her.'
+	'Her eyes get big, and she looks unsure. "Can''t you just fuck my pussy instead, <<$pcs_nickname>>?"'
+	'You make sure the dildo and her ass are lubed up enough. Your answer to her question is to press the head of the dildo against her asshole and then push forward. You feel her start to pull away, but you quickly reach up and place a hand on her shoulder, pulling her back. With her now held in place and the pressure mounting, you look down and watch as the head of the dildo pops into her asshole. You hear her hiss in pain but also moan in pleasure. You give her butt a few short strokes, working the <<dick>>cm <<$dick_girth>> dildo deeper inside with each one until almost the full length is up her butt.'
+	gs 'arousal', 'anal_strap_give', 5, 'lesbian'
+	gs 'stat'
+	act 'Pound her ass':
+		*clr & cla
+		'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/girl/sonia/sex/home/bedroom/strapon/straponanal2.jpg"></center>'
+		'You finally work the full length up her ass until your hips and the leather of the harness are slapping against her butt cheeks. Then you start fucking her ass with firm strokes that bottom the dildo out in her butt. She bites her lower lip, and you can tell it hurts, but you also know at least part of her is enjoying this. As you start to really pound her little ass, she finally says, "Not so hard, <<$pcs_nickname>>."'
+		gs 'arousal', 'anal_strap_give', 5, 'lesbian'
+		gs 'stat'
+		act 'Ease up':
+			*clr & cla
+			'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/girl/sonia/sex/home/bedroom/strapon/straponanal1.jpg"></center>'
+			'You decide to take pity on her and ease up a bit. You no longer fuck her with the full length of the shaft and try to read her body language, adjusting your speed and depth to what makes her moan the most. After a few minutes of this, her body is wracked by another orgasm. With that, you finally pull the dildo out of her and start taking off the harness. "Now you''re going to eat my pussy," you tell her.'
+			gs 'arousal', 'anal_strap_give', 5, 'lesbian'
+			gs 'stat'
+			act 'Make her eat you': gt 'soniaev1', 'strapon_eaten'
+		end
+		gs 'willpower', 'anal', 'force'
+		if will_cost <= pcs_willpwr:
+			act 'Tear her ass up (<<will_cost>> Willpower)':
+				*clr & cla
+				strapanal = 2
+				gs 'willpower', 'pay', 'force'
+				'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/girl/sonia/sex/home/bedroom/strapon/straponrough.jpg"></center>'
+				'"Shut up and take it, slut," you tell her as you start to really hammer her ass. She tries to pull away, but you grab hold of her hips and prevent her. She leans forward till her shoulders are on the bed, changing the angle. You merely adjust by getting up on your feet and pile driving the dildo down into her ass.'
+				'You can tell she is not really enjoying this as she complains, "Ow, it hurts!"'
+				'You reply to her as you keep hammering her ass, "Don''t worry, you''ll get used to it. Besides, didn''t you want to walk on the wild side?" That seems to have shut her up, but you decide you don''t want to be too mean and stop. Pulling the dildo out of her ass, you hear her sigh in relief. "Very well, you can eat me now, then."'
+				gs 'arousal', 'anal_strap_give', 5, 'lesbian', 'dom', 'rough'
+				gs 'stat'
+				act 'Make her eat you': gt 'soniaev1', 'strapon_eaten'
+			end
+		else
+			act 'Tear her ass up (<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
+
+if $ARGS[0] = 'strapon_eaten':
+	*clr & cla
+	'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/girl/sonia/sex/home/bedroom/strapon/eaten1.jpg"></center>'
+	'You take the harness off and put it aside, then you lie down on the bed and spread you legs. Without being told, Sonia crawls over and starts to lick at your pussy and suck on your clit. Several minutes go by, and you can feel your arousal mounting.'
+	gs 'arousal', 'cuni', 5, 'lesbian'
+	gs 'stat'
+	act 'Just like that':
+		*clr & cla
+		'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/girl/sonia/sex/home/bedroom/strapon/eaten2.jpg"></center>'
+		'She slips a finger into your twat and starts fingering you as she licks, kisses and sucks at your clit. You grab her by the hair and start grinding your crotch against her face, smearing it with your wetness. You want to sit on her face, so you pull her face away from your crotch by her hair. "Lie on your back," you tell her.'
+		gs 'arousal', 'cuni', 5, 'lesbian'
+		gs 'arousal', 'vaginal_finger', -5, 'lesbian'
+		gs 'stat'
+		act 'Sit on her face':
+			*clr & cla
+			'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/girl/sonia/sex/home/bedroom/strapon/facesit.jpg"></center>'
+			'She rolls over onto her back, while you get up. You move over and straddle her face, and then sit back until your pussy makes contact with it again. You can feel her licking your pussy while sliding her tongue inside of your wet twat. You rotate your hips and grind your twat against her face, coating it more and more with your juices.'
+			gs 'arousal', 'cuni', 5, 'lesbian'
+			gs 'stat'
+			act '69':
+				*clr & cla
+				'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/girl/sonia/sex/home/bedroom/strapon/69.jpg"></center>'
+				'You start to feel a little tired and roll off her. "I want to lick your pussy while you lick mine," you tell her. She climbs up and straddles your face now and bends forward to go back to licking your pussy. You lick hers in return. Several minutes of this goes by until her body shudders and she has a orgasm, coating your face in her juices.'
+				killvar '$orgasm_or'
+				$orgasm_txt = 'As she starts to orgasm, it is too much for you, and you feel your own body shake and rock as an orgasm courses through it.'
+				gs 'arousal', 'cuni', 5, 'lesbian'
+				gs 'arousal', 'cuni_give', -5, 'lesbian'
+				gs 'stat'
+				act 'Afterglow':
+					*clr & cla
+					'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/girl/sonia/sex/home/bedroom/strapon/afterglow.jpg"></center>'
+					'She rolls off you, and the two of you lie side by side for several minutes, panting and recovering from the sex you just had. As you start to get up to get dressed, she pulls you over, and the two you share a long, slow, passionate kiss for several minutes before you break apart, sitting up together.'
+					gs 'arousal', 'foreplay', 5, 'lesbian'
+					gs 'arousal', 'end'
+					gs 'stat'
+					act 'Get dressed':
+						*clr & cla
+						minut += 5
+						soniaQW['sex'] = 1
+						gs 'stat'
+						'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/girl/sonia/sex/home/bedroom/strapon/selfie.jpg"></center>'
+						'Once you are both sitting, Sonia grabs her phone and takes a selfie of the two of you, your faces still glistening with each other''s pussy juices. The two of you get dressed again. "Did you have fun?" you ask her.'
+						*nl
+						if strapanal = 1:
+							'She grins. "I feel amazing! That was great, I loved it." Then she blushes a bit as she realizes how much she is gushing about how much she enjoyed it.'
+							'You smile at her. "Even having your butt fucked?" you ask.'
+							'She blushes deeply and nods. "Yeah, I even liked that. Even if my ass hurts a little, I still had fun."'
+							'You give her a quick kiss. "I had fun too, but I should get going. It''s late."'
+						elseif strapanal = 2:
+							'She grins. "I feel amazing! That was great, I loved it." Then she blushes a bit as she realizes how much she is gushing about how much she enjoyed it.'
+							'You smile at her. "Even having your butt fucked?" you ask.'
+							'She blushes and purses her lips like maybe it wasn''t amazing. "Yeah, even that at first. It hurt a little but then started to feel good, until you got rougher. My ass feels like it''s on fire now," she says a little sourly.'
+							'You give her a quick kiss. "I''m sorry, I just got carried away. But as you get used to it, it won''t hurt anymore and just feel good," you assure her.'
+							'She gives a slightly dubious look. She obviously isn''t convinced but isn''t willing to argue, so she just settles on a nod. You give her another kiss. "Trust me, but I need to get going. It''s late."'
+						else
+							'She grins. "I feel amazing! That was great, I loved it." Then she blushes a bit as she realizes how much she is gushing about how much she enjoyed it.'
+							'You give her a quick kiss. "I had fun too, but I should get going. It''s late."'
+						end
+						*nl
+						'Once you are both dressed and cleaned up, she walks you to her front door. "Night, <<$pcs_nickname>>."'
+						'You tell her, "Night." Then you walk out. She closes the door behind you, and you hear it lock. You turn and walk to the street.'
+						killvar 'strapanal'
+						act 'Leave': gt 'pav_residential'
+					end
+				end
+			end
+		end
+	end
+end
+
+--- soniaev1 ---------------------------------

+ 574 - 123
locations/soniahome.qsrc

@@ -1,5 +1,4 @@
 # soniahome
-
 !! Sonia Ivanko
 !! Parshikov Ivanko - father
 !! Shulyov Ivanko - older brother
@@ -9,6 +8,11 @@
 !! soniaQW['tkachenko'] quest tracker
 !! soniaQW['parshikov'] quest tracker
 !! soniaQW['shulyov'] quest tracker
+!! soniaQW['hate'] = 1 - Blocks Sonia''s story arc as she blames Sveta and now hates her
+!! soniaQW['slut'] = 1 - means Sonia is a slut now
+!! soniaQW['happyslut'] = 1 - means Sonia is now happy being a slut
+!! soniaQW['redemp'] = 1 - means Sonia is starting a redemption path, not used yet
+!! soniaQW['fallenangel'] = 1 - used after sonia has fallen for special chat options
 
 !! soniaQW['vitek_bj_watched'] = 1 - means you watched Sonia give Vitek a blowjob at the disco
 
@@ -34,36 +38,171 @@ if $ARGS[0] = 'home':
 		menu_off = 1
 		gs 'stat'
 		'You go to Sonia''s house and knock on the door.'
-		if soniaPS > 0:
+		if soniaQW['hate'] = 1:
 			*clr & cla
 			'<center><img <<$set_imgh>> src="images/locations/pavlovsk/resident/soniahome/tkachenko.jpg"></center>'
-			'You stand outside the Ivanko household, knocking on the door. It''s quickly answered by Sonia''s mother, who has an unfriendly, serious look on her face. "Sonia doesn''t want to see anyone, so stop bothering her!" she says before closing the door in your face.'
+			if soniaQW['tkachenko'] = 0:
+				soniaQW['tkachenko'] = 1
+				'You stand outside the Ivanko household, knocking on the door. It''s quickly answered by Sonia''s mother, who has an unfriendly, serious look on her face. "Hello. Can I help you?" she asks.'
+				'You smile at her. "Hi, I''m <<$pcs_nickname>>, one of Sonia''s classmates. Is she here?"'
+				'She frowns at you. It seems she doesn''t care for your casual attitude. "I am Tkachenko Ivanko, but you can call me Mrs Ivanko. Who are you exactly?"'
+				'You keep your smile. "Sorry, Mrs Ivanko. I''m <<$pcs_firstname>> <<$pcs_lastname>>."'
+				'She nods a little. "Sonia says she never wants to see you again, so please leave and don''t come back!" she says before closing the door in your face.'
+			else
+				'You stand outside the Ivanko household, knocking on the door. It''s quickly answered by Sonia''s mother, who has an unfriendly, serious look on her face. "Sonia says she never wants to see you again, so stop bothering her!" she says before closing the door in your face.'
+			end
 			act 'Leave': gt 'pav_residential'
+		elseif soniaQW['slut'] > 0:
+			*clr & cla
+			if daystart >= soniaQW['fallday'] + 7:
+				*clr & cla
+				'<center><img <<$set_imgh>> src="images/locations/pavlovsk/resident/soniahome/tkachenko.jpg"></center>'
+				if soniaQW['tkachenko'] = 0:
+					soniaQW['tkachenko'] = 1
+					'You stand outside the Ivanko household, knocking on the door. It''s quickly answered by Sonia''s mother, who has an unfriendly, serious look on her face. "Hello. Can I help you?" she asks.'
+					'You smile at her. "Hi, I''m <<$pcs_nickname>>, one of Sonia''s classmates. Is she here?"'
+					'She frowns at you. It seems she doesn''t care for your casual attitude. "I am Tkachenko Ivanko, but you can call me Mrs Ivanko. Who are you exactly?"'
+					'You keep your smile. "Sorry, Mrs Ivanko. I''m <<$pcs_firstname>> <<$pcs_lastname>>."'
+					'She nods a little. "Sonia doesn''t want to see anyone!" she says before closing the door in your face.'
+					act 'Leave': gt 'pav_residential'
+				else
+					'You stand outside the Ivanko household, knocking on the door. It''s quickly answered by Sonia''s mother, who has an unfriendly, serious look on her face. "Sonia doesn''t want to see anyone!" she says before closing the door in your face.'
+					act 'Leave': gt 'pav_residential'
+				end
+			elseif soniaQW['fallenangel'] = 1:
+				*clr & cla
+				'<center><img <<$set_imgh>> src="images/locations/pavlovsk/resident/soniahome/tkachenko.jpg"></center>'
+				'You stand outside the Ivanko household, knocking on the door. It''s quickly answered by Sonia''s mother, who has an unfriendly, serious look on her face. Then frowns and sighs holding the door open. "Sonia is in her room, I don''t know what is wrong with that girl but she won''t leave her room anymore." Once you enter she closes the door.'
+				act 'Go to Sonia''s room': gt 'soniahome', 'sonia_chat_special'
+			else
+				temprand = rand(1,4)
+				if temprand = 1:
+					'<center><img <<$set_imgh>> src="images/locations/pavlovsk/resident/soniahome/tkachenko.jpg"></center>'
+					'You stand outside the Ivanko household, knocking on the door. It''s quickly answered by Sonia''s mother, who has an unfriendly, serious look on her face. "Sonia isn''t here, but she should be home later. You can call her then," she says before politely closing the door, not inviting you in.'
+					act 'Leave': gt 'pav_residential'
+				elseif temprand = 2:
+					'<center><img <<$set_imgh>> src="images/locations/pavlovsk/resident/soniahome/tkachenko.jpg"></center>'
+					'You stand outside the Ivanko household, knocking on the door. It''s quickly answered by Sonia''s mother, who has an unfriendly, serious look on her face. "Hello again, <<$pcs_firstname>>. Sonia is in her room."'
+					'"Thank you, Mrs Ivanko," you politely reply to keep her happy, and she lets you in before closing the door behind you.'
+					act 'Enter':  gt 'soniahome', 'hallway'
+				elseif temprand = 3:
+					'<center><img <<$set_imgh>> src="images/locations/pavlovsk/resident/soniahome/shulyov.jpg"></center>'
+					if soniaQW['shulyov'] = 0:
+						soniaQW['shulyov'] = 1
+						if pcs_hotcat >= 6:
+							'You stand outside the Ivanko household, knocking on the door. It''s quickly answered by a young, good-looking man about your sister''s age who has a friendly smile. "Hello. Can I help you?" he asks as he looks you over with hungry eyes.'
+							'You smile at him. "Hi, I''m <<$pcs_nickname>>, one of Sonia''s classmates. Is she here?"'
+							'He nods and stands aside. "My name is Shulyov. A beautiful thing like you shouldn''t be hanging out with a slut like my sister, it''s bad for your rep."'
+							'You look a little surprised by what he said. "How do you..."'
+							*nl
+							'Then he shrugs and interrupts you. "Anyone remotely in the know, knows all about my sisters antics, can''t say I am remotely surprised. I always knew she was a slut in the making." He says in disgust like he blames her for what happened.'
+							'You frown to him. "That''s not very nice, so is she here or not?" You demand.'
+							'He snorts. "Yeah she is in her room. By all means, come in and make yourself comfortable." Once you''re inside, he closes the door behind you. He stands there momentarily, checking you out before he finally walks away.'
+						else
+							'You stand outside the Ivanko household, knocking on the door. It''s quickly answered by a young, good-looking man about your sister''s age who has a friendly smile. "Hello. Can I help you?" he asks.'
+							'You smile at him. "Hi, I''m <<$pcs_nickname>>, one of Sonia''s classmates. Is she here?"'
+							'He nods and stands aside. "My name is Shulyov. You shouldn''t be hanging out with a slut like my sister, it''s bad for your rep."'
+							'You look a little surprised by what he said. "How do you..."'
+							*nl
+							'Then he shrugs and interrupts you. "Anyone remotely in the know, knows all about my sisters antics, can''t say I am remotely surprised. I always knew she was a slut in the making." He says in disgust like he blames her for what happened.'
+							'You frown to him. "That''s not very nice, so is she here or not?" You demand.'
+							'He snorts. "Yeah she is in her room." Once you''re inside, he closes the door behind you.'
+						end
+						act 'Enter':  gt 'soniahome', 'hallway'
+					else
+						if pcs_hotcat >= 6:
+							'You stand outside the Ivanko household, knocking on the door. It''s quickly answered by Shulyov. "Hello again <<$pcs_nickname>>, nice to see you again," he says as he looks you over with hungry eyes.'
+							'You smile at him. "Hi. Is Sonia here?"'
+							'He nods and stands aside. "A beautiful thing like you shouldn''t be hanging out with a slut like my sister, it''s bad for your rep." He says in disgust like he blames her for what happened.'
+							'You frown to him sick of his comments. "Is she here or not?" You demand.'
+							'He snorts. "Yeah she''s in her room. By all means, come in and make yourself comfortable." Once you''re inside, he closes the door behind you. He stands there momentarily, checking you out before he finally walks away.'
+						else
+							'You stand outside the Ivanko household, knocking on the door. It''s quickly answered by Shulyov. "Hello again <<$pcs_nickname>>," he says to you with a bored look on his face.'
+							'You smile at him. "Hi. Is Sonia here?"'
+							'He nods and stands aside. "You shouldn''t be hanging out with a slut like my sister, it''s bad for your rep." He says in disgust like he blames her for what happened.'
+							'You frown to him sick of his comments. "Is she here or not?" You demand.'
+							'He snorts. "Yeah she is in her room." Once you''re inside, he closes the door behind you.'
+						end
+						act 'Enter': gt 'soniahome', 'hallway'
+					end
+				else
+					if soniaQW['shulyov'] = 0:
+						soniaQW['shulyov'] = 1
+						if pcs_hotcat >= 6:
+							'You stand outside the Ivanko household, knocking on the door. It''s quickly answered by a young, good-looking man about your sister''s age who has a friendly smile. "Hello. Can I help you?" he asks as he looks you over with hungry eyes.'
+							'You smile at him. "Hi, I''m <<$pcs_nickname>>, one of Sonia''s classmates. Is she here?"'
+							'He nods and stands aside. "My name is Shulyov. A beautiful thing like you shouldn''t be hanging out with a slut like my sister, it''s bad for your rep."'
+							'You look a little surprised by what he said. "How do you..."'
+							*nl
+							'Then he shrugs and interrupts you. "Anyone remotely in the know, knows all about my sisters antics, can''t say I am remotely surprised. I always knew she was a slut in the making." He says in disgust like he blames her for what happened.'
+							'You frown to him. "That''s not very nice, so is she here or not?" You demand.'
+							'He shakes his head. "No she is likely out letting a bunch of guys gangbang her or something again. But by all means, come in and make yourself comfortable. We could get to know each other."'
+							'You shake your head no. "No thanks, then you turn and walk off." He stands there momentarily, checking you out as you walk away, before he finally closes the door.'
+						else
+							'You stand outside the Ivanko household, knocking on the door. It''s quickly answered by a young, good-looking man about your sister''s age who has a friendly smile. "Hello. Can I help you?" he asks.'
+							'You smile at him. "Hi, I''m <<$pcs_nickname>>, one of Sonia''s classmates. Is she here?"'
+							'He nods and stands aside. "My name is Shulyov. You shouldn''t be hanging out with a slut like my sister, it''s bad for your rep."'
+							'You look a little surprised by what he said. "How do you..."'
+							*nl
+							'Then he shrugs and interrupts you. "Anyone remotely in the know, knows all about my sisters antics, can''t say I am remotely surprised. I always knew she was a slut in the making." He says in disgust like he blames her for what happened.'
+							'You frown to him. "That''s not very nice, so is she here or not?" You demand.'
+							'He shakes his head. "No she is likely out letting a bunch of guys gangbang her or something again. So why don''t you go look for her somewhere else." You shake your head and then walk off as he closes the door.'
+						end
+						act 'Leave': gt 'pav_residential'
+					else
+						if pcs_hotcat >= 6:
+							'You stand outside the Ivanko household, knocking on the door. It''s quickly answered by Shulyov. "Hello again <<$pcs_nickname>>, nice to see you again," he says as he looks you over with hungry eyes.'
+							'You smile at him. "Hi. Is Sonia here?"'
+							'He nods and stands aside. "A beautiful thing like you shouldn''t be hanging out with a slut like my sister, it''s bad for your rep." He says in disgust like he blames her for what happened.'
+							*nl
+							'You frown to him sick of his comments. "Is she here or not?" You demand.'
+							'He shakes his head. "No she is likely out letting a bunch of guys gangbang her or something again. But by all means, come in and make yourself comfortable. We could get to know each other."'
+							'You shake your head no. "No thanks, then you turn and walk off." He stands there momentarily, checking you out as you walk away, before he finally closes the door.'
+						else
+							'You stand outside the Ivanko household, knocking on the door. It''s quickly answered by Shulyov. "Hello again <<$pcs_nickname>>," he says to you with a bored look on his face.'
+							'You smile at him. "Hi. Is Sonia here?"'
+							'He nods and stands aside. "You shouldn''t be hanging out with a slut like my sister, it''s bad for your rep." He says in disgust like he blames her for what happened.'
+							'You frown to him sick of his comments. "Is she here or not?" You demand.'
+							'He shakes his head. "No she is likely out letting a bunch of guys gangbang her or something again. So why don''t you go look for her somewhere else." You shake your head and then walk off as he closes the door.'
+						end
+						act 'Leave': gt 'pav_residential'
+					end
+				end
+			end
 		elseif rand(0,3) = 0:
 			*clr & cla
 			'<center><img <<$set_imgh>> src="images/locations/pavlovsk/resident/soniahome/tkachenko.jpg"></center>'
-			'You stand outside the Ivanko household, knocking on the door. It''s quickly answered by Sonia''s mother, who has an unfriendly, serious look on her face. "Sonia isn''t here, but she should be home later. You can call her then," she says before politely closing the door, not inviting you in.'
+			if soniaQW['tkachenko'] = 0:
+				soniaQW['tkachenko'] = 1
+				'You stand outside the Ivanko household, knocking on the door. It''s quickly answered by Sonia''s mother, who has an unfriendly, serious look on her face. "Hello. Can I help you?" she asks.'
+				'You smile at her. "Hi, I''m <<$pcs_nickname>>, one of Sonia''s classmates. Is she here?"'
+				'She frowns at you. It seems she doesn''t care for your casual attitude. "I am Tkachenko Ivanko, but you can call me Mrs Ivanko. Who are you exactly?"'
+				'You keep your smile. "Sorry, Mrs Ivanko. I''m <<$pcs_firstname>> <<$pcs_lastname>>."'
+				'She nods a little. "Sonia isn''t here, but she should be home later. You can call her then," she says before closing the door in your face.'
+			else
+				'You stand outside the Ivanko household, knocking on the door. It''s quickly answered by Sonia''s mother, who has an unfriendly, serious look on her face. "Sonia isn''t here, but she should be home later. You can call her then," she says before politely closing the door, not inviting you in.'
+			end
 			act 'Leave': gt 'pav_residential'
-		elseif rand(0,2) = 0:
+		elseif rand(0, 2) = 0:
 			*clr & cla
 			'<center><img <<$set_imgh>> src="images/locations/pavlovsk/resident/soniahome/tkachenko.jpg"></center>'
 			if soniaQW['tkachenko'] = 0:
+				soniaQW['tkachenko'] = 1
 				'You stand outside the Ivanko household, knocking on the door. It''s quickly answered by Sonia''s mother, who has an unfriendly, serious look on her face. "Hello. Can I help you?" she asks.'
 				'You smile at her. "Hi, I''m <<$pcs_nickname>>, one of Sonia''s classmates. Is she here?"'
 				'She frowns at you. It seems she doesn''t care for your casual attitude. "I am Tkachenko Ivanko, but you can call me Mrs Ivanko. Who are you exactly?"'
 				'You keep your smile. "Sorry, Mrs Ivanko. I''m <<$pcs_firstname>> <<$pcs_lastname>>."'
 				'She nods a little. "Better. Young ladies should have proper manners after all. Sonia is in her room." She stands aside to let you in before she closes the door.'
-				act 'Enter': gt 'soniahome','hallway'
 			else
 				'You stand outside the Ivanko household, knocking on the door. It''s quickly answered by Sonia''s mother, who has an unfriendly, serious look on her face. "Hello again, <<$pcs_firstname>>. Sonia is in her room."'
 				'"Thank you, Mrs Ivanko," you politely reply to keep her happy, and she lets you in before closing the door behind you.'
-				soniaQW['tkachenko'] = 1
-				act 'Enter': gt 'soniahome','hallway'
 			end
+			act 'Enter':  gt 'soniahome', 'hallway'
 		elseif rand(0,1) = 0:
 			*clr & cla
 			'<center><img <<$set_imgh>> src="images/locations/pavlovsk/resident/soniahome/shulyov.jpg"></center>'
 			if soniaQW['shulyov'] = 0:
+				soniaQW['shulyov'] = 1
 				if pcs_hotcat >= 6:
 					'You stand outside the Ivanko household, knocking on the door. It''s quickly answered by a young, good-looking man about your sister''s age who has a friendly smile. "Hello. Can I help you?" he asks as he looks you over with hungry eyes.'
 					'You smile at him. "Hi, I''m <<$pcs_nickname>>, one of Sonia''s classmates. Is she here?"'
@@ -75,21 +214,21 @@ if $ARGS[0] = 'home':
 				end
 			else
 				if pcs_hotcat >= 6:
-					'You stand outside the Ivanko household, knocking on the door. It''s quickly answered by a young, good-looking man about your sister''s age who has a friendly smile. "Hello again <<$pcs_nickname>>, nice to see you," he says as he looks you over with hungry eyes.'
+					'You stand outside the Ivanko household, knocking on the door. It''s quickly answered by Shulyov who has a friendly smile. "Hello again <<$pcs_nickname>>, nice to see you," he says as he looks you over with hungry eyes.'
 					'You smile at him. "Hi. Is Sonia here?"'
 					'He nods and stands aside. "She''s in her room. By all means, come in and make yourself comfortable." Once you''re inside, he closes the door behind you. He stands there momentarily, checking you out before he finally walks away.'
 				else
-					'You stand outside the Ivanko household, knocking on the door. It''s quickly answered by a young, good-looking man about your sister''s age who has a friendly smile. "She''s in her room," he says while hooking his thumb back over his shoulder. He waits for you to walk in before closing the door and walking away.'
+					'You stand outside the Ivanko household, knocking on the door. It''s quickly answered by Shulyov with a bored look on his face, "Yeah?"'
+					'You smile at him. "Hi. Is Sonia here?"'
+					'He nods and stands aside. "She''s in her room," he says while hooking his thumb back over his shoulder. He waits for you to walk in before closing the door and walking away.'
 				end
-				act 'Enter':gt 'soniahome','hallway'
 			end
-			soniaQW['shulyov'] = 1
-			act 'Enter': gt 'soniahome','hallway'
+			act 'Enter':  gt 'soniahome', 'hallway'
 		else
 			'<center><img <<$set_imgh>> src="images/characters/shared/headshots_main/big25.jpg"></center>'
 			'You stand outside the Ivanko household, hoping that Sonia will be the one to come open the door.'
 			'To your relief, Sonia answers the door with a smile. "Hi <<$pcs_nickname>>. Come in." She closes the door and heads for her room as you walk inside.'
-			act 'Enter': gt 'soniahome','hallway'
+			act 'Enter':  gt 'soniahome', 'hallway'
 		end
 	end
 end
@@ -107,12 +246,12 @@ if $ARGS[0] = 'hallway':
 	'<center><img <<$set_imgh>> src="images/locations/pavlovsk/resident/soniahome/hall.jpg"></center>'
 	'You enter a small bright hallway with a door to the lounge on your right and a staircase at the end leading to the bedrooms and bathroom upstairs. There''s also a door to the kitchen in front of you.'
 	act 'Leave': gt 'pav_residential'
-	act 'Go to Sonia''s bedroom': gt 'soniahome','sonia_room'
-	act 'Brother''s Room': gt 'soniahome','soniabrother'
-	act 'Parents Room': gt 'soniahome','soniaparents'
-	act 'Living Room': gt 'soniahome','livingroom'
-	act 'Go to the bathroom': gt 'soniahome','bathroom'
-	act 'Go to the kitchen': gt 'soniahome','kitchen'
+	act 'Go to Sonia''s bedroom': gt 'soniahome', 'sonia_room'
+	act 'Go to Brother''s Room': gt 'soniahome', 'soniabrother'
+	act 'Go to Parents Room': gt 'soniahome', 'soniaparents'
+	act 'Go to Living Room': gt 'soniahome', 'livingroom'
+	act 'Go to the bathroom': gt 'soniahome', 'bathroom'
+	act 'Go to the kitchen': gt 'soniahome', 'kitchen'
 end
 
 if $ARGS[0] = 'bathroom':
@@ -148,7 +287,7 @@ if $ARGS[0] = 'bathroom':
 	dynamic $tampon
 	dynamic $basin
 	gs 'din_van', 'prvt_pee'
-	act 'Go to the hallway':gt 'soniahome','hallway'
+	act 'Go to the hallway': gt 'soniahome', 'hallway'
 end
 
 if $ARGS[0] = 'kitchen':
@@ -161,7 +300,7 @@ if $ARGS[0] = 'kitchen':
 	'<center><b><font color = maroon>Kitchen</font></b></center>'
 	'<center><img <<$set_imgh>> src="images/locations/pavlovsk/resident/soniahome/kitchen.jpg"></center>'
 	'As you enter the kitchen, you notice that whilst it isn''t large, it''s very tastefully done and has everything needed. It also has a dining table adjacent to it for family meals.'
-	act 'Go to the hallway':gt 'soniahome','hallway'
+	act 'Go to the hallway': gt 'soniahome', 'hallway'
 	act 'Look in the fridge': gt 'soniahome', 'fridge'
 	dynamic $fill_bottle
 	dynamic $driwater
@@ -171,43 +310,43 @@ if $ARGS[0] = 'fridge':
 	menu_off = 1
 	*clr & cla
 	minut += 1
-	if ivankofood_day ! daystart:
-		ivankosup_count = 1
-		ivankolefto_count = 1
-		ivankowater_count = 1
-		ivankosanw_count = 1
+	if ivanko['food_day'] ! daystart:
+		ivanko['soup'] = 1
+		ivanko['leftovers'] = 1
+		ivanko['water'] = 1
+		ivanko['sandwich'] = 1
 	end
 	gs 'stat'
 
-	if ivankolefto_count >= 1:
-		$ivanko_lefto = ' some left overs'
+	if ivanko['leftovers'] >= 1:
+		$ivanko['leftover_txt'] = ' some leftovers'
 	else
-		$ivanko_lefto = ''
+		$ivanko['leftover_txt'] = ''
 	end
-	if ivankosup_count >= 1:
-		$ivanko_sup = ' some soup'
+	if ivanko['soup'] >= 1:
+		$ivanko['soup_txt'] = ' some soup'
 	else
-		$ivanko_sup = ''
+		$ivanko['soup_txt'] = ''
 	end
-	if ivankowater_count >= 1:
-		$ivanko_water = ' some bottled water'
+	if ivanko['water'] >= 1:
+		$ivanko['water_txt'] = ' some bottled water'
 	else
-		$ivanko_water = ''
+		$ivanko['water_txt'] = ''
 	end
-	if ivankosanw_count >= 1:
-		$ivanko_sanw = ' some stuff to make a sandwich'
+	if ivanko['sandwich'] >= 1:
+		$ivanko['sandwich_txt'] = ' some stuff to make a sandwich'
 	else
-		$ivanko_sanw = ''
+		$ivanko['sandwich_txt'] = ''
 	end
 	'<center><img <<$set_imgh>> src="images/shared/home/kitchen/fridge.jpg"></center>'
-	'You open the fridge and see:<<$Sonia_tea>><<$Sonia_water>><<$Sonia_sup>><<$Sonia_lefto>><<$Sonia_sanw>>'
-	act 'Close the refrigerator': gt 'soniahome','kitchen'
-	if ivankolefto_count > 0:
-		act 'Eat some left overs':
+	'You open the fridge and see:<<$ivanko[''water_txt'']>><<$ivanko[''soup_txt'']>><<$ivanko[''leftover'']>><<$ivanko[''sandwich_txt'']>>'
+	act 'Close the refrigerator':  gt 'soniahome', 'kitchen'
+	if ivanko['leftovers'] > 0:
+		act 'Eat some leftovers':
 			*clr & cla
 			minut += 5
-			ivankofood_day = daystart
-			ivankolefto_count -= 1
+			ivanko['food_day'] = daystart
+			ivanko['leftovers'] -= 1
 			gs 'stat'
 			'<center><img <<$set_imgh>> src="images/shared/food/leftovers.jpg"></center>'
 			pcs_health += 10
@@ -223,14 +362,14 @@ if $ARGS[0] = 'fridge':
 			gs 'cum_cleanup'
 			pcs_breath = 0
 			'It seems to be leftovers from last night''s dinner. Unfortunately, it isn''t very good, even for leftovers. You doubt it was much better when it was fresh.'
-			act 'Continue': gt 'soniahome','kitchen'
+			act 'Continue':  gt 'soniahome', 'kitchen'
 		end
-	elseif ivankowater_count >= 0:
+	elseif ivanko['water'] >= 0:
 		act 'Have some water':
 			*clr & cla
 			minut += 5
-			ivankofood_day = daystart
-			ivankowater_count -= 1
+			ivanko['food_day'] = daystart
+			ivanko['water'] -= 1
 			gs 'stat'
 			'<center><img <<$set_imgh>> src="images/shared/food/waterbottle1.jpg"></center>'
 			pcs_health += 10
@@ -246,14 +385,14 @@ if $ARGS[0] = 'fridge':
 			gs 'cum_cleanup'
 			pcs_breath = 0
 			'You drink some bottled water.'
-			act 'Continue': gt 'soniahome','kitchen'
+			act 'Continue':  gt 'soniahome', 'kitchen'
 		end
-	elseif ivankosup_count >= 0:
+	elseif ivanko['soup'] >= 0:
 		act 'Have some soup':
 			*clr & cla
 			minut += 5
-			ivankofood_day = daystart
-			ivankosup_count -= 1
+			ivanko['food_day'] = daystart
+			ivanko['soup'] -= 1
 			gs 'stat'
 			'<center><img <<$set_imgh>> src="images/shared/food/soup.jpg"></center>'
 			pcs_health += 10
@@ -269,14 +408,14 @@ if $ARGS[0] = 'fridge':
 			gs 'cum_cleanup'
 			pcs_breath = 0
 			'You find some soup in the fridge and spoon out a bowlful to eat. Unfortunately, it isn''t very good, and you feel that it was sitting there too long.'
-			act 'Continue': gt 'soniahome','kitchen'
+			act 'Continue': gt 'soniahome', 'kitchen'
 		end
-	elseif ivankosanw_count >= 0:
+	elseif ivanko['sandwich'] >= 0:
 		act 'Make a sandwich':
 			*clr & cla
 			minut += 5
-			ivankofood_day = daystart
-			ivankosanw_count -= 1
+			ivanko['food_day'] = daystart
+			ivanko['sandwich'] -= 1
 			gs 'stat'
 			'<center><img <<$set_imgh>> src="images/shared/food/reuben.jpg"></center>'
 			pcs_health += 10
@@ -292,7 +431,7 @@ if $ARGS[0] = 'fridge':
 			gs 'cum_cleanup'
 			pcs_breath = 0
 			'You get all the stuff you need from the fridge, get some bread out of the cabinet and make yourself a sandwich.'
-			act 'Continue': gt 'soniahome','kitchen'
+			act 'Continue':  gt 'soniahome', 'kitchen'
 		end
 	end
 end
@@ -314,7 +453,7 @@ if $ARGS[0] = 'livingroom':
 	'<center><b><font color = maroon>Living room</font></b></center>'
 	'<center><img <<$set_imgh>> src="images/locations/pavlovsk/resident/soniahome/living_room.jpg"></center>'
 	'You walk into a small but comfortable lounge which is very clean and tidy. You see the TV in the corner and a cozy family settee on the opposite wall facing a fireplace, giving the room a warm and comfortable look.'
-	act 'Leave':gt 'soniahome','hallway'
+	act 'Leave': gt 'soniahome', 'hallway'
 end
 
 if $ARGS[0] = 'soniaparents':
@@ -327,32 +466,26 @@ if $ARGS[0] = 'soniaparents':
 	'<center><b><font color = maroon>Sonia''s parent''s room</font></b></center>'
 	'<center><img <<$set_imgh>> src="images/locations/pavlovsk/resident/soniahome/parents_bedroom.jpg"></center>'
 	'You look into Sonia''s parents'' bedroom and see that, as with the rest of the house, it''s spotless, tidy and tastefully decorated, making the most of the available space. There''s a wardrobe to your right and the bed on the left, with a chest of drawers and a beautiful fireplace.'
-	if hour < 6:
-		gt 'soniahome', 'timecheck'
-	elseif hour > 22:
-		gt 'soniahome', 'timecheck'
+
+	if hour < 7 or hour > 22:
+		'You look into the bedroom and see Sonia''s parents asleep. Not wanting to disturb them, you close the door and leave.'
+		act 'Leave': gt 'soniahome', 'hallway'
 	else
-		if hour < 7 or hour > 22:
-			'You look into the bedroom and see Sonia''s parents asleep. Not wanting to disturb them, you close the door and leave.'
-			act 'Leave':gt 'soniahome','hallway'
-		else
-			'Since nobody''s here, you should probably leave, or you could take a look around if you''re that curious.'
-			act 'Leave':gt 'soniahome','hallway'
-			act 'Look around':
-				*clr & cla
-				minut += 10
-				'<center><b><font color = maroon>Sonia''s parent''s room</font></b></center>'
-				'<center><img <<$set_imgh>> src="images/locations/pavlovsk/resident/soniahome/momsdrawer.jpg"></center>'
-				'You snoop around, opening drawers and looking in the closet. Even though you hope to find something, you don''t see anything interesting. The room is perfectly organized, with each drawer containing a type of clothing neatly folded up. Other than that, there seems to be nothing of interest.'
-				act 'Leave':gt 'soniahome','hallway'
-			end
+		'Since nobody''s here, you should probably leave, or you could take a look around if you''re that curious.'
+		act 'Leave': gt 'soniahome', 'hallway'
+		act 'Look around':
+			*clr & cla
+			minut += 10
+			'<center><b><font color = maroon>Sonia''s parent''s room</font></b></center>'
+			'<center><img <<$set_imgh>> src="images/locations/pavlovsk/resident/soniahome/momsdrawer.jpg"></center>'
+			'You snoop around, opening drawers and looking in the closet. Even though you hope to find something, you don''t see anything interesting. The room is perfectly organized, with each drawer containing a type of clothing neatly folded up. Other than that, there seems to be nothing of interest.'
+			act 'Leave': gt 'soniahome', 'hallway'
 		end
 	end
 end
 
 if $ARGS[0] = 'soniabrother':
 	gs 'shortgs', 'setloc', 'soniahome', $ARGS[0]
-
 	menu_off = 0
 	CLOSE ALL
 	*clr & cla
@@ -361,7 +494,7 @@ if $ARGS[0] = 'soniabrother':
 	'<center><b><font color = maroon>Shulyov''s room</font></b></center>'
 	'<center><img <<$set_imgh>> src="images/locations/pavlovsk/resident/soniahome/hall.jpg"></center>'
 	'You try the door but it is locked.'
-	act 'Leave':gt 'soniahome','hallway'
+	act 'Leave': gt 'soniahome', 'hallway'
 end
 
 if $ARGS[0] = 'sonia_room':
@@ -371,23 +504,129 @@ if $ARGS[0] = 'sonia_room':
 	*clr & cla
 	minut += 1
 	gs 'stat'
-	'<center><b><font color = maroon>Vitek''s bedroom</font></b></center>'
-	'<center><img <<$set_imgh>> src="images/locations/pavlovsk/resident/soniahome/sonia_room.jpg"></center>'
-	'The first thing you notice about her room is that it''s spotless and orderly. Nothing is out of place. There is a dresser against one wall with several things neatly placed on it, with pictures on the wall above it. The bed is near the center of the room against one wall, and the bed is made with a body pillow leaning against the other pillows. Above the bed is a short string of lights, while a small makeup table with all the makeup lined up in a very orderly fashion sits against another wall.'
-	'<a href="exec:gt ''soniahome'', ''sonia_chat''">Sonia</a> is lying on her bed relaxing.'
-	act 'Go to the hallway':gt 'soniahome','hallway'
-	if $clothingworntype = 'nude': act 'Dress yourself': gs 'shortgs' ,'dress' & gt 'soniahome', 'sonia_room'
+	'<center><b><font color = maroon>Sonia''s bedroom</font></b></center>'
+	if soniaQW['fallenangel'] = 1:
+		'<center><img <<$set_imgh>> src="images/locations/pavlovsk/resident/soniahome/sonia_bedroom/soniacrying.jpg"></center>'
+		'The first thing you notice about her room is <a href="exec:gt ''soniahome'', ''sonia_chat_special''">Sonia</a> is lying on her bed crying. The next thing you notice is that it''s spotless and orderly. Nothing is out of place. There is a dresser against one wall with several things neatly placed on it, with pictures on the wall above it. The bed is near the center of the room against one wall, and the bed is made with a body pillow leaning against the other pillows. Above the bed is a short string of lights, while a small makeup table with all the makeup lined up in a very orderly fashion sits against another wall.'
+	elseif soniaQW['fallenangel'] <= 3:
+		'<center><img <<$set_imgh>> src="images/locations/pavlovsk/resident/soniahome/sonia_room.jpg"></center>'
+		'The first thing you notice about her room is that it''s spotless and orderly. Nothing is out of place. There is a dresser against one wall with several things neatly placed on it, with pictures on the wall above it. The bed is near the center of the room against one wall, and the bed is made with a body pillow leaning against the other pillows. Above the bed is a short string of lights, while a small makeup table with all the makeup lined up in a very orderly fashion sits against another wall.'
+		'<a href="exec:gt ''soniahome'', ''sonia_chat''">Sonia</a> is lying on her bed looking sad, depressed and miserable, at least she is not still crying.'
+	else
+		'<center><img <<$set_imgh>> src="images/locations/pavlovsk/resident/soniahome/sonia_room.jpg"></center>'
+		'The first thing you notice about her room is that it''s spotless and orderly. Nothing is out of place. There is a dresser against one wall with several things neatly placed on it, with pictures on the wall above it. The bed is near the center of the room against one wall, and the bed is made with a body pillow leaning against the other pillows. Above the bed is a short string of lights, while a small makeup table with all the makeup lined up in a very orderly fashion sits against another wall.'
+		'<a href="exec:gt ''soniahome'', ''sonia_chat''">Sonia</a> is lying on her bed relaxing.'
+	end
+	if $clothingworntype = 'nude':
+		act 'Dress yourself': gs 'shortgs', 'dress' & gt 'soniahome', 'sonia_room'
+	else
+		act 'Go to the hallway': gt 'soniahome', 'hallway'
+	end
 end
 
 if $ARGS[0] = 'sonia_chat':
-	if soniaPS > 0:
-		!! This is for post fall Sonia, when her different chats are written it should point at them instead of 'sonia_chat1' as it does now.
-		gt 'soniahome', 'sonia_chat1'
+	if soniaQW['fallenangel'] = 2:
+		gt 'soniahome', 'sonia_chat2'
+	elseif soniaQW['fallenangel'] = 3:
+		gt 'soniahome', 'sonia_chat3'
+	elseif soniaQW['happyslut'] = 1:
+!! This is for when Sonia comes to terms with her new reality
+		gt 'soniahome', 'sonia_chat4'
 	else
 		gt 'soniahome', 'sonia_chat1'
 	end
 end
 
+if $ARGS[0] = 'sonia_chat_special':
+	menu_off = 1
+	*clr & cla
+	soniaQW['fallenangel'] = 2
+	minut += 5
+	gs 'stat'
+	'<center><h4><font color="maroon">Sonia''s Room</font></h4></center>'
+	'<center><img <<$set_imgh>> src="images/locations/pavlovsk/resident/soniahome/sonia_bedroom/soniacrying.jpg"></center>'
+	'You go over and sit on the bed next to Sonia, you lean in a comfort her as best you can. She cries for several more minutes before she stops and looks at you, with puffy eyes and a tear stained face. "Why are you here?"'
+	act 'I wanted to see how you were':
+		*clr & cla
+		gs 'npc_relationship', 'modify', 'A25', 'like'
+		minut += 5
+		'<center><h4><font color="maroon">Sonia''s Room</font></h4></center>'
+		'<center><img <<$set_imgh>> src="images/locations/pavlovsk/resident/soniahome/sonia_bedroom/soniacrying.jpg"></center>'
+		'You give her a hug. "I wanted to see how you were and remind you, you still have a friend."'
+		'She hugs you back fiercely and starts crying again for several more minutes, before she stops again. "Thank you, you don''t know how much that means to me." You talk about what happened to her and what has been going on at school, from time to time she starts crying again, before she finally says. "I just don''t know what I am going to do."'
+		if grupTipe = 4:
+			act 'Tell her you will protect her':
+				*clr & cla
+				minut += 5
+				gs 'npc_relationship', 'modify', 'A25', 'like'
+				gs 'stat'
+				'<center><h4><font color="maroon">Sonia''s Room</font></h4></center>'
+				'<center><img <<$set_imgh>> src="images/locations/pavlovsk/resident/soniahome/sonia_bedroom/soniacrying.jpg"></center>'
+				'"I will try to protect you from the other gopniks but you''ve got to start standing up for yourself too." You tell her firmly.'
+				'She smiles sadly. "I know you would try but we both know you can''t be everywhere and there is way more of them than us two."'
+				'You promise to figure something out, get some of the others to agree, you talk for a while more and finally, she says. "I... I need to be alone again, I just can''t think or talk about this right now, please understand." You assure here you do understand, making her smile to you. Then you make your goodbyes and leave.'
+				act 'Leave': gt 'pav_residential'
+			end
+		end
+		act 'Tell her you will help':
+			*clr & cla
+			soniaQW['redemp'] = 1
+			gs 'npc_relationship', 'modify', 'A25', 'adore'
+			minut += 5
+			gs 'stat'
+			'<center><h4><font color="maroon">Sonia''s Room</font></h4></center>'
+			'<center><img <<$set_imgh>> src="images/locations/pavlovsk/resident/soniahome/sonia_bedroom/soniacrying.jpg"></center>'
+			'"I will help you get through this." You tell her firmly.'
+			'She smiles sadly. "How?"'
+			'You shrug a bit. "I don''t know, but one bad night does not define you. We will just convince the others, we will find a way for them to accept you again."'
+			'You hug it out for a bit and talk about how you might do it without a solid plan but a rough idea, you talk for awhile more and finally she says. "I... I need to be alone again, I just can''t think or talk about this right now, please understand." You assure here you do understand, making her smile to you. Then you make your goodbyes and leave.'
+			act 'Leave': gt 'pav_residential'
+		end
+		act 'Tell her to accept it':
+			*clr & cla
+			minut += 5
+			gs 'stat'
+			'<center><h4><font color="maroon">Sonia''s Room</font></h4></center>'
+			'<center><img <<$set_imgh>> src="images/locations/pavlovsk/resident/soniahome/sonia_bedroom/soniacrying.jpg"></center>'
+			'"Just accept it." You tell her.'
+			'She looks shocked. "What? Accept being seen as the town slut?"'
+			'You shrug a bit. "Look you wanted to walk on the wild side right?" She frowns but nods. "Ok, and you were enjoying yourself until, well your rep was ruined right?"'
+			'She frown a bit more, but then slowly nods. "Yeah... I guess I was." She seems reluctant to admit it now but she does.'
+			'Then you give her a slight smile. "Then own it, be the party girl who just has fun you wanted to be, but on your terms."'
+			*nl
+			'Sonia looks thoughtful for a moment. "I guess, I mean I see your point, but I don''t think it will be that easy."'
+			'You nod in agreement. "I didn''t say it would but it can be done. I mean look at Anushka, she has a hell of a rep. If even half the stuff I have heard is true she has done worse than you, yet she manages to keep things on her terms, so why can''t you?"'
+			'She opens her mouth a couple of times to respond and closes it each time, obviously not sure how to respond. "Yeah... ok you''re right. This won''t be easy but this is my life damnit." She laughs a little but only briefly. "You gave me a lot to think about, but for now I think I would like to be alone if you don''t mind." The two of you hug again and then you say your goodbyes and leave her to ponder what to do next.'
+			act 'Leave': gt 'pav_residential'
+		end
+		if grupTipe = 5 and fame['pav_slut'] > 200:
+			act 'Let''s improve our reputation together':
+				*clr & cla
+				minut += 5
+				gs 'stat'
+				'<center><h4><font color="maroon">Sonia''s Room</font></h4></center>'
+				'<center><img <<$set_imgh>> src="images/locations/pavlovsk/resident/soniahome/sonia_bedroom/soniacrying.jpg"></center>'
+				'"You know you''re not the only one in this mess; just look at me!" You tell her.'
+				'That brings a smile to her face You grin back at her as you continue. "Hey, I''m happy to see you can still smile but that''s my reputation you''re grinning at!"'
+				'"Oh! I''m sorry <<$pcs_nickname>>, I didn''t mean too..." She trails off.'
+				'"Don''t worry about it, I was just joking with you. Look, how about we try and do this together?"'
+				act 'Tell you''ll redeem yourselves together':
+					*clr & cla
+					soniaQW['redemp'] = 1
+					gs 'stat'
+					'<center><h4><font color="maroon">Sonia''s Room</font></h4></center>'
+					'<center><img <<$set_imgh>> src="images/locations/pavlovsk/resident/soniahome/sonia_bedroom/soniacrying.jpg"></center>'
+					'She looks a bit confused so you explain. "Look my reputation is in the gutter too and I''m fed up with getting picked on so how about we help each other and work together so we can rejoin a clique and improve our lives at school?"'
+					'Sonia looks thoughtful for a moment. "Yeah I guess we could do that but I don''t think it will be that easy."'
+					'You nod in agreement. "I didn''t say it would but it can be done if we help each other and stay determined."'
+					'She opens her mouth a couple of times to respond and closes it each time, obviously not sure how to respond. "Yeah... Maybe, at least we can try." She smiles at you and gives you a brief hug. "This won''t be easy but this is our life so yeah let''s do it! However, for now I think I would like to be alone if you don''t mind." The two of you hug again and then you say your goodbyes. As you leave you both ponder how best to approach the mess you''re both in.'
+					act 'Leave': gt 'pav_residential'
+				end
+			end
+		end
+	end
+end
+
 if $ARGS[0] = 'sonia_chat1':
 	menu_off = 1
 	*clr & cla
@@ -396,7 +635,7 @@ if $ARGS[0] = 'sonia_chat1':
 	'<center><h4><font color="maroon">Sonia''s Room</font></h4></center>'
 	'<center><img <<$set_imgh>> src="images/locations/pavlovsk/resident/soniahome/sonia_bedroom/sonia_bed.jpg"></center>'
 	'You sit on the bed next to Sonia and look around her room as she starts chatting about something she recently read about in a magazine.'
-	act 'Stop talking': gt 'soniahome','sonia_room'
+	act 'Stop talking': gt 'soniahome', 'sonia_room'
 	act 'Make small talk':
 		*clr & cla
 		minut += 5
@@ -404,20 +643,7 @@ if $ARGS[0] = 'sonia_chat1':
 		'<center><h4><font color="maroon">Sonia''s Room</font></h4></center>'
 		'<center><img <<$set_imgh>> src="images/locations/pavlovsk/resident/soniahome/sonia_bedroom/sonia_bed.jpg"></center>'
 		'You talk with Sonia about various things, mostly about fashion, your mutual friends, or school in general.'
-		act 'Stop talking': gt 'soniahome','sonia_room'
-		act 'Keep talking': gt 'soniahome', 'sonia_chat1'
-	end
-	act 'Ask about the future':
-		*clr & cla
-		gs 'npc_relationship', 'modify', 'A25', 'like'
-		minut += 5
-		'<center><h4><font color="maroon">Sonia''s Room</font></h4></center>'
-		'<center><img <<$set_imgh>> src="images/locations/pavlovsk/resident/soniahome/sonia_bedroom/sonia_bed.jpg"></center>'
-		'"What do you plan to do after school?" you ask.'
-		'She looks at you with a huge smile. "I want to go to the university in the city. How about you?"'
-		'You shrug. "I haven''t decided yet. What do you plan to study?"'
-		'"Fashion. I want to become a fashion designer," she replies before she launches into a massive rant about what it''s like to be in the fashion industry and what it takes to make it. It seems she''s really researched this and is very passionate about it.'
-		act 'Stop talking': gt 'soniahome','sonia_room'
+		act 'Stop talking': gt 'soniahome', 'sonia_room'
 		act 'Keep talking': gt 'soniahome', 'sonia_chat1'
 	end
 	act 'Ask what she''s been up to':
@@ -429,8 +655,9 @@ if $ARGS[0] = 'sonia_chat1':
 		'She sighs dramatically. "Mostly trying to find some fun and avoid my parents. I think I''ll hang myself if I hear one more speech about how a proper young lady has to act." She ends with a giggle.'
 		'You smile at her. "Well, don''t do that. You have too pretty of a neck to bruise." You both laugh at that. "But seriously, I understand. My mom is insanely overbearing as well."'
 		'The two of you are soon talking about how bad your mothers are. It seems you have a lot in common with overbearing mothers trying to control every aspect of your lives.'
-		act 'Stop talking': gt 'soniahome','sonia_room'
+		act 'Stop talking':  gt 'soniahome', 'sonia_room'
 		act 'Keep talking': gt 'soniahome', 'sonia_chat1'
+	end
 	act 'Ask her about her fashion sense':
 		*clr & cla
 		minut += 15
@@ -438,11 +665,10 @@ if $ARGS[0] = 'sonia_chat1':
 		'<center><img <<$set_imgh>> src="images/locations/pavlovsk/resident/soniahome/sonia_bedroom/sonia_bed.jpg"></center>'
 		'She often wears older clothes, but she somehow always manages to make them work and look stylish. "How do you manage to always look so nice?"'
 		'She smiles. "You mean for someone that has cheaper clothes?" You''re about to protest that you didn''t mean it that way when she stops you. "I learned to sew. At first, it was just to fix tears and later alter clothes so they fit better and look nicer. You would be surprised what you can do with a little effort." She goes on to talk about how she goes about turning fairly plain looking clothes into stylish ones.'
-		act 'Stop talking': gt 'soniahome','sonia_room'
+		act 'Stop talking':  gt 'soniahome', 'sonia_room'
 		act 'Keep talking': gt 'soniahome', 'sonia_chat1'
-		end
 	end
-	if soniafall > 0:
+	if soniaQW['soniafall'] > 0:
 		act 'Ask about hanging out with the gopniks':
 			*clr & cla
 			minut += 5
@@ -452,7 +678,7 @@ if $ARGS[0] = 'sonia_chat1':
 			'"I''m just tired of being the good girl. I want to cut loose, get a little wild and have some fun. What''s wrong with that?" she replies.'
 			'You sit in silence, wondering if you should push things. "Yeah, but you can''t really trust those guys," you meekly reply.'
 			'She rolls her eyes. "I can take care of myself. Just let me have my fun." You''re about to say something, but you can tell it will only cause an argument and decide to drop it.'
-			act 'Stop talking': gt 'soniahome','sonia_room'
+			act 'Stop talking':  gt 'soniahome', 'sonia_room'
 			act 'Keep talking': gt 'soniahome', 'sonia_chat1'
 		end
 	end
@@ -464,7 +690,7 @@ if $ARGS[0] = 'sonia_chat1':
 			'<center><img <<$set_imgh>> src="images/locations/pavlovsk/resident/soniahome/sonia_bedroom/sonia_bed.jpg"></center>'
 			'"So. I met your brother," you state matter of factly.'
 			'"Oh god, don''t fall for anything he says. He''s a total horn dog to the point I can''t count the number of ''girlfriends'' he''s had. He just uses them for sex and tosses them aside, yet they keep coming back to him. Do yourself a favor and stay away from him," she says in a serious tone. You just nod in response, not sure what you could possibly say back to her.'
-			act 'Stop talking': gt 'soniahome','sonia_room'
+			act 'Stop talking':  gt 'soniahome', 'sonia_room'
 			act 'Keep talking': gt 'soniahome', 'sonia_chat1'
 		end
 	end
@@ -484,7 +710,7 @@ if $ARGS[0] = 'sonia_chat1':
 			'"I''m not sure, but I guess I have a few options," you tell her.'
 			'She nods. "Oh. Well, I guess you still have some time left to make up your mind..." she says. She sounds unsure though, as if she doesn''t believe it herself.'
 			'You''re not sure what more to say about it, so you decide to change the subject.'
-			act 'Stop talking': gt 'soniahome','sonia_room'
+			act 'Stop talking':  gt 'soniahome', 'sonia_room'
 			act 'Keep talking': gt 'soniahome', 'sonia_chat1'
 		end
 		act 'Go to the University':
@@ -494,7 +720,7 @@ if $ARGS[0] = 'sonia_chat1':
 			'<center><img <<$set_imgh>> src="images/locations/pavlovsk/resident/soniahome/sonia_bedroom/sonia_bed.jpg"></center>'
 			'You get a little excited. "I''m planning to attend the university too. At least now I''ll know someone there."'
 			'She grins happily. "Maybe we should think about being roommates when we go? As you said, then we would know someone and we already get along. Let''s talk about it some more when the time comes."'
-			act 'Stop talking': gt 'soniahome','sonia_room'
+			act 'Stop talking':  gt 'soniahome', 'sonia_room'
 			act 'Keep talking': gt 'soniahome', 'sonia_chat1'
 		end
 
@@ -520,7 +746,7 @@ if $ARGS[0] = 'sonia_chat1':
 				'You sigh in a way only hopeless romantics do. "Hopefully I can find that special someone and get married soon."'
 				'She smiles, seeing the signs of love. "If he makes you happy, then I''m happy for you."'
 				'You''re not sure what more to say on the topic and decide to change the subject.'
-				act 'Stop talking': gt 'soniahome','sonia_room'
+				act 'Stop talking':  gt 'soniahome', 'sonia_room'
 				act 'Keep talking': gt 'soniahome', 'sonia_chat1'
 			end
 		end
@@ -543,7 +769,7 @@ if $ARGS[0] = 'sonia_chat1':
 			*nl
 			'You smile. "I''m glad you found someone, but it''s a shame he isn''t close. Are you still seeing him?"'
 			'She shakes her head. "We talked about it, but felt it wouldn''t be fair. We still talk, but are free to see other people." She starts talking about her first time with him and how after that, they had sex almost every day until she had to come home. When she finishes her story, she turns to you. "What about you?"'
-			act 'Stop talking': gt 'soniahome','sonia_room'
+			act 'Stop talking':  gt 'soniahome', 'sonia_room'
 			act 'Keep talking': gt 'soniahome', 'sonia_chat1'
 			if Rex_Love = 1 or artemQW['bf'] = 1 or kotovLoveQW = 1 or fedorKozlovQW or NikoVolkovQW >= 5 or (pcs_lover - pcs_girlfriends) > 0:
 				act 'I have a boyfriend': gt 'soniahome', 'boyfriend_chat'
@@ -561,7 +787,7 @@ if $ARGS[0] = 'sonia_chat1':
 			*nl
 			'You smile. "I''m glad you found someone, but it''s a shame he isn''t close. Are you still seeing him?"'
 			'She shakes her head. "We talked about it, but felt it wouldn''t be fair. We still talk, but are free to see other people." She starts talking about her first time with him and how after that, they had sex almost every day until she had to come home. When she finishes her story, she turns to you. "What about you?"'
-			act 'Stop talking': gt 'soniahome','sonia_room'
+			act 'Stop talking':  gt 'soniahome', 'sonia_room'
 			act 'Keep talking': gt 'soniahome', 'sonia_chat1'
 			if Rex_Love = 1 or artemQW['bf'] = 1 or kotovLoveQW = 1 or fedorKozlovQW or NikoVolkovQW >= 5 or (pcs_lover - pcs_girlfriends) > 0:
 				act 'I have a boyfriend': gt 'soniahome', 'boyfriend_chat'
@@ -589,7 +815,7 @@ if $ARGS[0] = 'sonia_chat1':
 					gs 'arousal', 'foreplay', 2, 'lesbian'
 					gs 'arousal', 'end'
 					gs 'stat'
-					act 'Stop talking': gt 'soniahome','sonia_room'
+					act 'Stop talking':  gt 'soniahome', 'sonia_room'
 					act 'Keep talking': gt 'soniahome', 'sonia_chat1'
 				end
 			else
@@ -615,7 +841,7 @@ if $ARGS[0] = 'boyfriend_chat':
 			cla
 			'"Niko," you tell her.'
 			'She smiles at you. "Oh. He seems pretty nice and charming. You know, for one of the gopniks." You talk to her about how great of a guy he is.'
-			act 'Stop talking': gt 'soniahome','sonia_room'
+			act 'Stop talking':  gt 'soniahome', 'sonia_room'
 			act 'Keep talking': gt 'soniahome', 'sonia_chat1'
 		end
 	end
@@ -628,14 +854,14 @@ if $ARGS[0] = 'boyfriend_chat':
 				'You frown at her. "He didn''t have a choice! Those criminals were going to take everything from his family because he couldn''t pay them. He''s not gay!"'
 				'She holds up her hands. "Okay, okay. Sorry. As long as he makes you happy, that''s all that matters," she says, trying to make peace.'
 				'You nod, accepting her apology, and start telling her about how great of a guy he is.'
-				act 'Stop talking': gt 'soniahome','sonia_room'
+				act 'Stop talking':  gt 'soniahome', 'sonia_room'
 				act 'Keep talking': gt 'soniahome', 'sonia_chat1'
 			else
 				'"Fedor," you tell her.'
 				'She arches her brow slightly. "Fedor?" she asks before grinning. "If you were going to date a jock, I would have gone for Lazar. Or maybe Ivan?" she says with a giggle.'
 				'You smile at her. "I like Fedor. He''s sweet and makes me happy. You can have Lazar or Ivan."'
 				'You both giggle before you tell her about how great Fedor is and what an amazing boyfriend he is.'
-				act 'Stop talking': gt 'soniahome','sonia_room'
+				act 'Stop talking':  gt 'soniahome', 'sonia_room'
 				act 'Keep talking': gt 'soniahome', 'sonia_chat1'
 			end
 		end
@@ -647,7 +873,7 @@ if $ARGS[0] = 'boyfriend_chat':
 				'"Vitek," you tell her.'
 				'She seems surprised. "Really? But neither of you said anything... When he and I... You know..."'
 				'You shrug. "He messes around sometimes, but I know he loves me, so I don''t mind." After that the conversation quickly stops, so you decide to change the subject.'
-			elseif soniafall >= 6:
+			elseif soniaQW['soniafall'] >= 6:
 				'"Vitek," you tell her.'
 				'She seems surprised. "Really? I... I''m sorry, but he said he wasn''t seeing anyone and we fooled around." You can tell she''s afraid of how you''ll react, but you know it isn''t her fault.'
 				'You shake your head, not sure what to say. "Let''s just change the subject."'
@@ -656,7 +882,7 @@ if $ARGS[0] = 'boyfriend_chat':
 				'She seems surprised. "Really? I''ve been hanging out with Dan, Vasily and him a little lately and he never once mentioned it."'
 				'You shrug. "I trust him." After that, the conversation quickly stops and you decide to change the subject.'
 			end
-			act 'Stop talking': gt 'soniahome','sonia_room'
+			act 'Stop talking':  gt 'soniahome', 'sonia_room'
 			act 'Keep talking': gt 'soniahome', 'sonia_chat1'
 		end
 	end
@@ -674,7 +900,7 @@ if $ARGS[0] = 'boyfriend_chat':
 				'You shake your head slightly at her comment. "He''s sweet and really nice to me."'
 				'You both giggle before you tell her about how great Artem is and what an amazing boyfriend he is.'
 			end
-			act 'Stop talking': gt 'soniahome','sonia_room'
+			act 'Stop talking':  gt 'soniahome', 'sonia_room'
 			act 'Keep talking': gt 'soniahome', 'sonia_chat1'
 		end
 	end
@@ -687,7 +913,7 @@ if $ARGS[0] = 'boyfriend_chat':
 			*nl
 			'She now has an inquisitive look on her face. "How did you meet him? He''s a few years older than you," she asks.'
 			'You smile at her. "I was invited to his party," you tell her, then add "Okay, he''s friends with my sister. She invited me to his party and that''s where we met." You talk about the night you met him and your first date.'
-			act 'Stop talking': gt 'soniahome','sonia_room'
+			act 'Stop talking':  gt 'soniahome', 'sonia_room'
 			act 'Keep talking': gt 'soniahome', 'sonia_chat1'
 		end
 	end
@@ -709,9 +935,234 @@ if $ARGS[0] = 'tell_about_generic_boyfreind':
 	'"Who?" she asks as she cocks her head slightly.'
 	'You shake your head slightly. "You''ve never met him. I only just met him."'
 	'She smiles. "Just some guy you met, huh?" You laugh before you start telling her about him.'
-	act 'Stop talking': gt 'soniahome','sonia_room'
+	act 'Stop talking':  gt 'soniahome', 'sonia_room'
 	act 'Keep talking': gt 'soniahome', 'sonia_chat1'
 end
 
+if $ARGS[0] = 'sonia_chat2':
+	menu_off = 1
+	*clr & cla
+	minut += 2
+	soniaQW['fallenangel'] = 3
+	gs 'stat'
+	'<center><h4><font color="maroon">Sonia''s Room</font></h4></center>'
+	'<center><img <<$set_imgh>> src="images/locations/pavlovsk/resident/soniahome/sonia_bedroom/sonia_bed.jpg"></center>'
+	'You sit on the bed next to Sonia, she looks at you and gives you a weak smile. You can tell she is still sad and depressed but at least she is not crying anymore at least not at this moment. You know if you want to chat you will have to lead the conversation.'
+	act 'Stop talking':  gt 'soniahome', 'sonia_room'
+	act 'Make small talk':
+		*clr & cla
+		minut += 5
+		gs 'npc_relationship', 'modify', 'A25', 'like'
+		'<center><h4><font color="maroon">Sonia''s Room</font></h4></center>'
+		'<center><img <<$set_imgh>> src="images/locations/pavlovsk/resident/soniahome/sonia_bedroom/sonia_bed.jpg"></center>'
+		'You talk with Sonia about various things, mostly about fashion, your mutual friends, or school in general. She does her best to talk back to you, a few times you can see her eyes water up when talking about friends or school.'
+		act 'Stop talking':  gt 'soniahome', 'sonia_room'
+		act 'Keep talking': gt 'soniahome', 'sonia_chat2'
+	end
+	act 'Ask what she''s been up to':
+		*clr & cla
+		gs 'npc_relationship', 'modify', 'A25', 'like'
+		'<center><h4><font color="maroon">Sonia''s Room</font></h4></center>'
+		'<center><img <<$set_imgh>> src="images/locations/pavlovsk/resident/soniahome/sonia_bedroom/sonia_bed.jpg"></center>'
+		'"So, what have you been up to lately?" you ask.'
+		'She sighs and shrugs. "Trying to make the best of my new reality, since everyone picks on me, I do my best to avoid everyone." She says with a frown.'
+		'You give her an encouraging smile. "You just got to make it till the end of the school year and then you can go to the University and this will all just be a bad memory."'
+		'The two of you are soon talking about how much better things will be at the University.'
+		act 'Stop talking':  gt 'soniahome', 'sonia_room'
+		act 'Keep talking': gt 'soniahome', 'sonia_chat2'
+	end
+	act 'Ask her about her fashion sense':
+		*clr & cla
+		minut += 15
+		'<center><h4><font color="maroon">Sonia''s Room</font></h4></center>'
+		'<center><img <<$set_imgh>> src="images/locations/pavlovsk/resident/soniahome/sonia_bedroom/sonia_bed.jpg"></center>'
+		'She often wears older clothes, but she somehow always manages to make them work and look stylish. "How do you manage to always look so nice?"'
+		'She gives you a sad smile. "You mean for someone that has cheaper clothes?" You''re about to protest that you didn''t mean it that way when she stops you. "I learned to sew. At first, it was just to fix tears and later alter clothes so they fit better and look nicer. You would be surprised what you can do with a little effort." She goes on to talk about how she goes about turning fairly plain looking clothes into stylish ones.'
+		act 'Stop talking':  gt 'soniahome', 'sonia_room'
+		act 'Keep talking': gt 'soniahome', 'sonia_chat2'
+	end
+	if soniaQW['slut'] >= 1:
+		act 'Ask about the gopniks':
+			*clr & cla
+			minut += 5
+			'<center><h4><font color="maroon">Sonia''s Room</font></h4></center>'
+			'<center><img <<$set_imgh>> src="images/locations/pavlovsk/resident/soniahome/sonia_bedroom/sonia_bed.jpg"></center>'
+			'"Are the gopniks still hassling you?" you ask.'
+			'She looks like she is about to cry for a moment when you bring them up but then she gets herself under control. "Not as bad as it was... I have gotten a bit better at avoiding them and I think they are starting to get bored with me... " she replies.'
+			'You sit in silence, wondering if you should push things. "Yeah, they can be total assholes."'
+			'She just nods and you decided it is best to change the subject.'
+			act 'Stop talking':  gt 'soniahome', 'sonia_room'
+			act 'Keep talking': gt 'soniahome', 'sonia_chat2'
+		end
+	end
+	if soniaQW['shulyov'] > 0:
+		act 'Ask about her brother':
+			*clr & cla
+			minut += 5
+			'<center><h4><font color="maroon">Sonia''s Room</font></h4></center>'
+			'<center><img <<$set_imgh>> src="images/locations/pavlovsk/resident/soniahome/sonia_bedroom/sonia_bed.jpg"></center>'
+			'"So. I met your brother," you state matter of factly. She suddenly bursts into tears. You give her a hug. "What''s wrong? what did I say?"'
+			'She sobs for a bit before catching her breath. "He... he says this is all my fault and that I deserved it." You do your best to comfort her but after awhile of just holder her she asks you to leave so she can be alone.'
+			act 'Leave': gt 'pav_residential'
+		end
+	end
+	act 'Ask about the future':
+		*clr & cla
+		minut += 5
+		'<center><h4><font color="maroon">Sonia''s Room</font></h4></center>'
+		'<center><img <<$set_imgh>> src="images/locations/pavlovsk/resident/soniahome/sonia_bedroom/sonia_bed.jpg"></center>'
+		'"What are your plans for after school?" you ask.'
+		'She looks at you with a smile. "Moving far away from here. I still got good grades, more than enough to get into the university in Saint Petersburg. I''m planning to enroll there after school and study fashion design, but my parents want me to become a doctor or a lawyer or get a business degree or something like that."'
+		'Before you can say anything, she turns to you. "What about you? What are your plans for the future?"'
+		act 'I don''t know':
+			*clr & cla
+			minut += 5
+			'<center><h4><font color="maroon">Sonia''s Room</font></h4></center>'
+			'<center><img <<$set_imgh>> src="images/locations/pavlovsk/resident/soniahome/sonia_bedroom/sonia_bed.jpg"></center>'
+			'"I''m not sure, but I guess I have a few options," you tell her.'
+			'She nods. "Oh. Well, I guess you still have some time left to make up your mind..." she says. She sounds unsure though, as if she doesn''t believe it herself.'
+			'You''re not sure what more to say about it, so you decide to change the subject.'
+			act 'Stop talking':  gt 'soniahome', 'sonia_room'
+			act 'Keep talking': gt 'soniahome', 'sonia_chat2'
+		end
+		act 'Go to the University':
+			*clr & cla
+			minut += 5
+			'<center><h4><font color="maroon">Sonia''s Room</font></h4></center>'
+			'<center><img <<$set_imgh>> src="images/locations/pavlovsk/resident/soniahome/sonia_bedroom/sonia_bed.jpg"></center>'
+			'You get a little excited. "I''m planning to attend the university too. At least now I''ll know someone there."'
+			'She grins happily. "Maybe we should think about being roommates when we go? As you said, then we would know someone and we already get along. Let''s talk about it some more when the time comes."'
+			act 'Stop talking':  gt 'soniahome', 'sonia_room'
+			act 'Keep talking': gt 'soniahome', 'sonia_chat2'
+		end
+	end
+	gs 'willpower', 'misc', 'self', 'easy'
+	if will_cost <= pcs_willpwr:
+		act 'Kiss her (<<will_cost>> Willpower)':
+			*clr & cla
+			gs 'npc_relationship', 'modify', 'A25', 'loathe'
+			gs 'npc_relationship', 'modify', 'A25', 'hate'
+!!the double relationship hit is on purpose I want to be a big hit, since right now she has been raped more than once and anyone trying to be sexual with her is going to anger her
+			gs 'willpower', 'pay', 'self'
+			gs 'stat'
+			'<center><h4><font color="maroon">Sonia''s Room</font></h4></center>'
+			'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/girl/sonia/home/bed_kiss.jpg"></center>'
+			'You lean in and try and kiss her, she recoils at once. "What the fuck <<$pcs_nickname>>!"'
+			'You look a bit surprised by her reaction at first. "Sorry I didn''t mean anything by it."'
+			'She gives you a disgusted look. "I can''t believe you of all people would try that after.... after what all has happened to be... get out."'
+			'You try to comfort her, you know you messed up but she stands up and points at the door already starting to cry. "Please leave!" Not wanting to upset her further you get up and leave.'
+			act 'Leave': gt 'pav_residential'
+		end
+	else
+		act 'Kiss her (<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 $ARGS[0] = 'sonia_chat3':
+	menu_off = 1
+	*clr & cla
+	minut += 2
+	soniaQW['fallenangel'] += 1
+	gs 'stat'
+	'<center><h4><font color="maroon">Sonia''s Room</font></h4></center>'
+	'<center><img <<$set_imgh>> src="images/locations/pavlovsk/resident/soniahome/sonia_bedroom/sonia_bed.jpg"></center>'
+	'You sit on the bed next to Sonia, she looks at you and gives you a weak smile. You can tell she is still sad and depressed but at least she is not crying anymore at least not at this moment.'
+	act 'Stop talking': gt 'soniahome', 'sonia_room'
+	act 'Make small talk':
+		*clr & cla
+		minut += 5
+		gs 'npc_relationship', 'modify', 'A25', 'like'
+		'<center><h4><font color="maroon">Sonia''s Room</font></h4></center>'
+		'<center><img <<$set_imgh>> src="images/locations/pavlovsk/resident/soniahome/sonia_bedroom/sonia_bed.jpg"></center>'
+		'You talk with Sonia about various things, mostly about fashion, your mutual friends, or school in general. When you talk about fashion she livens up for a bit, school she has her moments but bring up friends she reminds you, you are her only friend left which kinda kills the mood so you decide to change the topic.'
+		act 'Stop talking': gt 'soniahome', 'sonia_room'
+		act 'Keep talking': gt 'soniahome', 'sonia_chat3'
+	end
+	act 'Ask what she''s been up to':
+		*clr & cla
+		gs 'npc_relationship', 'modify', 'A25', 'like'
+		'<center><h4><font color="maroon">Sonia''s Room</font></h4></center>'
+		'<center><img <<$set_imgh>> src="images/locations/pavlovsk/resident/soniahome/sonia_bedroom/sonia_bed.jpg"></center>'
+		'"So, what have you been up to lately?" you ask.'
+		'She sighs and shrugs. "Enduring, I have started to get used to all the teasing and bullying and I am getting better at avoiding the gopniks after school, so things are better, not great but better.." She says with a frown.'
+		'You give her an encouraging smile. "You just got to make it till the end of the school year and then you can go to the University and this will all just be a bad memory."'
+		'The two of you are soon talking about how much better things will be at the University.'
+		act 'Stop talking': gt 'soniahome', 'sonia_room'
+		act 'Keep talking': gt 'soniahome', 'sonia_chat3'
+	end
+	act 'Ask her about her fashion sense':
+		*clr & cla
+		minut += 15
+		'<center><h4><font color="maroon">Sonia''s Room</font></h4></center>'
+		'<center><img <<$set_imgh>> src="images/locations/pavlovsk/resident/soniahome/sonia_bedroom/sonia_bed.jpg"></center>'
+		'She often wears older clothes, but she somehow always manages to make them work and look stylish. "I am still just amazed by your sense of style you can just make anything look good."'
+		'She brightens up a bit. "Thanks, I have actually been getting a lot better, since I never go out and have nothing else to do. I just stay in my room mostly and work on new outfits." She goes on to talk about how she finds old clothes in the market and experiments making new clothes out of them.'
+		act 'Stop talking': gt 'soniahome', 'sonia_room'
+		act 'Keep talking': gt 'soniahome', 'sonia_chat3'
+	end
+	if soniaQW['slut'] >= 1:
+		act 'Ask about the gopniks':
+			*clr & cla
+			minut += 5
+			'<center><h4><font color="maroon">Sonia''s Room</font></h4></center>'
+			'<center><img <<$set_imgh>> src="images/locations/pavlovsk/resident/soniahome/sonia_bedroom/sonia_bed.jpg"></center>'
+			'"Are the gopniks still hassling you?" you ask.'
+			'She looks like she is about to cry for a moment when you bring them up but then she gets herself under control. "Not as bad as it was... I have gotten a bit better at avoiding them and I think they are starting to get bored with me... " she replies.'
+			'You sit in silence, wondering if you should push things. "Yeah, they can be total assholes."'
+			'She just nods and you decided it is best to change the subject.'
+			act 'Stop talking': gt 'soniahome', 'sonia_room'
+			act 'Keep talking': gt 'soniahome', 'sonia_chat3'
+		end
+	end
+	act 'Ask about the future':
+		*clr & cla
+		minut += 5
+		'<center><h4><font color="maroon">Sonia''s Room</font></h4></center>'
+		'<center><img <<$set_imgh>> src="images/locations/pavlovsk/resident/soniahome/sonia_bedroom/sonia_bed.jpg"></center>'
+		'"What are your plans for after school?" you ask.'
+		'She looks at you with a smile. "Moving far away from here. I still got good grades, more than enough to get into the university in Saint Petersburg. I''m planning to enroll there after school and study fashion design, but my parents want me to become a doctor or a lawyer or get a business degree or something like that."'
+		'Before you can say anything, she turns to you. "What about you? What are your plans for the future?"'
+		act 'I don''t know':
+			*clr & cla
+			minut += 5
+			'<center><h4><font color="maroon">Sonia''s Room</font></h4></center>'
+			'<center><img <<$set_imgh>> src="images/locations/pavlovsk/resident/soniahome/sonia_bedroom/sonia_bed.jpg"></center>'
+			'"I''m not sure, but I guess I have a few options," you tell her.'
+			'She nods. "Oh. Well, I guess you still have some time left to make up your mind..." she says. She sounds unsure though, as if she doesn''t believe it herself.'
+			'You''re not sure what more to say about it, so you decide to change the subject.'
+			act 'Stop talking': gt 'soniahome', 'sonia_room'
+			act 'Keep talking': gt 'soniahome', 'sonia_chat3'
+		end
+		act 'Go to the University':
+			*clr & cla
+			minut += 5
+			'<center><h4><font color="maroon">Sonia''s Room</font></h4></center>'
+			'<center><img <<$set_imgh>> src="images/locations/pavlovsk/resident/soniahome/sonia_bedroom/sonia_bed.jpg"></center>'
+			'You get a little excited. "I''m planning to attend the university too. At least now I''ll know someone there."'
+			'She grins happily. "Maybe we should think about being roommates when we go? As you said, then we would know someone and we already get along. Let''s talk about it some more when the time comes."'
+			act 'Stop talking': gt 'soniahome', 'sonia_room'
+			act 'Keep talking': gt 'soniahome', 'sonia_chat3'
+		end
+	end
+	gs 'willpower', 'misc', 'self', 'easy'
+	if will_cost <= pcs_willpwr:
+		act 'Kiss her (<<will_cost>> Willpower)':
+			*clr & cla
+			gs 'npc_relationship', 'modify', 'A25', 'loathe'
+			gs 'willpower', 'pay', 'self'
+			gs 'stat'
+			'<center><h4><font color="maroon">Sonia''s Room</font></h4></center>'
+			'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/girl/sonia/home/bed_kiss.jpg"></center>'
+			'You lean in and try and kiss her, she recoils at once. "What the hell <<$pcs_nickname>>!"'
+			'You thought she might be over it by now but apparently, you were wrong. "Sorry I didn''t mean anything by it."'
+			'She gives you a disgusted look. "You are supposed to be the only friend I have left, why would you try and do this, when you know what''s been happening to me."'
+			'You try to comfort her, you know you messed up but she stands up and points at the door already starting to cry. "Please leave!" Not wanting to upset her further you get up and leave.'
+			act 'Leave': gt 'pav_residential'
+		end
+	else
+		act 'Kiss her (<font color="red"><<will_cost>> Willpower</font>)': '<br><font color="red">You don''t have enough willpower to use this action.</font>'
+	end
+end
+
 --- soniahome ---------------------------------
 

+ 19 - 17
locations/stat_display.qsrc

@@ -160,27 +160,25 @@ else
 end
 if menu_off = 0:
 	$menuBarTab = '<table><tr>'
-	$menuBarTab += '<td><a href="exec:killvar ''menu_page'' & gs ''obj_din'', ''description''"><img title="Character description" height = <<set_miconht>> src="images/system/icons/menu/icon_character.png"></a></td>'
-	$menuBarTab += '<td><a href="exec:killvar ''menu_page'' & gs ''obj_din'', ''face''"><img title="Looks (Face, body, clothing,...)"height = <<set_miconht>> src="images/system/icons/menu/icon_lookself.png"></a></td>'
-	if bag > 0: $menuBarTab += '<td><a href="exec:gs ''din_bad'', ''d_bag''"><img title="Your purse"height = <<set_miconht>> src="images/system/icons/menu/icon_purse.png"></a></td>'
-	$menuBarTab += '<td><a href="exec:gs ''telefon'',''Phone_menu''"><img title="Your phone" height = <<set_miconht>> src="images/system/icons/menu/<<iif(telefon[''UnreadSMS'']=0,''icon_phone.png'',''icon_phone_sms.gif'')>>"></a></td>'
-	$menuBarTab += '<td><a href="exec: jclose =1 & gs ''obj_din'', ''records''"><img title="<<$journal_tooltip>>" height = <<set_miconht>> src="images/system/icons/menu/<<$journalIcon>>"></a></td>'
-	$menuBarTab += '<td><a href="exec:killvar ''menu_page'' & gs''$menu_setting''"><img title="Menu & Cheatmenu" height = <<set_miconht>> src="images/system/icons/menu/icon_menu.png"></a></td>'
-	$menuBarTab += '<td><a href="exec:gs ''obj_din'', ''wait''"><img title="Pass time" height = <<set_miconht>> src="images/system/icons/menu/icon_clock.png"></a></td>'
+	$menuBarTab += '<td><a href="exec: killvar ''menu_page'' & gs ''obj_din'', ''description''"><img title="Character description" height = <<set_miconht>> src="images/system/icons/menu/icon_character.png"></a></td>'
+	$menuBarTab += '<td><a href="exec: killvar ''menu_page'' & gs ''obj_din'', ''face''"><img title="Looks (Face, body, clothing,...)"height = <<set_miconht>> src="images/system/icons/menu/icon_lookself.png"></a></td>'
+	if bag > 0: $menuBarTab += '<td><a href="exec: gs ''din_bad'', ''d_bag''"><img title="Your purse"height = <<set_miconht>> src="images/system/icons/menu/icon_purse.png"></a></td>'
+	$menuBarTab += '<td><a href="exec: gs ''telefon'',''Phone_menu''"><img title="Your phone" height = <<set_miconht>> src="images/system/icons/menu/<<iif(telefon[''UnreadSMS'']=0,''icon_phone.png'',''icon_phone_sms.gif'')>>"></a></td>'
+	$menuBarTab += '<td><a href="exec: jclose = 1 & gs ''obj_din'', ''records''"><img title="<<$journal_tooltip>>" height = <<set_miconht>> src="images/system/icons/menu/<<$journalIcon>>"></a></td>'
+	$menuBarTab += '<td><a href="exec: killvar ''menu_page'' & gs''$menu_setting''"><img title="Menu & Cheatmenu" height = <<set_miconht>> src="images/system/icons/menu/icon_menu.png"></a></td>'
+	$menuBarTab += '<td><a href="exec: gs ''obj_din'', ''wait''"><img title="Pass time" height = <<set_miconht>> src="images/system/icons/menu/icon_clock.png"></a></td>'
 	$menuBarTab += '</tr></table>'
 	$stat_msg += func('cleanHTML',$menuBarTab)
 	killvar '$menuBarTab'
 elseif menu_off = 1:
 	$menuBarTab = '<table><tr>'
-	$menuBarTab += '<td><a href="exec:killvar ''menu_page'' & gs ''obj_din'', ''menu_disabled''"><img title="<<$stat_disable_msg>>" height = <<set_miconht>> src="images/system/icons/menu/icon_character.png"></a></td>'
-	$menuBarTab += '<td><a href="exec:killvar ''menu_page'' & gs ''obj_din'', ''menu_disabled''"><img title="<<$stat_disable_msg>>" height = <<set_miconht>> src="images/system/icons/menu/icon_lookself.png"></a></td>'
-	if bag > 0:
-		$menuBarTab += '<td><a href="exec:gs ''obj_din'', ''menu_disabled''"><img title="<<$stat_disable_msg>>" height = <<set_miconht>> src="images/system/icons/menu/icon_purse.png"></a></td>'
-	end
-	$menuBarTab += '<td><a href="exec:gs ''telefon'',''Phone_menu''"><img title="<<$stat_disable_msg>>" height = <<set_miconht>> src="images/system/icons/menu/<<iif(telefon[''UnreadSMS'']=0,''icon_phone.png'',''icon_phone_sms.gif'')>>"></a></td>'
-	$menuBarTab += '<td><a href="exec:gs ''obj_din'', ''menu_disabled''"><img title="<<$stat_disable_msg>>" height = <<set_miconht>> src="images/system/icons/menu/<<$journalIcon>>"></a></td>'
-	$menuBarTab += '<td><a href="exec:killvar ''menu_page'' & gs''obj_din'', ''menu_disabled''"><img title="<<$stat_disable_msg>>" height = <<set_miconht>> src="images/system/icons/menu/icon_menu.png"></a></td>'
-	$menuBarTab += '<td><a href="exec:gs ''obj_din'', ''wait''"><img title="Pass time" height = <<set_miconht>> src="images/system/icons/menu/icon_clock.png"></a></td>'
+	$menuBarTab += '<td><a href="exec: gs ''obj_din'', ''menu_disabled''"><img title="<<$stat_disable_msg>>" height = <<set_miconht>> src="images/system/icons/menu/icon_character.png"></a></td>'
+	$menuBarTab += '<td><a href="exec: gs ''obj_din'', ''menu_disabled''"><img title="<<$stat_disable_msg>>" height = <<set_miconht>> src="images/system/icons/menu/icon_lookself.png"></a></td>'
+	if bag > 0: $menuBarTab += '<td><a href="exec: gs ''obj_din'', ''menu_disabled''"><img title="<<$stat_disable_msg>>" height = <<set_miconht>> src="images/system/icons/menu/icon_purse.png"></a></td>'
+	$menuBarTab += '<td><a href="exec: gs ''obj_din'',''menu_disabled''"><img title="<<$stat_disable_msg>>" height = <<set_miconht>> src="images/system/icons/menu/<<iif(telefon[''UnreadSMS'']=0,''icon_phone.png'',''icon_phone_sms.gif'')>>"></a></td>'
+	$menuBarTab += '<td><a href="exec: gs ''obj_din'', ''menu_disabled''"><img title="<<$stat_disable_msg>>" height = <<set_miconht>> src="images/system/icons/menu/<<$journalIcon>>"></a></td>'
+	$menuBarTab += '<td><a href="exec: gs ''obj_din'', ''menu_disabled''"><img title="<<$stat_disable_msg>>" height = <<set_miconht>> src="images/system/icons/menu/icon_menu.png"></a></td>'
+	$menuBarTab += '<td><a href="exec: gs ''obj_din'', ''menu_disabled''"><img title="<<$stat_disable_msg>>" height = <<set_miconht>> src="images/system/icons/menu/icon_clock.png"></a></td>'
 	$menuBarTab += '</tr></table>'
 	$stat_msg += func('cleanHTML',$menuBarTab)
 	killvar '$menuBarTab'
@@ -865,7 +863,11 @@ else
 		$stat_clothes_msg += ' would wear.'
 	end
 
-	if $temp_clo_style ! '': $stat_clothes_style += '_' + $temp_clo_style
+	if $temp_clo_style[0] ! '':
+		$stat_clothes_style += '_' + $temp_clo_style[0]
+	elseif $temp_clo_style[1] ! '':
+		$stat_clothes_style += '_' + $temp_clo_style[1]
+	end
 
 
 	killvar '$temp_clo_style'

+ 13 - 13
locations/vasilyhome.qsrc

@@ -172,10 +172,10 @@ if $ARGS[0] = 'livingroom':
 	if PCloStyle = 4 and sh_hooker_count > 0 and week < 5 and hour >= 20: gt 'vasilyhome', 'sh_hooker'
 
 	roomsex_sonia = rand(0,100)
-	if roomsex_sonia <= 5 and soniaPS >=1 and sexev_sonya_count > 0 and ((week >= 6 and hour >= 10 and hour < 17) or (week = 7 and hour >= 20)):
+	if roomsex_sonia <= 5 and soniaQW['slut'] >=1 and sexev_sonya_count > 0 and ((week >= 6 and hour >= 10 and hour < 17) or (week = 7 and hour >= 20)):
 		gt 'vasilyhome', 'vasily_sex_sonya'
 	end
-	if roomsex_sonia >= 97 and soniaPS >=3 and sexev_sonya_count > 0 and week < 5 and hour >= 20:
+	if roomsex_sonia >= 97 and soniaQW['slut'] >=3 and sexev_sonya_count > 0 and week < 5 and hour >= 20:
 		gt 'vasily_home_sex', 'gang_sex_sonya'
 	end
 	gs 'internet_mobile', 'get_access', 'free', 'nocamshow'
@@ -482,7 +482,7 @@ if $ARGS[0] = 'vasily_bazar_night':
 		else
 			vasyan_textb_gorslut = rand(0,12)
 			if vasyan_textb_gorslut = 0:
-				if soniaPS = 1:
+				if soniaQW['slut'] = 1:
 					'He tells you about fucking Sonia. "The boys and I were all taking turns with that slut until she couldn''t even stand. She eventually just collapsed in a heap. The first thing she did when she got up was try to get my cock in her mouth. It''s crazy hoe fucking addicted to cock that whore is."'
 				else
 					'"I saw you poke your head in the door the other day when we were screwing Sonia. You seemed to enjoy it, because you watched for a long time. Were you trying to learn something, or just wishing it was you?" he asks with a smile.'
@@ -490,7 +490,7 @@ if $ARGS[0] = 'vasily_bazar_night':
 			elseif vasyan_textb_gorslut = 1:
 				' You really seemed to enjoy getting fucked like a drunken slut the other day <<$pcs_nickname>>," Vasily snickers.<br> "Well I... yeah, I kind of got into it," you stammer meekly.<br> "Then you should come drinking with us in the park more often. We''ll gladly fuck you six ways to Sunday if you show up there," he says with a sly grin.<br> "Don''t be surprised if I take you up on that offer," you say with a wink.'
 			elseif vasyan_textb_gorslut = 2:
-				if soniaPS = 1:
+				if soniaQW['slut'] = 1:
 					' "We have to figure out how to get you and Sonia in the same room," Vasily says hungrily.<br> "I certainly wouldn''t kick her out of bed..." you say and give him a wink.<br> "Just thinking about it is getting me going. Actually seeing you two together would be hot enough to start a fire."<br> You rest your hand on his groin and give it a squeeze. "Oh, I can tell..." you whisper seductively.'
 				else
 					'"Sonia was talking about you the other day," Vasily tells you.<br> "Oh really? What did she say?" you ask.<br> "She said and I quote: That <<$pcs_nickname>> is crazy hot. Every time I see her, I just want to eat her like a bowl of ice cream," he says laughing.<br> "Well, next time you see her, tell her it tastes like cherry", you tell him laughing.'
@@ -504,7 +504,7 @@ if $ARGS[0] = 'vasily_bazar_night':
 			elseif vasyan_textb_gorslut = 4:
 				'"Hey <<$pcs_nickname>>, did you know that your mother is still a slut? We saw her in the cafe after closing with her boss. She was sucking his dick like it was the fountain of youth. I see where you got your skills from; she must have been a really good teacher."<br> "Ha, dream on asshole," you tell him with a laugh.'
 			elseif vasyan_textb_gorslut = 5:
-				if soniaPS = 1:
+				if soniaQW['slut'] = 1:
 					if SchoolAtestat = 0:
 						'"Sonia spends almost the whole day in the boys bathroom at school now. That girl sucks and fucks like quantity is the only things that matters," Vasily tells you.<br> "I think most of her diet is cum these days," you add.<br> "Yeah, I do my part to feed her almost every day," he says laughing.'
 					else
@@ -596,10 +596,10 @@ if $ARGS[0] = 'dan_bazar':
 
 		den_textb_gorslut = rand(0,7)
 		if den_textb_gorslut = 0: $den_textb_gorslut =	'Dan looks at you appraisingly. "<<$pcs_nickname>>, do you have any money? If you need some, then I''m sure I could find some work putting your body to good use."<br>	"Dream on. The only work I''m thinking of using this body for involves a swift kick between your balls!" you snarl.<br>	 With one hand protecting his nuts, Dan says "Settle down, slut. I wasn''t suggesting you become a whore. Honestly, I was just thinking out loud. I mean if you''re already giving it away for free, then why not?" You leave in a huff before he can finish.'
-		if den_textb_gorslut = 1 and soniaPS = 1: $den_textb_gorslut = 'Dan mockingly issues you a challenge.<br> "<<$pcs_nickname>>, I can''t decide if I prefer your cute set of <<$pc_desc[''lips'']>> lipss or Sonia''s. We need to all get together to find out who has the best skills. I have a warm wet surprise for the winner."<br>  "Dream on!" you say while shaking your head, though you do wonder if you might be able to best her.'
-		if den_textb_gorslut = 1 and soniaPS <=0: $den_textb_gorslut = 'Dan is idly going on about what a good girl Sonia is when he turns to you and says "Hey <<$pcs_nickname>>, you''re friends with Sonia, right?"<br>	"Not this again, Dan..." you say with a weary sigh.<br> "Oh, come on! You both like to have a good time. It could be a lot of fun," he replies.<br>	 You stop him right there. "Listen Dan. I like Sonia, but she has a look in her eyes lately that makes me nervous. Besides, any girl willing to sleep with you has to be half mad. Getting two of us in the same room might be more than you could handle..." You give him a little sway of your hips as you walk away.'
-		if den_textb_gorslut = 2 and soniaPS = 1: $den_textb_gorslut = '"Yesterday, Sonia was servicing every boy in the mens bathroom in any fashion they desired," Dan says. "Not too long ago, she was such a stuck up goody-two-shoes. Now she doesn''t have a care in the world. You could probably learn a thing or two from her <<$pcs_nickname>>."<br> You just stare back at him with your arms crossed as he slowly moves a hand in front of his crotch for protection.'
-		if den_textb_gorslut = 2 and soniaPS <=0: $den_textb_gorslut = '"Be a dear and fetch me another beer, <<$pcs_lastname>>," Dan says.<br> You head to the kitchen and grab a beer. You take a little sip and give him a smile when you hand it to him. He gives you a rough slap on the ass as he sends you away giggling.'
+		if den_textb_gorslut = 1 and soniaQW['slut'] = 1: $den_textb_gorslut = 'Dan mockingly issues you a challenge.<br> "<<$pcs_nickname>>, I can''t decide if I prefer your cute set of <<$pc_desc[''lips'']>> lipss or Sonia''s. We need to all get together to find out who has the best skills. I have a warm wet surprise for the winner."<br>  "Dream on!" you say while shaking your head, though you do wonder if you might be able to best her.'
+		if den_textb_gorslut = 1 and soniaQW['slut'] <=0: $den_textb_gorslut = 'Dan is idly going on about what a good girl Sonia is when he turns to you and says "Hey <<$pcs_nickname>>, you''re friends with Sonia, right?"<br>	"Not this again, Dan..." you say with a weary sigh.<br> "Oh, come on! You both like to have a good time. It could be a lot of fun," he replies.<br>	 You stop him right there. "Listen Dan. I like Sonia, but she has a look in her eyes lately that makes me nervous. Besides, any girl willing to sleep with you has to be half mad. Getting two of us in the same room might be more than you could handle..." You give him a little sway of your hips as you walk away.'
+		if den_textb_gorslut = 2 and soniaQW['slut'] = 1: $den_textb_gorslut = '"Yesterday, Sonia was servicing every boy in the mens bathroom in any fashion they desired," Dan says. "Not too long ago, she was such a stuck up goody-two-shoes. Now she doesn''t have a care in the world. You could probably learn a thing or two from her <<$pcs_nickname>>."<br> You just stare back at him with your arms crossed as he slowly moves a hand in front of his crotch for protection.'
+		if den_textb_gorslut = 2 and soniaQW['slut'] <=0: $den_textb_gorslut = '"Be a dear and fetch me another beer, <<$pcs_lastname>>," Dan says.<br> You head to the kitchen and grab a beer. You take a little sip and give him a smile when you hand it to him. He gives you a rough slap on the ass as he sends you away giggling.'
 		if den_textb_gorslut = 3: $den_textb_gorslut = 'Dan looks like he''s up to something. "<<$pcs_nickname>>, who''s your best girlfriend at school?"<br>  "Why?" you ask while giving him a stern look.<br> "Well, I was just thinking maybe you''d like to bring a friend on one of your visits here?" Dan says, trying his best to sound diplomatic.<br> Your anger boils over as you say "Don''t you think for one second that I''m going to drag some innocent girl back here and throw her to you jackals. If you''re so desperate to have a three-way, I would be happy to let you help me suck Vitek''s cock right now." <br> You hear Dan mutter under his breath. "Bitch, what the hell crawled up your ass tonight?" You turn to leave.'
 		if den_textb_gorslut = 4: $den_textb_gorslut = '"Hey babe, how about you stop by the park the next time we''re hanging out there and have some beers with us? You''re so much fun when you get a few beers in you," Dan says while roughly giving your ass a squeeze.<br>  You give him a playful slap on the thigh and a giggle.'
 		if den_textb_gorslut = 5: $den_textb_gorslut = '"<<$pcs_nickname>>, hand me the TV remote," Dan says.<br>  He''s way closer to it than you, but he looks comfortable, so you happily fetch it for him.<br>	"Good girl," he praises.'
@@ -668,9 +668,9 @@ if $ARGS[0] = 'vitek_bazar':
 		if vitek_textb_gorslut = 0: $vitek_textb_gorslut = 'You''re lying on the couch when Vitek sits down and puts your feet in his lap. Without saying anything, he gently starts to massage them. You let him know how good it feels with a series of soft moans. Vitek can be so good to you when he wants to be; you think you should probably reward him.'
 		if vitek_textb_gorslut = 1: $vitek_textb_gorslut = 'Vitek imparts some wisdom. "You can determine how close your relationship is with someone by how much you can mock them before receiving a beating."<br>  "What if I said you have a tiny cock?" you say.<br>  "Then I would attack you," he says. He takes both hands and furiously tickles you around your sides and stomach.<br>	 You squeal with delight, laughing until you''re out of breath.'
 		if vitek_textb_gorslut = 2: $vitek_textb_gorslut = 'Vitek is full of fun facts. "Did you know that it''s empirically proven that 95% of girls can no longer pronounce the name of the city Naberezhnye Cheln if they go a month without sex?"<br>  Deadpan, you respond "I speak seven languages."'
-		if vitek_textb_gorslut = 3 and SchoolAtestat = 0 and soniaPS = 1: $vitek_textb_gorslut = '"Sonia pulled me into the school toilet yesterday, climbed on top of me, and used me for sex. She basically raped me. I may have to go see the therapist at the clinic to get over it."<br>  He says it with a smile, but you can tell he''s worried about Sonia.'
-		if vitek_textb_gorslut = 3 and SchoolAtestat = 1 and soniaPS = 1: $vitek_textb_gorslut = '"Sonia was pestering me in the park yesterday. When I told her no and walked away, she just followed me. I decided I''d had enough, and started to jog away, but she chased me! She actually chased me though the park trying to have sex with me..." He just shakes his head dumbfounded by this turn of events.'
-		if vitek_textb_gorslut = 3 and soniaPS <= 0: $vitek_textb_gorslut = '"If you ever lend money to nerdy Natasha, then don''t expect to get it back. Well, not in cash anyway. Her methods of repayment are very interesting though..."<br>  You give him a playful slug on the shoulder, and start thinking about Natasha''s legs.'
+		if vitek_textb_gorslut = 3 and SchoolAtestat = 0 and soniaQW['slut'] = 1: $vitek_textb_gorslut = '"Sonia pulled me into the school toilet yesterday, climbed on top of me, and used me for sex. She basically raped me. I may have to go see the therapist at the clinic to get over it."<br>  He says it with a smile, but you can tell he''s worried about Sonia.'
+		if vitek_textb_gorslut = 3 and SchoolAtestat = 1 and soniaQW['slut'] = 1: $vitek_textb_gorslut = '"Sonia was pestering me in the park yesterday. When I told her no and walked away, she just followed me. I decided I''d had enough, and started to jog away, but she chased me! She actually chased me though the park trying to have sex with me..." He just shakes his head dumbfounded by this turn of events.'
+		if vitek_textb_gorslut = 3 and soniaQW['slut'] <= 0: $vitek_textb_gorslut = '"If you ever lend money to nerdy Natasha, then don''t expect to get it back. Well, not in cash anyway. Her methods of repayment are very interesting though..."<br>  You give him a playful slug on the shoulder, and start thinking about Natasha''s legs.'
 		if vitek_textb_gorslut = 4: $vitek_textb_gorslut = 'Vitek starts talking like he''s telling a ghost story. "There''s a woman who walks our quiet streets at night wearing leather and brandishing a whip. They say if she catches you, you wind up in her dungeon, never to be seen again." He finishes by laughing and making spooky sounds.<br>  You''re too distracted by thoughts of mysterious leather clad women to laugh with him.'
 		if vitek_textb_gorslut = 5: $vitek_textb_gorslut = '"What''s your favorite thing about a penis?" Vitek asks.<br>  "They always stand up when a fine lady like myself enters the room," you answer back.<br>	 Vitek bursts out laughing, and starts tickling your sides.'
 		if vitek_textb_gorslut = 6: $vitek_textb_gorslut = '"Drunk girls might as well call their pussy mistress. They can think of nothing but obeying its wishes," Vitek says.<br>  You parry: "Yeah, and guys should call their cocks sir. They follow every order like it''s a life and death mission issued by their commanding officer."<br>	You both burst out laughing when Vitek gives his crotch a salute.'
@@ -984,7 +984,7 @@ if $ARGS[0] = 'bathroom':
 	$locM = 'vasilyhome'
 	menu_off = 0
 
-	if soniaPS >= 2:
+	if soniaQW['slut'] >= 2:
 		temprand = rand(1,10)
 		if temprand = 1 and sh_sonya_sexev > 2 and sonya_bazar_count > 0 and ev_sonya_day ! daystart and hour <= 23 and ((week < 6 and hour >= 14) or (week >= 6 and hour >= 10)):
 			gt 'vasilyhome', 'sonia_ev'

+ 0 - 10
qsrc2tw/tools/QSRC2TW/resources/DebugTools.tw

@@ -1,10 +0,0 @@
-:: DebugTools
-<input type="text" id="getVarInput"/>
-<<link "Get variables">>
-    <<set _requestedVars = $('#getVarInput').val()>>
-    <<replace '#varOverview'>>
-        <<include 'VarOverview'>>
-    <</replace>>
-<</link>>
-
-<div id="varOverview"></div>

+ 17 - 0
qsrc2tw/tools/QSRC2TW/resources/Interface/DebugTools.js

@@ -0,0 +1,17 @@
+setup.variableStorageUsage = ()=>{
+    let result = {};
+    for(const [key,v] of Object.entries(State.variables)){
+        if(!key.startsWith("QSPVAR"))
+            continue;
+        if(key.endsWith("_indexDict"))
+            continue;
+        let storageUsage = JSON.stringify(v).length;
+        const idOfDict = key+"_indexDict";
+        if(State.variables[idOfDict])
+            storageUsage = JSON.stringify(State.variables[idOfDict]).length;
+        result[key] = storageUsage;
+    }
+
+    result = Object.fromEntries(Object.entries(result).toSorted((a,b)=>b[1]-a[1]));
+    return result;
+}

+ 28 - 0
qsrc2tw/tools/QSRC2TW/resources/Interface/DebugTools.tw

@@ -0,0 +1,28 @@
+:: DebugTools
+<input type="text" id="getVarInput"/>
+<<link "Get variables">>
+    <<set _requestedVars = $('#getVarInput').val()>>
+    <<append '.passage'>>
+        <<include 'VarOverview'>>
+    <</append>>
+<</link>>
+
+<<link 'Variable Space Usage'>>
+    <<set _variableStorageUsage = setup.variableStorageUsage()>>
+    <<append '.passage'>>
+        <<for _key, _value range _variableStorageUsage>>
+            <li>_key : _value>></li>
+        <</for>>
+    <</append>>
+<</link>>
+
+<div id="varOverview"></div>
+
+:: VarOverview
+<ol>
+    <<for _key, _value range State.variables>>
+        <<if _key.match(_requestedVars)>>
+            <li>_key : <<=JSON.stringify(_value)>></li>
+        <</if>>
+    <</for>>
+</ol>

+ 1 - 1
qsrc2tw/tools/QSRC2TW/resources/Interface/StoryInterface.tw

@@ -1,7 +1,7 @@
 :: StoryInterface
 <style id="userConfiguredStyle"></style>
 <style id="qspStyles" data-init-passage="UIUserSettings"></style>
-<div id="interface" class="grid-stack">
+<div id="interface">
 	<div
 		class="grid-stack-item"
 		gs-h="5"

+ 37 - 20
qsrc2tw/tools/QSRC2TW/resources/Interface/UISettingsDialog.tw

@@ -2,32 +2,49 @@
 <h2>Display Settings</h2>
 <<set _userStyle = setup.userStyle>>
 <section>
-<h3>Font</h3>
-Font Size:
-
-<<attr 'min' 6 'max' 120>>
-	<<numberbox "_userStyle.fontSize" _userStyle.fontSize>>
-<</attr>>
+	<h3>Font</h3>
+	<div>
+		Font Size:
+		<<attr 'min' 6 'max' 120>>
+			<<numberbox "_userStyle.fontSize" _userStyle.fontSize>>
+		<</attr>>
+	</div>
 
+	<div>
+		Font:
+		<<listbox "_userStyle.font" autoselect>>
+			<<option "Arial" "Arial">>
+			<<option "Georgia" "Georgia, serif;">>
+			<<option "Helmet" "Helmet, Freesans, sans-serif">>
+			<<option "Lucida Console" '"Lucida Console", Courier, monospace'>>
+			<<option "Times" 'Times, "Times New Roman", Georgia, serif'>>
+		<</listbox>>
+	</div>
+</section>
 
-Font: 
+<section>
+	<h3>Layout</h3>
+	<div>
+		Grid: <<checkbox "_userStyle.grid" false true autocheck>>
+	</div>
+</section>
 
-<<listbox "_userStyle.font" autoselect>>
-	<<option "Arial" "Arial">>
-	<<option "Georgia" "Georgia, serif;">>
-	<<option "Helmet" "Helmet, Freesans, sans-serif">>
-	<<option "Lucida Console" '"Lucida Console", Courier, monospace'>>
-	<<option "Times" 'Times, "Times New Roman", Georgia, serif'>>
-<</listbox>>
+<section>
+	<h3>Custom CSS</h3>
+	<div>
+		CSS: <<textarea "_userStyle.customCSS" _userStyle.customCSS>>
+	</div>
 </section>
+
 <section>
-<h3>Debugging</h3>
-Debug-Messages:
-<<checkbox "_userStyle.toggleNotices" false true autocheck>>
-Error-Messages:
-<<checkbox "_userStyle.toggleErrors" false true autocheck>>
+	<h3>Debugging</h3>
+	Debug-Messages:
+	<<checkbox "_userStyle.toggleNotices" false true autocheck>>
+	Error-Messages:
+	<<checkbox "_userStyle.toggleErrors" false true autocheck>>
 </section>
 
+
 <h2>Logging</h2>
 <i>Logging takes up a lot of storage. You should disable it unless you need it.</i>
 <div>
@@ -41,4 +58,4 @@ Error-Messages:
 </div>
 <div>
 	Log GS-calls: <<checkbox "_userStyle.logGS" false true autocheck>>
-</div>
+</div>

+ 32 - 3
qsrc2tw/tools/QSRC2TW/resources/Interface/UserStyle.js

@@ -22,6 +22,15 @@ class UserStyle{
 		this.saveToLocalStorage();
 		if($(UserStyle.#domId).length)
 			$(UserStyle.#domId).text(this.css);
+
+		if(this._grid && !this._gridIsCreated){
+			setup.uiGridCreate();
+			this._gridIsCreated = true;
+		}
+		else if(!this._grid && this._gridIsCreated){
+			setup.uiGridDestroy();
+			this._gridIsCreated = false;
+		}
 	}
 
 	get css(){
@@ -29,8 +38,15 @@ class UserStyle{
 					font-family:${this.font};
 					font-size:${this.fontSize}px;
 				}
-				
-				`+ this.toggleErrorsCSS + this.toggleNoticesCSS;
+
+				`+ this.toggleErrorsCSS + this.toggleNoticesCSS + this.gridCSS + this.customCSS;
+	}
+
+	_customCSS = '';
+	get customCSS(){return this._customCSS;}
+	set customCSS(v){
+		this._customCSS = v;
+		this.update();
 	}
 
 	_font = 'Helmet, Freesans, sans-serif';
@@ -47,6 +63,19 @@ class UserStyle{
 		this.update();
 	}
 
+	_gridIsCreated = false;
+	_grid = false;
+	get grid(){return this._grid;}
+	set grid(v){
+		this._grid = v;
+		this.update();
+	}
+	get gridCSS(){
+		if(!this._grid)
+			return ".grid-stack-item{display: contents;} #interface>div>*{overflow:auto}"
+		return "";
+	}
+
 	_toggleErrors = false;
 	get toggleErrors(){return this._toggleErrors;}
 	set toggleErrors(v){
@@ -103,4 +132,4 @@ setup.userStyle = UserStyle.fromLocalStorage();
 $(document).one(':storyready', function (ev) {
 	//let userStyle = UserStyle.fromLocalStorage();
 	setup.userStyle.update();
-});
+});

+ 17 - 3
qsrc2tw/twine-code/grid/grid.js → qsrc2tw/tools/QSRC2TW/resources/Interface/grid/grid.js

@@ -1,4 +1,7 @@
-$(document).one(':passagedisplay', function (ev) {
+setup.uiGridCreate ??= () =>{
+
+//$(document).one(':passagedisplay', function (ev) {
+	$('#interface').addClass('grid-stack');
 
 	const layoutFromStorage = JSON.parse(localStorage.getItem("GridStack") ?? "{}");
 	$('.grid-stack .grid-stack-item:visible').toArray().forEach((element,index) => {
@@ -8,7 +11,7 @@ $(document).one(':passagedisplay', function (ev) {
 	});
 
 
-    GridStack.init();
+    setup.uiGrid = GridStack.init();
 
     let grid_stack = $('.grid-stack');
 
@@ -27,4 +30,15 @@ $(document).one(':passagedisplay', function (ev) {
         });
 		localStorage.setItem("GridStack", JSON.stringify(r));
     });
-});
+//});
+}
+
+setup.uiGridDestroy = () => {
+	//$(document).one(':passagedisplay', function (ev) {
+		if(!setup.uiGrid)
+			return;
+		setup.uiGrid.destroy(false);
+
+		$('#interface').removeClass('grid-stack');
+	//});
+}

+ 0 - 0
qsrc2tw/twine-code/grid/gridstack-all.js → qsrc2tw/tools/QSRC2TW/resources/Interface/grid/gridstack-all.js


+ 0 - 0
qsrc2tw/twine-code/grid/gridstack.min.css → qsrc2tw/tools/QSRC2TW/resources/Interface/grid/gridstack.min.css


+ 0 - 8
qsrc2tw/tools/QSRC2TW/resources/resources/PassageFooter.tw

@@ -10,11 +10,3 @@
 <<set setup.qsp_gs_statistics = {}>>
 
 
-:: VarOverview
-<ol>
-    <<for _key, _value range State.variables>>
-        <<if _key.match(_requestedVars)>>
-            <li>_key : <<=JSON.stringify(_value)>></li>
-        <</if>>
-    <</for>>
-</ol>

+ 21 - 1
qsrc2tw/tools/QSRC2TW/resources/style.css

@@ -57,4 +57,24 @@
 #interface #topbar button {
     border: 0px;
     padding: 0;
-}
+}
+
+@media (orientation: portrait) {
+    #interface {
+        grid-template-columns: auto;
+        grid-template-rows: initial;
+        grid-template-areas:
+            "top"
+            "main"
+            "act"
+            "side"
+            "debugTools";
+        position: absolute;
+        height: initial;
+
+    }
+
+    .passage img{
+        max-width: 90vw;
+    }
+}

+ 21 - 0
qsrc2tw/twine-code/misc/savegameNames.js

@@ -0,0 +1,21 @@
+    Config.passages.descriptions = function () {
+        try{
+            let result = "";
+            if(State.variables.QSPVAR_s_$pcs_nickname)
+                result = State.variables.QSPVAR_s_$pcs_nickname[0];
+
+            if(State.variables.QSPVAR_n_daystart && State.variables.QSPVAR_n_daystart_start){
+                const currentDay = State.variables.QSPVAR_n_daystart[0] - State.variables.QSPVAR_n_daystart_start[0] + 1;
+                result += ` Day ${currentDay}`;
+            }
+
+            if(result)
+                return result;
+        }
+        catch(e){
+            //Not so bad. No need to throw an error to anywhere important.
+            console.warn(e);
+        }
+
+        return "New Game";
+    };