zaprFWash.qsrc 41 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073
  1. # zaprFWash
  2. ! most complete comments for how the code works can be found in 'wash', 'titsFlash', 'runback', and 'punishSpank'
  3. ! most other code in here are just variations of those sections
  4. if $ARGS[0] = 'start':
  5. $metka = 'start'
  6. $loc = 'zaprFWash'
  7. $menu_loc = 'zaprFWash'
  8. $menu_arg = 'start'
  9. menu_off = 0
  10. *clr & cla
  11. ! can''t wash cars if have visible cum already
  12. if (cumloc[6] = 1 or cumloc[7] = 1) or cumloc[11] = 1:
  13. minut += 5
  14. pcs_mood -= 5
  15. pav_sex += rand(0,2)
  16. 'The gas station worker chases you away: "At least go wash yourself off first, whore!"'
  17. act 'Go to the toilet':gt 'zaprF', 'toilet'
  18. act 'Leave':gt 'zaprF', 'start'
  19. else
  20. gt 'zaprFWash', 'wash'
  21. end
  22. end
  23. if $ARGS[0] = 'wash':
  24. if litltown = 0:
  25. slut_compare = city_slut
  26. elseif litltown = 1:
  27. slut_compare = pav_slut
  28. end
  29. ! only wearing bimbo or prostitute clothing and looking good can get propositioned by a customer
  30. if PCloBimbo = 1 or PCloStyle = 4:
  31. i = rand(1, 4)
  32. '<center><img <<$set_imgh>> src="images/locations/shared/carwash/bimboclean<<i>>.jpg"></center>'
  33. minut += 60
  34. pcs_mood -= 5
  35. pcs_sweat += 2
  36. if pcs_apprnc >= 60:
  37. ! slightly more money for wearing bimbo or prostitute clothing and looking good too
  38. 'You washed the windows of several cars and earned 100 <b>₽</b>.'
  39. money += 100
  40. ! min chance of 20 percent; max chance of 80 percent; percent chance scales with city_slut or pav_slut
  41. ! as your repuation increases you will be asked more often
  42. skimpyCustomerChance = rand(1, 100)
  43. if skimpyCustomerChance <= min(max(20,slut_compare),80):
  44. 'As you finish washing another car, the driver walks up to you to give you a tip. From the way he''s looking at you, it''s obvious he''s interested in something more as well.'
  45. ! starts off with always doing titsQ when rep is low, as rep increases they may skip a question since they know you will do it anyway
  46. ! also different people have different tastes so you wont be asked the same thing in the same order every time by every customer that walks up to you
  47. carwashscene = rand(1, 100)
  48. if carwashscene <= min(max(25,slut_compare),50) and carwashscene >= 25:
  49. gt 'zaprFWash', 'assQ'
  50. elseif carwashscene <= min(max(50,slut_compare),65) and carwashscene >= 50:
  51. gt 'zaprFWash', 'pussyQ'
  52. elseif carwashscene <= min(max(65,slut_compare),85) and carwashscene >= 65:
  53. gt 'zaprFWash', 'handQ'
  54. elseif carwashscene <= min(max(85,slut_compare),100) and carwashscene >= 85:
  55. gt 'zaprFWash', 'blowQ'
  56. else
  57. gt 'zaprFWash', 'titsQ'
  58. end
  59. else
  60. gs 'zaprFWash', 'flash_passing'
  61. end
  62. else
  63. ! slightly more money for wearing bimbo or prostitute clothing but not looking too great
  64. 'You washed the windows of several cars and earned 80 <b>₽</b>.'
  65. money += 80
  66. gs 'zaprFWash', 'flash_passing'
  67. end
  68. else
  69. minut += 60
  70. pcs_mood -= 5
  71. pcs_sweat += 2
  72. money += 60
  73. i = rand(1, 4)
  74. '<center><img <<$set_imgh>> src="images/locations/shared/carwash/regular<<i>>.jpg"></center>'
  75. ! normal money just for the car washing
  76. 'You washed the windows of several cars and earned 60 <b>₽</b>.'
  77. gs 'zaprFWash', 'flash_passing'
  78. end
  79. end
  80. if $ARGS[0] = 'flash_passing':
  81. ! can flash now if not wearing bimbo or prostitute clothing; just need to meet inhibition or exhibitionism requirements to unlock actions
  82. if pcs_inhib >= 35: act 'Flash your tits at passing cars':gt 'zaprFWash', 'titsFlash', 'Free', 'Flash'
  83. if exhibitionist_lvl > 0: act 'Flash your ass at passing cars':gt 'zaprFWash', 'assFlash', 'Free', 'Flash'
  84. if exhibitionist_lvl > 1: act 'Flash your pussy at passing cars':gt 'zaprFWash', 'pussyFlash', 'Free', 'Flash'
  85. act 'Continue':gt 'zaprF', 'start'
  86. end
  87. if $ARGS[0] = 'titsQ':
  88. i = rand(1, 4)
  89. '<center><img <<$set_imgh>> src="images/locations/shared/carwash/bimboclean<<i>>.jpg"></center>'
  90. 'Want to earn some more cash, girl? Show me your tits. I''ll give you 100 <b>₽</b>. It''s easy money.'
  91. ! inhibition or exhibitionism requirements needed to accept the offer or just have fun with him
  92. if exhibitionist_lvl > 0 or pcs_inhib >= 35 or pcs_horny >= 40: act 'Agree and show him your tits':gt 'zaprFWash', 'titsFlash', 'Paid', 'Question'
  93. act 'Refuse':gt 'zaprFWash', 'refuse'
  94. end
  95. if $ARGS[0] = 'assQ':
  96. i = rand(1, 4)
  97. '<center><img <<$set_imgh>> src="images/locations/shared/carwash/bimboclean<<i>>.jpg"></center>'
  98. 'What a nice ass you have there. Let me see it. Will 100 <b>₽</b> convince you to show it to me?'
  99. ! inhibition or exhibitionism requirements needed to accept the offer or just have fun with him
  100. if exhibitionist_lvl > 0 or pcs_horny >= 60: act 'Agree and show him your ass':gt 'zaprFWash', 'assFlash', 'Paid', 'Question'
  101. act 'Refuse':gt 'zaprFWash', 'refuse'
  102. end
  103. if $ARGS[0] = 'pussyQ':
  104. i = rand(1, 4)
  105. '<center><img <<$set_imgh>> src="images/locations/shared/carwash/bimboclean<<i>>.jpg"></center>'
  106. 'You look like a cool girl. Let me see your pussy. I''ll only look for 100 <b>₽</b>.'
  107. ! inhibition or exhibitionism requirements needed to accept the offer or just have fun with him
  108. if exhibitionist_lvl > 1 or pcs_horny >= 80: act 'Agree and show him your pussy':gt 'zaprFWash', 'pussyFlash', 'Paid', 'Question'
  109. act 'Refuse':gt 'zaprFWash', 'refuse'
  110. end
  111. if $ARGS[0] = 'handQ':
  112. i = rand(1, 4)
  113. '<center><img <<$set_imgh>> src="images/locations/shared/carwash/bimboclean<<i>>.jpg"></center>'
  114. 'Could you help me out girl? It''s getting tight down here in my pants just looking at you. How about you touch it a bit? I''ll pay you 200 <b>₽</b>.'
  115. ! slut or horny requirements needed to accept the offer or just have fun with him
  116. if slut_compare >= 25 or pcs_horny >= 25: act 'Agree and give him a handjob':gt 'zaprFWash', 'handjob', 'Paid'
  117. act 'Refuse':gt 'zaprFWash', 'refuse'
  118. end
  119. if $ARGS[0] = 'blowQ':
  120. i = rand(1, 4)
  121. '<center><img <<$set_imgh>> src="images/locations/shared/carwash/bimboclean<<i>>.jpg"></center>'
  122. 'Looking hot today girl! How about you put your mouth to good use? I''ll pay you 200 <b>₽</b>.'
  123. ! slut or horny requirements needed to accept the offer or just have fun with him
  124. if slut_compare >= 30 or pcs_horny >= 30: act 'Agree and give him a blowjob':gt 'zaprFWash', 'blowjob', 'Paid', 'Question'
  125. act 'Refuse':gt 'zaprFWash', 'refuse'
  126. end
  127. if $ARGS[0] = 'refuse':
  128. ! just being asked can slowly change your inhibitions which will enable a player to eventually agree to the questions above
  129. if pcs_inhib < 35: inhib_exp += rand(1,2)
  130. pcs_dom += 1
  131. pcs_mood += 5
  132. gs 'stat'
  133. '<center><video autoplay loop src="images/pc/no.mp4"></video></center>'
  134. 'You begin to consider his offer but decide turn him down and walk away.'
  135. act 'Go back to washing cars':gt 'zaprF', 'start'
  136. end
  137. ! $ARGS[1] = whether you got paid for this
  138. ! $ARGS[2] = whether this act came from a customer question or just flashing for passing cars
  139. if $ARGS[0] = 'titsFlash':
  140. ! reputation and money will depend on whether you were paid
  141. if $ARGS[1] = 'Paid':
  142. money += 50
  143. if litltown = 0:
  144. city_prostitute += rand(0,1)
  145. elseif litltown = 1:
  146. pav_prostitute += rand(0,1)
  147. end
  148. elseif $ARGS[1] = 'Free':
  149. gs 'exhibitionism', 1
  150. end
  151. if pcs_inhib < 30: inhib_exp += rand(2,4)
  152. pcs_mood += 5
  153. gs 'stat'
  154. gifornot = rand (1, 100)
  155. ! chance for using photos or videos
  156. if gifornot < 50:
  157. i = rand(1, 100)
  158. ! chance of using old pics since there are so many newer pics to choose from
  159. if i < 15:
  160. if PCloPants > 0:
  161. ! loop to sort through old pics since they are jumbled together in the folder but we want to display pics based on clothing
  162. ! will keep looping until it gets a photo with shorts/pants in it
  163. :loop_tits_old_pics1
  164. i = rand(1, 3)
  165. if i = 2: jump 'loop_tits_old_pics1'
  166. '<center><img <<$set_imgh>> src="images/locations/shared/carwash/titsflash<<i>>.jpg"></center>'
  167. elseif PCloSkirt > 0:
  168. ! loop to sort through old pics since they are jumbled together in the folder but we want to display pics based on clothing
  169. ! will keep looping until it gets a photo with a skirt/dress in it
  170. :loop_tits_old_pics2
  171. i = rand(1, 3)
  172. if i = 1 or i = 3: jump 'loop_tits_old_pics2'
  173. '<center><img <<$set_imgh>> src="images/locations/shared/carwash/titsflash<<i>>.jpg"></center>'
  174. end
  175. else
  176. ! newer photos are more neatly organized into different folders so no looping needed
  177. if PCloPants > 0:
  178. i = rand(1, 14)
  179. '<center><img <<$set_imgh>> src="images/pc/flashing/pants/outside/tits/<<i>>.jpg"></center>'
  180. elseif PCloSkirt > 0:
  181. i = rand(1, 12)
  182. '<center><img <<$set_imgh>> src="images/pc/flashing/dress/outside/tits/<<i>>.jpg"></center>'
  183. end
  184. end
  185. else
  186. if PCloPants > 0:
  187. ! loop to sort through old vids since they are jumbled together in the folder but we want to display vids based on clothing
  188. ! will keep looping until it gets a video with shorts/pants in it
  189. :loop_tits_old_vids1
  190. i = rand(1, 7)
  191. if i = 4 or i = 6 or i = 7: jump 'loop_tits_old_vids1'
  192. '<center><video autoplay loop src="images/locations/shared/carwash/titsflash<<i>>.mp4"></video></center>'
  193. elseif PCloSkirt > 0:
  194. ! loop to sort through old vids since they are jumbled together in the folder but we want to display vids based on clothing
  195. ! will keep looping until it gets a video with a skirt/dress in it
  196. :loop_tits_old_vids2
  197. i = rand(1, 7)
  198. if i = 1 or i = 2 or i = 3 or i = 5: jump 'loop_tits_old_vids2'
  199. '<center><video autoplay loop src="images/locations/shared/carwash/titsflash<<i>>.mp4"></video></center>'
  200. end
  201. end
  202. ! text differences depending on whether you were paid, whether you are flashing for a customer or for the cars on the road, and what type of clothing you are wearing
  203. if $ARGS[1] = 'Paid':
  204. if PCloPants > 0:'You lift up your top up and show him your breasts for a few seconds. Then you quickly cover up and take your money.'
  205. if PCloSkirt > 0:'You pull down your top and show him your breasts for a few seconds. Then you quickly cover up and take your money.'
  206. elseif $ARGS[1] = 'Free':
  207. if $ARGS[2] = 'Question':
  208. if PCloPants > 0:'You lift up your top up and show him your breasts for a few seconds. You give your breasts a little shake for him before you cover up.'
  209. if PCloSkirt > 0:'You pull down your top and show him your breasts for a few seconds. You give your breasts a little shake for him before you cover up.'
  210. elseif $ARGS[2] = 'Flash':
  211. if PCloPants > 0:'You lift up your top up and expose your breasts to the road for a few seconds. A couple cars pass by and honk in appreciation. You give your breasts a little shake before you cover up.'
  212. if PCloSkirt > 0:'You pull down your top and expose your breasts to the road for a few seconds. A couple cars pass by and honk in appreciation. You give your breasts a little shake before you cover up.'
  213. end
  214. end
  215. gs 'arousal', 'flashlite', 5
  216. gs 'stat'
  217. ! can only continue with more questions if flashing for a customer
  218. ! also more questions will require either sub or dom or bimbo or horny as well as bimbo or prostitute clothing
  219. ! this has a wide range of requirements so that many different types of characters can still play this content
  220. if (sub >= 10 or pcs_dom >= 10 or bimbolevel >= 1 or pcs_horny >= 5) and (PCloBimbo = 1 or PCloStyle = 4) and $ARGS[2] = 'Question':
  221. ! once again dynamically choosing the next scene to play based on reputation
  222. carwashscene = rand(1, 100)
  223. if carwashscene <= min(max(30,slut_compare),60) and carwashscene >= 50:
  224. act 'Continue':gt 'zaprFWash', 'pussyQ'
  225. elseif carwashscene <= min(max(60,slut_compare),80) and carwashscene >= 60:
  226. act 'Continue':gt 'zaprFWash', 'handQ'
  227. elseif carwashscene <= min(max(80,slut_compare),100) and carwashscene >= 80:
  228. act 'Continue':gt 'zaprFWash', 'blowQ'
  229. else
  230. act 'Continue':gt 'zaprFWash', 'assQ'
  231. end
  232. ! flashing for cars just allows you to return to the gas station
  233. else
  234. act 'Go back to the gas station':
  235. if $ARGS[1] = 'Paid': slutty += 1
  236. gt 'zaprF', 'start'
  237. end
  238. end
  239. end
  240. ! $ARGS[1] = whether you got paid for this
  241. ! $ARGS[2] = whether this act came from a customer question or just flashing for passing cars
  242. if $ARGS[0] = 'assFlash':
  243. if $ARGS[1] = 'Paid':
  244. money += 50
  245. if litltown = 0:
  246. city_prostitute += rand(0,1)
  247. elseif litltown = 1:
  248. pav_prostitute += rand(0,1)
  249. end
  250. elseif $ARGS[1] = 'Free':
  251. gs 'exhibitionism', 2
  252. end
  253. if pcs_inhib < 30: inhib_exp += rand(2,4)
  254. pcs_mood += 5
  255. gs 'stat'
  256. gifornot = rand (1, 100)
  257. if gifornot < 50:
  258. i = rand(1, 100)
  259. if i < 10:
  260. if PCloPants > 0:
  261. :loop_ass_old_pics1
  262. i = rand(1, 2)
  263. if i = 1: jump 'loop_ass_old_pics1'
  264. '<center><img <<$set_imgh>> src="images/locations/shared/carwash/assflash<<i>>.jpg"></center>'
  265. elseif PCloSkirt > 0:
  266. :loop_ass_old_pics2
  267. i = rand(1, 2)
  268. if i = 2: jump 'loop_ass_old_pics2'
  269. '<center><img <<$set_imgh>> src="images/locations/shared/carwash/assflash<<i>>.jpg"></center>'
  270. end
  271. else
  272. if PCloPants > 0:
  273. i = rand(1, 16)
  274. '<center><img <<$set_imgh>> src="images/pc/flashing/pants/outside/butt/<<i>>.jpg"></center>'
  275. elseif PCloSkirt > 0:
  276. i = rand(1, 9)
  277. '<center><img <<$set_imgh>> src="images/pc/flashing/dress/outside/butt/<<i>>.jpg"></center>'
  278. end
  279. end
  280. else
  281. if PCloPants > 0:
  282. :loop_ass_old_vids1
  283. i = rand(1, 5)
  284. if i = 2 or i = 3: jump 'loop_ass_old_vids1'
  285. '<center><video autoplay loop src="images/locations/shared/carwash/assflash<<i>>.mp4"></video></center>'
  286. elseif PCloSkirt > 0:
  287. :loop_ass_old_vids2
  288. i = rand(1, 5)
  289. if i = 1 or i = 4 or i = 5: jump 'loop_ass_old_vids2'
  290. '<center><video autoplay loop src="images/locations/shared/carwash/assflash<<i>>.mp4"></video></center>'
  291. end
  292. end
  293. if $ARGS[1] = 'Paid':
  294. if PCloPants > 0:'You pull your pants down and show him your ass for a few seconds. Then you quickly cover up and take your money.'
  295. if PCloSkirt > 0:'You lift your skirt up and show him your ass for a few seconds. Then you quickly cover up and take your money.'
  296. elseif $ARGS[1] = 'Free':
  297. if $ARGS[2] = 'Question':
  298. if PCloPants > 0:'You pull your pants down and show him your ass for a few seconds. You give your ass a little shake for him before you cover up.'
  299. if PCloSkirt > 0:'You lift your skirt up and show him your ass for a few seconds. You give your ass a little shake for him before you cover up.'
  300. elseif $ARGS[2] = 'Flash':
  301. if PCloPants > 0:'You pull your pants down and expose your ass to the road for a few seconds. A couple cars pass by and honk in appreciation. You give your ass a little shake before you cover up.'
  302. if PCloSkirt > 0:'You lift your skirt up and expose your ass to the road for a few seconds. A couple cars pass by and honk in appreciation. You give your ass a little shake before you cover up.'
  303. end
  304. end
  305. gs 'arousal', 'flashlite', 5
  306. gs 'stat'
  307. if (sub >= 10 or pcs_dom >= 10 or bimbolevel >= 1 or pcs_horny >= 10) and (PCloBimbo = 1 or PCloStyle = 4) and $ARGS[2] = 'Question':
  308. carwashscene = rand(1, 100)
  309. if carwashscene <= min(max(50,slut_compare),75) and carwashscene >= 50:
  310. act 'Continue':gt 'zaprFWash', 'handQ'
  311. elseif carwashscene <= min(max(75,slut_compare),100) and carwashscene >= 75:
  312. act 'Continue':gt 'zaprFWash', 'blowQ'
  313. else
  314. act 'Continue':gt 'zaprFWash', 'pussyQ'
  315. end
  316. else
  317. act 'Go back to the gas station':
  318. if $ARGS[1] = 'Paid': slutty += 1
  319. gt 'zaprF', 'start'
  320. end
  321. end
  322. end
  323. ! $ARGS[1] = whether you got paid for this
  324. ! $ARGS[2] = whether this act came from a customer question or just flashing for passing cars
  325. if $ARGS[0] = 'pussyFlash':
  326. if $ARGS[1] = 'Paid':
  327. money += 50
  328. if litltown = 0:
  329. city_prostitute += 1
  330. elseif litltown = 1:
  331. pav_prostitute += 1
  332. end
  333. elseif $ARGS[1] = 'Free':
  334. gs 'exhibitionism', 3
  335. end
  336. if pcs_inhib < 40: inhib_exp += rand(4,6)
  337. pcs_mood += 5
  338. gs 'stat'
  339. if PCloPants > 0:
  340. i = rand(1, 9)
  341. '<center><img <<$set_imgh>> src="images/pc/flashing/pants/outside/pussy/<<i>>.jpg"></center>'
  342. elseif PCloSkirt > 0:
  343. i = rand(1, 13)
  344. '<center><img <<$set_imgh>> src="images/pc/flashing/dress/outside/pussy/<<i>>.jpg"></center>'
  345. end
  346. if $ARGS[1] = 'Paid':
  347. if PCloPants > 0:'You pull your pants down and show him your pussy for a few seconds. Then you quickly cover up and take your money.'
  348. if PCloSkirt > 0:'You lift your skirt up and show him your pussy for a few seconds. Then you quickly cover up and take your money.'
  349. elseif $ARGS[1] = 'Free':
  350. if $ARGS[2] = 'Question':
  351. if PCloPants > 0:'You pull your pants down and show him your pussy for a few seconds. You rub your clit a little for him before you cover up.'
  352. if PCloSkirt > 0:'You lift your skirt up and show him your pussy for a few seconds. You rub your clit a little for him before you cover up.'
  353. elseif $ARGS[2] = 'Flash':
  354. if PCloPants > 0:'You pull your pants down and expose your pussy to the road for a few seconds. A couple cars pass by and honk in appreciation. You rub your clit a little before you cover up.'
  355. if PCloSkirt > 0:'You lift your skirt up and expose your pussy to the road for a few seconds. A couple cars pass by and honk in appreciation. You rub your clit a little before you cover up.'
  356. end
  357. end
  358. gs 'arousal', 'flashlite', 5
  359. gs 'stat'
  360. if (sub >= 10 or pcs_dom >= 10 or bimbolevel >= 1 or pcs_horny >= 15) and (PCloBimbo = 1 or PCloStyle = 4) and $ARGS[2] = 'Question':
  361. carwashscene = rand(1, 100)
  362. if carwashscene <= min(max(60,slut_compare),100) and carwashscene >= 60:
  363. act 'Continue':gt 'zaprFWash', 'blowQ'
  364. else
  365. act 'Continue':gt 'zaprFWash', 'handQ'
  366. end
  367. else
  368. act 'Go back to the gas station':
  369. if $ARGS[1] = 'Paid': slutty += 1
  370. gt 'zaprF', 'start'
  371. end
  372. end
  373. end
  374. ! $ARGS[1] = whether you got paid for this
  375. if $ARGS[0] = 'handjob':
  376. ! generate random npc for sex
  377. gs 'npcgeneratec', 0, 'gas station customer', rand(18,40)
  378. gs 'boyStat', $npclastgenerated
  379. if $ARGS[1] = 'Paid':
  380. money += 200
  381. if litltown = 0:
  382. city_prostitute += 2
  383. elseif litltown = 1:
  384. pav_prostitute += 2
  385. end
  386. elseif $ARGS[1] = 'Free':
  387. pav_sex += 2
  388. end
  389. if pcs_inhib < 50: inhib_exp += rand(6,8)
  390. pcs_mood += 5
  391. gs 'stat'
  392. gifornot = rand (1, 100)
  393. if gifornot < 50:
  394. i = rand(1, 2)
  395. if i = 1:
  396. '<center><img <<$set_imgh>> src="images/shared/sex/handjob/hand.jpg"></center>'
  397. else
  398. '<center><img <<$set_imgh>> src="images/shared/sex/handjob/hj.jpg"></center>'
  399. end
  400. else
  401. i = rand(0, 2)
  402. if i = 0:
  403. '<center><video autoplay loop src="images/shared/sex/handjob/hj<<i>>.mp4"></video></center>'
  404. else
  405. '<center><video autoplay loop src="images/shared/sex/handjob/handjob<<i>>.mp4"></video></center>'
  406. end
  407. end
  408. if $ARGS[1] = 'Paid':
  409. 'You follow him behind the gas station, where you get the promised money, kneel down, unzip his pants and start working his shaft with your hands.'
  410. gs 'arousal', 'hj', 15, 'sub', 'prostitution', 'unknown'
  411. elseif $ARGS[1] = 'Free':
  412. 'You lead him behind the gas station, kneel down, unzip his pants and start working his shaft with your hands.'
  413. gs 'arousal', 'hj', 15, 'dom', 'unknown'
  414. end
  415. gs 'stat'
  416. 'After a while, the man starts pulling your head closer and closer to him. He asks you to blow him: "I''ll give you 200 <b>₽</b> if you open that mouth for me.'
  417. if sub >= 10 or pcs_dom >= 10 or bimbolevel >= 1 or pcs_horny >= 30:
  418. if pcs_inhib >= 30 or pcs_horny >= 30:act 'Open your mouth for him':gt 'zaprFWash', 'blowjob', 'Paid', 'handjob'
  419. act 'Rub harder to make him cum':gt 'zaprFWash', 'handjobEndQ'
  420. else
  421. act 'Rub harder to make him cum':gt 'zaprFWash', 'handjobEndQ'
  422. end
  423. end
  424. ! $ARGS[1] = whether you got paid for this
  425. ! $ARGS[2] = whether this act came from a customer question or already giving a customer a handjob
  426. if $ARGS[0] = 'blowjob':
  427. if $ARGS[2] = 'Question':
  428. gs 'npcgeneratec', 0, 'gas station customer', rand(18,40)
  429. gs 'boyStat', $npclastgenerated
  430. end
  431. if $ARGS[1] = 'Paid':
  432. money += 200
  433. if litltown = 0:
  434. city_prostitute += 2
  435. elseif litltown = 1:
  436. pav_prostitute += 2
  437. end
  438. elseif $ARGS[1] = 'Free':
  439. pav_sex = 2
  440. end
  441. if pcs_inhib < 50: inhib_exp += rand(6,8)
  442. pcs_mood += 5
  443. gs 'stat'
  444. gifornot = rand (1, 100)
  445. if gifornot < 50:
  446. i = rand(1, 4)
  447. '<center><img <<$set_imgh>> src="images/locations/shared/carwash/sex/blowjob<<i>>.jpg"></center>'
  448. else
  449. i = rand(1, 3)
  450. '<center><video autoplay loop src="images/locations/shared/carwash/sex/blowjob<<i>>.mp4"></video></center>'
  451. end
  452. if $ARGS[2] = 'Question':
  453. if $ARGS[1] = 'Paid':
  454. 'You follow him behind the gas station, where you get the promised money, kneel down, unzip his pants and start working his shaft with your mouth.'
  455. gs 'arousal', 'bj', 15, 'sub', 'prostitution', 'unknown'
  456. elseif $ARGS[1] = 'Free':
  457. 'You lead him behind the gas station, kneel down, unzip his pants and start working his shaft with your mouth.'
  458. gs 'arousal', 'bj', 15, 'dom', 'unknown'
  459. end
  460. elseif $ARGS[2] = 'handjob':
  461. if $ARGS[1] = 'Paid':
  462. 'You grab the money he tosses at you and switch to working his shaft with your mouth.'
  463. gs 'arousal', 'bj', 15, 'sub', 'prostitution', 'unknown'
  464. elseif $ARGS[1] = 'Free':
  465. 'You switch to working his shaft with your mouth.'
  466. gs 'arousal', 'bj', 15, 'dom', 'unknown'
  467. end
  468. end
  469. gs 'stat'
  470. 'After a while, the man starts trying to remove your clothes. He asks you to let him fuck your pussy: "I''ll give you 400 <b>₽</b> if you let me take your pussy! C''mon!'
  471. if sub >= 10 or pcs_dom >= 10 or bimbolevel >= 1 or pcs_horny >= 40:
  472. if pcs_vag = 0:
  473. if pcs_inhib >= 40 or pcs_horny >= 40: act 'Offer your ass instead (you don''t want to lose your virginity to this stranger...)':gt 'zaprFWash', 'fuckAnal', 'Paid'
  474. else
  475. if pcs_inhib >= 40 or pcs_horny >= 40: act 'Offer your pussy':gt 'zaprFWash', 'fuckPussy', 'Paid'
  476. if pcs_inhib >= 40 or pcs_horny >= 40: act 'Offer your ass':gt 'zaprFWash', 'fuckAnal', 'Paid'
  477. end
  478. act 'Suck harder to make him cum':gt 'zaprFWash', 'blowjobEndQ'
  479. else
  480. act 'Suck harder to make him cum':gt 'zaprFWash', 'blowjobEndQ'
  481. end
  482. end
  483. ! $ARGS[1] = whether you got paid for this
  484. if $ARGS[0] = 'fuckPussy':
  485. if $ARGS[1] = 'Paid':
  486. money += 400
  487. if litltown = 0:
  488. city_prostitute += 4
  489. elseif litltown = 1:
  490. pav_prostitute += 4
  491. end
  492. elseif $ARGS[1] = 'Free':
  493. pav_sex += 4
  494. end
  495. if pcs_inhib < 60: inhib_exp += rand(14,16)
  496. pcs_mood += 10
  497. gs 'stat'
  498. gifornot = rand (1, 100)
  499. if gifornot < 50:
  500. i = rand(1, 4)
  501. '<center><img <<$set_imgh>> src="images/locations/shared/carwash/sex/fuckpussy<<i>>.jpg"></center>'
  502. else
  503. i = rand(1, 4)
  504. '<center><video autoplay loop src="images/locations/shared/carwash/sex/fuckpussy<<i>>.mp4"></video></center>'
  505. end
  506. if $ARGS[1] = 'Paid':
  507. 'You bend over and let the man start fucking your pussy after collecting your money.'
  508. gs 'arousal', 'vaginal', 30, 'sub', 'prostitution', 'unknown'
  509. elseif $ARGS[1] = 'Free':
  510. 'You bend over and let the man start fucking your pussy.'
  511. gs 'arousal', 'vaginal', 30, 'dom', 'unknown'
  512. end
  513. gs 'stat'
  514. act 'Continue':gt 'zaprFWash', 'pussyEndQ'
  515. end
  516. ! $ARGS[1] = whether you got paid for this
  517. if $ARGS[0] = 'fuckAnal':
  518. if $ARGS[1] = 'Paid':
  519. money += 400
  520. if litltown = 0:
  521. city_prostitute += 4
  522. elseif litltown = 1:
  523. pav_prostitute += 4
  524. end
  525. elseif $ARGS[1] = 'Free':
  526. pav_sex += 4
  527. end
  528. if pcs_inhib < 60: inhib_exp += rand(14,16)
  529. pcs_mood += 10
  530. gs 'stat'
  531. gifornot = rand (1, 100)
  532. if gifornot < 50:
  533. i = rand(1, 4)
  534. '<center><img <<$set_imgh>> src="images/locations/shared/carwash/sex/fuckanal<<i>>.jpg"></center>'
  535. else
  536. i = rand(1, 4)
  537. '<center><video autoplay loop src="images/locations/shared/carwash/sex/fuckanal<<i>>.mp4"></video></center>'
  538. end
  539. if $ARGS[1] = 'Paid':
  540. 'You bend over and let the man start fucking your ass after you collect your money. His cock is still wet with your saliva as it slides inside you.'
  541. gs 'arousal', 'anal', 30, 'sub', 'prostitution', 'unknown'
  542. elseif $ARGS[1] = 'Free':
  543. 'You bend over and let the man start fucking your ass. His cock is still wet with your saliva as it slides inside you.'
  544. gs 'arousal', 'anal', 30, 'dom', 'unknown'
  545. end
  546. gs 'stat'
  547. rapePussyChance = rand(1, 100)
  548. if rapePussyChance <= min(max(1,slut_compare),20):
  549. act 'Continue':gt 'zaprFWash', 'rapePussy'
  550. else
  551. act 'Continue':gt 'zaprFWash', 'analEndQ'
  552. end
  553. end
  554. if $ARGS[0] = 'rapePussy':
  555. i = rand(1, 5)
  556. '<center><video autoplay loop src="images/locations/shared/carwash/sex/hardanal<<i>>.mp4"></video></center>'
  557. 'The man fucks your ass furiously, taking no heed to your painful moans. As you try to move away a bit to limit the depth he can reach in your ass, he slaps your buttcheeks hard and shouts:'
  558. '"Stop moving bitch! Who do you think you are, that you can tell me what to do?"'
  559. if pcs_vag = 0:
  560. 'He gropes your ass, lifts it up and suddenly spots your hymen.'
  561. '"What, you are a virgin? Such a tease and still a virgin, really?"'
  562. rapeAnyway = rand(1, 100)
  563. if rapeAnyway <= min(max(1,slut_compare),50):
  564. '"It would have happened sooner or later anyway, virgin slut. Now enjoy and remember this moment; I know I will!"'
  565. act 'Continue':gt 'zaprFWash', 'rapePussyYes', 'virgin'
  566. else
  567. '"Girls like you should not be acting like this! Someone should have taught you a lesson a long time ago."'
  568. act 'Continue':gt 'zaprFWash', 'punishSpank'
  569. end
  570. else
  571. act 'Continue':gt 'zaprFWash', 'rapePussyYes', 'normal'
  572. end
  573. end
  574. ! $ARGS[1] = whether you were a virgin before this or not
  575. if $ARGS[0] = 'rapePussyYes':
  576. inhib_exp += rand(10,20)
  577. i = rand(1, 3)
  578. '<center><video autoplay loop src="images/locations/shared/carwash/sex/pussytoanal<<i>>.mp4"></video></center>'
  579. if $ARGS[1] = 'virgin':
  580. sub += 10
  581. pcs_mood -= 30
  582. 'He gropes your ass, lifts it up and pushes his dick inside your pussy in one thrust! You feel your hymen break and know your virginity is gone forever. What will your friends and family think of you now if they find out?'
  583. elseif $ARGS[1] = 'normal':
  584. sub += 6
  585. pcs_mood -= 20
  586. 'He gropes your ass, lifts it up and pushes his dick inside your pussy in one thrust, all the way to the hilt!'
  587. end
  588. gs 'arousal', 'vaginal', 30, 'sub', 'prostitution', 'rough', 'rape', 'unknown'
  589. gs 'stat'
  590. act 'Continue':gt 'zaprFWash', 'vaginaCum', 'rape'
  591. end
  592. if $ARGS[0] = 'pussyEndQ':
  593. 'You can feel that the man is about to orgasm. You decide to...:'
  594. act 'Let him cum inside your vagina':gt 'zaprFWash', 'vaginaCum', 'consensual'
  595. act 'Take his cum on your face':gt 'zaprFWash', 'blowjobEndFace', 'inside'
  596. act 'Let him cum inside your mouth':gt 'zaprFWash', 'blowjobEndMouth', 'inside'
  597. end
  598. if $ARGS[0] = 'analEndQ':
  599. 'You can feel that the man is about to ejaculate. You decide to...:'
  600. act 'Let him cum inside your ass':gt 'zaprFWash', 'assCum'
  601. act 'Take his cum on your face':gt 'zaprFWash', 'blowjobEndFace', 'inside'
  602. act 'Let him cum inside your mouth':gt 'zaprFWash', 'blowjobEndMouth', 'inside'
  603. end
  604. ! $ARGS[1] = whether this was rape or not
  605. if $ARGS[0] = 'vaginaCum':
  606. if pcs_inhib < 40: inhib_exp += rand(4,6)
  607. pcs_vag += 1
  608. pain['vaginal'] += 4
  609. gs 'cum_call', ''
  610. gs 'stat'
  611. i = rand(1, 5)
  612. '<center><video autoplay loop src="images/locations/shared/carwash/sex/cumpussy<<i>>.mp4"></video></center>'
  613. if $ARGS[1] = 'consensual':
  614. pcs_mood += 20
  615. 'You let him cum deep inside your vagina. A pleasant warmth fills your insides as he shoots his load deep inside you. When he pulls out, a bit of sperm leaks out of your hole.'
  616. elseif $ARGS[1] = 'rape':
  617. pcs_mood -= 20
  618. 'The pounding suddenly stops as he cums deep inside your vagina. You can feel his cum inside of you as he continues to shoot his load inside your vagina. When he pulls out, a bit of sperm leaks out of your hole.'
  619. end
  620. gs 'arousal', 'end'
  621. gs 'stat'
  622. act 'Go back to the gas station':gt 'zaprF', 'start'
  623. end
  624. if $ARGS[0] = 'assCum':
  625. if pcs_inhib < 40: inhib_exp += rand(4,6)
  626. minut += 5
  627. pcs_mood += 10
  628. pcs_ass += 1
  629. pain['asshole'] += 1
  630. gs 'cum_call', 'anus'
  631. gs 'stat'
  632. i = rand(1, 2)
  633. '<center><video autoplay loop src="images/locations/shared/carwash/sex/cumanal<<i>>.mp4"></video></center>'
  634. 'You let him cum deep inside your ass. A pleasant warmth fills your insides as he shoots his load deep inside you. When he pulls out, a bit of sperm leaks out of your hole before you can tighten your worn out anus.'
  635. gs 'arousal', 'end'
  636. gs 'stat'
  637. act 'Go back to gas station':gt 'zaprF', 'start'
  638. end
  639. if $ARGS[0] = 'handjobEndQ':
  640. 'You can feel that the man is about to orgasm. You decide to take it...:'
  641. act 'On your face':gt 'zaprFWash', 'blowjobEndFace', 'outside'
  642. act 'On your hands':gt 'zaprFWash', 'handjobEndHands'
  643. end
  644. if $ARGS[0] = 'handjobEndHands':
  645. if pcs_inhib < 30: inhib_exp += rand(2,4)
  646. pcs_mood += 5
  647. gs 'cum_call', 'hands'
  648. gs 'stat'
  649. gifornot = rand (1, 100)
  650. if gifornot < 30:
  651. i = rand(0, 1)
  652. '<center><video autoplay loop src="images/shared/sex/cum/handjob/hand0,<<i>>.mp4"></video></center>'
  653. else
  654. i = rand(1, 2)
  655. '<center><img <<$set_imgh>> src="images/shared/sex/cum/handjob/hand<<i>>.jpg"></center>'
  656. end
  657. 'When the man starts to ejaculate, you quickly point his cock away from your face. Your hands are covered in cum by the time he is done ejaculating. His sack was full, you can say that for sure.'
  658. gs 'arousal', 'end'
  659. gs 'stat'
  660. act 'Go back to the gas station':gt 'zaprF', 'start'
  661. end
  662. if $ARGS[0] = 'blowjobEndQ':
  663. 'You can feel that the man is about to orgasm. You decide to take it...:'
  664. act 'On your face':gt 'zaprFWash', 'blowjobEndFace', 'outside'
  665. act 'In your mouth':gt 'zaprFWash', 'blowjobEndMouth', 'outside'
  666. end
  667. ! $ARGS[1] = whether his cock was inside or outside of you before he cums on your face
  668. if $ARGS[0] = 'blowjobEndFace':
  669. if pcs_inhib < 30: inhib_exp += rand(2,4)
  670. pcs_mood += 5
  671. gs 'cum_call', 'face'
  672. gs 'stat'
  673. gifornot = rand (1, 100)
  674. if gifornot < 30:
  675. i = rand(1, 2)
  676. '<center><video autoplay loop src="images/locations/shared/carwash/sex/cumface<<i>>.mp4"></video></center>'
  677. else
  678. i = rand(1, 4)
  679. '<center><img <<$set_imgh>> src="images/locations/shared/carwash/sex/cumface<<i>>.jpg"></center>'
  680. end
  681. if $ARGS[1] = 'outside':
  682. 'When the man starts to ejaculate, you quickly point point his cock towards your face. Your face is covered in cum by the time he is done ejaculating. His sack was full, you can say that for sure.'
  683. elseif $ARGS[1] = 'inside':
  684. 'When the man starts to ejaculate, you quickly take his cock out of you and point it towards your face. Your face is covered in cum by the time he is done ejaculating. His sack was full, you can say that for sure.'
  685. end
  686. gs 'arousal', 'end'
  687. gs 'stat'
  688. act 'Go back to the gas station':gt 'zaprF', 'start'
  689. end
  690. ! $ARGS[1] = whether his cock was inside or outside of you before he cums in your mouth
  691. if $ARGS[0] = 'blowjobEndMouth':
  692. gs 'cum_call', 'mouth'
  693. gs 'stat'
  694. gifornot = rand (1, 100)
  695. if gifornot < 60:
  696. i = rand(1, 4)
  697. '<center><img <<$set_imgh>> src="images/locations/shared/carwash/sex/cummouth<<i>>.jpg"></center>'
  698. else
  699. '<center><video autoplay loop src="images/locations/shared/carwash/sex/cummouth1.mp4"></video></center>'
  700. end
  701. if $ARGS[1] = 'outside':
  702. 'When the man starts to ejaculate, you quickly open your mouth while keeping his cock aimed straight at your tongue, giving him a good view of the cum as it flies inside your mouth. His sack was full, you can say that for sure.'
  703. elseif $ARGS[1] = 'inside':
  704. 'When the man starts to ejaculate, you quickly take his cock out of you and aim it straight at your tongue, giving him a good view of the cum as it flies inside your mouth. His sack was full, you can say that for sure.'
  705. end
  706. gs 'arousal', 'end'
  707. gs 'stat'
  708. act 'Continue':gt 'zaprFWash', 'blowjobEndMouthQ'
  709. end
  710. if $ARGS[0] = 'blowjobEndMouthQ':
  711. 'Your mouth is full of sperm. You decide to...:'
  712. act 'Swallow and then show him your empty mouth':gt 'zaprFWash', 'blowjobEndMouthSwallow'
  713. act 'Spit it out in front of him':gt 'zaprFWash', 'blowjobEndMouthSpit'
  714. end
  715. if $ARGS[0] = 'blowjobEndMouthSwallow':
  716. if pcs_inhib < 40: inhib_exp += rand(4,6)
  717. swallow += 1
  718. sub += 1
  719. pcs_mood += 10
  720. gs 'stat'
  721. i = rand(1, 4)
  722. '<center><img <<$set_imgh>> src="images/locations/shared/carwash/sex/swallow<<i>>.jpg"></center>'
  723. 'You gulp down the mouthful of sperm and then present your tongue as a proof that all of his seed is now in your belly.'
  724. 'The man smiles, slaps you mildly on your face and says: "What a nice young slut you are. Next time I need a refill, I''ll be sure to stop by."'
  725. gs 'arousal', 'end'
  726. gs 'stat'
  727. act 'Go back to the gas station':gt 'zaprF', 'start'
  728. end
  729. if $ARGS[0] = 'blowjobEndMouthSpit':
  730. if pcs_inhib < 30: inhib_exp += rand(2,4)
  731. pcs_dom += 3
  732. gs 'stat'
  733. gifornot = rand (1, 100)
  734. if gifornot > 50:
  735. i = rand(1, 3)
  736. '<center><img <<$set_imgh>> src="images/locations/shared/carwash/sex/spit<<i>>.jpg"></center>'
  737. else
  738. '<center><video autoplay loop src="images/locations/shared/carwash/sex/spit1.mp4"></video></center>'
  739. end
  740. 'You spit the load of sperm down between the legs of your customer. He doesn''t seem happy about it...'
  741. 'His face darkens and he says: "What, my cum isn''t good enough for you to swallow? I''ll teach you bitch!"'
  742. 'He moves closer to you with an angry look!'
  743. act 'Run back to the gas station':gt 'zaprFWash', 'runback'
  744. end
  745. if $ARGS[0] = 'runback':
  746. minut += 5
  747. ! runSuccess uses a simpler version of the formula used with carwashscene
  748. ! just based on strength and agility; uses whichever is higher to try and run away
  749. ! min 25 percent chance; max 75 percent chance for this initial getaway
  750. runSuccess = rand(1, 100)
  751. if runSuccess <= min(max(25,pcs_stren,pcs_agil),75):
  752. '<center><img <<$set_imgh>> src="images/locations/gadukino/village/turn_back.jpg"></center>'
  753. 'You managed to escape his grasp! You take a quick look behind you to make sure he''s not following you before heading back to the gas station.'
  754. gs 'arousal', 'end'
  755. gs 'stat'
  756. act 'Escape':gt 'zaprF', 'start'
  757. else
  758. pain['cheeks'] += 2
  759. pain['head'] += 2
  760. pain['mouth'] += 2
  761. pain['neck'] += 4
  762. '<center><video autoplay loop src="images/locations/shared/carwash/sex/punishbeatface.mp4"></video></center>'
  763. 'You weren''t quick enough and he caught you. He pushes you down and starts to slap your face!'
  764. gs 'arousal', 'end'
  765. gs 'stat'
  766. act 'Endure his punishment':gt 'zaprFWash', 'punish'
  767. ! gave doms the choice to fight back as long as they have some energy related stat with something left even if they lost the roll for runSuccess
  768. ! these values are based off of the cheat menu values for players who turn off these stats as they can never go below 35
  769. if dom > 0 and (pcs_energy > 35 or pcs_hydra > 35 or pcs_sleep > 35):
  770. act 'Push him off of you and escape':gt 'zaprFWash', 'fight'
  771. end
  772. end
  773. end
  774. if $ARGS[0] = 'fight':
  775. ! maybe at some point this could be an actual fight but with the state of the combat logic is in this will just be left to drain a stat to escape
  776. ! these values are based off of the cheat menu values for players who turn off these stats as they can never go below 35
  777. if pcs_energy >= 35:
  778. pcs_energy -= 35
  779. elseif pcs_hydra >= 35:
  780. pcs_hydra -= 35
  781. elseif pcs_sleep >= 35:
  782. pcs_sleep -= 35
  783. end
  784. gs 'arousal', 'end'
  785. gs 'stat'
  786. gt 'zaprF', 'start'
  787. end
  788. if $ARGS[0] = 'punish':
  789. ! once again punishType uses the same logic as carwashscene for dynamic choices
  790. punishType = rand(1, 100)
  791. if punishType <= min(max(50,slut_compare),75) and punishType >= 50:
  792. gt 'zaprFWash', 'punishAnal'
  793. elseif punishType <= min(max(75,slut_compare),100) and punishType >= 75:
  794. gt 'zaprFWash', 'punishPussyQ'
  795. else
  796. gt 'zaprFWash', 'punishSpank'
  797. end
  798. end
  799. if $ARGS[0] = 'punishSpank':
  800. pcs_horny = 0
  801. pcs_mood -= 10
  802. sub += 2
  803. inhib_exp += rand(2,4)
  804. pain['asscheeks'] += 5
  805. gs 'stat'
  806. '<center><video autoplay loop src="images/locations/shared/carwash/sex/punishspank.mp4"></video></center>'
  807. 'The angry man drags you to a more secluded area, bends you over and starts to spank your ass very hard.'
  808. 'After twenty minutes of ruthless punishment, you can finally crawl away with your burning ass.'
  809. gs 'arousal', 'foreplay', 15, 'sub', 'rough', 'unknown'
  810. gs 'arousal', 'end'
  811. gs 'stat'
  812. ! reputationScalar has a min of 1 and a max of 180; the more well known you are the higher the chance of being abducted
  813. reputationScalar = min(max(1,slut_compare),180)
  814. ! fitnessScalar has a min of 1 and a max of 90; the more fit you are the lower the chance of being abducted
  815. fitnessScalar = min(max(1,pcs_stren,pcs_agil),90)
  816. ! abductionChance is calculated using a combination of these 2 values
  817. ! in the beginning of the game fitness will usually outweigh your reputation and keep your abductionChance very low (min is 0)
  818. ! once reputation begins to rise it will even out with the fitness and abductionChance will stabilize at an average value (around 45)
  819. ! but fitness caps at 100 and reputation does not so eventually if your reputation grows to be very large the abductionChance will continue to rise (max of 90)
  820. abductionChance = reputationScalar-fitnessScalar
  821. if (abductionChance > 0 and abductionChance <= rand(1,100)) or sub > 99:
  822. 'But your perpetrator isn''t done with you.'
  823. 'He catches you again, drags you to his car and pushes you into the trunk...'
  824. 'You have a feeling this probably will not go well for you...'
  825. act 'Cry for help':gt 'abduction', 'start'
  826. else
  827. 'Your perpetrator stands up and just watches as you crawl away in pain.'
  828. 'He turns around and calmly walks away, leaving you alone.'
  829. act 'Escape':gt 'zaprF', 'start'
  830. end
  831. end
  832. if $ARGS[0] = 'punishAnal':
  833. pcs_horny = 0
  834. pcs_mood -= 20
  835. sub += 4
  836. pain['asshole'] += 6
  837. inhib_exp += rand(5,10)
  838. gs 'cum_call', 'anus'
  839. gs 'stat'
  840. i = rand(1, 3)
  841. '<center><video autoplay loop src="images/locations/shared/carwash/sex/punishanal<<i>>.mp4"></video></center>'
  842. 'The angry man drags you to a more secluded area, bends you over, and sticks a finger in your ass.'
  843. 'Your anus fully exposed, he starts fucking it ruthlessly.'
  844. 'After half an hour of rough assfucking he releases his grip on you so you can finally crawl away; your aching ass sore from the brutal penetration.'
  845. gs 'arousal', 'anal', 30, 'sub', 'rough', 'rape', 'unknown'
  846. gs 'arousal', 'end'
  847. gs 'stat'
  848. reputationScalar = min(max(1,slut_compare),180)
  849. fitnessScalar = min(max(1,pcs_stren,pcs_agil),90)
  850. abductionChance = reputationScalar-fitnessScalar
  851. if (abductionChance > 0 and abductionChance <= rand(1,100)) or sub > 99:
  852. 'But your perpetrator isn''t done with you.'
  853. 'He catches you again, drags you to his car and pushes you into the trunk...'
  854. 'You have a feeling this probably will not go well for you...'
  855. act 'Cry for help':gt 'abduction', 'start'
  856. else
  857. 'Your perpetrator stands up and just watches as you crawl away in pain.'
  858. 'He turns around and calmly walks away, leaving you alone.'
  859. act 'Escape':gt 'zaprF', 'start'
  860. end
  861. end
  862. if $ARGS[0] = 'punishPussyQ':
  863. 'The angry man drags you to a more secluded area. He bends you over and starts to rub your pussy.'
  864. if pcs_vag = 0:
  865. 'Suddenly he remarks: "What? You''re a virgin? Such slutty tease and still a virgin?'
  866. penetrate = rand (1, 100)
  867. if penetrate <= min(max(50,slut_compare),75) and penetrate >= 50:
  868. 'I''ll spare your virginity but you''ll get fucked anyway. Sluts have more than one hole for a reason, right?'
  869. act 'Endure':gt 'zaprFWash', 'punishAnal'
  870. elseif penetrate <= min(max(75,slut_compare),100) and penetrate >= 75:
  871. 'This makes it even better! I''ll enjoy your tears even more! I haven''t had a virgin in forever!'
  872. act 'Endure':gt 'zaprFWash', 'punishPussy', 'virgin'
  873. else
  874. 'Someone should have done this a long time ago, but I''ll spare you penetration this time!'
  875. act 'Endure':gt 'zaprFWash', 'punishSpank'
  876. end
  877. else
  878. 'Let''s try what you''ve been teasing, you ungrateful whore!'
  879. act 'Endure':gt 'zaprFWash', 'punishPussy', 'normal'
  880. end
  881. end
  882. ! $ARGS[1] = whether you were a virgin before this or not
  883. if $ARGS[0] = 'punishPussy':
  884. pcs_horny = 0
  885. pain['vaginal'] += 4
  886. inhib_exp += rand(5,10)
  887. gs 'cum_call', ''
  888. gs 'stat'
  889. i = rand(1, 5)
  890. '<center><video autoplay loop src="images/locations/shared/carwash/sex/punishpussy<<i>>.mp4"></video></center>'
  891. if $ARGS[1] = 'virgin':
  892. sub += 10
  893. 'Your pussy fully exposed, he slowly inserts his cock inside of you. He pushes right up against your hymen, savoring the moment. Suddenly, you feel your hymen break and know your virginity is gone forever. What will your friends and family think of you now if they find out?'
  894. pcs_mood -= 40
  895. elseif $ARGS[1] = 'normal':
  896. sub += 6
  897. 'Your pussy fully exposed, he starts fucking it ruthlessly.'
  898. pcs_mood -= 20
  899. end
  900. 'After half an hour of destroying your cunt he releases his grip on you so you can finally crawl away; your aching pussy sore from the brutal penetration.'
  901. gs 'arousal', 'vaginal', 30, 'sub', 'rough', 'rape', 'unknown'
  902. gs 'arousal', 'end'
  903. gs 'stat'
  904. reputationScalar = min(max(1,slut_compare),180)
  905. fitnessScalar = min(max(1,pcs_stren,pcs_agil),90)
  906. abductionChance = reputationScalar-fitnessScalar
  907. if (abductionChance > 0 and rand(1,100) <= abductionChance) or sub > 99:
  908. 'But your perpetrator isn''t done with you.'
  909. 'He catches you again, drags you to his car and pushes you into the trunk...'
  910. 'You have a feeling this probably will not go well for you...'
  911. act 'Cry for help':gt 'abduction', 'start'
  912. else
  913. 'Your perpetrator stands up and just watches as you crawl away in pain.'
  914. 'He turns around and calmly walks away, leaving you alone.'
  915. act 'Escape':gt 'zaprF', 'start'
  916. end
  917. end
  918. --- zaprFWash ---------------------------------