zaprFWash.qsrc 40 KB

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