1
0

17 کامیت‌ها c3a676d295 ... 9de9b7aaba

نویسنده SHA1 پیام تاریخ
  Kevin_Smarts 9de9b7aaba [fixed] Bollox 1 ماه پیش
  Kevin_Smarts 0c3d9666b8 [changed] Instructions for updating version number and how we manage it updated and yet another version number change! 1 ماه پیش
  netuttki ed55eaad2e Merge remote-tracking branch 'keving-upstream/master' 1 ماه پیش
  bgkjdgbizgblzdgbr efe51a566d Merge branch 'master' of https://git.tfgames.site/Kevin_Smarts/glife 1 ماه پیش
  bgkjdgbizgblzdgbr 71fe0a23da [fixed] I can't do inequalities. 1 ماه پیش
  Kevin_Smarts 02010868c2 Merge remote-tracking branch 'Lusticon/master' 1 ماه پیش
  Kevin_Smarts 06d235fcff Merge remote-tracking branch 'Anjuna/master' 1 ماه پیش
  Lusticon 9f7fcae8ab [fixed] rape day checks 1 ماه پیش
  Lusticon dae3af3047 [fixed] mom nude reaction 1 ماه پیش
  bgkjdgbizgblzdgbr 248387a7fc [added/changed] New uni dorm content from nutluck, change the Katja panty quest in the kitchen to match the new dorm layout 1 ماه پیش
  anjuna krokus 9b4635ed09 [fixed] `strpos` not finding anything return 0 instead of -1 (while `arrpos` returns -1) is annoying. Fixed a bug in saveupdater related to that 1 ماه پیش
  anjuna krokus 3f3900ef2f [added] Next part of the blackmail storyline 1 ماه پیش
  anjuna krokus 92d0d65c5f [changed] merged `parks` and `lug` into `pushkin_parks`. 1 ماه پیش
  anjuna krokus ed7468493a [added] a huge example to `SMStext_builder`. 1 ماه پیش
  netuttki 9e798c64aa Merge remote-tracking branch 'Kevin-upstream/master' 2 ماه پیش
  netuttki 7698c4cf5e Merge remote-tracking branch 'Kevin-upstream/master' 3 ماه پیش
  netuttki 73660e9ba1 Merge remote-tracking branch 'Kevin-upstream/master' 3 ماه پیش

+ 2 - 2
glife.qproj

@@ -1049,6 +1049,7 @@
 	<Folder name="University">
 		<Location name="uni_grounds"/>
 		<Location name="uni_dorm"/>
+		<Location name="uni_dorm_events"/>
 		<Location name="uni_admin"/>
 		<Location name="uni_cafe"/>
 		<Location name="uni_library"/>
@@ -1341,8 +1342,7 @@
 		<Location name="rasputin_show_var"/>
 		<Location name="exhibitionistshop"/>
 		<Location name="kseniyaQW"/>
-		<Location name="parks"/>
-		<Location name="lug"/>
+		<Location name="pushkin_parks"/>
 		<Location name="dibodi"/>
 		<Location name="city_suburbs"/>
 		<Location name="din_pav"/>

+ 109 - 1
locations/SMStext_builder.qsrc

@@ -30,7 +30,7 @@
 !				So if you are used:
 !					gs 'SMStext_builder', 'add_reply', [$text], [$file_name], [$file_args0], [$file_args1].
 !				Then you would pass ARGS[2] (since you used $ARGS[0] and $ARGS[1]):
-!				gs 'SMStext_builder', 'add_sms', ARGS[2]
+!				gs 'SMStext_builder', 'show_sms', ARGS[2]
 !	
 !	Finally after the player has made a choice, everything but the replies are stored.
 !	If you want to reset the text (but not the end images), use gs 'SMStext_builder', 'reset'
@@ -39,6 +39,114 @@
 !		gs 'SMStext_builder', 'end'
 
 
+	!!=====================================================!!
+	!!                                                     !!
+	!!                      Examples                       !!
+	!!                                                     !!
+	!!=====================================================!!
+
+!	This example is in a non-existing file called "lukaqw". Here luka has npc code A6969
+
+!	if $ARGS[0] = 'SMS1':
+!		if $ARGS[1] = 'start':
+!			gs 'SMStext_builder', 'start'
+!				gs 'SMStext_builder', 'receive', '"hey Sveta", it''s Luka!'
+!				gs 'SMStext_builder', 'receive', '"how are you doing?"'
+!				gs 'SMStext_builder', 'add_reply', 'im good, you?', 'lukaqw', 'SMS1', '1'
+!				gs 'SMStext_builder', 'add_sms', 'A6969'
+!			gs 'SMStext_builder', 'end'
+!		end
+!
+!		if $ARGS[1] = '1':
+!			!! The replies are removed, but the rest is not. We first send the reply text, wait, then 
+!			gs 'SMStext_builder', 'start'
+!				gs 'SMStext_builder', 'send', 'im good, you?'
+!				gs 'SMStext_builder', 'show_sms', ARGS[2]
+!				wait 500
+!
+!				gs 'SMStext_builder', 'receive', 'could you send me a picture?'
+!				gs 'SMStext_builder', 'add_reply', 'sure!', 'lukaqw', 'SMS1', 'send_pic'
+!				gs 'SMStext_builder', 'add_reply', 'you first', 'lukaqw', 'SMS1', 'receive_pic'
+!				gs 'SMStext_builder', 'add_reply', 'no', 'lukaqw', 'SMS1', 'no'
+!				gs 'SMStext_builder', 'show_sms', ARGS[2]
+!			gs 'SMStext_builder', 'end'
+!		end
+!
+!		if $ARGS[1] = 'send_pic':
+!			gs 'SMStext_builder', 'start'
+!				gs 'SMStext_builder', 'send', 'sure!'
+!				gs 'SMStext_builder', 'show_sms', ARGS[2]
+!				wait 500
+!
+!				gs 'SMStext_builder', 'receive', 'better make it sexy :))!'
+!				gs 'SMStext_builder', 'send_selfie', 'c|u|n|b|sh|ft', 'lukaqw', 'SMS1', 'Selfie_send'
+!			gs 'SMStext_builder', 'end'
+!		end
+!
+!		if $ARGS[1] = 'Selfie_send':
+!			gs 'SMStext_builder', 'start'
+!				gs 'SMStext_builder', 'send_img', $ARGS[3]
+!				gs 'SMStext_builder', 'show_sms', ARGS[2]
+!				wait 500
+!
+!				$ARGS[5] is the state of dress:
+!				if $ARGS[5] = 'clothed':
+!					gs 'SMStext_builder', 'receive', 'disapointing, but better than nothin i sup'
+!				elseif $ARGS[5] = 'nude' or $ARGS[5] = 'pussyflash':
+!					gs 'SMStext_builder', 'receive', 'DAMN!'
+!				else
+!					gs 'SMStext_builder', 'receive', 'nice'
+!				end
+!			gs 'SMStext_builder', 'end'
+!		end
+!
+!		if $ARGS[1] = 'receive_pic':
+!			gs 'SMStext_builder', 'start'
+!				gs 'SMStext_builder', 'send', 'you first'
+!				gs 'SMStext_builder', 'show_sms', ARGS[2]
+!				wait 500
+!
+!				gs 'SMStext_builder', 'receive_img', 'image/characters/pavlovsk/resident/luka/selfies/sexy3.jpg'
+!				gs 'SMStext_builder', 'receive', 'now you'
+!				gs 'SMStext_builder', 'add_reply', 'sure!', 'lukaqw', 'SMS1', 'send_pic'
+!				gs 'SMStext_builder', 'add_reply', 'no', 'lukaqw', 'SMS1', 'no2'
+!			gs 'SMStext_builder', end
+!		end
+!
+!		if $ARGS[1] = 'no':
+!			gs 'SMStext_builder', 'start'
+!				gs 'SMStext_builder', 'send', 'no'
+!				gs 'SMStext_builder', 'show_sms', ARGS[2]
+!				wait 500
+!
+!				gs 'SMStext_builder', 'receive', 'sad'
+!			gs 'SMStext_builder', end
+!		end
+!
+!		if $ARGS[1] = 'no2':
+!			gs 'SMStext_builder', 'start'
+!				gs 'SMStext_builder', 'send', 'no'
+!				gs 'SMStext_builder', 'show_sms', ARGS[2]
+!				wait 500
+!
+!				gs 'SMStext_builder', 'receive', 'what? but i send you mine?!'
+!				gs 'SMStext_builder', 'add_reply', 'get blackmailed noob', 'lukaqw', 'SMS1', 'blackmail'
+!				gs 'SMStext_builder', 'add_reply', 'that time of month, sorry', 'lukaqw', 'SMS1', 'excuses'
+!			gs 'SMStext_builder', end
+!		end
+!		...
+!		...
+!	end
+
+
+
+
+
+	!!=====================================================!!
+	!!                                                     !!
+	!!                        CODE                         !!
+	!!                                                     !!
+	!!=====================================================!!
 
 
 if $ARGS[0] = 'start':

+ 268 - 8
locations/blackmailer.qsrc

@@ -3,7 +3,7 @@
 if $ARGS[0] = 'init_check':
 	if blackmailQW['day'] ! 0: exit
 	if ($ARGS[2] = 'inside' or $ARGS[2] = 'indoors'):
-		if strpos($loc, 'church') < 0: exit
+		if strpos($loc, 'church') <= 0: exit
 	end
 
 
@@ -25,7 +25,7 @@ if $ARGS[0] = 'init_check':
 		temp_prob_chance -= 100
 	end
 
-	if rand(0, temp_prob_chance) >= 5: exit
+	if rand(0, temp_prob_chance) >= 5: killvar 'temp_prob_chance' & exit
 	killvar 'temp_prob_chance'
 
 	gs 'blackmailer', 'init_blackmail', $ARGS[1]
@@ -50,14 +50,16 @@ if $ARGS[0] = 'init_blackmail':
 	$blackmailQW['init_flashimage'] = $flash_image
 	$blackmailQW['init_flashloc'] = $loc
 	$blackmailQW['init_flashloc_arg'] = $loc_arg
+	$blackmailQW['init_flashregion'] = $region
+	blackmailQW['total_material'] = 1
 
-	if strpos($loc, 'park') > -1:
+	if strpos($loc, 'park') > 0:
 		$blackmailQW['init_flashloc_desc'] = 'in a park'
 		'A flash of light briefly brightens the surrounding trees and you see a shadow darting between the trees. The light of the camera flash prickling on your exposed skin.'
-	elseif strpos($loc, 'church') > -1:
-		$blackmailQW['init_flashloc_desc'] = 'in a park'
+	elseif strpos($loc, 'church') > 0:
+		$blackmailQW['init_flashloc_desc'] = 'in a church'
 		'The flash of a camera illuminates the inside of the church, but the source eludes you.'
-	elseif strpos($loc, 'zaprF') > -1:
+	elseif strpos($loc, 'zaprF') > 0:
 		$blackmailQW['init_flashloc_desc'] = 'while washing cars'
 		'You briefly think a car turned on their headlights, before you realise it was the flash of a camera, the source of which already gone.'
 	else
@@ -73,6 +75,34 @@ end
 
 
 
+	!!=============================================!!
+	!!                                             !!
+	!!                    CIKL                     !!
+	!!                                             !!
+	!!=============================================!!
+
+
+if $ARGS[0] = 'cikl':
+	if blackmailQW['stage'] = 3 and blackmailQW['smsday'] = 0:
+		blackmailQW['smsday'] = blackmailQW['dreamday'] + 3
+		gs 'telefon', 'Blackmailer', 'icon_na', 1
+		gs 'telefon', 'SetSMSSchedule', "", "0", "gs 'blackmailer', 'Add_SMS1'", "daystart > blackmailQW['smsday'] and (hour >= 14 and hour <= 19 and rand(0, 100) = 0 or hour = 19 and minut >= 22 or hour = 20)"
+	elseif daystart = blackmailQW['smsday'] and blackmailQW['next_payment'] > 0:
+		gs 'telefon', 'SetSMSSchedule', "", "0", "gs 'blackmailer', 'Add_SMS1_reminder'", "(hour >= 14 and hour <= 19 and rand(0, 100) = 0 or hour = 19 and minut >= 22 or hour = 20)"
+	elseif daystart > blackmailQW['smsday'] and blackmailQW['next_payment'] > 0:
+		gs 'telefon', 'SetSMSSchedule', "", "0", "gs 'blackmailer', 'Add_SMS_failure'", "(hour >= 14 and hour <= 19 and rand(0, 100) = 0 or hour = 19 and minut >= 22 or hour = 20)"
+
+	!Currently repeating content
+	elseif blackmailQW['stage'] = 5 and blackmailQW['smsday'] = 0:
+		blackmailQW['smsday'] = daystart + rand(0, 13) + 6
+		gs 'telefon', 'SetSMSSchedule', "", "0", "gs 'blackmailer', 'Add_SMS_repeat'", "daystart > blackmailQW['smsday'] and (hour >= 14 and hour <= 19 and rand(0, 100) = 0 or hour = 19 and minut >= 22 or hour = 20)"
+	end
+end
+
+
+
+
+
 	!!=============================================!!
 	!!                                             !!
 	!!                   DREAMS                    !!
@@ -99,7 +129,7 @@ end
 if $ARGS[0] = 'photo_dream1':
 	if blackmailQW['stage'] = 1: blackmailQW['stage'] = 2
 	blackmailQW['dreamday'] = daystart + 3
-	if strpos('panty_pantyrear_bra', $blackmailQW['init_flashaction']):
+	if strpos('panty_pantyrear_bra', $blackmailQW['init_flashaction']) > 0:
 		gs 'arousal', 'flashlite', -5
 	else
 		gs 'arousal', 'flash', -5
@@ -117,7 +147,12 @@ if $ARGS[0] = 'photo_dream1':
 	gs 'dream_events', 'event_end'
 
 elseif $ARGS[0] = 'photo_dream2':
-	if blackmailQW['stage'] = 2: blackmailQW['stage'] = 3
+	if blackmailQW['stage'] = 2:
+		blackmailQW['stage'] = 3
+		blackmailQW['smsday'] = daystart + 6
+		gs 'telefon', 'Blackmailer', 'icon_na', 1
+		gs 'telefon', 'SetSMSSchedule', "", "0", "gs 'blackmailer', 'Add_SMS1'", "daystart > blackmailQW['smsday'] and (hour >= 14 and hour <= 19 and rand(0, 100) = 0 or hour = 19 and minut >= 22 or hour = 20)"
+	end
 	blackmailQW['dreamday'] = daystart + 3
 	gs 'arousal', 'flash', -5
 	gs 'arousal', 'end'
@@ -215,4 +250,229 @@ end
 
 
 
+	!!=============================================!!
+	!!                                             !!
+	!!                     SMS                     !!
+	!!                                             !!
+	!!=============================================!!
+
+
+if $ARGS[0] = 'Add_SMS1':
+	gs 'telefon', 'ClearSMSSchedule', 'Blackmailer'
+	blackmailQW['stage'] = 4
+	blackmailQW['smsday'] = daystart + 2
+	blackmailQW['next_payment'] = rand(50, 100) * 10
+
+	$SMSTree['0'] = '"Hello <<pcs_firstname>>!"'
+
+		if motherKnowWhore = 0 and npc_rel['A29'] > 0:
+			$SMSTree['1'] = '"If you don''t want your mother to see this image you will do exactly as I say"'
+		elseif $start_type['loc'] = 'sg' and gruptipe ! 5:
+			$SMSTree['1'] = '"If you don''t want your friends to see this image you will do exactly as I say"'
+		else
+			$SMSTree['1'] = '"If you don''t want the world to see this image you will do exactly as I say"'
+		end
+
+				$SMSTree['2'] = '"Leave <<blackmailQW[''next_payment'']>> <b>₽</b> beneath the fourth park bench, I know you know which one."'
+					$SMSTree['3'] = '"You have three days"'
+
+	gs 'SMStext_builder', 'start'
+		gs 'SMStext_builder', 'receive', $SMSTree['0']
+		gs 'SMSText_builder', 'receive_img', $blackmailQW['init_flashimage'] + '.jpg'
+		gs 'SMStext_builder', 'receive', $SMSTree['1']
+		gs 'SMStext_builder', 'receive', $SMSTree['2']
+		gs 'SMStext_builder', 'receive', $SMSTree['3']
+		gs 'SMStext_builder', 'send', 'Blackmailer'
+	gs 'SMStext_builder', 'end'
+	killvar '$SMSTree'
+end
+
+if $ARGS[0] = 'Add_SMS1_reminder':
+	gs 'telefon', 'ClearSMSSchedule', 'Blackmailer'
+
+	$SMSTree['0'] = '"Don''t forget, if you don''t leave <<blackmailQW[''next_payment'']>> <b>₽</b> beneath the fourth park bench, you will regret it"'
+
+	gs 'SMStext_builder', 'start'
+		gs 'SMStext_builder', 'receive', $SMSTree['0']
+		gs 'SMSText_builder', 'receive_img', $blackmailQW['init_flashimage'] + '.jpg'
+		gs 'SMStext_builder', 'send', 'Blackmailer'
+	gs 'SMStext_builder', 'end'
+	killvar '$SMSTree'
+end
+
+if $ARGS[0] = 'Add_SMS_failure':
+	gs 'telefon', 'ClearSMSSchedule', 'Blackmailer'
+	blackmailQW['stage'] = -1
+
+	$SMSTree['0'] = '"Guess you like it when people know you''re a whore."'
+		$SMSTree['1'] = '"or you didn''t think I''d go through with it"'
+			$SMSTree['2'] = '"we''ll see"'
+
+	gs 'SMStext_builder', 'start'
+		gs 'SMStext_builder', 'receive', $SMSTree['0']
+		gs 'SMStext_builder', 'receive', $SMSTree['1']
+		gs 'SMStext_builder', 'receive', $SMSTree['2']
+		gs 'SMStext_builder', 'send', 'Blackmailer'
+	gs 'SMStext_builder', 'end'
+
+	if blackmailQW['stage'] < 5:
+		if blackmailQW['init_flashregion'] = 'city':
+			fame['city_sex'] += 2 * blackmailQW['total_material']
+		elseif blackmailQW['init_flashregion'] = 'gad':
+			fame['gad_sex'] += 10 * blackmailQW['total_material']
+		else
+			fame['pav_sex'] += 5 * blackmailQW['total_material']
+		end
+	end
+end
+
+
+if $ARGS[0] = 'Add_SMS_repeat':
+	gs 'telefon', 'ClearSMSSchedule', 'Blackmailer'
+	blackmailQW['stage'] = blackmailQW['stage'] * 10 + 1
+	blackmailQW['smsday'] = daystart + 2
+	blackmailQW['next_payment'] = rand(50, 100) * 10
+
+	$SMSTree['0'] = '"You know what we want"'
+
+		if motherKnowWhore = 0 and npc_rel['A29'] > 0:
+			$SMSTree['1'] = '"If you don''t want your mother to see this image you will do exactly as I say"'
+		elseif $start_type['loc'] = 'sg' and gruptipe ! 5:
+			$SMSTree['1'] = '"If you don''t want your friends to see this image you will do exactly as I say"'
+		else
+			$SMSTree['1'] = '"If you don''t want the world to see this image you will do exactly as I say"'
+		end
+
+				$SMSTree['2'] = '"Leave <<blackmailQW[''next_payment'']>> <b>₽</b> beneath the fourth park bench, I know you know which one."'
+					$SMSTree['3'] = '"You have three days"'
+
+	gs 'SMStext_builder', 'start'
+		gs 'SMStext_builder', 'receive', $SMSTree['0']
+		gs 'SMSText_builder', 'receive_img', $blackmailQW['init_flashimage'] + '.jpg'
+		gs 'SMStext_builder', 'receive', $SMSTree['1']
+		gs 'SMStext_builder', 'receive', $SMSTree['2']
+		gs 'SMStext_builder', 'receive', $SMSTree['3']
+		gs 'SMStext_builder', 'send', 'Blackmailer'
+	gs 'SMStext_builder', 'end'
+	killvar '$SMSTree'
+end
+
+
+
+	!!=============================================!!
+	!!                                             !!
+	!!                    PARK                     !!
+	!!                                             !!
+	!!=============================================!!
+
+if $ARGS[0] = 'set_park_act':
+	if blackmailQW['next_payment'] > 0:
+		act 'Walk to the fourth bench to pay your blackmailer':
+			minut += 3
+			if blackmailQW['stage'] = 4:
+				gt 'blackmailer', 'park1'
+			else
+				gt 'blackmailer', 'park_repeat'
+			end
+		end
+	end
+end
+
+
+if $ARGS[0] = 'park1':
+	menu_off = 1
+	gs 'stat'
+
+	'<center><img src="images/locations/shared/park/bench_6.jpg"></center>'
+	'You spot the bench that your blackmailer is talking about, and take a seat at the edge of it.'
+
+	if money < blackmailQW['next_payment']:
+		act 'Hide the money (<font color="red"><<blackmailQW[''next_payment'']>> <b>₽</b></font>)': '<br><font color="red">You don''t have enough money to do that.</font>'
+	else
+		act 'Hide the money (<<blackmailQW[''next_payment'']>> <b>₽</b>)':
+			*clr & cla
+			money -= blackmailQW['next_payment']
+			blackmailQW['total_payment'] += blackmailQW['next_payment']
+			blackmailQW['next_payment'] = 0
+			blackmailQW['stage'] = 5
+			blackmailQW['smsday'] = 0
+
+			minut += 1
+			gs 'stat'
+
+			act 'Quickly walk away': gt $loc, $loc_arg
+		end
+	end
+
+	act 'Walk away': gt $loc, $loc_arg
+end
+
+
+
+
+	!!=============================================!!
+	!!                                             !!
+	!!                  REPEATING                  !!
+	!!                                             !!
+	!!=============================================!!
+
+if $ARGS[0] = 'Add_SMS_repeat':
+	gs 'telefon', 'ClearSMSSchedule', 'Blackmailer'
+	blackmailQW['smsday'] = daystart + 2
+	blackmailQW['next_payment'] = rand(50, 100) * 10
+
+	$SMSTree['0'] = '"You know what we want"'
+
+		if motherKnowWhore = 0 and npc_rel['A29'] > 0:
+			$SMSTree['1'] = '"If you don''t want your mother to see this image you will do exactly as I say"'
+		elseif $start_type['loc'] = 'sg' and gruptipe ! 5:
+			$SMSTree['1'] = '"If you don''t want your friends to see this image you will do exactly as I say"'
+		else
+			$SMSTree['1'] = '"If you don''t want the world to see this image you will do exactly as I say"'
+		end
+
+				$SMSTree['2'] = '"Leave <<blackmailQW[''next_payment'']>> <b>₽</b> beneath the fourth park bench, I know you know which one."'
+					$SMSTree['3'] = '"You have three days"'
+
+	gs 'SMStext_builder', 'start'
+		gs 'SMStext_builder', 'receive', $SMSTree['0']
+		gs 'SMSText_builder', 'receive_img', $blackmailQW['init_flashimage'] + '.jpg'
+		gs 'SMStext_builder', 'receive', $SMSTree['1']
+		gs 'SMStext_builder', 'receive', $SMSTree['2']
+		gs 'SMStext_builder', 'receive', $SMSTree['3']
+		gs 'SMStext_builder', 'send', 'Blackmailer'
+	gs 'SMStext_builder', 'end'
+	killvar '$SMSTree'
+end
+
+
+if $ARGS[0] = 'park_repeat':
+	menu_off = 1
+	gs 'stat'
+
+	'<center><img src="images/locations/shared/park/bench_6.jpg"></center>'
+	'You walk to the familiar bench and take a seat at the edge of it.'
+
+	if money < blackmailQW['next_payment']:
+		act 'Hide the money (<font color="red"><<blackmailQW[''next_payment'']>> <b>₽</b></font>)': '<br><font color="red">You don''t have enough money to do that.</font>'
+	else
+		act 'Hide the money (<<blackmailQW[''next_payment'']>> <b>₽</b>)':
+			*clr & cla
+			money -= blackmailQW['next_payment']
+			blackmailQW['total_payment'] += blackmailQW['next_payment']
+			blackmailQW['next_payment'] = 0
+
+			minut += 1
+			gs 'stat'
+
+			act 'Quickly walk away': gt $loc, $loc_arg
+		end
+	end
+
+	act 'Walk away': gt $loc, $loc_arg
+end
+
+
+
+
 --- blackmailer ---------------------------------

+ 3 - 0
locations/cikl.qsrc

@@ -1320,5 +1320,8 @@ if arrsize('policeQW_courthearing_dates') > 1:
 	gs 'shortgs', 'coupled_array_sort', 'policeQW_courthearing_dates', '$policeQW_courthearing_subjects'
 end
 
+if blackmailQW['stage'] > 0: gs 'blackmailer', 'cikl'
+
+
 --- cikl ---------------------------------
 

+ 3 - 5
locations/city_park.qsrc

@@ -4,12 +4,8 @@ $location_type = 'public_outdoors'
 
 if $ARGS[0] = 'start':
 	CLOSE ALL
-
-	$loc_arg = 'start'
-	$loc = 'city_park'
+	gs 'shortgs', 'setloc', 'city_park', 'start'
 	$region = 'city'
-	$menu_loc = 'city_park'
-	$menu_arg = 'start'
 	$locclass = 'city_park'
 	menu_off = 0
 	if sound = 0:
@@ -250,6 +246,8 @@ if $ARGS[0] = 'start':
 			act 'Continue': gt 'city_park', 'start'
 		end
 	end
+
+	gs 'blackmailer', 'set_park_act'
 end
 
 if $ARGS[0] = 'luna':

+ 2 - 2
locations/din_pav.qsrc

@@ -7,8 +7,8 @@ $pavserjil = {
 	
 	set pavserhom = 1
 	'<center><img <<$set_imgh>> src="images/characters/pushkin/pavser/pavserjil2.jpg" ></center>'
-    'It is not clear why you you are drawn to him, but you can barely take you eyes off him.'
-	act 'Overnutsya':gt'lug', 'start'
+	'It is not clear why you you are drawn to him, but you can barely take you eyes off him.'
+	act 'Overnutsya': gt 'pushkin_parks', 'lug'
 }
 
 $koncepodos = {

+ 14 - 25
locations/gadforest.qsrc

@@ -3,23 +3,18 @@
 
 if $ARGS[0] = 'forest_edge':
 	*clr & cla
+	gs 'shortgs', 'setloc', 'gadforest', 'forest_edge'
+	$region = 'gad'
+	$location_type = 'secluded'
+	$forest_args1 = 'forest_edge'
 
 	! force Mira to stay here if Sveta brought Mira here by choice - temporarily overrides Miras schedule to not annoy the player
 	Mira_Stay = iif($loc ! 'Miroslava', 1 , 0)
 
 	clothesAtLocation = FUNC('lost_clothes_here','forest_edge')
 
-	$loc = 'gadforest'
-	$loc_arg = 'forest_edge'
-	$region = 'gad'
-	$location_type = 'secluded'
-	
-	$menu_loc = 'gadforest'
-	$menu_arg = 'forest_edge'
 	menu_off = 0
 
-	$forest_args1 = 'forest_edge'
-
 	CLOSE ALL
 	gs 'gadukino_event', 'sound'
 	gs 'stat'
@@ -342,23 +337,21 @@ if $ARGS[0] = 'forest_edge':
 
 	gs 'gadforest', 'picking'
 	gs 'camera', 'check_location'
+
+	gs 'blackmailer', 'set_park_act'
 end
 
 if $ARGS[0] = 'forest_outskirts':
 	*clr & cla
+	gs 'shortgs', 'setloc', 'gadforest', 'forest_outskirts'
+	$location_type = 'secluded'
+	$region = 'gad_forest'
+	$forest_args1 = 'forest_outskirts'
 
 	clothesAtLocation = FUNC('lost_clothes_here','forest_outskirts')
 
-	$loc = 'gadforest'
-	$loc_arg = 'forest_outskirts'
-	$location_type = 'secluded'
-	$region = 'gad_forest'
-	$menu_loc = 'gadforest'
-	$menu_arg = 'forest_outskirts'
 	menu_off = 0
 
-	$forest_args1 = 'forest_outskirts'
-
 	CLOSE ALL
 	gs 'gadukino_event', 'sound'
 	gs 'stat'
@@ -426,19 +419,15 @@ end
 
 if $ARGS[0] = 'forest_center':
 	*clr & cla
+	gs 'shortgs', 'setloc', 'gadforest', 'forest_center'
+	$region = 'gad_forest'
+	$location_type = 'secluded'
+	$forest_args1 = 'forest_center'
 
 	clothesAtLocation = FUNC('lost_clothes_here','forest_center')
 
-	$loc = 'gadforest'
-	$loc_arg = 'forest_center'
-	$region = 'gad_forest'
-	$location_type = 'secluded'
-	$menu_loc = 'gadforest'
-	$menu_arg = 'forest_center'
 	menu_off = 0
 
-	$forest_args1 = 'forest_center'
-
 	CLOSE ALL
 	gs 'gadukino_event', 'sound'
 	gs 'stat'

+ 27 - 0
locations/journal_quests.qsrc

@@ -528,6 +528,33 @@ if $ARGS[0] = 'start':
 			end
 		end
 	end
+	if pcs_inhib >= 35:
+		'<center><h3>Blackmailer</h3></center>'
+		if blackmailQW['stage'] = 0:
+			'It would be rather unfortunate if somebody caught you while you were flashing.'
+			'<it>There is a small, small, chance of getting caught while flashing in a park, in a church, and while washing cards.</it>'
+		elseif blackmailQW['stage'] < 0:
+			'You have refused the blackmailer once too many times.'
+		elseif blackmailQW['stage'] > 0 and blackmailQW['stage'] <= 3:
+			'You got caught while flashing! Who knows what could happen in the future?'
+		elseif blackmailQW['stage'] >= 4:
+			if blackmailQW['next_payment'] = 0:
+				'You have paid your blackmailer, but how long will that keep them quiet?'
+			else
+				'Your blackmailer has demanded you to leave <<blackmailQW[''next_payment'']>> <b>₽</b> in the nearest park.'
+				if daystart < blackmailQW['smsday'] - 1:
+					'You have <<blackmailQW[''smsday''] - daystart>> days left'
+				elseif daystart = blackmailQW['smsday'] - 1:
+					'You have until tomorrow.'
+				elseif daystart = blackmailQW['smsday']:
+					'You have until tonight!'
+				else
+					'You were too late!!'
+				end
+				'<it>You can leave the cash in the city, pav, and pushkin parks, and the gadukino forest.</it>'
+			end
+		end
+	end
 end
 
 if yearstart > 1 and university['enrolled_in_semester'] > university['semester_passed']:

+ 13 - 13
locations/katja_pantyquest.qsrc

@@ -16,7 +16,7 @@ if $ARGS[0] = 'kitchen':
 	if (katjaQW['pantiesQWstage'] < 3 or (katjaQW['pantiesQWstage'] = 3 and katjaQW['slut'] < 65)) and katjaQW['take_of_panties_day'] ! daystart:
 		'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/girl/katja/pantyquest/kitchen_sitting1.jpg"></center>'
 		'You find Katja sitting alone in a chair. "Hi '+iif( katjaQW['couple'] = 0, '<<pcs_nickname>>', 'my love')+' what are you doing here?" Katja asks when she sees you.'
-		'"I came looking for you, what are you doing?" you ask back. "I''m just waiting for my meal to finish cooking," she answers and points at the oven where some food is cooking.'
+		'"I '+iif($ARGS[1] = 'from_room', 'came looking for you', 'I was just looking around')+' , what are you doing?" you ask back. "I''m just waiting for my meal to finish cooking," she answers and points at the oven where some food is cooking.'
 		if pcs_traits['commando_lvl'] > 0 and $pantyworntype = 'none' and npc_sex['A14'] > 0 and katjaQW['no_panties_day'] ! daystart:
 			act 'Show her you are not wearing panties':
 				*clr & cla
@@ -83,14 +83,14 @@ if $ARGS[0] = 'kitchen':
 							'"See, I''m wearing panties. Happy now?" She smiles slyly before closing her legs and pulling her skirt down again.'
 						end
 					end
-					act 'leave': gt 'uni_dorm', 'second_floor'
+					act 'leave': gt 'uni_dorm', 'dorm_kitchen', 'second_floor'
 				end
 			end
 		end
 	elseif katjaQW['pantiesQWstage'] < 5 and katjaQW['take_of_panties_day'] ! daystart:
 		'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/girl/katja/pantyquest/kitchen_sitting2.jpg"></center>'
 		'You find Katja sitting alone at the dinner table. "Hi '+iif( katjaQW['couple'] = 0, '<<pcs_nickname>>', 'my love')+' what are you doing here?" Katja asks when she sees you.'
-		'"I came looking for you, what are you doing?" you ask back. "I''m just waiting for my meal to finish cooking," she answers, pointing at the oven where some food is cooking.'
+		'"I '+iif($ARGS[1] = 'from_room', 'came looking for you', 'I was just looking around')+', what are you doing?" you ask back. "I''m just waiting for my meal to finish cooking," she answers, pointing at the oven where some food is cooking.'
 		if pcs_traits['commando_lvl'] > 0 and $pantyworntype = 'none' and npc_sex['A14'] > 0 and katjaQW['no_panties_day'] ! daystart:
 			act 'Show her you are not wearing panties':
 				*clr & cla
@@ -148,7 +148,7 @@ if $ARGS[0] = 'kitchen':
 								'She then gets up, turns her butt towards you, and slowly takes off her panties, pausing to look back at you just before her pussy is visible.'
 								'Then, she hands you her panties. "Here '+iif(lazarQW['your_prize_panties_katja'] = 0, 'you can have them', 'another pair for your collection')+' since you insist that I have to be a slut, I don''t need them anymore."'								
 							end
-							act 'leave': gt 'uni_dorm', 'second_floor'
+							act 'leave': gt 'uni_dorm', 'dorm_kitchen', 'second_floor'
 						end
 					else
 						gs 'arousal', 'erotic', -2
@@ -180,7 +180,7 @@ if $ARGS[0] = 'kitchen':
 								'"Happy now?" she says when the panties are completely off.'
 								'"Yes! This is going to be so much fun. Think about how thrilling it will to be careful so you don''t give '+iif(katjaQW['boy_block'] = 1, 'other girls', 'boys')+' a peek of your pussy!" you enthusiastically chirp.'
 								'"I''m already regretting this..." Katja groans. But she does not look upset, nor does she make any move to put her panties back on.'
-								act 'leave': gt 'uni_dorm', 'second_floor'
+								act 'leave': gt 'uni_dorm', 'dorm_kitchen', 'second_floor'
 							end
 						end
 					end
@@ -191,12 +191,12 @@ if $ARGS[0] = 'kitchen':
 		if week < 4 and (katjaQW['slut'] < 100 or hour < 18): 
 			'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/girl/katja/pantyquest/kitchen_standing1.jpg"></center>'
 			'You find Katja standing at the kitchen table. "Hi '+iif( katjaQW['couple'] = 0, '<<pcs_nickname>>', 'my love')+' what are you doing here?" Katja ask when she sees you.'
-			'"I came looking for you, what are you doing?" you ask back. "I''m staring to cook my dinner," she answers.'
+			'"I '+iif($ARGS[1] = 'from_room', 'came looking for you', 'I was just looking around')+', what are you doing?" you ask back. "I''m staring to cook my dinner," she answers.'
 		else
 			katjaQW['drinks'] += 2
 			'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/girl/katja/pantyquest/kitchen_standing_with_drink.jpg"></center>'
 			'You find Katja standing at the kitchen table drinking a glass of white wine. "Hi '+iif( katjaQW['couple'] = 0, '<<pcs_nickname>>', 'my love')+' what are you doing here?" Katja ask when she sees you.'
-			'"I came looking for you, what are you doing?" you ask back. "I''m just having a glass of wine before I start to cook my dinner," she answers.'
+			'"I '+iif($ARGS[1] = 'from_room', 'came looking for you', 'I was just looking around')+', what are you doing?" you ask back. "I''m just having a glass of wine before I start to cook my dinner," she answers.'
 			if katjaQW['QWstage'] > 1:
 				'"Why don''t you have a glass with me?" she asks and looks for another glass.'
 				act 'Drink a glass with Katja':
@@ -238,10 +238,10 @@ if $ARGS[0] = 'kitchen':
 							'So you try to discreetly bend down to see up her skirt when she has her back to you.'
 							'But she notices you. "No, I did not put on my panties, just as you asked me. This is what you want to see, isn''t it, you pervert?" she says mockingly as she pulls up her skirt to show you her naked behind.'
 							'After a moment, she lets her skirt fall down and says, "That is enough for voyeurs like you." Then, she continues with her cooking.'
-							act 'Say thanks for the wine and leave': gt 'uni_dorm', 'second_floor'
+							act 'Say thanks for the wine and leave': gt 'uni_dorm', 'dorm_kitchen', 'second_floor'
 						end
 					end
-					act 'Say thanks for the wine and leave': gt 'uni_dorm', 'second_floor'
+					act 'Say thanks for the wine and leave': gt 'uni_dorm', 'dorm_kitchen', 'second_floor'
 				end
 			end
 		end
@@ -278,12 +278,12 @@ if $ARGS[0] = 'kitchen':
 				'So you try to discreetly bend down to see up her skirt when she has her back to you.'
 				'But she notices you. "No, I did not put on my panties, just as you asked. This is what you want to see, isn''t it, you pervert," she says mockingly as she pulls up her skirt to show you her naked behind.'
 				'After a moment, she lets her skirt fall down and says, "That''s enough for voyeurs like you." Then, she continues with her cooking.'
-				act 'leave': gt 'uni_dorm', 'second_floor'
+				act 'leave': gt 'uni_dorm', 'dorm_kitchen', 'second_floor'
 			end
 		end
-		act 'leave': gt 'uni_dorm', 'second_floor'
+		act 'leave': gt 'uni_dorm', 'dorm_kitchen', 'second_floor'
 	end
-	act 'leave': gt 'uni_dorm', 'second_floor'
+	act 'leave': gt 'uni_dorm', 'dorm_kitchen', 'second_floor'
 end
 
 if $ARGS[0] = 'kitchen_show_pussy':
@@ -298,7 +298,7 @@ if $ARGS[0] = 'kitchen_show_pussy':
 	'But she does hike up her skirt and shows you her smoothly shaved pussy, not hidden by any panties.'
 	'"I do trust you, it''s just that--" you start saying but are promptly cut off. "You are a pervert that gets off on ogling innocent girls'' naked private parts," she says with a naughty glint in her eyes.'
 	'She then lets her skirt fall and turns back to her cooking.'
-	act 'leave': gt 'uni_dorm', 'second_floor'
+	act 'leave': gt 'uni_dorm', 'dorm_kitchen', 'second_floor'
 end
 
 

+ 7 - 12
locations/mother.qsrc

@@ -112,22 +112,17 @@ if $ARGS[0] = '':
 
 	$mother_clothes[2] = {
 		if motherKnowWhore = 0 and motherKnowSpravka = 0 and npc_QW['A29'] = 0:
-			if momslut < 2:
-				'Your <<$npc_nickname[''A29'']>> looks at you, her eyes open wide in shock.'
-				'"<<$pcs_nickname>>, people live here! Aren''t you ashamed, walking around naked like that? Get dressed right now!"'
-			else
-				'Your <<$npc_nickname[''A29'']>> shakes her head.'
-				'"You could at least dress while at home, <<$pcs_nickname>>! Do you want the whole family to know that you''re a whore?"'
-			end
-		elseif (motherKnowWhore > 0 or motherKnowSpravka > 0) and npc_QW['A29'] = 1:
-			if momslut < 2:
+			'Your <<$npc_nickname[''A29'']>> looks at you, her eyes open wide in shock.'
+			'"<<$pcs_nickname>>, people live here! Aren''t you ashamed, walking around naked like that? Get dressed right now!"'
+		elseif (motherKnowWhore > 0 or (motherKnowSpravka > 0 and rape_day = 0)) and npc_QW['A29'] = 1:
+			if motherKnowWhore > 0:
 				'Your <<$npc_nickname[''A29'']>> looks angrily at you.'
 				'"Even at home, my whore of a daughter doesn''t have the decency to get dressed when people are around! You better get dressed right <i>now</i>! I never want to see this again!"'
 			else
 				'Your <<$npc_nickname[''A29'']>> shakes her head.'
-				'"You could at least dress at home, <<$pcs_nickname>>! Do you want the whole family to know that you''re a whore?"'
+				'"You could at least dress while at home, <<$pcs_nickname>>! Do you want the whole family to know that you''re a whore?"'
 			end
-		elseif npc_QW['A29'] >= 2:
+		else
 			'Your <<$npc_nickname[''A29'']>> looks at you sternly.'
 			'"<<$pcs_nickname>>, could you at least put some clothes on while you''re at home? If you want to impress some fancy man, go do it at his place."'
 		end
@@ -1155,7 +1150,7 @@ if $ARGS[0] = 'pregreact1':
 					act 'Continue': gt 'mother'
 				end
 			end
-			if rape[2] > daystart - 30:
+			if rape_day+30 > daystart:
 				act'I was raped':
 					cla & *nl
 					'"I... I don''t actually know. I was..." you stammer as you struggle to get the next word out. "I was raped..."'

+ 2 - 2
locations/parkM.qsrc

@@ -152,7 +152,7 @@ if $ARGS[0] = 'sexrand3':
 		if $home['town'] = 'pavlovsk':
 			gt 'pav_park', 'start'
 		elseif $home['town'] = 'oldtown':
-			gt 'parks', 'start'
+			gt 'pushkin_parks', 'start'
 		else
 			gt 'city_park', 'start'
 		end
@@ -174,7 +174,7 @@ if $ARGS[0] = 'sexrand4':
 		if $home['town'] = 'pavlovsk':
 			gt 'pav_park', 'start'
 		elseif $home['town'] = 'oldtown':
-			gt 'parks', 'start'
+			gt 'pushkin_parks', 'start'
 		else
 			gt 'city_park', 'start'
 		end

+ 0 - 80
locations/parks.qsrc

@@ -1,80 +0,0 @@
-# parks
-!!2021/05/12
-
-if $ARGS[0] = 'start':
-	*clr & cla
-	$location_type = 'public_outdoors'
-	$loc_arg = 'start'
-	$loc = 'parks'
-	$menu_loc = 'parks'
-	$menu_arg = 'start'
-	$locclass = 'city_park'
-	menu_off = 0
-	gs'stat'
-	'<center><B>Pushkin Town Park</B></center>'
-	'<center><img <<$set_imgh>> src="images/locations/pushkin/park/parkus.jpg" ></center>'
-	'The gardens of the old palace have been sculpted over many years into a wonder landscape with a tranquil atmosphere.'
-	'The Pushkin Park is a must-see for tourists and servers as the main attraction of Pushkin.'
-
-	'Wander deeper into the <a href="exec:gt ''lug'',''start''">park</a>.'
-
-
-	act 'Go to Okhlopkov Square (0:05)': minut += 5 &  gt 'pushkin_sq'
-
-	act 'Go to Town Center (0:10)': minut += 10 & gt 'pushkin'
-
-	act 'Walk around the park (1 hour)':
-		if pcs_exhib = 100 and exhibitionQW = 0: gt 'kseniyaQW', 'event1', 1
-		cla
-		minut += 60
-		pcs_mood += 10
-		gs'stat'
-		'You leisurely stroll through Pushkin Park, breathing in the fresh air, and reflecting on the vicissitudes of fate.'
-
-		act 'Complete outing.':gt 'parks','start'
-	end
-
-	gs 'park_walkevents', 'run'
-
-	if hour >= 20 or hour < 6 :
-		if func('homes_properties', 'has_access', 'old_town_apartment') = 0 :
-			!nowhere to live in town
-			'It''s quite dark now, and you have no where to stay nearby. Maybe you should try to sleep on a bench?'
-		else
-			'It''s quite dark now, and you don''t feel like walking. Maybe you should try sleeping on a bench?'
-		end
-		act 'Sleep on a bench': gt'placer_sex','sleeping_park_bench'
-	end
-
-	act 'Sit down on the bench':gs 'placer_sex', 'sitting_park_bench'
-	
-	if mc_inventory['joints'] > 0 and drugVars['weed_high'] = 0: act 'Smoke a joint': minut += 10 & gs 'drugs', 'joint' & gt $loc, $loc_arg
-
-	if pcs_inhib >= 35 or exhibitionist_lvl > 0:
-		act 'Flash your tits':
-			menu_off = 1
-			if pcs_exhib = 100 and exhibitionQW = 0: gt 'kseniyaQW', 'event1'
-			*clr & cla
-			inhib_exp += rand(1,3)
-			gs 'flash', 'tits', 'outdoors', 5
-			gs 'stat'
-
-			act 'Continue': gt 'parks', 'start'
-		end
-	end
-
-	if exhibitionist_lvl > 1:
-		act 'Flash your pussy':
-			menu_off = 1
-			if pcs_exhib = 100 and exhibitionQW = 0: gt 'kseniyaQW', 'event1'
-			*clr & cla
-			gs 'flash', 'pussy', 'outdoors', 5
-			gs 'stat'
-
-			act 'Continue': gt 'parks', 'start'
-		end
-	end
-end
-
---- parks ---------------------------------
-

+ 3 - 4
locations/pav_park.qsrc

@@ -34,12 +34,9 @@ end
 
 if $ARGS[0] = 'start':
 	*clr & cla
-	$loc = 'pav_park'
+	gs 'shortgs', 'setloc', 'pav_park', 'start'
 	$region = 'pav'
-	$loc_arg = 'start'
 	$location_type = 'public_outdoors'
-	$menu_loc = 'pav_park'
-	$menu_arg = 'start'
 	$locclass = 'city_park'
 	menu_off = 0
 	gs 'stat'
@@ -312,6 +309,8 @@ if $ARGS[0] = 'start':
 	gs 'prostitution_functions', 'check_solicitation_event'
 
 	gs 'camera', 'check_location'
+
+	gs 'blackmailer', 'set_park_act'
 end
 
 ! Albina Starlets events.

+ 2 - 2
locations/pav_pharmacy.qsrc

@@ -629,7 +629,7 @@ if $ARGS[0] = 'buy_preg_test':
 			'"<<$pcs_nickname>>! What happened??"'
 			'"I know, Aunt," you say, deeply embarrassed. "I just... made a mistake..."'
 			'"I guess we all make those," she sighs, taking a small box off the shelf. "Goodness knows, your sister''s living proof of that. Literally."'
-	!!		if rape[2] > (daystart - 3):
+	!!		if rape_day+3 > daystart:
 	!!			act'I was raped':gt 'pav_pharmacy', 'buy_morning_after_raped'
 	!!		end
 		end
@@ -762,7 +762,7 @@ if $ARGS[0] = 'buy_morning_after':
 		if birth_control['condom_stealth'] >= daystart - 3:
 			act'I got stealthed':gs 'pav_pharmacy', 'morning_after_stealth_meek'
 		end
-!!		if rape[2] > (daystart - 3):
+!!		if rape_day+3 > daystart:
 !!			act'I was raped':gt 'pav_pharmacy', 'buy_morning_after_raped'
 !!		end
 	end

+ 127 - 50
locations/lug.qsrc → locations/pushkin_parks.qsrc

@@ -1,11 +1,85 @@
-# lug
-!!2021/04/15
+# pushkin_parks
+!!2021/05/12
+
 if $ARGS[0] = 'start':
-	$loc_arg = 'start'
-	$loc = 'lug'
+	*clr & cla
 	$location_type = 'public_outdoors'
-	$menu_loc = 'lug'
-	$menu_arg = 'start'
+	gs 'shortgs', 'setloc', 'pushkin_parks', 'start'
+	$region = 'pushkin'
+	$locclass = 'city_park'
+	menu_off = 0
+	gs'stat'
+	'<center><B>Pushkin Town Park</B></center>'
+	'<center><img <<$set_imgh>> src="images/locations/pushkin/park/parkus.jpg" ></center>'
+	'The gardens of the old palace have been sculpted over many years into a wonder landscape with a tranquil atmosphere.'
+	'The Pushkin Park is a must-see for tourists and servers as the main attraction of Pushkin.'
+
+	'Wander deeper into the <a href="exec:gt ''pushkin_parks'', ''lug''">park</a>.'
+
+
+	act 'Go to Okhlopkov Square (0:05)': minut += 5 & gt 'pushkin_sq'
+
+	act 'Go to Town Center (0:10)': minut += 10 & gt 'pushkin'
+
+	act 'Walk around the park (1 hour)':
+		if pcs_exhib = 100 and exhibitionQW = 0: gt 'kseniyaQW', 'event1', 1
+		cla
+		minut += 60
+		pcs_mood += 10
+		gs'stat'
+		'You leisurely stroll through Pushkin Park, breathing in the fresh air, and reflecting on the vicissitudes of fate.'
+
+		act 'Complete outing.':gt 'pushkin_parks','start'
+	end
+
+	gs 'park_walkevents', 'run'
+
+	if hour >= 20 or hour < 6 :
+		if func('homes_properties', 'has_access', 'old_town_apartment') = 0 :
+			!nowhere to live in town
+			'It''s quite dark now, and you have no where to stay nearby. Maybe you should try to sleep on a bench?'
+		else
+			'It''s quite dark now, and you don''t feel like walking. Maybe you should try sleeping on a bench?'
+		end
+		act 'Sleep on a bench': gt'placer_sex','sleeping_park_bench'
+	end
+
+	act 'Sit down on the bench':gs 'placer_sex', 'sitting_park_bench'
+	
+	if mc_inventory['joints'] > 0 and drugVars['weed_high'] = 0: act 'Smoke a joint': minut += 10 & gs 'drugs', 'joint' & gt $loc, $loc_arg
+
+	if pcs_inhib >= 35 or exhibitionist_lvl > 0:
+		act 'Flash your tits':
+			menu_off = 1
+			if pcs_exhib = 100 and exhibitionQW = 0: gt 'kseniyaQW', 'event1'
+			*clr & cla
+			inhib_exp += rand(1,3)
+			gs 'flash', 'tits', 'outdoors', 5
+			gs 'stat'
+
+			act 'Continue': gt 'pushkin_parks', 'start'
+		end
+	end
+
+	if exhibitionist_lvl > 1:
+		act 'Flash your pussy':
+			menu_off = 1
+			if pcs_exhib = 100 and exhibitionQW = 0: gt 'kseniyaQW', 'event1'
+			*clr & cla
+			gs 'flash', 'pussy', 'outdoors', 5
+			gs 'stat'
+
+			act 'Continue': gt 'pushkin_parks', 'start'
+		end
+	end
+
+	gs 'blackmailer', 'set_park_act'
+end
+
+if $ARGS[0] = 'lug':
+	$location_type = 'public_outdoors'
+	gs 'shortgs', 'setloc', 'pushkin_parks', 'lug'
+	$region = 'pushkin'
 	$locclass = 'city_park'
 	menu_off = 0
 	gs'stat'
@@ -22,10 +96,10 @@ if $ARGS[0] = 'start':
 
 			act 'Tell him your number':
 				cla
-				gs'boyfrend', 'start'
+				gs 'boyfrend', 'start'
 				stopboy = 0
 				'<<$boydesc>> thanks you and leaves.'
-				act 'Complete outing':gt'lug', 'start'
+				act 'Complete outing': gt 'pushkin_parks', 'lug'
 			end
 		end
 
@@ -51,7 +125,7 @@ if $ARGS[0] = 'start':
 			gs 'flash', 'tits', 'outdoors', 5
 			gs 'stat'
 
-			act 'Continue': gt 'lug', 'start'
+			act 'Continue': gt 'pushkin_parks', 'lug'
 		end
 	end
 
@@ -62,18 +136,18 @@ if $ARGS[0] = 'start':
 			gs 'flash', 'pussy', 'outdoors', 5
 			gs 'stat'
 
-			act 'Continue': gt 'lug', 'start'
+			act 'Continue': gt 'pushkin_parks', 'lug'
 		end
 	end
 
 	act 'Visit the pond':
 		set minut += 10
-		gt 'lug', 'prut'
+		gt 'pushkin_parks', 'prut'
 	end
 
 	act 'Go toward the park entrance':
 		set minut += 5
-		gt 'parks', 'start'
+		gt 'pushkin_parks', 'start'
 	end
 	
 	gs 'events', 'street_cum'
@@ -81,45 +155,48 @@ end
 
 
 if $ARGS[0] = 'prut':
-    cls
-    gs'stat'
-    $location_type = 'public_outdoors'
+	cls
+	gs 'shortgs', 'setloc', 'pushkin_parks', 'prut'
+	gs 'stat'
+	$location_type = 'public_outdoors'
 
-    '<center><B>Park Pond</B></center>'
-    '<center><img <<$set_imgh>> src="images/locations/pushkin/park/prut.jpg" ></center>'
+	'<center><B>Park Pond</B></center>'
+	'<center><img <<$set_imgh>> src="images/locations/pushkin/park/prut.jpg" ></center>'
 	'A large and pretty pond near the end of the park, it continues off in to a wooded area.'
 
 
-    act 'Explore the wooded area':
-        set minut += 10
-        gt 'lug', 'prut2'
-    end
+	act 'Explore the wooded area':
+		set minut += 10
+		gt 'pushkin_parks', 'prut2'
+	end
 
-    act 'Return to the small meadow':
-        set minut += 10
-        gt'lug', 'start'
-    end
+	act 'Return to the small meadow':
+		set minut += 10
+		gt'pushkin_parks', 'start'
+	end
 end
 
 if $ARGS[0] = 'prut2':
-    cls
-    gs'stat'
-    $location_type = 'public_outdoors'
+	cls
+	gs 'shortgs', 'setloc', 'pushkin_parks', 'prut2'
+	$region = 'pushkin'
+	gs 'stat'
+	$location_type = 'public_outdoors'
 
-    '<center><B>Woodland Pond</B></center>'
-    '<center><img <<$set_imgh>> src="images/locations/pushkin/park/prut2.jpg" ></center>'
+	'<center><B>Woodland Pond</B></center>'
+	'<center><img <<$set_imgh>> src="images/locations/pushkin/park/prut2.jpg" ></center>'
 	'The pond is still and beautiful here and the trees offer some privacy, it feels quite magical.'
 	'There is a large field beyond that is hidden from the tourist trail.'
 
-    act 'Go to the field':
-        set minut += 15
-        gt 'lug', 'luzhayka'
-    end
+	act 'Go to the field':
+		set minut += 15
+		gt 'pushkin_parks', 'luzhayka'
+	end
 
-    act 'Follow the pond back out of the woods':
-        set minut += 10
-        gt 'lug', 'prut'
-    end
+	act 'Follow the pond back out of the woods':
+		set minut += 10
+		gt 'pushkin_parks', 'prut'
+	end
 
 	! Setup for teleport circle
 	if tpKnown['PushkinPark'] = 1:
@@ -140,8 +217,7 @@ if $ARGS[0] = 'prut2':
 	if temper >= 15 and month >= 5 and month <= 9 and hour >= 6 and hour <= 20:
 		if pcs_inhib > 30:
 			act 'Strip off and skinny dip (1:00)':
-				cla
-				*clr
+				*clr & cla
 				cumspclnt = 4
 				gs 'cum_cleanup'
 				minut += 60
@@ -156,7 +232,7 @@ if $ARGS[0] = 'prut2':
 					'Once you are naked you play around and have fun in the pond, enjoying the feel of the warm water on your body. The clean pond water refreshes and invigorates you.'
 				elseif pcs_inhib >= 60:
 					'<center><img <<$set_imgh>> src="images/locations/pavlovsk/lake/secluded_beach/dress/undressnudebeach.jpg"></center>'
-					'Not caring if anyone is looking at you, you slowly take off your clothes.  You peel off each item like a stripper. Soon, you are completely naked.'
+					'Not caring if anyone is looking at you, you slowly take off your clothes. You peel off each item like a stripper. Soon, you are completely naked.'
 					'You play around and have fun in the pond, enjoying the feel of the warm water on your naked body. The clean pond water refreshes and invigorates you.'
 				else
 					'<center><img <<$set_imgh>> src="images/locations/pavlovsk/lake/secluded_beach/dress/undressnudebeach.jpg"></center>'
@@ -166,7 +242,7 @@ if $ARGS[0] = 'prut2':
 				act'Get out and dressed':
 					gs 'underwear', 'wear'
 					gs 'clothing', 'wear_last_worn'
-					gt 'lug', 'prut2'
+					gt 'pushkin_parks', 'prut2'
 				end
 			end
 		else
@@ -176,17 +252,18 @@ if $ARGS[0] = 'prut2':
 end
 
 if $ARGS[0] = 'luzhayka':
-    cls
-    gs'stat'
+	cls
+	gs 'shortgs', 'setloc', 'pushkin_parks', 'luzhayka'
+	gs'stat'
 
-    '<center><img <<$set_imgh>> src="images/locations/pushkin/park/luzhayka.jpg" ></center>'
+	'<center><img <<$set_imgh>> src="images/locations/pushkin/park/luzhayka.jpg" ></center>'
 	'A quiet hidden field that is well maintained but apart from the occasional grounds keeper you feel like it is all yours.'
 
-    act 'Return to the woodland pond':
-        set minut += 15
-        gt 'lug', 'prut2'
-    end
+	act 'Return to the woodland pond':
+		set minut += 15
+		gt 'pushkin_parks', 'prut2'
+	end
 end
 
---- lug ---------------------------------
+--- pushkin_parks ---------------------------------
 

+ 1 - 1
locations/pushkin_sq.qsrc

@@ -13,7 +13,7 @@ gs'stat'
 'There are many small cafes and shops also a flourishing nightlife and entertainment activities.'
 
 'Another street runs straight back to the <a href="exec:minut += 5 & gt ''pushkin''">Pushkin Town Center</a>.'
-'Okhlopkov Square itself leads to the <a href="exec:minut += 5 & gt ''parks'',''start''">Pushkin Park</a>.'
+'Okhlopkov Square itself leads to the <a href="exec:minut += 5 & gt ''pushkin_parks'',''start''">Pushkin Park</a>.'
 if hour >= 8 and hour <= 20:
 	'A small <a href="exec:gt ''larek'',''start''">grocery store</a> is currently open.'
 else

+ 31 - 9
locations/saveupdater.qsrc

@@ -1,13 +1,15 @@
 # saveupdater
 !! This file is for updating save game when one variable have been replaced by another.
+!! The version number is updated for releases and when it is required because we cannot run checks to block repeated updating
 
-!! If you have replaced a variable for another, then you should first go to saveg.gsrc and update the version number as instructed there.
-!! Then at the bottom of this file just after the last end add the following line:
+!! The version number is in saveg.gsrc should only be updated by the person preparing the release, if it needs to be done outside of releases then inform the person in charge of releases to ensure correct number change is made.
+
+!! When updating the version number: at the bottom of this file just after the last end add the following line:
 !! if ((100*version_major +version_minor)*100+version_revision)*100+version_patch  < "new version number":
-!! where "new version number" should be as instructed in the start of saveg.qsrc
-!! Then add you replacement of variables after this line. You can see how this is done by looking through this file.
+!! where "new version number" should either match that in saveg.qsrc or be for the next minor increment
+!! Then add any replacement variables after this line. You can see how this is done by looking through this file.
 
-!! When you do this you should always commit this file and saveg.qsrc at the same time.
+!! When changing version number you must commit this file and saveg.qsrc at the same time.
 
 
 temp_current_save_version = ( (100*version_major + version_minor) * 100 + version_revision ) * 100 + version_patch
@@ -2668,7 +2670,7 @@ end
 
 !!------------------------------------!!Version 0.9.3.0!!-----------------------------------------------!!
 
-if temp_current_save_version < 00090300:
+if temp_current_save_version < 00090204:
 	!! Drugs variable migration
 	if NarkImmune				> 0:	drugVars['cheat_immune']			= NarkImmune			& killvar 'NarkImmune'
 	if SNarkPriton				> 0:	drugVars['city_drugden']			= SNarkPriton			& killvar 'SNarkPriton'
@@ -2829,10 +2831,10 @@ if temp_current_save_version < 00090300:
 	!! Telephone call migration to their correct event locations
 	if arrpos('$contact', 'A108') > -1:
 		temp_pos = arrpos('$contact', 'A108')
-		if strpos($contactICode[temp_pos], 'telefon') > -1:
+		if strpos($contactICode[temp_pos], 'telefon') > 0:
 			$contactICode[temp_pos] = replace($contactICode[temp_pos], "'telefon', 'vladimir'", "'vladimirQW_loc', 'telephone_call'")
 		end
-		if strpos($contactISche[temp_pos], 'vladimirday') > -1:
+		if strpos($contactISche[temp_pos], 'vladimirday') > 0:
 			$contactISche[temp_pos] = replace($contactISche[temp_pos], "vladimirday", "vladimirQW['day']")
 		end
 		killvar 'temp_pos'
@@ -2840,7 +2842,7 @@ if temp_current_save_version < 00090300:
 
 	if arrpos('$contact', 'A192') > -1:
 		temp_pos = arrpos('$contact', 'A192')
-		if strpos($contactOCode[temp_pos], 'telefon') > -1:
+		if strpos($contactOCode[temp_pos], 'telefon') > 0:
 			$contactOCode[temp_pos] = replace($contactOCode[temp_pos], 'telefon', 'nastja')
 		end
 		killvar 'temp_pos'
@@ -2860,6 +2862,26 @@ if temp_current_save_version < 00090300:
 		killvar 'temp_maxi'
 		killvar 'temp_i'
 	end
+
+
+	!! region added to the blackmailer array:
+	if $blackmailQW['init_flashloc'] ! '' and $blackmailQW['init_flashregion'] = '':
+		if strpos($blackmailQW['init_flashloc'], 'city') > 0:
+			$blackmailQW['init_flashregion'] = 'city'
+		elseif strpos($blackmailQW['init_flashloc'], 'pav') > 0:
+			$blackmailQW['init_flashregion'] = 'pav'
+		elseif strpos($blackmailQW['init_flashloc'], 'gad') > 0:
+			$blackmailQW['init_flashregion'] = 'gad'
+		elseif strpos($blackmailQW['init_flashloc'], 'pushkin') > 0:
+			$blackmailQW['init_flashregion'] = 'pushkin'
+		elseif $start_type['loc'] = 'city':
+			$blackmailQW['init_flashregion'] = 'city'
+		else
+			$blackmailQW['init_flashregion'] = 'pav'
+		end
+
+		blackmailQW['total_material'] = 1
+	end
 end
 
 

+ 1 - 1
locations/succubus.qsrc

@@ -1042,7 +1042,7 @@ if $args[0] = 'sucwalkinggo':
 		elseif sucslpzone = 4:
 			if sctemp = 1: $sucgoloc = 'pushkin' & $sucgometka = ''
 			if sctemp = 2: $sucgoloc = 'pushkin_sq' & $sucgometka = ''
-			if sctemp = 3: $sucgoloc = 'parks' & $sucgometka = ''
+			if sctemp = 3: $sucgoloc = 'pushkin_parks' & $sucgometka = ''
 			if sctemp = 4: $sucgoloc = 'pav_market' & $sucgometka = ''
 			if sctemp = 5: $sucgoloc = 'city_industrial' & $sucgometka = ''
 		elseif sucslpzone = 5:

+ 1 - 1
locations/treeCircle.qsrc

@@ -29,7 +29,7 @@ $treeCircLoc['GadForest'] = 'gadforest'
 $treeCircArg['GadForest'] = 'forest_edge'
 !Pushkin Park Location
 $treeCircName['PushkinPark'] = 'Pushkin Park'
-$treeCircLoc['PushkinPark'] = 'lug'
+$treeCircLoc['PushkinPark'] = 'pushkin_parks'
 $treeCircArg['PushkinPark'] = 'prut2'
 !Communal Village Spring Location
 $treeCircName['Village'] = 'Communal Village Spring'

+ 422 - 73
locations/uni_dorm.qsrc

@@ -1,5 +1,5 @@
 # uni_dorm
-!!2022/10/05 - Alaratt
+!!2024/18/03 - Nutluck
 
 if $ARGS[0] = 'start':
 	*clr & cla
@@ -10,11 +10,11 @@ if $ARGS[0] = 'start':
 	gs 'themes', 'indoors'
 	minut += 1
 	gs 'stat'
+	$uni_dorm['floor'] = 'start'
 	*clr & cla
 	'<center><b><font color="maroon">Dormitory</font></b></center>'
 	'<center><img <<$set_imgh>> src="images/locations/city/island/university/dorm/dorm.jpg"></center>'
 	'You walk up to the dorm building and head inside. It''s pretty clean and in good shape. An older woman, with a very unpleasant and judgmental look on her face sits in a room just off the main hallway. It has a partially glass wall and a window, splitting it from the main room. She looks up at you as you enter, her look telling you she''s already judging you as her face frowns into a look of disapproval.'
-
 	act 'Head outside':
 		minut += 1
 		killvar 'university_dorm'
@@ -26,13 +26,11 @@ if $ARGS[0] = 'start':
 			*clr & cla
 			'<center><img <<$set_imgh>> src="images/locations/city/island/university/dorm/dorm.jpg"></center>'
 			'As you walk by, you take out your student ID and show it to her. She looks for just a second and nods before going back to what she was doing as you head for the elevators.'
-
 			act 'Take the elevator': gt 'uni_dorm', 'elevator'
 		end
 	else
 		menu_off = 1
 		'Since you''re not attending the university and don''t have a student ID, you won''t be allowed access to the dorms unless you''re on the guest list of a student.'
-
 		if DjibrilQW['invite'] = 1 and hour >= 8 and hour < 22:
 			act 'I''m here to visit Djibril':
 				*clr & cla
@@ -40,7 +38,6 @@ if $ARGS[0] = 'start':
 				'You walk over to the counter and pull out your ID. "I''m here to visit Djibril."' 
 				'The woman gives you a look of complete disgust. "What, your own kind not good enough for you? Go ahead and take care of those black cocks. He''s on the eighth floor, room 810."' 
 				'She turns away from you and goes back to what she was doing. Not wanting to get into an argument with her, you say nothing and quickly head for the elevator.'
-
 				act 'Take the elevator': gt 'uni_dorm', 'elevator'
 			end
 		end
@@ -54,7 +51,6 @@ if $ARGS[0] = 'start':
 				'She turns away from you and goes back to what she was doing. Not wanting to get into an argument with her, you say nothing and quickly head for the elevator.'
 				reccoldorm = 1
 				goshiflag = 1
-
 				act 'Take the elevator': gt 'uni_dorm', 'elevator'
 			end
 		end
@@ -77,7 +73,6 @@ if $ARGS[0] = 'start':
 					'You walk over to the counter and pull out your ID. "I''m here to visit Kendra."' 
 					'The woman gives you a look of complete disgust. "What, a man not good enough for you? Go ahead and serve that black whore. She''s on the eighth floor, room 801."' 
 					'She turns away from you and goes back to what she was doing. Not wanting to get into an argument with her, you say nothing and quickly head for the elevator.'
-
 					act 'Take the elevator': gt 'uni_dorm', 'elevator'
 				end
 			end
@@ -90,7 +85,17 @@ if $ARGS[0] = 'start':
 				'You walk over to the counter and pull out your ID. "I''m here to visit Katja Meynold."' 
 				'The woman smiles. "You''re one of Katja''s friends? She''s such a sweet girl. She''s on the second floor, room 204."'
 				'She lets you in and you thank her before heading for the elevator.'
-
+				act 'Take the elevator': gt 'uni_dorm', 'elevator'
+			end
+		end
+		
+		if artemQW['knows_dorm_room_number'] > 0 and yearstart > 1 and hour >= 8 and hour < 22:
+			act 'I''m here to visit Artem':
+				*clr & cla
+				'<center><img <<$set_imgh>> src="images/locations/city/island/university/dorm/dorm.jpg"></center>'
+				'You walk over to the counter and pull out your ID. "I''m here to visit Artem Chebotarev."' 
+				'The woman smiles. "You''re one of Artem''s friends? He''s such a sweet boy. He''s on the second floor, room 209."'
+				'She lets you in and you thank her before heading for the elevator.'
 				act 'Take the elevator': gt 'uni_dorm', 'elevator'
 			end
 		end
@@ -132,7 +137,7 @@ if $ARGS[0] = 'elevator':
 	'<center><b><font color="maroon">Dormitory</font></b></center>'
 	'<center><img <<$set_imgh>> src="images/locations/city/island/university/dorm/elevator.jpg"></center>'
 	'You enter the dorm elevator. It seems to be in decent shape and fairly well maintained. The panel of floor numbers awaits your input.'
-	if func('uniutil', 'student', 'enrolled'):
+	if func('homes_properties', 'can_live_here'):
 		'Your dorm room is on the tenth floor.'
 	end
 
@@ -157,15 +162,53 @@ if $ARGS[0] = 'second_floor':
 	$location_type = 'public_indoors'
 	killvar '$locclass'
 	minut += 1
+	$uni_dorm['floor'] = 'second_floor'
 	gs 'katja_meynold_schedule'
+	!!gs 'artem_chebotarev_schedule'
 	gs 'stat'
 	*clr & cla
 	'<center><img <<$set_imgh>> src="images/locations/city/island/university/dorm/dorm_hall.jpg"></center>'
 	'Before you is the usual dorm hallway with the dilapidated walls of the second floor. You can hear music and loud talking from drunk students escaping from some rooms.'
-
+	if totminut > uni_dorm['event_minut']:
+		if hour > 2 and (week < 6 and hour < 15) or (week > 5 and hour < 11): 
+			if rand(0,9) = 0: gt 'uni_dorm_events', 'dorm_floor'
+		else
+			if rand(0,4) = 0: gt 'uni_dorm_events', 'dorm_floor'	
+		end
+	end
 	act 'Elevator': gt 'uni_dorm', 'elevator'
+	if func('homes_properties', 'has_access', 'university_dorm'):
+		act 'Go to the shared lounge': gt 'uni_dorm', 'dorm_lounge'
+		act 'Go to the shared kitchen': gt 'uni_dorm', 'dorm_kitchen'
+		act 'Enter the women''s shower': minut += 1 & gt 'uni_dorm', 'dorm_shower_women'
+		gs 'willpower', 'exhib', 'self'
+		if will_cost <= pcs_willpwr:
+			act 'Enter the men''s shower (<<will_cost>> Willpower)':
+				gs 'willpower', 'exhib', 'self'
+				gs 'willpower', 'pay', 'self'
+				gs 'stat'
+				gt 'uni_dorm', 'dorm_shower_men'
+			end
+		else
+			act 'Enter the men''s Shower (<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 katjaQW['knows_dorm_room_number'] > 0 and yearstart > 1 and katjaQW['QWstage'] >= 2:
+	act 'Enter the women''s restroom': minut += 1 & gt 'uni_dorm', 'womens_restroom'
+
+	gs 'willpower', 'exhib', 'self'
+	if will_cost <= pcs_willpwr:
+		act 'Enter the men''s restroom (<<will_cost>> Willpower)':
+			gs 'willpower', 'exhib', 'self'
+			gs 'willpower', 'pay', 'self'
+			gs 'stat'
+			gt 'uni_dorm', 'mens_restroom'
+		end
+	else
+		act 'Enter the men''s restroom (<font color="red"><<will_cost>> Willpower</font>)': '<br><font color="red">You don''t have enough willpower to use this action.</font>'
+	end
+
+	if katjaQW['knows_dorm_room_number'] > 0 and yearstart > 1:
 		act 'Katja''s room':
 			*clr & cla 
 			if locat['katja'] = 24 or locat['katja']  = 31 or locat['katja']  = 35 or locat['katja']  = 51 or locat['katja']  = 52:
@@ -192,7 +235,7 @@ if $ARGS[0] = 'second_floor':
 				elseif (locat['katja'] = 32 or locat['katja'] = 33) and katjaQW['kitchen_day'] ! daystart:
 					'<center><img <<$set_imgh>> src="images/locations/city/island/university/dorm/dorm_hall.jpg"></center>'
 					'You knock on the door, but no one answers. Noticing what time it is, you realise that Katja is likely in the shared kitchen.'
-					act 'Check if Katja is in the kitchen': gt 'katja_pantyquest', 'kitchen'
+					act 'Check if Katja is in the kitchen': gt 'katja_pantyquest', 'kitchen',  'from_room'
 				else
 					'<center><img <<$set_imgh>> src="images/locations/city/island/university/dorm/dorm_hall.jpg"></center>'
 					'You knock on the door, but no one answers. She must be asleep or not home.'
@@ -204,6 +247,33 @@ if $ARGS[0] = 'second_floor':
 			end
 		end
 	end
+	if artemQW['knows_dorm_room_number'] > 0 and yearstart > 1:
+		act 'Artem''s room':
+			*clr & cla 
+			if locat['A2'] = 'dorm_room': 
+!!need code for when Artem is home
+!!list of places he is at times
+!!coffee hole week = 2 and nerd_game['fixed_uni_day'] = 0 and hour >= 18
+!!Mon-Fri during full class with electives class he is in class.
+!!2 hours after the end of class he is in the library
+!!1 hour after library study he is in the cafe having dinner.
+!!the rest of the time give him a 50/50 chance of being home so it shows he might go out with friends etc.
+				'<center><img <<$set_imgh>> src="images/characters/shared/headshots_main/big2.jpg"></center>'
+				if artemQW['artlie'] = 2 or artemQW['artembrokenheart'] = 1 or artemQW['artemblok'] = 1:
+					'You stand outside the dorm room, knocking on the door. The door is answered by Artem, who frowns as soon as he sees you. "I told you I never wanted to see you again! Please go away." He closes the door in your face without another word.'
+					act 'Leave': gt 'uni_dorm', 'second_floor'
+				else
+					'You stand outside the dorm room, knocking on the door, hoping that Artem will come to the door.'
+					'Artem opens the door smiling. "Hi <<$pcs_nickname>>. Come in, I was just studying but I can take a break." Once you walk inside, he closes the door and heads to the couch and takes a seat.'
+					act 'Enter': gt 'artem_dorm', 'start'
+				end
+			else
+				'<center><img <<$set_imgh>> src="images/locations/city/island/university/dorm/dorm_hall.jpg"></center>'
+				'You knock on the door, but no one answers. He must be asleep or not home.'
+				act 'Leave': gt 'uni_dorm', 'second_floor'
+			end
+		end
+	end
 end
 
 if $ARGS[0] = 'sixth_floor':
@@ -215,13 +285,49 @@ if $ARGS[0] = 'sixth_floor':
 	$location_type = 'public_indoors'
 	killvar '$locclass'
 	minut += 1
+	$uni_dorm['floor'] = 'sixth_floor'
 	gs 'stat'
 	*clr & cla
 	'<center><img <<$set_imgh>> src="images/locations/city/island/university/dorm/dorm_hall.jpg"></center>'
 	'Before you is the usual dorm hallway with the dilapidated walls of the sixth floor. You can hear music and loud talking from drunk students escaping from some rooms.'
-
+	if totminut > uni_dorm['event_minut']:
+		if hour > 2 and (week < 6 and hour < 15) or (week > 5 and hour < 11): 
+			if rand(0,9) = 0: gt 'uni_dorm_events', 'dorm_floor'
+		else
+			if rand(0,4) = 0: gt 'uni_dorm_events', 'dorm_floor'	
+		end
+	end
 	act 'Elevator': gt 'uni_dorm', 'elevator'
+	if func('homes_properties', 'has_access', 'university_dorm'):
+		act 'Go to the shared lounge': gt 'uni_dorm', 'dorm_lounge'
+		act 'Go to the shared kitchen': gt 'uni_dorm', 'dorm_kitchen'
+		act 'Enter the women''s shower': minut += 1 & gt 'uni_dorm', 'dorm_shower_women'
+		gs 'willpower', 'exhib', 'self'
+		if will_cost <= pcs_willpwr:
+			act 'Enter the men''s shower (<<will_cost>> Willpower)':
+				gs 'willpower', 'exhib', 'self'
+				gs 'willpower', 'pay', 'self'
+				gs 'stat'
+				gt 'uni_dorm', 'dorm_shower_men'
+			end
+		else
+			act 'Enter the men''s Shower (<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 'Enter the women''s restroom': minut += 1 & gt 'uni_dorm', 'womens_restroom'
+
+	gs 'willpower', 'exhib', 'self'
+	if will_cost <= pcs_willpwr:
+		act 'Enter the men''s restroom (<<will_cost>> Willpower)':
+			gs 'willpower', 'exhib', 'self'
+			gs 'willpower', 'pay', 'self'
+			gs 'stat'
+			gt 'uni_dorm', 'mens_restroom'
+		end
+	else
+		act 'Enter the men''s restroom (<font color="red"><<will_cost>> Willpower</font>)': '<br><font color="red">You don''t have enough willpower to use this action.</font>'
+	end
 	if gosh > 0:
 		act 'Gosha''s room':
 			*clr & cla 
@@ -251,14 +357,50 @@ if $ARGS[0] = 'seventh_floor':
 	$location_type = 'public_indoors'
 	killvar '$locclass'
 	minut += 1
+	$uni_dorm['floor'] = 'seventh_floor'
 	gs 'albina_uni_schedule'
 	gs 'stat'
 	*clr & cla
 	'<center><img <<$set_imgh>> src="images/locations/city/island/university/dorm/dorm_hall.jpg"></center>'
 	'Before you is the usual dorm hallway with the dilapidated walls of the seventh floor. You can hear music and loud talking from drunk students escaping from some rooms.'
-
+	if totminut > uni_dorm['event_minut']:
+		if hour > 2 and (week < 6 and hour < 15) or (week > 5 and hour < 11): 
+			if rand(0,9) = 0: gt 'uni_dorm_events', 'dorm_floor'
+		else
+			if rand(0,4) = 0: gt 'uni_dorm_events', 'dorm_floor'	
+		end
+	end
 	act 'Elevator': gt 'uni_dorm', 'elevator'
-	
+	if func('homes_properties', 'has_access', 'university_dorm'):
+		act 'Go to the shared lounge': gt 'uni_dorm', 'dorm_lounge'
+		act 'Go to the shared kitchen': gt 'uni_dorm', 'dorm_kitchen'
+		act 'Enter the women''s shower': minut += 1 & gt 'uni_dorm', 'dorm_shower_women'
+		gs 'willpower', 'exhib', 'self'
+		if will_cost <= pcs_willpwr:
+			act 'Enter the men''s shower (<<will_cost>> Willpower)':
+				gs 'willpower', 'exhib', 'self'
+				gs 'willpower', 'pay', 'self'
+				gs 'stat'
+				gt 'uni_dorm', 'dorm_shower_men'
+			end
+		else
+			act 'Enter the men''s Shower (<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 'Enter the women''s restroom': minut += 1 & gt 'uni_dorm', 'womens_restroom'
+
+	gs 'willpower', 'exhib', 'self'
+	if will_cost <= pcs_willpwr:
+		act 'Enter the men''s restroom (<<will_cost>> Willpower)':
+			gs 'willpower', 'exhib', 'self'
+			gs 'willpower', 'pay', 'self'
+			gs 'stat'
+			gt 'uni_dorm', 'mens_restroom'
+		end
+	else
+		act 'Enter the men''s restroom (<font color="red"><<will_cost>> Willpower</font>)': '<br><font color="red">You don''t have enough willpower to use this action.</font>'
+	end
 	if AlbinaQW['dorm_invite'] = 1 and yearstart > 1:
 		act 'Albina''s room':
 			*clr & cla 
@@ -336,13 +478,53 @@ if $ARGS[0] = 'eighth_floor':
 	$location_type = 'public_indoors'
 	killvar '$locclass'
 	minut += 1
+	$uni_dorm['floor'] = 'eighth_floor'
 	gs 'stat'
 	*clr & cla
 	'<center><img <<$set_imgh>> src="images/locations/city/island/university/dorm/dorm_hall.jpg"></center>'
-	'Before you is the usual dorm hallway with the dilapidated walls of the eighth floor. You can hear music and loud talking from drunk students escaping from some rooms.'
-
+	if func('homes_properties', 'has_access', 'university_dorm'):
+		'Before you is the usual dorm hallway with the dilapidated walls of the eighth floor. You can hear music and loud talking from drunk students escaping from some rooms, after living in the dorms for a bit. You now know this floor is often referred to as the African floor or the Blacks floor, all of the African students assigned to your dorm building where all assigned dorm rooms on this floor and no one else is assigned a room on this floor.'
+	else
+		'Before you is the usual dorm hallway with the dilapidated walls of the eighth floor. You can hear music you do notice the music sounds different, as in it is not the kind of music you are not as familiar with, their is also loud talking from some of the room. Most of it you can''t make out but sometimes when you can it is not in Russian.'
+	end
+	if totminut > uni_dorm['event_minut']:
+		if hour > 2 and (week < 6 and hour < 15) or (week > 5 and hour < 11): 
+			if rand(0,9) = 0: gt 'uni_dorm_events', 'dorm_floor8'
+		else
+			if rand(0,4) = 0: gt 'uni_dorm_events', 'dorm_floor8'	
+		end
+	end
 	act 'Elevator': gt 'uni_dorm', 'elevator'
+	if func('homes_properties', 'has_access', 'university_dorm'):
+		act 'Go to the shared lounge': gt 'uni_dorm', 'dorm_lounge'
+		act 'Go to the shared kitchen': gt 'uni_dorm', 'dorm_kitchen'
+		act 'Enter the women''s shower': minut += 1 & gt 'uni_dorm', 'dorm_shower_women'
+		gs 'willpower', 'exhib', 'self'
+		if will_cost <= pcs_willpwr:
+			act 'Enter the men''s shower (<<will_cost>> Willpower)':
+				gs 'willpower', 'exhib', 'self'
+				gs 'willpower', 'pay', 'self'
+				gs 'stat'
+				gt 'uni_dorm', 'dorm_shower_men'
+			end
+		else
+			act 'Enter the men''s Shower (<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 'Enter the women''s restroom': minut += 1 & gt 'uni_dorm', 'womens_restroom'
 
+	gs 'willpower', 'exhib', 'self'
+	if will_cost <= pcs_willpwr:
+		act 'Enter the men''s restroom (<<will_cost>> Willpower)':
+			gs 'willpower', 'exhib', 'self'
+			gs 'willpower', 'pay', 'self'
+			gs 'stat'
+			gt 'uni_dorm', 'mens_restroom'
+		end
+	else
+		act 'Enter the men''s restroom (<font color="red"><<will_cost>> Willpower</font>)': '<br><font color="red">You don''t have enough willpower to use this action.</font>'
+	end
 	if DjibrilQW['invite'] = 1:
 		act 'Djibril'' room':
 			*clr & cla
@@ -515,6 +697,7 @@ if $ARGS[0] = 'tenth_floor':
 	$location_type = 'public_indoors'
 	killvar '$locclass'
 	minut += 1
+	$uni_dorm['floor'] = 'tenth_floor'
 	gs 'stat'
 	*clr & cla
 	'<center><img <<$set_imgh>> src="images/locations/city/island/university/dorm/dorm_hall.jpg"></center>'
@@ -523,7 +706,13 @@ if $ARGS[0] = 'tenth_floor':
 	else
 		'Before you is the usual dorm hallway with dilapidated walls. You can hear music and loud talking from drunk students escaping from some rooms.'
 	end
-
+	if totminut > uni_dorm['event_minut']:
+		if hour > 2 and (week < 6 and hour < 15) or (week > 5 and hour < 11): 
+			if rand(0,9) = 0: gt 'uni_dorm_events', 'dorm_floor'
+		else
+			if rand(0,4) = 0: gt 'uni_dorm_events', 'dorm_floor'	
+		end
+	end
 	act 'Go outside':
 		killvar 'university_dorm'
 		minut += 6
@@ -533,10 +722,21 @@ if $ARGS[0] = 'tenth_floor':
 
 	if func('homes_properties', 'has_access', 'university_dorm'):
 		gs 'courtletter'
-
 		act 'Your room': gt 'uni_dorm', 'dorm_room'
+		act 'Go to the shared lounge': gt 'uni_dorm', 'dorm_lounge'
 		act 'Go to the shared kitchen': gt 'uni_dorm', 'dorm_kitchen'
-		act 'Go to the shared shower': gt 'vann', 'start'
+		act 'Enter the women''s shower': minut += 1 & gt 'uni_dorm', 'dorm_shower_women'
+		gs 'willpower', 'exhib', 'self'
+		if will_cost <= pcs_willpwr:
+			act 'Enter the men''s shower (<<will_cost>> Willpower)':
+				gs 'willpower', 'exhib', 'self'
+				gs 'willpower', 'pay', 'self'
+				gs 'stat'
+				gt 'uni_dorm', 'dorm_shower_men'
+			end
+		else
+			act 'Enter the men''s Shower (<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 'Enter the women''s restroom': minut += 1 & gt 'uni_dorm', 'womens_restroom'
@@ -560,8 +760,124 @@ if $ARGS[0] = 'tenth_floor':
 !!	end
 end
 
+if $args[0] = 'dorm_lounge':
+	$loc_arg = 'dorm_lounge'
+	$loc = 'uni_dorm'
+    $location_type = 'private'
+	$menu_loc = 'uni_dorm'
+	$menu_arg = 'dorm_lounge'
+	menu_off = 0
+	minut += 1
+	gs 'stat'
+	*clr & cla
+	'<center><b>Dorm Lounge</b></center>'
+	'<center><img <<$set_imgh>> src="images/locations/city/island/university/dorm/dorm_lounge.jpg"></center>'
+	'This is the large shared lounge for this floor. It is fairly tidy, with a few little squares. A tv on along a wall creates one side of the square while couches or chairs make up the other three sides, with just enough space between them to allow people to enter or leave the little squares. Several such entertainment squares line the room with a few vending machines.'
+	act 'Return to the corridor': gt 'uni_dorm', $uni_dorm['floor']
+	act 'Watch tv': gt 'uni_dorm', 'dorm_lounge_watch_tv'
+	act 'Relax': gt 'uni_dorm', 'dorm_lounge_relax'
+	!!act 'Buy snacks':
+!!I commented this out because I have no clue how to do this, if you know how to do it. Just have it charge what the kiosk does for snacks/drink and then return to this room.
+end
+
+if $args[0] = 'dorm_lounge_watch_tv':
+	$loc_arg = 'dorm_lounge_watch_tv'
+	$loc = 'uni_dorm'
+    $location_type = 'private'
+	$menu_loc = 'uni_dorm'
+	$menu_arg = 'dorm_lounge_watch_tv'
+	menu_off = 0
+	minut += 30
+	pcs_mood += 15
+	gs 'stat'
+	*clr & cla
+	'<center><b>Dorm Lounge TV</b></center>'
+	'<center><img <<$set_imgh>> src="images/locations/city/island/university/dorm/dorm_lounge.jpg"></center>'
+	'You take a seat on one of the couches and watch a little tv, there is not a lot on but it kills a little time.'
+	act 'Return to the corridor': gt 'uni_dorm', $uni_dorm['floor']
+	act 'Keep watching tv': gt 'uni_dorm', 'dorm_lounge_watch_tv'
+end
+
+if $args[0] = 'dorm_lounge_relax':
+	$loc_arg = 'dorm_lounge_relax'
+	$loc = 'uni_dorm'
+    $location_type = 'private'
+	$menu_loc = 'uni_dorm'
+	$menu_arg = 'dorm_lounge_relax'
+	menu_off = 0
+	minut += 15
+	pcs_mood += 5
+	gs 'stat'
+	*clr & cla
+	'<center><b>Dorm Lounge Relax</b></center>'
+	'<center><img <<$set_imgh>> src="images/locations/city/island/university/dorm/dorm_lounge.jpg"></center>'
+	'You take a seat on one of the couches and just chill out for a bit relaxing.'
+	act 'Return to the corridor': gt 'uni_dorm', $uni_dorm['floor']
+	act 'Keep relaxing': gt 'uni_dorm', 'dorm_lounge_relax'
+end
+
+if $args[0] = 'dorm_kitchen':
+	$loc_arg = 'dorm_kitchen'
+	$loc = 'uni_dorm'
+    $location_type = 'private'
+	$locclass = 'kitr'
+	$menu_loc = 'uni_dorm'
+	$menu_arg = 'dorm_kitchen'
+	menu_off = 0
+	food_loc = 0
+	minut += 1
+	gs 'kit_din'
+	gs 'katja_meynold_schedule'
+	gs 'stat'
+	*clr & cla
+	'<center><b>Dorm Kitchen</b></center>'
+	'<center><img <<$set_imgh>> src="images/locations/city/island/university/dorm/dorm_kitchen.jpg"></center>'
+	'The large shared kitchen for this floor. It is fairly tidy, with a lot of cabinets along two of the walls. Two ovens and two refrigerators, as well as several tables with chairs around them, are scattered around the room.'
+	if (locat['katja'] = 32 or locat['katja'] = 33) and $uni_dorm['floor'] = 'second_floor':
+		if katjaQW['kitchen_day'] ! daystart:
+			'You see '+iif(katjaQW['know_katja_uni'] = 0 and ($start_type['loc'] ! 'sg' and $start_type['magic'] = 'tg'), 'a cute redheaded girl', '<a href="exec:gt ''katja_pantyquest'', ''kitchen''">Katja</a>')+iif((katjaQW['pantiesQWstage'] < 3 or (katjaQW['pantiesQWstage'] = 3 and katjaQW['slut'] < 65) or katjaQW['pantiesQWstage'] = 4) and katjaQW['take_of_panties_day'] ! daystart, 'sitting in a chair.', 'standing at the kitchen table.')
+		else
+			if locat['katja'] = 32:
+				'You see '+iif(katjaQW['know_katja_uni'] = 0 and ($start_type['loc'] ! 'sg' and $start_type['magic'] = 'tg'), 'a cute redheaded girl', 'Katja')+' at the kitchen tables coking.'
+			else
+				'You see '+iif(katjaQW['know_katja_uni'] = 0 and ($start_type['loc'] ! 'sg' and $start_type['magic'] = 'tg'), 'a cute redheaded girl', 'Katja')+' at the table eating her dinner.'
+			end
+		end
+	end
+
+	act 'Return to the corridor': gt 'uni_dorm', $uni_dorm['floor']
+	if  $uni_dorm['floor'] = 'tenth_floor':
+		if mc_inventory['food_basic'] > 0:
+			if edahot = 0:
+				$edagot = '<a href="exec:dynamic $edagotd">Cook a meal</a>'
+			else
+				$edagot = ''
+			end
+			'Your shelf in the refrigerator holds enough food for <b><<mc_inventory[''food_basic'']>></b> ' + iif(mc_inventory['food_basic'] = 1, 'serving', 'servings') + '. <<$edagot>>'
+		else
+			'<b><font color="red">Your shelf in the refrigerator is bare. There is nothing left for you to eat.</font></b>'
+		end
+
+		if edahot > 0:'<a href="exec:dynamic $edahotd">There''s a warm meal on the table.</a>'
+
+		dynamic $edasnack
+		dynamic $sandwich
+
+		dynamic $dritea
+		dynamic $edaD
+		dynamic $pranik
+		dynamic $fatdel
+		dynamic $lekarstvo
+		dynamic $vitamin
+	end
+	dynamic $driwater
+	dynamic $fill_bottle
+end
+
 if $ARGS[0] = 'mens_restroom':
 	$location_type = 'public_indoors'
+	$loc = 'uni_dorm'
+	$loc_arg = 'mens_restroom'
 	$menu_loc = 'uni_dorm'
 	$menu_arg = 'mens_restroom'
 	$locM = 'uni_dorm'
@@ -573,16 +889,17 @@ if $ARGS[0] = 'mens_restroom':
 	'<center><b><font color="maroon">Dormitory - Men''s Restroom</font></b></center>'
 	'<center><img <<$set_imgh>> src="images/locations/city/island/university/dorm/restrooms/bathroom_mens.jpg"></center>'
 	'You peek around the corner. Stalls line the right side of the room, with urinals on the far wall and rows of sinks and <a href="exec:gt ''mirror'', ''start''">mirrors</a> to the left. The room smells strongly of disinfectant and stale piss.'
-
-	act 'Leave': gt 'uni_dorm', 'tenth_floor'
-
+	act 'Leave': gt 'uni_dorm', $uni_dorm['floor']
 	dynamic $tampon
 	dynamic $quickwash
 	dynamic $basin
+!!if this has a shower function tied to it, can that be removed now that we have actual showers
 end
 
 if $ARGS[0] = 'womens_restroom':
 	$location_type = 'public_indoors'
+	$loc = 'uni_dorm'
+	$loc_arg = 'womens_restroom'
 	$menu_loc = 'uni_dorm'
 	$menu_arg = 'womens_restroom'
 	$locM = 'uni_dorm'
@@ -594,14 +911,94 @@ if $ARGS[0] = 'womens_restroom':
 	'<center><b><font color="maroon">Dormitory - Women''s Restroom</font></b></center>'
 	'<center><img <<$set_imgh>> src="images/locations/city/island/university/dorm/restrooms/bathroom_womens.jpg"></center>'
 	'You peek around the corner. Stalls line the right side of the room, with rows of sinks with <a href="exec:gt ''mirror'', ''start''">mirrors</a> to the left. The room smells strongly of disinfectant.'
+	act 'Leave': gt 'uni_dorm', $uni_dorm['floor']
+	dynamic $tampon
+	dynamic $quickwash
+	dynamic $basin
+!!if this has a shower function tied to it, can that be removed now that we have actual showers
+end
 
-	act 'Leave': gt 'uni_dorm', 'tenth_floor'
+if $ARGS[0] = 'dorm_shower_men':
+	$location_type = 'public_indoors'
+	$loc = 'uni_dorm'
+	$loc_arg = 'dorm_shower_men'
+	$menu_loc = 'uni_dorm'
+	$menu_arg = 'dorm_shower_men'
+	$locM = 'uni_dorm'
+	$locM_arg = 'dorm_shower_men'
+	menu_off = 0
+	minut += 1
+	gs 'stat'
+	*clr & cla
+	'<center><b><font color="maroon">Dormitory - Men''s Communal Showers</font></b></center>'
+	'<center><img <<$set_imgh>> src="images/locations/city/island/university/dorm/showers/empty.jpg"></center>'
+	'You open the door and walk down to the end of the L shaped hall to peek around the corner. In the nearest corner is a small alcove of lockers and a couple of benches, closest to the entry point is two rows of sinks and <a href="exec:gt ''mirror'', ''start''">mirrors</a>. On the other side of the room a walk way leads off to the communal <a href="exec:gt ''uni_dorm'', ''mens_shower''">showers</a>.'
+	act 'Leave': gt 'uni_dorm', $uni_dorm['floor']
+	dynamic $tampon
+	dynamic $quickwash
+	dynamic $basin
+!!if this has a shower function tied to it, can that be removed now that we have actual showers
+end
 
+if $ARGS[0] = 'dorm_shower_women':
+	$location_type = 'public_indoors'
+	$loc = 'uni_dorm'
+	$loc_arg = 'dorm_shower_women'
+	$menu_loc = 'uni_dorm'
+	$menu_arg = 'dorm_shower_women'
+	$locM = 'uni_dorm'
+	$locM_arg = 'dorm_shower_women'
+	menu_off = 0
+	minut += 1
+	gs 'stat'
+	*clr & cla
+	'<center><b><font color="maroon">Dormitory - Women''s Communal Showers</font></b></center>'
+	'<center><img <<$set_imgh>> src="images/locations/city/island/university/dorm/showers/empty.jpg"></center>'
+	'You open the door and walk down to the end of the L shaped hall, which takes you to the main area of the communal shower room. In the nearest corner is a small alcove of lockers and a couple of benches, closest to the entry point is two rows of sinks and <a href="exec:gt ''mirror'', ''start''">mirrors</a>. On the other side of the room a walk way leads off to the communal <a href="exec:gt ''uni_dorm'', ''womens_shower''">showers</a>.'
+	act 'Leave': gt 'uni_dorm', $uni_dorm['floor']
 	dynamic $tampon
 	dynamic $quickwash
 	dynamic $basin
 end
 
+if $ARGS[0] = 'mens_shower':
+	$location_type = 'public_indoors'
+	$loc = 'uni_dorm'
+	$loc_arg = 'mens_shower'
+	$menu_loc = 'uni_dorm'
+	$menu_arg = 'mens_shower'
+	$locM = 'uni_dorm'
+	$locM_arg = 'mens_shower'
+	menu_off = 0
+	minut += 1
+	gs 'stat'
+	*clr & cla
+	'<center><b><font color="maroon">Dormitory - Men''s Showers</font></b></center>'
+	'<center><img <<$set_imgh>> src="images/locations/city/island/university/dorm/showers/empty_showers.jpg"></center>'
+	'The room is currently empty, inside you can see a line of showers with small baskets on the wall just under the shower heads to store your shampoo and other products in while someone showers. There is a small drain in the floor.'
+	act 'Leave': gt 'uni_dorm', 'dorm_shower_men'
+	gs 'din_van', 'private'
+end
+
+if $ARGS[0] = 'womens_shower':
+	$location_type = 'public_indoors'
+	$loc = 'uni_dorm'
+	$loc_arg = 'womens_shower'
+	$menu_loc = 'uni_dorm'
+	$menu_arg = 'womens_shower'
+	$locM = 'uni_dorm'
+	$locM_arg = 'womens_shower'
+	menu_off = 0
+	minut += 1
+	gs 'stat'
+	*clr & cla
+	'<center><b><font color="maroon">Dormitory - Women''s Showers</font></b></center>'
+	'<center><img <<$set_imgh>> src="images/locations/city/island/university/dorm/showers/empty_showers.jpg"></center>'
+	'The room is currently empty, inside you can see a line of showers with small baskets on the wall just under the shower heads to store your shampoo and other products in while someone showers. There is a small drain in the floor.'
+	act 'Leave': gt 'uni_dorm', 'dorm_shower_women'
+	gs 'din_van', 'private'
+end
+
 if $ARGS[0] = 'dorm_room':
 	$sexloc = 'uni_dorm'
 	CLOSE ALL
@@ -625,10 +1022,9 @@ if $ARGS[0] = 'dorm_room':
 	if $ml_guitar['location'] = $loc: 'Your guitar rests on its stand next to your bed.'
 	if mc_inventory['mag_porn'] > 0: 'You''ve hidden your porn magazines under the mattress of your bed.'
 	
-	vika_inroom = 0
-	vika_sleep = 0
 	if hour > 14 and hour < func('bordel', 'open_hour'):
 		vika_inroom = 1
+		vika_sleep = 0
 		if npc_rel['A220'] >= 60 and birthday = day and birthmonth = month and vikaslut = 1 and b_vika_present_Day ! daystart:
 			$vikatext = '<a href="exec:gt''Vika''">Vika</a> seems excited when she notices you. She is trying to hide a box behind her back.'
 		else
@@ -644,9 +1040,6 @@ if $ARGS[0] = 'dorm_room':
 			$vikatext = '<a href="exec:gt''Vika''">Vika</a> is sleeping in her bed after working hard in the brothel all night.'
 		end
 		gs 'music_actions', 'no_music'
-	else
-		vika_inroom = 0
-		vika_sleep = 0
 	end
 
 	if mc_inventory['tech_computer'] = 1:
@@ -720,49 +1113,5 @@ if $ARGS[0] = 'dorm_room':
 	gs 'music_actions', 'music_icon'
 end
 
-if $args[0] = 'dorm_kitchen':
-	$loc_arg = 'dorm_kitchen'
-	$loc = 'uni_dorm'
-    $location_type = 'private'
-	$locclass = 'kitr'
-	$menu_loc = 'uni_dorm'
-	$menu_arg = 'dorm_kitchen'
-	menu_off = 0
-	food_loc = 0
-	minut += 1
-	gs 'kit_din'
-	gs 'stat'
-	*clr & cla
-	'<center><b>Dorm Kitchen</b></center>'
-	'<center><img <<$set_imgh>> src="images/locations/city/island/university/dorm/dorm_kitchen.jpg"></center>'
-	'The large shared kitchen for this floor. It is fairly tidy, with a lot of cabinets along two of the walls. Two ovens and two refrigerators, as well as several tables with chairs around them, are scattered around the room.'
-
-	act 'Return to the corridor': gt 'uni_dorm', 'tenth_floor'
-
-	if mc_inventory['food_basic'] > 0:
-		if edahot = 0:
-			$edagot = '<a href="exec:dynamic $edagotd">Cook a meal</a>'
-		else
-			$edagot = ''
-		end
-		'Your shelf in the refrigerator holds enough food for <b><<mc_inventory[''food_basic'']>></b> ' + iif(mc_inventory['food_basic'] = 1, 'serving', 'servings') + '. <<$edagot>>'
-	else
-		'<b><font color="red">Your shelf in the refrigerator is bare. There is nothing left for you to eat.</font></b>'
-	end
-
-	if edahot > 0:'<a href="exec:dynamic $edahotd">There''s a warm meal on the table.</a>'
-
-	dynamic $edasnack
-	dynamic $sandwich
-	dynamic $driwater
-	dynamic $dritea
-	dynamic $fill_bottle
-	dynamic $edaD
-	dynamic $pranik
-	dynamic $fatdel
-	dynamic $lekarstvo
-	dynamic $vitamin
-end
-
 --- uni_dorm ---------------------------------
 

+ 558 - 0
locations/uni_dorm_events.qsrc

@@ -0,0 +1,558 @@
+# uni_dorm_events
+!!2024/18/03 - Nutluck
+
+if $ARGS[0] = 'dorm_floor':
+	*clr & cla
+	menu_off = 1
+	temp = rand(1,12)
+	uni_dorm['event_minut'] = totminut + 60
+	if temp = 1:
+		'<center><img <<$set_imgh>> src="images/locations/city/island/university/dorm/hallway/events/floor/2girl_hump1.jpg"></center>'
+		'As you walk down the hall, you see two girls grinding and dancing provocatively against each other while another takes photos with her phone. As a couple of boys a little ways away watch the girls drying humping each other in the hallway. You wonder as you pass them by if the girls are just doing it to get the boys attention or if they are doing it because they are into it.'
+		gs 'arousal', 'voyeur', 1
+		gs 'arousal', 'end'
+		gs 'stat'
+		act 'Keep going': gt 'uni_dorm', $uni_dorm['floor']
+	elseif temp = 2:
+		'<center><img <<$set_imgh>> src="images/locations/city/island/university/dorm/hallway/events/floor/3naked_girls3.jpg"></center>'
+		'As you walk down the hall, you''re greeted by three tipsy, giggling, completely naked girls passing you by. The dark haired one of the group looks familiar, you''re sure you''ve seen her around campus before, and she just so happens to be getting her breasts groped from behind from one of her friends. They push by you and continue into the stairwell, leaving you to imagine just where they''re off to next.'
+		gs 'arousal', 'voyeur', 1
+		gs 'arousal', 'end'
+		gs 'stat'
+		act 'Keep going': gt 'uni_dorm', $uni_dorm['floor']
+	elseif temp = 3:
+		'<center><img <<$set_imgh>> src="images/locations/city/island/university/dorm/hallway/events/floor/4girls_running.jpg"></center>'
+		'You walk down the mostly quiet hall when suddenly four girls come screaming and laughing down the hallway at you at full speed! You dodge out of the way and they continue sprinting away. What was THAT about?'
+		act 'Keep going': gt 'uni_dorm', $uni_dorm['floor']
+	elseif temp = 4:
+		'<center><img <<$set_imgh>> src="images/locations/city/island/university/dorm/hallway/events/floor/naked_couple1.jpg"></center>'
+		'As you walk down the hall, you see a totally naked girl riding on the back of a totally naked guy. This place is crazy sometimes!'
+		gs 'arousal', 'voyeur', 1
+		gs 'arousal', 'end'
+		gs 'stat'
+		act 'Keep going': gt 'uni_dorm', $uni_dorm['floor']
+	elseif temp = 5:
+		'<center><img <<$set_imgh>> src="images/locations/city/island/university/dorm/hallway/events/floor/naked_girl1.jpg"></center>'
+		'You walk down the hallway of the six floor when suddenly one of the dorm room doors opens and a completely naked girl steps into view, then walks down the hall to communal showers.'
+		gs 'arousal', 'voyeur', 1
+		gs 'arousal', 'end'
+		gs 'stat'
+		act 'Keep going': gt 'uni_dorm', $uni_dorm['floor']
+	elseif temp = 6:
+		'<center><img <<$set_imgh>> src="images/locations/city/island/university/dorm/hallway/events/floor/naked_girls_group2.jpg"></center>'
+		'There''s loud, booming music on the sixth floor of the dorms today. As you walk though it''s easy to tell where it''s coming from; an open door at the end of the hall where a group of semi and completely nude girls are running in out with drinks in hand. Seeing how much fun they''re having you almost consider asking them for a drink, but only for a moment, before you decide to just keep on walking.'
+		gs 'arousal', 'voyeur', 1
+		gs 'arousal', 'end'
+		gs 'stat'
+		act 'Keep going': gt 'uni_dorm', $uni_dorm['floor']
+	elseif temp = 7:
+		'<center><img <<$set_imgh>> src="images/locations/city/island/university/dorm/hallway/events/floor/naked_guy_lock.jpg"></center>'
+		'There''s some definite drama going on up here today. You see a totally stripped guy pleading with someone through the locked dorm room door. This has obviously gone on for a while already seeing as other girls have congregated outside their own rooms to watch the show, all snickering and taking photos of the banished young man.'
+		gs 'arousal', 'voyeur', 1
+		gs 'arousal', 'end'
+		gs 'stat'
+		act 'Keep going': gt 'uni_dorm', $uni_dorm['floor']
+	elseif temp = 8:
+		'<center><img <<$set_imgh>> src="images/locations/city/island/university/dorm/hallway/events/floor/nude_girl_bentover.jpg"></center>'
+		'You''re welcomed to the floor with quite the view today! A naked girl is completely bent over, picking up her things. Despite the scene, no one else seems to be surprised by this, simply passing her by and minding their own business.'
+		gs 'arousal', 'voyeur', 1
+		gs 'arousal', 'end'
+		gs 'stat'
+		act 'Keep going': gt 'uni_dorm', $uni_dorm['floor']
+	elseif temp = 9:
+		'<center><img <<$set_imgh>> src="images/locations/city/island/university/dorm/hallway/events/floor/splits_girl.jpg"></center>'
+		'There''s a few girls gathered in the hallway today, talking amongst themselves. You hear one of them dare the other to do a handstand. Almost immediately she takes off her shoes and balances herself against the wall before flipping up onto her hands. This causes her skirt to drop over her waist however, exposing her panties to her friends, as well as a few passing guys. The girl quickly drops back to her face, her cheeks flushed with embarrassment.'
+		gs 'arousal', 'voyeur', 1
+		gs 'arousal', 'end'
+		gs 'stat'
+		act 'Keep going': gt 'uni_dorm', $uni_dorm['floor']
+	elseif temp = 10:
+		'<center><img <<$set_imgh>> src="images/locations/city/island/university/dorm/hallway/events/floor/topless_girl1.jpg"></center>'
+		'You pass several people walking around in just their underwear or in the case of one girl she is completely naked. No one seems to take all that much notice of each other as they get on with their daily routine.'
+		gs 'arousal', 'voyeur', 1
+		gs 'arousal', 'end'
+		gs 'stat'
+		act 'Keep going': gt 'uni_dorm', $uni_dorm['floor']
+	else
+		'<center><img <<$set_imgh>> src="images/locations/city/island/university/dorm/dorm_hall.jpg"></center>'
+		'As you walk down the hallway you can''t help but hear some noises coming from one of the rooms. You stop near the door and listen a moment but you can''t make it out. You could try the door and see if it is unlocked... or maybe you should mind your own business.'
+		act 'Keep going': gt 'uni_dorm', $uni_dorm['floor']
+		act 'Try the door':
+			'<center><img <<$set_imgh>> src="images/pc/activities/spy/peep3.jpg"></center>'
+			'You stop up to the door and check the handle, it turns easily in your hands, so it is not locked. But do you dare peep and see what is going on? Are you that kind of person? Or should you just go on? You feel torn, you really want to know, but what if someone see''s?'
+			act 'Don''t peek': gt 'uni_dorm', $uni_dorm['floor']
+			act 'Peek': gt 'uni_dorm_events', 'dorm_floor_sex'
+		end
+	end
+end
+
+if $ARGS[0] = 'dorm_floor_sex':
+	*clr & cla
+	menu_off = 1
+	temp = rand(1,27)
+	if temp = 1:
+		'<center><img <<$set_imgh>> src="images/locations/city/island/university/dorm/hallway/events/floor/sex/2wf_2wm_orgy1.jpg"></center>'
+		'You turn the handle and gentle push the door open a crack, just wide enough to look inside. You see two girls riding two guys reverse cowgirl style, toasting each other with drinks as they fuck the guys beneath them. They seem to be having a lot of fun drinking while they fuck, after a few moments you close the door so you are not caught.'
+		gs 'arousal', 'voyeur_sex', 1
+		gs 'arousal', 'end'
+		gs 'stat'
+		act 'Leave': gt 'uni_dorm', $uni_dorm['floor']
+	elseif temp = 2:
+		'<center><img <<$set_imgh>> src="images/locations/city/island/university/dorm/hallway/events/floor/sex/2wf_2wm_orgy2.jpg"></center>'
+		'You turn the handle and gentle push the door open a crack, just wide enough to look inside. You see two girls riding two guys reverse cowgirl style, high fiving each other as they fuck the guys beneath them. They seem to be having a lot of fun drinking while they fuck, after a few moments you close the door so you are not caught.'
+		gs 'arousal', 'voyeur_sex', 1
+		gs 'arousal', 'end'
+		gs 'stat'
+		act 'Leave': gt 'uni_dorm', $uni_dorm['floor']
+	elseif temp = 3:
+		'<center><img <<$set_imgh>> src="images/locations/city/island/university/dorm/hallway/events/floor/sex/2wf_cuni1.jpg"></center>'
+		'You turn the handle and gentle push the door open a crack, just wide enough to look inside. You see one girl straddling another girls face, she moans loudly as she is obviously being eaten out by the other one, after a few moments you close the door so you are not caught.'
+		gs 'arousal', 'voyeur_sex', 1
+		gs 'arousal', 'end'
+		gs 'stat'
+		act 'Leave': gt 'uni_dorm', $uni_dorm['floor']
+	elseif temp = 4:
+		'<center><img <<$set_imgh>> src="images/locations/city/island/university/dorm/hallway/events/floor/sex/2wf_cuni2.jpg"></center>'
+		'You turn the handle and gentle push the door open a crack, just wide enough to look inside. You see one girl on her elbows and knees with another girl behind her with her face buried in the first girls crotch, obviously eating her out as the first girl moans loudly, after a few moments you close the door so you are not caught.'
+		gs 'arousal', 'voyeur_sex', 1
+		gs 'arousal', 'end'
+		gs 'stat'
+		act 'Leave': gt 'uni_dorm', $uni_dorm['floor']
+	elseif temp = 5:
+		'<center><img <<$set_imgh>> src="images/locations/city/island/university/dorm/hallway/events/floor/sex/2wf_cuni3.jpg"></center>'
+		'You turn the handle and gentle push the door open a crack, just wide enough to look inside. You see two girls sixty-nining each other, both moaning loudly as they do, after a few moments you close the door so you are not caught.'
+		gs 'arousal', 'voyeur_sex', 1
+		gs 'arousal', 'end'
+		gs 'stat'
+		act 'Leave': gt 'uni_dorm', $uni_dorm['floor']
+	elseif temp = 6:
+		'<center><img <<$set_imgh>> src="images/locations/city/island/university/dorm/hallway/events/floor/sex/2wf_strap_anal1.jpg"></center>'
+		'You turn the handle and gentle push the door open a crack, just wide enough to look inside. You see a brunette on the bed on all fours, while a blond kneels behind her wearing a strapon. The blond is roughly fucking the brunette in the ass with the strapon as she says. "What the fuck did I tell you about fucking my boyfriend."'
+		'The brunette doesn''t seem to be enjoying the ass fucking she is getting. "I''m sorry... I was drunk... please stop... it hurts."'
+		'The blond shakes her head. "Not until I am convinced you have learned your lesson." She says as she keeps fucking apparently her friend? While curious to know the whole story you quietly close the door before you get caught.'
+		gs 'arousal', 'voyeur_sex', 1
+		gs 'arousal', 'end'
+		gs 'stat'
+		act 'Leave': gt 'uni_dorm', $uni_dorm['floor']
+	elseif temp = 7:
+		'<center><img <<$set_imgh>> src="images/locations/city/island/university/dorm/hallway/events/floor/sex/2wf_strap1.jpg"></center>'
+		'You turn the handle and gentle push the door open a crack, just wide enough to look inside. You see a blond wearing a strapon fucking a brunette''s pussy with it, the brunette seems to be loving it. Just as you are about to close the door the blond looks over and see''s you. "What the fuck! Close the door pervert!" You blush and quickly close the door.'
+		gs 'arousal', 'voyeur_sex', 1
+		gs 'arousal', 'end'
+		gs 'stat'
+		act 'Leave': gt 'uni_dorm', $uni_dorm['floor']
+	elseif temp = 8:
+		'<center><img <<$set_imgh>> src="images/locations/city/island/university/dorm/hallway/events/floor/sex/2wf_wm_3some1.jpg"></center>'
+		'You turn the handle and gentle push the door open a crack, just wide enough to look inside. You see a guy laying on the bed on his back with his legs hanging off the edge of it. One girl rides his dick reverse cowgirl style, while another sits on the guys face. The cowgirl is looking right at you when you open the door, you blush and quickly close the door.'
+		gs 'arousal', 'voyeur_sex', 1
+		gs 'arousal', 'end'
+		gs 'stat'
+		act 'Leave': gt 'uni_dorm', $uni_dorm['floor']
+	elseif temp = 9:
+		'<center><img <<$set_imgh>> src="images/locations/city/island/university/dorm/hallway/events/floor/sex/2wf_wm_3some2.jpg"></center>'
+		'You turn the handle and gentle push the door open a crack, just wide enough to look inside. You see a blond on all fours with another girl sitting in front of her with her legs spread wide, obviously waiting to be eaten out by the blond. Behind the blond is a guy stroking his dick to make it hard, after a few moments you close the door so you are not caught.'
+		gs 'arousal', 'voyeur_sex', 1
+		gs 'arousal', 'end'
+		gs 'stat'
+		act 'Leave': gt 'uni_dorm', $uni_dorm['floor']
+	elseif temp = 10:
+		'<center><img <<$set_imgh>> src="images/locations/city/island/university/dorm/hallway/events/floor/sex/2wf_wm_3some3.jpg"></center>'
+		'You turn the handle and gentle push the door open a crack, just wide enough to look inside. You see a guy laying on his back on the bed, one girl kneels next to his face and starts making out with him shortly after you open the door, another girl is kneeling by his waist and has been giving him a blow job since your peeked in the door, after a few moments you close the door so you are not caught.'
+		gs 'arousal', 'voyeur_sex', 1
+		gs 'arousal', 'end'
+		gs 'stat'
+		act 'Leave': gt 'uni_dorm', $uni_dorm['floor']
+	elseif temp = 11:
+		'<center><img <<$set_imgh>> src="images/locations/city/island/university/dorm/hallway/events/floor/sex/2wf_wm_3some4.jpg"></center>'
+		'You turn the handle and gentle push the door open a crack, just wide enough to look inside. You see a guy laying on his back on the bed, while one girl is straddling his face, while another one is riding his dick cowgirl style. The two girls facing each other are making out as they ride the guy, after a few moments you close the door so you are not caught.'
+		gs 'arousal', 'voyeur_sex', 1
+		gs 'arousal', 'end'
+		gs 'stat'
+		act 'Leave': gt 'uni_dorm', $uni_dorm['floor']
+	elseif temp = 12:
+		'<center><img <<$set_imgh>> src="images/locations/city/island/university/dorm/hallway/events/floor/sex/wf_2wm_3some1.jpg"></center>'
+		'You turn the handle and gentle push the door open a crack, just wide enough to look inside. You see a naked girl on all fours on a couch, while a guy is fucking her from behind. As she is getting fucked she is looking and smiling at a second guy that is watching her get fucked and jerking off, after a few moments you close the door so you are not caught.'
+		gs 'arousal', 'voyeur_sex', 1
+		gs 'arousal', 'end'
+		gs 'stat'
+		act 'Leave': gt 'uni_dorm', $uni_dorm['floor']
+	elseif temp = 13:
+		'<center><img <<$set_imgh>> src="images/locations/city/island/university/dorm/hallway/events/floor/sex/wf_2wm_3some2.jpg"></center>'
+		'You turn the handle and gentle push the door open a crack, just wide enough to look inside. You see a girl on all fours on the bed, sucking one guy off in front of her while a second guy fucks her from behind, after a few moments you close the door so you are not caught.'
+		gs 'arousal', 'voyeur_sex', 1
+		gs 'arousal', 'end'
+		gs 'stat'
+		act 'Leave': gt 'uni_dorm', $uni_dorm['floor']
+	elseif temp = 14:
+		'<center><img <<$set_imgh>> src="images/locations/city/island/university/dorm/hallway/events/floor/sex/wf_2wm_dp1.jpg"></center>'
+		'You turn the handle and gentle push the door open a crack, just wide enough to look inside. You see a guy laying on the a bed while a girl straddles him riding him cowgirl style. As you watch another guy comes up behind her, his dick disappears between her butt cheeks as she cries out. She continues to ride the guy beneath her as the other one fucks her ass from behind, after a few moments you close the door so you are not caught.'
+		gs 'arousal', 'voyeur_sex', 1
+		gs 'arousal', 'end'
+		gs 'stat'
+		act 'Leave': gt 'uni_dorm', $uni_dorm['floor']
+	elseif temp = 15:
+		'<center><img <<$set_imgh>> src="images/locations/city/island/university/dorm/hallway/events/floor/sex/wf_2wm_dp2.jpg"></center>'
+		'You turn the handle and gentle push the door open a crack, just wide enough to look inside. You see a guy laying on the floor while a girl straddles him riding him cowgirl style. As you watch another guy comes up behind her, and pushes her forward until she is laying on top of the first guy. You watch as the second guys dick disappears between her butt cheeks as grunts. She continues to ride the guy beneath her as the other one fucks her ass from behind, after a few moments you close the door so you are not caught.'
+		gs 'arousal', 'voyeur_sex', 1
+		gs 'arousal', 'end'
+		gs 'stat'
+		act 'Leave': gt 'uni_dorm', $uni_dorm['floor']
+	elseif temp = 16:
+		'<center><img <<$set_imgh>> src="images/locations/city/island/university/dorm/hallway/events/floor/sex/wf_5wm_gb1.jpg"></center>'
+		'You turn the handle and gentle push the door open a crack, just wide enough to look inside. You look inside and see a girl kneeling bent over with three guys in front of her. She is sucking the dick of one of them while jerking the other two off with her hands, a fourth guy has his dick shoved up her ass fucking her nice and hard. While a fifth guys stands next to them all jerking off, waiting his turn, after a few moments you close the door so you are not caught.'
+		gs 'arousal', 'voyeur_sex', 1
+		gs 'arousal', 'end'
+		gs 'stat'
+		act 'Leave': gt 'uni_dorm', $uni_dorm['floor']
+	elseif temp = 17:
+		'<center><img <<$set_imgh>> src="images/locations/city/island/university/dorm/hallway/events/floor/sex/wf_wm_anal1.jpg"></center>'
+		'You turn the handle and gentle push the door open a crack, just wide enough to look inside. You see a girl on all fours on the bed, while a guy is fucking her ass from behind. By the sounds of her moans it sounds like she is enjoying it as much as he is, after a few moments you close the door so you are not caught.'
+		gs 'arousal', 'voyeur_sex', 1
+		gs 'arousal', 'end'
+		gs 'stat'
+		act 'Leave': gt 'uni_dorm', $uni_dorm['floor']
+	elseif temp = 18:
+		'<center><img <<$set_imgh>> src="images/locations/city/island/university/dorm/hallway/events/floor/sex/wf_wm_anal2.jpg"></center>'
+		'You turn the handle and gentle push the door open a crack, just wide enough to look inside. You see a guy sitting on a couch with a girl riding him reverse cowgirl style, though his dick is in her ass instead of her pussy, she is riding him hard and moaning loudly. She seems to be enjoying being fucked in the butt more than he seems to be and he seems to be really enjoying himself, after a few moments you close the door so you are not caught.'
+		gs 'arousal', 'voyeur_sex', 1
+		gs 'arousal', 'end'
+		gs 'stat'
+		act 'Leave': gt 'uni_dorm', $uni_dorm['floor']
+	elseif temp = 19:
+		'<center><img <<$set_imgh>> src="images/locations/city/island/university/dorm/hallway/events/floor/sex/wf_wm_anal3.jpg"></center>'
+		'You turn the handle and gentle push the door open a crack, just wide enough to look inside. The first thing you hear is the girl begging. "Please not my ass... please it hurts." As you look you see a girl naked from the waist down bent over the seat of a couch, while a guy roughly fucks her behind, the next thing you notice is her hands are handcuffed behind her back. "Just relax and it won''t hurt so much, you agreed to try it." He says as he keeps savagely fucking her ass, after a few moments you close the door so you are not caught.'
+		gs 'arousal', 'voyeur_sex', 1
+		gs 'arousal', 'end'
+		gs 'stat'
+		act 'Leave': gt 'uni_dorm', $uni_dorm['floor']
+	elseif temp = 20:
+		'<center><img <<$set_imgh>> src="images/locations/city/island/university/dorm/hallway/events/floor/sex/wf_wm_bj1.jpg"></center>'
+		'You turn the handle and gentle push the door open a crack, just wide enough to look inside. You see a naked guy standing there with a naked girl kneeling in front of him, her head bobs back and forth as she sucks his dick, after a few moments you close the door so you are not caught.'
+		gs 'arousal', 'voyeur_sex', 1
+		gs 'arousal', 'end'
+		gs 'stat'
+		act 'Leave': gt 'uni_dorm', $uni_dorm['floor']
+	elseif temp = 21:
+		'<center><img <<$set_imgh>> src="images/locations/city/island/university/dorm/hallway/events/floor/sex/wf_wm_bj2.jpg"></center>'
+		'You turn the handle and gentle push the door open a crack, just wide enough to look inside. A guy lays on his back on the bed, while a girl kneels between his between his legs sucking his dick, her head bobbing up and down as she does, after a few moments you close the door so you are not caught.'
+		gs 'arousal', 'voyeur_sex', 1
+		gs 'arousal', 'end'
+		gs 'stat'
+		act 'Leave': gt 'uni_dorm', $uni_dorm['floor']
+	elseif temp = 22:
+		'<center><img <<$set_imgh>> src="images/locations/city/island/university/dorm/hallway/events/floor/sex/wf_wm_cowgirl1.jpg"></center>'
+		'You turn the handle and gentle push the door open a crack, just wide enough to look inside. A guy lays on his back on the bed while a girl rides his dick cowgirl style they seem to be really enjoying themselves. So much so they high five each other in the middle of it, after a few moments you close the door so you are not caught.'
+		gs 'arousal', 'voyeur_sex', 1
+		gs 'arousal', 'end'
+		gs 'stat'
+		act 'Leave': gt 'uni_dorm', $uni_dorm['floor']
+	elseif temp = 23:
+		'<center><img <<$set_imgh>> src="images/locations/city/island/university/dorm/hallway/events/floor/sex/wf_wm_cuni1.jpg"></center>'
+		'You turn the handle and gentle push the door open a crack, just wide enough to look inside. A naked girl is on all fours on a bed, while a guy kneels behind her, with his face buried in her ass. She is moaning loudly, as he eats her out from behind, just as you are about to close the door he looks right at you and your eyes meet, then he gives you a double thumbs up. Blushing you quickly close the door.'
+		gs 'arousal', 'voyeur_sex', 1
+		gs 'arousal', 'end'
+		gs 'stat'
+		act 'Leave': gt 'uni_dorm', $uni_dorm['floor']
+	elseif temp = 24:
+		'<center><img <<$set_imgh>> src="images/locations/city/island/university/dorm/hallway/events/floor/sex/wf_wm_cuni2.jpg"></center>'
+		'You turn the handle and gentle push the door open a crack, just wide enough to look inside. A naked guy lays on a cough on his back while a girl naked from the waist down rides his face, as you watch she looks over at you and grins, having been caught peeking you blush bright red and quickly close the door.'
+		gs 'arousal', 'voyeur_sex', 1
+		gs 'arousal', 'end'
+		gs 'stat'
+		act 'Leave': gt 'uni_dorm', $uni_dorm['floor']
+	elseif temp = 25:
+		'<center><img <<$set_imgh>> src="images/locations/city/island/university/dorm/hallway/events/floor/sex/wf_wm_vag1.jpg"></center>'
+		'You turn the handle and gentle push the door open a crack, just wide enough to look inside. A girl naked from the waist down lays on her back with her legs against her body, while a guy practically lays on top of her fucking her missionary style, you think you rarely see anyone doing missionary much anymore as you quietly close the door and leave.'
+		gs 'arousal', 'voyeur_sex', 1
+		gs 'arousal', 'end'
+		gs 'stat'
+		act 'Leave': gt 'uni_dorm', $uni_dorm['floor']
+	elseif temp = 26:
+		'<center><img <<$set_imgh>> src="images/locations/city/island/university/dorm/hallway/events/floor/sex/bf_3wm_voyeur1.jpg"></center>'
+		'You turn the handle and gentle push the door open a crack, just wide enough to look inside. You see a naked black girl laying on her side on the bed, with a white guy laying behind her fucking her. Two more white guys are crowded near the couple watching them as the guy fucks her, after a few moments you close the door so you are not caught.'
+		gs 'arousal', 'voyeur_sex', 1
+		gs 'arousal', 'end'
+		gs 'stat'
+		act 'Leave': gt 'uni_dorm', $uni_dorm['floor']
+	else
+		'<center><img <<$set_imgh>> src="images/locations/city/island/university/dorm/hallway/events/floor/sex/wf_wm_vag2.jpg"></center>'
+		'You turn the handle and gentle push the door open a crack, just wide enough to look inside. A naked girl is on all fours on a bed, while a naked guy is fucking her from behind. She keeps egging him on to go harder and faster which he tries to the best of his ability, after a few moments you close the door so you are not caught.'
+		gs 'arousal', 'voyeur_sex', 1
+		gs 'arousal', 'end'
+		gs 'stat'
+		act 'Leave': gt 'uni_dorm', $uni_dorm['floor']
+	end
+end
+
+if $ARGS[0] = 'dorm_floor8':
+	*clr & cla
+	menu_off = 1
+	uni_dorm['event_minut'] = totminut + 60
+	temp = rand(1,8)
+	if temp = 1:
+		'<center><img <<$set_imgh>> src="images/locations/city/island/university/dorm/hallway/events/floor8/cuffed_girl.jpg"></center>'
+		'As you walk down the hall, you see a naked white girl standing next to a dorm room door. Her hands are handcuffed behind her back, with another pair of cuffs with a short chain is cuffed around each of her ankles. When she notices you coming down the hall she blushes and hides her face, obviously embarrassed. You have no clue why she is out in the hallway like that but it is none of your business as she seems to be going along with it.'
+		gs 'arousal', 'voyeur', 1
+		gs 'arousal', 'end'
+		gs 'stat'
+		act 'Keep going': gt 'uni_dorm', 'eighth_floor'
+	elseif temp = 2:
+		'<center><img <<$set_imgh>> src="images/locations/city/island/university/dorm/hallway/events/floor8/ebony_lezdom.jpg"></center>'
+		'As you walk down the hall, you''re greeted by a ebony girl pinning a white girl against the wall. She has one of her hands wrapped around the white girls neck while the  other one slides down the white girls body to her crotch, where the black girl roughly grabs the white girl by the cunt, causing the white girl to wince in obvious pain.' 
+		'"What the fuck did I tell you, you little whore?" The ebony girl says.'
+		'The white girl responds. "I''m sorry but it hurt, his dick was to big." It seems you have come into the middle of their conversation.'
+		'The ebony girl twists her hand in the white girl girls crotch, causing her to winces more. "I don''t fucking care if it hurts, I bet this hurts even more doesn''t it?"'
+		*nl
+		'The white girl nods. "That''s right, the next time I sell your skinny white ass to one of the brothers on this floor and he wants to fuck that tight little ass of yours. You are going to take it and not tell him to stop, instead you are going to tell him to fuck your ass harder. You got it?"'
+		'The white girl nods and the breaths a sigh of relief as the black girl lets go of her. "We have this conversation again and you are going to really regret it." When the white girl nods again the ebony girl continues. "Good now get down to room eight twelve, there''s a few boys expecting you." With that the white girl hurries down the hallway, stopping to knock on a door, when it opens she goes inside. The ebony girl looks at you as you pass. "What the fuck you looking it?" Then she goes into the dorm room she was standing next to, you have to wonder if she is pimping out the other girl, it sure sounded like she was.'
+		gs 'arousal', 'voyeur', 1
+		gs 'arousal', 'end'
+		gs 'stat'
+		act 'Keep going': gt 'uni_dorm', 'eighth_floor'
+	elseif temp = 3:
+		'<center><img <<$set_imgh>> src="images/locations/city/island/university/dorm/hallway/events/floor8/ir_kiss' + rand(1,2) + '.jpg"></center>'
+		'As you walk down the hall, you spot a couple, a white girl with a black guy. They stop in front of one of the doors and make up for a few moments before the guy unlocks the door and leads the girl into his room.'
+		gs 'arousal', 'voyeur', 1
+		gs 'arousal', 'end'
+		gs 'stat'
+		act 'Keep going': gt 'uni_dorm', 'eighth_floor'
+	elseif temp = 4:
+		'<center><img <<$set_imgh>> src="images/locations/city/island/university/dorm/hallway/events/floor8/naked_wgirl.jpg"></center>'
+		'As you walk down the hall, you see a totally naked girl, standing in front of one of the dorm room doors knocking, a few moments later a black guy opens the door. He looks the girl over with a huge smile, stepping aside to let her walk in. He looks to you a gives you a wink as he closes the door.'
+		gs 'arousal', 'voyeur', 1
+		gs 'arousal', 'end'
+		gs 'stat'
+		act 'Keep going': gt 'uni_dorm', 'eighth_floor'
+	elseif temp = 5:
+		'<center><img <<$set_imgh>> src="images/locations/city/island/university/dorm/hallway/events/floor8/party_girl.jpg"></center>'
+		'As you walk down the hall, you meet a girl coming the other way. She is wearing a tight black skirt, with a black bra visible under her black sheer top. She seems a bit unsteady on her feet, stumbling a bit as she walks, she gives you a friendly smile as she walks past you. You can''t tell if she is drunk or high, or possible both.'
+		act 'Keep going': gt 'uni_dorm', 'eighth_floor'
+	elseif temp = 6:
+		'<center><img <<$set_imgh>> src="images/locations/city/island/university/dorm/hallway/events/floor8/wg_bm.jpg"></center>'
+		'As you walk down the hall, you see a white girl being followed by a black guy, she stops in front of one of the dorm room doors and opens it. As she does the guy gives her ass a hard slap, causing her to yelp a bit. She turns to give him a look, but you are unsure if she was into it or not, but if not it doesn''t seem to bother her that much as she walks into the dorm room, followed by the guy who closes the door once they are inside.'
+		act 'Keep going': gt 'uni_dorm', 'eighth_floor'
+	else
+		'<center><img <<$set_imgh>> src="images/locations/city/island/university/dorm/dorm_hall.jpg"></center>'
+		'As you walk down the hallway you can''t help but hear some noises coming from one of the rooms. You stop near the door and listen a moment but you can''t make it out. You could try the door and see if it is unlocked... or maybe you should mind your own business.'
+		act 'Keep going': gt 'uni_dorm', 'eighth_floor'
+		act 'Try the door':
+			'<center><img <<$set_imgh>> src="images/pc/activities/spy/peep3.jpg"></center>'
+			'You stop up to the door and check the handle, it turns easily in your hands, so it is not locked. But do you dare peep and see what is going on? Are you that kind of person? Or should you just go on? You feel torn, you really want to know, but what if someone see''s?'
+			act 'Don''t peek': gt 'uni_dorm', 'eighth_floor'
+			act 'Peek': gt 'uni_dorm_events', 'dorm_floor_eight_sex'
+		end
+	end
+end
+
+if $ARGS[0] = 'dorm_floor_eight_sex':
+	*clr & cla
+	menu_off = 1
+	temp = rand(1,29)
+	if temp = 1:
+		'<center><img <<$set_imgh>> src="images/locations/city/island/university/dorm/hallway/events/floor8/sex/2bf_1wf1.jpg"></center>'
+		'You turn the handle and gentle push the door open a crack, just wide enough to look inside. You see a white girl laying on the floor on her back with a black girl straddling her face getting eaten out, while another black girl kneels next to them rubbing her clit as she watches. Over on the couch a couple of guys watch the girls, after a few moments you close the door so you are not caught.'
+		gs 'arousal', 'voyeur_sex', 1
+		gs 'arousal', 'end'
+		gs 'stat'
+		act 'Leave': gt 'uni_dorm', 'eighth_floor'
+	elseif temp = 2:
+		'<center><img <<$set_imgh>> src="images/locations/city/island/university/dorm/hallway/events/floor8/sex/2bf_1wf2.jpg"></center>'
+		'You turn the handle and gentle push the door open a crack, just wide enough to look inside. You see a couple of black girls laying on the floor with their legs spread wide, both of them are rubbing the clit of one of the girls, while a white girl is laying on her stomach with her head between the legs of the other girl eating her out, after a few moments you close the door so you are not caught.'
+		gs 'arousal', 'voyeur_sex', 1
+		gs 'arousal', 'end'
+		gs 'stat'
+		act 'Leave': gt 'uni_dorm', 'eighth_floor'
+	elseif temp = 3:
+		'<center><img <<$set_imgh>> src="images/locations/city/island/university/dorm/hallway/events/floor8/sex/2bf_strap_vag1.jpg"></center>'
+		'You turn the handle and gentle push the door open a crack, just wide enough to look inside. You see a pair of black girls, one of them is bent over while he friend stands behind her wearing a strapon, fucking her from behind, after a few moments you close the door so you are not caught.'
+		gs 'arousal', 'voyeur_sex', 1
+		gs 'arousal', 'end'
+		gs 'stat'
+		act 'Leave': gt 'uni_dorm', 'eighth_floor'
+	elseif temp = 4:
+		'<center><img <<$set_imgh>> src="images/locations/city/island/university/dorm/hallway/events/floor8/sex/2bf_wm_3some1.jpg"></center>'
+		'You turn the handle and gentle push the door open a crack, just wide enough to look inside. You see a white guy laying on his back on the bed, one black girl straddles his face as she is eaten out by him. The other one straddles his waist and rides his cock cowgirl style, after a few moments you close the door so you are not caught.'
+		gs 'arousal', 'voyeur_sex', 1
+		gs 'arousal', 'end'
+		gs 'stat'
+		act 'Leave': gt 'uni_dorm', 'eighth_floor'
+	elseif temp = 5:
+		'<center><img <<$set_imgh>> src="images/locations/city/island/university/dorm/hallway/events/floor8/sex/2bm_2wf_anal1.jpg"></center>'
+		'You turn the handle and gentle push the door open a crack, just wide enough to look inside. You see two black guys laying on the bed on their back, while two white girls straddle them reverse cowgirl style. Both girls asses are being impaled by the black cocks under them, after a few moments you close the door so you are not caught.'
+		gs 'arousal', 'voyeur_sex', 1
+		gs 'arousal', 'end'
+		gs 'stat'
+		act 'Leave': gt 'uni_dorm', 'eighth_floor'
+	elseif temp = 6:
+		'<center><img <<$set_imgh>> src="images/locations/city/island/university/dorm/hallway/events/floor8/sex/2bm_wf_3some1.jpg"></center>'
+		'You turn the handle and gentle push the door open a crack, just wide enough to look inside. You see a white girl laying on her back on the bed, being fucked in the missionary position by a black guy. She is sucking the dick of a second black guy as she is getting fucked, after a few moments you close the door so you are not caught.'
+		gs 'arousal', 'voyeur_sex', 1
+		gs 'arousal', 'end'
+		gs 'stat'
+		act 'Leave': gt 'uni_dorm', 'eighth_floor'
+	elseif temp = 7:
+		'<center><img <<$set_imgh>> src="images/locations/city/island/university/dorm/hallway/events/floor8/sex/3bm_3wf_orgy1.jpg"></center>'
+		'You turn the handle and gentle push the door open a crack, just wide enough to look inside. You see three white girls, two laying on their back on a bed getting fucked by by two black guys. While the third girl is on her knees on the edge of the bed being fucked from behind by a third black guy, after a few moments you close the door so you are not caught.'
+		gs 'arousal', 'voyeur_sex', 1
+		gs 'arousal', 'end'
+		gs 'stat'
+		act 'Leave': gt 'uni_dorm', 'eighth_floor'
+	elseif temp = 8:
+		'<center><img <<$set_imgh>> src="images/locations/city/island/university/dorm/hallway/events/floor8/sex/3bm_wf_dp1.jpg"></center>'
+		'You turn the handle and gentle push the door open a crack, just wide enough to look inside. You see a black guy on his back on the floor, while a white girl straddles him, laying across his chest. A second black guy is fucking her ass from behind, while a third black guy is kneeling next to her head as she sucks his dick, after a few moments you close the door so you are not caught.'
+		gs 'arousal', 'voyeur_sex', 1
+		gs 'arousal', 'end'
+		gs 'stat'
+		act 'Leave': gt 'uni_dorm', 'eighth_floor'
+	elseif temp = 9:
+		'<center><img <<$set_imgh>> src="images/locations/city/island/university/dorm/hallway/events/floor8/sex/4bm_wf_dp1.jpg"></center>'
+		'You turn the handle and gentle push the door open a crack, just wide enough to look inside. You see a black guy laying on the floor on his back, while a white girl straddles him and lays on top of him. A second black guy is fucking her ass from behind, while two more black guys stand around naked watching them stroking their dicks. Those two must be waiting their turn to fuck the girl, after a few moments you close the door so you are not caught.'
+		gs 'arousal', 'voyeur_sex', 1
+		gs 'arousal', 'end'
+		gs 'stat'
+		act 'Leave': gt 'uni_dorm', 'eighth_floor'
+	elseif temp = 10:
+		'<center><img <<$set_imgh>> src="images/locations/city/island/university/dorm/hallway/events/floor8/sex/5bm_2wf_orgy1.jpg"></center>'
+		'You turn the handle and gentle push the door open a crack, just wide enough to look inside. You see two white girls laying on their back on a bed, while two black guys fuck them missionary style. Three more black guys are naked crowded around stroking their dicks, obviously waiting for their turn to fuck the girls, after a few moments you close the door so you are not caught.'
+		gs 'arousal', 'voyeur_sex', 1
+		gs 'arousal', 'end'
+		gs 'stat'
+		act 'Leave': gt 'uni_dorm', 'eighth_floor'
+	elseif temp = 11:
+		'<center><img <<$set_imgh>> src="images/locations/city/island/university/dorm/hallway/events/floor8/sex/5bm_wf_gb1.jpg"></center>'
+		'You turn the handle and gentle push the door open a crack, just wide enough to look inside. You see a white girl on her hands and knees on the bed being fucked from behind by a black guy. A second black guy kneels next to her head while she sucks his dick, a third black guy is naked and stroking his dick obviously waiting his turn. A fourth black guy is just finished getting undressed, while a fifth black guy still clothed is filming it all on his phone, after a few moments you close the door so you are not caught.'
+		gs 'arousal', 'voyeur_sex', 1
+		gs 'arousal', 'end'
+		gs 'stat'
+		act 'Leave': gt 'uni_dorm', 'eighth_floor'
+	elseif temp = 12:
+		'<center><img <<$set_imgh>> src="images/locations/city/island/university/dorm/hallway/events/floor8/sex/7bm_wf_orgy1.jpg"></center>'
+		'You turn the handle and gentle push the door open a crack, just wide enough to look inside. You see a black guy laying on his back on the couch, with a white girl straddling him taking his cock. A second black guy stands next to her head as she sucks his cock, while a third black back guy stands behind her fucking her in the ass. Standing behind the third guy is four more naked black guys all stroking their cocks waiting their turn to fuck the girl, after a few moments you close the door so you are not caught.'
+		gs 'arousal', 'voyeur_sex', 1
+		gs 'arousal', 'end'
+		gs 'stat'
+		act 'Leave': gt 'uni_dorm', 'eighth_floor'
+	elseif temp = 13:
+		'<center><img <<$set_imgh>> src="images/locations/city/island/university/dorm/hallway/events/floor8/sex/bf_2wm_dp1.jpg"></center>'
+		'You turn the handle and gentle push the door open a crack, just wide enough to look inside. You see a white guy laying on the couch with a black girl straddling him riding his cock cowgirl style, while a second white guy fucks her ass from behind, after a few moments you close the door so you are not caught.'
+		gs 'arousal', 'voyeur_sex', 1
+		gs 'arousal', 'end'
+		gs 'stat'
+		act 'Leave': gt 'uni_dorm', 'eighth_floor'
+	elseif temp = 14:
+		'<center><img <<$set_imgh>> src="images/locations/city/island/university/dorm/hallway/events/floor8/sex/bf_bm_anal1.jpg"></center>'
+		'You turn the handle and gentle push the door open a crack, just wide enough to look inside. You see a black guy laying on the bed on his back while a black girl impales her ass on his cock reverse cowgirl style, after a few moments you close the door so you are not caught.'
+		gs 'arousal', 'voyeur_sex', 1
+		gs 'arousal', 'end'
+		gs 'stat'
+		act 'Leave': gt 'uni_dorm', 'eighth_floor'
+	elseif temp = 15:
+		'<center><img <<$set_imgh>> src="images/locations/city/island/university/dorm/hallway/events/floor8/sex/bf_bm_bj1.jpg"></center>'
+		'You turn the handle and gentle push the door open a crack, just wide enough to look inside. You see a black girl laying on her back on the bed, while sucking the cock of the black guy kneeling next to her head, after a few moments you close the door so you are not caught.'
+		gs 'arousal', 'voyeur_sex', 1
+		gs 'arousal', 'end'
+		gs 'stat'
+		act 'Leave': gt 'uni_dorm', 'eighth_floor'
+	elseif temp = 16:
+		'<center><img <<$set_imgh>> src="images/locations/city/island/university/dorm/hallway/events/floor8/sex/bf_bm_vag1.jpg"></center>'
+		'You turn the handle and gentle push the door open a crack, just wide enough to look inside. You see a black guy sitting on the couch while a black girl impales her pussy on his cock reverse cowgirl style, after a few moments you close the door so you are not caught.'
+		gs 'arousal', 'voyeur_sex', 1
+		gs 'arousal', 'end'
+		gs 'stat'
+		act 'Leave': gt 'uni_dorm', 'eighth_floor'
+	elseif temp = 17:
+		'<center><img <<$set_imgh>> src="images/locations/city/island/university/dorm/hallway/events/floor8/sex/bf_bm_vag2.jpg"></center>'
+		'You turn the handle and gentle push the door open a crack, just wide enough to look inside. You see a black girl on her knees bent over on the couch, while a black man stands behind her fucking her from behind, after a few moments you close the door so you are not caught.'
+		gs 'arousal', 'voyeur_sex', 1
+		gs 'arousal', 'end'
+		gs 'stat'
+		act 'Leave': gt 'uni_dorm', 'eighth_floor'
+	elseif temp = 18:
+		'<center><img <<$set_imgh>> src="images/locations/city/island/university/dorm/hallway/events/floor8/sex/bf_bm_vag3.jpg"></center>'
+		'You turn the handle and gentle push the door open a crack, just wide enough to look inside. You see a black girl laying on a bed, naked from the waist down. While a black guy fucks her pussy missionary style, after a few moments you close the door so you are not caught.'
+		gs 'arousal', 'voyeur_sex', 1
+		gs 'arousal', 'end'
+		gs 'stat'
+		act 'Leave': gt 'uni_dorm', 'eighth_floor'
+	elseif temp = 19:
+		'<center><img <<$set_imgh>> src="images/locations/city/island/university/dorm/hallway/events/floor8/sex/bf_wf_strap_vag1.jpg"></center>'
+		'You turn the handle and gentle push the door open a crack, just wide enough to look inside. You see a white girl on all fours on the couch while a black girl wears a strapon and fucks her pussy from behind. As you watch the black girl looks over at you and your eyes meet and she grins widely, blushing you quickly close the door and leave.'
+		gs 'arousal', 'voyeur_sex', 1
+		gs 'arousal', 'end'
+		gs 'stat'
+		act 'Leave': gt 'uni_dorm', 'eighth_floor'
+	elseif temp = 20:
+		'<center><img <<$set_imgh>> src="images/locations/city/island/university/dorm/hallway/events/floor8/sex/bf_wf_cuni1.jpg"></center>'
+		'You turn the handle and gentle push the door open a crack, just wide enough to look inside. You see a black girl laying on her back on the bed with her legs spread wide, while a white girl on her hands and knees has her face buried in the black girls crotch licking her pussy, after a few moments you close the door so you are not caught.'
+		gs 'arousal', 'voyeur_sex', 1
+		gs 'arousal', 'end'
+		gs 'stat'
+		act 'Leave': gt 'uni_dorm', 'eighth_floor'
+	elseif temp = 21:
+		'<center><img <<$set_imgh>> src="images/locations/city/island/university/dorm/hallway/events/floor8/sex/bf_wm_anal1.jpg"></center>'
+		'You turn the handle and gentle push the door open a crack, just wide enough to look inside. You see a black girl laying on her side while a white guy lays on his side behind her with his dick up her ass. They lay there as he fucks her ass, after a few moments you close the door so you are not caught.'
+		gs 'arousal', 'voyeur_sex', 1
+		gs 'arousal', 'end'
+		gs 'stat'
+		act 'Leave': gt 'uni_dorm', 'eighth_floor'
+	elseif temp = 22:
+		'<center><img <<$set_imgh>> src="images/locations/city/island/university/dorm/hallway/events/floor8/sex/bf_wm_bj1.jpg"></center>'
+		'You turn the handle and gentle push the door open a crack, just wide enough to look inside. A white guy lays on his back on the bed while a black girl lays next to him sucking his dick, her head bobbing up and down. One of his free hands is between her legs rubbing her clit, after a few moments you close the door so you are not caught.'
+		gs 'arousal', 'voyeur_sex', 1
+		gs 'arousal', 'end'
+		gs 'stat'
+		act 'Leave': gt 'uni_dorm', 'eighth_floor'
+	elseif temp = 23:
+		'<center><img <<$set_imgh>> src="images/locations/city/island/university/dorm/hallway/events/floor8/sex/bf_wm_cuni1.jpg"></center>'
+		'You turn the handle and gentle push the door open a crack, just wide enough to look inside. You see a naked black girl laying on the bed with her legs spread wide, while a partially dressed white guy has his face buried in her crotch licking her pussy. As you watch the girl turns her head and looks right at you, she gives you a dirty look when your eyes meet, blushing you close the door and leave.'
+		gs 'arousal', 'voyeur_sex', 1
+		gs 'arousal', 'end'
+		gs 'stat'
+		act 'Leave': gt 'uni_dorm', 'eighth_floor'
+	elseif temp = 24:
+		'<center><img <<$set_imgh>> src="images/locations/city/island/university/dorm/hallway/events/floor8/sex/bf_wm_vag1.jpg"></center>'
+		'You turn the handle and gentle push the door open a crack, just wide enough to look inside. You see a black girl laying on her side while a white guy lays on his side behind her with his dick in her pussy. They lay there as he fucks her pussy, after a few moments you close the door so you are not caught.'
+		gs 'arousal', 'voyeur_sex', 1
+		gs 'arousal', 'end'
+		gs 'stat'
+		act 'Leave': gt 'uni_dorm', 'eighth_floor'
+	elseif temp = 25:
+		'<center><img <<$set_imgh>> src="images/locations/city/island/university/dorm/hallway/events/floor8/sex/bm_af_anal1.jpg"></center>'
+		'You turn the handle and gentle push the door open a crack, just wide enough to look inside. You see a naked Asian girl on her knees and elbows on the bed, while a black guy crotches above her, with his dick buried in her ass. As you watch he hammers her ass with his big black dick, her cries sounds like she is enjoying it, after a few moments you close the door so you are not caught.'
+		gs 'arousal', 'voyeur_sex', 1
+		gs 'arousal', 'end'
+		gs 'stat'
+		act 'Leave': gt 'uni_dorm', 'eighth_floor'
+	elseif temp = 26:
+		'<center><img <<$set_imgh>> src="images/locations/city/island/university/dorm/hallway/events/floor8/sex/bm_wf_anal1.jpg"></center>'
+		'You turn the handle and gentle push the door open a crack, just wide enough to look inside. You see a naked white girl laying on her stomach on the bed with her legs spread wide, a black guy kneels behind her with his dick buried deep in her ass. As he fucks her ass, she begs him to fuck her ass harder, after a few moments you close the door so you are not caught.'
+		gs 'arousal', 'voyeur_sex', 1
+		gs 'arousal', 'end'
+		gs 'stat'
+		act 'Leave': gt 'uni_dorm', 'eighth_floor'
+	elseif temp = 27:
+		'<center><img <<$set_imgh>> src="images/locations/city/island/university/dorm/hallway/events/floor8/sex/bm_wf_bj1.jpg"></center>'
+		'You turn the handle and gentle push the door open a crack, just wide enough to look inside. A black guy is sitting on his bed naked, while a white girl kneels bent over next to him with his dick in her mouth. Her head bobs up and down as she sucks his cock, after a few moments you close the door so you are not caught.'
+		gs 'arousal', 'voyeur_sex', 1
+		gs 'arousal', 'end'
+		gs 'stat'
+		act 'Leave': gt 'uni_dorm', 'eighth_floor'
+	elseif temp = 28:
+		'<center><img <<$set_imgh>> src="images/locations/city/island/university/dorm/hallway/events/floor8/sex/bm_wf_cuni1.jpg"></center>'
+		'You turn the handle and gentle push the door open a crack, just wide enough to look inside. A white girl is laying on the bed on her back with her legs spread wide, while a partially dressed black guy squats next to the bed with his face in her crotch licking her pussy, after a few moments you close the door so you are not caught.'
+		gs 'arousal', 'voyeur_sex', 1
+		gs 'arousal', 'end'
+		gs 'stat'
+		act 'Leave': gt 'uni_dorm', 'eighth_floor'
+	else
+		'<center><img <<$set_imgh>> src="images/locations/city/island/university/dorm/hallway/events/floor8/sex/bm_wf_vag1.jpg"></center>'
+		'You turn the handle and gentle push the door open a crack, just wide enough to look inside. You see a naked white girl on her elbow and knees on the bed, while a black guy kneels behind her fucking her from behind. She is crying out begging him to fuck her harder, after a few moments you close the door so you are not caught.'
+		gs 'arousal', 'voyeur_sex', 1
+		gs 'arousal', 'end'
+		gs 'stat'
+		act 'Leave': gt 'uni_dorm', 'eighth_floor'
+	end
+end
+
+
+--- uni_dorm_events ---------------------------------