45 Commits dcbc8df77b ... 55029277fd

Autor SHA1 Mensagem Data
  KevinSmarts 55029277fd [fixes] I made some mistakes and also made the code better 4 anos atrás
  KevinSmarts 288bf9f53c Merge remote-tracking branch 'julzor/master' 4 anos atrás
  KevinSmarts 415f848f12 [added] Some prettying up of the full custom stuff with destriptions for weights and images for the purses 4 anos atrás
  Sicaa f6722a5536 [fixed] relationships and other stuff getting reset on game load 4 anos atrás
  julzor 80fc743698 [changed] update for the new nerd trait 4 anos atrás
  Sicaa 1dbb072cce [fixed] wrong variable name for gaming experience 4 anos atrás
  Kevin_Smarts 85eb4c94b9 Merge branch 'master' of Unstable.Egghead/glife into master 4 anos atrás
  Joshua Gwinn 79eff19021 Merge branch 'master' of https://git.catrenelle.com/Kevin_Smarts/glife 4 anos atrás
  KevinSmarts 4057aefc59 Merge remote-tracking branch 'julzor/master' 4 anos atrás
  Sicaa 469d5c7ff0 [fixed] missing screen wipe in gschool_cheerleading 4 anos atrás
  julzor caff0671a2 [added] willpower to the school, nerd trait and added the traits to certain starts 4 anos atrás
  Sicaa 25b7a67129 [fixed] text always referring to PC as Sveta 4 anos atrás
  Sicaa b09717412a [changed] rand() to rand_pick in family_schedule so it's more flexible for possible later changes 4 anos atrás
  KevinSmarts edcde08115 Merge remote-tracking branch 'sovietmercader/master' 4 anos atrás
  KevinSmarts 074b4ea14d Merge remote-tracking branch 'julzor/master' 4 anos atrás
  KevinSmarts 8ea062cb4f Merge remote-tracking branch 'Sicaa/master' 4 anos atrás
  Sicaa 89918e7976 [changed] updated the pube_image code and included new images made by Kevin 4 anos atrás
  julzor 87d7f84063 [fixed] missing indorf check in kuhrpar 4 anos atrás
  Sicaa eef1ed8020 [fixed] audio continuing when entering shared apartment, missing + 4 anos atrás
  Sicaa eae59fb56d [changed] optimization of the week even/odd calculation - by slanon 4 anos atrás
  sovietmercader 1a2959cba2 [changed] just a couple actions and numbers in the village 4 anos atrás
  julzor 41b5a3c388 [fixed] errors found by the analyser 4 anos atrás
  julzor d114f40dbf Merge branch 'master' of https://git.catrenelle.com/Kevin_Smarts/glife 4 anos atrás
  julzor f6c28eb3c6 [changed] several if/ends into one if/elseif in food_menu 4 anos atrás
  KevinSmarts 7d8ec42106 [fixed] Wrong variable used 4 anos atrás
  Sicaa cd891afa15 [fixed] wrong diagnosis of the problem, fixed home_owned[2] resetting to 1 properly now 4 anos atrás
  Sicaa d76ff48f6b [fixed] pregreact gosub placement (so all acts get overridden), ParHomeBlock not being set when kicked out & small text alterations 4 anos atrás
  KevinSmarts a058654b21 Merge branch 'master' of https://git.catrenelle.com/Sicaa/glife 4 anos atrás
  KevinSmarts 9b321df40a [added] New pubic hair colour options for various desigens and lengths 4 anos atrás
  Sicaa 4c27562d22 [fixed] message blocking sister sleep molestation happening too early 4 anos atrás
  KevinSmarts 7a645b5b29 Merge remote-tracking branch 'julzor/master' 4 anos atrás
  KevinSmarts 50ece627f4 Merge remote-tracking branch 'Sicaa/master' 4 anos atrás
  KevinSmarts c309346afd Merge remote-tracking branch 'hornguy6/master' 4 anos atrás
  julzor 4f60fc7cd6 [changed] added wait to the list of keywords 4 anos atrás
  Sicaa d5c1db01f0 [added] temperature scale toggle to Status window settings 4 anos atrás
  Joshua Gwinn dfb0768f27 Fix the birthyear calculation on character creation 4 anos atrás
  hornguy6 4ede03c316 [changed] no longer allows you to choose to strip to underwear after successive choices not to 4 anos atrás
  hornguy6 04ea922ecf [removed] duplicate commercial arg 4 anos atrás
  julzor 3f73726290 [fixed] $prevloc wasn't set in hotelroom, fixed quest progression of the receptionist in hotelhole, reduced probability of catching the receptionist again 4 anos atrás
  julzor 4485c71d80 [fixed] willpower wasn't paid for doing homework 4 anos atrás
  julzor 55f0c7501b Merge branch 'master' of https://git.catrenelle.com/Kevin_Smarts/glife 4 anos atrás
  julzor c6853a6202 [changed] laptop is usable in the hotelroom, hotel offers free Wi-Fi it's 2016 after all 4 anos atrás
  julzor e9b5649cd6 [changed] hotels have shampoo, blocked bath for cheap hotelrooms to match the image 4 anos atrás
  julzor 94750b8180 [fixed] cleaned up hotelroom 4 anos atrás
  julzor fd3decc611 [fixed]cleaned up dibodi and liames, fixed a dead end and small 4 anos atrás

+ 4 - 1
locations/Cheatmenu_din.qsrc

@@ -1554,7 +1554,7 @@ $cheatmenu['time'] = {
 	*nl
 	'Temperature = <<$temperature>> - <a href="exec:temper += 1 & dynamic $cheatmenu[''time'']">+1 degree</a> - <a href="exec:temper += 5 & dynamic $cheatmenu[''time'']">+5 degrees</a> - <a href="exec:temper -= 1 & dynamic $cheatmenu[''time'']">-1 degree</a> - <a href="exec:temper -= 5 & dynamic $cheatmenu[''time'']">-5 degrees</a>'
 	*nl
-	if TempUnit = 0: 'Use <a href="exec:TempUnit = 1 & gs ''outdoors'',''weather'' & dynamic $cheatmenu[''time'']">Fahrenheit</a> scale' else 'Use <a href="exec:TempUnit = 0 & gs ''outdoors'',''weather'' & dynamic $cheatmenu[''time'']">Celsius</a> scale'
+	'Switch to the <a href="exec:TempUnit = '+iif(TempUnit = 0,'1 & gs ''outdoors'',''weather'' & dynamic $cheatmenu[''time'']">Fahrenheit','0 & gs ''outdoors'',''weather'' & dynamic $cheatmenu[''time'']">Celsius')+'</a> scale'
 	*nl
 	'<a href="exec:dynamic $cheatmenu[''input_time'']">Direct input time</a>'
 	*nl
@@ -1915,6 +1915,7 @@ $cheatmenu['display'] = {
 $cheatmenu['status'] = {
 	*clr & cla
 	gs 'obj_din', 'settingtabs'
+	gs 'stat'
 	'<center><h1>Status Window Settings</h1></center>'
 	'<center><table cellspacing="0" cellpadding="20" valign="top"><tr>'
 	'<td cellspacing="0" cellpadding="20" valign="top">'
@@ -1932,6 +1933,8 @@ $cheatmenu['status'] = {
 		$OpenInnerThought+'Oh my god, what will the neighbours think of us?'+$CloseInnerThought
 	end
 	*nl
+	'Switch to the <a href="exec:TempUnit = '+iif(TempUnit = 0,'1 & gs ''outdoors'',''weather'' & dynamic $cheatmenu[''status'']">Fahrenheit','0 & gs ''outdoors'',''weather'' & dynamic $cheatmenu[''status'']">Celsius')+'</a> scale'
+	*nl
 	'Scale Weather Banner: <a href="exec:default_wbanner = 1 & set_weatherht=input(''Weather Banner Height (Default: 72 Min: 50 Max: 100)'') & dynamic $cheatmenu[''status''] & gs ''stat''"><<set_weatherht>></a>, Reset to default <a href="exec:default_wbanner = 0 & dynamic $cheatmenu[''status''] & gs ''stat''">(72)</a>'
 		if set_weatherht < 50:
 			set_weatherht = 50

+ 82 - 76
locations/HotelHole.qsrc

@@ -15,93 +15,99 @@ gs'stat'
 ! use this args if some event  transfers you directly to the lobby  and it is can happen  between  midnight and 01:00.
 if $ARGS[0] = 'skip_resepevent': jump 'skipresepevent'
 
-if hour = 0 and $prevloc ! 'HotelRoom':
-	*clr
-	'When you want to enter the hotel you notice the doors are closed.'
-	'You try knocking on the door but nobody comes to open them.'
-	if resepseen = 0:
-		'This is strange, you think to yourself. The lobby is supposed to be open 24/7.'
-	end
-	if resepseen = 1:
-		'"Damn it, I guess if I am going to catch <<$receptionName>> in the act, I need to find another way to enter the lobby at midnight."'
-		hotresepQW = 2
-		observ_exp += 3
-	end
-	act 'Go back to the High Street':minut += 3 & gt'pavtrain'
-	exit
-end
-
-if hour = 0 and $prevloc = 'HotelRoom':
-	if resepseen = 1:
-		hotresepQW = 3
-		*clr & cla
-		observ_exp += 3
-		gs 'stat'
-		'You creep down to the lobby, and then around the corner, carefully, you sneak a glimpse.'
-        'You spy <<$receptionName>>. Yep, you nod, she''s already showing herself off to the cameras.'
-		'<center><img <<$set_imgh>> src="images/locations/pavlovsk/hotel/sex/resep_event1.jpg"></center>'
-		'She flashes her breasts beneath a devilish smile.'
-		'She flaps her skirt up and down, and there''s her shaved vagina, now-you-see-it, now-you-don''t.'
-		'Uh-oh, you see a man approaching her.'
-		'It''s mister Leonidovich, the hotel manager'
-		'<center><img <<$set_imgh>> src="images/locations/pavlovsk/hotel/sex/resep_event2.jpg"></center>'
-		'"Miss Tanich, What are you doing? What if our guests should spot you like this?" he says.'
-		'You think about the pictures you found in his office and you wonder why he acts so surprised.'
-		'"Oh Mister Leonidovich," she says pouting like a little girl, "I am so sorry, I have been bad daddy."'
-		'At that moment you figure out they are just playing a game and being caught flashing was all part of their weird little role play.'
-		act 'Continue':
+if hour = 0 and hotresepQW_day ! daystart and (hotresepQW < 3 or (hotresepQW = 3 and rand(1,10) = 10)):
+	if $prevloc ! 'HotelRoom':
+		*clr
+		'When you want to enter the hotel you notice the doors are closed.'
+		'You try knocking on the door but nobody comes to open them.'
+		act 'Go back to the High Street':minut += 3 & gt'pavtrain'
+		
+		if hotresepQW = 3:
+			'The receptionist and the manager are probably at it again.'
+			act 'Wait until they are finished': 
+				hotresepQW_day = daystart
+				minut += rand(1, 60-minut)
+				gt 'HotelHole'
+			end
+		elseif resepseen = 0:
+			'This is strange, you think to yourself. The lobby is supposed to be open 24/7.'
+		elseif resepseen = 1:
+			'"Damn it, I guess if I am going to catch <<$receptionName>> in the act, I need to find another way to enter the lobby at midnight."'
+			if hotresepQW < 2: hotresepQW = 2
+			observ_exp += 3
+		end
+		exit
+	else
+		if resepseen = 1:
+			hotresepQW = 3
 			*clr & cla
-			'<center><img <<$set_imgh>> src="images/locations/pavlovsk/hotel/sex/resep_event9.jpg"></center>'
-			 'She needs his foregiveness and kisses his mouth while he undresses her.'
-			'<center><img <<$set_imgh>> src="images/locations/pavlovsk/hotel/sex/resep_event3.jpg"></center>'
-			'Once all the clothes are off Miss Tanich, she drops to her knees and puts her mouth on the big stiff penis dangling in front of her face.'
-			'Her lips glide down the length of the cock leaving a trail of shiny saliva, and then slowly she licks her way back up to the big fat head.'
-			'Using only her tongue, she licked all around, focusing on the head and backing off occasionally.'
-			'She sucks cock like a real pro, - you could learn a thing or two from this woman, you think to yourself.'
-			'<center><img <<$set_imgh>> src="images/locations/pavlovsk/hotel/sex/resep_event4.jpg"></center>'
-			 'All of a sudden, she moves the dick between her breasts and starts fucking it through the space between them.'
-			'"Miss Tanich, you should slow down, I don''t want to blow my load before I get to try that sweet little pussy of yours."'
+			observ_exp += 3
+			gs 'stat'
+			'You creep down to the lobby, and then around the corner, carefully, you sneak a glimpse.'
+			'You spy <<$receptionName>>. Yep, you nod, she''s already showing herself off to the cameras.'
+			'<center><img <<$set_imgh>> src="images/locations/pavlovsk/hotel/sex/resep_event1.jpg"></center>'
+			'She flashes her breasts beneath a devilish smile.'
+			'She flaps her skirt up and down, and there''s her shaved vagina, now-you-see-it, now-you-don''t.'
+			'Uh-oh, you see a man approaching her.'
+			'It''s mister Leonidovich, the hotel manager'
+			'<center><img <<$set_imgh>> src="images/locations/pavlovsk/hotel/sex/resep_event2.jpg"></center>'
+			'"Miss Tanich, What are you doing? What if our guests should spot you like this?" he says.'
+			'You think about the pictures you found in his office and you wonder why he acts so surprised.'
+			'"Oh Mister Leonidovich," she says pouting like a little girl, "I am so sorry, I have been bad daddy."'
+			'At that moment you figure out they are just playing a game and being caught flashing was all part of their weird little role play.'
 			act 'Continue':
 				*clr & cla
-				'<center><img <<$set_imgh>> src="images/locations/pavlovsk/hotel/sex/resep_event5.jpg"></center>'
-				'So Miss Tanich releases his cock and pushes him down on to the bench. And then she turns around, props herself up so her cunt rests on top of his cock and she slowly lowers her hips down as his cock spears her pussy.'
-				'She starts riding him furiously while he reaches his hands around her body and squeezes her juicy breasts.'
-				'He pinches her nipple, just to make her yelp, like his dog, and he laughs at her, and does it again.'
-				'<center><img <<$set_imgh>> src="images/locations/pavlovsk/hotel/sex/resep_event6.jpg"></center>'
-				'After a few minutes Miss Tanich turned around and started riding him while they faced each other.'
-				'You could see from the manager''s face that he was having trouble keeping up with her.'
-				gs 'arousal', 'voyeur_sex',60
-				gs 'arousal', 'end'
+				'<center><img <<$set_imgh>> src="images/locations/pavlovsk/hotel/sex/resep_event9.jpg"></center>'
+				 'She needs his foregiveness and kisses his mouth while he undresses her.'
+				'<center><img <<$set_imgh>> src="images/locations/pavlovsk/hotel/sex/resep_event3.jpg"></center>'
+				'Once all the clothes are off Miss Tanich, she drops to her knees and puts her mouth on the big stiff penis dangling in front of her face.'
+				'Her lips glide down the length of the cock leaving a trail of shiny saliva, and then slowly she licks her way back up to the big fat head.'
+				'Using only her tongue, she licked all around, focusing on the head and backing off occasionally.'
+				'She sucks cock like a real pro, - you could learn a thing or two from this woman, you think to yourself.'
+				'<center><img <<$set_imgh>> src="images/locations/pavlovsk/hotel/sex/resep_event4.jpg"></center>'
+				 'All of a sudden, she moves the dick between her breasts and starts fucking it through the space between them.'
+				'"Miss Tanich, you should slow down, I don''t want to blow my load before I get to try that sweet little pussy of yours."'
 				act 'Continue':
 					*clr & cla
-					'<center><img <<$set_imgh>> src="images/locations/pavlovsk/hotel/sex/resep_event7.jpg"></center>'
-					'"Ok, my turn now," the manager suddenly yelled.'
-					'It seems like the desk girl knew exactly what he meant by that since she dismounted him and placed herself on her hands and knees.'
-					'He came up behind her and started fucking her doggy style.'
-					'He did not last very long, after a few minutes he yelled: "Here it comes."'
-					'He pulled out of her pussy and sprayed a big load all over her butt.'
-					'<center><img <<$set_imgh>> src="images/locations/pavlovsk/hotel/sex/resep_event8.jpg"></center>'
-					'"Thank you Miss Tanich, I believe your monthly bonus is again very much deserved"'
-					'Miss Tanich just smiled at him while showing off her pussy and cum stained buttocks.'
-					'You have seen enough and quietly go back to your room'
-
+					'<center><img <<$set_imgh>> src="images/locations/pavlovsk/hotel/sex/resep_event5.jpg"></center>'
+					'So Miss Tanich releases his cock and pushes him down on to the bench. And then she turns around, props herself up so her cunt rests on top of his cock and she slowly lowers her hips down as his cock spears her pussy.'
+					'She starts riding him furiously while he reaches his hands around her body and squeezes her juicy breasts.'
+					'He pinches her nipple, just to make her yelp, like his dog, and he laughs at her, and does it again.'
+					'<center><img <<$set_imgh>> src="images/locations/pavlovsk/hotel/sex/resep_event6.jpg"></center>'
+					'After a few minutes Miss Tanich turned around and started riding him while they faced each other.'
+					'You could see from the manager''s face that he was having trouble keeping up with her.'
+					gs 'arousal', 'voyeur_sex',60
+					gs 'arousal', 'end'
 					act 'Continue':
-						if hotelroom = 1:gt'hotelroom','normal'
-						if hotelroom = 2:gt'hotelroom','better'
-						if hotelroom = 3:gt'hotelroom','best'
+						*clr & cla
+						'<center><img <<$set_imgh>> src="images/locations/pavlovsk/hotel/sex/resep_event7.jpg"></center>'
+						'"Ok, my turn now," the manager suddenly yelled.'
+						'It seems like the desk girl knew exactly what he meant by that since she dismounted him and placed herself on her hands and knees.'
+						'He came up behind her and started fucking her doggy style.'
+						'He did not last very long, after a few minutes he yelled: "Here it comes."'
+						'He pulled out of her pussy and sprayed a big load all over her butt.'
+						'<center><img <<$set_imgh>> src="images/locations/pavlovsk/hotel/sex/resep_event8.jpg"></center>'
+						'"Thank you Miss Tanich, I believe your monthly bonus is again very much deserved"'
+						'Miss Tanich just smiled at him while showing off her pussy and cum stained buttocks.'
+						'You have seen enough and quietly go back to your room'
+
+						act 'Continue':
+							if hotelroom = 1:gt'hotelroom','normal'
+							if hotelroom = 2:gt'hotelroom','better'
+							if hotelroom = 3:gt'hotelroom','best'
+						end
 					end
 				end
 			end
+			exit
+		elseif resepseen = 0:
+			observ_exp += rand(0,1)
+			'<center><img <<$set_imgh>> src="images/locations/pavlovsk/hotel/sex/resep_event2.jpg"></center>'
+			'You enter the lobby and you can see the desk girl and the manager talking to each other.'
+			'When they notice you they both give you a very disappointing look.'
+			'You get the feeling you interrupted something here.'
 		end
 	end
-	exit
-	if resepseen = 0:
-	    observ_exp += rand(0,1)
-		'<center><img <<$set_imgh>> src="images/locations/pavlovsk/hotel/sex/resep_event2.jpg"></center>'
-		'You enter the lobby and you can see the desk girl and the manager talking to each other.'
-		'When they notice you they both give you a very disappointing look.'
-		'You get the feeling you interrupted something here.'
-	end
 end
 
 :skipresepevent

+ 86 - 91
locations/HotelRoom.qsrc

@@ -1,77 +1,74 @@
 # HotelRoom
+
 CLOSE ALL
 if $ARGS[0] = 'normal':
-$metkaM = 'normal'
-$locM = 'HotelRoom'
-$metka = 'normal'
-$loc = 'HotelRoom'
-$location_type = 'private'
-$menu_loc = 'HotelRoom'
-$menu_arg = 'normal'
-menu_off = 0
-clr
-gs 'stat'
-	cla
-	*clr
+	*clr & cla
+	$metkaM = 'normal'
+	$locM = 'HotelRoom'
+	$metka = 'normal'
+	$loc = 'HotelRoom'
+	$prevloc = $loc
+	$location_type = 'private'
+	$menu_loc = 'HotelRoom'
+	$menu_arg = 'normal'
+	menu_off = 0
+	hotelWiFi = 1
 	gs 'themes', 'indoors'
+	gs 'stat'
 	'<center><b><font color = maroon>Your normal hotel room</font></b></center>'
 	'<center>You have paid to stay for <<hotelroom1day - daystart>> more nights in the room.</center>'
 	'<center><img <<$set_imgh>> src="images/locations/pavlovsk/hotel/hotel.room.normal.jpg"></center>'
 	'Your hotel room is not very large, but it has everything you need and is quite stylish. The large <a href="exec:gt ''bed2''">double bed</a> takes up most of the room. A modern <a href="exec:gt ''wardrobe'', ''start''">wardrobe</a> (where you can choose outfits and organize your clothing) stands near the entrance of the room. Next to the door, you can find a <a href="exec:gt ''mirror'',''start''">mirror</a>. The door to the <a href="exec:gt ''hotelroom'',''shower1''">bathroom</a> is to the right.'
-	'Your hotel room also has a <a href="exec:gt ''HotelRoom'',''tv''">TV</a>.'
+	'Your hotel room also has a <a href="exec:gt ''HotelRoom'',''tv''">TV</a>'+iif(komp = 1, ' and your <a href="exec: gt ''Komp'',''start''">laptop</a> is on the desk. The hotel offers all guests free Wi-Fi.', '.')
 	*nl
 	'You can access your <a href="exec: quick_dress = 1 & gt ''wardrobe'', ''default''">default clothing</a> options directly.'
 	act'Go to the hotel lobby':
 		if $clothingworntype ! 'nude':
+			hotelWiFi = 0
 			gt'hotelHole'
 		else
 			msg'<b><font color = red>You need to get dressed before leaving your hotel room.</font></b>'
 			gt'HotelRoom','normal'
 		end
 	end
-	if money >= 100:
-		act'Order room service (0:30) (100 <b>₽</b>)':gs 'food', 'h_food'
-	end
-	act 'Drink some water (0:05)': gs 'beverage', 'bev_wat'
+	if money >= 100: act'Order room service (0:30) (100 <b>₽</b>)':gs 'food', 'h_food'
+	act 'Drink some water (0:01)': gs 'beverage', 'bev_wat'
 	dynamic $fatdel
 	dynamic $lekarstvo
 	dynamic $vitamin
 end
 
-
-
 if $ARGS[0] = 'better':
-$metkaM = 'better'
-$locM = 'HotelRoom'
-$metka = 'better'
-$loc = 'HotelRoom'
-$menu_loc = 'HotelRoom'
-$menu_arg = 'better'
-menu_off = 0
-$location_type = 'private'
-clr
-gs 'stat'
-	cla
-	*clr
+	*clr & cla
+	$metkaM = 'better'
+	$locM = 'HotelRoom'
+	$metka = 'better'
+	$loc = 'HotelRoom'
+	$prevloc = $loc
+	$menu_loc = 'HotelRoom'
+	$menu_arg = 'better'
+	menu_off = 0
+	hotelWiFi = 1
+	$location_type = 'private'
 	gs 'themes', 'indoors'
+	gs 'stat'	
 	'<center><b><font color = maroon>Your luxury room</font></b></center>'
 	'<center>You have paid to stay for <<hotelroom1day - daystart>> more nights in the room.</center>'
 	'<center><img <<$set_imgh>> src="images/locations/pavlovsk/hotel/hotel.room.better.jpg"></center>'
 	'Your hotel room is not very large, but it has everything you need and is quite stylish. The large <a href="exec:gt ''bed2''">double bed</a> takes up most of the room. A modern <a href="exec:gt ''wardrobe'', ''start''">wardrobe</a> (where you can choose outfits and organize your clothing) stands near the entrance of the room. Next to the door, you can find a <a href="exec:gt ''mirror'',''start''">mirror</a>. The door to the <a href="exec:gt ''hotelroom'',''shower1''">bathroom</a> is to the right.'
-	'Your hotel room also has a small flat-screen <a href="exec:gt ''HotelRoom'',''tv''">TV</a>, right across the bed.'
+	'Your hotel room also has a small flat-screen <a href="exec:gt ''HotelRoom'',''tv''">TV</a>'+iif(komp = 1, ' and your <a href="exec: gt ''Komp'',''start''">laptop</a> is on the desk. The hotel offers all guests free Wi-Fi.', '.')
 	*nl
 	'You can access your <a href="exec: quick_dress = 1 & gt ''wardrobe'', ''default''">default clothing</a> options directly.'
 	act'Go to the hotel lobby':
 		if $clothingworntype ! 'nude':
+			hotelWiFi = 0
 			gt'hotelHole'
 		else
 			msg'<b><font color = red>You need to get dressed before leaving your hotel room.</font></b>'
 			gt'HotelRoom','better'
 		end
 	end
-	if money >= 100:
-		act'Order room service (0:30) (100 <b>₽</b>)':gs 'food', 'h_food'
-	end
+	if money >= 100: act'Order room service (0:30) (100 <b>₽</b>)':gs 'food', 'h_food'
 	act 'Drink some water (0:05)': gs 'beverage', 'bev_wat'
 	act 'Have a coffee (0:05)': gs 'beverage', 'bev_cof'
 	dynamic $fatdel
@@ -80,38 +77,37 @@ gs 'stat'
 end
 
 if $ARGS[0] = 'best':
-$metkaM = 'best'
-$locM = 'HotelRoom'
-$metka = 'best'
-$loc = 'HotelRoom'
-$menu_loc = 'HotelRoom'
-$menu_arg = 'best'
-menu_off = 0
-$location_type = 'private'
-clr
-gs 'stat'
-	cla
-	*clr
+	*clr & cla	
+	$metkaM = 'best'
+	$locM = 'HotelRoom'
+	$metka = 'best'
+	$loc = 'HotelRoom'
+	$prevloc = $loc
+	$menu_loc = 'HotelRoom'
+	$menu_arg = 'best'
+	menu_off = 0
+	hotelWiFi = 1
+	$location_type = 'private'
 	gs 'themes', 'indoors'
+	gs 'stat'	
 	'<center><b><font color = maroon>Your royal suite</font></b></center>'
 	'<center>You have paid to stay for <<hotelroom1day - daystart>> more nights in the room.</center>'
 	'<center><img <<$set_imgh>> src="images/locations/pavlovsk/hotel/hotel.room.best.jpg"></center>'
 	'Your hotel room is quite spacious, and is beautifully furnished. For a second, you wonder why a hotel in a town like Pavlovsk even has such a luxurious suite. The room is filled with expensive appliances. The gorgeous <a href="exec:gt ''bed2''">double bed</a> takes up most of the room. A modern <a href="exec:gt ''wardrobe'', ''start''">wardrobe</a> (where you can choose outfits and organize your clothing) stands near the entrance of the room. Next to the door, you can find a <a href="exec:gt ''mirror'',''start''">mirror</a>. The door to the <a href="exec:gt ''hotelroom'',''shower1''">bathroom</a> is to the right.'
-	'Your hotel room also has a huge flat-screen <a href="exec:gt ''HotelRoom'',''tv''">TV</a>, right across the bed.'
+	'Your hotel room also has a huge flat-screen <a href="exec:gt ''HotelRoom'',''tv''">TV</a>'+iif(komp = 1, ' and your <a href="exec: gt ''Komp'',''start''">laptop</a> is on the desk. The hotel offers all guests free Wi-Fi.', '.')
 	*nl
 	'You can access your <a href="exec: quick_dress = 1 & gt ''wardrobe'', ''default''">default clothing</a> options directly.'
 	act'Go to the hotel lobby':
 		if $clothingworntype ! 'nude':
+			hotelWiFi = 0
 			gt'hotelHole'
 		else
 			msg'<b><font color = red>You need to get dressed before leaving your hotel room.</font></b>'
 			gt'HotelRoom','best'
 		end
 	end
-	if money >= 100:
-		act'Order room service (0:30) (100 <b>₽</b>)':gs 'food', 'h_food'
-	end
-	act 'Drink some water (0:05)': gs 'beverage', 'bev_wat'
+	if money >= 100:act'Order room service (0:30) (100 <b>₽</b>)':gs 'food', 'h_food'
+	act 'Drink some water (0:01)': gs 'beverage', 'bev_wat'
 	act 'Have a coffee (0:05)': gs 'beverage', 'bev_cof'
 	act 'Make some tea (0:05)': gs 'beverage', 'bev_tea'
 	dynamic $fatdel
@@ -119,63 +115,62 @@ gs 'stat'
 	dynamic $vitamin
 end
 
-if $args[0] = 'shower1':
-$location_type = 'bathroom'
-	act 'Return to your room':
-		if hotelroom = 1:gt'HotelRoom','normal'
-		if hotelroom = 2:gt'HotelRoom','better'
-		if hotelroom = 3:gt'HotelRoom','best'
-	end
-
+if $ARGS[0] = 'shower1':
+	*clr & cla
+	minut += 1
+	hotelShampoo = 1
 	$metkaM = 'shower1'
 	$locM = 'HotelRoom'
 	$metka = 'shower1'
-	$loc = 'HotelRoom'
-
-	clr
-	minut = minut + 1
-	gs'stat'
-
+	$loc = 'HotelRoom'	
+	$location_type = 'bathroom'
 	gs 'themes', 'indoors'
-
+	gs'stat'
+	
 	'<center><b><font color = maroon>The bathroom of your hotel room</font></b></center>'
-	if hotelroom = 1:'<center><img <<$set_imgh>> src="images/locations/pavlovsk/hotel/hotel.room.normal1.jpg"></center>'&'A small and unpretentious bathroom, that is nevertheless quite stylish and has everything you need.'
-	if hotelroom = 2:'<center><img <<$set_imgh>> src="images/locations/pavlovsk/hotel/hotel.room.better1.jpg"></center>'&'A nice looking and spacious bathroom, with separate bath tub.'
-	if hotelroom = 3:'<center><img <<$set_imgh>> src="images/locations/pavlovsk/hotel/hotel.room.best1.jpg"></center>'&'A very luxurious and spacious bathroom, fit for a king.'
-	if hotshamday ! daystart:
-		'You take the little bottle of shampoo on the shelf and place it in your pocket'
-		shampoo += 1
-		hotshamday = daystart
+	if hotelroom = 1:
+		'<center><img <<$set_imgh>> src="images/locations/pavlovsk/hotel/hotel.room.normal1.jpg"></center>'&'A small and unpretentious bathroom, that is nevertheless quite stylish and has everything you need.'
+	elseif hotelroom = 2:
+		'<center><img <<$set_imgh>> src="images/locations/pavlovsk/hotel/hotel.room.better1.jpg"></center>'&'A nice looking and spacious bathroom, with separate bath tub.'
+	elseif hotelroom = 3:
+		'<center><img <<$set_imgh>> src="images/locations/pavlovsk/hotel/hotel.room.best1.jpg"></center>'&'A very luxurious and spacious bathroom, fit for a king.'
 	end
-
-
-	gs 'din_van', 'private'
-
+	
+	act 'Return to your room':
+		hotelShampoo = 0
+		if hotelroom = 1:
+			gt'HotelRoom','normal'
+		elseif hotelroom = 2:
+			gt'HotelRoom','better'
+		elseif hotelroom = 3:
+			gt'HotelRoom','best'
+		end
+	end
+	
+	gs 'din_van', 'private', 'hotelroom', iif(hotelroom = 1, '', 'bath')
 end
 
 if $ARGS[0] = 'tv':
-gs'stat'
+	*clr & cla
+	gs'stat'
 
-if hotelroom=1:'<center><img <<$set_imgh>> src="images/locations/pavlovsk/hotel/tv1.jpg"></center>'
-if hotelroom=2:'<center><img <<$set_imgh>> src="images/locations/pavlovsk/hotel/tv2.jpg"></center>'
-if hotelroom=3:'<center><img <<$set_imgh>> src="images/locations/pavlovsk/hotel/tv3.jpg"></center>'
-'You turn on the TV and make yourself comfortable on the bed.'
+	'<center><img <<$set_imgh>> src="images/locations/pavlovsk/hotel/tv<<hotelroom>>.jpg"></center>'
+	'You turn on the TV and make yourself comfortable on the bed.'
 
-$din_wath_tv_h2 = {
-	cls
+	act 'Get up from the bed':gt $locM, $metkaM
+	act 'Watch TV (1:00)': gt 'hotelroom', 'watch_tv'
+end
+
+if $ARGS[0] = 'watch_tv':
+	*clr & cla
 	minut += 60
 	pcs_mood += rand(10,20)
 	gs'stat'
-
 	'<center><img <<$set_imgh>> src="images/locations/pavlovsk/hotel/tv0,'+rand(0,4)+'.jpg"></center>'
 	'You are watching the country''s main television channel. None of their programs are really worth watching, but the distraction is welcome anyway.'
 
-	act 'Watch TV (1:00)':dynamic $din_wath_tv_h2
 	act 'Get up from the bed':gt $locM, $metkaM
-}
-
-act 'Watch TV (1:00)':dynamic $din_wath_tv_h2
-act 'Get up from the bed':gt $locM, $metkaM
+	act 'Watch TV (1:00)': gt 'hotelroom', 'watch_tv'
 end
 
 --- HotelRoom ---------------------------------

+ 1 - 1
locations/Komp.qsrc

@@ -17,7 +17,7 @@ if $ARGS[0] = 'start':
 
 	if student > 0 and kursovik < 100:'You should probably do some of your <a href="exec:gt ''Komp'',''kursak''">coursework</a>.'
 
-	if $loc = 'shulga_room' or $loc = 'anushapt' or $loc = 'artemhome':
+	if $loc = 'shulga_room' or $loc = 'anushapt' or $loc = 'artemhome' or hotelWiFi = 1:
 		internet_store = internet
 		internet = 100000
 		act 'Browse the internet':gt 'Komp', 'brows'

+ 33 - 121
locations/_pube_image.qsrc

@@ -11,6 +11,26 @@ if ARGS[0] ! 0: temp_pubes = ARGS[0] else temp_pubes = pcs_pubes
 if ARGS[1] ! 0: temp_pubecol = ARGS[1] else temp_pubecol = pcs_pubecol[2]
 if ARGS[2] ! 0: temp_pubestyle = ARGS[2] else temp_pubestyle = pubestyle
 
+if temp_pubecol = 0:
+	$temp_pubecol = 'black'
+elseif temp_pubecol = 1:
+	$temp_pubecol = 'brunette'
+elseif temp_pubecol = 2:
+	$temp_pubecol = 'ginger'
+elseif temp_pubecol = 3:
+	$temp_pubecol = 'blonde'
+elseif temp_pubecol = 4:
+	$temp_pubecol = 'red'
+elseif temp_pubecol = 5:
+	$temp_pubecol = 'blue'
+elseif temp_pubecol = 6:
+	$temp_pubecol = 'green'
+elseif temp_pubecol = 7:
+	$temp_pubecol = 'pink'
+elseif temp_pubecol = 8:
+	$temp_pubecol = 'purple'
+end
+
 if $ARGS[0] = 0 and lashair = 0:
 	if temp_pubes <= 3:
 		$RESULT += 'hair/pussy'
@@ -20,140 +40,32 @@ if $ARGS[0] = 0 and lashair = 0:
 		$RESULT += 'hair/very_short'
 	elseif temp_pubes <= 25:
 		if temp_pubestyle = 2:
-			$RESULT += 'shave/v1'
+			$RESULT += 'shave/<<$temp_pubecol>>_v'
 		elseif temp_pubestyle = 3:
-			$RESULT += 'shave/triangle1'
+			$RESULT += 'shave/<<$temp_pubecol>>_triangle'
 		elseif temp_pubestyle = 4:
-			$RESULT += 'shave/landing1'
+			$RESULT += 'shave/<<$temp_pubecol>>_landing'
 		elseif temp_pubestyle = 5:
-			$RESULT += 'shave/heart1'
+			$RESULT += 'shave/<<$temp_pubecol>>_heart'
 		elseif temp_pubestyle = 6:
-			if temp_pubecol = 0:
-				$RESULT += 'shave/flame1'
-			elseif temp_pubecol = 1:
-				$RESULT += 'shave/brunette_flame'
-			elseif temp_pubecol = 2:
-				$RESULT += 'shave/ginger_flame'
-			elseif temp_pubecol = 3:
-				$RESULT += 'shave/blonde_flame'
-			elseif temp_pubecol = 4:
-				$RESULT += 'shave/red_flame'
-			elseif temp_pubecol = 5:
-				$RESULT += 'shave/blue_flame'
-			elseif temp_pubecol = 6:
-				$RESULT += 'shave/green_flame'
-			elseif temp_pubecol = 7:
-				$RESULT += 'shave/pink_flame'
-			elseif temp_pubecol = 8:
-				$RESULT += 'shave/purple_flame'
-			end
+			$RESULT += 'shave/<<$temp_pubecol>>_flame'
 		elseif temp_pubestyle = 7:
-			if temp_pubecol = 0:
-				$RESULT += 'shave/cross1'
-			elseif temp_pubecol = 1:
-				$RESULT += 'shave/brunette_cross'
-			elseif temp_pubecol = 2:
-				$RESULT += 'shave/ginger_cross'
-			elseif temp_pubecol = 3:
-				$RESULT += 'shave/blonde_cross'
-			elseif temp_pubecol = 4:
-				$RESULT += 'shave/red_cross'
-			elseif temp_pubecol = 5:
-				$RESULT += 'shave/blue_cross'
-			elseif temp_pubecol = 6:
-				$RESULT += 'shave/green_cross'
-			elseif temp_pubecol = 7:
-				$RESULT += 'shave/pink_cross'
-			elseif temp_pubecol = 8:
-				$RESULT += 'shave/purple_cross'
-			end
+			$RESULT += 'shave/<<$temp_pubecol>>_cross'
 		elseif temp_pubestyle = 8:
-			$RESULT += 'shave/s_bush1'
+			$RESULT += 'shave/<<$temp_pubecol>>_trimmed'
 		elseif temp_pubestyle = 12:
-			$RESULT += 'shave/mb'
+			$RESULT += 'shave/<<$temp_pubecol>>_mini'
 		elseif temp_pubestyle = 13:
-			if temp_pubecol = 0:
-				$RESULT += 'shave/bstrip'
-			elseif temp_pubecol = 1:
-				$RESULT += 'shave/brunette_bstrip'
-			elseif temp_pubecol = 2:
-				$RESULT += 'shave/ginger_bstrip'
-			elseif temp_pubecol = 3:
-				$RESULT += 'shave/blonde_bstrip'
-			elseif temp_pubecol = 4:
-				$RESULT += 'shave/red_bstrip'
-			elseif temp_pubecol = 5:
-				$RESULT += 'shave/blue_bstrip'
-			elseif temp_pubecol = 6:
-				$RESULT += 'shave/green_bstrip'
-			elseif temp_pubecol = 7:
-				$RESULT += 'shave/pink_bstrip'
-			elseif temp_pubecol = 8:
-				$RESULT += 'shave/purple_bstrip'
-			end
+			$RESULT += 'shave/<<$temp_pubecol>>_strip'
 		elseif temp_pubestyle = 14:
-			$RESULT += 'shave/rectangle'
+			$RESULT += 'shave/<<$temp_pubecol>>_rectangle'
 		else
-			if temp_pubecol = 0:
-				$RESULT += 'hair/black_small'
-			elseif temp_pubecol = 1:
-				$RESULT += 'hair/brunette_small'
-			elseif temp_pubecol = 2:
-				$RESULT += 'hair/ginger_small'
-			elseif temp_pubecol = 3:
-				$RESULT += 'hair/blonde_small'
-			elseif temp_pubecol = 4:
-				$RESULT += 'hair/red'
-			elseif temp_pubecol = 5:
-				$RESULT += 'hair/blue'
-			elseif temp_pubecol = 6:
-				$RESULT += 'hair/green'
-			elseif temp_pubecol = 7:
-				$RESULT += 'hair/pink'
-			elseif temp_pubecol = 8:
-				$RESULT += 'hair/purple'
-			end
+			$RESULT += 'hair/<<$temp_pubecol>>_small'
 		end
 	elseif temp_pubes <= 35:
-		if temp_pubecol = 0:
-			$RESULT += 'hair/black_mid'
-		elseif temp_pubecol = 1:
-			$RESULT += 'hair/brunette_mid'
-		elseif temp_pubecol = 2:
-			$RESULT += 'hair/ginger_mid'
-		elseif temp_pubecol = 3:
-			$RESULT += 'hair/blonde_mid'
-		elseif temp_pubecol = 4:
-			$RESULT += 'hair/red'
-		elseif temp_pubecol = 5:
-			$RESULT += 'hair/blue'
-		elseif temp_pubecol = 6:
-			$RESULT += 'hair/green'
-		elseif temp_pubecol = 7:
-			$RESULT += 'hair/pink'
-		elseif temp_pubecol = 8:
-			$RESULT += 'hair/purple'
-		end
+		$RESULT += 'hair/<<$temp_pubecol>>_mid'
 	else
-		if temp_pubecol = 0:
-			$RESULT += 'hair/black_full'
-		elseif temp_pubecol = 1:
-			$RESULT += 'hair/brunette_full'
-		elseif temp_pubecol = 2:
-			$RESULT += 'hair/ginger_full'
-		elseif temp_pubecol = 3:
-			$RESULT += 'hair/blonde_full'
-		elseif temp_pubecol = 4:
-			$RESULT += 'hair/red'
-		elseif temp_pubecol = 5:
-			$RESULT += 'hair/blue'
-		elseif temp_pubecol = 6:
-			$RESULT += 'hair/green'
-		elseif temp_pubecol = 7:
-			$RESULT += 'hair/pink'
-		elseif temp_pubecol = 8:
-			$RESULT += 'hair/purple'
-		end
+		$RESULT += 'hair/<<$temp_pubecol>>_full'
 	end
 else
 	$RESULT += 'hair/pussy'

+ 5 - 5
locations/albinahome.qsrc

@@ -372,7 +372,7 @@ if $ARGS[0] = 'game':
 		minut += 30
 		pcs_mood += 15
 		react_exp += rand(0, 1)
-		pcs_gaming_exp += rand(1, 2)
+		gaming_exp += rand(1, 2)
 		npc_rel['A23'] += 1
 		gs 'stat'
 		'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/girl/albina/game.jpg"></center>'
@@ -387,7 +387,7 @@ if $ARGS[0] = 'game':
 					minut += 60
 					pcs_mood += 15
 					react_exp += rand(0, 1)
-					pcs_gaming_exp += rand(1, 2)
+					gaming_exp += rand(1, 2)
 					npc_rel['A23'] -= 1
 					gs 'willpower', 'pay', 'resist'
 					gs 'stat'
@@ -415,7 +415,7 @@ if $ARGS[0] = 'playgame':
 	minut += 30
 	pcs_mood += 15
 	react_exp += rand(0, 1)
-	pcs_gaming_exp += rand(1, 2)
+	gaming_exp += rand(1, 2)
 	npc_rel['A23'] += 1
 	gs 'stat'
 	'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/girl/albina/game.jpg"></center>'
@@ -435,7 +435,7 @@ if $ARGS[0] = 'playgame':
 				minut += 60
 				pcs_mood += 15
 				react_exp += rand(0, 1)
-				pcs_gaming_exp += rand(1, 2)
+				gaming_exp += rand(1, 2)
 				npc_rel['A23'] -= 2
 				gs 'willpower', 'pay', 'resist'
 				gs 'stat'
@@ -465,7 +465,7 @@ if $ARGS[0] = 'game_bet':
 	minut += 30
 	pcs_mood += 15
 	react_exp += rand(0, 1)
-	pcs_gaming_exp += rand(1, 2)
+	gaming_exp += rand(1, 2)
 	npc_rel['A23'] += 1
 	gs 'stat'
 	'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/girl/albina/game.jpg"></center>'

+ 5 - 5
locations/anushaptbr.qsrc

@@ -85,7 +85,7 @@ if $ARGS[0] = 'brotherroom':
 			act 'Sit down and play':
 				*clr & cla
 				minut += 15
-				pcs_gaming_exp =+ rand(1,3)
+				gaming_exp =+ rand(1,3)
 				gs 'stat'
 				'<center><img <<$set_imgh>> src="images/locations/pavlovsk/resident/apartment/anushapt/playgamebro.jpg"></center>'
 				'The brothers turn away from you and start whispering, they must be planning something.'
@@ -251,7 +251,7 @@ if $ARGS[0] = 'brotherroom':
 						act 'Deal':
 							*clr & cla
 							minut += 20
-							pcs_gaming_exp =+ rand(1,3)
+							gaming_exp =+ rand(1,3)
 							gs 'stat'
 							'<center><img <<$set_imgh>> src="images/locations/pavlovsk/resident/apartment/anushapt/maksimplay.jpg"></center>'
 							'The two of you start playing, it quickly becomes obvious he has played this game a lot and is very good at it. You try but you just are unable to keep up with him. A couple of times you come close but often you are just outmatched. After a couple of matches he pauses the game and looks at you with a lustful grin. "Ha Ha, you lost, now show me your boobs."'
@@ -291,7 +291,7 @@ if $ARGS[0] = 'brotherroom':
 						act 'Play':
 							*clr & cla
 							minut += 20
-							pcs_gaming_exp =+ rand(1,3)
+							gaming_exp =+ rand(1,3)
 							gs 'stat'
 							'<center><img <<$set_imgh>> src="images/locations/pavlovsk/resident/apartment/anushapt/maksimplay.jpg"></center>'
 							'You play a game with him, he is pretty good but you are better and you manage to beat him, he just isn''t good enough to beat you and after a bit he seems to get annoyed by the fact he keeps losing and switches games. "I''m bored with that game." He switches to a single player game. You smile knowing he only switched games because he couldn''t win.'
@@ -330,7 +330,7 @@ if $ARGS[0] = 'rematch':
 		act 'Sit down and play':
 			*clr & cla
 			minut += 15
-			pcs_gaming_exp =+ rand(1, 3)
+			gaming_exp =+ rand(1, 3)
 			gs 'stat'
 			'<center><img <<$set_imgh>> src="images/locations/pavlovsk/resident/apartment/anushapt/playgamebro.jpg"></center>'
 			'The brothers turn away from you and start whispering, they must be planning something.'
@@ -390,7 +390,7 @@ if $ARGS[0] = 'rematch':
 		'Maksim looks mad at that. "Shut up and play!" Anushka just laughs again and mimics what he said in a mutter taunting him.'
 		act 'Play':
 			*clr & cla
-			pcs_gaming_exp =+ rand(1,3)
+			gaming_exp =+ rand(1,3)
 			minut += 15
 			gs 'stat'
 			'<center><img <<$set_imgh>> src="images/locations/pavlovsk/resident/apartment/anushapt/playgamebro.jpg"></center>'

+ 5 - 5
locations/danceclass.qsrc

@@ -22,8 +22,8 @@ act 'Modern dance class (0:30)':
 	if pcs_inhib < 40:inhib_exp += rand(1,2)
 	'<center><img <<$set_imgh>> src="images/locations/shared/gym/fit1.jpg"></center>'
 
-	if danc_lvl < 100:'You study modern dance, which is very popular in the clubs.'
-	if danc_lvl >= 100:'The day has finally come, you''ve been working hard, and you realize that you''ve learned everything you can from this class.'
+	if pcs_danc < 100:'You study modern dance, which is very popular in the clubs.'
+	if pcs_danc >= 100:'The day has finally come, you''ve been working hard, and you realize that you''ve learned everything you can from this class.'
 
 	act 'Leave':gt 'fit', 'dressing room'
 end
@@ -35,7 +35,7 @@ act 'Burlesque class (0:30)':
 	if pcs_inhib < 60:inhib_exp += rand(1,2)
 	'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/girl/albina/stripdance.jpg"></center>'
 
-	if danc_lvl >= 50:
+	if pcs_danc >= 50:
 		gs 'exercise', 'tier2', 0, 'dancero_exp'
 		'You study the art of burlesque, imaging yourself stripping to the music.'
 
@@ -56,11 +56,11 @@ if pcs_stren >=40 or needstrength = 0:
 		if pcs_inhib < 60:inhib_exp += rand(1,2)
 		'<center><img <<$set_imgh>> src="images/locations/city/citycenter/gym/dance/poledance.jpg"></center>'
 
-		if dancero_lvl >= 50 and pcs_stren >= 40:
+		if pcs_dancero >= 50 and pcs_stren >= 40:
 			gs 'exercise', 'tier2', 0, 'dancpol_exp'
 			'You study various acrobatics on the pole.'
 
-			if dancpol_lvl >= 100:'You''ve already mastered the art of pole dancing, there is nothing more left to teach you.'
+			if pcs_dancpol >= 100:'You''ve already mastered the art of pole dancing, there is nothing more left to teach you.'
 		else
 			'It doesn''t look sensual enough and you bang your head pretty hard on the pole. This is far harder than it looks. It would help if you improved your modern dancing skills or the burlesque one, but you did learn a little.'
 

+ 13 - 18
locations/dibodi.qsrc

@@ -13,14 +13,11 @@ if $ARGS[0] = 'os1':
 	if pcs_inhib < 50:'You are considering it, having your naked body painted and then walking around in public, sounds a little shameful, but it''d be really interesting too.'
 	act 'Decline':gt'ugol' & bodimodel1 = 1
 	act 'Doubt':gt 'dibodi', 'bodiart1'
-	if pcs_inhib > 30:
-		act 'Agree':gt 'dibodi', 'bodiart'
-	end
+	if pcs_inhib > 30: act 'Agree':gt 'dibodi', 'bodiart'
 end
 
 if $ARGS[0] = 'bodiart':
 	*clr & cla
-	cla
 	gs'stat'
 	bodimodel = 1
 	'<center><img <<$set_imgh>> src="images/locations/oldtown/artstudio/downud1.jpg"></center>'
@@ -29,7 +26,7 @@ if $ARGS[0] = 'bodiart':
     if lesbian > 0:'She chatted about a variety of things, using her hands to gesture often, which caused her breasts to move in pleasant ways, you barely pay attention to what she says as you find yourself staring at her chest.'
     'After a few minutes, perhaps noticing you paying more attention to her body than to what she is saying she falls silent.'
     'Several minutes of silence pass before she speaks again. "Our place is in the old town, you can come anytime, it was nice meeting you, but I need to get back to work."'
-	act 'Escape':gt'ugol'
+	act 'Leave': gt'ugol'
 end
 
 if $ARGS[0] = 'bodiart1':
@@ -45,11 +42,11 @@ if $ARGS[0] = 'bodiart1':
         'She chatted about a variety of things, using her hands to gesture often, which caused her breasts to move in pleasant ways, you barely pay attention to her as you find yourself starting at her chest.'
         'After a bit, perhaps noticing you watching her body more than paying attention to her she falls silent.'
         'Several minutes of silence pass before she speaks up again. "Our place is in the old town, you can come visit anytime, it was nice meeting you, but I need to get back to work."'
-	    if pcs_inhib > 30:
-			act 'Agree':gt'ugol'
-		end
+		act 'Refuse':gt'ugol' & bodimodel1 = 1
 	    act 'I''ll think about it':gt'ugol' & bodimodel2 = 1
-	    act 'Refuse':gt'ugol' & bodimodel1 = 1
+	     if pcs_inhib > 30: act 'Agree':gt'ugol'
+	else
+		act 'Continue': gt'liames'
 	end
 end
 
@@ -60,33 +57,31 @@ if $ARGS[0] = 'sgtusa':
 	'<center><img <<$set_imgh>> src="images/locations/oldtown/photo.jpg"></center>'
     'You walked over to a group of girls and boys talking and introduced yourself.'
     'You were surprisingly well received.'
-	act 'Further':gt'liames'
+	act 'Continue': gt'liames'
 end
 
 if $ARGS[0] = 'sotusa':
     *clr & cla
-	cla
 	gs'stat'
 	'<center><img <<$set_imgh>> src="images/locations/oldtown/photo.jpg"></center>'
 	if sttan = 0 and $pantyworntype = 'none':
-	    gs'stat'
 	    sttan = 1
 	    '"Hey <<$pcs_nickname>> what''s with the no panties?" The crowd laughed out loud, noticing your lack of panties.'
-	    act 'Further':gt'liames'
+	    act 'Continue':gt'liames'
 	end
 end
 
 if $ARGS[0] = 'sptusa':
     *clr & cla
-	cla
-	gs'stat'
 	arts = 1
 	minut += 5
+	gs'stat'
 	'<center><img <<$set_imgh>> src="images/characters/oldtown/marinka/marinka.jpg"></center>'
-	'You asked Marinka whether Masya''s studio was around here. In response Marinka shook her head, "I do not know."'
+	'You asked Marinka whether Masya''s studio was around here. In response Marinka shook her head, "I don''t know."'
 	act 'You live around here?':
-		'"Yes." said Marinka.'
-		act 'Good':gt'liam'
+		cla
+		'"Yes," Marinka says.'
+		act 'Say goodbye and leave': gt 'liam'
     end    
 end
 

+ 6 - 3
locations/din_van.qsrc

@@ -64,7 +64,7 @@ $shower = {
 		menu_off = 1
 		*clr & cla
 		minut += 15
-		if $loc = 'vanrPar' or $loc = 'tanvanr': noShampoo = 1
+		if $loc = 'vanrPar' or $loc = 'tanvanr' or hotelShampoo = 1: noShampoo = 1
 		noShampoo_tmp = noShampoo
 		dynamic $showerdin
 
@@ -179,7 +179,7 @@ $bath = {
 		minut += 30
 		pcs_sweat = 7 + rand(0,4)
 		pcs_mood += 20
-		if $loc = 'vanrPar' or $loc = 'tanvanr': noShampoo = 1
+		if $loc = 'vanrPar' or $loc = 'tanvanr' or hotelShampoo = 1: noShampoo = 1
 		noShampoo_tmp = noShampoo
 		dynamic $showerdin
 
@@ -1071,7 +1071,10 @@ if $ARGS[0] = 'private':
 
 	'Your deodorant will last you for <b><<deodorant>></b> more '+iif(deodorant = 1, 'application.', 'applications.')
 	
-	if $loc = 'vanrPar':
+	if $ARGS[1] = 'hotelroom':
+		dynamic $shower
+		if $ARGS[2] = 'bath': dynamic $bath
+	elseif $loc = 'vanrPar':
 		'You can use your parent''s shampoo.'
 		dynamic $shower
 		dynamic $bath

+ 12 - 12
locations/drugs.qsrc

@@ -122,9 +122,9 @@ elseif $ARGS[0] = 'alcohol':
 	gs 'cum_cleanup'
 	pcs_breath = 0
 	if $ARGS[1] = 'beer':
-		if alko_trait = -1:
+		if traits['alko_status'] = -1:
 			alko += rand(1,2)
-		elseif alko_trait = 1:
+		elseif traits['alko_status'] = 1:
 			alko += rand(0,1)
 		else
 			alko += 1
@@ -136,11 +136,11 @@ elseif $ARGS[0] = 'alcohol':
 		else
 			pcs_hydra += 10
 		end
-		alko_trait_day += 1
+		traits['alko_day'] += 1
 	elseif $ARGS[1] = 'wine' or $ARGS[1] = 'champagne':
-		if alko_trait = -1:
+		if traits['alko_status'] = -1:
 			alko += 3
-		elseif alko_trait = 1:
+		elseif traits['alko_status'] = 1:
 			alko += 1
 		else
 			alko += 2
@@ -152,11 +152,11 @@ elseif $ARGS[0] = 'alcohol':
 		else
 			pcs_hydra += 10
 		end
-		alko_trait_day += 2
+		traits['alko_day'] += 2
 	elseif $ARGS[1] = 'vodka' or $ARGS[1] = 'whiskey' or $ARGS[1] = 'scotch' or $ARGS[1] = 'rum':
-		if alko_trait = -1:
+		if traits['alko_status'] = -1:
 			alko += rand(4,5)
-		elseif alko_trait = 1:
+		elseif traits['alko_status'] = 1:
 			alko += rand(1,2)
 		else
 			alko += 3
@@ -167,11 +167,11 @@ elseif $ARGS[0] = 'alcohol':
 		else
 			pcs_hydra -= 10
 		end
-		alko_trait_day += 3
+		traits['alko_day'] += 3
 	elseif $ARGS[1] = 'moonshine':
-		if alko_trait = -1:
+		if traits['alko_status'] = -1:
 			alko += rand(7,8)
-		elseif alko_trait = 1:
+		elseif traits['alko_status'] = 1:
 			alko += rand(2,3)
 		else
 			alko += 5
@@ -182,7 +182,7 @@ elseif $ARGS[0] = 'alcohol':
 		else
 			pcs_hydra -= 10
 		end
-		alko_trait_day += 5
+		traits['alko_day'] += 5
 	else
 		'<br><font color = red>Developer note: The type of alcohol is missing in this scene. Please report this and a small part of the text of the current scene as a bug.</font>'
 	end

+ 6 - 6
locations/family_schedule.qsrc

@@ -36,13 +36,13 @@ if week <= 5:
 		anyaloc = 8
 	elseif hour < 18:
 		!!Personal activities: Relaxing in bedroom, working out at the community center, etc (this is also the time frame Roma comes over some times)
-		anyaloc = rand(9,11)
+		anyaloc = func('shortgs', 'rand_pick', '', 9, 10, 11)
 	elseif hour = 18 and minut < 30:
 		!!Family dinner
 		anyaloc = 12
 	elseif hour < 22:
 		!!Goes out to hang out with friends/Roma (this could be random so sometimes she stays home to give Sveta more time to talk to her)
-		anyaloc = rand(13,15)
+		anyaloc = func('shortgs', 'rand_pick', '', 13, 14, 15)
 	else
 		!!In her room
 		anyaloc = 15
@@ -328,7 +328,7 @@ if week <= 5:
 	elseif hour < 14:
 		kolloc = 0
 	elseif hour = 16 and minut < 45:
-        kolloc = rand(10,11,12)
+        kolloc = func('shortgs', 'rand_pick', '', 10, 11, 12)
 	elseif hour < 17:
 		kolloc = 0
 	elseif hour < 18:
@@ -356,12 +356,12 @@ else
 	elseif hour = 13 and minut < 10:
 		kolloc = 13
 	elseif hour < 18:
-        kolloc = rand(8,10,11,12)
+        kolloc = func('shortgs', 'rand_pick', '', 8, 10, 11, 12)
 	elseif hour = 18 and minut < 30:
 		kolloc = 4
 	elseif hour < 21:
-		kolloc = rand(10,11,12)
-	elseif hour = 21 and minut 15:
+		kolloc = func('shortgs', 'rand_pick', '', 10, 11, 12)
+	elseif hour = 21 and minut < 15:
 		kolloc = 5
 	elseif hour < 23:
 		kolloc = 13

+ 9 - 18
locations/food_menu.qsrc

@@ -54,8 +54,7 @@ if $loc = 'burger':
 	$_drink['5,name'] = 'Milkshake'
 	$_drink['5,type'] = 'bev_mil'
 	$_drink['5,price'] = 180
-end
-if $loc = 'gkafe':
+elseif $loc = 'gkafe':
 	'<center><b><font color="maroon">Borislav''s cafe</font></b></center>'
 	*nl
 	'<center><img <<$set_imgh>> src="images/shared/menus/borislav.jpg"</center><br>'
@@ -131,8 +130,7 @@ if $loc = 'gkafe':
 		$_drink['5,type'] = 'bev_mil'
 		$_drink['5,price'] = 200
 	end
-end
-if $loc = 'brothel':
+elseif $loc = 'brothel':
 	'<center><h3>Hotel Bar</h3></center>'
 	*nl
 	'<center><img <<$set_imgh>> src="images/shared/drinks/bardrinks.jpg"</center><br>'
@@ -166,8 +164,7 @@ if $loc = 'brothel':
 		$_drink['6,type'] = 'bev_bbr'
 		$_drink['6,price'] = 'Free'
 	end
-end
-if $loc = 'cafe_parco':
+elseif $loc = 'cafe_parco':
 	'<center><h4><font color="maroon">Cafe "Del Parco"</font></h4></center>'
 	*nl
 	'<center><img <<$set_imgh>> src="images/shared/menus/del_parco.jpg"</center><br>'
@@ -206,8 +203,7 @@ if $loc = 'cafe_parco':
 	$_drink['5,name'] = 'Milkshake'
 	$_drink['5,type'] = 'bev_mil'
 	$_drink['5,price'] = 200
-end
-if $loc = 'kafe':
+elseif $loc = 'kafe':
 	'<center><b><font color="maroon">The Roadhouse</font></b></center>'
 	*nl
 	'<center><img <<$set_imgh>> src="images/shared/menus/roadhouse.jpg"</center><br>'
@@ -246,8 +242,7 @@ if $loc = 'kafe':
 	$_drink['5,name'] = 'Milkshake'
 	$_drink['5,type'] = 'bev_mil'
 	$_drink['5,price'] = 180
-end
-if $loc = 'lakecafe':
+elseif $loc = 'lakecafe':
 	'<center><B><font color=maroon>The Lake Cafe</font></B></center>'
 	*nl
 	'<center><img <<$set_imgh>> src="images/shared/drinks/cafedrinks.jpg"</center><br>'
@@ -285,8 +280,7 @@ if $loc = 'lakecafe':
 	$_drink['5,name'] = 'Milkshake'
 	$_drink['5,type'] = 'bev_mil'
 	$_drink['5,price'] = 200
-end
-if $loc = 'liamelkafe':
+elseif $loc = 'liamelkafe':
 	'<center><B><font color=maroon>Tiny Cafe</font></B></center>'
 	*nl
 	'<center><img <<$set_imgh>> src="images/shared/drinks/cafedrinks.jpg"</center><br>'
@@ -324,8 +318,7 @@ if $loc = 'liamelkafe':
 	$_drink['5,name'] = 'Milkshake'
 	$_drink['5,type'] = 'bev_mil'
 	$_drink['5,price'] = 200
-end
-if $loc = 'ParkKafe':
+elseif $loc = 'ParkKafe':
 	'<center><B><font color=maroon>Park Cafe</font></B></center>'
 	*nl
 	'<center><img <<$set_imgh>> src="images/shared/drinks/cafedrinks.jpg"</center><br>'
@@ -363,8 +356,7 @@ if $loc = 'ParkKafe':
 	$_drink['5,name'] = 'Milkshake'
 	$_drink['5,type'] = 'bev_mil'
 	$_drink['5,price'] = 200
-end
-if $loc = 'qwBarPolet':
+elseif $loc = 'qwBarPolet':
 	'<center><b><font color="maroon">Bar "Rabotnik"</font></b></center>'
 	*nl
 	'<center><img <<$set_imgh>> src="images/shared/drinks/bardrinks.jpg"</center><br>'
@@ -393,8 +385,7 @@ if $loc = 'qwBarPolet':
 	$_drink['5,name'] = 'Black Russian'
 	$_drink['5,type'] = 'bev_bla'
 	$_drink['5,price'] = 250
-end
-if $loc = 'restoran':
+elseif $loc = 'restoran':
 	'<center><b><font color="maroon">Babel</font></b></center>'
 	*nl
 	'<center><img <<$set_imgh>> src="images/shared/menus/babel.jpg"</center><br>'

+ 1 - 133
locations/foto.qsrc

@@ -83,7 +83,7 @@ if $ARGS[0] = 'start':
 		act'Go back to the main floor':gt'foto','studio'
 	end
 
-	if $pantyworntype ! 'none' and pcs_inhib < 60:
+	if $pantyworntype ! 'none' and pcs_inhib < 60 and studio_strip < 5:
 		if studio_strip_talk < 3:
 			act'Just strip to your panties':
 				gs 'clothing', 'strip'
@@ -1953,138 +1953,6 @@ if $ARGS[0] = 'end':
 	gt 'foto','studio'
 end
 
-if $ARGS[0] = 'commercial':
-	!!Payment for the foto shoot
-	if practice_session = 0:
-		model_job_week += 1
-		model_week = (daystart - week) / 7
-		modelfoto += 1
-		money += modelpayfin
-		modelfotomoney += modelpayfin
-		gt 'foto','studio'
-	else
-		practice_session = 0
-	end
-
-	*clr & cla
-	menu_off = 1
-	commercial = 1
-	gs 'stat'
-	'<center><img <<$set_imgh>> src="images/locations/city/citycenter/photo/fotograph.jpg"></center>'
-	'As you wrap the shoot, a staffer at the studio walks up to you and grabs your attention.'
-	'"Hey, <<$pcs_firstname>>, I''m glad I caught you. Listen, we have a special opportunity for you if you''d like to hear about it."'
-	act '"Special opportunity?"':
-		cla
-		'"Yeah. See, you''ve been doing good work here. There are people who are really impressed with your ability to take direction and with the boldness and confidence you have in your body. With that in mind, word has been going around that they want one of our models to be the actress in their commercial. So, I thought I''d ask you."'
-		act '"A commercial? You mean I could become an actress?"':
-			cla
-			*nl
-			'"Yes, that''s exactly what we''re saying. This is an opportunity for you to start branching out your career from just modelling and into acting. Would you like to hear more about the job?"'
-			act '"Sure, tell me about it"':
-				*clr & cla
-				'<center><img <<$set_imgh>> src="images/locations/city/citycenter/photo/fotograph.jpg"></center>'
-				'"The job is for a big time network. The idea for the commercial is they need a pretty girl walking down the street with their logos CGI''d over your breasts and between your thighs and passers-by having their attention drawn to you as you walk."'
-				act '"That doesn''t sound too difficult"':
-					cla
-					*nl
-					'"But there''s a catch. See, the marketing team has determined that in order to get the right reactions from people going by, you can''t just wear a strapless bikini. You''re going to have to walk down the street completely naked. That being said, the company is willing to pay you triple our usual nude modelling rate. Are you still willing to do the shoot?"'
-					act '"Sure! I''ve always wanted to be an actress!"':
-						cla
-						*nl
-						'"Sure!" you say. "I''ve always wanted to be an actress, I just never thought I''d get a chance like this. When do we shoot?"'
-						casting = 3
-						if week >= 6:
-							SMTV_commercial = daystart - week + 13
-							'He hands you a business card for a talent agency in the city center. "Be here next Saturday at 10:00, this is where they said they were going to set up the shoot."'
-							act 'Thank him and go':gt 'foto','studio'
-						else
-							SMTV_commercial = daystart - week + 6
-							if week = 5:
-								'He hands you a business card for a talent agency in the city center. "Be here tomorrow at 10:00, this is where they said they were going to set up the shoot."'
-								act 'Thank him and go':gt 'foto','studio'
-							else
-								'He hands you a business card for a talent agency in the city center. "Be here on Saturday at 10:00, this is where they said they were going to set up the shoot."'
-								act 'Thank him and go':gt 'foto','studio'
-							end
-						end
-					end
-
-					act '"Triple rate?! Hell yeah!"':
-					casting = 3
-						cla
-						'"Triple rate?! Hell yeah! Who cares about being naked in public when I''m getting paid that much! I''d let them gangbang me for that kind of money!"'
-						*nl
-						'"I''m sure they''d be happy to arrange that with you some other time," he says with a shit eating grin.'
-						'You punch him playfully on the arm.'
-						act '"So when do we shoot?"':
-						cla
-							casting = 3
-							if week >= 6:
-								SMTV_commercial = daystart - week + 13
-								'He hands you a business card for a talent agency in the city center. "Be here next Saturday at 10:00, this is where they said they were going to set up the shoot."'
-								act 'Thank him and go':gt 'foto','studio'
-							else
-								SMTV_commercial = daystart - week + 6
-								if week = 5:
-									'He hands you a business card for a talent agency in the city center. "Be here tomorrow at 10:00, this is where they said they were going to set up the shoot."'
-									act 'Thank him and go':gt 'foto','studio'
-								else
-									'He hands you a business card for a talent agency in the city center. "Be here on Saturday at 10:00, this is where they said they were going to set up the shoot."'
-									act 'Thank him and go':gt 'foto','studio'
-								end
-							end
-						end
-					end
-
-					act '"I have to be naked in public...?"':
-						cla
-						*nl
-						'You blush imagining being on the set in public on a busy street and embarrassedly ask,'
-						'"I''m going to have to walk down the street completely naked in broad daylight...?"'
-						'"Yes, I''m afraid so. The producers won''t budge on this. I''ve been promised that they aren''t going to be broadcasting your uncensored body all over television though. So if you accept, you''ll be guaranteed that at least. So, will you do it?"'
-						act '"I guess so..."':
-							cla
-							*nl
-							'"I guess so," you say. "Since they''re paying so much, it''s hard to turn down. Besides, it might be worth it to break into acting, right?"'
-							casting = 3
-							if week >= 6:
-								SMTV_commercial = daystart - week + 13
-								'"If it means anything to you, I think you''re making the right choice for your career." He hands you a business card for a talent agency in the city center. "Be here next Saturday at 10:00, this is where they said they were going to set up the shoot."'
-								act 'Thank him and go':gt 'foto','studio'
-							else
-								SMTV_commercial = daystart - week + 6
-								if week = 5:
-									'"If it means anything to you, I think you''re making the right choice for your career." He hands you a business card for a talent agency in the city center. "Be here tomorrow at 10:00, this is where they said they were going to set up the shoot."'
-									act 'Thank him and go':gt 'foto','studio'
-								else
-									'"If it means anything to you, I think you''re making the right choice for your career." He hands you a business card for a talent agency in the city center. "Be here on Saturday at 10:00, this is where they said they were going to set up the shoot."'
-									act 'Thank him and go':gt 'foto','studio'
-								end
-							end
-						end
-
-						act '"No, it''s too much for me"':
-							cla
-							*nl
-							'"No," you say with some regret. "Even with all that money, that''s not the kind of model or actress I want to be known for."'
-							'"Ahh, well that''s a shame. Anyways, I''ll let you go now. See you later <<$pcs_firstname>>"'
-							act 'Go back to modelling':gt 'foto', 'studio'
-						end
-					end
-				end
-			end
-
-			act '"No thanks, I''m happy just being a model"':
-				cla
-				commercial = 2
-				casting = 1
-				*nl
-				'"Ahh, well that''s a shame. Anyways, you''re here today. Is there something you''d like to work on?"'
-				act 'Go back to modelling':gt 'foto', 'studio'
-			end
-		end
-	end
-end
 
 if $ARGS[0] = 'blackm':
 	*clr

+ 1 - 1
locations/gadukino.qsrc

@@ -151,7 +151,7 @@ if $ARGS[0] = '':
 			act 'Go Hunting (this can take a lot of time)': suchunt = 1 & gt 'gadukino', 'succubus_hunt'
 		end
 
-		act 'Walk to the highway':minut += 30 & nroad = 10 & gt 'road'
+		act 'Walk to the highway':minut += 15 & nroad = 10 & gt 'road'
 	end
 end
 

+ 2 - 1
locations/gschool_cheerleading.qsrc

@@ -170,7 +170,7 @@ if $ARGS[0] = 'tryouts':
 			else
 				!! Stage 2 = backup
 				cheerleadingQW['quest_stage'] = 2
-				'"I like your moves Sveta, but I can''t let someone like you on my squad. I''ve got a reputation to uphold. Tell you what, how does being a backup sound?"'
+				'"I like your moves <<$pcs_nickname>>, but I can''t let someone like you on my squad. I''ve got a reputation to uphold. Tell you what, how does being a backup sound?"'
 				'Being asked to be a backup is further than anyone like you has ever made it! You nod your head and try not to look too excited. Albina then selects the girl she wants on the team.'
 				'There are a lot of puzzled stares and whispers directed at you as everyone prepares to leave.'
 			end
@@ -363,6 +363,7 @@ if $ARGS[0] = 'game':
 		'Out on the field, you and the girls perform your opening routine flawlessly under Albina''s direction and spend the rest of the game chanting and cheering your team. You see some guys in the crowd appreciating the view of your ass as you are performing right in front of them.'
 		
 		act 'Wait until the end of the game':
+			*clr & cla
 			minut += 90
 			!! double cheer_exp so it progresses faster given that Sveta cant get it anywhere else
 			gs 'exercise', 'tier2', 0, 'agil_exp', 'vital_exp', 'cheer_exp', 'cheer_exp', 'danc_exp'

+ 1 - 1
locations/gschool_grounds.qsrc

@@ -50,7 +50,7 @@ if $ARGS[0] = 'main':
 	elseif hour = 14 and cheerleadingQW['day'] ! daystart and (week = 2 or week = 4) and kanikuli = 0 and cheerleadingQW['quest_stage'] > 1:
 		gt 'gschool_cheerleading', 'afterschool_practice'
 	!! A football game is played once every 2nd Friday and the cheerleaders perform out on the field. 
-	elseif hour = 14 and cheerleadingQW['day'] ! daystart and week = 5 and ((daystart - (daystart mod 7)) / 7) mod 2 = 1 and kanikuli = 0 and (cheerleadingQW['quest_stage'] >= 3 or cheerleadingQW['backup_game'] = 1):
+	elseif hour = 14 and cheerleadingQW['day'] ! daystart and week = 5 and (daystart - (daystart mod 7)) mod 2 = 1 and kanikuli = 0 and (cheerleadingQW['quest_stage'] >= 3 or cheerleadingQW['backup_game'] = 1):
 		gt 'gschool_cheerleading', 'afterschool_game'
 	end
 	

+ 72 - 39
locations/gschool_lessons1.qsrc

@@ -10,24 +10,35 @@ if $ARGS[0] = 'russian':
 	'You walk into the classroom and take a seat farthest to the right, next to a window. The rest of your fellow classmates walk in one by one. Mr. Yenotin enters the classroom, and just as he is about to close the door, one of your classmates grabs the door from outside the room. Mr. Yenotin turns to the tardy student and informs them that they are late and that next time he will have to report them. This instruction is followed by an awkward wink and the student is allowed in to find a seat.  All the students know that he never reports the tardy students. As everyone settles in Mr. Yenotin does a roll call and opens a grammar book telling you to open your textbooks to where you left off last lesson.'
 	*nl
 	'After a while he tells the students to do the assignments on the last page of the chapter. He starts walking up and down the classroom mostly talking to the students about off topic things like how thier time off was often disrupting them from thier focus. He''s always trying to impress the students with his endeavors but no one really believes what he says because most of it sounds exaggerated or simply not possible. When someone has a real question he''s quick to answer as fair as possible without being arrogant no matter what kind of question it is.'
-	act 'Listen attentively to Mr. Yenotin':
-		*clr & cla
-		grupvalue[4] -= 1
-		grupvalue[3] +=1
-		pcs_grades += rand(0,1)
-		intel_exp += rand(0,1)
-		'<center><img <<$set_imgh>> src="images/locations/pavlovsk/school/classroom/attention.jpg"></center>'
-		'You listen attentively to Mr. Yenotin for the duration of the class. He managed to make today''s lesson very interesting and informative, and you feel like you have learned something from actively taking part in the discussion.'
-		act 'Ask a question about the lesson':
+	
+	gs 'willpower', 'misc', 'self', iif(grupTipe = 4 and traits['nerd_status'] = 0, 'hard', iif(traits['nerd_status'] > 0, 'easy', 'medium'))
+	if traits['nerd_status'] = 2: will_cost = will_cost / 2
+	if will_cost <= pcs_willpwr or traits['nerd_status'] = 3:	
+		act 'Listen attentively to Mr. Yenotin'+iif(traits['nerd_status'] = 3, '', ' (<<will_cost>> Willpower)')+' ':
 			*clr & cla
+			grupvalue[4] -= 1
+			grupvalue[3] +=1
 			pcs_grades += rand(0,1)
-			intel_exp += rand(1,2)
-			'<center><img <<$set_imgh>> src="images/locations/pavlovsk/school/classroom/class1.jpg"></center>'
-			'Mr. Yenotin nods approvingly, happy to see his students engaged in class, trying their best. He happily spends some extra time explaining the topic again, and answers any extra questions you might have. You feel smarter, thoroughly understanding today''s lessons now.'
+			intel_exp += rand(0,1)
+			traits['nerd_lessons'] += 1
+			if traits['nerd_status'] < 3: gs 'willpower', 'pay', 'self'
+			gs 'stat'
+			'<center><img <<$set_imgh>> src="images/locations/pavlovsk/school/classroom/attention.jpg"></center>'
+			'You listen attentively to Mr. Yenotin for the duration of the class. He managed to make today''s lesson very interesting and informative, and you feel like you have learned something from actively taking part in the discussion.'
+			act 'Ask a question about the lesson':
+				*clr & cla
+				pcs_grades += rand(0,1)
+				intel_exp += rand(1,2)
+				'<center><img <<$set_imgh>> src="images/locations/pavlovsk/school/classroom/class1.jpg"></center>'
+				'Mr. Yenotin nods approvingly, happy to see his students engaged in class, trying their best. He happily spends some extra time explaining the topic again, and answers any extra questions you might have. You feel smarter, thoroughly understanding today''s lessons now.'
+				act 'Wait for the end of the lesson': gs 'gschool_lessonsev1', 'russian'
+			end
 			act 'Wait for the end of the lesson': gs 'gschool_lessonsev1', 'russian'
 		end
-		act 'Wait for the end of the lesson': gs 'gschool_lessonsev1', 'russian'
+	else
+		act 'Listen attentively to Mr. Yenotin (<font color="red"><<will_cost>> Willpower</font>)': '<br><font color="red">You don''t have enough willpower to use this action.</font>'
 	end
+	
 	act 'Don''t pay attention in class':
 		*clr & cla
 		pcs_grades -= rand(0,1)
@@ -499,24 +510,35 @@ if $ARGS[0] = 'geography':
 	'You walk into the classroom seeing Mrs. Sokoloff sitting by her desk. The rest of your fellow classmates walk in one by one under the watchful eye of Mrs. Sokoloff. Some of the students get a friendly smile while others get a stern look.'
 	*nl
 	'Without wasting time she sternly tells the class to open the page <<openpage>>. "I hope you all have done your homework." Mrs. Sokoloff is really a take no prisoners kind of teacher, she expects discipline and hard work, the ones able to abide by her rules are treated very kindly.'
-	act 'Listen attentively to Mrs. Sokoloff':
-		*clr & cla
-		grupvalue[4] -=1
-		grupvalue[3] += 1
-		intel_exp += rand(0,1)
-		pcs_grades += rand(0,1)
-		'<center><img <<$set_imgh>> src="images/locations/pavlovsk/school/classroom/attention.jpg"></center>'
-		'You listen attentively to Mrs. Sokoloff for the duration of the class. Today''s lesson was interesting and informative, and you feel you learned from taking part in class.'
-		act 'Ask a question about the lesson':
+	
+	gs 'willpower', 'misc', 'self', iif(grupTipe = 4 and traits['nerd_status'] = 0, 'hard', iif(traits['nerd_status'] > 0, 'easy', 'medium'))
+	if traits['nerd_status'] = 2: will_cost = will_cost / 2
+	if will_cost <= pcs_willpwr or traits['nerd_status'] = 3:	
+		act 'Listen attentively to Mrs. Sokoloff'+iif(traits['nerd_status'] = 3, '', ' (<<will_cost>> Willpower)')+' ':
 			*clr & cla
-			intel_exp += rand(1,2)
+			grupvalue[4] -=1
+			grupvalue[3] += 1
+			intel_exp += rand(0,1)
 			pcs_grades += rand(0,1)
-			'<center><img <<$set_imgh>> src="images/locations/pavlovsk/school/classroom/ask.jpg"></center>'
-			'Mrs. Sokoloff nods approvingly, always happy to see her students engaged in her class. She happily spends some extra time explaining the topic again, and answers any extra questions you might have. You feel smarter, thoroughly understanding today''s lessons now.'
+			traits['nerd_lessons'] += 1
+			if traits['nerd_status'] < 3: gs 'willpower', 'pay', 'self'
+			gs 'stat'
+			'<center><img <<$set_imgh>> src="images/locations/pavlovsk/school/classroom/attention.jpg"></center>'
+			'You listen attentively to Mrs. Sokoloff for the duration of the class. Today''s lesson was interesting and informative, and you feel you learned from taking part in class.'
+			act 'Ask a question about the lesson':
+				*clr & cla
+				intel_exp += rand(1,2)
+				pcs_grades += rand(0,1)
+				'<center><img <<$set_imgh>> src="images/locations/pavlovsk/school/classroom/ask.jpg"></center>'
+				'Mrs. Sokoloff nods approvingly, always happy to see her students engaged in her class. She happily spends some extra time explaining the topic again, and answers any extra questions you might have. You feel smarter, thoroughly understanding today''s lessons now.'
+				act 'Wait for the end of the lesson': gs 'gschool_lessonsev2', 'geography'
+			end
 			act 'Wait for the end of the lesson': gs 'gschool_lessonsev2', 'geography'
 		end
-		act 'Wait for the end of the lesson': gs 'gschool_lessonsev2', 'geography'
+	else
+		act 'Listen attentively to Mrs. Sokoloff (<font color="red"><<will_cost>> Willpower</font>)': '<br><font color="red">You don''t have enough willpower to use this action.</font>'
 	end
+	
 	act 'Don''t pay attention in class':
 		*clr & cla
 		pcs_grades -= rand(0,1)
@@ -990,24 +1012,35 @@ if $ARGS[0] = 'history':
 	'You walk into the classroom seeing Mrs. Sokoloff sitting by her desk. The rest of your fellow classmates walk in one by one under the watchful eye of Mrs. Sokoloff. Some of the students get a friendly smile while others get a stern look.'
 	*nl
 	'Without wasting time she sternly tells the class to open the page <<openpage>>. "I hope you all have done your homework." Mrs. Sokoloff is really a take no prisoners kind of teacher, she expects discipline and hard work, the ones able to abide by her rules are treated very kindly.'
-	act 'Listen attentively to Mrs. Sokoloff':
-		*clr & cla
-		grupvalue[4] -= 1
-		grupvalue[3] += 1
-		intel_exp += rand(0,1)
-		pcs_grades += rand(0,1)
-		'<center><img <<$set_imgh>> src="images/locations/pavlovsk/school/classroom/attention.jpg"></center>'
-		'You listen attentively to Mrs. Sokoloff for the duration of the class. Today''s lesson was interesting and informative, and you feel you learned from taking part in class.'
-		act 'Ask a question about the lesson':
+	
+	gs 'willpower', 'misc', 'self', iif(grupTipe = 4 and traits['nerd_status'] = 0, 'hard', iif(traits['nerd_status'] > 0, 'easy', 'medium'))
+	if traits['nerd_status'] = 2: will_cost = will_cost / 2
+	if will_cost <= pcs_willpwr or traits['nerd_status'] = 3:	
+		act 'Listen attentively to Mrs. Sokoloff'+iif(traits['nerd_status'] = 3, '', ' (<<will_cost>> Willpower)')+' ':
 			*clr & cla
-			intel_exp += rand(1,2)
+			grupvalue[4] -= 1
+			grupvalue[3] += 1
+			intel_exp += rand(0,1)
 			pcs_grades += rand(0,1)
-			'<center><img <<$set_imgh>> src="images/locations/pavlovsk/school/classroom/ask.jpg"></center>'
-			'Mrs. Sokoloff nods approvingly, always happy to see her students engaged in her class. He happily spends some extra time explaining the topic again, and answers any extra questions you might have. You feel smarter, thoroughly understanding today''s lessons now.'
+			traits['nerd_lessons'] += 1
+			if traits['nerd_status'] < 3: gs 'willpower', 'pay', 'self'
+			gs 'stat'
+			'<center><img <<$set_imgh>> src="images/locations/pavlovsk/school/classroom/attention.jpg"></center>'
+			'You listen attentively to Mrs. Sokoloff for the duration of the class. Today''s lesson was interesting and informative, and you feel you learned from taking part in class.'
+			act 'Ask a question about the lesson':
+				*clr & cla
+				intel_exp += rand(1,2)
+				pcs_grades += rand(0,1)
+				'<center><img <<$set_imgh>> src="images/locations/pavlovsk/school/classroom/ask.jpg"></center>'
+				'Mrs. Sokoloff nods approvingly, always happy to see her students engaged in her class. He happily spends some extra time explaining the topic again, and answers any extra questions you might have. You feel smarter, thoroughly understanding today''s lessons now.'
+				act 'Wait for the end of the lesson': gs 'gschool_lessonsev2', 'history'
+			end
 			act 'Wait for the end of the lesson': gs 'gschool_lessonsev2', 'history'
 		end
-		act 'Wait for the end of the lesson': gs 'gschool_lessonsev2', 'history'
+	else
+		act 'Listen attentively to Mrs. Sokoloff (<font color="red"><<will_cost>> Willpower</font>)': '<br><font color="red">You don''t have enough willpower to use this action.</font>'
 	end
+	
 	act 'Don''t pay attention in class':
 		*clr & cla
 		pcs_grades -= rand(0,1)

+ 104 - 61
locations/gschool_lessons2.qsrc

@@ -11,30 +11,41 @@ if $ARGS[0] = 'computer':
 	'You go to your computer class and find a seat at one of the computer stations. Before long all of your fellow students file in and takes their seats as well. Once the bell rings Mr. Ivanov takes roll call, you say here when your name is called. With that done, he gets up and starts walking around the room explaining todays lessons. Occasionally stopping to look at the screen of varies students to make sure they are doing it right.'
 	*nl
 	'If he has to correct one of the nerds he will take his time and quietly explain it to them, giving them lots of encouragement. For everyone else he loudly proclaims what you did wrong, drawing attention to how easy this is. He makes sure the whole class knows about their mistake and he does it in a condescending manner, like he is trying to prove to everyone how much smarter he is than you are, or maybe he just wants the others students to make fun of them. With Mr. Ivanov it is hard to tell. He doesn''t seem to approve of anyone but the nerds and harshly grades everyone else.'
-	act 'Listen attentively to Mr. Ivanov':
-		*clr & cla
-		compskl_exp += rand(1,2)
-		intel_exp += rand(0,1)
-		pcs_grades += rand(0,1)
-		grupvalue[4] -= 1
-		grupvalue[3] +=1
-		'<center><img <<$set_imgh>> src="images/locations/pavlovsk/school/classroom/attention.jpg"></center>'
-		'You listen attentively to Mr. Ivanov for the duration of the class. Today''s lesson was interesting and informative, and you feel you learned from taking part in class.'
-		act 'Ask a question about the lesson':
+	
+	gs 'willpower', 'misc', 'self', iif(grupTipe = 4 and traits['nerd_status'] = 0, 'hard', iif(traits['nerd_status'] > 0, 'easy', 'medium'))
+	if traits['nerd_status'] = 2: will_cost = will_cost / 2
+	if will_cost <= pcs_willpwr or traits['nerd_status'] = 3:	
+		act 'Listen attentively to Mr. Ivanov'+iif(traits['nerd_status'] = 3, '', ' (<<will_cost>> Willpower)')+' ':
 			*clr & cla
-			pcs_grades += rand(0,1)
-			compskl_exp += rand(0,1)
+			compskl_exp += rand(1,2)
 			intel_exp += rand(0,1)
-			'<center><img <<$set_imgh>> src="images/locations/pavlovsk/school/classroom/ask.jpg"></center>'
-			if grupTipe=3:
-				'Mr. Ivanov nods approvingly. He happily spends some extra time explaining the topic again to you, and answers any extra questions you might have. You feel like you learned a lot, thoroughly understanding today''s lessons now.'
-			else
-				'Mr. Ivanov audibly sighs. "Why are you unable to grasp this. I know you are not the smartest student, but this is really very simple. Even a small child should be able to grasp it." He goes on to explain the part you asked about again, but he does so in a completely belittling manner.'
+			pcs_grades += rand(0,1)
+			grupvalue[4] -= 1
+			grupvalue[3] += 1
+			traits['nerd_lessons'] += 1
+			if traits['nerd_status'] < 3: gs 'willpower', 'pay', 'self'
+			gs 'stat'
+			'<center><img <<$set_imgh>> src="images/locations/pavlovsk/school/classroom/attention.jpg"></center>'
+			'You listen attentively to Mr. Ivanov for the duration of the class. Today''s lesson was interesting and informative, and you feel you learned from taking part in class.'
+			act 'Ask a question about the lesson':
+				*clr & cla
+				pcs_grades += rand(0,1)
+				compskl_exp += rand(0,1)
+				intel_exp += rand(0,1)
+				'<center><img <<$set_imgh>> src="images/locations/pavlovsk/school/classroom/ask.jpg"></center>'
+				if grupTipe=3:
+					'Mr. Ivanov nods approvingly. He happily spends some extra time explaining the topic again to you, and answers any extra questions you might have. You feel like you learned a lot, thoroughly understanding today''s lessons now.'
+				else
+					'Mr. Ivanov audibly sighs. "Why are you unable to grasp this. I know you are not the smartest student, but this is really very simple. Even a small child should be able to grasp it." He goes on to explain the part you asked about again, but he does so in a completely belittling manner.'
+				end
+				act 'Wait for the end of the lesson': gs 'gschool_lessonsev1', 'computer'
 			end
 			act 'Wait for the end of the lesson': gs 'gschool_lessonsev1', 'computer'
 		end
-		act 'Wait for the end of the lesson': gs 'gschool_lessonsev1', 'computer'
-	end
+	else
+		act 'Listen attentively to Mr. Ivanov (<font color="red"><<will_cost>> Willpower</font>)': '<br><font color="red">You don''t have enough willpower to use this action.</font>'
+	end		
+		
 	act 'Don''t pay attention in class':
 		*clr & cla
 		pcs_grades -= rand(0,1)
@@ -516,23 +527,33 @@ if $ARGS[0] = 'science':
 	'You go to your biology class and find a seat at your lab station. Before long all of your fellow students file in and takes their seats as well. Once the bell rings Miss Orlov takes roll call, you say here when your name is called. With that done, she gets up and starts writing on the blackboard, she is wearing a fairly short skirt that nearly rides to high when she reaches up to write at the top of the blackboard. Which the boys often encourage by asking her questions about what ever it is she has written at the top of the blackboard that day.'
 	*nl
 	'She occasionally asks questions of the studens and those that get them right receive heaps of praise. Those that get them wrong, she takes the time to explain why they were wrong and what the correct answer is. Then making sure the student understands, once she is sure the student understands their mistake she moves on with her lesson. She is always quick to help anyone with a problem or answer questions about class, always with that shy smile of hers.'
-	act 'Listen attentively to Miss Orlov':
-		*clr & cla
-		pcs_grades += rand(0,1)
-		grupvalue[4] -= 1
-		grupvalue[3] += 1
-		intel_exp += rand(0,1)
-		'<center><img <<$set_imgh>> src="images/locations/pavlovsk/school/classroom/attention.jpg"></center>'
-		'You listen attentively to Miss Orlov for the duration of the class. Today''s lesson was interesting and informative, and you feel you learned from taking part in class.'
-		act 'Ask a question about the lesson':
+	
+	gs 'willpower', 'misc', 'self', iif(grupTipe = 4 and traits['nerd_status'] = 0, 'hard', iif(traits['nerd_status'] > 0, 'easy', 'medium'))
+	if traits['nerd_status'] = 2: will_cost = will_cost / 2
+	if will_cost <= pcs_willpwr or traits['nerd_status'] = 3:	
+		act 'Listen attentively to Miss Orlov'+iif(traits['nerd_status'] = 3, '', ' (<<will_cost>> Willpower)')+' ':
 			*clr & cla
 			pcs_grades += rand(0,1)
+			grupvalue[4] -= 1
+			grupvalue[3] += 1
 			intel_exp += rand(0,1)
-			'<center><img <<$set_imgh>> src="images/locations/pavlovsk/school/classroom/ask.jpg"></center>'
-			'Miss Orlov nods approvingly. She happily spends some extra time explaining the topic again to you, and answers any extra questions you might have. She only moves on with the lesson once she is sure she has fully answered your question. You feel like you learned a lot, thoroughly understanding today''s lessons now.'
+			traits['nerd_lessons'] += 1
+			if traits['nerd_status'] < 3: gs 'willpower', 'pay', 'self'
+			gs 'stat'
+			'<center><img <<$set_imgh>> src="images/locations/pavlovsk/school/classroom/attention.jpg"></center>'
+			'You listen attentively to Miss Orlov for the duration of the class. Today''s lesson was interesting and informative, and you feel you learned from taking part in class.'
+			act 'Ask a question about the lesson':
+				*clr & cla
+				pcs_grades += rand(0,1)
+				intel_exp += rand(0,1)
+				'<center><img <<$set_imgh>> src="images/locations/pavlovsk/school/classroom/ask.jpg"></center>'
+				'Miss Orlov nods approvingly. She happily spends some extra time explaining the topic again to you, and answers any extra questions you might have. She only moves on with the lesson once she is sure she has fully answered your question. You feel like you learned a lot, thoroughly understanding today''s lessons now.'
+				act 'Wait for the end of the lesson': gs 'gschool_lessonsev1', 'science'
+			end
 			act 'Wait for the end of the lesson': gs 'gschool_lessonsev1', 'science'
 		end
-		act 'Wait for the end of the lesson': gs 'gschool_lessonsev1', 'science'
+	else
+		act 'Listen attentively to Miss Orlov (<font color="red"><<will_cost>> Willpower</font>)': '<br><font color="red">You don''t have enough willpower to use this action.</font>'
 	end
 	act 'Don''t pay attention in class':
 		*clr & cla
@@ -894,28 +915,39 @@ if $ARGS[0] = 'music':
 	gs 'stat'
 	'<center><img <<$set_imgh>> src="images/locations/pavlovsk/school/classroom/classmusic.jpg"></center>'
 	'You sit in the classroom and listen to Mr Vasilyev go on about how great music is while you wait for class to start. You  do have him one thing, he is always up beat and positive about teaching music and encourages all of his students to take part.'
-	act 'Listen attentively to Mr. Vasilyev':
-		*clr & cla
-		grupvalue[4] -= 1
-		grupvalue[3] += 1
-		pcs_grades += rand(0,1)
-		instrmusic_exp += rand(1,2)
-		vokal_exp += rand(1,2)
-		chrsm_exp += rand(1,2)
-		'<center><img <<$set_imgh>> src="images/locations/pavlovsk/school/classroom/attention.jpg"></center>'
-		'You listen attentively to Mr. Vasilyev for the duration of the class. Today''s lesson was interesting and informative, and you feel you learned a lot about the history of music and famous artist.'
-		act 'Ask a question about the lesson':
+	
+	gs 'willpower', 'misc', 'self', iif(grupTipe = 4 and traits['nerd_status'] = 0, 'hard', iif(traits['nerd_status'] > 0, 'easy', 'medium'))
+	if traits['nerd_status'] = 2: will_cost = will_cost / 2
+	if will_cost <= pcs_willpwr or traits['nerd_status'] = 3:	
+		act 'Listen attentively to Mr. Vasilyev'+iif(traits['nerd_status'] = 3, '', ' (<<will_cost>> Willpower)')+' ':
 			*clr & cla
-			instrmusic_exp += rand(0,1)
-			vokal_exp += rand(0,1)
-			chrsm_exp += rand(0,1)
+			grupvalue[4] -= 1
+			grupvalue[3] += 1
 			pcs_grades += rand(0,1)
-			'<center><img <<$set_imgh>> src="images/locations/pavlovsk/school/classroom/classmusic.jpg"></center>'
-			'Mr. Vasilyev smiles, always happy to see his students engaged in his class. He happily spends some extra time explaining the topic again, and answers any extra questions you might have. You feel smarter, thoroughly understanding today''s lessons now.'
+			instrmusic_exp += rand(1,2)
+			vokal_exp += rand(1,2)
+			chrsm_exp += rand(1,2)
+			traits['nerd_lessons'] += 1
+			if traits['nerd_status'] < 3: gs 'willpower', 'pay', 'self'
+			gs 'stat'
+			'<center><img <<$set_imgh>> src="images/locations/pavlovsk/school/classroom/attention.jpg"></center>'
+			'You listen attentively to Mr. Vasilyev for the duration of the class. Today''s lesson was interesting and informative, and you feel you learned a lot about the history of music and famous artist.'
+			act 'Ask a question about the lesson':
+				*clr & cla
+				instrmusic_exp += rand(0,1)
+				vokal_exp += rand(0,1)
+				chrsm_exp += rand(0,1)
+				pcs_grades += rand(0,1)
+				'<center><img <<$set_imgh>> src="images/locations/pavlovsk/school/classroom/classmusic.jpg"></center>'
+				'Mr. Vasilyev smiles, always happy to see his students engaged in his class. He happily spends some extra time explaining the topic again, and answers any extra questions you might have. You feel smarter, thoroughly understanding today''s lessons now.'
+				act 'Wait for the end of the lesson': gs 'gschool_lessonsev3', 'music'
+			end
 			act 'Wait for the end of the lesson': gs 'gschool_lessonsev3', 'music'
 		end
-		act 'Wait for the end of the lesson': gs 'gschool_lessonsev3', 'music'
+	else
+		act 'Listen attentively to Mr. Vasilyev (<font color="red"><<will_cost>> Willpower</font>)': '<br><font color="red">You don''t have enough willpower to use this action.</font>'
 	end
+		
 	act 'Don''t pay attention in class':
 		*clr & cla
 		pcs_grades -= rand(0,1)
@@ -1374,24 +1406,35 @@ if $ARGS[0] = 'biology':
 	'You go to your biology class and find a seat at your lab station. Before long all of your fellow students file in and takes their seats as well. Once the bell rings Miss Orlov takes roll call, you say here when your name is called. With that done, she gets up and starts walking around the room explaining todays lessons. Occasionally stopping at each lab station to make sure the students are doing the work correctly, she often gives words of encouragement if things are going well or stops and helps the student understand what they are doing wrong.'
 	*nl
 	'She occasionally asks questions and those that get them right, she heaps praise upon them. Those that get them wrong, she takes the time to explain why they were wrong and what the correct answer is. Then making sure the student understands, once she is sure the student understands their mistake she moves on with her lesson. She is always quick to help anyone with a problem or answer questions about class, always with that shy smile of hers.'
-	act 'Listen attentively to Miss Orlov':
-		*clr & cla
-		grupvalue[4] -= 1
-		grupvalue[3] += 1
-		intel_exp += rand(0,1)
-		pcs_grades += rand(0,1)
-		'<center><img <<$set_imgh>> src="images/locations/pavlovsk/school/classroom/attention.jpg"></center>'
-		'You listen attentively to Miss Orlov for the duration of the class. Today''s lesson was interesting and informative, and you feel you learned from taking part in class.'
-		act 'Ask a question about the lesson':
+	
+	gs 'willpower', 'misc', 'self', iif(grupTipe = 4 and traits['nerd_status'] = 0, 'hard', iif(traits['nerd_status'] > 0, 'easy', 'medium'))
+	if traits['nerd_status'] = 2: will_cost = will_cost / 2
+	if will_cost <= pcs_willpwr or traits['nerd_status'] = 3:	
+		act 'Listen attentively to Miss Orlov'+iif(traits['nerd_status'] = 3, '', ' (<<will_cost>> Willpower)')+' ':
 			*clr & cla
-			intel_exp += rand(1,2)
+			grupvalue[4] -= 1
+			grupvalue[3] += 1
+			intel_exp += rand(0,1)
 			pcs_grades += rand(0,1)
-			'<center><img <<$set_imgh>> src="images/locations/pavlovsk/school/classroom/ask.jpg"></center>'
-			'Miss Orlov nods approvingly. She happily spends some extra time explaining the topic again to you, and answers any extra questions you might have. She only moves on with the lesson once she is sure she has fully answered your question. You feel like you learned a lot, thoroughly understanding today''s lessons now.'
+			traits['nerd_lessons'] += 1
+			if traits['nerd_status'] < 3: gs 'willpower', 'pay', 'self'
+			gs 'stat'
+			'<center><img <<$set_imgh>> src="images/locations/pavlovsk/school/classroom/attention.jpg"></center>'
+			'You listen attentively to Miss Orlov for the duration of the class. Today''s lesson was interesting and informative, and you feel you learned from taking part in class.'
+			act 'Ask a question about the lesson':
+				*clr & cla
+				intel_exp += rand(1,2)
+				pcs_grades += rand(0,1)
+				'<center><img <<$set_imgh>> src="images/locations/pavlovsk/school/classroom/ask.jpg"></center>'
+				'Miss Orlov nods approvingly. She happily spends some extra time explaining the topic again to you, and answers any extra questions you might have. She only moves on with the lesson once she is sure she has fully answered your question. You feel like you learned a lot, thoroughly understanding today''s lessons now.'
+				act 'Wait for the end of the lesson': gs 'gschool_lessonsev1', 'biology'
+			end
 			act 'Wait for the end of the lesson': gs 'gschool_lessonsev1', 'biology'
 		end
-		act 'Wait for the end of the lesson': gs 'gschool_lessonsev1', 'biology'
+	else
+		act 'Listen attentively to Miss Orlov (<font color="red"><<will_cost>> Willpower</font>)': '<br><font color="red">You don''t have enough willpower to use this action.</font>'
 	end
+	
 	act 'Don''t pay attention in class':
 		*clr & cla
 		pcs_grades -= rand(0,1)

+ 94 - 62
locations/gschool_lessons3.qsrc

@@ -11,44 +11,55 @@ if $ARGS[0] = 'literature':
 	'"She''s always piling on the work and expects everyone to have it finished by the end of class." You overhear a girl complain with a heavy sigh.'
 	*nl
 	'Clearing her throat, Ms. Braakman raises her voice to speak over the noise, "The sooner everyone takes out their textbooks, the quicker we can get started. Who knows, maybe we''ll finish early and you''ll have some free time." Hearing this, the room settles down and soon the lesson begins.'
-	act 'Listen attentively':
-		*clr & cla
-		grupvalue[4] -=1
-		grupvalue[3] += 1
-		pcs_grades += rand(0,1)
-		intel_exp += rand(0,1)
-		'<center><img <<$set_imgh>> src="images/locations/pavlovsk/school/classroom/literature/work2.jpg"></center>'
-		*nl
-		'Obediently, you open your textbook and start following along, even taking notes when you need to. Eventually, Ms. Braakman stops reading the passages herself and starts looking for volunteers to read.'
-		act 'Volunteer to read':gt 'gschool_lessonsev3', 'reading'
-		act 'Avoid being chosen':
+	
+	gs 'willpower', 'misc', 'self', iif(grupTipe = 4 and traits['nerd_status'] = 0, 'hard', iif(traits['nerd_status'] > 0, 'easy', 'medium'))
+	if traits['nerd_status'] = 2: will_cost = will_cost / 2
+	if will_cost <= pcs_willpwr or traits['nerd_status'] = 3:
+		act 'Listen attentively'+iif(traits['nerd_status'] = 3, '', ' (<<will_cost>> Willpower)')+' ':
 			*clr & cla
-			$boy = 'A'+str( val($mid(' 004 140 156 157 144 006 152 159 145',4*rand(0,8)+2,3)))
-			'<center><img <<$set_imgh>> src="images/locations/pavlovsk/school/classroom/literature/work.jpg"></center>'
-			'You keep your head down and pretend to be deep in thought as Ms. Braakman scans the rooms for a moment. Luckily, she stops and points to someone else in the class. "Please read the next passage."'
+			grupvalue[4] -=1
+			grupvalue[3] += 1
+			pcs_grades += rand(0,1)
+			intel_exp += rand(0,1)
+			traits['nerd_lessons'] += 1
+			if traits['nerd_status'] < 3: gs 'willpower', 'pay', 'self'
+			gs 'stat'
+			'<center><img <<$set_imgh>> src="images/locations/pavlovsk/school/classroom/literature/work2.jpg"></center>'
 			*nl
-			if $boy = 'A4':
-				'You watch Igor sink lower into his seat; apparently he was also trying to hide. Reluctantly, he quietly starts to read the passage, but Ms. Braakman interrupts to remind him to speak clearly. Some kids start to snicker and whisper to each other, causing Igor to awkwardly clear his throat before continuing. By the time he''s finished reading, his cheeks are colored a rosy red and he refuses to look up from his desk for the rest of the class.'
-			elseif $boy = 'A140':
-				'Upon being called on, Lizaveta quickly hides her phone under her desk, an innocent smile gracing her face as Ms. Braakman glares at her. "Uh...what page are we on?" she asks with a nervous chuckle. There''s a few scattered laughs, but Ms. Braakman quickly silences the room. A nearby girl points out the right page number and paragraph, and with a smile Lizaveta starts reading as if nothing happened.'
-			elseif $boy = 'A156':
-				'"Give me a fucking break..." Arkadi mutters under his breath. Either Ms. Braakman didn''t hear him, or she''s choosing to avoid confrontation with the gopnik since she continues to wait in silence. Realizing there''s no avoiding this, Arkadi clears his throat and begins reading; his voice is flat and at times he pretends not to be able to pronounce a word just to annoy the teacher. Fed up with his antics, Ms. Braakman cuts him off, sarcastically thanks him for reading and quickly chooses a more competent student. With a triumphant smile, the gopnik closes his book and relaxes into his seat.'
-			elseif $boy = 'A157':
-				'Roman scoffs, "Fuck that." He says nonchalantly. You can feel the tension growing as Ms. Braakman narrows her eyes and tells him again to read, only to be met with a taunting smile and silent defiance from the gopnik. After what feels like an eternity, Ms. Braakman chooses a different student and continues on with the lesson like nothing ever happened.'
-			elseif $boy = 'A144':
-				'Anushka throws her head back and sighs dramatically. "The quicker you read, the sooner this will be over." Ms. Braakman insists. Hearing this, Anushka straightens up and starts to read, taking Ms. Braakman''s comment literally and speaking so fast that you can barely understand her.'
-			elseif $boy = 'A6':
-				'Obediently, Petka reads the passage and does so without any mistakes. "It''s always a pleasure to hear you read, Petka. If only your fellow students took their studies as seriously as you." Ms. Braakman compliments. Petka smiles slightly, but you can tell that he doesn''t like being openly complimented by the teacher, especially when students start to groan and call him a teacher''s pet.'
-			elseif $boy = 'A152':
-				'You watch Feofan frantically hide the comic book he was secretly reading before trying to find the right passage to read. "Save the cartoons for after class." Ms. Braakman warns. Feofan starts to correct her, but the laughter from the other students silences him.'
-			elseif $boy = 'A159':
-				'"Can''t you pick someone else?" Petia asks, slumping back into his seat. "I don''t even know what page we''re on." He garners a few laughs, but Ms. Braakman is quick to reprimand him, reminding him that if he keeps this up he''ll end up in detention and fail her class.'
-			elseif $boy = 'A145':
-				'You look over to see Ekaterina has her head down, presumably asleep. Again, Ms. Braakman asks her to read but the gopnik doesn''t respond. "We can always continue the lesson during detention." She threatens. After a moment, Ekaterina slowly sits up and lazily stretches before asking a nearby student for the page number and reading as instructed.'
+			'Obediently, you open your textbook and start following along, even taking notes when you need to. Eventually, Ms. Braakman stops reading the passages herself and starts looking for volunteers to read.'
+			act 'Volunteer to read':gt 'gschool_lessonsev3', 'reading'
+			act 'Avoid being chosen':
+				*clr & cla
+				$boy = 'A'+str( val($mid(' 004 140 156 157 144 006 152 159 145',4*rand(0,8)+2,3)))
+				'<center><img <<$set_imgh>> src="images/locations/pavlovsk/school/classroom/literature/work.jpg"></center>'
+				'You keep your head down and pretend to be deep in thought as Ms. Braakman scans the rooms for a moment. Luckily, she stops and points to someone else in the class. "Please read the next passage."'
+				*nl
+				if $boy = 'A4':
+					'You watch Igor sink lower into his seat; apparently he was also trying to hide. Reluctantly, he quietly starts to read the passage, but Ms. Braakman interrupts to remind him to speak clearly. Some kids start to snicker and whisper to each other, causing Igor to awkwardly clear his throat before continuing. By the time he''s finished reading, his cheeks are colored a rosy red and he refuses to look up from his desk for the rest of the class.'
+				elseif $boy = 'A140':
+					'Upon being called on, Lizaveta quickly hides her phone under her desk, an innocent smile gracing her face as Ms. Braakman glares at her. "Uh...what page are we on?" she asks with a nervous chuckle. There''s a few scattered laughs, but Ms. Braakman quickly silences the room. A nearby girl points out the right page number and paragraph, and with a smile Lizaveta starts reading as if nothing happened.'
+				elseif $boy = 'A156':
+					'"Give me a fucking break..." Arkadi mutters under his breath. Either Ms. Braakman didn''t hear him, or she''s choosing to avoid confrontation with the gopnik since she continues to wait in silence. Realizing there''s no avoiding this, Arkadi clears his throat and begins reading; his voice is flat and at times he pretends not to be able to pronounce a word just to annoy the teacher. Fed up with his antics, Ms. Braakman cuts him off, sarcastically thanks him for reading and quickly chooses a more competent student. With a triumphant smile, the gopnik closes his book and relaxes into his seat.'
+				elseif $boy = 'A157':
+					'Roman scoffs, "Fuck that." He says nonchalantly. You can feel the tension growing as Ms. Braakman narrows her eyes and tells him again to read, only to be met with a taunting smile and silent defiance from the gopnik. After what feels like an eternity, Ms. Braakman chooses a different student and continues on with the lesson like nothing ever happened.'
+				elseif $boy = 'A144':
+					'Anushka throws her head back and sighs dramatically. "The quicker you read, the sooner this will be over." Ms. Braakman insists. Hearing this, Anushka straightens up and starts to read, taking Ms. Braakman''s comment literally and speaking so fast that you can barely understand her.'
+				elseif $boy = 'A6':
+					'Obediently, Petka reads the passage and does so without any mistakes. "It''s always a pleasure to hear you read, Petka. If only your fellow students took their studies as seriously as you." Ms. Braakman compliments. Petka smiles slightly, but you can tell that he doesn''t like being openly complimented by the teacher, especially when students start to groan and call him a teacher''s pet.'
+				elseif $boy = 'A152':
+					'You watch Feofan frantically hide the comic book he was secretly reading before trying to find the right passage to read. "Save the cartoons for after class." Ms. Braakman warns. Feofan starts to correct her, but the laughter from the other students silences him.'
+				elseif $boy = 'A159':
+					'"Can''t you pick someone else?" Petia asks, slumping back into his seat. "I don''t even know what page we''re on." He garners a few laughs, but Ms. Braakman is quick to reprimand him, reminding him that if he keeps this up he''ll end up in detention and fail her class.'
+				elseif $boy = 'A145':
+					'You look over to see Ekaterina has her head down, presumably asleep. Again, Ms. Braakman asks her to read but the gopnik doesn''t respond. "We can always continue the lesson during detention." She threatens. After a moment, Ekaterina slowly sits up and lazily stretches before asking a nearby student for the page number and reading as instructed.'
+				end
+				act 'Wait for the end of the lesson': gt 'gschool_lessons', 'short_break'
 			end
-			act 'Wait for the end of the lesson': gt 'gschool_lessons', 'short_break'
 		end
+	else
+		act 'Listen attentively (<font color="red"><<will_cost>> Willpower</font>)': '<br><font color="red">You don''t have enough willpower to use this action.</font>'
 	end
+	
 	act'Daydream':
 		*clr & cla
 		pcs_grades -= rand(0,1)
@@ -436,26 +447,37 @@ if $ARGS[0] = 'art':
 	gs 'stat'
 	'<center><img <<$set_imgh>> src="images/locations/pavlovsk/school/classroom/classart.jpg"></center>'
 	'You sit in the classroom and listen to Mr Vasilyev go on about how great art is, you will give him one thing. He is always up beat and positive about teaching art and encourages all of his students to take part.'
-	act 'Listen attentively to Mr. Vasilyev':
-		*clr & cla
-		grupvalue[4] -= 1
-		grupvalue[3] += 1
-		pcs_grades += rand(0,1)
-		artslks_exp += rand(1,2)
-		agil_exp += rand(0,1)
-		'<center><img <<$set_imgh>> src="images/locations/pavlovsk/school/classroom/attention.jpg"></center>'
-		'You listen attentively to Mr. Vasilyev for the duration of the class. Today''s lesson was interesting and informative, and you feel you learned a lot about the history of art and famous artist.'
-		act 'Ask a question about the lesson':
+	
+	gs 'willpower', 'misc', 'self', iif(grupTipe = 4 and traits['nerd_status'] = 0, 'hard', iif(traits['nerd_status'] > 0, 'easy', 'medium'))
+	if traits['nerd_status'] = 2: will_cost = will_cost / 2
+	if will_cost <= pcs_willpwr or traits['nerd_status'] = 3:
+		act 'Listen attentively to Mr. Vasilyev'+iif(traits['nerd_status'] = 3, '', ' (<<will_cost>> Willpower)')+' ':
 			*clr & cla
-			artslks_exp += rand(0,1)
-			agil_exp += rand(0,1)
+			grupvalue[4] -= 1
+			grupvalue[3] += 1
 			pcs_grades += rand(0,1)
-			'<center><img <<$set_imgh>> src="images/locations/pavlovsk/school/classroom/ask.jpg"></center>'
-			'Mr. Vasilyev smiles, always happy to see his students engaged in his class. He happily spends some extra time explaining the topic again, and answers any extra questions you might have. You feel smarter, thoroughly understanding today''s lessons now.'
+			artslks_exp += rand(1,2)
+			agil_exp += rand(0,1)
+			traits['nerd_lessons'] += 1
+			if traits['nerd_status'] < 3: gs 'willpower', 'pay', 'self'
+			gs 'stat'
+			'<center><img <<$set_imgh>> src="images/locations/pavlovsk/school/classroom/attention.jpg"></center>'
+			'You listen attentively to Mr. Vasilyev for the duration of the class. Today''s lesson was interesting and informative, and you feel you learned a lot about the history of art and famous artist.'
+			act 'Ask a question about the lesson':
+				*clr & cla
+				artslks_exp += rand(0,1)
+				agil_exp += rand(0,1)
+				pcs_grades += rand(0,1)
+				'<center><img <<$set_imgh>> src="images/locations/pavlovsk/school/classroom/ask.jpg"></center>'
+				'Mr. Vasilyev smiles, always happy to see his students engaged in his class. He happily spends some extra time explaining the topic again, and answers any extra questions you might have. You feel smarter, thoroughly understanding today''s lessons now.'
+				act 'Wait for the end of the lesson': gs 'gschool_lessonsev3', 'art'
+			end
 			act 'Wait for the end of the lesson': gs 'gschool_lessonsev3', 'art'
 		end
-		act 'Wait for the end of the lesson': gs 'gschool_lessonsev3', 'art'
+	else
+		act 'Listen attentively to Mr. Vasilyev (<font color="red"><<will_cost>> Willpower</font>)': '<br><font color="red">You don''t have enough willpower to use this action.</font>'
 	end
+	
 	act 'Don''t pay attention in class':
 		*clr & cla
 		pcs_grades -= rand(0,1)
@@ -980,28 +1002,38 @@ if $ARGS[0] = 'shop':
 	gs 'stat'
 	'<center><img <<$set_imgh>> src="images/locations/pavlovsk/school/classroom/classshop.jpg"></center>'
 	'You sit in the classroom and listen to the monotonous droning of your teacher, doing your best not to fall asleep.'
-	act 'Listen attentively to Mr. Kuznetsov':
-		*clr & cla
-		grupvalue[4] -= 1
-		grupvalue[3] += 1
-		pcs_grades += rand(0,1)
-		hndiwrk_exp += rand(1,2)
-		agil_exp += rand(0,1)
-		gs 'stat'
-		'<center><img <<$set_imgh>> src="images/locations/pavlovsk/school/classroom/attention.jpg"></center>'
-		'You listen attentively to Mr. Kuznetsov for the duration of the class. Today''s lesson was interesting and informative, and you feel you learned from taking part in class.'
-		act 'Ask a question about the lesson':
+	
+	gs 'willpower', 'misc', 'self', iif(grupTipe = 4 and traits['nerd_status'] = 0, 'hard', iif(traits['nerd_status'] > 0, 'easy', 'medium'))
+	if traits['nerd_status'] = 2: will_cost = will_cost / 2
+	if will_cost <= pcs_willpwr or traits['nerd_status'] = 3:		
+		act 'Listen attentively to Mr. Kuznetsov'+iif(traits['nerd_status'] = 3, '', ' (<<will_cost>> Willpower)')+' ':
 			*clr & cla
+			grupvalue[4] -= 1
+			grupvalue[3] += 1
 			pcs_grades += rand(0,1)
 			hndiwrk_exp += rand(1,2)
 			agil_exp += rand(0,1)
+			traits['nerd_lessons'] += 1
+			if traits['nerd_status'] < 3: gs 'willpower', 'pay', 'self'
 			gs 'stat'
-			'<center><img <<$set_imgh>> src="images/locations/pavlovsk/school/classroom/class1.jpg"></center>'
-			'Mr. Kuznetsov nods approvingly, always happy to see his students engaged in his class. He happily spends some extra time explaining the topic again, and answers any extra questions you might have. You feel smarter, thoroughly understanding today''s lessons now.'
+			'<center><img <<$set_imgh>> src="images/locations/pavlovsk/school/classroom/attention.jpg"></center>'
+			'You listen attentively to Mr. Kuznetsov for the duration of the class. Today''s lesson was interesting and informative, and you feel you learned from taking part in class.'
+			act 'Ask a question about the lesson':
+				*clr & cla
+				pcs_grades += rand(0,1)
+				hndiwrk_exp += rand(1,2)
+				agil_exp += rand(0,1)
+				gs 'stat'
+				'<center><img <<$set_imgh>> src="images/locations/pavlovsk/school/classroom/class1.jpg"></center>'
+				'Mr. Kuznetsov nods approvingly, always happy to see his students engaged in his class. He happily spends some extra time explaining the topic again, and answers any extra questions you might have. You feel smarter, thoroughly understanding today''s lessons now.'
+				act 'Wait for the end of the lesson': gs 'gschool_lessonsev2', 'shop'
+			end
 			act 'Wait for the end of the lesson': gs 'gschool_lessonsev2', 'shop'
 		end
-		act 'Wait for the end of the lesson': gs 'gschool_lessonsev2', 'shop'
+	else
+		 act 'Listen attentively to Mr. Kuznetsov (<font color="red"><<will_cost>> Willpower</font>)': '<br><font color="red">You don''t have enough willpower to use this action.</font>'
 	end
+	
 	act 'Don''t pay attention in class':
 		*clr & cla
 		pcs_grades -= rand(0,1)

+ 134 - 116
locations/gschool_lessons4.qsrc

@@ -80,25 +80,33 @@ if $ARGS[0] = 'math':
 	if dimaRevenge = 1:
 		act 'Continue': gt 'dimaRevenge', 1
 	else
-		act 'Focus on your school work':
-			*clr & cla
-			grupvalue[4] -= 1
-			grupvalue[3] +=1
-			pcs_grades += rand(0,1)
-			intel_exp += rand(0,1)
-			gs'stat'
-			'<center><img <<$set_imgh>> src="images/locations/pavlovsk/school/classroom/attention.jpg"></center>'
-			'You carefully follow today''s lesson trying to take in as much as possible.'
-			act 'Ask a question about the lesson':
+		gs 'willpower', 'misc', 'self', iif(grupTipe = 4 and traits['nerd_status'] = 0, 'hard', iif(traits['nerd_status'] > 0, 'easy', 'medium'))
+		if traits['nerd_status'] = 2: will_cost = will_cost / 2
+		if will_cost <= pcs_willpwr or traits['nerd_status'] = 3:	
+			act 'Focus on your school work'+iif(traits['nerd_status'] = 3, '', ' (<<will_cost>> Willpower)')+' ':
 				*clr & cla
+				grupvalue[4] -= 1
+				grupvalue[3] +=1
 				pcs_grades += rand(0,1)
-				intel_exp += rand(1,2)
-				'<center><img <<$set_imgh>> src="images/locations/pavlovsk/school/classroom/class1.jpg"></center>'
-				'You take a second to ask a question about a part of the lesson that you don''t fully understand and Mr. Tsarev nods approvingly then says, "Sure thing, we can over the solution again and I will show you the many ways that you can find the solution to these problems." Anatoly happily spends some time explaining the topic in greater detail, and answers any questions you might have, teaching you some new ways of solving many problems, in the process.'
-				*nl
+				intel_exp += rand(0,1)
+				traits['nerd_lessons'] += 1
+				if traits['nerd_status'] < 3: gs 'willpower', 'pay', 'self'
+				gs 'stat'
+				'<center><img <<$set_imgh>> src="images/locations/pavlovsk/school/classroom/attention.jpg"></center>'
+				'You carefully follow today''s lesson trying to take in as much as possible.'
+				act 'Ask a question about the lesson':
+					*clr & cla
+					pcs_grades += rand(0,1)
+					intel_exp += rand(1,2)
+					'<center><img <<$set_imgh>> src="images/locations/pavlovsk/school/classroom/class1.jpg"></center>'
+					'You take a second to ask a question about a part of the lesson that you don''t fully understand and Mr. Tsarev nods approvingly then says, "Sure thing, we can over the solution again and I will show you the many ways that you can find the solution to these problems." Anatoly happily spends some time explaining the topic in greater detail, and answers any questions you might have, teaching you some new ways of solving many problems, in the process.'
+					*nl
+					act 'Wait for the end of the lesson': gt 'gschool_lessonsev2', 'math'
+				end
 				act 'Wait for the end of the lesson': gt 'gschool_lessonsev2', 'math'
 			end
-			act 'Wait for the end of the lesson': gt 'gschool_lessonsev2', 'math'
+		else
+			act 'Focus on your school work (<font color="red"><<will_cost>> Willpower</font>)': '<br><font color="red">You don''t have enough willpower to use this action.</font>'
 		end
 
 		act'Daydream':
@@ -383,119 +391,129 @@ if $ARGS[0] = 'english':
 	if dimaRevenge = 1:
 		act 'Continue': gt 'dimaRevenge', 1
 	else
-		act 'Listen attentively':
-			*clr & cla
-			grupvalue[4] -=1
-			grupvalue[3] += 1
-			pcs_grades += rand(0,1)
-			intel_exp += rand(0,1)
-			'<center><img <<$set_imgh>> src="images/locations/pavlovsk/school/classroom/literature/work2.jpg"></center>'
-			*nl
-			'You actively take part in the lesson, raising your hand to answer questions, following along in your textbook, and working quietly on the worksheets when given them.'
-			act 'Keep working':
+		gs 'willpower', 'misc', 'self', iif(grupTipe = 4 and traits['nerd_status'] = 0, 'hard', iif(traits['nerd_status'] > 0, 'easy', 'medium'))
+		if traits['nerd_status'] = 2: will_cost = will_cost / 2
+		if will_cost <= pcs_willpwr or traits['nerd_status'] = 3:	
+			act 'Listen attentively'+iif(traits['nerd_status'] = 3, '', ' (<<will_cost>> Willpower)')+' ':
 				*clr & cla
-				grupvalue[3] +=1
+				grupvalue[4] -=1
+				grupvalue[3] += 1
 				pcs_grades += rand(0,1)
-				intel_exp += rand(1,2)
-				'<center><img <<$set_imgh>> src="images/locations/pavlovsk/school/classroom/ask.jpg"></center>'
-				'Unlike most of the students in your class, you stay focused on your work.'
-				act 'Wait for the end of the lesson': gs 'gschool_lessonsev3', 'working'
-			end
-			act 'Talk to someone':
-				*clr & cla
-				'<center><img <<$set_imgh>> src="images/locations/pavlovsk/school/classroom/talk.jpg"></center>'
-				pcs_grades -= rand(0,1)
-				'You tell yourself that you''ve worked long enough and deserve a break. Looking around the room, you decide to talk to...'
-				act 'Vicky':
-					*clr & cla
-					pcs_mood += 10
-					chrsm_exp += rand(1,2)
-					npc_rel['A15'] += 1
-					'<center><img <<$set_imgh>> src="images/locations/pavlovsk/school/classroom/talkgirl' + rand(1,3) + '.jpg"></center>'
-					'"I saw this video of an American girl dancing all sexy and stuff, and I''m thinking of learning the dance. Next time I go to the community center, I''ll show up all the girls and steal their boyfriends!" she jokes with a playful smile, but you notice a wicked twinkle in her eyes.'
-					*nl
-					'Vicky''s bubbly personality makes her easy and fun to talk to, and you end up spending the rest of class smiling and laughing with her.'
-					act 'Finish class': gt 'gschool_lessons', 'short_break'
-				end
-				act 'Lena':
-					*clr & cla
-					chrsm_exp += rand(1,2)
-					npc_rel['A20'] += 1
-					'<center><img <<$set_imgh>> src="images/locations/pavlovsk/school/classroom/talkgirl' + rand(1,3) + '.jpg"></center>'
-					'Lena sighs heavily, "Fuck, what''s taking her so long?"'
-					*nl
-					'"Who are you waiting for?" you ask.'
-					*nl
-					'"Lera! She had to go take a piss but she''s taking forever," she snaps back. "Her tongue probably needed a break anyways..." she mumbles quietly after a moment, a small smile spreading across her face.'
-					act 'Finish class': gt 'gschool_lessons', 'short_break'
-				end
-				act 'Lera':
-					*clr & cla
-					chrsm_exp += rand(1,2)
-					npc_rel['A21'] += 1
-					'<center><img <<$set_imgh>> src="images/locations/pavlovsk/school/classroom/talkgirl' + rand(1,3) + '.jpg"></center>'
-					'"It''s hard enough having my dad as a teacher at school, but now that freak Lesco is living with us." Lera spends the rest of class talking about all the awkward run-ins she''s had with her dad in school, and how she and Lena had to beat the shit out of anyone that tried spreading weird rumors about her being "close" to her cousin Lesco.'
-					act 'Finish class': gt 'gschool_lessons', 'short_break'
-				end
-				act 'Radomir':
-					*clr & cla
-					chrsm_exp += rand(1,2)
-					npc_rel['A154'] += 1
-					'<center><img <<$set_imgh>> src="images/locations/pavlovsk/school/classroom/talkboy' + rand(1,3) + '.jpg"></center>'
-					'You try talking to Radomir, but it''s hard to get a word in with how hard he''s stroking his own ego. "You should have heard me last night, I killed it. You should come hear us play. Everyone thinks we''re amazing, especially the girls. I know you''ll love it, too," he says with a wink. He keeps saying "we" a lot to refer to the rest of the band, but something tells you he''s still talking about himself.'
-					act 'Finish class': gt 'gschool_lessons', 'short_break'
-				end
-				act 'Ivan':
-					*clr & cla
-					chrsm_exp += rand(1,2)
-					npc_rel['A3'] += 1
-					'<center><img <<$set_imgh>> src="images/locations/pavlovsk/school/classroom/talkboy' + rand(1,3) + '.jpg"></center>'
-					'With a confident smile, Ivan starts to tell you about a recent match he had at the community center. "This kid I''ve never seen before comes up to me and starts talking shit, saying my form is bad and that I couldn''t hit someone even if they were standing still right in front of me," he says with a scoff. "I told him to put his money where his mouth is and get in the ring, and guess what happened?"'
-					*nl
-					'"You beat the crap out of him?" You say with a smile.'
-					*nl
-					'Ivan laughs and you can see his chest puff out slightly. "Of course! The best part is that his girlfriend was there to see it happen, and while he was lying on the mat knocked out, she gave me her number."'
-					act 'Finish class': gt 'gschool_lessons', 'short_break'
-				end
-				act 'Bella':
+				intel_exp += rand(0,1)
+				traits['nerd_lessons'] += 1
+				if traits['nerd_status'] < 3: gs 'willpower', 'pay', 'self'
+				gs 'stat'				
+				'<center><img <<$set_imgh>> src="images/locations/pavlovsk/school/classroom/literature/work2.jpg"></center>'
+				*nl
+				'You actively take part in the lesson, raising your hand to answer questions, following along in your textbook, and working quietly on the worksheets when given them.'
+				act 'Keep working':
 					*clr & cla
-					chrsm_exp += rand(1,2)
-					npc_rel['A22'] += 1
-					'<center><img <<$set_imgh>> src="images/locations/pavlovsk/school/classroom/talkgirl' + rand(1,3) + '.jpg"></center>'
-					'"God, this place is more like a daycare than a high school." Bella says, scoffing in disgust. A moment later, a group of kids start talking and laughing loud enough to disrupt the class. "See what I mean?" she adds as she rolls her eyes. "They''re practically adults but they act so childish. I hate it. They need to act their age, like I do."'
-					act 'Finish class': gt 'gschool_lessons', 'short_break'
+					grupvalue[3] +=1
+					pcs_grades += rand(0,1)
+					intel_exp += rand(1,2)
+					'<center><img <<$set_imgh>> src="images/locations/pavlovsk/school/classroom/ask.jpg"></center>'
+					'Unlike most of the students in your class, you stay focused on your work.'
+					act 'Wait for the end of the lesson': gs 'gschool_lessonsev3', 'working'
 				end
-				act 'Veronika':
+				act 'Talk to someone':
 					*clr & cla
-					chrsm_exp += rand(1,2)
-					npc_rel['A141'] += 1
-					'<center><img <<$set_imgh>> src="images/locations/pavlovsk/school/classroom/talkgirl' + rand(1,3) + '.jpg"></center>'
-					'You try talking to Veronika, but she has little to say, which is no surprise; she''s always been standoffish. Still, she doesn''t outright tell you to leave you alone, so you take it as a sign that she''s okay with listening to you talk.'
-					act 'Finish class': gt 'gschool_lessons', 'short_break'
-				end
-				if npc_grupTipe['A189'] = 4:
-					act 'Niko':
+					'<center><img <<$set_imgh>> src="images/locations/pavlovsk/school/classroom/talk.jpg"></center>'
+					pcs_grades -= rand(0,1)
+					'You tell yourself that you''ve worked long enough and deserve a break. Looking around the room, you decide to talk to...'
+					act 'Vicky':
 						*clr & cla
+						pcs_mood += 10
 						chrsm_exp += rand(1,2)
-						gs 'stat'
-						'<center><b><h4><font color=#E400FF><<"Nikolai [Niko] Volkov">></font></h4></b></center>'
-						if NikoPayback > 0:
-							'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/boy/niko/nikomisc/avatars/<<week>>.jpg"></center>'
-							'As you approach Niko, he sneers at you before saying, "What do you want?" You carefully reply with, "Hey I just want to talk." Scoffs then says, "Fine, why not?" You and Niko spend the next few minutes having a strained conversation until the end of the period.'
-						elseif NikoVolkovQW >= 5:
-							npc_rel['A189'] += 2
-							'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/boy/niko/nikoev/avatars/<<week>>.jpg"></center>'
-							'As you approach Niko, he gives you a warm smile before saying, "My princess graces with me with her presence. How can be of assistance?" You giggle before replying, "I have spare time and I can''t think of a better use of my time then spending it with you." Niko chuckles then grabs onto your hand, lifting it toward his face and giving it a soft kiss before saying, "Your wish is my command." You both the next few minutes chatting while exchanging loving glares until the end of the period.'
-						else
-							npc_rel['A189'] += 1
-							'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/boy/niko/nikoev/avatars/<<week>>.jpg"></center>'
-							'As you approach Niko, he gives you a warm smile before saying, "Ahh a lovely princess decides to grace me with her presence. How can I be of assistance?" You giggle before replying, "You''re so weird, I just want to chat for a bit okay?" Niko chuckles then grabs onto your hand, lifting it toward his face and giving it a soft kiss before saying, "Your wish is my command." You both begin chatting until the end of the period.'
-						end
+						npc_rel['A15'] += 1
+						'<center><img <<$set_imgh>> src="images/locations/pavlovsk/school/classroom/talkgirl' + rand(1,3) + '.jpg"></center>'
+						'"I saw this video of an American girl dancing all sexy and stuff, and I''m thinking of learning the dance. Next time I go to the community center, I''ll show up all the girls and steal their boyfriends!" she jokes with a playful smile, but you notice a wicked twinkle in her eyes.'
+						*nl
+						'Vicky''s bubbly personality makes her easy and fun to talk to, and you end up spending the rest of class smiling and laughing with her.'
+						act 'Finish class': gt 'gschool_lessons', 'short_break'
+					end
+					act 'Lena':
+						*clr & cla
+						chrsm_exp += rand(1,2)
+						npc_rel['A20'] += 1
+						'<center><img <<$set_imgh>> src="images/locations/pavlovsk/school/classroom/talkgirl' + rand(1,3) + '.jpg"></center>'
+						'Lena sighs heavily, "Fuck, what''s taking her so long?"'
+						*nl
+						'"Who are you waiting for?" you ask.'
+						*nl
+						'"Lera! She had to go take a piss but she''s taking forever," she snaps back. "Her tongue probably needed a break anyways..." she mumbles quietly after a moment, a small smile spreading across her face.'
 						act 'Finish class': gt 'gschool_lessons', 'short_break'
 					end
+					act 'Lera':
+						*clr & cla
+						chrsm_exp += rand(1,2)
+						npc_rel['A21'] += 1
+						'<center><img <<$set_imgh>> src="images/locations/pavlovsk/school/classroom/talkgirl' + rand(1,3) + '.jpg"></center>'
+						'"It''s hard enough having my dad as a teacher at school, but now that freak Lesco is living with us." Lera spends the rest of class talking about all the awkward run-ins she''s had with her dad in school, and how she and Lena had to beat the shit out of anyone that tried spreading weird rumors about her being "close" to her cousin Lesco.'
+						act 'Finish class': gt 'gschool_lessons', 'short_break'
+					end
+					act 'Radomir':
+						*clr & cla
+						chrsm_exp += rand(1,2)
+						npc_rel['A154'] += 1
+						'<center><img <<$set_imgh>> src="images/locations/pavlovsk/school/classroom/talkboy' + rand(1,3) + '.jpg"></center>'
+						'You try talking to Radomir, but it''s hard to get a word in with how hard he''s stroking his own ego. "You should have heard me last night, I killed it. You should come hear us play. Everyone thinks we''re amazing, especially the girls. I know you''ll love it, too," he says with a wink. He keeps saying "we" a lot to refer to the rest of the band, but something tells you he''s still talking about himself.'
+						act 'Finish class': gt 'gschool_lessons', 'short_break'
+					end
+					act 'Ivan':
+						*clr & cla
+						chrsm_exp += rand(1,2)
+						npc_rel['A3'] += 1
+						'<center><img <<$set_imgh>> src="images/locations/pavlovsk/school/classroom/talkboy' + rand(1,3) + '.jpg"></center>'
+						'With a confident smile, Ivan starts to tell you about a recent match he had at the community center. "This kid I''ve never seen before comes up to me and starts talking shit, saying my form is bad and that I couldn''t hit someone even if they were standing still right in front of me," he says with a scoff. "I told him to put his money where his mouth is and get in the ring, and guess what happened?"'
+						*nl
+						'"You beat the crap out of him?" You say with a smile.'
+						*nl
+						'Ivan laughs and you can see his chest puff out slightly. "Of course! The best part is that his girlfriend was there to see it happen, and while he was lying on the mat knocked out, she gave me her number."'
+						act 'Finish class': gt 'gschool_lessons', 'short_break'
+					end
+					act 'Bella':
+						*clr & cla
+						chrsm_exp += rand(1,2)
+						npc_rel['A22'] += 1
+						'<center><img <<$set_imgh>> src="images/locations/pavlovsk/school/classroom/talkgirl' + rand(1,3) + '.jpg"></center>'
+						'"God, this place is more like a daycare than a high school." Bella says, scoffing in disgust. A moment later, a group of kids start talking and laughing loud enough to disrupt the class. "See what I mean?" she adds as she rolls her eyes. "They''re practically adults but they act so childish. I hate it. They need to act their age, like I do."'
+						act 'Finish class': gt 'gschool_lessons', 'short_break'
+					end
+					act 'Veronika':
+						*clr & cla
+						chrsm_exp += rand(1,2)
+						npc_rel['A141'] += 1
+						'<center><img <<$set_imgh>> src="images/locations/pavlovsk/school/classroom/talkgirl' + rand(1,3) + '.jpg"></center>'
+						'You try talking to Veronika, but she has little to say, which is no surprise; she''s always been standoffish. Still, she doesn''t outright tell you to leave you alone, so you take it as a sign that she''s okay with listening to you talk.'
+						act 'Finish class': gt 'gschool_lessons', 'short_break'
+					end
+					if npc_grupTipe['A189'] = 4:
+						act 'Niko':
+							*clr & cla
+							chrsm_exp += rand(1,2)
+							gs 'stat'
+							'<center><b><h4><font color=#E400FF><<"Nikolai [Niko] Volkov">></font></h4></b></center>'
+							if NikoPayback > 0:
+								'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/boy/niko/nikomisc/avatars/<<week>>.jpg"></center>'
+								'As you approach Niko, he sneers at you before saying, "What do you want?" You carefully reply with, "Hey I just want to talk." Scoffs then says, "Fine, why not?" You and Niko spend the next few minutes having a strained conversation until the end of the period.'
+							elseif NikoVolkovQW >= 5:
+								npc_rel['A189'] += 2
+								'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/boy/niko/nikoev/avatars/<<week>>.jpg"></center>'
+								'As you approach Niko, he gives you a warm smile before saying, "My princess graces with me with her presence. How can be of assistance?" You giggle before replying, "I have spare time and I can''t think of a better use of my time then spending it with you." Niko chuckles then grabs onto your hand, lifting it toward his face and giving it a soft kiss before saying, "Your wish is my command." You both the next few minutes chatting while exchanging loving glares until the end of the period.'
+							else
+								npc_rel['A189'] += 1
+								'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/boy/niko/nikoev/avatars/<<week>>.jpg"></center>'
+								'As you approach Niko, he gives you a warm smile before saying, "Ahh a lovely princess decides to grace me with her presence. How can I be of assistance?" You giggle before replying, "You''re so weird, I just want to chat for a bit okay?" Niko chuckles then grabs onto your hand, lifting it toward his face and giving it a soft kiss before saying, "Your wish is my command." You both begin chatting until the end of the period.'
+							end
+							act 'Finish class': gt 'gschool_lessons', 'short_break'
+						end
+					end
 				end
 			end
+		else
+			 act 'Listen attentively (<font color="red"><<will_cost>> Willpower</font>)': '<br><font color="red">You don''t have enough willpower to use this action.</font>'
 		end
+		
 		act'Daydream':
 			*clr & cla
 			pcs_grades -= rand(0,1)

+ 1 - 1
locations/kuhrPar.qsrc

@@ -30,7 +30,7 @@ gs 'themes', 'indoors'
 '<center><img <<$set_imgh>> src="images/locations/pavlovsk/resident/apartment/home/kuhrpar.jpg"></center>'
 if hour = 7 and week < 6 and indorf = 0:
 	'<a href="exec:gt''father''">Your stepfather</a>, <a href="exec:gt''mother''">mother</a>, <a href="exec:gt ''sister_chat'', ''sister_chat''">Anya</a> and <a href="exec:gt ''brother'', ''start''">Kolka</a> are sitting at the table eating breakfast. You could sit down and join them for breakfast or just grab something and go.'
-elseif hour = 7 and week > 5:
+elseif hour = 7 and week > 5 and indorf = 0:
 	'<a href="exec:gt''father''">Your stepfather</a>, <a href="exec:gt''mother''">mother</a>, and <a href="exec:gt ''brother'', ''start''">Kolka</a> are sitting at the table eating breakfast. It seems your sister is sleeping in again. You could sit down and join them for breakfast or just grab something and go.'
 elseif hour = 18 and minut <= 30 and indorf = 0:
 	'<a href="exec:gt''father''">Your stepfather</a>, <a href="exec:gt''mother''">mother</a>, <a href="exec:gt ''sister_chat'', ''sister_chat''">Anya</a> and <a href="exec:gt ''brother'', ''start''">Kolka</a> are sitting at the table eating dinner. You could sit down and join them for dinner or just grab something and go.'

+ 46 - 44
locations/liames.qsrc

@@ -57,9 +57,9 @@ else
 	'The old theatre housing a burlesque club is closed now. It is open every day 18:00 - 22:00'
 end
 
-if home_owned[4] = 1: act '<b>Go home.</b>':gt'korr2x'
+if home_owned[4] = 1: act '<b>Go home</b>':gt'korr2x'
 
-if hour >= 8 and hour <= 17 and exhibitionQW = 3: act 'Search for the shop on the card from Kseniya.': gt 'exhibitionistshop', 'start'
+if hour >= 8 and hour <= 17 and exhibitionQW = 3: act 'Search for the shop on the card from Kseniya': gt 'exhibitionistshop', 'start'
 
 act 'wait':gs 'obj_din', 'wait'
 
@@ -69,35 +69,22 @@ if home_owned[4] = 1 and hour = meethour:
 	if svidanie[2] = 1:'<b>Near the entrance you expect <a href="exec:lover_number = 2 & gt ''lover_meet'',''start''"><<$loverdesc[2]>></a></b>'
 end
 
-streetrand = RAND(0,100)
-if streetrand >= 60 and pcs_lover < 3:
-	vnerand = RAND(0,1200)
-	if vnerand <= pcs_apprnc:
-		gs'boy'
-		'To you came <<$boybody>> <<$boybod>> <<$boyface>>. It <<$boyClo>>'
-		'The guy introduced himself as <<$boydesc>> and I asked for your telephone number.'
-
-		act 'Tell him your telephone number.':
-			cla
-			gs'boyfrend', 'start'
-			stopboy = 0
-			'<<$boydesc>> saved your phone number and left.'
-			act 'Complete outing.':gt 'liames'
-		end
+if rand(0,100) >= 60 and pcs_lover < 3 and rand(0,1200) <= pcs_apprnc:
+	gs 'boy'
+	'To you came <<$boybody>> <<$boybod>> <<$boyface>>. It <<$boyClo>>'
+	'The guy introduced himself as <<$boydesc>> and asks you for your telephone number.'
+
+	act 'Walk away': gt 'liames'
+	act 'Tell him your telephone number.':
+		cla
+		gs'boyfrend', 'start'
+		stopboy = 0
+		'<<$boydesc>> saved your phone number and left.'
+		act 'Continue': gt 'liames'
 	end
 end
 
-if stallionQ = 3:
-	*clr
-	cla
-	'There is a rumbling in your stomach, you need to use the restroom. There appears to be a public restroom tucked into the corner of a building. Unfortunately, the female one has a sign reading, "Out of order."'
-	act 'Use the Men''s Restroom':gt 'stallion','start'
-	act 'Hold it':stallionQ = 1 & gt 'liames'
-end
-
-
-temp = RAND(1,100)
-if temp >= 90:
+if rand(1,100) >= 95:
 	*clr & cla
 	minut += 5
 	gs'stat'
@@ -105,37 +92,38 @@ if temp >= 90:
 
 	'Making your way down High Street, you see a woman waiting patiently while an artist paints her portrait.'
 
-	act 'Further':gt'liames'
+	act 'Continue': gt'liames'
 end
 
 
 if hour >= 15 and hour <= 22 and tusa = 0:
-	act'Local Hangout':
+	act 'Go to the local hangout':
 		*clr & cla
-		gs'stat'
-		gs'dibodi'
+		menu_off = 1
 		minut += 20
 		tusa = 1
+		gs 'dibodi'
+		gs'stat'
 		'<center><img <<$set_imgh>> src="images/locations/oldtown/photo.jpg"></center>'
 		'Local youth get-together.'
-		act 'Discovering':gt 'dibodi', 'sgtusa'
+		act 'Explore it': gt 'dibodi', 'sgtusa'
 	end
-end
-
-
-
-if hour >= 15 and hour <= 22 and tusa = 1 and tusnyakday ! daystart:
-	act'Local Hangout':
+elseif hour >= 15 and hour <= 22 and tusa = 1 and tusnyakday ! daystart:
+	act 'Go to the local hangout':
 		*clr & cla
-		gs'stat'
-		gs'dibodi'
+		menu_off = 1
 		minut += 20
+		gs'dibodi'
+		gs'stat'
 		'<center><img <<$set_imgh>> src="images/locations/oldtown/photo.jpg"></center>'
 		'The girls and boys at the local hangout happily greet you.'
 
+		act'Leave': gt 'liames'
+		
 		if $pantyworntype = 'none' and sttan = 0:
-			'- A <<$pcs_nickname>> campaign wears panties - said one of the boys.'
-			act 'And she trusted you with this?':gt 'dibodi', 'sotusa'
+			cla
+			'"Hey guys, <<$pcs_nickname>> is going commando," one of the boys says.'
+			act 'Continue':gt 'dibodi', 'sotusa'
 		end
 
 !!		if sttan = 1 and $pantyworntype = 'none':
@@ -148,9 +136,23 @@ if hour >= 15 and hour <= 22 and tusa = 1 and tusnyakday ! daystart:
 !!			'- Vav <<$pcs_nickname>> truselya put.'
 !!			act 'Answer':gt'etoexhib','pos3'
 !!		end
+	end
+end
 
-		act'Escape':gt 'liames'
+if stallionQ = 3:
+	*clr & cla
+	'There is a rumbling in your stomach, you need to use the restroom. There appears to be a public restroom tucked into the corner of a building. Unfortunately, the female one has a sign reading, "Out of order."'
+	gs 'willpower', 'misc', 'resist', 'easy'
+	if will_cost <= pcs_willpwr:
+		act 'Hold it (<<will_cost>> Willpower)':
+			gs 'willpower', 'pay', 'resist'
+			stallionQ = 1
+			gt 'liames'
+		end
+	else
+		act 'Hold it (<font color="red"><<will_cost>> Willpower</font>)': '<br><font color="red">You don''t have enough willpower to use this action.</font>'
 	end
+	act 'Use the Men''s Restroom': gt 'stallion','start'
 end
 
 --- liames ---------------------------------

+ 0 - 6
locations/loadg.qsrc

@@ -89,12 +89,6 @@ end
 if BuyHous = 1: home_owned[1] = 2
 if placeMansion > 0: home_owned[5] = placeMansion
 if dachaest > 0: home_owned[3] = dachaest
-if storyline = 1 and ParHomeBlock = 0:
-	home_owned[2] = 1
-elseif storyline = 1 and ParHomeBlock = 1:
-	home_owned[2] = 0
-end
-killvar 'ParHomeBlock'
 killvar 'placemansion'
 killvar 'dachaest'
 killvar 'housr'

+ 1 - 1
locations/mirafather.qsrc

@@ -66,7 +66,7 @@ else
 					'Mira is not home and you have no idea where she might be. Maybe you should go look around town.'
 				end
 				act 'Go back to the village center':gt 'gadukino'
-				if miraprost > 0: act 'Go to the highway': gt 'gadprostitutes','start'
+				if miraprost > 0: minut += 20 & act 'Go to the highway': gt 'gadprostitutes','start'
 			elseif mira_temp > 10 and month >= 4 and month <= 10 and hour <= 18:
 				*clr & cla
 				minut += 2

+ 1 - 1
locations/miroslava.qsrc

@@ -824,7 +824,7 @@ if $ARGS[0] = 'Start' or $ARGS[0] = '':
 									*clr & cla
 									minut += 15
 									pcs_horny += rand(5,10)
-									Mira_no += rand(10,30)
+									Mira_no += 7
 									miraday = daystart
 									npc_QW['A60'] = 21
 									npc_rel['A60'] = 1

+ 4 - 4
locations/mother.qsrc

@@ -468,7 +468,6 @@ if $ARGS[0] = '':
 					end
 				end
 
-				gs 'mother', 'pregreact'
 				act 'Offer to help around the house':
 					cla
 					minut += 60
@@ -545,6 +544,7 @@ if $ARGS[0] = '':
 						end
 					end
 				end
+				gs 'mother', 'pregreact'
 			else
 				gt $loc, $metka
 			end
@@ -919,9 +919,9 @@ if $ARGS[0] = 'pregreactbrother':
 		'Still, you can''t fault Kolka for that. There isn''t much else he could have done in that situation. If you survive this, you fully intend to reward your brother for his moment of bravery.'
 		'Your eyes well with tears that begin to stream down past your quivering lips.'
 		'"Where am I supposed to go?"'
-		'"I don''t know, but you can''t stay here?"'
+		'"I don''t know, but you can''t stay here."'
 		'"Why not?" You barely feel the words leave your mouth.'
-		'"Why not?" Your <<$npc_nickname[''A29'']>> repeats indignantly, anger rising in her voice.'
+		'"Why not?!" Your <<$npc_nickname[''A29'']>> repeats indignantly, anger rising in her voice.'
 		'"Because you fucked your own brother and that is unacceptable. I can''t believe I''m even having to explain this. Now leave, before things get worse for you."'
 		'You reluctantly leave the apartment, closing the door behind you. You slump to the floor. What are you going to do now? Can you even afford your own apartment? You continue to sob in the same position for several minutes, too distraught to even notice if anyone else was around.'
 		gs 'mother', 'kickedout', 'kolka'
@@ -957,7 +957,7 @@ if $ARGS[0] = 'pregreactbrother':
 		'"Where am I supposed to go?"'
 		'"I don''t know, but you can''t stay here?"'
 		'"Why not?" You barely feel the words leave your mouth.'
-		'"Why not?" Your <<$npc_nickname[''A29'']>> repeats indignantly, anger rising in her voice.'
+		'"Why not?!" Your <<$npc_nickname[''A29'']>> repeats indignantly, anger rising in her voice.'
 		'"Because you fucked your own brother and that is unacceptable. I can''t believe I''m even having to explain this. Now leave, before things get worse for you."'
 		'You reluctantly leave the apartment, closing the door behind you. You slump to the floor. What are you going to do now? Can you even afford your own apartment? You continue to sob in the same position for several minutes, too distraught to even notice if anyone else was around.'
 		gs 'mother', 'kickedout', 'kolka'

+ 2 - 1
locations/pavSharedApt.qsrc

@@ -1,6 +1,7 @@
 # pavSharedApt
 
 gs 'themes', 'indoors'
+close all
 
 if $ARGS[0] = 'update':
 	rentWeekly = 2000
@@ -306,7 +307,7 @@ if $ARGS[0] = 'start':
 		*clr & cla
 		pavIntroStep = 0
 		introDone = 0
-		minut = 5
+		minut += 5
 		!Need to have some actual story to this with NPC reactions.
 		'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/boy/dimka/revenge/crying.jpg"></center>'
 		'You''ve been kicked out of the apartment due to having children.'

+ 14 - 2
locations/preSYS.qsrc

@@ -144,7 +144,7 @@ if $ARGS[0] = 'CSBStart':
 		
 		if date_toggle ! 1:
 			if birthmonth >= 7: birthyear -= 1
-			if birthmonth = 6 and day > 1: birthyear -= 1
+			if birthmonth = 6 and birthday > 1: birthyear -= 1
 		end
 		
 		killvar '$startdob'
@@ -299,7 +299,7 @@ if $ARGS[0] = 'SGStart2':
 		!!This is to account for the school year not matching up with the calendar year.
 		if date_toggle ! 1:
 			if birthmonth >= 7: birthyear -= 1
-			if birthmonth = 6 and day > 1: birthyear -= 1
+			if birthmonth = 6 and birthday > 1: birthyear -= 1
 		end
 		killvar '$startdob'
 		killvar 'date_toggle'
@@ -593,6 +593,9 @@ if $ARGS[0] = 'nerd':
 	grupvalue[6] = 10
 	genbsize = 22
 	salo = 100
+	traits['nerd_points'] = 60
+	traits['nerd_status'] = 2
+	traits['nerd_lernHome'] = 5
 end
 
 if $ARGS[0] = 'nerdqueen':
@@ -646,6 +649,8 @@ if $ARGS[0] = 'goodstudent':
 	act 'Select another': gt 'preSYS', 'charselect'
 	act 'Confirm this option':
 		gs 'preSYS', 'nerd'
+		traits['nerd_points'] = 100
+		traits['nerd_status'] = 3
 		alterstrtimg = 9
 		if glass < 1 : glass = 1
 		pcs_intel = 50
@@ -1065,6 +1070,7 @@ if $ARGS[0] = 'troublemaker':
 	'You are a troublemaker. Nothing makes you happier than causing problems, whether it be petty larceny, getting into fights, or vandalizing. You live for the thrill of breaking the rules. You get along fairly well with the gopniks and they accept you as a kindred spirit. They seem to love your willingness to jump head first into any and all trouble you run across - and if you can''t find any, you will happily make your own, which keeps things lively. Because of your behavior, you have problems at home and school. This is especially true with your mother and stepfather, who see you going down the wrong path. The teachers and the police all know who you are.'
 	act 'Select another': gt 'preSYS', 'charselect'
 	act 'Confirm this option':
+		traits['nerd_points'] = -50
 		gs 'preSYS', 'gopnik'
 		gs 'npc_relationship', 'socialgroup_setting', 0, 0, -10, 0, -10, 0
 		alterstrtimg = 19
@@ -1108,6 +1114,7 @@ if $ARGS[0] = 'vitekgf':
 	'As you developed, he started to take an interest in you as well. Soon thereafter the two of you started dating. You’’re not technically a gopnik - you are considered more of a wanna-be - but the rest of the gopniks seem to accept you anyways. You’’re not sure what would happen if you ever broke up with <<$npc_nickname[''A9'']>>, however, as being his girlfriend and hanging out with the other gopniks has cost you any real, close friends outside of their group.'
 	act 'Select another': gt 'preSYS', 'charselect'
 	act 'Confirm this option':
+		traits['nerd_points'] = -10
 		gs 'preSYS', 'gopnik'
 		alterstrtimg = 20
 		pcs_sprt = 30
@@ -1173,6 +1180,7 @@ if $ARGS[0] = 'alternative':
 	'Unlike the gopniks, you have far less interest in fighting or causing problems and a far more interest in looking for a good time - you love to party more than anything else. The cool kids don''t completely look down their nose at you, even if they don''t aprove or you clothes, they respect your love of looking nice and having a good time. Because of your behavior, you have problems at home and school. This is especially true with your mother and stepfather, who see you going down the wrong path.'
 	act 'Select another': gt 'preSYS', 'charselect'
 	act 'Confirm this option':
+		traits['nerd_points'] = -20
 		gs 'preSYS', 'gopnik'
 		alterstrtimg = 21
 		pcs_vital = 40
@@ -1309,6 +1317,9 @@ if $ARGS[0] = 'goodgirl':
 	'You are a good girl, the kind parents, teachers and adults love, but the other kids hate. You always reminded the teacher to give out homework and you would tell on anyone for doing anything. You love the attention you get from adults, and while at times it can be lonely you are still pretty happy knowing you''re a good girl. You also regularly attend church just like any good girl should. The nerds seem to tolerate you the most, you suppose because they almost never misbehave and always do their homework anyways.'
 	act 'Select another': gt 'preSYS', 'charselect'
 	act 'Confirm this option':
+		traits['nerd_points'] = 100
+		traits['nerd_status'] = 3
+		traits['nerd_lernHome'] = 5
 		gs 'preSYS', 'outcast'
 		gs 'npc_relationship', 'socialgroup_setting', -5, -5, 0, -20, 0, 0
 		alterstrtimg = 24
@@ -1425,6 +1436,7 @@ if $ARGS[0] = 'goth':
     'You are the school''s resident Goth. The Dark Temptress that all the boys secretly dream of, weaver of bad poetry and suicide covenants... Yep, people have too much imagination. Most adults think that you are going to sacrifice their children, everyone seems to think you are going to sacrifice someone or commit suicide. The school''s kids aren''t better, with the so-called "cool girls" leading an ostracism campaign against you... Sigh... Fortunately, not everyone is a brainwashed sheep happily following all along, a few think for themselves. The nerds like your reading proclivity and that you are into some of the same things they are; you think they might even invite you to their game one day. A couple of the Gopniks like your party attitude, specifically the kids in the band Pizdá Buysto seem to respect your artistic disposition. Or maybe their lead singer just wants to get in your panties, it''s hard to tell.'
     act 'Select another': gt 'preSYS', 'charselect'
 	act 'Confirm this option':
+		traits['nerd_points'] = -10
 		gs 'preSYS', 'outcast'
 		gs 'npc_relationship', 'socialgroup_setting', -20, -10, 0, -10, 0, -10
 		gs 'npc_relationship', 'socialgroup_setting_boys', +5, +5, +5, +5, +5, +5

+ 67 - 49
locations/preSYS2.qsrc

@@ -13,6 +13,13 @@ if $ARGS[0] = 'start':
 	act 'Set money (<<money>>₽)': money = input 'Set Cash Amount' & gt'preSYS2','start'
 	if custom_csb ! 1: act 'Return to preset character menu': gt 'preSYS', 'charselect'
 	act 'Confirm these options':
+		if $soc_grup = 'nerd':
+			traits['nerd_points'] = 60
+			traits['nerd_status'] = 2
+			traits['nerd_lernHome'] = 5
+		elseif $soc_grup = 'gopnik':
+			traits['nerd_points'] = -20
+		end
 		if pcs_inhib < 10: pcs_inhib = 10
 		!!This line should get sveta to wear school uniform because she has no other clothing with > 50
 		if pcs_inhib > 50: gs 'clothing', 'wear', 'school', 6
@@ -31,6 +38,7 @@ if $ARGS[0] = 'start':
 end
 
 if $ARGS[0] = 'modapp':
+	cla & *clr
 	if genbsize = 0:genbsize = 12
 
 	'Choose base genetic breast size:'
@@ -231,7 +239,12 @@ if $ARGS[0] = 'modite_mis':
 end
 
 if $ARGS[0] = 'modpur':
-	cls
+	*clr & cla
+	if $ARGS[1] ! '':
+		$currentpursetype = $ARGS[1]
+		currentpursenumber = ARGS[2]
+	end
+	*clr & cla
 	if $currentpursetype = '': 
 		'You do not own a purse.'
 	else
@@ -242,60 +255,51 @@ if $ARGS[0] = 'modpur':
 		end
 		'Your current purse is <<$currentpursetype>>_<<currentpursenumber>>.'
 	end
+	act 'Return': gt'preSYS2','start'
 	act 'Get cheap':
-		nbag = input ("Please enter a value between 1 to 14")
-		if nbag < 1 or nbag > 14: 
-			gt 'preSYS2','modpur'
-		else
-			bag = 1
-			$currentpursetype = 'cheap'
-			currentpursenumber = nbag
-			gt 'preSYS2','modpur'
-		end
+		*clr & cla
+		'<center><img src="images/locations/city/citycenter/mall/gm.png"></center>'
+		i = 1
+		:loopcheappurses
+		*p '<a href="exec:gt ''preSYS2'', ''modpur'', ''cheap'', <<i>>"><img src="images/pc/purses/cheap/<<i>>.jpg" 	height="300" /></a>'
+		i += 1
+		if i <= 14:jump 'loopcheappurses'
 	end	
 	act 'Get dolls':
-		nbag = input 'Please enter a value between 1 to 22'
-		if nbag < 1 or nbag > 22: 
-			gt 'preSYS2','modpur'
-		else
-			bag = 1
-			$currentpursetype = 'dolls'
-			currentpursenumber = nbag
-			gt 'preSYS2','modpur'
-		end
+		*clr & cla
+		'<center><img src="images/locations/city/island/dolls.png"></center>'
+		i = 1
+		:loopdollspurses
+		*p '<a href="exec:gt ''preSYS2'', ''modpur'', ''dolls'', <<i>>"><img src="images/pc/purses/cheap/<<i>>.jpg" 	height="300" /></a>'
+		i += 1
+		if i <= 22:jump 'loopdollspurses'
 	end
 	act 'Get fashionista':
-		nbag = input 'Please enter a value between 1 to 15'
-		if nbag < 1 or nbag > 15: 
-			gt 'preSYS2','modpur'
-		else
-			bag = 1
-			$currentpursetype = 'fashionista'
-			currentpursenumber = nbag
-			gt 'preSYS2','modpur'
-		end
+		*clr & cla
+		'<center><img src="images/locations/city/citycenter/mall/fashionistat.png"></center>'
+		i = 1
+		:loopfashionistapurses
+		*p '<a href="exec:gt ''preSYS2'', ''modpur'', ''fashionista'', <<i>>"><img src="images/pc/purses/fashionista/<<i>>.jpg" 	height="300" /></a>'
+		i += 1
+		if i <= 15:jump 'loopfashionistapurses'
 	end
 	act 'Get kats':
-		nbag = input 'Please enter a value between 1 to 14'
-		if nbag < 1 or nbag > 14: 
-			gt 'preSYS2','modpur'
-		else
-			bag = 1
-			$currentpursetype = 'kats'
-			currentpursenumber = nbag
-			gt 'preSYS2','modpur'
-		end
+		*clr & cla
+		'<center><img src="images/locations/city/citycenter/mall/pussycat.png"></center>'
+		i = 1
+		:loopkatspurses
+		*p '<a href="exec:gt ''preSYS2'', ''modpur'', ''kats'', <<i>>"><img src="images/pc/purses/kats/<<i>>.jpg" 	height="300" /></a>'
+		i += 1
+		if i <= 14:jump 'loopkatspurses'
 	end
 	act 'Get moncheri':
-		nbag = input 'Please enter a value between 1 to 17'
-		if nbag < 1 or nbag > 17: 
-			gt 'preSYS2','modpur'
-		else
-			bag = 1
-			$currentpursetype = 'boutique'
-			currentpursenumber = nbag
-			gt 'preSYS2','modpur'
-		end
+		*clr & cla
+		'<center><img src="images/locations/city/citycenter/mall/moncheri.png"></center>'
+		i = 1
+		:loopboutiquepurses
+		*p '<a href="exec:gt ''preSYS2'', ''modpur'', ''boutique'', <<i>>"><img src="images/pc/purses/moncheri/<<i>>.jpg" 	height="300" /></a>'
+		i += 1
+		if i <= 17:jump 'loopboutiquepurses'
 	end
 	act 'I do not want a purse':
 		bag = 0
@@ -303,7 +307,6 @@ if $ARGS[0] = 'modpur':
 		currentpursenumber = ''
 		gt 'preSYS2','modpur'
 	end	
-	act 'Return': gt'preSYS2','start'
 end
 !!This is used to set value, is used to avoid any values that go below 5.
 if $ARGS[0] = 'setval':
@@ -361,6 +364,15 @@ if $ARGS[0] = 'setval3':
 end
 
 if $ARGS[0] = 'setsalo':
+	*clr & cla
+	'20 = underweight, slight, wiry'
+	'40 = slender, skinny, lean'
+	'60 = healthy, toned, ripped'
+	'80 = cute, muscular'
+	'100 = chubby, curvy, herculean'
+	'120 = overweight, stocky'
+	'140 = fat, heavy set'
+
 	nstat = salo
 	nstat = input 'Enter value in multiples of 20. For example, 20, 40, 60 etc.'
 	if nstat > 200:
@@ -378,7 +390,7 @@ if $ARGS[0] = 'setsalo':
 end
 
 if $ARGS[0] = 'modgrup':
-	cls
+	*clr & cla
 	'Your current social group is <<$soc_grup>>.'
 	act 'Nerd, Geek, Student': $soc_grup = 'nerd'& gt 'preSYS2','modgrup'
 	act 'Athlete, Jock':$soc_grup = 'jock'& gt 'preSYS2','modgrup'
@@ -392,6 +404,7 @@ if $ARGS[0] = 'modgrup':
 end
 
 if $ARGS[0] = 'modatt':
+	*clr & cla
 	$metka = 'modatt'
 	'<center><b>Attributes</b></center>'
 	*nl
@@ -417,7 +430,7 @@ if $ARGS[0] = 'modatt':
 end
 
 if $ARGS[0] = 'modskl':
-	!cla
+	*clr & cla
 	act 'Mental skills':gt 'preSYS2','modskl_men'
 	act 'Sport skills':gt 'preSYS2','modskl_spo'
 	act 'Beauty skills':gt 'preSYS2','modskl_bea'
@@ -427,6 +440,7 @@ if $ARGS[0] = 'modskl':
 end
 
 if $ARGS[0] = 'modskl_men':
+	*clr & cla
 	$metka = 'modskl_men'
 	'<center><b>Mental Skills</b></center>'
 	*nl
@@ -443,6 +457,7 @@ if $ARGS[0] = 'modskl_men':
 end
 
 if $ARGS[0] = 'modskl_spo':
+	*clr & cla
 	$metka = 'modskl_spo'
 	'<center><b>Sport Skills</b></center>'
 	*nl
@@ -468,6 +483,7 @@ if $ARGS[0] = 'modskl_spo':
 end
 
 if $ARGS[0] = 'modskl_bea':
+	*clr & cla
 	$metka = 'modskl_bea'
 	'<center><b>Beauty skills</b></center>'
 	*nl
@@ -486,6 +502,7 @@ if $ARGS[0] = 'modskl_bea':
 end
 
 if $ARGS[0] = 'modskl_art':
+	*clr & cla
 	$metka = 'modskl_art'
 	'<center><b>Artistic Skills</b></center>'
 	*nl
@@ -503,6 +520,7 @@ if $ARGS[0] = 'modskl_art':
 end
 
 if $ARGS[0] = 'modskl_job':
+	*clr & cla
 	$metka = 'modskl_job'
 	'<center><b>Job Skills</b></center>'
 	*nl

+ 6 - 1
locations/road.qsrc

@@ -23,6 +23,11 @@ if $ARGS[0] = '':
 
 	if car > 0 and cardrive = 22 and ncarroad = nroad:'You parked <a href="exec:gs ''carF'', ''start''">your <<$car>></a> next to the road.'
 	if nroad = 0:act 'Walk to the City Industrial Region (0:15)':minut += 15 & gt 'nord'
+	if nroad = 10:
+		act 'Go to Gadukino (0:15)': minut += 15 & gt 'gadukino'
+		act 'Go to the train platform': gt 'train', 'village'
+		if npc_QW['A60'] > 15:act 'Look around for Mira': gt 'gadprostitutes', 'start'
+	end
 	if nroad = 16:act 'Check out the construction site (1:00)':minut += 60 & gt 'obekt'
 	if nroad = 20:
 		act 'Walk to Pavlovsk train station (0:15)': minut += 15 & gt 'pavtrain'
@@ -107,7 +112,7 @@ if $ARGS[0] = '':
 	elseif nroad = 10:
 		display_bb = 1
 		gs 'stat'
-		'You see a <a href="exec:gt ''train'', ''village''">railway platform</a> not far from the road. In the same direction, a dirt road leads to the village of <a href="exec:minut += 30 & gt ''gadukino''">Gadukino</a>.'
+		'You see a <a href="exec:gt ''train'', ''village''">railway platform</a> not far from the road. In the same direction, a dirt road leads to the village of <a href="exec:minut += 15 & gt ''gadukino''">Gadukino</a>.'
 		!if npc_QW['A60'] > 15 and gadriver_gang = 2:
 		!	'You and Mira can both <a href="exec:gt ''gadprostitutes'', ''start''">prostitute</a> yourselves around here.'
 		!elseif npc_QW['A60'] > 15:

+ 17 - 11
locations/saveupdater.qsrc

@@ -486,17 +486,6 @@ if mannareset ! 0:
 	killvar 'mannareset'
 end
 
-!!Update School NPCs for the disco
-if npc_updater < 2:
-	npc_updater = 2
-	
-	gs 'npcstatic1'
-	gs 'npcstatic2'
-	gs 'npcstatic3'
-	gs 'npcstatic4'
-	gs 'npcstatic5'
-end
-
 if array_updater = 0:
 	array_updater = 1
 	$oldnpcvars[0] = 'npc_app'
@@ -897,5 +886,22 @@ killvar 'oluuosegunday_count'
 killvar 'oluuosegunday_day'
 !! ----- Mom, Luda & Olu stuff ----- 0.8.0
 
+!!trait update
+if traits['update_1'] = 0:
+	traits['update_1'] = 1
+	
+	traits['alko_day'] = alko_trait_day 
+	traits['alko_points'] = alko_trait_counter
+	traits['alko_status'] = alko_trait
+	
+	killvar 'alko_trait_day'
+	killvar 'alko_trait_counter'
+	killvar 'alko_trait'
+end
+
+!! ----- Some bug cleanup ----- 0.8.0
+if pcs_gaming_exp > 0: gaming_exp += pcs_gaming_exp & killvar 'pcs_gaming_exp'
+!! ----- Some bug cleanup ----- 0.8.0
+
 --- saveupdater ---------------------------------
 

+ 3 - 3
locations/sister.qsrc

@@ -23,12 +23,12 @@ if $ARGS[0] = 'gdk':
 		'"What do you want? Fuck off!" Anya and her friends laugh and point at you, until you leave them alone.'
 		act 'Move away': SiSgdk = 0 & gt $loc, $metka
 	! Showing up after party invite
-	elseif week = 5 and ((daystart - (daystart mod 7)) / 7) mod 2 = 0 and sisterQW['party'] = 1 and daystart - sisterQW['partyday'] < 5:
+	elseif week = 5 and (daystart - (daystart mod 7)) mod 2 = 0 and sisterQW['party'] = 1 and daystart - sisterQW['partyday'] < 5:
 		'<center><img <<$set_imgh>> src="images/characters/pavlovsk/resident/anya/community/anyaroma2.jpg"></center>'
 		'Anya and some of her friends are dressed up organizing themselves before going to the party. Anya sees you and waves you to her. "Come on, I was starting to wonder if you were going to show up."'
 		gs 'sister', 'partyanswer', 'anya'
 	! Anya heading to party
-	elseif npc_rel['A33'] >= 70 and week = 5 and ((daystart - (daystart mod 7)) / 7) mod 2 = 0 and (sisterQW['party'] = 0 or sisterQW['party'] = 2):
+	elseif npc_rel['A33'] >= 70 and week = 5 and (daystart - (daystart mod 7)) mod 2 = 0 and (sisterQW['party'] = 0 or sisterQW['party'] = 2):
 		minut += 5
 		gs 'stat'
 		if npc_rel['A57'] >= 80:
@@ -419,7 +419,7 @@ if $ARGS[0] = 'scene1':
 !1 - knows about the parties
 !2 - agreed to go to the party
 !!again want to change rexs party to only every other Friday
-		elseif week < 5 and week > 1 and ((daystart - (daystart mod 7)) / 7) mod 2 = 0 and pcs_vag > 0 and (sisterQW['party'] = 0 or sisterQW['party'] = 2) and daystart - sisterQW['partyday'] > 3:
+		elseif week < 5 and week > 1 and (daystart - (daystart mod 7)) mod 2 = 0 and pcs_vag > 0 and (sisterQW['party'] = 0 or sisterQW['party'] = 2) and daystart - sisterQW['partyday'] > 3:
 			'Roma looks up at you, suddenly remembering something. "<<$pcs_nickname>>, Rex''s apartment is available on Friday and he''s having a party, do you want to go?"'
 			sisterQW['partyday'] = daystart
 			minut += 5

+ 1 - 1
locations/sister_chat.qsrc

@@ -280,7 +280,7 @@ if $ARGS[0] = 'sister_chat':
 					'"Oh, sister, <<$tmpstr>>I think the father is <<$tmpstr2>>"'
 				end
 			end
-		elseif week < 5 and week > 1 and ((daystart - (daystart mod 7)) / 7) mod 2 = 0 and pcs_vag > 0 and npc_rel['A33'] >= 80 and (sisterQW['party'] = 0 or sisterQW['party'] = 2) and daystart - sisterQW['partyday'] > 3:
+		elseif week < 5 and week > 1 and (daystart - (daystart mod 7)) mod 2 = 0 and pcs_vag > 0 and npc_rel['A33'] >= 80 and (sisterQW['party'] = 0 or sisterQW['party'] = 2) and daystart - sisterQW['partyday'] > 3:
 			*clr & cla
 			minut += 5
 			sisterQW['partyday'] = daystart

+ 1 - 1
locations/sistersleep.qsrc

@@ -6,7 +6,7 @@ if $ARGS[0] = 'sister_sleep':
 	'<center><b><font color="maroon">Anya</font></b></center>'
 	'<center><img <<$set_imgh>> src="images/characters/pavlovsk/resident/anya/home/sleep0<<rand(1,7)>>.jpg"></center>'
 	'Anya is sleeping face down on her bed, with her covers tossed aside, exposing her panty clad ass. You admit she has a really nice ass, you never see her workout, you wonder how she keeps so fit.'
-	if sisterLesb >= 6 or sisterLesb = -1:
+	if sisterLesb >= 7 or sisterLesb = -1:
 		'You want to touch her again but you keep from doing it, you agreed to not wake her up like this anymore. You sigh and then move away.'
 		gs 'arousal', 'voyeur', -2
 		gs 'stat'

+ 12 - 10
locations/stol.qsrc

@@ -119,17 +119,20 @@ if $ARGS[0] = 'stolPar':
 	if steroid_have > 0: '<a href="exec:dynamic $use_steroids & gt ''stol'', ''stolPar''"><b>Take steroids.</b></a> Uses left: <<steroid_have>>.'
 	if aphrodisiac_have > 0: '<a href="exec:dynamic $use_aphrodisiac & gt ''stol'', ''stolPar''"><b>Chew aphrodisiac gum.</b></a> Uses left: <<aphrodisiac_have>>.'
 	
-	gs 'willpower', 'misc', 'self', iif((pcs_grades < 50 or grupTipe = 3) and grupTipe ! 4, 'easy', iif(pcs_grades < 90 and grupTipe ! 4, 'medium', 'hard'))
-	if lernHome > 0 and will_cost <= pcs_willpwr:
+	gs 'willpower', 'misc', 'self', iif(grupTipe = 4 and traits['nerd_status'] = 0, 'hard', iif(traits['nerd_status'] > 0, 'easy', 'medium'))
+	if traits['nerd_status'] = 2: will_cost = will_cost / 2
+	if lernHome > 0 and (will_cost <= pcs_willpwr or traits['nerd_status'] = 3):
 		'<br>You have to your homework. Finishing everything will take <<lernHome>> hours.'
-		act 'Do your homework (1:00 and <<will_cost>> Willpower)':
+		act 'Do your homework (1:00'+iif(traits['nerd_status'] = 3, '', ' and <<will_cost>> Willpower')+')':
 			cla & *clr
 			'<center><img <<$set_imgh>> src="images/locations/shared/apartment/homework.jpg"></center>'
 			minut += 60
+			pcs_mood += 5 * traits['nerd_status']
 			lernHome -= 1
 			lern += 1
-			gs 'willpower', 'misc', 'self', iif((pcs_grades < 50 or grupTipe = 3) and grupTipe ! 4, 'easy', iif(pcs_grades < 90 and grupTipe ! 4, 'medium', 'hard'))
-			gs 'willpower', 'pay', 'self'
+			gs 'willpower', 'misc', 'self', iif(grupTipe = 4, 'hard', iif(traits['nerd_status'] > 0, 'easy', 'medium'))
+			if traits['nerd_status'] = 2: will_cost = will_cost / 2
+			if traits['nerd_status'] < 3: gs 'willpower', 'pay', 'self'
 			gs'stat'
 			'It took you one hour to '+iif(lernHome = 0, 'complete', 'do a part of')+' your homework.'
 			
@@ -140,17 +143,16 @@ if $ARGS[0] = 'stolPar':
 	end
 	
 	will_cost = will_cost * lernHome
-	if lernHome > 1 and will_cost <= pcs_willpwr:
-		act 'Finish all of your homework (<<lernHome>>:00 and <<will_cost>> Willpower)':
+	if lernHome > 1 and (will_cost <= pcs_willpwr or traits['nerd_status'] = 3):
+		act 'Finish all of your homework (<<lernHome>>:00'+iif(traits['nerd_status'] = 3, '', ' and <<will_cost>> Willpower')+')':
 			cla & *clr
 			'<center><img <<$set_imgh>> src="images/locations/shared/apartment/homework.jpg"></center>'
 			'It took you <<lernHome>> hours to complete your homework.'
-			
 			minut += 60 * lernHome
+			pcs_mood += 5 * traits['nerd_status'] *lernHome
 			lern += 1 + lernHome/2
 			lernHome = 0
-			gs 'willpower', 'misc', 'self', iif((pcs_grades < 50 or grupTipe = 3) and grupTipe ! 4, 'easy', iif(pcs_grades < 90 and grupTipe ! 4, 'medium', 'hard'))
-			will_cost = will_cost * lernHome
+			if traits['nerd_status'] < 3: gs 'willpower', 'pay', 'self'
 			gs'stat'
 			
 			act 'Continue':gt 'stol', 'stolPar'

+ 98 - 24
locations/traits.qsrc

@@ -73,6 +73,23 @@ if $ARGS[0] = 'menu':
 	
 	*nl
 	
+	if traits['nerd_status'] = 0:
+		'<center><b>Likes learning</b></center>'
+		'You don''t have this trait and <<traits[''nerd_points'']>> points. You need to earn '+iif(traits['nerd_points'] > 0, '<<40 - traits[''nerd_points'']>>', '<<40 + traits[''nerd_points'']>>')+' more points to get level 1 of this trait.'
+	elseif traits['nerd_status'] = 1:
+		'<center><b>Likes learning</b></center>'
+		'You have level 1 of this trait and <<traits[''nerd_points'']>> points. You need to earn <<60 - traits[''nerd_points'']>> more points to get level 2 of this trait. If you fall below 20 points, you''ll lose this trait.'
+	elseif traits['nerd_status'] = 2:
+		'<center><b>Loves to learn</b></center>'
+		'You have level 2 of this trait and <<traits[''nerd_points'']>> points. You need to earn <<60 - traits[''nerd_points'']>> more points to get level 2 of this trait. If you fall below 40 points, you''ll fall back to level 1.'		
+	elseif traits['nerd_status'] = 2:
+		'<center><b>Teacher''s pet</b></center>'
+		'You have level 3 of this trait and <<traits[''nerd_points'']>> points. If you fall below 60 points, you''ll fall back to level 2.'		
+	end
+	'Listening to more than 80% of lessons and doing your homework regularly earns you points for this trait, but you''ll lose points if you listen to less than 60% of lessons or if you don''t do your homework.'
+	
+	*nl
+	
 	'<center><b>Addictive Personality</b></center>'
 	if addictive_trait_lvl = 0 and addictive_cheat = 0:
 		'You do not have this trait.'
@@ -108,10 +125,10 @@ if $ARGS[0] = 'menu':
 	
 	*nl
 	
-	if alko_trait = -1:
+	if traits['alko_status'] = -1:
 		'<center><b>Lightweight</b></center>'
 		'It doesn''t take much for you to get drunk. You don''t have to drink as much to feel the affects of alcohol.'
-	elseif alko_trait = 1:
+	elseif traits['alko_status'] = 1:
 		'<center><b>Heavyweight</b></center>'
 		'You''ve built up a tolerance, making it harder for you to feel the affects of alcohol.'
 	end
@@ -128,42 +145,99 @@ if $ARGS[0] = 'hourly':
 end
 
 if $ARGS[0] = 'overnight':
-	!!alko_trait: light weight (-1), normal (0), heavy weight (+1)
-	!!alko_trait_counter: between -100 and 100, tracks if sveta is a light or heavy wight
-	!!alko_trait_day: amount of alko sveta has drunk today
+	!!traits['alko_status']: light weight (-1), normal (0), heavy weight (+1)
+	!!traits['alko_points']: between -100 and 100, tracks if sveta is a light or heavy wight
+	!!traits['alko_day']: amount of alko sveta has drunk today
 	
 	!!Gains/Decay
-	if alko_trait_day > 0:
-		if alko_trait_day > 9:
-			alko_trait_counter += 9
+	if traits['alko_day'] > 0:
+		if traits['alko_day'] > 9:
+			traits['alko_points'] += 9
 		else
-			alko_trait_counter += alko_trait_day
+			traits['alko_points'] += traits['alko_day']
 		end
-	elseif alko_trait_day = 0:
-		alko_trait_counter -= 2
+	elseif traits['alko_day'] = 0:
+		traits['alko_points'] -= 2
 	end
 	
+	if kanikuli = 0 and week < 6:
+		if lernHome > 0:
+			traits['nerd_lernHome'] = 0
+			traits['nerd_points'] -= 1
+		elseif lernHome = 0 and traits['nerd_lernHome'] < 5:
+			traits['nerd_lernHome'] += 1
+		elseif traits['nerd_lernHome'] = 5:
+			traits['nerd_points'] += 1
+		end
+	elseif kanikuli = 0 and week = 6:
+		!!This check has to be changed if the number of non-sport lessons ever changes (27 right now)
+		if traits['nerd_lessons'] > 20:
+			traits['nerd_points'] += traits['nerd_lessons'] - 17
+		elseif traits['nerd_lessons'] < 14:
+			traits['nerd_points'] -= iif(traits['nerd_status'] > 0, 5, 10)
+		end
+		traits['nerd_lessons'] = 0
+	end	
+	
 	!!Trait selection
-	if alko_trait_counter > 50 and alko_trait < 1:
-		alko_trait = 1
+	if traits['alko_points'] > 50 and traits['alko_status'] < 1:
+		traits['alko_status'] = 1
 		msg 'You have gained the trait ''Heavyweight''.'
-	elseif alko_trait_counter < -50 and alko_trait > -1:
-		alko_trait = -1	
+	elseif traits['alko_points'] < -50 and traits['alko_status'] > -1:
+		traits['alko_status'] = -1	
 		msg 'You have gained the trait ''Lightweight''.'
-	elseif alko_trait = -1 and alko_trait_counter > 0:
-		alko_trait = 0
+	elseif traits['alko_status'] = -1 and traits['alko_points'] > 0:
+		traits['alko_status'] = 0
 		msg 'You have lost the trait ''Lightweight''.'
-	elseif alko_trait = 1 and alko_trait_counter < 0:
-		alko_trait = 0
+	elseif traits['alko_status'] = 1 and traits['alko_points'] < 0:
+		traits['alko_status'] = 0
 		msg 'You have lost the trait ''Heavyweight''.'
 	end
 	
+	if traits['nerd_points'] > 80 and traits['nerd_status'] < 3:
+		traits['nerd_status'] = 3
+		msg 'You have gained the trait ''Teacher''s pet''.'
+	elseif traits['nerd_points'] > 60 and traits['nerd_status'] < 2:
+		traits['nerd_status'] = 2
+		msg 'You have gained the trait ''Loves to learn''.'		
+	elseif traits['nerd_points'] > 40 and traits['nerd_status'] < 1:
+		traits['nerd_status'] = 1
+		msg 'You have gained the trait ''Likes learning''.'
+	elseif traits['nerd_points'] < 60 and traits['nerd_status'] = 3:
+		traits['nerd_status'] = 2
+		msg 'You have lost the trait ''Teacher''s pet''.'
+	elseif traits['nerd_points'] < 40 and traits['nerd_status'] = 2:
+		traits['nerd_status'] = 1
+		msg 'You have lost the trait ''Loves to learn''.'	
+	elseif traits['nerd_points'] < 20 and traits['nerd_status'] = 1:
+		traits['nerd_status'] = 0
+		msg 'You have lost the trait ''Likes learning''.'		
+	end
+	
+	!!Trait effects
+	if traits['nerd_status'] = 3:
+		grupvalue[1] -= 1
+		grupvalue[3] += rand(1,2)
+		grupvalue[4] -= rand(1,2)		
+	elseif traits['nerd_status'] = 2:
+		grupvalue[3] += 1
+		grupvalue[4] -= 1
+	elseif traits['nerd_status'] = 1:
+		grupvalue[3] += rand(0,1)
+	end
+
 	!!Cleanup
-	alko_trait_day = 0
-	if alko_trait_counter > 100: 
-		alko_trait_counter = 100
-	elseif alko_trait_counter < -100: 
-		alko_trait_counter = -100
+	traits['alko_day'] = 0
+	if traits['alko_points'] > 100: 
+		traits['alko_points'] = 100
+	elseif traits['alko_points'] < -100: 
+		traits['alko_points'] = -100
+	end
+	
+	if traits['nerd_points'] > 100:
+		traits['nerd_points'] = 100
+	elseif traits['nerd_points'] < -100:
+		traits['nerd_points'] = -100
 	end
 end
 

+ 1 - 1
syntax/NotepadPlusPlus/QSP2.xml

@@ -24,7 +24,7 @@
             <Keywords name="Folders in comment, open"></Keywords>
             <Keywords name="Folders in comment, middle"></Keywords>
             <Keywords name="Folders in comment, close"></Keywords>
-            <Keywords name="Keywords1">$dyneval $user_text $usrtxt $maintxt $stattxt $func $curloc $selobj $selact $curact $getobj $mid $ucase $lcase $trim $replace $str $loc $metka $menu_loc $menu_arg $metkaM $locM $strfind $ARGS&#x000D;&#x000A;&#x000D;&#x000A;dyneval input user_text usrtxt iif rgb isplay msecscount desc maintxt stattxt qspver func curloc selobj no and mod selact curact arrsize arrpos countobj getobj led mid ucase lcase trim replace instr isnum val str loc or max min rand rnd arrcomp strcomp strpos strfind&#x000D;&#x000A;&#x000D;&#x000A;counter ongload ongsave onnewloc onactsel onobjsel onobjadd onobjdel usercom fname backimage args result&#x000D;&#x000A;&#x000D;&#x000A;act exit killvar cla clr clear gs xgt gt goto gosub xgoto if else elseif end jump amp nl pl&#x000D;&#x000A;&#x000D;&#x000A;nosave disablescroll disablesubex debug usehtml bcolor fcolor lcolor fsize gt lt close dynamic</Keywords>
+            <Keywords name="Keywords1">$dyneval $user_text $usrtxt $maintxt $stattxt $func $curloc $selobj $selact $curact $getobj $mid $ucase $lcase $trim $replace $str $loc $metka $menu_loc $menu_arg $metkaM $locM $strfind $ARGS&#x000D;&#x000A;&#x000D;&#x000A;dyneval input user_text usrtxt iif rgb isplay msecscount desc maintxt stattxt qspver func curloc selobj no and mod selact curact arrsize arrpos countobj getobj led mid ucase lcase trim replace instr isnum val str loc or max min rand rnd arrcomp strcomp strpos strfind&#x000D;&#x000A;&#x000D;&#x000A;counter ongload ongsave onnewloc onactsel onobjsel onobjadd onobjdel usercom fname backimage args result&#x000D;&#x000A;&#x000D;&#x000A;act exit killvar cla clr clear gs xgt gt goto gosub xgoto if else elseif end jump amp nl pl&#x000D;&#x000A;&#x000D;&#x000A;nosave disablescroll disablesubex debug usehtml bcolor fcolor lcolor fsize gt lt close dynamic wait</Keywords>
             <Keywords name="Keywords2"></Keywords>
             <Keywords name="Keywords3"></Keywords>
             <Keywords name="Keywords4"></Keywords>