Explorar o código

[changed] & [fixed] willpower additions by nutluck & julzor

julzor %!s(int64=5) %!d(string=hai) anos
pai
achega
19cf33be51

+ 23 - 5
locations/BurgerTip.qsrc

@@ -1,5 +1,5 @@
 # BurgerTip
-
+!!needs a rework to not be so linear
 menu_off = 1
 
 $kompromatFoto = ''
@@ -1027,11 +1027,29 @@ if $ARGS[0] = 'ivan_work2':
 				end
 			end
 		end
-
-		act 'Refuse': gt 'BurgerTip', 'ivan_work3'
+		gs 'willpower', 'exhib', 'resist', 'medium'
+		if will_cost <= pcs_willpwr:
+			act 'Refuse (<<will_cost>> Willpower)':
+				*clr & cla
+				gs 'willpower', 'pay', 'resist'
+				gs 'stat'
+				gt 'BurgerTip', 'ivan_work3'
+			end
+		else
+			act 'Refuse (<font color="red"><<will_cost>> Willpower</font>)': '<br><font color="red">You don''t have enough willpower to use this action.</font>'
+		end	
 	end
-
-	act 'Refuse': gt 'BurgerTip', 'ivan_work3'
+	gs 'willpower', 'misc', 'resist', 'medium'
+	if will_cost <= pcs_willpwr:
+		act 'Refuse (<<will_cost>> Willpower)':
+			*clr & cla
+			gs 'willpower', 'pay', 'resist'
+			gs 'stat'
+			gt 'BurgerTip', 'ivan_work3'
+		end
+	else
+		act 'Refuse (<font color="red"><<will_cost>> Willpower</font>)': '<br><font color="red">You don''t have enough willpower to use this action.</font>'
+	end	
 end
 
 if $ARGS[0] = 'ivan_work3':

+ 10 - 6
locations/bed.qsrc

@@ -270,14 +270,16 @@ if $ARGS[0] = 'rab':
 		end
 	end
 
-	if pcs_dom > 20:
-		act 'Refuse':
-			cla
-			*clr
-			pcs_dom += 1
+	gs 'willpower', 'sex', 'resist', 'medium'
+	if will_cost <= pcs_willpwr:
+		act 'Refuse (<<will_cost>> Willpower)':
+			*clr & cla
+			gs 'willpower', 'pay', 'resist'
+			gs 'stat'
 			lesbian += 1
 			orgasm += 1
 			houserab = 2
+			gs 'stat'
 			'<center><img <<$set_imgh>> src="images/characters/city/nicholas/sex/r4.jpg"></center>'
 			'"No." You reply.'
 			'"You <<$pcs_nickname>> <<$pcs_lastname>>, will suck now or things will get very bad for you." She asserts.'
@@ -299,7 +301,9 @@ if $ARGS[0] = 'rab':
 			
 			act 'Breathe':gt 'bed', 'start'
 		end
-	end
+	else
+		act 'Refuse (<font color="red"><<will_cost>> Willpower</font>)': '<br><font color="red">You don''t have enough willpower to use this action.</font>'
+	end	
 end
 
 if $ARGS[0] = 'vor':

+ 62 - 22
locations/burger.qsrc

@@ -317,10 +317,12 @@ if $ARGS[0] = 'dishes':
 						end
 					end
 
-					if pcs_dom > 0:
-						act 'Thank you very much. (Deny)':
+					gs 'willpower', 'bj', 'resist', 'medium'
+					if will_cost <= pcs_willpwr:
+						act 'Thank you very much. (Deny) (<<will_cost>> Willpower)':
 							*clr & cla
-							pcs_dom += 5
+							gs 'willpower', 'pay', 'resist'
+							gs 'stat'
 							'You grin and say, "Thank you very much." Anatoly flushes and says emphatically, "You know what I mean." He unbuttons his pants and pulls out his hard member.'
 							'You laugh, "Oh yes, I understand perfectly. You can wear this dress yourself, if you think I''m spreading my legs for every fat cat, who fancies himself the king of the world. So don''t insult my intelligence and put your ugly dick back in your pants. If you think I am going to suck you off for buying me a dress you are a bigger idiot than I thought. Wo do you think you are? Casanova? Are you fucking serious?"'
 							'Antaloy''s face turns red with anger and begins to threaten you, "Yes I am, I''ll fire you!"'
@@ -332,7 +334,9 @@ if $ARGS[0] = 'dishes':
 								gt 'down'
 							end
 						end
-					end
+					else
+						act 'Thank you very much. (Deny) (<font color="red"><<will_cost>> Willpower</font>)': '<br><font color="red">You don''t have enough willpower to use this action.</font>'
+					end	
 				end
 			end
 		end
@@ -407,7 +411,7 @@ if $ARGS[0] = 'dishes':
 
 		exit
 	elseif bistroQW = 50:
-		'During your work, you learned that Anatoly Borisovich is away on business affairs and Ivan is replacing him as the manager. When you are getting ready to go to work Ivan comes out of the manager''s office and says in a conspirational tone, "Well <<$pcs_nickname>>, you obviously do not want to work for a couple of pennies? Come to me for special work. Special work for special Salary."'
+		'During your work, you learned that Anatoly Borisovich is away on business affairs and Ivan is replacing him as the manager. When you are getting ready to go to work Ivan comes out of the manager''s office and says in a conspiratorial tone, "Well <<$pcs_nickname>>, you obviously do not want to work for a couple of pennies? Come to me for special work. Special work for special Salary."'
 
 		act 'Go to the manager''s office':
 			*clr & cla
@@ -456,16 +460,27 @@ if $ARGS[0] = 'dishes':
 				end
 			end
 
-			if pcs_dom > 0 or pcs_dom = 0 and sub = 0:
-				act 'Leave':
+			gs 'willpower', 'sex', 'resist', 'medium'
+			if will_cost <= pcs_willpwr:
+				act 'Leave (<<will_cost>> Willpower)':
 					*clr & cla
+					gs 'willpower', 'pay', 'resist'
+					gs 'stat'
 					bistroQW = 56
 					gs 'stat'
 					'<center><img <<$set_imgh>> src="images/locations/city/citycenter/diner/sex/bj1.jpg"></center>'
 					'You escape from Ivan''s hands who was not expecting such a reaction. He glares at you, "You suck off Borisovich but get squeamish with his deputy?" You are taken aback by these words. How does he know about what happened in the fitting room. Apparently your thoughts are reflected on your face and Ivan chuckles. "Yes Borisovich himself bragged about it. If you thought, Borisovich wouldn''t tell anyone you''re an idiot. But I won''t tell anyone. And I''m offering you a decent reward. So, be a good girl and show me what you can do with this mouth of yours. "'
-
-					act 'That''s bullshit!':pcs_dom += 1 & gt 'burger', 'start'
-
+					gs 'willpower', 'bj', 'resist', 'medium'
+					if will_cost <= pcs_willpwr:
+						act 'That''s bullshit! (<<will_cost>> Willpower)':
+							*clr & cla
+							gs 'willpower', 'pay', 'resist'
+							gs 'stat'
+							gt 'burger', 'start'
+						end
+					else
+						act 'That''s bullshit! (<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 your mouth':
 						*clr & cla
 						bistroQW = 55
@@ -500,7 +515,9 @@ if $ARGS[0] = 'dishes':
 						end
 					end
 				end
-			end
+			else
+				act 'Leave (<font color="red"><<will_cost>> Willpower</font>)': '<br><font color="red">You don''t have enough willpower to use this action.</font>'
+			end	
 
 			exit
 		end
@@ -606,8 +623,18 @@ if $ARGS[0] = 'dishes':
 						act 'Leave':gt 'burger', 'start'
 					end
 				end
-
-				act 'Scream at the top of your lungs and run':bistroQW = 61 & gt 'burger', 'start'
+				gs 'willpower', 'group', 'resist', 'medium'
+				if will_cost <= pcs_willpwr:
+					act 'Refuse (<<will_cost>> Willpower)':
+						*clr & cla
+						gs 'willpower', 'pay', 'resist'
+						gs 'stat'
+						bistroQW = 61 
+						gt 'burger', 'start'
+					end
+				else
+					act 'Refuse (<font color="red"><<will_cost>> Willpower</font>)': '<br><font color="red">You don''t have enough willpower to use this action.</font>'
+				end	
 			end
 		end
 	elseif bistroQW >= 65 and soplakTimes ! 3:
@@ -682,10 +709,6 @@ if $ARGS[0] = 'boss':
 	$menu_arg = 'boss'
 	menu_off = 0
 
-	!!Podyablonskaya
-	!!Calvin Broadus Kaldazar
-	!!Andrew Krivorotov
-	!!Dennis Dobrovolsky
 	gs 'stat'
 
 	if BistroBoss = 10:
@@ -804,9 +827,17 @@ if $ARGS[0] = 'boss':
 
 			elseif bistroQW >= 65:
 				'You sit down on a chair and Anatoly Borisovich gives you a grim look. "I did not think you were so cheap. What is your fee? 300 <b>₽</b> for a blowjob?" He pulls 300 <b>₽</b> out of his pocket and throws them on the floor. "Get down on your knees and do your work, slut."'
-
-				act 'Leave':gt 'burger', 'start'
-
+				gs 'willpower', 'bj', 'resist', 'medium'
+				if will_cost <= pcs_willpwr:
+					act 'Leave (<<will_cost>> Willpower)':
+						*clr & cla
+						gs 'willpower', 'pay', 'resist'
+						gs 'stat'
+						gt 'burger', 'start'
+					end
+				else
+					act 'Leave (<font color="red"><<will_cost>> Willpower</font>)': '<br><font color="red">You don''t have enough willpower to use this action.</font>'
+				end	
 				act 'Get on your knees':
 					*clr & cla
 					money += 300
@@ -836,8 +867,17 @@ if $ARGS[0] = 'boss':
 	elseif BistroBoss = 2 and BistroBossDay ! daystart:
 		BistroBossDay = daystart
 		'Knocking you walk into the office to Anatoly Borisovich. He looked at you grimly and pulls out 300 <b>₽</b>, "Get down on your knees and get to work, slut."'
-
-		act 'Leave':gt 'burger', 'start'
+		gs 'willpower', 'bj', 'resist', 'medium'
+		if will_cost <= pcs_willpwr:
+			act 'Leave (<<will_cost>> Willpower)':
+				*clr & cla
+				gs 'willpower', 'pay', 'resist'
+				gs 'stat'
+				gt 'burger', 'start'
+			end
+		else
+			act 'Leave (<font color="red"><<will_cost>> Willpower</font>)': '<br><font color="red">You don''t have enough willpower to use this action.</font>'
+		end	
 
 		act 'Get on your knees':
 			*clr & cla

+ 54 - 27
locations/burgerWork.qsrc

@@ -2,11 +2,6 @@
 
 menu_off = 1
 
-!!Anatoly Borisovich Director
-!!smart girl HR Manager, personnel department
-!!manager Ivan, player, ILO and brave guy
-!!Deputy manager, pimply boy, son of the owner bystroezhki
-
 if $ARGS[0] = 'start':
 	if hour < 10:hour = 10 & minut = 0 & PersSecWorkTimes += 1
 
@@ -17,10 +12,9 @@ if $ARGS[0] = 'start':
 
 	if hour < 17:
 		act 'Work until lunchtime':
-			cls
+			*clr & cla
 			PSBBtimes = 1
 			minut += 60 * 2
-			!!gs 'BurgerTip'
 			gs 'stat'
 			'<center><img <<$set_imgh>> src="images/locations/city/citycenter/diner/work.jpg"></center>'
 			'You sit at the table and begin to prepare the agreement on the computer.'
@@ -46,7 +40,7 @@ if $ARGS[0] = 'start':
 				'Anatoly Borisovich comes into your office and puts the paper in front of you with a pen. "Write up your resignation. I don''t need a secretary with a past like yours."'
 
 				act 'Write a statement of resignation':
-					cls
+					*clr & cla
 					work = 0
 					PersSecWork = 2
 					Pay = PersSecWorkTimes * 1250
@@ -73,7 +67,7 @@ if $ARGS[0] = 'work':
 end
 
 if $ARGS[0] = 'work2':
-	cls
+	*clr & cla
 	gs 'stat'
 
 	if kompromatBlackMail >= 6 and ivanFilmBJ > 0:
@@ -94,7 +88,7 @@ if $ARGS[0] = 'work2':
 			'After work, you are about to leave the bistro, but Ivan stops you. "Where are you going, baby? Want to suck my dick?"'
 
 			act 'Agree':
-				cls
+				*clr & cla
 				gs 'boyStat', 'A76'
 				sexpartkno = 1
 				spafinloc = 12
@@ -111,13 +105,22 @@ if $ARGS[0] = 'work2':
 		
 				act 'Leave':gt 'down'
 			end
-
-			act 'Refuse':gt 'BurgerTip', 'work4'
+			gs 'willpower', 'bj', 'resist', 'medium'
+			if will_cost <= pcs_willpwr:
+				act 'Refuse (<<will_cost>> Willpower)':
+					*clr & cla
+					gs 'willpower', 'pay', 'resist'
+					gs 'stat'
+					gt 'BurgerTip', 'work4'
+				end
+			else
+				act 'Refuse (<font color="red"><<will_cost>> Willpower</font>)': '<br><font color="red">You don''t have enough willpower to use this action.</font>'
+			end	
 		elseif komblrand = 1:
 			'After work, you are about to leave the bistro, but Ivan stops you. "Where are you going, baby? Want to suck my dick?"'
 
 			act 'Agree':
-				cls
+				*clr & cla
 				gs 'boyStat', 'A76'
 				sexpartkno = 1
 				spafinloc = 12
@@ -134,20 +137,29 @@ if $ARGS[0] = 'work2':
 				
 				act 'Leave':gt 'down'
 			end
-
-			act 'Refuse':gt 'BurgerTip', 'work4'
+			gs 'willpower', 'bj', 'resist', 'medium'
+			if will_cost <= pcs_willpwr:
+				act 'Refuse (<<will_cost>> Willpower)':
+					*clr & cla
+					gs 'willpower', 'pay', 'resist'
+					gs 'stat'
+					gt 'BurgerTip', 'work4'
+				end
+			else
+				act 'Refuse (<font color="red"><<will_cost>> Willpower</font>)': '<br><font color="red">You don''t have enough willpower to use this action.</font>'
+			end	
 		elseif komblrand = 2:
 			'After work, you are about to leave the bistro, but Ivan stops you. "Where are you going, baby? Want to suck my dick?"'
 
 			act 'Agree':
-				cls
+				*clr & cla
 				kompromatBlackMail += 1
 				minut += 5
 				gs 'stat'
 				'<center><img <<$set_imgh>> src="images/locations/city/shared/car.jpg"></center>'
 				'Ivan takes you to his car standing in the alley. He gets behind the wheel and you sit next to him. Ivan starts the car and drives you to the city industrial region. "Don''t forget baby. As long as you continue to serve me you have a job and prospects, but if you piss me off, I will take everything from you." As soon as you come to a new building, Ivan parks his car in a free space. You get out and go with Ivan to a staircase. The lift takes you up to Ivan''s apartment and he opens the door for you. Without hesitation Ivan takes you by the hand and leads you to his bedroom. He sits down on the bed and takes out a camera. Ivan gets his dick out of his pants and says, "Now suck it baby. And give it your all, I don''t want the video to be bad."'
 				act 'Suck':
-					cls
+					*clr & cla
 					ivanFilmBJ += 1
 					
 					gs 'arousal', 'bj', 5, 'sub'
@@ -157,7 +169,7 @@ if $ARGS[0] = 'work2':
 					'You get down on your knees in front of Ivan and clasp his member with your <<$liptalk3>>. Ivan films you using his camera to get a closeup of you sucking his cock. After a while he lies you down on his couch and sits on your chest to make sure his cock is right in front of your face.'
 
 					act 'Suck':
-						cls
+						*clr & cla
 						gs 'stat'
 						'<center><img <<$set_imgh>> src="images/characters/city/ivan/sex/ivanbjfilm2.jpg"></center>'
 						'Sitting on top of you Ivan starts to fuck your mouth sticking is member in your throat as far as possible. You suck diligently trying not to choke as Ivan is filming you the whole time. Finally he takes his dick out of your mouth.'
@@ -166,7 +178,7 @@ if $ARGS[0] = 'work2':
 						gs 'stat'
 				
 						act 'Open your mouth':
-							cls
+							*clr & cla
 							minut += 5
 							facial += 1
 							gs 'boyStat', 'A76'
@@ -184,15 +196,31 @@ if $ARGS[0] = 'work2':
 						end
 					end
 				end
-
-				act 'Refuse':gt 'BurgerTip', 'work4'
+				gs 'willpower', 'bj', 'resist', 'medium'
+				if will_cost <= pcs_willpwr:
+					act 'Refuse (<<will_cost>> Willpower)':
+						*clr & cla
+						gs 'willpower', 'pay', 'resist'
+						gs 'stat'
+						gt 'BurgerTip', 'work4'
+					end
+				else
+					act 'Refuse (<font color="red"><<will_cost>> Willpower</font>)': '<br><font color="red">You don''t have enough willpower to use this action.</font>'
+				end	
 			end
-
-			act 'Refuse':gt 'BurgerTip', 'work4'
+			gs 'willpower', 'bj', 'resist', 'medium'
+			if will_cost <= pcs_willpwr:
+				act 'Refuse (<<will_cost>> Willpower)':
+					*clr & cla
+					gs 'willpower', 'pay', 'resist'
+					gs 'stat'
+					gt 'BurgerTip', 'work4'
+				end
+			else
+				act 'Refuse (<font color="red"><<will_cost>> Willpower</font>)': '<br><font color="red">You don''t have enough willpower to use this action.</font>'
+			end	
 		end
 
-		!!if komblrand = 3:''
-
 		exit
 	end
 
@@ -200,11 +228,10 @@ if $ARGS[0] = 'work2':
 end
 
 if $ARGS[0] = 'work3':
-	cls
+	*clr & cla
 	PSBBtimes = 2
 	minut += 30
 	minut += 60 * 4
-	!!gs 'BurgerTip'
 	gs 'stat'
 	'<center><img <<$set_imgh>> src="images/locations/city/citycenter/diner/work.jpg"></center>'
 

+ 111 - 49
locations/cafe2.qsrc

@@ -128,47 +128,69 @@ if $ARGS[0] = 'dance':
 					end
 				end
 			end
-
-			act 'Avoid kissing':
-				cla
-				pcs_horny += 8
-
-				if pcs_lip = 0:$lipdance = 'thin lips'
-				if pcs_lip = 1:$lipdance = 'lips'
-				if pcs_lip = 2:$lipdance = 'plump lips'
-				if pcs_lip = 3:$lipdance = 'plump lips'
-				if pcs_lip = 4:$lipdance = 'thick lips'
-
-				if dick > 15 and dick < 18:
-					$didanc = 'in his pants he is becoming firm and <<$boydesc>> is pressing his member to your stomach.'
-				elseif dick >= 18:
-					$didanc = 'his massive cock is pushing against your stomach, it''s really big, about <<dick>> centimeters.'
-				elseif dick <= 15:
-					$didanc = 'there is something moving in his pants.'
-				end
-
-				'You behave passively and try to pull your mouth away from the annoying guy first, it doesn''t make too much difference as you feel his hands firmly squeeze your ass, then his hands raised above and he pulls you to his chest. You feel like <<$didanc>>'
-				'Finally the song ends and gain a little breathing space.'
-				deyst = rand(1, 100)
-
-				if deyst <= 75:
-					'Keeping your waist held <<$boydesc>> invites you back to his home.'
-
-					act 'Agree':gt 'Cafe3', 'house'
-
-					if pcs_horny < 75:
-						act 'Leave':gt 'street'
+			gs 'willpower', 'kiss', 'resist', 'medium'
+			if will_cost <= pcs_willpwr:
+				act 'Avoid kissing (<<will_cost>> Willpower)':
+					*clr & cla
+					gs 'willpower', 'pay', 'resist'
+					gs 'stat'
+					pcs_horny += 8
+
+					if pcs_lip = 0:$lipdance = 'thin lips'
+					if pcs_lip = 1:$lipdance = 'lips'
+					if pcs_lip = 2:$lipdance = 'plump lips'
+					if pcs_lip = 3:$lipdance = 'plump lips'
+					if pcs_lip = 4:$lipdance = 'thick lips'
+
+					if dick > 15 and dick < 18:
+						$didanc = 'in his pants he is becoming firm and <<$boydesc>> is pressing his member to your stomach.'
+					elseif dick >= 18:
+						$didanc = 'his massive cock is pushing against your stomach, it''s really big, about <<dick>> centimeters.'
+					elseif dick <= 15:
+						$didanc = 'there is something moving in his pants.'
 					end
-				elseif deyst > 75:
-					'Keeping your waist held <<$boydesc>> asks you to go to the toilet and continue.'
 
-					act 'Agree':gt 'Cafe3', 'toilet'
-
-					if pcs_horny < 75:
-						act 'Leave':gt 'street'
+					'You behave passively and try to pull your mouth away from the annoying guy first, it doesn''t make too much difference as you feel his hands firmly squeeze your ass, then his hands raised above and he pulls you to his chest. You feel like <<$didanc>>'
+					'Finally the song ends and gain a little breathing space.'
+					deyst = rand(1, 100)
+
+					if deyst <= 75:
+						'Keeping your waist held <<$boydesc>> invites you back to his home.'
+
+						act 'Agree':gt 'Cafe3', 'house'
+
+						gs 'willpower', 'sex', 'resist', 'medium'
+						if will_cost <= pcs_willpwr:
+							act 'Leave (<<will_cost>> Willpower)':
+								*clr & cla
+								gs 'willpower', 'pay', 'resist'
+								gs 'stat'
+								gt 'street'
+							end
+						else
+							act 'Leave (<font color="red"><<will_cost>> Willpower</font>)': '<br><font color="red">You don''t have enough willpower to use this action.</font>'
+						end	
+					elseif deyst > 75:
+						'Keeping your waist held <<$boydesc>> asks you to go to the toilet and continue.'
+
+						act 'Agree':gt 'Cafe3', 'toilet'
+
+						gs 'willpower', 'sex', 'resist', 'medium'
+						if will_cost <= pcs_willpwr:
+							act 'Leave (<<will_cost>> Willpower)':
+								*clr & cla
+								gs 'willpower', 'pay', 'resist'
+								gs 'stat'
+								gt 'street'
+							end
+						else
+							act 'Leave (<font color="red"><<will_cost>> Willpower</font>)': '<br><font color="red">You don''t have enough willpower to use this action.</font>'
+						end
 					end
 				end
-			end
+			else
+				act 'Avoid kissing (<font color="red"><<will_cost>> Willpower</font>)': '<br><font color="red">You don''t have enough willpower to use this action.</font>'
+			end	
 		end
 
 		if pcs_horny < 75:
@@ -190,9 +212,17 @@ if $ARGS[0] = 'dance2':
 
 		act 'Agree':gt 'Cafe3', 'house'
 
-		if pcs_horny < 75:
-			act 'Leave':gt 'street'
-		end
+		gs 'willpower', 'sex', 'resist', 'medium'
+		if will_cost <= pcs_willpwr:
+			act 'Leave (<<will_cost>> Willpower)':
+				*clr & cla
+				gs 'willpower', 'pay', 'resist'
+				gs 'stat'
+				gt 'street'
+			end
+		else
+			act 'Leave (<font color="red"><<will_cost>> Willpower</font>)': '<br><font color="red">You don''t have enough willpower to use this action.</font>'
+		end	
 	end
 end
 
@@ -212,9 +242,17 @@ if $ARGS[0] = 'booze':
 
 		act 'Agree':gt 'Cafe3', 'house'
 
-		if pcs_horny < 75:
-			act 'Leave':gt 'street'
-		end
+		gs 'willpower', 'sex', 'resist', 'medium'
+		if will_cost <= pcs_willpwr:
+			act 'Leave (<<will_cost>> Willpower)':
+				*clr & cla
+				gs 'willpower', 'pay', 'resist'
+				gs 'stat'
+				gt 'street'
+			end
+		else
+			act 'Leave (<font color="red"><<will_cost>> Willpower</font>)': '<br><font color="red">You don''t have enough willpower to use this action.</font>'
+		end	
 	elseif deyst >= 95:
 		'You''re drunk and <<$boydesc>> begins to stick to you. He kisses and caresses you and then offers to take you with him to the toilet.'
 		
@@ -225,8 +263,16 @@ if $ARGS[0] = 'booze':
 
 		act 'Agree':gt 'Cafe3', 'toilet'
 
-		if pcs_horny < 75:
-			act 'Leave':gt 'street'
+		gs 'willpower', 'sex', 'resist', 'medium'
+		if will_cost <= pcs_willpwr:
+			act 'Leave (<<will_cost>> Willpower)':
+				*clr & cla
+				gs 'willpower', 'pay', 'resist'
+				gs 'stat'
+				gt 'street'
+			end
+		else
+			act 'Leave (<font color="red"><<will_cost>> Willpower</font>)': '<br><font color="red">You don''t have enough willpower to use this action.</font>'
 		end
 	end
 end
@@ -248,8 +294,16 @@ if $ARGS[0] = 'kompashka':
 
 		act 'Agree':gt 'Cafe3', 'house'
 
-		if pcs_horny < 75:
-			act 'Leave':gt 'street'
+		gs 'willpower', 'sex', 'resist', 'medium'
+		if will_cost <= pcs_willpwr:
+			act 'Leave (<<will_cost>> Willpower)':
+				*clr & cla
+				gs 'willpower', 'pay', 'resist'
+				gs 'stat'
+				gt 'street'
+			end
+		else
+			act 'Leave (<font color="red"><<will_cost>> Willpower</font>)': '<br><font color="red">You don''t have enough willpower to use this action.</font>'
 		end
 	elseif deyst >= 90:
 		'You''re drunk and <<$boydesc>> begins to stick to you. He kisses and caresses you and then offers to go join with some company.'
@@ -261,8 +315,16 @@ if $ARGS[0] = 'kompashka':
 		
 		act 'Agree':gt 'Cafe3', 'kompashka'
 
-		if pcs_horny < 75:
-			act 'Leave':gt 'street'
+		gs 'willpower', 'sex', 'resist', 'medium'
+		if will_cost <= pcs_willpwr:
+			act 'Leave (<<will_cost>> Willpower)':
+				*clr & cla
+				gs 'willpower', 'pay', 'resist'
+				gs 'stat'
+				gt 'street'
+			end
+		else
+			act 'Leave (<font color="red"><<will_cost>> Willpower</font>)': '<br><font color="red">You don''t have enough willpower to use this action.</font>'
 		end
 	end
 end

+ 62 - 32
locations/cafe3.qsrc

@@ -71,15 +71,21 @@ if $ARGS[0] = 'house':
 			end
 		end
 	end
-
-	act 'Try to remove his hands':
-		cla
-		'You tried to remove his hands from your crotch, but <<$boydesc>> turns to you and begins to fondle your breasts through your clothes with his hands.'
-		gs 'arousal', 'foreplay', 15, 'sub'
-		gs 'stat'
-		
-		act 'Continue':BDcafe = 1 & gt 'BDsex', 'start'
-	end
+	gs 'willpower', 'action', 'resist', 'medium'
+	if will_cost <= pcs_willpwr:
+		act 'Try to remove his hands (<<will_cost>> Willpower)':
+			*clr & cla
+			gs 'willpower', 'pay', 'resist'
+			gs 'stat'
+			'You tried to remove his hands from your crotch, but <<$boydesc>> turns to you and begins to fondle your breasts through your clothes with his hands.'
+			gs 'arousal', 'foreplay', 15, 'sub'
+			gs 'stat'
+			
+			act 'Continue':BDcafe = 1 & gt 'BDsex', 'start'
+		end
+	else
+		act 'Try to remove his hands (<font color="red"><<will_cost>> Willpower</font>)': '<br><font color="red">You don''t have enough willpower to use this action.</font>'
+	end	
 end
 
 if $ARGS[0] = '0':
@@ -111,7 +117,6 @@ if $ARGS[0] = '0':
 		elseif deysts = 2:
 			guy += 1
 			dynamic $vagstart
-			!!'<<$boydesc>> pushes your legs and enters you.'
 			picrand = rand(1, 5)
 			'<center><img <<$set_imgh>> src="images/shared/sex/vag/doggy/vagdog<<picrand>>.jpg"></center>'
 			'<<$boydesc>> helps you onto all fours and enters you.'
@@ -138,8 +143,17 @@ if $ARGS[0] = '0':
 		end
 	elseif deyst < 85:
 		'<<$boydesc>> tells you that he wants you to suck it'
-
-		act 'Refuse':gt 'cafe3', '0'
+		gs 'willpower', 'bj', 'resist', 'medium'
+		if will_cost <= pcs_willpwr:
+			act 'Refuse (<<will_cost>> Willpower)':
+				*clr & cla
+				gs 'willpower', 'pay', 'resist'
+				gs 'stat'
+				gt 'cafe3', '0'
+			end
+		else
+			act 'Refuse (<font color="red"><<will_cost>> Willpower</font>)': '<br><font color="red">You don''t have enough willpower to use this action.</font>'
+		end	
 
 		act 'Suck it':
 			guy += 1
@@ -208,12 +222,21 @@ if $ARGS[0] = '0':
 					act 'Leave':gt 'street'
 				end
 			end
-		!!act 'Leave':gt 'street'
 		end
 	else
-		'<<$boydesc>> tells you that he wants to make an ass omelette.'
+		'<<$boydesc>> tells you that he wants to fuck your ass.'
 
-		act 'Refuse':gt 'cafe3', '0'
+		gs 'willpower', 'sex', 'resist', 'medium'
+		if will_cost <= pcs_willpwr:
+			act 'Refuse (<<will_cost>> Willpower)':
+				*clr & cla
+				gs 'willpower', 'pay', 'resist'
+				gs 'stat'
+				gt 'cafe3', '0'
+			end
+		else
+			act 'Refuse (<font color="red"><<will_cost>> Willpower</font>)': '<br><font color="red">You don''t have enough willpower to use this action.</font>'
+		end	
 
 		act 'Agree':
 			cla
@@ -241,25 +264,32 @@ end
 if $ARGS[0] = 'toilet':
 	cla
 	gs 'dinsexFX'
-	'You went to the toilet with a guy, <<$boydesc>> you began to kiss and caress. Then he offered you to suck it.'
+	'You went to the toilet with a guy, <<$boydesc>> you began to kiss and caress. Then he asks you to suck it.'
 
-	act 'Refuse':
-		cla
-		guy += 1
-		dick = rand (8, 20)
-		silavag = rand (0,2)
-		dynamic $vagstart2
-		'<center><img <<$set_imgh>> src="images/locations/city/residential/cafe/sex/vagtualet.jpg"></center>'
-		'You attempt to abandon your hot lover but he refuses, he turns your back to him and bends you forwards.'
-		'You feel <<$boydesc>> bare your ass and something solid against your vagina.'
-		'You''re fucked doggy style in the toilet.'
-		dynamic $vagend
-		gs 'arousal', 'vaginal', 15, 'sub', 'rough'
-		gs 'arousal', 'end'
-		gs 'stat'
+	gs 'willpower', 'bj', 'resist', 'medium'
+	if will_cost <= pcs_willpwr:
+		act 'Refuse (<<will_cost>> Willpower)':
+			*clr & cla
+			gs 'willpower', 'pay', 'resist'
+			gs 'stat'
+			guy += 1
+			dick = rand (8, 20)
+			silavag = rand (0,2)
+			dynamic $vagstart2
+			'<center><img <<$set_imgh>> src="images/locations/city/residential/cafe/sex/vagtualet.jpg"></center>'
+			'You attempt to abandon your hot lover but he refuses, he turns your back to him and bends you forwards.'
+			'You feel <<$boydesc>> bare your ass and something solid against your vagina.'
+			'You''re fucked doggy style in the toilet.'
+			dynamic $vagend
+			gs 'arousal', 'vaginal', 15, 'sub', 'rough'
+			gs 'arousal', 'end'
+			gs 'stat'
 
-		act 'Leave':gt 'kafe', 'start'
-	end
+			act 'Leave':gt 'kafe', 'start'
+		end
+	else
+		act 'Refuse (<font color="red"><<will_cost>> Willpower</font>)': '<br><font color="red">You don''t have enough willpower to use this action.</font>'
+	end	
 
 	act 'Suck it':
 		cla

+ 3 - 6
locations/cafe_parco.qsrc

@@ -37,28 +37,25 @@ if $args[0]= 'inner':
 		'You notice Vicky and Vanya sitting at a table.'
 
 		if mey_vika['mey_vika_qw'] < 3:
-			!! monochromatic
 			'You''re not really close with either of them, you don''t really know how to approach them.'
 
 		elseif mey_vika['mey_vika_qw'] < 5:
 			'While in passing of their table you greet them with a simple "Hi".'
 
-			!! connected relationship and response
-			if npc_rel["A15"] < 60:
+			if npc_rel["A15"] < 20:
 				'Vicky and Vanya only glance in your direction and turn away, having nothing more to say you quickly moved on...'
 			else
 				'Vicky and Vanya answer "Hi" back at the same time, you just wanted to greet them so you continued on your way.'
 			end
 
 		elseif mey_vika['mey_vika_qw'] >= 5:
-			if npc_rel["A15"] < 60:
+			if npc_rel["A15"] < 50:
 				'You approach the couple and greet them, but they don''t pay any attention to you.'
 			else
 				'You approach the couple and greet them, right away Vicky starts gossiping, as always, Vanya, mostly joked about the things you two were talking about. You chatted for a few minutes...'
 			end
 
-			!! something is going to happen here
-			if npc_rel["A15"] >= 80:
+			if npc_rel["A15"] >= 60:
 				if mey_vika['mey_vika_qw'] = 10:
 					cla
 					'Vicky and Vanya invite you to join them.'

+ 11 - 3
locations/cfnm.qsrc

@@ -114,9 +114,17 @@ if $ARGS[0] = 'blow2':
 		act 'Take the facial':gt 'cfnm', 'blow4'
 		act 'Let him cum in your mouth':gt 'cfnm', 'blow3'
 
-		if pcs_dom > 0:
-			act 'Make him cum on the floor':gt 'cfnm', 'end'
-		end
+		gs 'willpower', 'swallow', 'resist', 'medium'
+		if will_cost <= pcs_willpwr:
+			act 'Make him cum on the floor (<<will_cost>> Willpower)':
+				*clr & cla
+				gs 'willpower', 'pay', 'resist'
+				gs 'stat'
+				gt 'cfnm', 'end'
+			end
+		else
+			act 'Make him cum on the floor (<font color="red"><<will_cost>> Willpower</font>)': '<br><font color="red">You don''t have enough willpower to use this action.</font>'
+		end	
 	elseif pcs_horny >= 90:
 		act 'Surrender yourself to him':gt 'cfnm', 'sex'
 	end

+ 54 - 49
locations/dinnpc.qsrc

@@ -4,7 +4,6 @@ $din_predlog_dima_bj = {
 	act 'Get down on your knees':
 		*clr & cla
 		DimaRudeQW += 1
-		sub += 1
 		gs 'stat'
 		'<center><b><font color="maroon"><<$npc_firstname[''A<<numnpc>>'']>> <<$npc_lastname[''A<<numnpc>>'']>></font></b></center>'
 		'<center><img <<$set_imgh>> src="images/pc/npc_headshots/big<<numnpc>>.jpg"></center>'
@@ -72,42 +71,47 @@ $din_predlog_dima_bj = {
 
 $din_dima_predlog = {
 	menu_off = 1
-	act 'Who does he think you are?! - Slap him':
-		*clr & cla
-		pcs_dom += 1
-		npc_rel['A1'] = 0
-		gs 'stat'
-		'<center><b><font color="maroon"><<$npc_firstname[''A1'']>> <<$npc_lastname[''A1'']>></font></b></center>'
-		'<center><img <<$set_imgh>> src="images/pc/npc_headshots/big1.jpg"></center>'
-		'You give Dimka a good, hard, resounding slap that causes him to yelp like a girl as he clutched his red cheek. His immediate reaction only adds to your satisfaction, but the look he gives you is one of pure hatred - one that makes you wonder if he''s going to hit you back now.' 
-		'But instead, he backs away from you, looking like an animal trapped in a corner. His voice is more of an angry hiss:' 
-		'"You''ll pay for this, sooner or later. Don''t ever come near me again, bitch! Get the hell away from me!"'
-
-		act 'He doesn''t have to tell you twice - Leave at once':gt $loc, $metka
-	end
-
-	act '... is he serious? Think about what he said for a moment':
-		*clr & cla
-		gs 'stat'
-		'<center><b><font color="maroon"><<$npc_firstname[''A<<numnpc>>'']>> <<$npc_lastname[''A<<numnpc>>'']>></font></b></center>'
-		'<center><img <<$set_imgh>> src="images/pc/npc_headshots/big<<numnpc>>.jpg"></center>'
-		'Your eyes widen and you flush at his proposal - surely, he didn''t actually mean that you had to give him a blowjob right here, just so you could go out with him... right?' 
-		'As if to answer your question, Dimka unbuttons his pants. "Come on, are you gonna keep me waiting all night long? Which is it? Are you brave and fun? Or just another prude?"'
-
-		act 'That does it! - Slap him':
+	gs 'willpower', 'bj', 'self', 'medium'
+	if will_cost <= pcs_willpwr:
+		act 'Who does he think you are?! - Slap him (<<will_cost>> Willpower)':
 			*clr & cla
-			pcs_dom += 1
-			npc_rel['A<<numnpc>>'] = 0
+			gs 'willpower', 'pay', 'self'
+			npc_rel['A1'] = -20
 			gs 'stat'
-			'<center><b><font color="maroon"><<$npc_firstname[''A<<numnpc>>'']>> <<$npc_lastname[''A<<numnpc>>'']>></font></b></center>'
-            '<center><img <<$set_imgh>> src="images/pc/npc_headshots/big<<numnpc>>.jpg"></center>'
+			'<center><b><font color="maroon"><<$npc_firstname[''A1'']>> <<$npc_lastname[''A1'']>></font></b></center>'
+			'<center><img <<$set_imgh>> src="images/pc/npc_headshots/big1.jpg"></center>'
 			'You give Dimka a good, hard, resounding slap that causes him to yelp like a girl as he clutched his red cheek. His immediate reaction only adds to your satisfaction, but the look he gives you is one of pure hatred - one that makes you wonder if he''s going to hit you back now.' 
 			'But instead, he backs away from you, looking like an animal trapped in a corner. His voice is more of an angry hiss:' 
 			'"You''ll pay for this, sooner or later. Don''t ever come near me again, bitch! Get the hell away from me!"'
-
 			act 'He doesn''t have to tell you twice - Leave at once':gt $loc, $metka
 		end
-
+	else
+		act 'Who does he think you are?! - Slap him (<font color="red"><<will_cost>> Willpower</font>)': '<br><font color="red">You don''t have enough willpower to use this action.</font>'
+	end	
+	act '... is he serious? Think about what he said for a moment':
+		*clr & cla
+		gs 'stat'
+		'<center><b><font color="maroon"><<$npc_firstname[''A<<numnpc>>'']>> <<$npc_lastname[''A<<numnpc>>'']>></font></b></center>'
+		'<center><img <<$set_imgh>> src="images/pc/npc_headshots/big<<numnpc>>.jpg"></center>'
+		'Your eyes widen and you flush at his proposal - surely, he didn''t actually mean that you had to give him a blowjob right here, just so you could go out with him... right?' 
+		'As if to answer your question, Dimka unbuttons his pants. "Come on, are you gonna keep me waiting all night long? Which is it? Are you brave and fun? Or just another prude?"'
+		gs 'willpower', 'bj', 'self', 'medium'
+		if will_cost <= pcs_willpwr:
+			act 'That does it! - Slap him (<<will_cost>> Willpower)':
+				*clr & cla
+				gs 'willpower', 'pay', 'self'
+				npc_rel['A1'] = -20
+				gs 'stat'
+				'<center><b><font color="maroon"><<$npc_firstname[''A<<numnpc>>'']>> <<$npc_lastname[''A<<numnpc>>'']>></font></b></center>'
+				'<center><img <<$set_imgh>> src="images/pc/npc_headshots/big<<numnpc>>.jpg"></center>'
+				'You give Dimka a good, hard, resounding slap that causes him to yelp like a girl as he clutched his red cheek. His immediate reaction only adds to your satisfaction, but the look he gives you is one of pure hatred - one that makes you wonder if he''s going to hit you back now.' 
+				'But instead, he backs away from you, looking like an animal trapped in a corner. His voice is more of an angry hiss:' 
+				'"You''ll pay for this, sooner or later. Don''t ever come near me again, bitch! Get the hell away from me!"'
+				act 'He doesn''t have to tell you twice - Leave at once':gt $loc, $metka
+			end
+		else
+			act 'That does it! - Slap him (<font color="red"><<will_cost>> Willpower</font>)': '<br><font color="red">You don''t have enough willpower to use this action.</font>'
+		end	
 		act '"And you promise not to tell anyone?"':
 			*clr & cla
 			pcs_dom += 1
@@ -136,11 +140,11 @@ $din_igor_disco_bj = {
 		dick = 6
 		gs 'stat'
 		'<center><img <<$set_imgh>> src="images/shared/sex/blowjob/cocksucker5.jpg"></center>'
-		'You sit on your haunches and Igor pulls his dick out of his pants... and it takes all of your resolve to remain straightfaced. His penis is tiny! Igor''s small, thin member sticks out of his pubic hair like a mushroom in a meadow - that image alone is enough to almost make you burst into laughter, especially considering that you''ve seen mushrooms bigger than that. But to your luck, it''s too dark for him to see your face twitch and a few coughs cover your stifled laughter until you are mentally prepared to do what you came here for.' 
-		''
+		'You sit on your haunches and Igor pulls his dick out of his pants... and it takes all of your resolve to remain straight faced. His penis is tiny! Igor''s small, thin member sticks out of his pubic hair like a mushroom in a meadow - that image alone is enough to almost make you burst into laughter, especially considering that you''ve seen mushrooms bigger than that. But to your luck, it''s too dark for him to see your face twitch and a few coughs cover your stifled laughter until you are mentally prepared to do what you came here for.' 
+		*nl
 		'Actually feeling somewhat disappointed by his size, now that you''re getting to the blowjob part, you gently wrap your <<$liptalk>> around the small cock... but sucking on it like you would a normal penis doesn''t work because you simply can''t bob up and down its length when there is no length to begin with. Even sucking on it is hard because of its size, or lack thereof.'
 		'So, instead, you begin to ''fondle it'' inside your mouth, squeezing it with your lips and licking it all over, swirling your tongue easily around most of it. Igor groans, audibly enjoying the treatment. More so than you expected, in fact, because not a minute after you''ve started, you notice his hips bucking against your head and taste a few bland drops of semen that would barely constitute a sip of water.'
-		''
+		*nl
 		'You can''t help but feel a little sorry for Igor: Having a tiny dick, no stamina AND only a few droplets of semen? The guy should apply for a certificate of disability. And the poor woman who''s gonna date him someday...'
 		'All in all, this was memorable in all the bad ways.'
 
@@ -166,7 +170,9 @@ $din_igor_dima_disco_bj = {
 		gs 'stat'
 		'<center><img <<$set_imgh>> src="images/shared/sex/group/cocksucker6.jpg"></center>'
 		'You sit on your haunches and Igor pulls his dick out of his pants... and it takes all of your resolve to remain straightfaced. His penis is tiny! Igor''s small, thin member sticks out of his pubic hair like a mushroom in a meadow - that image alone is enough to almost make you burst into laughter, especially considering that you''ve seen mushrooms bigger than that. Dimka''s 16cm dick looks like a tree trunk in comparison and only by focusing your eyes on him do you manage to maintain your composure.' 
+		*nl
 		'You take a cock into each hand and move your mouth back and forth between them. Until then, you haven''t been able to tell what a difference it makes to have a large dick to play with but now, being able to compare them side by side, you feel that it''s a lot more satisfying to suck a bigger dick like Dimka''s, and it shows in your enthusiasm.' 
+		*nl
 		'Not that Igor seems to mind, as long as you don''t stop. In fact, even though you''re paying more attention to Dimka, Igor is the first to be ready to come and Dimka roughly uses your mouth to catch up, then both stick the tips of their dicks between your lips and start cuming into your mouth. Igor''s sperm is barely even worth mentioning, little as there was, but of Dimka''s there was so much you almost couldn''t keep it all in your mouth - almost. You swallow the semen down in two gulps, lick your lips and show them your empty mouth. Satisfied, the boys button up their pants and go back inside.'
 
 		gs 'arousal', 'bj', 5
@@ -194,34 +200,34 @@ $din_igor__disco = {
 			'<center><img <<$set_imgh>> src="images/pc/npc_headshots/big<<numnpc>>.jpg"></center>'
 			'You agreed to go out with Igor. A smile blossoms on his face and he hugs you tightly. "I''m so happy, <<$pcs_nickname>>! Now that we''re a couple... can we kiss?"'
 			'Something about the eagerness with which he suggests this makes you think he''s never kissed a girl before. And without waiting for your answer, he''s already leaning in to kiss you...'
-
-			if pcs_dom > 0:
-				act 'Stop him - If you go out with him, it''ll be on your terms':
+			gs 'willpower', 'misc', 'force', 'medium'
+			if will_cost <= pcs_willpwr:
+				act 'Stop him - If you go out with him, it''ll be on your terms (<<will_cost>> Willpower)':
 					*clr & cla
-					pcs_dom += 5
+					gs 'willpower', 'pay', 'force'
 					IgorDominaQW = 1
 					gs 'stat'
 					'<center><img <<$set_imgh>> src="images/pc/npc_headshots/big<<numnpc>>.jpg"></center>'
 					'You tell Igor that you''re not gonna give away kisses like that, and even though you''re grinning, your demeanor is unmistakeably dominant. So much so that Igor blushes and kneels before you. "<<$pcs_nickname>>, I beg you, on my knees, just one kiss! I''ll do anything for you - I''ll be your willing slave."'
 					'Even though you expected him to be put off by your refusal and dominance, Igor seems... happy that you are taking charge and not just letting him do as he pleases. It''s almost as if he wants to be dominated. But do you really want to dominate a guy?'
-
-					if pcs_dom >= 10:
-						act 'Yes, you do - "You may kiss my feet"':
+					gs 'willpower', 'misc', 'force', 'medium'
+					if will_cost <= pcs_willpwr:
+						act 'Yes, you do - "You may kiss my feet" (<<will_cost>> Willpower)':
 							*clr & cla
+							gs 'willpower', 'pay', 'force'
 							IgorLove += 20
 							gs 'stat'
 							'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/boy/igor/leg.jpg"></center>'
 							'You smile at Igor, kneeling at your feet, right here in public, and tell him that he may kiss your foot. Igor scrambles to the task with more enthusiasm than you thought possible: In no time at all, he is kissing your naked foot, caressing it with reverence and licking your toes, his tongue tickling you. He''s hunched over, leaning on one elbow, and at first you don''t understand why but simply enjoy this strange foot massage. It''s not until he groans and you see a tiny jet of sperm hit the pavement that you realize Igor had been masturbating to your feet - literally - right here in front of you while he kissed and caressed your toes.'
 							'As weird of a scene as that was, it feels oddly empowering that he could get off like that within the confines of what you allowed him to do. Even stranger is how he''s thanking you profusely.'
-
 							gs 'arousal', 'kiss', 5, 'dom', 'feet'
 							gs 'arousal', 'end'
 							gs 'stat'
-						
 							act 'That was unexpected - Leave':gt $loc, $metka
 						end
-					end
-
+					else
+						act 'Yes, you do - "You may kiss my feet" (<font color="red"><<will_cost>> Willpower</font>)': '<br><font color="red">You don''t have enough willpower to use this action.</font>'
+					end	
 					act 'Well, let''s not overdo it - Kiss him':
 						*clr & cla
 						IgorLove += 10
@@ -229,26 +235,25 @@ $din_igor__disco = {
 						'<center><img <<$set_imgh>> src="images/shared/sex/kiss/kiss.jpg"></center>'
 						'You tell Igor to get back on his feet and, meeting his eyes, kiss him. He responds with passion. It seems that your dominance has aroused him a little.'
 
-						gs 'arousal', 'kiss', 5, 'dom'
+						gs 'arousal', 'kiss_give', 5, 'dom'
 						gs 'arousal', 'end'
 						gs 'stat'
 		
 						act 'Enough for now - Leave':gt $loc, $metka
 					end
 				end
-			end
-
+			else
+				act 'Stop him - If you go out with him, it''ll be on your terms (<font color="red"><<will_cost>> Willpower</font>)': '<br><font color="red">You don''t have enough willpower to use this action.</font>'
+			end	
 			act 'Let Igor kiss you':
 				*clr & cla
 				IgorLove += 5
 				gs 'stat'
 				'<center><img <<$set_imgh>> src="images/shared/sex/kiss/kiss.jpg"></center>'
 				'You give in and give Igor a gentle kiss. He gives you a smile afterwards but almost seems a little disappointed. By what, you cannot tell.'
-
 				gs 'arousal', 'kiss', 5
 				gs 'arousal', 'end'
 				gs 'stat'
-		
 				act 'Enough of this - Leave':gt $loc, $metka
 			end
 		end

+ 61 - 49
locations/event.qsrc

@@ -33,8 +33,8 @@ end
 if $ARGS[0] = 'park':
 	cla
 	*clr
-	!!'<center><img <<$set_imgh>> src="images/locations/city/centralpark/sex/event/event.jpg"></center>'
-	'You find a quiet, deserted dead end pressed against the wall you start to kiss, but you want more.'
+	'<center><img <<$set_imgh>> src="images/locations/city/centralpark/sex/event/benchkiss.jpg"></center>'
+	'You find a quiet, deserted bench off the main paths, you sit together and you start to kiss, but you want more.'
 	gs 'arousal', 'kiss', 5
 	gs 'stat'
 	act 'Masturbate him':gt 'event', 'hand'
@@ -66,8 +66,8 @@ if $ARGS[0] = 'blow':
 		cla
 		swallow += 1
 		spafinloc = 12
-gs 'cum_manage'
-		!!'<center><img <<$set_imgh>> src="images/shared/sex/cum/mouth/cum30.jpg"></center>'
+		gs 'cum_manage'
+		'<center><img <<$set_imgh>> src="images/shared/sex/cum/mouth/cum30.jpg"></center>'
 		'A jet of hot sperm hits you in the mouth. You begin to swallow cum, and <<$loverdesc[lover_number]>> continues to cum in your mouth. Finally, the flow of hot pungent liquid stops.'
 
 		act 'Leave':
@@ -82,26 +82,26 @@ gs 'cum_manage'
 		cla
 
 		if haraklover[lover_number] = 0:
-			!!'<center><img <<$set_imgh>> src="images/shared/sex/handjob/hand.jpg"></center>'
+			'<center><img <<$set_imgh>> src="images/shared/sex/handjob/hj.jpg"></center>'
 			'You take his cock out of your mouth and <<$loverdesc[lover_number]>> finishes in your hand.'
 		elseif haraklover[lover_number] = 1:
 			tiprand = rand(0, 3)
 
 			if tiprand < 3:
-				!!'<center><img <<$set_imgh>> src="images/shared/sex/handjob/hand.jpg"></center>'
+				'<center><img <<$set_imgh>> src="images/shared/sex/handjob/hj.jpg"></center>'
 				'You take his cock out of your mouth and <<$loverdesc[lover_number]>> finishes in your hand.'
 			elseif tiprand = 3:
 				facial += 1
 				spafinloc = 11
-gs 'cum_manage'
-				!!'<center><img <<$set_imgh>> src="images/shared/sex/cum/facial/facial16.jpg"></center>'
+				gs 'cum_manage'
+				'<center><img <<$set_imgh>> src="images/shared/sex/cum/facial/facial0,8.jpg"></center>'
 				'You took his cock out of your mouth and immediatly <<$loverdesc[lover_number]>> cums directly on your face, covering it with his warm and sticky seed.'
 			end
 		elseif haraklover[lover_number] = 2:
 			facial += 1
 			spafinloc = 11
-gs 'cum_manage'
-			!!'<center><img <<$set_imgh>> src="images/shared/sex/cum/facial/facial16.jpg"></center>'
+			gs 'cum_manage'
+			'<center><img <<$set_imgh>> src="images/shared/sex/cum/facial/facial0,8.jpg"></center>'
 			'<<$loverdesc[lover_number]>> holds your hair, pulls his dick out of your mouth and finishes on your face. Covering it with warm and sticky cum.'
 		end
 
@@ -152,13 +152,24 @@ if $ARGS[0] = 'dima':
 			'"Thanks, My name is Dmitry".'
 			'You hold out your hand to him - "<<$pcs_nickname>>".'
 			'He was a man in his forties, average height, a pretty strong constitution, short dark hair, nose slightly hooked. Off you go, speaking about the weather, and current affairs. Finally, Dima says that you had arrived at his home. The house is a two-story, pretty cute. In the living room there is a man holding a bottle of beer.'
+			*nl
 			'"Hi Dima, and I was bored and didn''t know what to do", he says and adds, "What a beautiful woman you have with you, this lovely girl will surely brighten up our evening.". His eyes look all over your body and stop on your breasts.'
 			'"<<$pcs_nickname>> meet Aleksei, my friend. My wife is not home yet, she went to see her mother, the train must be running late. Luda should be here soon and then we will be at full strength" Dima said smiling.'
+			*nl
 			'"Aleksei, but you can call me Alex" introduced his friend. He was slightly taller than Dima and looked a little older. Dark-haired with blue eyes, a rather handsome man. You thought to yourself, "What am I doing here?" Probably, there is no wife, it''s not too late to get out of here! But Dmitry puts his arm around your waist and leads you into the kitchen. "Alex, you have set the table without me, well done!" says Dmitry. "Here, have a seat in the middle <<$pcs_nickname>>, we will look after you" said Alex while helping you sit. On the table are plates of snacks and a bottle of vodka. Dima pours the vodka. You say:'
 			'"I don''t usually drink vodka." Maybe this was a bad idea.'
-
-			act 'Make excuses and go':gt'street'
-			act 'Drink vodka':pcs_hydra -=10 & gt'event','dima2'
+			gs 'willpower', 'drink', 'resist', 'medium'
+			if will_cost <= pcs_willpwr:
+				act 'Make excuses and go (<<will_cost>> Willpower)':
+					*clr & cla
+					gs 'willpower', 'pay', 'resist'
+					gs 'stat'
+					gt'street'
+				end
+			else
+				act 'Make excuses and go (<font color="red"><<will_cost>> Willpower</font>)': '<br><font color="red">You don''t have enough willpower to use this action.</font>'
+			end	
+			act 'Drink vodka': gt'event','dima2'
 		end
 	end
 
@@ -170,14 +181,15 @@ if $ARGS[0] = 'dima2':
 	'You drank one shot, then another, and so on, until you are a little tipsy. The men took turns to telling you entertaining stories, you had a lot of fun. The wife did not come of course, but you never thought to ask about it.'
 	'Dima turns on some music, and invites you to dance. Alexei protested: "You can''t dance with Dima and not me!"'
 	'You smile at Alex. Dima immediately begins to grope your ass, you dance slowly, and so close to each other, that you can feel his erect penis pressed against your crotch. Alex cames up behind you, holds your shoulders and his hands began to slowly lower to your chest.'
+	*nl
 	'Drunk and the presence of two excited men has an effect. You shamelessly twist your hips, alternating between pushing your ass against Alexs groin and then forwards to caress Dimas cock. Alexei caresses and squeezes your breasts, pinching your nipples through the fabric.'
 	'Dima rubs your pussy through your clothes. You softly moan with excitement. Then the men begin to undress you. You stand between the two men in just your panties and horny and desiring both of them.'
 	'"Just beautiful. Look Alex, at this lustful bitch I have brought!"'
 	'"Yes, my friend. She will be our whore today. Do you want us to fuck you?" asks Alex.'
 	'"Look how wet this whore is, she''s just waiting for us to fuck her!" Dima roughly pulls aside your panties and thrusts his fingers into your pussy.'
-	gs 'arousal', 'vaginal_finger', 60, 'sub', 'group'
-	gs 'arousal', 'foreplay', 60, 'sub', 'group'
-	minut -= 60
+	gs 'arousal', 'vaginal_finger', 5, 'sub', 'group'
+	gs 'arousal', 'foreplay', 5, 'sub', 'group'
+	minut -= 5
 	gs 'stat'
 	act 'Moan with pleasure':gt 'event', 'dima3'
 end
@@ -206,7 +218,7 @@ if $ARGS[0] = 'dima4':
 	gs 'arousal', 'vaginal_finger', 10, 'sub', 'group', 'rough'
 	gs 'arousal', 'anal_finger', 10, 'sub', 'group', 'rough'
 	gs 'arousal', 'anal', 10, 'sub', 'group', 'rough'
-	minut -= 10
+	minut -= 30
 	gs 'stat'
 	act 'Scream in pain':gt 'event', 'dima5'
 end
@@ -282,14 +294,14 @@ end
 if $ARGS[0] = 'dima8':
 	cls
 	spank += 1
-	minut += 10
+	minut += 5
 	gs 'stat'
 	'<center><img <<$set_imgh>> src="images/characters/city/dmitry/sex/dima4.jpg"></center>'
 	'"Please" you beg with tears in your eyes, "I will do whatever you want."'
 	'"You say you will, but this way I will know."'
 	'He puts you doggy-style on the floor and starts beating your ass with the belt, you cry and beg him to stop. Ass burning with pain. Each hit getting more painful.'
 	'"Get up bitch!" he ties your hands with the belt, "suck my dick before bedtime."'
-
+	gs 'pain', 2, 'asscheeks', 'spank'
 	act 'Suck':gt 'event', 'dima9'
 end
 
@@ -298,8 +310,8 @@ if $ARGS[0] = 'dima9':
 	pcs_throat += 1
 	gs 'stat'
 	'<center><img <<$set_imgh>> src="images/characters/city/dmitry/sex/dima5.jpg"></center>'
-	'Alex holds your head and starts to fuck your mouth, it does not last very long. His dick is big and goes deep into your throat, he holds your hair. When he has finished, he ties you to a radiator and colapses on the sofa bed.'
-	gs 'arousal', 'bj', 30, 'sub', 'deepthroat', 'rough', 'bound'
+	'Alex holds your head and starts to fuck your mouth, it does not last very long. His dick is big and goes deep into your throat, he holds your hair. When he has finished, he ties you to a radiator and collapses on the sofa bed.'
+	gs 'arousal', 'bj', 5, 'sub', 'deepthroat', 'rough', 'bound'
 	gs 'stat'
 	act 'Cry from the beating':gt 'event', 'dima10'
 end
@@ -372,7 +384,7 @@ end
 
 if $ARGS[0] = 'dima15':
 	cls
-	minut += 30
+	minut += 10
 	runrnd = rand(0, 10)
 
 	gs 'stat'
@@ -407,7 +419,6 @@ end
 
 if $ARGS[0] = 'dima17':
 	cls
-	pcs_dom += 2
 	runrnd = rand(0, 10)
 	gs 'stat'
 	'<center><img <<$set_imgh>> src="images/characters/city/dmitry/sex/dima6.jpg"></center>'
@@ -434,16 +445,14 @@ end
 
 if $ARGS[0] = 'dima19':
 	clr
-	minut += 5
 	gs 'stat'
-	'Subdued and in shock, you have lost any desire to stand upto these men'
+	'Subdued and in shock, you have lost any desire to stand up to these men'
 
 	act 'Go to them':gt 'event', 'dima20'
 end
 
 if $ARGS[0] = 'dima20':
 	cls
-	minut += 30
 	gs 'stat'
 	'"Well done, bitch. Now that you are well trained, time for your reward"'
 
@@ -459,10 +468,10 @@ if $ARGS[0] = 'dima21':
 	'<center><img <<$set_imgh>> src="images/characters/city/dmitry/sex/dima3.jpg"></center>'
 	'They fuck you for a long time in various poses, some of which would be the envy of the most perverted sexual deviants. After this, they let you go'
 	$orgasm_or = 'yes'
-	gs 'arousal', 'bj', 180, 'sub', 'group', 'deepthroat', 'rough'
-	gs 'arousal', 'vaginal', 180, 'sub', 'group', 'rough'
-	gs 'arousal', 'anal', 180, 'sub', 'group', 'rough'
-	minut -= 180
+	gs 'arousal', 'bj', 40, 'sub', 'group', 'deepthroat', 'rough'
+	gs 'arousal', 'vaginal', 40, 'sub', 'group', 'rough'
+	gs 'arousal', 'anal', 40, 'sub', 'group', 'rough'
+	minut -= 80
 	gs 'arousal', 'end'
 	gs 'stat'
 	act 'Leave':gt 'street'
@@ -506,13 +515,20 @@ if $ARGS[0] = 'dima32':
 	'You look around. While you were unconscious, you were dressed and taken to the street. In your mouth, a metallic taste. Your hands are tied behind your back.'
 	'"And now, bitch, I''ll teach you safe sex".'
 	'With these words, Alex puts you on your knees in front of him, He pulls out his penis and puts it in your mouth.'
-	gs 'arousal', 'bj', 30, 'sub'
+	gs 'arousal', 'bj', 10, 'sub'
 	gs 'stat'
 	act 'Resist':gt 'event', 'dima33'
-
-	If pcs_kick > 50:
-		act 'Kick':gt 'event', 'dima37'
-	end
+	gs 'willpower', 'misc', 'self', 'medium'
+	if will_cost <= pcs_willpwr:
+		act 'Kick (<<will_cost>> Willpower)':
+			*clr & cla
+			gs 'willpower', 'pay', 'self'
+			gs 'stat'
+			gt 'event', 'dima37'
+		end
+	else
+		act 'Kick (<font color="red"><<will_cost>> Willpower</font>)': '<br><font color="red">You don''t have enough willpower to use this action.</font>'
+	end	
 end
 if $ARGS[0] = 'dima33':
 	cla
@@ -533,7 +549,6 @@ if $ARGS[0] = 'dima34':
 	cla
 	clr
 	*clr
-	minut += 30
 	gs 'stat'
 	'<center><img <<$set_imgh>> src="images/locations/city/residential/street/sex/10028_tommypistoljacquelineblacklady_187.jpg"></center>'
 	'Alex realizes, you''re not going to continue humoring him:'
@@ -558,7 +573,7 @@ gs 'cum_manage'
 	'Alex enters you from behind. He grabs your but with both hands and squeezes it tightly, while thrusting vigorously. After a while, you orgasm from the sensation.'
 	'"Much like this morning, only this time no bitting!" Says Alex, further increasing the tempo.'
 	'Suddenly he stops, you are turned around and pushed to your knees. You hit the marble floor hard, and feel something warm hit and then run down your face.'
-	'"Your Stuff is in that box. Hope, You enjoyed the lesson." With these words Alex loosenes the straps on your hands, and you hear him walking away.'
+	'"Your Stuff is in that box. Hope, You enjoyed the lesson." With these words Alex loosens the straps on your hands, and you hear him walking away.'
 	$orgasm_or = 'yes'
 	gs 'arousal', 'vaginal', 30, 'sub', 'rough', 'bound'
 	gs 'stat'
@@ -585,11 +600,11 @@ if $ARGS[0] = 'dima37':
 	money = 0
 	gs 'stat'
 	'<center><img <<$set_imgh>> src="images/locations/city/citycenter/gym/kickboxing/kik.jpg"></center>'
-	'Those classes at the fitness centre were not in vain. You manage to quickly stand and kick Alexs leg out from under him, he falls and bangs his head, hard.'
+	'Those classes at the fitness center were not in vain. You manage to quickly stand and kick Alexs leg out from under him, he falls and bangs his head, hard.'
 	'You run away, and only when you don''t think you can run any further, stop. You start looking for a way to free your hands and find a sharp stone.'
 	'After some time your hands are free, you remove the gag from your mouth, and finally you are able to close it. You jaw and teeth ache from running while wearing the ring-gag.'
 	'Your dress is trampled and torn in places, but still able to cover your body. You are lost, but after a while find the supermarket, where you met Dima.'
-	'Only then do you realise Alex took all your money.'
+	'Only then do you realize Alex took all your money.'
 
 	act 'Relax':gt 'street'
 end
@@ -606,7 +621,7 @@ if $ARGS[0] = 'dima38':
 	'You nod. Then Alex loosens the ties on your hands and, pointing to the bushes, says:'
 	'"There''s your stuff."'
 	'After Alex leaves, you free your hands, mouth, and find your stuff in the bushes.'
-	gs 'arousal', 'bj', 30, 'sub', 'deepthroat', 'rough', 'bound'
+	gs 'arousal', 'bj', 10, 'sub', 'deepthroat', 'rough', 'bound'
 	gs 'arousal', 'end'
 	gs 'stat'
 	act 'Leave':gt 'street'
@@ -625,13 +640,12 @@ if $ARGS[0] = 'dima39':
 end
 if $ARGS[0] = 'dima40':
 	cls
-	minut += 30
 	pcs_vag += 2
 	gs 'stat'
 	'<center><img <<$set_imgh>> src="images/locations/city/residential/street/sex/13606_zenzaragginikisweet113.jpg"></center>'
 	'"Good girl", With these words Alex pulls off your dress, His cock is already standing to attention, and he starts fucking you.'
 	'You begin to move rhythmically, but the bus keeps bouncing around, adding new sensations.'
-	gs 'arousal', 'vaginal', 30, 'sub', 'exhibitionism'
+	gs 'arousal', 'vaginal', 10, 'sub', 'exhibitionism'
 	gs 'stat'
 	act 'Change position':gt 'event', 'dima41'
 end
@@ -665,7 +679,7 @@ if $ARGS[0] = 'dima42':
 	'"There''s a good girl", he says "see what you can do, when you try. I don''t think there''s anything more I can teach you!"'
 	'Alex ties your hands and takes you, still naked, to the road. He pushes you to your knees, produces a marker and writes on your stomach "Cum" with an arrow pointing up, and tells you:'
 	'"I''ll be gone for a couple of hours, when I get back, I''ll bring your stuff. You just sit here and show off your skills, like a good little girl!"'
-	gs 'arousal', 'bj', 30, 'sub', 'deepthroat', 'bound'
+	gs 'arousal', 'bj', 10, 'sub', 'deepthroat', 'bound'
 	gs 'stat'
 	act 'Wait for his return':gt 'event', 'dima43'
 	act 'Leave':gt 'event', 'dima44'
@@ -686,7 +700,7 @@ if $ARGS[0] = 'dima43':
 end
 if $ARGS[0] = 'dima44':
 	cls
-	minut += 15
+	minut += 5
 	money = 0
 	gs 'stat'
 	'<center><img <<$set_imgh>> src="images/locations/city/residential/street/sex/13606_zenzaragginikisweet264.jpg"></center>'
@@ -752,10 +766,10 @@ if $ARGS[0] = 'dima47':
 	gs 'stat'
 	'<center><img <<$set_imgh>> src="images/locations/city/residential/street/sex/15933_markdavisdonnaannika_494.jpg"></center>'
 	'"That''s wonderful", she says, "I''ll go tell your friend, give you some space so you''re not distracted". With these words, she points to the hole, which already has a new member.'
-	'You dutifully bend down, and begin to service the next stranger. This carrys on. Men erupt, leave and another appears.'
+	'You dutifully bend down, and begin to service the next stranger. This carries on. Men erupt, leave and another appears.'
 	'Lost in your enthusiasm, you don''t hear Alex enter the room.'
-	'The realization that you are not alone in the room hits you just as he forcfully rams his cock into your pusssy.'
-	'You have decide to try not to be distracted, and continue to suck, despite the pounding you are recieving.'
+	'The realization that you are not alone in the room hits you just as he forcefully rams his cock into your pussy.'
+	'You have decide to try not to be distracted, and continue to suck, despite the pounding you are receiving.'
 	'When the man you are serving finishes, you, as before, swallow and are ready to accept the next, but the hole remains empty. It seems you have work off the money Alex had gotten.'
 	'Alex efforts have not gone unnoticed, and soon you shake in orgasm. Almost immediately, He pulls out his penis, and turns your head so that it is jabbing you in the face.'
 	'It is now a reflex action for you to help him to finish. After you cleaned his cock, he leaves the booth.'
@@ -895,7 +909,6 @@ end
 
 if $ARGS[0] = 'scoreslut2':
 	cls
-	SUB += 2
 	minut += 5
 	gs 'stat'
 	'<center><img <<$set_imgh>> src="images/characters/city/dmitry/sex/dima6.jpg"></center>'
@@ -906,7 +919,6 @@ end
 
 if $ARGS[0] = 'scoreslut3':
 	cls
-	SUB += 2
 	minut += 5
 	gs 'stat'
 	'<center><img <<$set_imgh>> src="images/characters/city/dmitry/sex/dima6.jpg"></center>'

+ 28 - 18
locations/fit.qsrc

@@ -453,32 +453,42 @@ if $ARGS[0] = 'exercise end':
 			'You see a nice guy on the weight machine.'
 
 			act 'Continue':gt 'fit', 'dressing room'
+			act 'Flirt':
+				cla
+				*clr
+				guy += 1
+				gs 'npcgeneratec', 0, 'guy from the gym', rand(19,45)
+				gs 'boyStat', $npclastgenerated
+				samecount = 1
+				picrand = 17
+				'<center><img <<$set_imgh>> src="images/locations/city/citycenter/gym/sex/zal2.jpg"></center>'
+				'You go up to the guy lying on the machine, squat and start stroking his cock through his pants. The man rises and kisses you on the lips, then lowers his pants releasing his impressive size dick.'
 
-			if pcs_dom > 0:
-				act 'Flirt':
-					cla
-					*clr
-					guy += 1
-					gs 'npcgeneratec', 0, 'guy from the gym', rand(19,45)
-					gs 'boyStat', $npclastgenerated
-					samecount = 1
-					picrand = 17
-					'<center><img <<$set_imgh>> src="images/locations/city/citycenter/gym/sex/zal2.jpg"></center>'
-					'You go up to the guy lying on the machine, squat and start stroking his cock through his pants. The man rises and kisses you on the lips, then lowers his pants releasing his impressive size dick.'
-
-					gs 'arousal', 'foreplay', 10, 'dom'
-					gs 'stat'
+				gs 'arousal', 'foreplay', 10, 'dom'
+				gs 'stat'
 
-					act 'Suck':gt 'sex', 'minet'
-				end
+				act 'Suck':gt 'sex', 'minet'
 			end
 		elseif RESULT = 1:
 			cla
 			*clr
 			'<center><img <<$set_imgh>> src="images/locations/city/citycenter/gym/sex/zal3.jpg"></center>'
 			'As you finish training, a guy sits behind, caresses your breasts and kisses your ear, sucking the lobe.'
-
-			if pcs_dom > 0:act 'Hit him in the balls':pcs_dom += 1 & gt 'fit', 'dressing room'
+			gs 'willpower', 'misc', 'self', 'medium'
+			if will_cost <= pcs_willpwr:
+				act 'Hit him in the balls (<<will_cost>> Willpower)':
+					*clr & cla
+					gs 'willpower', 'pay', 'self'
+					gs 'stat'
+					gt 'fit', 'dressing room'
+					
+					'Event text'
+					
+					act 'Next action': gt 'farawayistan'
+				end
+			else
+				act 'Hit him in the balls (<font color="red"><<will_cost>> Willpower</font>)': '<br><font color="red">You don''t have enough willpower to use this action.</font>'
+			end	
 
 			act 'Enjoy':
 				cla

+ 24 - 25
locations/gKristinaZv.qsrc

@@ -59,7 +59,7 @@ if $ARGS[0] = '0':
 		'<center><img <<$set_imgh>> src="images/locations/pavlovsk/school/gym/sex/christina/dildobj.jpg"></center>'
 		'You nod obediently, not wanting Christina to beat you up again. You squat down in front of the dildo, and take it in your hands before carefully licking it and closing your lips around it. You expected an awful rubber taste, but it''s actually not that bad. You give the dildo a blowjob as all the girls in your class watch you, while Christina laughs. After a few minutes, she has seen enough and allows you to change.'
 
-		gs 'arousal', 'bj', 10, 'sub', 'humilation'
+		gs 'arousal', 'bj', 10, 'sub', 'humiliation'
 		gs 'arousal', 'end'
 		gs 'stat'
 		
@@ -78,7 +78,7 @@ if $ARGS[0] = '1':
 		'<center><img <<$set_imgh>> src="images/locations/pavlovsk/school/gym/sex/christina/dildobj2.jpg"></center>'
 		'You nod obediently, not wanting Christina to beat you up again. You kneel down in front of the dildo, and take it in your hands before carefully licking it and closing your lips around it. Then you stretch your body and rest your hands next to the stone before pushing yourself up. The dildo makes you have to push up higher than you normally would, and after only a few your arms get tired. As you struggle to keep your weight up, the dildo is driven further and further down your throat. All of the girls in your class watch you do your best to not choke on the dildo while Christina laughs evilly, and after a few more push-ups Christina has seen enough and allows you to stop and change.'
 
-		gs 'arousal', 'bj', 10, 'sub', 'humilation', 'deepthroat'
+		gs 'arousal', 'bj', 10, 'sub', 'humiliation', 'deepthroat'
 		gs 'arousal', 'end'
 		gs 'stat'
 		
@@ -97,7 +97,7 @@ if $ARGS[0] = '2':
 		'No moving your feet... this is going to be tricky. You spread your legs and awkwardly bend over, while one of the girls in your class holds the dildo up straight to help you out a little. Once you close your lips around it she pulls away, while you do your best to give the dildo a blowjob in this awkward position.'
 		'After a while, Christina nods approvingly: "Not bad, bitch. You''re getting good at this. Go get changed, I''ll have to think of something more challenging for you for next time."'
 
-		gs 'arousal', 'bj', 10, 'sub', 'humilation'
+		gs 'arousal', 'bj', 10, 'sub', 'humiliation'
 		gs 'arousal', 'end'
 		gs 'stat'
 		
@@ -117,7 +117,7 @@ if $ARGS[0] = '3':
 		'You get down on your knees in front of the middle dildo, and take it in your mouth. You close your lips around it and begin to suck it off, while rhythmically stroking the other two with your hands. You hear the girls of your class quietly whisper things at once another while you do what you''re told, and while Christina applauds you. "Very nice, bitch! Very nice! You''re a natural! Or is this just something you do on a regular basis?"'
 		'After a few minutes, she allows you to get changed.'
 
-		gs 'arousal', 'bj', 10, 'sub', 'humilation'
+		gs 'arousal', 'bj', 10, 'sub', 'humiliation'
 		gs 'arousal', 'end'
 		gs 'stat'
 		
@@ -138,7 +138,7 @@ if $ARGS[0] = '4':
 		'You get down on your haunches, and obediently lick the dildo before taking it in your mouth. You look yourself in the eye the whole time as instructed, and are rather fascinated by the look... this must be what you look like when you suck a guy off. Rather fascinated by the concept, you try to do some different things with your lips, and test out a few facial expressions.'
 		'Hearing the whispers of your classmates suddenly make you realize that you''re not alone here, there are a dozen girls watching you! Your face turns crimson red, and when Christina tells you can stop you feel deeply embarrassed.'
 
-		gs 'arousal', 'bj', 10, 'sub', 'humilation'
+		gs 'arousal', 'bj', 10, 'sub', 'humiliation'
 		gs 'arousal', 'end'
 		gs 'stat'
 		act 'Continue': gt 'gschool_lessons2', 'postphys2'
@@ -157,7 +157,7 @@ if $ARGS[0] = '5':
 		'<center><img <<$set_imgh>> src="images/locations/pavlovsk/school/gym/sex/christina/dildobj6.jpg"></center>'
 		'You move the dildo to your mouth, and slowly lick the head a few times. Urgh, this one tastes awful. Nevertheless, you don''t want to face the consequences for refusing so you open your mouth as wide as you can, and barely manage to get the dildo past your lips. It''s too big to go down your throat, so you spend the next minutes licking it and sucking on the tip, while the girls encourage you. After a few minutes, Christina says you can stop.'
 
-		gs 'arousal', 'bj', 10, 'sub', 'humilation'
+		gs 'arousal', 'bj', 10, 'sub', 'humiliation'
 		gs 'arousal', 'end'
 		gs 'stat'
 		
@@ -172,7 +172,7 @@ if $ARGS[0] = '6':
 	'"Alright, bitch. We''re doing something a little different today. Show us your smelly pussy, now."'
 	'Knowing better than to disobey, you obediently sit down on the floor and spreads your legs wide. Then you move your fingers to your pussy lips and pull them aside, opening your pussy for Christina and the rest of the girls to see.'
 	
-	gs 'arousal', 'foreplay', 5, 'sub', 'humilation'
+	gs 'arousal', 'foreplay', 5, 'sub', 'humiliation'
 	gs 'stat'
 	
 	act 'Continue':
@@ -190,7 +190,7 @@ if $ARGS[0] = '6':
 				'You try for a minute, but your suspicions were right... it doesn''t fit. Christina sees your helpless look and says, disgruntled: "Fine, use your fingers instead. But you better make a good show of it, or else!"'
 				'You do as she says, slowly licking your fingers before slowly sliding one up your butthole. Once you get used to it you add a second, but Christina is already bored by then. She tells you to get dressed, while she threatens you: "That was weak, <<$pcs_lastname>>. I''ll definitely be expecting a better effort from you next time."'
 			
-				gs 'arousal', 'anal_finger', 10, 'sub', 'humilation'
+				gs 'arousal', 'anal_finger', 10, 'sub', 'humiliation'
 				gs 'arousal', 'end'
 				gs 'stat'
 		
@@ -202,10 +202,10 @@ if $ARGS[0] = '6':
 				'<center><img <<$set_imgh>> src="images/locations/pavlovsk/school/gym/sex/christina/dildobj10.jpg"></center>'
 				'Christina looks surprised: "Still a virgin? How unexpected. Alright, I''m nothing if not flexible. We''ll work on you ass skills instead then."'
 				'She grabs her bag and throws a dildo your way. You''re relieved to see it''s not the huge one, this one should fit okay.'
-				'You lean backwards and after you spit on the dildo a few times, move it against your backside. All of the girls from your class watch you attentively as you slowly work the head in, and then begin to f*** your ass with it. Christina smiles: "You''re quite good at taking stuff up your butt, <<$pcs_nickname>>. How is this so easy for you? Do you practise on a daily basis or something?"'
+				'You lean backwards and after you spit on the dildo a few times, move it against your backside. All of the girls from your class watch you attentively as you slowly work the head in, and then begin to f*** your ass with it. Christina smiles: "You''re quite good at taking stuff up your butt, <<$pcs_nickname>>. How is this so easy for you? Do you practice on a daily basis or something?"'
 				'After a while Christina has seen enough, and allows you to change.'
 			
-				gs 'arousal', 'anal_dildo', 10, 'sub', 'humilation'
+				gs 'arousal', 'anal_dildo', 10, 'sub', 'humiliation'
 				gs 'arousal', 'end'
 				gs 'stat'
 				
@@ -216,10 +216,10 @@ if $ARGS[0] = '6':
 				'She grabs her bag and throws a dildo your way. By now you''ve had bigger things up there, this shouldn''t be too hard.'
 				'You do as you''re told and ease the dildo into your ass. As you thought, it''s no challenge and it slides in rather easily.'
 				'Christina notices, and says: "Too easy, bitch! That dildo is too small for your broken ass. Give it back and use your hand instead!"'
-				'You meekly obey and give the dildo back, nefore you slowly begin to work your entire hand into your asshole. The other girls in your class are stunned by your performance, but Christina indifferently moves up to you and gives your wrists a few light tugs, watching your sphincter stretch to its limits around it: "Very nice, bitch. Much better."'
+				'You meekly obey and give the dildo back, before you slowly begin to work your entire hand into your asshole. The other girls in your class are stunned by your performance, but Christina indifferently moves up to you and gives your wrists a few light tugs, watching your sphincter stretch to its limits around it: "Very nice, bitch. Much better."'
 				'She then allows you to get dressed and leave.'
 				
-				gs 'arousal', 'anal_fist', 10, 'sub', 'humilation'
+				gs 'arousal', 'anal_fist', 10, 'sub', 'humiliation'
 				gs 'arousal', 'end'
 				gs 'stat'
 				
@@ -237,7 +237,7 @@ if $ARGS[0] = '6':
 			'"Good bitch. Now show us what you can do with it".'
 			'You nod obediently and stick the dildo onto the tiled floor. Then you squat over it, guiding its head to your snatch. You sink yourself down on it until it''s mostly inside you, and begin to ride it. The other girls watch you intently as you slowly increase the tempo... you can see one or two of them squirming in their seats.'
 			
-			gs 'arousal', 'vaginal_dildo', 10, 'sub', 'humilation'
+			gs 'arousal', 'vaginal_dildo', 10, 'sub', 'humiliation'
 			gs 'stat'
 				
 			if pcs_horny >= 100:
@@ -273,14 +273,13 @@ if $ARGS[0] = '7':
 		'Ride it... hmm. After you take a second to see how you could best approach this, Christina slaps your ass with a towel: "Today, bitch."'
 		'Okay, okay. You turn your back towards the dildo, letting it rest in your ass crack before you bend over. One of the other girls quickly moves a bench over for you to rest your hands on, and you give her a grateful smile as you bend over further and guide the dildo into your pussy. You can feel your pussy getting wetter and wetter from the sensations, and within minutes the showers are filled with the squishy sound of your pussy getting filled by the dildo over and over.'
 		
-		gs 'arousal', 'vaginal_dildo', 10, 'sub', 'humilation'
+		gs 'arousal', 'vaginal_dildo', 10, 'sub', 'humiliation'
 		gs 'stat'
 		
 		if pcs_horny >= 100:
 			gs 'pain', 2, 'pinch', 'nipples'
 			gs 'pain', 2, 'slap', 'face'
 			pcs_horny -= rand(15,40)
-			pcs_dom += 1
 			gs 'stat'
 			'When you are close to reaching orgasm, you close your eyes and moan softly. Suddenly you feel a sharp pain in your nipples! It''s Christina, pinching them hard. She slaps you in the face and says: "Bad bitch! Whores don''t get to cum on my dildo!"'
 			$orgasm_or = 'no'
@@ -309,7 +308,7 @@ if $ARGS[0] = '8':
 		'<center><img <<$set_imgh>> src="images/locations/pavlovsk/school/gym/sex/christina/dildobj14.jpg"></center>'
 		'You try to hide your smile. You have gotten used to the idea that this is how gym class will be from now on, and today''s assignment looks like it could even be fun. You stand directly over the dildo before you squat down and guide it inside you. You begin slowly, but soon enough you pick up the pace and need to support your weight with your arms as you grind your hips down on it.'
 		
-		gs 'arousal', 'vaginal_dildo', 10, 'sub', 'humilation'
+		gs 'arousal', 'vaginal_dildo', 10, 'sub', 'humiliation'
 		gs 'stat'
 		
 		if pcs_horny >= 100:
@@ -346,7 +345,7 @@ if $ARGS[0] = '9':
 		'You sit down in front of the dildo and raise your hips to lower yourself down on it. Not fast enough for Christina''s tastes however, and she slaps your inner thigh with a towel: "Faster, bitch! We all have other places to be today!"'
 		'The other girls giggle as you slam your hips down on the rubber dong, and ride it. Christina instructs you to keep your legs spread while you ride the dildo, and keeps slapping you with her towel as you move your hips up and down. Your yelps of pain whenever the towel lands on your thighs put an evil grin on her face.'
 		
-		gs 'arousal', 'vaginal_dildo', 10, 'sub', 'humilation'
+		gs 'arousal', 'vaginal_dildo', 10, 'sub', 'humiliation'
 		gs 'stat'
 		
 		if pcs_horny >= 100:
@@ -381,7 +380,7 @@ if $ARGS[0] = '10':
 		'<center><img <<$set_imgh>> src="images/locations/pavlovsk/school/gym/sex/christina/dildobj16.jpg"></center>'
 		'Several of the girls walk towards the dong and spit on it, and you gratefully nod at them as you spread the saliva over it with your fingers, adding some of your own. Then you squat directly over the dildo and slowly rub it against your pussy lips. You can feel your snatch being stretched to its limits when you lower yourself down on it, and when you begin to move your hips you feel your pussy lips gripping the dildo tightly.'
 		
-		gs 'arousal', 'vaginal_dildo', 10, 'sub', 'humilation'
+		gs 'arousal', 'vaginal_dildo', 10, 'sub', 'humiliation'
 		gs 'stat'
 		
 		if pcs_horny >= 100:
@@ -417,7 +416,7 @@ if $ARGS[0] = '11':
 		'<center><img <<$set_imgh>> src="images/locations/pavlovsk/school/gym/sex/christina/dildobj17.jpg"></center>'
 		'You accept the brush obediently and lie down on the ground, spreading your legs. You poke the handle between your legs and slowly spread your pussy lips with it before pushing it in. It doesn''t quite feel as good as the dildos Christina usually has for you, and is not quite as big either. Nevertheless, the sopping of your pussy is quite audible in the locker room while the girls in your class change their clothes, and you see one of them glancing at her hairbrush with a dreamy look in her eyes.'
 		
-		gs 'arousal', 'vaginal_dildo', 10, 'sub', 'humilation'
+		gs 'arousal', 'vaginal_dildo', 10, 'sub', 'humiliation'
 		gs 'stat'
 		
 		if pcs_horny >= 100:
@@ -452,7 +451,7 @@ if $ARGS[0] = '12':
 		'Knowing she expects a show, you lean back against the wall with your legs spread wide. You rub your fingers over your pussy lips, and then begin to slide your fingers in one by one with a questioning look in your eyes. At three, Christina tells you: "Stop. Three will do for today, bitch. Start f***ing yourself with them."'
 		'You slowly move your hand, and can''t help but moan when you feel your pussy grasping around your fingers.'
 		
-		gs 'arousal', 'masturbate', 10, 'sub', 'humilation'
+		gs 'arousal', 'masturbate', 10, 'sub', 'humiliation'
 		gs 'stat'
 		
 		if pcs_horny >= 100:
@@ -487,7 +486,7 @@ if $ARGS[0] = '13':
 		'<center><img <<$set_imgh>> src="images/locations/pavlovsk/school/gym/sex/christina/dildobj19,'+rand(0,1)+'.jpg"></center>'
 		'You nod and get comfortable, before squeezing your fingers together tightly. Several girls spit on your fingers for you and you push them against your vagina, slowly rotating your wrist as you work them in deeper and deeper. Taking deep breaths, you eventually manage to get your entire hand inside your snatch.'
 		
-		gs 'arousal', 'vaginal_fist', 10, 'sub', 'humilation'
+		gs 'arousal', 'vaginal_fist', 10, 'sub', 'humiliation'
 		gs 'stat'
 		
 		if pcs_horny >= 100:
@@ -505,7 +504,7 @@ if $ARGS[0] = '13':
 		'Before you can answer, she leaves. You look around the locker room to try and figure out who just touched you, but their faces don''t give anything away as the girls proceed like nothing happened.'
 
 		$orgasm_or = 'yes'
-		gs 'arousal', 'vaginal_finger', 10, 'sub', 'humilation', 'lesbian'
+		gs 'arousal', 'vaginal_finger', 10, 'sub', 'humiliation', 'lesbian'
 		gs 'arousal', 'end'
 		gs 'stat'
 		
@@ -525,7 +524,7 @@ if $ARGS[0] = '14':
 		'<center><img <<$set_imgh>> src="images/locations/pavlovsk/school/gym/sex/christina/dildobj20,'+rand(0,1)+'.jpg"></center>'
 		'It''s been so long, you barely even remember why you''re doing this any more. Obeying Christina in front of the other girls after gym class has become your second nature, it''s just part of your daily duties... and you wouldn''t have it any other way. You quickly drop to your knees and crawl your way over to her, sexily waving your ass back and forth to the girls behind you. When you arrive at Christina''s feet, you rise up and obediently run your tongue over her folds, tasting her sweet juices as you begin to lick away at her snatch.'
 		
-		gs 'arousal', 'cuni_give', 20, 'sub', 'humilation', 'lesbian'
+		gs 'arousal', 'cuni_give', 20, 'sub', 'humiliation', 'lesbian'
 		gs 'stat'
 		
 		if pcs_horny >= 100:
@@ -551,8 +550,8 @@ if $ARGS[0] = '15':
 
 	act 'Obey and open your mouth':
 		*clr & cla
-		if zverhumiliation < 30: zverhumiliation += 1
-		if pcs_makeup > 1: pcs_makeup = 0
+		if zverhumiliation < 30:zverhumiliation += 1
+		if pcs_makeup > 1:pcs_makeup = 0
 		gs'stat'
 
 		'<center><img <<$set_imgh>> src="images/locations/pavlovsk/school/gym/sex/christina/dildobj21.jpg"></center>'

+ 84 - 45
locations/kafe.qsrc

@@ -170,8 +170,8 @@ if $ARGS[0] = 'vlad':
 			cla
 			'You ask Givi if he has any job openings at the diner.'
 			*nl
-			if hotcat < 1:'No no no, you would scare all the customers away. You need to improve your appearance, try better clothing, use makeup, brush your hair. You look just terrible.'
-			if hotcat >= 1:
+			if hotcat < 4:'No no no, you would scare all the customers away. You need to improve your appearance, try better clothing, use makeup, brush your hair. You look just terrible.'
+			if hotcat >= 5:
 				'"Of course you want to work here, who doesn’t?" Givi says with a dreamy sigh, "The rockabilly music, greaser subculture, and 1950s pop art — I love everything about that time in American culture, which is why I invested every penny I had bringing this place to life!" he says with a grand flourish. He continues to gush about American culture for what seems like forever, until you finally clear your throat and bring him back to reality.'
 				'Annoyed that you interrupted him, he scoffs and gives you a stern look. "So many people don’t understand what I’m trying to do here. Customers demand I serve more Russian cuisine and all these "bands" can’t even play a halfway decent Johnny Cash song!" You can see him grinding his teeth as he talks. "In the end, I’m left with no choice but to give into their demands or lose customers…" He takes a deep breath and rubs his temples. "I try to introduce some culture to Russia, and all I get in return is complaints…"'
 				*nl
@@ -248,8 +248,8 @@ if $ARGS[0] = 'workPred':
 	'You''re at work in the café, the cook <a href="exec:gt ''kafe2'', ''ashot''">Ashot</a> is busy in the kitchen. Your fellow server <a href="exec:gt ''kafe2'', ''ira''">Ira</a> waits tables with customers. The owner <a href="exec:gt ''kafe2'', ''givi''">Givi K.</a> is standing behind the bar.'
 	'A small door leads to the <a href="exec:gt ''kafe2'', ''toilet''">toilets</a>.'
 
-	if npc_rel['A41'] > 100:npc_rel['A41'] = 100
-	if npc_rel['A41'] > 90 and GiviSex = 0:npc_rel['A41'] = 90
+	if npc_rel['A41'] > 60:npc_rel['A41'] = 60
+	if npc_rel['A41'] > 50 and GiviSex = 0:npc_rel['A41'] = 50
 
 	if IrinaSlut = 1 and hour = 22:
 		*clr & cla
@@ -308,47 +308,51 @@ if $ARGS[0] = 'workPred':
 
 						act 'Go home': minut += 5 & gt 'street'
 					end
-
-					act 'Spit sperm into her mouth':
-						*clr & cla
-						gs 'stat'
-						'<center><img <<$set_imgh>> src="images/locations/city/residential/cafe/sex/irinaslut3.jpg"></center>'
-						'You take Iras head in your hands and lift her face to yours. She readily opens her mouth and you spit the sperm into it.'
-						gs 'arousal', 'kiss', 5, 'dom'
-						gs 'stat'
-
-						act 'Kiss':
+					gs 'willpower', 'swallow', 'force', 'medium'
+					if will_cost <= pcs_willpwr:
+						act 'Spit sperm into her mouth (<<will_cost>> Willpower)':
 							*clr & cla
-							'<center><img <<$set_imgh>> src="images/locations/city/residential/cafe/sex/irinaslut4.jpg"></center>'
-							'You move your lips to Ira and start kissing her exchanging the sperm between your mouths. Finally you both swallow some of the semen.'
-							swallow += 1
+							gs 'willpower', 'pay', 'force'
+							gs 'stat'
+							'<center><img <<$set_imgh>> src="images/locations/city/residential/cafe/sex/irinaslut3.jpg"></center>'
+							'You take Iras head in your hands and lift her face to yours. She readily opens her mouth and you spit the sperm into it.'
 							gs 'arousal', 'kiss', 5, 'dom'
 							gs 'stat'
 
+							act 'Kiss':
+								*clr & cla
+								'<center><img <<$set_imgh>> src="images/locations/city/residential/cafe/sex/irinaslut4.jpg"></center>'
+								'You move your lips to Ira and start kissing her exchanging the sperm between your mouths. Finally you both swallow some of the semen.'
+								swallow += 1
+								gs 'arousal', 'kiss', 5, 'dom'
+								gs 'stat'
+
+								act 'Take Ira home':
+									cla
+									minut += 15
+									'You wipe the remaining sperm off your face, help her to her feet and sort her out. Ira,regaining her senses, looks to you with a beatific smile "That Givi is chock-bellied ugly, but he fucked me like I''ve never been fucked before. I even lost consciousness from an orgasm."'
+									'Ira is still floating in ecstasy, so you decide to walk her home. At her front door, she kisses you on the lips and leaves.'
+									gs 'arousal', 'end'
+									gs 'stat'
+
+									act 'Go home': minut += 5 & gt 'street'
+								end
+							end
+
 							act 'Take Ira home':
 								cla
 								minut += 15
-								'You wipe the remaining sperm off your face, help her to her feet and sort her out. Ira,regaining her senses, looks to you with a beatific smile "That Givi is chock-bellied ugly, but he fucked me like I''ve never been fucked before. I even lost consciousness from an orgasm."'
-								'Ira is still floating in ecstasy, so you decide to walk her home. At her front door, she kisses you on the lips and leaves.'
-								gs 'arousal', 'end'
+								swallow += 1
 								gs 'stat'
+								'You wiped the remnants of sperm off your face, help her to feet and sort her out. Ira, regaining her senses, looks to you with a beatific smile "That Givi is chock-bellied ugly, but he fucked me like I''ve never been fucked before. I even lost consciousness from an orgasm."'
+								'Ira is still floating in ecstasy, so you decide to walk her home. At her front door, she kisses you on the lips and leaves.'
 
 								act 'Go home': minut += 5 & gt 'street'
 							end
 						end
-
-						act 'Take Ira home':
-							cla
-							minut += 15
-							pcs_dom += 1
-							swallow += 1
-							gs 'stat'
-							'You wiped the remnants of sperm off your face, help her to feet and sort her out. Ira, regaining her senses, looks to you with a beatific smile "That Givi is chock-bellied ugly, but he fucked me like I''ve never been fucked before. I even lost consciousness from an orgasm."'
-							'Ira is still floating in ecstasy, so you decide to walk her home. At her front door, she kisses you on the lips and leaves.'
-
-							act 'Go home': minut += 5 & gt 'street'
-						end
-					end
+					else
+						act 'Spit sperm into her mouth (<font color="red"><<will_cost>> Willpower</font>)': '<br><font color="red">You don''t have enough willpower to use this action.</font>'
+					end	
 				end
 			end
 		end
@@ -865,22 +869,44 @@ if $ARGS[0] = 'razvod':
 	elseif deyst = 1:
 		'<<$boydesc>> asks permission to sit down at the same table as you.'
 		act 'Drink with him':gt 'cafe2', 'booze'
-		if pcs_horny < 75:
-			act 'Leave': minut += 5 & gt 'street'
-		end
+		gs 'willpower', 'drink', 'resist', 'medium'
+		if will_cost <= pcs_willpwr:
+			act 'Leave (<<will_cost>> Willpower)':
+				*clr & cla
+				gs 'willpower', 'pay', 'resist'
+				minut +5
+				gs 'stat'
+				gt 'street'
+			end
+		else
+			act 'Leave (<font color="red"><<will_cost>> Willpower</font>)': '<br><font color="red">You don''t have enough willpower to use this action.</font>'
+		end	
 	elseif deyst = 2:
 		'<<$boydesc>> invites you to a nearby party which he is going to.'
 		act 'Agree to party':gt 'cafe2', 'kompashka'
-		if pcs_horny < 75:
-			act 'Leave': minut += 5 & gt 'street'
-		end
+		gs 'willpower', 'drink', 'resist', 'medium'
+		if will_cost <= pcs_willpwr:
+			act 'Leave (<<will_cost>> Willpower)':
+				*clr & cla
+				gs 'willpower', 'pay', 'resist'
+				minut +5
+				gs 'stat'
+				gt 'street'
+			end
+		else
+			act 'Leave (<font color="red"><<will_cost>> Willpower</font>)': '<br><font color="red">You don''t have enough willpower to use this action.</font>'
+		end	
 	elseif deyst = 3:
 		'<<$boydesc>> is incredibly drunk and you feel tipsy just from the smell of booze on him. "Hey baby, got some spare time? Come have fun in the toilet."'
 		act 'Meet in bathroom':gt 'cafe3', 'toilet'
-		if pcs_horny < 95:
-			act 'Leave':
-				cla
-				if rand(0, 400) < pcs_apprnc:
+		gs 'willpower', 'sex', 'resist', 'medium'
+		if will_cost <= pcs_willpwr:
+			act 'Leave (<<will_cost>> Willpower)':
+				*clr & cla
+				gs 'willpower', 'pay', 'resist'
+				minut +5
+				gs 'stat'
+				if hotcat >= 6:
 					'"Come on, baby, I will give you two thousand <b>₽</b>. Daddy wants to have fun."'
 					act 'Meet in bathroom':
 						money += 2000
@@ -889,9 +915,22 @@ if $ARGS[0] = 'razvod':
 				else
 					'"Well, okay, get out of here, you are ugly anyway."'
 				end
-				act 'Tell him to fuck off': minut += 5 & gt 'street'
+				gs 'willpower', 'prostitution', 'resist', 'medium'
+				if will_cost <= pcs_willpwr:
+					act 'Tell him to fuck off (<<will_cost>> Willpower)':
+						*clr & cla
+						gs 'willpower', 'pay', 'resist'
+						minut +5
+						gs 'stat'
+						gt 'street'
+					end
+				else
+					act 'Tell him to fuck off (<font color="red"><<will_cost>> Willpower</font>)': '<br><font color="red">You don''t have enough willpower to use this action.</font>'
+				end	
 			end
-		end
+		else
+			act 'Leave (<font color="red"><<will_cost>> Willpower</font>)': '<br><font color="red">You don''t have enough willpower to use this action.</font>'
+		end	
 	end
 end
 

+ 12 - 12
locations/kafe2.qsrc

@@ -164,7 +164,7 @@ if $ARGS[0] = 'givi':
 			end
 		end
 	else
-		if pcs_apprnc < 0:
+		if hotcat <= 4:
 			'Givi nods his head at you, "<<$pcs_nickname>>."'
 
 			act 'Leave':
@@ -247,10 +247,8 @@ if $ARGS[0] = 'ashot':
 								gs 'stat'
 
 								act 'Moan':
-									*clr
-									cla
-
-									pcs_horny += SUB - pcs_dom + ((pcs_ass - 18) * 3)
+									*clr & cla
+									
 									Ashotsex += 1
 									gs 'boyStat', 'A42'
 									sexpartkno = 1
@@ -263,13 +261,15 @@ if $ARGS[0] = 'ashot':
 									'Ashot leans forward thrusting his cock as deeply as possible.'
 
 									gs 'arousal', 'anal', 10, 'sub'
-									gs 'stat'
-
+									
 									if pcs_horny >= 100 :
 										analorgasm += 1
 										$orgasm_or = 'custom'
 										$orgasm_txt = 'A blazing fire builds in your ass and waves of pleasure sweep through your body, you are moaning in orgasm as your ass is impaled on his dick.'
 									end
+									
+									gs 'arousal', 'end'
+									gs 'stat'
 
 									'You feel the heat as jets of sperm hit inside your anus. Having finished in your ass, Ashot says that such a fuckable hole needs to be fucked. He pulls out his member and you feel a slow trickle of sperm dripping from your butt.'
 
@@ -286,9 +286,7 @@ if $ARGS[0] = 'ashot':
 							gs 'stat'
 
 							act 'Moan':
-								*clr
-								cla
-								pcs_horny += SUB - pcs_dom + ((pcs_ass - 18) * 3)
+								*clr & cla
 								Ashotsex += 1
 								spafinloc = 3
 								gs 'cum_manage'
@@ -299,13 +297,15 @@ if $ARGS[0] = 'ashot':
 								'Ashot leans forward thrusting his cock as deeply as possible.'
 
 								gs 'arousal', 'anal', 10, 'sub'
-								gs 'stat'
-
+								
 								if pcs_horny >= 100 :
 									analorgasm += 1
 									$orgasm_or = 'custom'
 									$orgasm_txt = 'A blazing fire builds in your ass and waves of pleasure sweep through your body, you are moaning in orgasm as your ass is impaled on his dick.'
 								end
+								
+								gs 'arousal', 'end'
+								gs 'stat'
 
 								'You feel the heat as jets of sperm hit inside your anus. Having finished in your ass, Ashot says that such a fuckable hole needs to be fucked. He pulls out his member and you feel a slow trickle of sperm dripping from your butt.'
 

+ 27 - 13
locations/kafeM.qsrc

@@ -4,7 +4,7 @@ if $ARGS[0] = 'start':
 	minut += 30
 	'You arrive at the cafe and sit at a table. <<$loverdesc[lover_number]>> orders food and wine. While you wait for the food to arrive, <<$loverdesc[lover_number]>> tells you an anecdote:<br>'
 	gs 'anekdot'
-*nl	
+	*nl	
 	if loverdays[lover_number] > 15 and haraklover[lover_number] = 2:gs 'boylove', 'tits'
 	if loverdays[lover_number] > 20 and haraklover[lover_number] = 1:gs 'boylove', 'tits'
 	if loverdays[lover_number] > 25 and haraklover[lover_number] = 0:gs 'boylove', 'tits'
@@ -55,12 +55,19 @@ if $ARGS[0] = 'b':
 		loverrelation[lover_number] += 1
 		xgt 'kafeM', 'dance'
 	end
-
-	act 'Refuse':
-		cla
-		loverrelation[lover_number] -= 1
-		xgt 'kafeM', 'end'
-	end
+	gs 'willpower', 'misc', 'resist', 'easy'
+	if will_cost <= pcs_willpwr:
+		act 'Refuse (<<will_cost>> Willpower)':
+			*clr & cla
+			gs 'willpower', 'pay', 'resist'
+			gs 'stat'
+			cla
+			loverrelation[lover_number] -= 1
+			xgt 'kafeM', 'end'
+		end
+	else
+		act 'Refuse(<font color="red"><<will_cost>> Willpower</font>)': '<br><font color="red">You don''t have enough willpower to use this action.</font>'
+	end	
 end
 
 if $ARGS[0] = 'dance':
@@ -87,12 +94,19 @@ if $ARGS[0] = 'dance':
 	elseif haraklover[lover_number] = 2:
 		'<<$loverdesc[lover_number]>> grabs your ass while dancing and presses against you. You can feel his hard cock against your stomach through the clothes.'
 		'He whispers to you, Let''s go to the toilet.'
-
-		act 'Finish the dance':
-			cla
-			loverrelation[lover_number] += 1
-			xgt 'kafeM', 'end'
-		end
+		gs 'willpower', 'sex', 'resist', 'medium'
+		if will_cost <= pcs_willpwr:
+			act 'Finish the dance (<<will_cost>> Willpower)':
+				*clr & cla
+				gs 'willpower', 'pay', 'resist'
+				gs 'stat'
+				cla
+				loverrelation[lover_number] -= 1
+				xgt 'kafeM', 'end'
+			end
+		else
+			act 'Finish the dance(<font color="red"><<will_cost>> Willpower</font>)': '<br><font color="red">You don''t have enough willpower to use this action.</font>'
+		end	
 
 		act 'Go to the toilet':xgt 'kafeM', 'tualet'
 	end

+ 56 - 16
locations/kafesvid.qsrc

@@ -53,8 +53,7 @@ if $ARGS[0] = '':
 			else
 				gt 'kafesvid', '3'
 			end
-		elseif $telsob = $loverdesc[lover_number]:
-			!! date with girlfriend	
+		elseif $telsob = $loverdesc[lover_number]:	
 			loverrelation[lover_number] += 1			
 			if loverrelation[lover_number] >= 20:
 				kaferand = rand(0, 8)
@@ -76,9 +75,17 @@ if $ARGS[0] = '1':
 
 	gs 'arousal', 'voyeur', 5, 'lesbian'
 	gs 'stat'
-	
-	act 'Not in public':gt 'kafesvid', '3'
-
+	gs 'willpower', 'foreplay', 'resist', 'medium'
+	if will_cost <= pcs_willpwr:
+		act 'Not in public (<<will_cost>> Willpower)':
+			*clr & cla
+			gs 'willpower', 'pay', 'resist'
+			gs 'stat'
+			gt 'kafesvid', '3'
+		end
+	else
+		act 'Not in public (<font color="red"><<will_cost>> Willpower</font>)': '<br><font color="red">You don''t have enough willpower to use this action.</font>'
+	end	
 	act 'Find out just how wet she is':
 		*clr & cla
 		'<center><img <<$set_imgh>> src="images/characters/city/boyfriend/sex/event/2.jpg"></center>'
@@ -86,9 +93,17 @@ if $ARGS[0] = '1':
 
 		gs 'arousal', 'foreplay', 5, 'lesbian'
 		gs 'stat'
-	
-		act 'We can''t do it here':gt 'kafesvid', '3'
-
+		gs 'willpower', 'cuni', 'resist', 'medium'
+		if will_cost <= pcs_willpwr:
+			act 'We can''t do it here (<<will_cost>> Willpower)':
+				*clr & cla
+				gs 'willpower', 'pay', 'resist'
+				gs 'stat'
+				gt 'kafesvid', '3'
+			end
+		else
+			act 'We can''t do it here (<font color="red"><<will_cost>> Willpower</font>)': '<br><font color="red">You don''t have enough willpower to use this action.</font>'
+		end	
 		act 'Let her continue':
 			*clr & cla
 			'<center><img <<$set_imgh>> src="images/characters/city/boyfriend/sex/event/3.jpg"></center>'
@@ -203,8 +218,17 @@ if $ARGS[0] = '2':
 	'"What are you doing that hurts," you say, somewhat shocked.'
 	'<<$telsob>>, without weakening her grip, turns to the waiter and says, "Want to touch my girls tits?"'
 	'The waiter looks at you, hesitantly.'
-
-	act '"I''ll crush your balls if you do"':gt 'kafesvid', '3'
+	gs 'willpower', 'foreplay', 'resist', 'medium'
+	if will_cost <= pcs_willpwr:
+		act '"I''ll crush your balls if you do" (<<will_cost>> Willpower)':
+			*clr & cla
+			gs 'willpower', 'pay', 'resist'
+			gs 'stat'
+			gt 'kafesvid', '3'
+		end
+	else
+		act '"I''ll crush your balls if you do" (<font color="red"><<will_cost>> Willpower</font>)': '<br><font color="red">You don''t have enough willpower to use this action.</font>'
+	end	
 
 	act 'Do not resist':
 		*clr & cla
@@ -215,8 +239,17 @@ if $ARGS[0] = '2':
 		'The waiter pulls back from you, unsure what to do next.'
 		'With swift speed, <<$Telsob>> reaches over and undoes his pants. His erect penis is now on full display.'
 		'<<$Telsob>> chastises you: "<<$pcs_nickname>> why did you not move to please this man the moment he was exposed? Is it not beautiful? I want you to touch him. Go ahead girl, help yourself."'
-
-		act 'Refuse':gt 'kafesvid', '3'
+		gs 'willpower', 'hj', 'resist', 'medium'
+		if will_cost <= pcs_willpwr:
+			act 'Refuse (<<will_cost>> Willpower)':
+				*clr & cla
+				gs 'willpower', 'pay', 'resist'
+				gs 'stat'
+				gt 'kafesvid', '3'
+			end
+		else
+			act 'Refuse (<font color="red"><<will_cost>> Willpower</font>)': '<br><font color="red">You don''t have enough willpower to use this action.</font>'
+		end	
 
 		act 'Reach out with your hand':
 			*clr & cla
@@ -229,7 +262,6 @@ if $ARGS[0] = '2':
 	
 			act 'Take him in your mouth':
 				*clr & cla
-				SUB += 1
 				spafinloc = 12
 				gs 'cum_manage'
 				swallow += 1
@@ -251,7 +283,6 @@ if $ARGS[0] = '2':
 			
 				act 'Lick sperm':
 					*clr & cla
-					SUB += 1
 					swallow += 1
 					'<center><img <<$set_imgh>> src="images/characters/city/boyfriend/sex/event/14.jpg"></center>'
 					'You lean over the table, and lap up his sperm with your tongue. <<$telsob>> gently strokes your hair, as you do.'
@@ -307,8 +338,17 @@ if $ARGS[0] = '2':
 						$orgasm_or = 'yes'
 						gs 'arousal', 'anal', 5, 'sub'
 						gs 'stat'
-			
-						act 'No, that''s enough':gt 'kafesvid', '3'
+						gs 'willpower', 'misc', 'resist', 'easy'
+						if will_cost <= pcs_willpwr:
+							act 'No, that''s enough (<<will_cost>> Willpower)':
+								*clr & cla
+								gs 'willpower', 'pay', 'resist'
+								gs 'stat'
+								gt 'kafesvid', '3'
+							end
+						else
+							act 'No, that''s enough(<font color="red"><<will_cost>> Willpower</font>)': '<br><font color="red">You don''t have enough willpower to use this action.</font>'
+						end	
 
 						act 'Continue to obey':
 							*clr & cla

+ 1 - 7
locations/korr2x.qsrc

@@ -190,13 +190,7 @@ if IvanPodstavaDay ! daystart and IvanPodstavaQW = 1 and hour >= 8 and hour <= 2
 	exit
 end
 if gopstop > 30:gt'police','1'
-if sick > 0 and doktorday ! daystart:
-	act 'Call a doctor':doktorday = daystart & dynamic $polidin
-end
-
-!!Ninel doctor stuff started here.
-
-!!Ninel doctor stuff ended here. I deleted everything in between. Below is the other doctor if it is not Ninel. At the bottom is the call to the clinic to ask for a doctor and request Ninel as well. So not all sure what code has to be replaced.
+if sick > 0 and doktorday ! daystart: act 'Call a doctor':doktorday = daystart & dynamic $polidin
 
 $drPP = {
 	cla

+ 1 - 4
locations/korrPar.qsrc

@@ -89,7 +89,6 @@ if nodimkaK >= rand(7,10) and DimkaWarnedToday = 0:
 	if hour >= 9 and hour < 24 and week >=6 and DimkaWarnedToday = 0: gt 'dimaEv', 'Dimka_warning'
 end
 
-!! is this vacation check correct?
 if NatashaQW >= 4 and week < 6 and hour = 7 and kanikuli = 0 and SchoolAtestat = 0 and SchoolBlock = 0 and $clothingworntype = 'school':
 	*nl
 	'Go pick up <a href="exec:gt ''natbelEv'', ''carrybooks''">Natasha</a> before school.'
@@ -114,7 +113,6 @@ if hour >= 16 and hour <= 20 and indorf = 0:
 			cla
 			mothervideotalk = 2
 			minut += 5
-			sub += 5
 			gs 'stat'
 			*nl
 			'You burst into tears: "<<$npc_nickname[''A29'']>>, please forgive me! It will never happen again! I made a stupid mistake, I''m sorry... I didn''t mean to... please... I don''t... sorry..." You fall to your knees sobbing uncontrollably, hoping she will have mercy on you. Your mother looks down at you, still angry but not quite sure what to do. She lets out an exasperated gasp, shakes her head and walks away.'
@@ -126,7 +124,6 @@ if hour >= 16 and hour <= 20 and indorf = 0:
 			*clr & cla
 			mothervideotalk = 3
 			minut += 5
-			pcs_dom += 10
 			spank += 1
 			gs 'pain', 5, 'asscheeks', 'spank'
 			gs 'stat'
@@ -232,7 +229,7 @@ if hour >= 16 and hour <= 20 and indorf = 0:
 				SchoolBlock = 1
 				schoolprogul = 0
 				pcs_grades = 0
-				'As you enter the hallway, you find your mother there waiting for you. You have never seen her this furious. "<<$pcs_nickname>>? I just got off the phone with the school, they told me you didn''t show up yet again and expelled you. I''m exrememly disappointed with you! I''ve warned you so many times! If you want to remain living in this house, you best start pulling your weight around here! Right now I want you out of the house, go out and find some work!" After that, she pushes you out the door and slams it shut in your face.'
+				'As you enter the hallway, you find your mother there waiting for you. You have never seen her this furious. "<<$pcs_nickname>>? I just got off the phone with the school, they told me you didn''t show up yet again and expelled you. I''m extremely disappointed with you! I''ve warned you so many times! If you want to remain living in this house, you best start pulling your weight around here! Right now I want you out of the house, go out and find some work!" After that, she pushes you out the door and slams it shut in your face.'
 
 				act 'Leave':gt 'pavResidential'
 				exit

+ 0 - 1
locations/sitr2x.qsrc

@@ -198,7 +198,6 @@ if dildo > 0 and pcs_horny >= 50:
 						end
 					elseif izvratH = 1:
 						husband += 1
-						SUB += 1
 						'<<$husName>> orders you to put your toy into your ass and you submissivly oblige to do so. "Now open you mouth and suck me off", he tells you.'
 
 						act 'Blowjob':

+ 5 - 6
locations/sitrPar.qsrc

@@ -14,7 +14,6 @@ minut += 1
 gs 'stat'
 gs 'themes', 'indoors'
 '<center><b><font color="maroon">Living Room</font></b></center>'
-! WD: Correct Image path ~ "images/qwest/alter/<<$loc>>.jpg"
 '<center><img <<$set_imgh>> src="images/locations/pavlovsk/resident/apartment/home/sitrpar.jpg"></center>'
 ''
 'The living room has a <a href="exec:gt ''TV'',''pav''">TV</a>, which is near the window. In front of the TV is a <a href="exec:gt ''family'',''sofa''">sofa bed</a>, on which your brother sleeps at night. A large tapestry covers one wall, while the other wall has several shelves on it, stocked with books and other things.'
@@ -27,10 +26,10 @@ if month = 12 and day >= 20:'A Christmas tree stands next to the TV, decorated w
 if month = 12 and day = 31 and hour >= 20:
 	act 'Celebrate the New Year with your family.':
 		cls
-		npc_rel['A29'] = 100
-		npc_rel['A28'] = 100
-		npc_rel['A33'] = 100
-		npc_rel['A34'] = 100
+		npc_rel['A29'] += 10
+		npc_rel['A28'] += 10
+		npc_rel['A33'] += 10
+		npc_rel['A34'] += 10
 		money += 5000
 		hour = 23
 		minut = 0
@@ -60,7 +59,7 @@ elseif month = 1 and day = 1:
 		pcs_breath = 0
 
 		gs 'stat'
-		'<center><img <<$set_imgh>> src="images/shared/food/food.jpg"></center>'
+		'<center><img <<$set_imgh>> src="images/shared/food/leftovers.jpg"></center>'
 		'You have finished the leftovers remaining on the table from the holidays.'
 
 	act 'Get up from the table':gt $loc, $metka