mod_wlife_functions.qsrc 23 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897
  1. # mod_wlife_functions
  2. !!Family Dog
  3. if $ARGS[0] = 'rex_status':
  4. rex['timer_day'] = daystart
  5. !!Daily decay
  6. rex['relationship'] -= 1
  7. !!Chores
  8. if wl_cheat['dog_rel'] = 0 and rex['gadukino_day'] ! daystart:
  9. npc_rel['A29'] -= iif(rex['count_walk'] + rex['count_feed'] = 0, -1, (rex['count_walk'] + rex['count_feed']))
  10. rex['relationship'] -= iif(rex['count_walk'] + rex['count_feed'] = 0, -1, (rex['count_walk'] + rex['count_feed']))
  11. end
  12. rex['count_run'] = 0
  13. rex['count_walk'] = rex['count_walk_base']
  14. rex['timer_walk'] = 0
  15. rex['count_feed'] = rex['count_feed_base']
  16. rex['timer_feed'] = 0
  17. if week = 1:
  18. if wl_cheat['dog_rel'] = 0:
  19. npc_rel['A29'] -= rex['count_bath']
  20. rex['relationship'] -= (rex['count_bath'] * 5)
  21. end
  22. rex['count_bath'] = rex['count_bath_base']
  23. end
  24. !!Love
  25. if rex['love'] >= 100 or wl_cheat['dog_rel'] = 1:
  26. rex['relationship'] = 100
  27. elseif rex['relationship'] < 20:
  28. rex['love'] -= 1
  29. elseif rex['relationship'] < 40:
  30. rex['love'] -= rand(0,1)
  31. elseif rex['relationship'] < 60:
  32. rex['love'] += rand(0,1)
  33. elseif rex['relationship'] < 80:
  34. rex['love'] += 1
  35. else
  36. rex['love'] += rand(1,2)
  37. end
  38. if rex['love'] > 100 or wl_cheat['dog_rel'] = 1:
  39. rex['love'] = 100
  40. elseif rex['love'] < -100:
  41. rex['love'] = -100
  42. end
  43. end
  44. !!Cocaine
  45. if $ARGS[0] = 'cocaine':
  46. if dur > 0 and narkday ! daystart:
  47. act 'Do a line of cocaine (0:05)':
  48. *clr & cla
  49. menu_off = 1
  50. narkday = daystart
  51. gs 'drugs', 'cocaine'
  52. minut += 5
  53. gs 'stat'
  54. '<center><img <<$set_imgh>> src="mod/wlife/images/player/cocaine.jpg"></center>'
  55. 'You snort some cocaine, feeling dizzy for just a moment. After that you feel fantastic, horny and full of energy.'
  56. act 'Continue': gt $loc, $loc_arg
  57. end
  58. end
  59. end
  60. !!Willpower
  61. if $ARGS[0] = 'will_unprotected':
  62. gs 'willpower', 'calc'
  63. will_cost = 0
  64. if missCum >= timeTresh: will_calc += 100
  65. if $ARGS[1] = 'resist':
  66. if wl_stats['unprotected'] <= 90:
  67. will_cost = (10 + wl_stats['unprotected'] + will_calc) / 10
  68. else
  69. will_cost = (100 + will_calc)/10
  70. end
  71. else
  72. if wl_stats['unprotected'] <= 90:
  73. will_cost = (100 - wl_stats['unprotected'] + will_calc) / 10
  74. else
  75. will_cost = (10 + will_calc)/10
  76. end
  77. end
  78. gs 'willpower', 'difficulty', '<<$ARGS[2]>>'
  79. end
  80. if $ARGS[0] = 'will_rimming':
  81. gs 'willpower', 'calc'
  82. if $ARGS[1] = 'self':
  83. if stat['rimming_give'] <= 90:
  84. will_cost = (100 - stat['rimming_give'] + will_calc)/10
  85. else
  86. will_cost = (10 + will_calc)/10
  87. end
  88. elseif $ARGS[1] = 'force':
  89. if stat['rimming_give'] <= 40:
  90. will_cost = (110 - will_enforced - stat['rimming_give'] + will_calc)/10
  91. else
  92. will_cost = (70 - will_enforced + will_calc)/10
  93. end
  94. else
  95. if stat['rimming_give'] <= 90:
  96. will_cost = (10 + stat['rimming_give'] + will_calc)/10
  97. else
  98. will_cost = (100 + will_calc)/10
  99. end
  100. end
  101. gs 'willpower', 'difficulty', '<<$ARGS[2]>>'
  102. end
  103. if $ARGS[0] = 'will_atm':
  104. gs 'willpower', 'calc'
  105. if $ARGS[1] = 'self':
  106. if wl_stats['atm'] <= 90:
  107. will_cost = (100 - wl_stats['atm'] + will_calc)/10
  108. else
  109. will_cost = (10 + will_calc)/10
  110. end
  111. elseif $ARGS[1] = 'force':
  112. if wl_stats['atm'] <= 40:
  113. will_cost = (110 - will_enforced - wl_stats['atm'] + will_calc)/10
  114. else
  115. will_cost = (70 - will_enforced + will_calc)/10
  116. end
  117. else
  118. if wl_stats['atm'] <= 90:
  119. will_cost = (10 + wl_stats['atm'] + will_calc)/10
  120. else
  121. will_cost = (100 + will_calc)/10
  122. end
  123. end
  124. gs 'willpower', 'difficulty', '<<$ARGS[2]>>'
  125. end
  126. if $ARGS[0] = 'will_bestiality':
  127. gs 'willpower', 'calc'
  128. will_cost = 0
  129. if missCum >= timeTresh: will_calc += 100
  130. if $ARGS[1] = 'resist':
  131. if zoo <= 90:
  132. will_cost = (10 + zoo + will_calc) / 10
  133. else
  134. will_cost = (100 + will_calc)/10
  135. end
  136. else
  137. if zoo <= 90:
  138. will_cost = (100 - zoo + will_calc) / 10
  139. else
  140. will_cost = (10 + will_calc)/10
  141. end
  142. end
  143. gs 'willpower', 'difficulty', '<<$ARGS[2]>>'
  144. end
  145. if $ARGS[0] = 'will_acceptance':
  146. if $ARGS[1] = 'resist':
  147. if wl_stats['acceptance'] > 60:
  148. gs 'willpower', 'prostitution', 'resist', 'hard'
  149. elseif wl_stats['acceptance'] > 30:
  150. gs 'willpower', 'prostitution', 'resist', 'medium'
  151. else
  152. gs 'willpower', 'prostitution', 'resist', 'easy'
  153. end
  154. elseif $ARGS[1] = 'force':
  155. if wl_stats['acceptance'] < 20:
  156. gs 'willpower', 'prostitution', 'force', 'hard'
  157. elseif wl_stats['acceptance'] < 40:
  158. gs 'willpower', 'prostitution', 'force', 'medium'
  159. else
  160. gs 'willpower', 'prostitution', 'force', 'easy'
  161. end
  162. else
  163. if wl_stats['acceptance'] < 20:
  164. gs 'willpower', 'prostitution', 'self', 'hard'
  165. elseif wl_stats['acceptance'] < 40:
  166. gs 'willpower', 'prostitution', 'self', 'medium'
  167. else
  168. gs 'willpower', 'prostitution', 'self', 'easy'
  169. end
  170. end
  171. end
  172. !! Condoms & STDs
  173. if $ARGS[0] = 'std_check':
  174. wl_std_check_rand = rand(0,10)
  175. if protect = 1:
  176. wl_std_rand = rand(0,1000)
  177. if wl_std_rand = 1000: gs 'mod_wlife_functions' , 'std_chance'
  178. else
  179. if $ARGS[1] = 'high':
  180. wl_std_rand = rand(-20,120)
  181. else
  182. wl_std_rand = rand(-60,100)
  183. end
  184. if wl_std_rand >= 80: gs 'mod_wlife_functions' , 'std_chance'
  185. end
  186. end
  187. if $ARGS[0] = 'std_chance':
  188. if cheatHealth = 0:
  189. if wl_std_check_rand = 8:
  190. !!herpes
  191. if rand(1, 100) > 90:
  192. if GerpesOnce = 0:
  193. GerpesOnce = 1
  194. Venera += 1
  195. Gerpes += 1
  196. GenHerpes = 1
  197. end
  198. end
  199. elseif wl_std_check_rand = 7:
  200. !!syphilis
  201. if rand(1, 100) > 95: Venera += 1
  202. if SifacOnce = 0:
  203. SifacOnce = 1
  204. Sifilis += 1
  205. end
  206. elseif wl_std_check_rand >= 5 and wl_std_check_rand < 7:
  207. !!gonorrhea/triper
  208. if rand(1, 100) > 95: Venera += 1
  209. if TriperOnce = 0:
  210. TriperOnce = 1
  211. Triper += 1
  212. end
  213. elseif wl_std_check_rand < 5:
  214. !!candidiasis/thrush
  215. if rand(1, 100) > 85:
  216. if KandidozOnce = 0:
  217. KandidozOnce = 1
  218. Kandidoz += 1
  219. end
  220. end
  221. end
  222. end
  223. end
  224. if $ARGS[0] = 'std_check_oral':
  225. wl_std_check_rand = rand(0,10)
  226. if protect = 1:
  227. wl_std_rand = rand(0,1000)
  228. if wl_std_rand = 1000: gs 'mod_wlife_functions' , 'std_oral_chance'
  229. else
  230. if $ARGS[1] = 'high':
  231. wl_std_rand = rand(-20,120)
  232. elseif $ARGS[1] = 'low':
  233. wl_std_rand = rand(-80,90)
  234. else
  235. wl_std_rand = rand(-60,100)
  236. end
  237. if wl_std_rand >= 80: gs 'mod_wlife_functions' , 'std_oral_chance'
  238. end
  239. end
  240. if $ARGS[0] = 'std_oral_chance':
  241. if cheatHealth = 0:
  242. if wl_std_check_rand >= 5 and wl_std_check_rand < 7:
  243. if rand(1, 100) > 95: Venera += 1
  244. if TriperOnce = 0:
  245. TriperOnce = 1
  246. TriperOral += 1
  247. if rand (0,100) < 15: TriperOralSigns = 1
  248. end
  249. elseif wl_std_check_rand = 7:
  250. if rand(0,1) = 1:
  251. !!syphilis
  252. if rand(1, 100) > 95: Venera += 1
  253. if SifacOnce = 0:
  254. SifacOnce = 1
  255. Sifilis += 1
  256. end
  257. end
  258. elseif wl_std_check_rand < 5:
  259. !!candidiasis/thrush
  260. if rand(1, 100) > 85:
  261. if KandidozOnce = 0:
  262. KandidozOnce = 1
  263. Kandidoz += 1
  264. end
  265. end
  266. elseif wl_std_check_rand = 8:
  267. !!herpes
  268. if rand(1, 100) > 90:
  269. if GerpesOnce = 0:
  270. GerpesOnce = 1
  271. Venera += 1
  272. Gerpes += 1
  273. OrHerpes = 1
  274. end
  275. end
  276. end
  277. end
  278. end
  279. if $ARGS[0] = 'remove_condom':
  280. if prezik > 0:
  281. prezik -= 1
  282. else
  283. prezikcount -= 1
  284. end
  285. end
  286. if $ARGS[0] = 'your_condom':
  287. wl_whore['condom'] = 1
  288. protect = iif(prezik > 0,1,0)
  289. if prezik > 0:
  290. if rand(1,prezik) <= badprezik:
  291. badprezik -= 1
  292. noprotect = 1
  293. sexcontra = 7
  294. else
  295. sexcontra = 3
  296. end
  297. prezik -= 1
  298. sexcontra = iif(preziktype = 2,7,sexcontra)
  299. else
  300. sexcontra = 0
  301. end
  302. end
  303. if $ARGS[0] = 'his_condom':
  304. $bwa_boy = iif($ARGS[1] = '',$boydesc,$ARGS[1])
  305. protect = 1
  306. sexcontra = 3
  307. *p '<<ucase(mid($bwa_boy,1,1))>><<mid($bwa_boy,2,len($bwa_boy)-1)>> takes his condom and puts it on his <<dick>> centimeter dick.'
  308. end
  309. !!Acceptance
  310. if $ARGS[0] = 'acceptance_check':
  311. if wl_stats['acceptance'] < 20:
  312. if $ARGS[1] = 'normal':
  313. pcs_mood -= 20
  314. else
  315. pcs_mood -= 10
  316. end
  317. elseif wl_stats['acceptance'] >= 20 and wl_stats['acceptance'] < 40:
  318. if $ARGS[1] = 'normal':
  319. pcs_mood -= 10
  320. else
  321. pcs_mood -= 5
  322. end
  323. elseif wl_stats['acceptance'] >= 40 and wl_stats['acceptance'] < 60 and $ARGS[1] = 'normal':
  324. pcs_mood -= 5
  325. elseif wl_stats['acceptance'] >= 60 and $ARGS[1] = 'regular':
  326. pcs_mood += 5
  327. end
  328. end
  329. !!Background: Black
  330. if $ARGS[0] = 'darkness':
  331. fcolor = rgb(255, 255, 255)
  332. bcolor = rgb(0, 0, 0)
  333. lcolor = rgb(106, 90, 205)
  334. end
  335. if $ARGS[0] = 'parameters':
  336. !!Reset
  337. protect = 0
  338. sexcontra = 0
  339. $wl_client_condom = 'tbd'
  340. $wl_client_cumshot = 'tbd'
  341. !!Client
  342. gs 'npcgeneratec', 0, 'client', rand(18,65)
  343. gs 'boyStat', $npclastgenerated
  344. !!Time
  345. if hour > 19 or hour < 7:
  346. $wl_work_time = 'night'
  347. else
  348. $wl_work_time = 'day'
  349. end
  350. gs 'mod_wlife_functions', 'std_cum_check'
  351. !!Client Likes/Dislikes
  352. if rand(1,10) = 10:
  353. wl_whore['mesec_mod'] = 1
  354. else
  355. wl_whore['mesec_mod'] = 0
  356. end
  357. if rand(1,100) > 97:
  358. wl_whore['dirty_anal_mod'] = 1
  359. else
  360. wl_whore['dirty_anal_mod'] = 0
  361. end
  362. if rand(1,10) = 10:
  363. wl_whore['cum_visible_mod'] = 1
  364. else
  365. wl_whore['cum_visible_mod'] = 0
  366. end
  367. !!Age
  368. if vidage < 18 and rand(1,10) < 7:
  369. wl_whore['vidage_mod'] = 1
  370. else
  371. wl_whore['vidage_mod'] = 0
  372. end
  373. !!Scene
  374. wl_scene_rand = rand(1,100)
  375. if wl_scene_rand <= 50:
  376. if mesec = 0 or wl_whore['mesec_mod'] = 1:
  377. $wl_whore['client_scene'] = 'Vaginal'
  378. elseif mesec > 0 and wl_whore['mesec_mod'] = 0 and (wl_whore['enema'] = 1 or wl_whore['dirty_anal_mod'] = 1):
  379. $wl_whore['client_scene'] = 'Anal'
  380. else
  381. $wl_whore['client_scene'] = 'Blowjob'
  382. end
  383. elseif wl_scene_rand > 50 and wl_scene_rand <= 75:
  384. if wl_whore['enema'] = 1 or wl_whore['dirty_anal_mod'] = 1:
  385. $wl_whore['client_scene'] = 'Anal'
  386. elseif wl_whore['enema'] = 0 and wl_whore['dirty_anal_mod'] = 0 and (mesec = 0 or wl_whore['mesec_mod'] = 1):
  387. $wl_whore['client_scene'] = 'Vaginal'
  388. else
  389. $wl_whore['client_scene'] = 'Blowjob'
  390. end
  391. else
  392. $wl_whore['client_scene'] = 'Blowjob'
  393. end
  394. !!Regular Worker
  395. if wl_whore['customer_total'] < 10:
  396. wl_whore['regular_chance'] = 0
  397. elseif wl_whore['customer_total'] >= 10 and wl_whore['customer_total'] <= 25:
  398. wl_whore['regular_chance'] = 1
  399. elseif wl_whore['customer_total'] > 25 and wl_whore['customer_total'] <= 50:
  400. wl_whore['regular_chance'] = 2
  401. elseif wl_whore['customer_total'] > 50 and wl_whore['customer_total'] <= 100:
  402. wl_whore['regular_chance'] = 3
  403. elseif wl_whore['customer_total'] > 100 and wl_whore['customer_total'] <= 250:
  404. wl_whore['regular_chance'] = 4
  405. end
  406. !!Chance to find a client
  407. wl_whore['client_chance'] = hotcat * 10 + wl_whore['regular_chance'] * 5 + rand(1,100) + wl_whore['pity_counter']
  408. if $pantyworntype = 'sexshop' and CloSkirtShortness > 4: wl_whore['client_chance'] += 10
  409. !!Client
  410. if wl_whore['regular_timer'] ! daystart and $wl_whore['client_scene'] ! 'Blowjob':
  411. if (wl_whore['regular_chance'] = 1 and rand(1,100) > 95) or (wl_whore['regular_chance'] = 2 and rand(1,100) > 90) or (wl_whore['regular_chance'] = 3 and rand(1,100) > 80) or (wl_whore['regular_chance'] = 4 and rand(1,100) > 60):
  412. wl_whore['regular'] = 1
  413. else
  414. wl_whore['regular'] = 0
  415. end
  416. else
  417. wl_whore['regular'] = 0
  418. end
  419. !!ToDo: Rough Clients
  420. !! if wl_whore['regular'] = 0:
  421. !! if (wl_work_day = 0 and rand(1,100) > 90) or (wl_work_day = 1 and rand(1,100) > 95):
  422. !! if wl_whore['rough'] = 1
  423. !! else
  424. !! wl_whore['rough'] = 0
  425. !! end
  426. !! end
  427. if wl_whore['regular'] = 0 and wl_whore['rough'] = 0 and wl_whore['std_mod'] = 0 and rand(1,100) > iif($wl_brand['text_pubic'] = 'cumslut', 84, 92):
  428. wl_whore['client_creampie'] = 1
  429. else
  430. wl_whore['client_creampie'] = 0
  431. end
  432. if wl_whore['rough'] = 1 or (wl_whore['rough'] = 0 and rand(1,100) > 40):
  433. wl_whore['propose'] = 0
  434. else
  435. wl_whore['propose'] = 1
  436. end
  437. end
  438. if $ARGS[0] = 'payment':
  439. !!Basic Payment
  440. if $ARGS[1] = 'pav':
  441. if $wl_whore['pav_scene'] = 'blowjob':
  442. wl_whore['payment'] = 425
  443. elseif $wl_whore['pav_scene'] = 'anal':
  444. wl_whore['payment'] = 1200
  445. else
  446. wl_whore['payment'] = 1000
  447. end
  448. else
  449. if $wl_whore['client_scene'] = 'Blowjob':
  450. wl_whore['payment'] = 350
  451. if $ARGS[1] = 'condom_no': wl_whore['payment'] += 75
  452. if $ARGS[2] = 'inside_yes': wl_whore['payment'] += 50
  453. elseif $wl_whore['client_scene'] = 'Vaginal':
  454. wl_whore['payment'] = 700
  455. if $ARGS[1] = 'condom_no': wl_whore['payment'] += 300
  456. if $ARGS[2] = 'inside_yes': wl_whore['payment'] += 300
  457. elseif $wl_whore['client_scene'] = 'Anal':
  458. wl_whore['payment'] = 900
  459. if $ARGS[1] = 'condom_no': wl_whore['payment'] += 200
  460. if $ARGS[2] = 'inside_yes': wl_whore['payment'] += 100
  461. end
  462. end
  463. !!Bonus
  464. wl_whore['payment_mod'] = hotcat * 10
  465. if pcs_makeup = 0:
  466. wl_whore['payment_mod'] -= 20
  467. elseif pcs_makeup > 1:
  468. wl_whore['payment_mod'] += pcs_makeup * 10
  469. end
  470. if mesec > 0 and $wl_whore['client_scene'] = 'Vaginal':
  471. if wl_whore['mesec_mod'] = 0:
  472. wl_whore['payment_mod'] -= 200
  473. else
  474. wl_whore['payment_mod'] += 300
  475. end
  476. end
  477. if wl_whore['enema'] = 0 and $wl_whore['client_scene'] = 'Anal':
  478. if wl_whore['dirty_anal_mod'] = 0:
  479. if $ARGS[1] = 'condom_no':
  480. wl_whore['payment_mod'] -= 600
  481. elseif $ARGS[1] = 'condom_yes':
  482. wl_whore['payment_mod'] -= 300
  483. end
  484. else
  485. wl_whore['payment_mod'] += 300
  486. end
  487. end
  488. if wl_whore['cum_dressed'] = 1:
  489. if wl_whore['cum_visible_mod'] = 0:
  490. wl_whore['payment_mod'] -= 200
  491. else
  492. wl_whore['payment_mod'] += 300
  493. end
  494. end
  495. wl_whore['payment_mod'] += pcs_mood - 50
  496. if $pantyworntype = 'sexshop' and CloSkirtShortness > 4: wl_whore['payment_mod'] += 50
  497. if wl_whore['vidage_mod'] = 1:
  498. wl_whore['payment_mod'] += 50 * (18 - vidage)
  499. else
  500. wl_whore['payment_mod'] -= 50 * (18 - vidage)
  501. end
  502. if ($wl_whore['client_scene'] = 'Blowjob') or ($wl_whore['pav_scene'] = 'blowjob'):
  503. wl_whore['payment_mod'] = wl_whore['payment_mod'] / 2
  504. if pirsA = 2:
  505. wl_whore['payment_mod'] += 50
  506. elseif pirsA = 4:
  507. wl_whore['payment_mod'] += 75
  508. elseif pirsA > 0 and pirsA < 10000:
  509. wl_whore['payment_mod'] += 25
  510. end
  511. end
  512. wl_whore['payment'] += wl_whore['payment_mod']
  513. wl_whore['payment_backup'] = wl_whore['payment']
  514. !!Client Satisfaction
  515. wl_whore['payment'] = (wl_whore['payment'] * (100 + wl_whore['client_satisfaction'])) / 100
  516. !!Rounding
  517. wl_whore['payment'] = func('mod_wlife_functions', 'exact_round', wl_whore['payment'], 10)
  518. wl_whore['payment_backup'] = func('mod_wlife_functions', 'exact_round', wl_whore['payment_backup'], 10)
  519. end
  520. if $ARGS[0] = 'reputation_check':
  521. if wl_stats['loyalty'] < -100:
  522. wl_stats['loyalty'] = -100
  523. elseif wl_stats['loyalty'] > 100:
  524. wl_stats['loyalty'] = 100
  525. end
  526. if wl_stats['loyalty'] < -60:
  527. $wl_stats['loyalty'] = 'illoyal'
  528. elseif wl_stats['loyalty'] < -40:
  529. $wl_stats['loyalty'] = 'untrustworthy'
  530. elseif wl_stats['loyalty'] < -20:
  531. $wl_stats['loyalty'] = 'unreliable'
  532. elseif wl_stats['loyalty'] < 20:
  533. $wl_stats['loyalty'] = 'unproven'
  534. elseif wl_stats['loyalty'] < 40:
  535. $wl_stats['loyalty'] = 'reliable'
  536. elseif wl_stats['loyalty'] < 60:
  537. $wl_stats['loyalty'] = 'trustworthy'
  538. else
  539. $wl_stats['loyalty'] = 'loyal'
  540. end
  541. if wl_stats['respect'] < -100:
  542. wl_stats['respect'] = -100
  543. elseif wl_stats['respect'] > 100:
  544. wl_stats['respect'] = 100
  545. end
  546. if wl_stats['respect'] < -60:
  547. $wl_stats['respect'] = 'whore'
  548. elseif wl_stats['respect'] < -30:
  549. $wl_stats['respect'] = 'slut'
  550. elseif wl_stats['respect'] < 30:
  551. $wl_stats['respect'] = 'chick'
  552. elseif wl_stats['respect'] < 60:
  553. $wl_stats['respect'] = 'girl'
  554. else
  555. $wl_stats['respect'] = 'woman'
  556. end
  557. if wl_stats['loyalty'] < -60:
  558. wl_debt['interest'] = 100
  559. wl_debt['weekly_interest'] = 15
  560. $wl_debt['interest'] = '<br>He doesn''t trust you at all and demands na interest rate of <<wl_debt[''interest'']>>%.'
  561. elseif wl_stats['loyalty'] < -40:
  562. wl_debt['interest'] = 60
  563. wl_debt['weekly_interest'] = 15
  564. $wl_debt['interest'] = '<br>He doesn''t trust you and demands an interest rate of <<wl_debt[''interest'']>>%.'
  565. elseif wl_stats['loyalty'] < -20:
  566. wl_debt['interest'] = 40
  567. wl_debt['weekly_interest'] = 10
  568. $wl_debt['interest'] = '<br>He''s skeptical about trusting you and demands an interest rate of <<wl_debt[''interest'']>>%.'
  569. elseif wl_stats['loyalty'] < 20:
  570. wl_debt['interest'] = 25
  571. wl_debt['weekly_interest'] = 10
  572. $wl_debt['interest'] = '<br>He''s a bit skeptical about trusting you and demands an interest rate of <<wl_debt[''interest'']>>%.'
  573. elseif wl_stats['loyalty'] < 40:
  574. wl_debt['interest'] = 15
  575. wl_debt['weekly_interest'] = 5
  576. $wl_debt['interest'] = '<br>He trusts you and only demands an interest rate of <<wl_debt[''interest'']>>%.'
  577. else
  578. wl_debt['interest'] = 10
  579. wl_debt['weekly_interest'] = 5
  580. $wl_debt['interest'] = '<br>He trusts you a lot and only demands an interest rate of <<wl_debt[''interest'']>>%.'
  581. end
  582. end
  583. if $ARGS[0] = 'abortion':
  584. abort += 1
  585. abortionbirthdate = daystart
  586. gs 'medical_din', 'remove_preg'
  587. knowpregloss = 2
  588. abortrand = rand(0, 10)
  589. if age > 18:
  590. if abortrand < 10:sterilewb += 1
  591. if abortrand = 10:sterilewb += 10
  592. else
  593. if abortrand < 7:sterilewb += 2
  594. if abortrand >= 7:sterilewb += 10
  595. end
  596. killvar 'abortrand'
  597. pcs_hydra += 20
  598. if broodcurse > 0: over = 13 & gt'gameover'
  599. end
  600. if $ARGS[0] = 'random_name':
  601. $wl_boyname[1] = ''
  602. $wl_boyname[2] = ''
  603. :wl_rng_jump
  604. wl_temp = rand(0,23)
  605. if wl_temp = 0:
  606. $wl_temp = 'Abram'
  607. elseif wl_temp = 1:
  608. $wl_temp = 'Alexei'
  609. elseif wl_temp = 2:
  610. $wl_temp = 'Adrian'
  611. elseif wl_temp = 3:
  612. $wl_temp = 'Dima'
  613. elseif wl_temp = 4:
  614. $wl_temp = 'Dimitri'
  615. elseif wl_temp = 5:
  616. $wl_temp = 'Igor'
  617. elseif wl_temp = 6:
  618. $wl_temp = 'Leonid'
  619. elseif wl_temp = 7:
  620. $wl_temp = 'Petka'
  621. elseif wl_temp = 8:
  622. $wl_temp = 'Michail'
  623. elseif wl_temp = 9:
  624. $wl_temp = 'Vasily'
  625. elseif wl_temp = 10:
  626. $wl_temp = 'Oleg'
  627. elseif wl_temp = 11:
  628. $wl_temp = 'Olezka'
  629. elseif wl_temp = 12:
  630. $wl_temp = 'Pasha'
  631. elseif wl_temp = 13:
  632. $wl_temp = 'Pavel'
  633. elseif wl_temp = 14:
  634. $wl_temp = 'Sacha'
  635. elseif wl_temp = 15:
  636. $wl_temp = 'Slava'
  637. elseif wl_temp = 16:
  638. $wl_temp = 'Ruslan'
  639. elseif wl_temp = 17:
  640. $wl_temp = 'Taras'
  641. elseif wl_temp = 18:
  642. $wl_temp = 'Timofey'
  643. elseif wl_temp = 19:
  644. $wl_temp = 'Vanya'
  645. elseif wl_temp = 20:
  646. $wl_temp = 'Viktor'
  647. elseif wl_temp = 21:
  648. $wl_temp = 'Vladimir'
  649. elseif wl_temp = 22:
  650. $wl_temp = 'Yaromir'
  651. elseif wl_temp = 23:
  652. $wl_temp = 'Yevgeni'
  653. end
  654. if $wl_boyname[1] = '':
  655. $wl_boyname[1] = $wl_temp
  656. jump 'wl_rng_jump'
  657. elseif $wl_boyname[2] = '':
  658. $wl_boyname[2] = $wl_temp
  659. end
  660. if $wl_boyname[1] = $wl_boyname[2]:
  661. $wl_boyname[2] = ''
  662. jump 'wl_rng_jump'
  663. end
  664. killvar 'wl_temp'
  665. killvar '$wl_temp'
  666. end
  667. if $ARGS[0] = 'weed_check':
  668. gs 'drugs', 'joint'
  669. wl_drugs['counter_weed'] += 1
  670. if wl_drugs['counter_weed'] > rand(2,5) and wl_stats['acceptance'] < 100:
  671. wl_drugs['counter_weed'] = 0
  672. wl_stats['acceptance'] += 1
  673. '<br>Your life isn''t so bad, isn''t it? You tell yourself. Shura was right. Sometimes it''s just better to accept what''s happening and not give a shit about it.'
  674. end
  675. end
  676. if $ARGS[0] = 'tat_pierce_count':
  677. tattCount = 0
  678. if tatarm >= 1: tattCount += 1
  679. if tatass >= 1: tattCount += 1
  680. if tatback >= 1: tattCount += 1
  681. if tatblly >= 1: tattCount += 1
  682. if tatbrst >= 1: tattCount += 1
  683. if tatchst >= 1: tattCount += 1
  684. if tatfce >= 1: tattCount += 1
  685. if tatankle >= 1: tattCount += 1
  686. if tatleg >= 1: tattCount += 1
  687. if tatlip >= 1: tattCount += 1
  688. if tatneck >= 1: tattCount += 1
  689. if tatvag >= 1: tattCount += 1
  690. if tatlech >= 1: tattCount += 1
  691. if tatside >= 1: tattCount += 1
  692. if tatupb >= 1: tattCount += 1
  693. if tatunder >= 1: tattCount += 1
  694. if tatwrist >= 1: tattCount += 1
  695. if tathand >= 1: tattCount += 1
  696. pierWearCount = 0
  697. if pirsA > 0 and pirsA ! 10000: pierWearCount += 1
  698. if pirsB > 0 and pirsB ! 10000: pierWearCount += 1
  699. if pirsC > 0 and pirsC ! 10000: pierWearCount += 1
  700. if pirsD > 0 and pirsD ! 10000: pierWearCount += 1
  701. if pirsE > 0 and pirsE ! 10000: pierWearCount += 1
  702. if pirsF > 0 and pirsF ! 10000: pierWearCount += 1
  703. if pirsG > 0 and pirsG ! 10000: pierWearCount += 1
  704. if pirsN > 0 and pirsN ! 10000: pierWearCount += 1
  705. end
  706. if $ARGS[0] = 'pav_client':
  707. !!Reset
  708. wl_whore['pav_internal'] = 0
  709. gs 'mod_wlife_functions', 'std_cum_check'
  710. !!Regular
  711. if wl_whore['pav_total'] < 10:
  712. wl_whore['pav_chance'] = 0
  713. elseif wl_whore['pav_total'] >= 10 and wl_whore['pav_total'] <= 25:
  714. wl_whore['pav_chance'] = 1
  715. elseif wl_whore['pav_total'] > 25 and wl_whore['pav_total'] <= 50:
  716. wl_whore['pav_chance'] = 2
  717. elseif wl_whore['pav_total'] > 50 and wl_whore['pav_total'] <= 100:
  718. wl_whore['pav_chance'] = 3
  719. elseif wl_whore['pav_total'] > 100 and wl_whore['pav_total'] <= 250:
  720. wl_whore['pav_chance'] = 4
  721. end
  722. if ((wl_whore['pav_chance'] = 1 and rand(1,100) > 95) or (wl_whore['pav_chance'] = 2 and rand(1,100) > 90) or (wl_whore['pav_chance'] = 3 and rand(1,100) > 80) or (wl_whore['pav_chance'] = 4 and rand(1,100) > 60)) and (wl_rand ! 8 or (wl_rand = 8 and wl_whore['pav_regular_s8'] = 1)):
  723. wl_whore['pav_regular'] = 1
  724. !! elseif wl_whore['pav_chance'] > 0 and rand(1,100) > 92:
  725. !! wl_whore['pav_regular'] = -1
  726. else
  727. wl_whore['pav_regular'] = 0
  728. end
  729. !!ToDo: Add cheat for this chance
  730. $wl_whore['client_behavior'] = iif(rand(1,100) < wl_whore['client_behavior_chance'] or wl_whore['pav_regular'] = -1, 'nice', 'abusive')
  731. !!Scene
  732. if wl_rand > 7:
  733. $wl_whore['pav_scene'] = 'anal'
  734. elseif mesec = 0 and rand(0,100) < 50:
  735. $wl_whore['pav_scene'] = 'pussy'
  736. else
  737. $wl_whore['pav_scene'] = 'blowjob'
  738. end
  739. if wl_rand = 0 or wl_rand = 8 or wl_rand = 9 or ((wl_rand = 2 or wl_rand = 3 or (wl_rand = 5 and $wl_whore['client_behavior'] = 'nice') or wl_rand = 6 or wl_rand = 7) and $wl_whore['pav_scene'] = 'pussy'):
  740. $wl_whore['pav_location'] = 'private'
  741. if wl_rand = 3 or wl_rand = 8: $wl_whore['client_behavior'] = 'abusive'
  742. elseif wl_rand = 1 and $wl_whore['pav_scene'] = 'pussy':
  743. $wl_whore['pav_location'] = iif($wl_whore['client_behavior'] = 'nice', 'private', 'public')
  744. elseif ((wl_rand = 2 or wl_rand = 3 or wl_rand = 6 or wl_rand = 7) and $wl_whore['pav_scene'] = 'blowjob') or wl_rand = 4 or wl_rand = 5:
  745. $wl_whore['pav_location'] = 'public'
  746. if wl_rand = 5: $wl_whore['client_behavior'] = 'abusive'
  747. else
  748. gt 'mod_wlife_solicitation', 'rng'
  749. end
  750. if wl_whore['pav_regular_s8'] = 1 and wl_rand = 8: wl_whore['pav_regular'] = 1
  751. if (wl_rand = 3 or wl_rand = 8) and $wl_whore['pav_scene'] = 'private' and wl_whore['pav_regular'] = 1:
  752. wl_whore['pav_condom_refusal'] = 1
  753. else
  754. wl_whore['pav_condom_refusal'] = 0
  755. end
  756. !!Generator
  757. gs 'npcgeneratec', 0, 'pavlovsk client', rand(18,45)
  758. gs 'boyStat', $npclastgenerated
  759. end
  760. if $ARGS[0] = 'std_cum_check':
  761. !!STD
  762. if pcs_apprnc = -10 and rand(1,10) < 8:
  763. wl_whore['std_mod'] = 1
  764. else
  765. wl_whore['std_mod'] = 0
  766. end
  767. !!Non-Visible Cum
  768. if cumloc[0] = 1:
  769. wl_whore['cum_vaginal_mod'] = 1
  770. else
  771. wl_whore['cum_vaginal_mod'] = 0
  772. end
  773. if cumloc[3] = 1:
  774. wl_whore['cum_anal_mod'] = 1
  775. else
  776. wl_whore['cum_anal_mod'] = 0
  777. end
  778. !!Visible Cum (Dressed)
  779. if cumloc[7] = 1 or cumloc[11] = 1 or cumloc[13] = 1 or cumloc[15] = 1:
  780. wl_whore['cum_dressed'] = 1
  781. else
  782. wl_whore['cum_dressed'] = 0
  783. end
  784. !!Visible Cum (Undressed)
  785. if cumloc[1] = 1 or cumloc[4] = 1 or cumloc[8] = 1 or cumloc[14] = 1 or cumloc[16] = 1:
  786. wl_whore['cum_undressed'] = 1
  787. else
  788. wl_whore['cum_undressed'] = 0
  789. end
  790. end
  791. if $ARGS[0] = 'exact_round':
  792. !! ARGS[1] = value you want divided
  793. !! ARGS[2] = divider
  794. !! func('mod_wlife_functions','exact_round', number, divider)
  795. !! func('mod_wlife_functions','exact_round', 12345, 7)
  796. if ARGS[2] ! 0:
  797. round_number = ARGS[1]/ARGS[2]
  798. if (ARGS[2] mod 2 ! 0 and ARGS[1] mod ARGS[2] > ARGS[2]/2) or (ARGS[2] mod 2 = 0 and ARGS[1] mod ARGS[2] >= ARGS[2]/2): round_number += 1
  799. round_number = round_number * ARGS[2]
  800. result = round_number
  801. killvar 'round_number'
  802. else
  803. '<b>Developer Note: No division by 0. Please report this and some text from the mainscreen as a bug in the whore life thread.</b>'
  804. end
  805. end
  806. --- mod_wlife_functions ---------------------------------