willpower.qsrc 23 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871
  1. # willpower
  2. !!To use it call it with gs 'willpower', 'action', 'type'
  3. !!Action: Determines what action sveta is resisting, forcing somebody to do or forcing herself to do
  4. !!List of actions:
  5. !! 'voyeur', 'mast', 'hj', 'bj', 'cuni', 'sex', 'anal', 'group', 'gangbang', 'prostitution', 'swallow', 'cum_inside', 'cum_inside_anal', 'rape',
  6. !! 'humiliation', 'footjob', 'titjob', 'trib', 'rimming', 'BDSM', 'pee', 'cum_outside', 'drink', 'drugs', 'crime', 'exhib', 'sleep'
  7. !! there is also 'foreplay' for things like touching and fondling
  8. !! and two special cases 'misc' and 'skill'
  9. !!Type: Determines what kind of willpower check sveta needs to do ('resist', 'force', 'self').
  10. !! -'resist' is used if sveta is resisting to do the 'action' somebody else wants her to do.
  11. !! -'force' is used if sveta forces somebody else to do the 'action'.
  12. !! -'self' should be used if sveta forces herself to do the 'action' (this should be used only in rare occasions)
  13. !!Example 1: Sveta is forcing somebody to perform a blowjob: gs 'willpower', 'bj', 'force'
  14. !!Example 2: Sveta is resisting doing drugs: gs 'willpower', 'drugs', 'resist'
  15. !!You can modify the difficulty of the check with adding an additional argument at the end. You can either add an 'easy' or a 'hard' to modify the difficulty.
  16. !!Example 1: Sveta is resisting doing drugs, a weak outcast is pressuring her to use them: gs 'willpower', 'drugs', 'resist', 'easy'
  17. !!Example 2: Sveta is resisting doing drugs, a group of gopniks are pressuring her to use them: gs 'willpower', 'drugs', 'resist', 'hard'
  18. !!There are two special cases: 'misc' and 'skill'
  19. !!'skill': Bridging a gap in skill for doing something, for succeeding when not quite meeting the required skill/attribute: gs 'willpower', '<skill>_lvl'
  20. !!Example for 'skill': gs 'willpower', 'skill', 'resist', 'pcs_makupskl_lvl' for a willpower check regarding something with pcs_makupskl_lvl (you can also apply 'easy' or 'hard' difficulty to a skill check)
  21. !!'misc': Use this 'action' if no other 'action' fits the scene. You can set three difficulty levels for this check 'easy', 'medium', 'hard' (Difficulty is only for 'misc' checks)
  22. !!To call 'misc' do the following: gs 'willpower', 'misc', 'type', 'difficulty'
  23. !!Example 1 for 'misc': Sveta wants to bring herself to slap a weak looking nerd: gs 'willpower', 'misc', 'self', 'easy'
  24. !!Example 2 for 'misc': Sveta wants to force Artem to go to Vitek and call him an asshole: gs 'willpower', 'misc', 'force', 'hard'
  25. !!After Sveta has taken the willpower action the cost must be paid with: gs 'willpower', 'pay', 'type'
  26. !!Example: Sveta has to pay for resisting to do a blowjob: gs 'willpower', 'pay', 'resist'
  27. !!WARNING: If you have two or more actions that need willpower at the same time, you have to recalculate the willpower cost before the costs are payed (see Code Example 2)
  28. !{ Code Example 1 (one action needs willpower)
  29. gs 'willpower', 'misc', 'self', 'hard'
  30. if will_cost <= pcs_willpwr:
  31. act 'Kick him in the balls (<<will_cost>> Willpower)':
  32. *clr & cla
  33. gs 'willpower', 'pay', 'self'
  34. gs 'stat'
  35. 'Event text'
  36. act 'Next action': gt 'farawayistan'
  37. end
  38. else
  39. act 'Kick him in the balls (<font color="red"><<will_cost>> Willpower</font>)': '<br><font color="red">You don''t have enough willpower to use this action.</font>'
  40. end
  41. }
  42. !{ Code Example 2 (several actions need willpower)
  43. gs 'willpower', 'misc', 'self', 'hard'
  44. if will_cost <= pcs_willpwr:
  45. act 'Kick him in the balls (<<will_cost>> Willpower)':
  46. *clr & cla
  47. gs 'willpower', 'misc', 'self', 'medium' <-- recalculate the willpower cost here
  48. gs 'willpower', 'pay', 'self'
  49. gs 'stat'
  50. 'Event text'
  51. act 'Next action': gt 'farawayistan'
  52. end
  53. else
  54. act 'Kick him in the balls (<font color="red"><<will_cost>> Willpower</font>)': '<br><font color="red">You don''t have enough willpower to use this action.</font>'
  55. end
  56. gs 'willpower', 'misc', 'self', 'medium'
  57. if will_cost <= pcs_willpwr:
  58. act 'Slap him across the face (<<will_cost>> Willpower)':
  59. *clr & cla
  60. gs 'willpower', 'misc', 'self', 'medium' <-- recalculate the willpower cost here
  61. gs 'willpower', 'pay', 'self'
  62. gs 'stat'
  63. 'Event text'
  64. act 'Next action': gt 'farawayistan'
  65. end
  66. else
  67. act 'Slap him across the face (<font color="red"><<will_cost>> Willpower</font>)': '<br><font color="red">You don''t have enough willpower to use this action.</font>'
  68. end
  69. }
  70. if $ARGS[0] = 'calc':
  71. gs 'willpower', 'dnd'
  72. will_calc = will_dnd
  73. !!fatigue
  74. if pcs_sleep < 5:
  75. will_calc += 50
  76. elseif pcs_sleep < 10:
  77. will_calc += 25
  78. elseif pcs_sleep < 20:
  79. will_calc += 10
  80. elseif pcs_sleep < 30:
  81. will_calc += 5
  82. end
  83. !!hunger
  84. if pcs_energy < 5:
  85. will_calc += 50
  86. elseif pcs_energy < 10:
  87. will_calc += 25
  88. elseif pcs_energy < 20:
  89. will_calc += 10
  90. elseif pcs_energy < 30:
  91. will_calc += 5
  92. end
  93. !!thirst
  94. if pcs_hydra < 5:
  95. will_calc += 50
  96. elseif pcs_hydra < 10:
  97. will_calc += 25
  98. elseif pcs_hydra < 20:
  99. will_calc += 10
  100. elseif pcs_hydra < 30:
  101. will_calc += 5
  102. end
  103. !!Very horny
  104. if pcs_horny >= 90: will_calc += 10
  105. !!Bad syphilis, you is mental
  106. if Sifilis >= 50: will_calc += 100
  107. !!feeling sick
  108. if sick > 72:
  109. will_calc += 35
  110. elseif sick > 48:
  111. will_calc += 20
  112. elseif sick > 24:
  113. will_calc += 10
  114. elseif sick > 1:
  115. will_calc += 5
  116. end
  117. will_calc += pain['total']
  118. end
  119. if $ARGS[0] = 'voyeur':
  120. gs 'willpower', 'calc'
  121. if $ARGS[1] = 'self':
  122. if stat['voyeur'] <= 90:
  123. will_cost = (100 - stat['voyeur'] + will_calc)/10
  124. else
  125. will_cost = (10 + will_calc)/10
  126. end
  127. elseif $ARGS[1] = 'force':
  128. if stat['voyeur'] <= 40:
  129. will_cost = (110 - will_enforced - stat['voyeur'] + will_calc)/10
  130. else
  131. will_cost = (70 - will_enforced + will_calc)/10
  132. end
  133. else
  134. if stat['voyeur'] <= 90:
  135. will_cost = (10 + stat['voyeur'] + will_calc)/10
  136. else
  137. will_cost = (100 + will_calc)/10
  138. end
  139. end
  140. end
  141. if $ARGS[0] = 'mast':
  142. gs 'willpower', 'calc'
  143. if $ARGS[1] = 'self':
  144. if stat['mast'] <= 90:
  145. will_cost = (100 - stat['mast'] + will_calc)/10
  146. else
  147. will_cost = (10 + will_calc)/10
  148. end
  149. elseif $ARGS[1] = 'force':
  150. if stat['mast'] <= 40:
  151. will_cost = (110 - will_enforced - stat['mast'] + will_calc)/10
  152. else
  153. will_cost = (70 - will_enforced + will_calc)/10
  154. end
  155. else
  156. if stat['mast'] <= 90:
  157. will_cost = (10 + stat['mast'] + will_calc)/10
  158. else
  159. will_cost = (100 + will_calc)/10
  160. end
  161. end
  162. end
  163. if $ARGS[0] = 'hj':
  164. gs 'willpower', 'calc'
  165. if $ARGS[1] = 'self':
  166. if missCum >= timeTresh: will_calc = 0
  167. if stat['hj'] <= 90:
  168. will_cost = (100 - stat['hj'] + will_calc)/10
  169. else
  170. will_cost = (10 + will_calc)/10
  171. end
  172. elseif $ARGS[1] = 'force':
  173. if stat['hj'] <= 40:
  174. will_cost = (110 - will_enforced - stat['hj'] + will_calc)/10
  175. else
  176. will_cost = (70 - will_enforced + will_calc)/10
  177. end
  178. else
  179. if missCum >= timeTresh: will_calc += 100
  180. if stat['hj'] <= 90:
  181. will_cost = (10 + stat['hj'] + will_calc)/10
  182. else
  183. will_cost = (100 + will_calc)/10
  184. end
  185. end
  186. end
  187. if $ARGS[0] = 'bj':
  188. gs 'willpower', 'calc'
  189. if $ARGS[1] = 'self':
  190. if missCum >= timeTresh: will_calc = 0
  191. if stat['bj'] <= 90:
  192. will_cost = (100 - stat['bj'] + will_calc)/10
  193. else
  194. will_cost = (10 + will_calc)/10
  195. end
  196. elseif $ARGS[1] = 'force':
  197. if stat['bj'] <= 40:
  198. will_cost = (110 - will_enforced - stat['bj'] + will_calc)/10
  199. else
  200. will_cost = (70 - will_enforced + will_calc)/10
  201. end
  202. else
  203. if missCum >= timeTresh: will_calc += 100
  204. if stat['bj'] <= 90:
  205. will_cost = (10 + stat['bj'] + will_calc)/10
  206. else
  207. will_cost = (100 + will_calc)/10
  208. end
  209. end
  210. end
  211. if $ARGS[0] = 'cuni':
  212. gs 'willpower', 'calc'
  213. cuni_check = (stat['cuni'] + stat['cuni_give']) / 2
  214. if $ARGS[1] = 'self':
  215. if cuni_check <= 90:
  216. will_cost = (100 - cuni_check + will_calc)/10
  217. else
  218. will_cost = (10 + will_calc)/10
  219. end
  220. elseif $ARGS[1] = 'force':
  221. if cuni_check <= 40:
  222. will_cost = (110 - will_enforced - cuni_check + will_calc)/10
  223. else
  224. will_cost = (70 - will_enforced + will_calc)/10
  225. end
  226. else
  227. if cuni_check <= 90:
  228. will_cost = (10 + cuni_check + will_calc)/10
  229. else
  230. will_cost = (100 + will_calc)/10
  231. end
  232. end
  233. killvar 'cuni_check'
  234. end
  235. if $ARGS[0] = 'sex' or $ARGS[0] = 'vaginal':
  236. gs 'willpower', 'calc'
  237. if $ARGS[1] = 'self':
  238. if missCum >= timeTresh: will_calc = 0
  239. if stat['vaginal'] <= 90:
  240. will_cost = (100 - stat['vaginal'] + will_calc)/10
  241. else
  242. will_cost = (10 + will_calc)/10
  243. end
  244. elseif $ARGS[1] = 'force':
  245. if stat['vaginal'] <= 40:
  246. will_cost = (110 - will_enforced - stat['vaginal'] + will_calc)/10
  247. else
  248. will_cost = (70 - will_enforced + will_calc)/10
  249. end
  250. else
  251. if missCum >= timeTresh: will_calc += 100
  252. if stat['vaginal'] <= 90:
  253. will_cost = (10 + stat['vaginal'] + will_calc)/10
  254. else
  255. will_cost = (100 + will_calc)/10
  256. end
  257. end
  258. end
  259. if $ARGS[0] = 'anal':
  260. gs 'willpower', 'calc'
  261. if $ARGS[1] = 'self':
  262. if missCum >= timeTresh: will_calc = 0
  263. if stat['anal'] <= 90:
  264. will_cost = (100 - stat['anal'] + will_calc)/10
  265. else
  266. will_cost = (10 + will_calc)/10
  267. end
  268. elseif $ARGS[1] = 'force':
  269. if stat['anal'] <= 40:
  270. will_cost = (160 - will_enforced * 2 - stat['anal'] + will_calc)/10
  271. else
  272. will_cost = (120 - will_enforced * 2 + will_calc)/10
  273. end
  274. else
  275. if missCum >= timeTresh: will_calc += 100
  276. if stat['anal'] <= 90:
  277. will_cost = (10 + stat['anal'] + will_calc)/10
  278. else
  279. will_cost = (100 + will_calc)/10
  280. end
  281. end
  282. end
  283. if $ARGS[0] = 'gangbang' or $ARGS[0] = 'group':
  284. gs 'willpower', 'calc'
  285. if $ARGS[1] = 'self':
  286. if missCum >= timeTresh: will_calc = 0
  287. if gang <= 90:
  288. will_cost = (100 - gang + will_calc)/10
  289. else
  290. will_cost = (10 + will_calc)/10
  291. end
  292. elseif $ARGS[1] = 'force':
  293. if gang <= 40:
  294. will_cost = (160 - will_enforced * 2 - gang + will_calc)/10
  295. else
  296. will_cost = (120 - will_enforced * 2 + will_calc)/10
  297. end
  298. else
  299. if missCum >= timeTresh: will_calc += 100
  300. if gang <= 90:
  301. will_cost = (10 + gang + will_calc)/10
  302. else
  303. will_cost = (100 + will_calc)/10
  304. end
  305. end
  306. end
  307. if $ARGS[0] = 'prostitution':
  308. gs 'willpower', 'calc'
  309. if $ARGS[1] = 'self':
  310. if missCum >= timeTresh: will_calc = 0
  311. if slutty <= 90:
  312. will_cost = (100 - slutty + will_calc)/10
  313. else
  314. will_cost = (10 + will_calc)/10
  315. end
  316. elseif $ARGS[1] = 'force':
  317. if slutty <= 40:
  318. will_cost = (160 - will_enforced * 2 - slutty + will_calc)/10
  319. else
  320. will_cost = (120 - will_enforced * 2 + will_calc)/10
  321. end
  322. else
  323. if missCum >= timeTresh: will_calc += 100
  324. prost_will = pav_prostitute + city_prostitute + oldtown_prostitute + village_prostitute + slutty/2
  325. if prost_will <= 90:
  326. will_cost = (10 + prost_will + will_calc)/10
  327. else
  328. will_cost = (100 + will_calc)/10
  329. end
  330. killvar 'prost_will'
  331. end
  332. end
  333. if $ARGS[0] = 'humiliation':
  334. gs 'willpower', 'calc'
  335. if $ARGS[1] = 'self':
  336. if missCum >= timeTresh: will_calc = 0
  337. if stat['humiliation'] <= 90:
  338. will_cost = (100 - stat['humiliation'] + will_calc)/10
  339. else
  340. will_cost = (10 + will_calc)/10
  341. end
  342. elseif $ARGS[1] = 'force':
  343. will_cost = (120 - will_enforced * 2 + will_calc)/10
  344. else
  345. if missCum >= timeTresh: will_calc += 100
  346. if stat['humiliation'] <= 90:
  347. will_cost = (10 + stat['humiliation'] + will_calc)/10
  348. else
  349. will_cost = (100 + will_calc)/10
  350. end
  351. end
  352. end
  353. if $ARGS[0] = 'footjob':
  354. gs 'willpower', 'calc'
  355. if $ARGS[1] = 'self':
  356. if stat['footjob'] <= 90:
  357. will_cost = (100 - stat['footjob'] + will_calc)/10
  358. else
  359. will_cost = (10 + will_calc)/10
  360. end
  361. elseif $ARGS[1] = 'force':
  362. if stat['footjob'] <= 40:
  363. will_cost = (110 - will_enforced - stat['footjob'] + will_calc)/10
  364. else
  365. will_cost = (70 - will_enforced + will_calc)/10
  366. end
  367. else
  368. if stat['footjob'] <= 90:
  369. will_cost = (10 + stat['footjob'] + will_calc)/10
  370. else
  371. will_cost = (100 + will_calc)/10
  372. end
  373. end
  374. end
  375. if $ARGS[0] = 'titjob':
  376. gs 'willpower', 'calc'
  377. if $ARGS[1] = 'self':
  378. if stat['titjob'] <= 90:
  379. will_cost = (100 - stat['titjob'] + will_calc)/10
  380. else
  381. will_cost = (10 + will_calc)/10
  382. end
  383. elseif $ARGS[1] = 'force':
  384. if stat['titjob'] <= 40:
  385. will_cost = (110 - will_enforced - stat['titjob'] + will_calc)/10
  386. else
  387. will_cost = (70 - will_enforced + will_calc)/10
  388. end
  389. else
  390. if stat['titjob'] <= 90:
  391. will_cost = (10 + stat['titjob'] + will_calc)/10
  392. else
  393. will_cost = (100 + will_calc)/10
  394. end
  395. end
  396. end
  397. if $ARGS[0] = 'trib':
  398. gs 'willpower', 'calc'
  399. if $ARGS[1] = 'self':
  400. if stat['trib'] <= 90:
  401. will_cost = (100 - stat['trib'] + will_calc)/10
  402. else
  403. will_cost = (10 + will_calc)/10
  404. end
  405. elseif $ARGS[1] = 'force':
  406. if stat['trib'] <= 40:
  407. will_cost = (110 - will_enforced - stat['trib'] + will_calc)/10
  408. else
  409. will_cost = (70 - will_enforced + will_calc)/10
  410. end
  411. else
  412. if stat['trib'] <= 90:
  413. will_cost = (10 + stat['trib'] + will_calc)/10
  414. else
  415. will_cost = (100 + will_calc)/10
  416. end
  417. end
  418. end
  419. if $ARGS[0] = 'rimming':
  420. gs 'willpower', 'calc'
  421. rimming_check = (stat['rimming'] + stat['rimming_give']) / 2
  422. if $ARGS[1] = 'self':
  423. if rimming_check <= 90:
  424. will_cost = (100 - rimming_check + will_calc)/10
  425. else
  426. will_cost = (10 + will_calc)/10
  427. end
  428. elseif $ARGS[1] = 'force':
  429. if rimming_check <= 40:
  430. will_cost = (110 - will_enforced - rimming_check + will_calc)/10
  431. else
  432. will_cost = (70 - will_enforced + will_calc)/10
  433. end
  434. else
  435. if rimming_check <= 90:
  436. will_cost = (10 + rimming_check + will_calc)/10
  437. else
  438. will_cost = (100 + will_calc)/10
  439. end
  440. end
  441. end
  442. if $ARGS[0] = 'BDSM':
  443. gs 'willpower', 'calc'
  444. ! It seems to me like 'force' should strictly be BDSM_give, and resist strictly BDSM.
  445. !bdsm_check = (stat['BDSM'] + stat['BDSM_give']) / 2
  446. ! Also, this category could benifit from sum, dom, maso, bound inclusion in some way
  447. !bdsm_exp = (maso['exp'] + bound['exp'] + sub['exp'] + maso['exp'])/4
  448. if $ARGS[1] = 'self':
  449. if (stat['BDSM'] + stat['BDSM_give']) / 2 <= 90:
  450. will_cost = (100 - ((stat['BDSM'] + stat['BDSM_give']) / 2) + will_calc)/10
  451. else
  452. will_cost = (10 + will_calc)/10
  453. end
  454. elseif $ARGS[1] = 'force':
  455. if stat['BDSM_give'] <= 40:
  456. will_cost = (160 - will_enforced - stat['BDSM_give'] + will_calc)/10
  457. else
  458. will_cost = (120 - will_enforced + will_calc)/10
  459. end
  460. else
  461. if stat['BDSM'] <= 90:
  462. will_cost = (10 + stat['BDSM'] + will_calc)/10
  463. else
  464. will_cost = (100 + will_calc)/10
  465. end
  466. end
  467. end
  468. ! For things like facials and other non-internal cum-receiving
  469. if $ARGS[0] = 'cum_outside':
  470. gs 'willpower', 'calc'
  471. ! I''m including internal stats, since it makes sense those would influence Sveta''s willingness to being cum on
  472. cum_check = facial + frot + (swallow) + (pcs_cp_safe_known + pcs_cp_notsafe_known + pcs_cp_risky_known) + (pcs_acp_known)
  473. if $ARGS[1] = 'self':
  474. if missCum >= timeTresh: will_calc = 0
  475. if cumloc[1] + cumloc[2] + cumloc[4] + cumloc[5] + cumloc[6] + cumloc[7] + cumloc[8] + cumloc[9] + cumloc[10] + cumloc[11] + cumloc[13] + cumloc[14] + cumloc[15] + cumloc[16] > 0 or cum_check > 90:
  476. will_cost = (10 + cum_check + will_calc)/10
  477. else
  478. will_cost = (100 + will_calc)/10
  479. end
  480. elseif $ARGS[1] = 'force':
  481. will_cost = (120 - will_enforced * 2 + will_calc)/10
  482. else
  483. if missCum >= timeTresh: will_calc += 100
  484. if cumloc[1] + cumloc[2] + cumloc[4] + cumloc[5] + cumloc[6] + cumloc[7] + cumloc[8] + cumloc[9] + cumloc[10] + cumloc[11] + cumloc[13] + cumloc[14] + cumloc[15] + cumloc[16] > 0 or cum_check > 90:
  485. will_cost = (100 + will_calc)/10
  486. else
  487. will_cost = (10 + cum_check + will_calc)/10
  488. end
  489. end
  490. end
  491. if $ARGS[0] = 'swallow':
  492. gs 'willpower', 'calc'
  493. if $ARGS[1] = 'self':
  494. if missCum >= timeTresh: will_calc = 0
  495. if trt_cumeater = 1 or cumloc[12] > 0:
  496. will_cost = (10 + will_calc)/10
  497. else
  498. will_cost = (100 + will_calc)/10
  499. end
  500. elseif $ARGS[1] = 'force':
  501. will_cost = (80 - will_enforced - trt_cumeater * 10 + will_calc)/10
  502. else
  503. if missCum >= timeTresh: will_calc += 100
  504. if trt_cumeater = 1 or cumloc[12] > 0:
  505. will_cost = (100 + will_calc)/10
  506. else
  507. will_cost = (10 + will_calc)/10
  508. end
  509. end
  510. end
  511. if $ARGS[0] = 'cum_inside':
  512. gs 'willpower', 'calc'
  513. creampie_count = pcs_cp_safe_known + pcs_cp_notsafe_known + pcs_cp_risky_known
  514. if $ARGS[1] = 'self':
  515. if missCum >= timeTresh: will_calc = 0
  516. if cumloc[0] > 0 or creampie_count > 90:
  517. will_cost = (10 + creampie_count + will_calc)/10
  518. else
  519. will_cost = (100 + will_calc)/10
  520. end
  521. elseif $ARGS[1] = 'force':
  522. will_cost = (120 - will_enforced * 2 + will_calc)/10
  523. else
  524. if missCum >= timeTresh: will_calc += 100
  525. if cumloc[0] > 0 or creampie_count > 90:
  526. will_cost = (100 + will_calc)/10
  527. else
  528. will_cost = (10 + creampie_count + will_calc)/10
  529. end
  530. end
  531. end
  532. if $ARGS[0] = 'cum_inside_anal':
  533. gs 'willpower', 'calc'
  534. if $ARGS[1] = 'self':
  535. if missCum >= timeTresh: will_calc = 0
  536. if cumloc[3] > 0 or pcs_acp_known > 90:
  537. will_cost = (10 + pcs_acp_known + will_calc)/10
  538. else
  539. will_cost = (100 + will_calc)/10
  540. end
  541. elseif $ARGS[1] = 'force':
  542. will_cost = (120 - will_enforced * 2 + will_calc)/10
  543. else
  544. if missCum >= timeTresh: will_calc += 100
  545. if cumloc[3] > 0 or pcs_acp_known > 90:
  546. will_cost = (100 + will_calc)/10
  547. else
  548. will_cost = (10 + pcs_acp_known + will_calc)/10
  549. end
  550. end
  551. end
  552. if $ARGS[0] = 'kiss':
  553. gs 'willpower', 'calc'
  554. if $ARGS[1] = 'self':
  555. if stat['kiss'] <= 90:
  556. will_cost = (100 - stat['kiss'] + will_calc)/10
  557. else
  558. will_cost = (10 + will_calc)/10
  559. end
  560. elseif $ARGS[1] = 'force':
  561. if stat['kiss'] <= 40:
  562. will_cost = (110 - will_enforced - stat['kiss'] + will_calc)/10
  563. else
  564. will_cost = (70 - will_enforced + will_calc)/10
  565. end
  566. else
  567. if stat['kiss'] <= 90:
  568. will_cost = (10 + stat['kiss'] + will_calc)/10
  569. else
  570. will_cost = (100 + will_calc)/10
  571. end
  572. end
  573. end
  574. ! Something for sex stuff that''s not covered by other caregories. Like touching, fondling, etc.
  575. if $ARGS[0] = 'foreplay':
  576. gs 'willpower', 'calc'
  577. ! Attempt at giving relevant things different weight. Throw away if it seems wrong
  578. foreplay_check = ((stat['hj'] + stat['bj'])/2 + stat['vaginal'] + stat['anal'] + (stat['cuni'] + stat['trib'] + stat['massage'] + stat['massage_give'])/4)/4
  579. if $ARGS[1] = 'self':
  580. if (stat['foreplay'] + stat['foreplay_give']) / 2 <= 90:
  581. will_cost = (100 - ((stat['foreplay'] + stat['foreplay_give']) / 2) + will_calc)/10
  582. else
  583. will_cost = (10 + will_calc)/10
  584. end
  585. elseif $ARGS[1] = 'force':
  586. if stat['foreplay_give'] <= 40:
  587. will_cost = (160 - will_enforced - stat['foreplay_give'] + will_calc)/10
  588. else
  589. will_cost = (70 - will_enforced + will_calc)/10
  590. end
  591. else
  592. if stat['foreplay'] <= 90:
  593. will_cost = (10 + stat['foreplay'] + will_calc)/10
  594. else
  595. will_cost = (100 + will_calc)/10
  596. end
  597. end
  598. end
  599. if $ARGS[0] = 'pee':
  600. gs 'willpower', 'calc'
  601. ! Same as with BDSM concerning 'force' and 'resist'
  602. !pee_check = (stat['pee'] + stat['pee_give']) / 2
  603. if $ARGS[1] = 'self':
  604. if (stat['pee'] + stat['pee_give']) / 2 <= 90:
  605. will_cost = (100 - ((stat['pee'] + stat['pee_give']) / 2) + will_calc)/10
  606. else
  607. will_cost = (10 + will_calc)/10
  608. end
  609. elseif $ARGS[1] = 'force':
  610. if stat['pee_give'] <= 40:
  611. will_cost = (160 - will_enforced - stat['pee_give'] + will_calc)/10
  612. else
  613. will_cost = (120 - will_enforced + will_calc)/10
  614. end
  615. else
  616. if stat['pee'] <= 90:
  617. will_cost = (10 + stat['pee'] + will_calc)/10
  618. else
  619. will_cost = (100 + will_calc)/10
  620. end
  621. end
  622. end
  623. !! requires the skill to be named with the _lvl postfix
  624. if $ARGS[0] = 'skill':
  625. gs 'willpower', 'calc'
  626. if $ARGS[1] = 'resist' or $ARGS[1] = 'force' or $ARGS[1] = 'self':
  627. if $ARGS[2] = 'inhib_lvl':
  628. will_cost = (pcs_inhib + will_calc)/10
  629. else
  630. dynamic 'will_cost = (100 - <<$ARGS[2]>> + will_calc)/10'
  631. end
  632. else
  633. if $ARGS[1] = 'inhib_lvl':
  634. will_cost = (pcs_inhib + will_calc)/10
  635. else
  636. dynamic 'will_cost = (100 - <<$ARGS[1]>> + will_calc)/10'
  637. end
  638. end
  639. end
  640. if $ARGS[0] = 'rape':
  641. gs 'willpower', 'calc'
  642. if $ARGS[1] = 'self':
  643. if missCum >= timeTresh: will_calc = 0
  644. will_cost = (100 + will_calc)/10
  645. elseif $ARGS[1] = 'force':
  646. will_cost = (200 - will_enforced * 2 + will_calc)/10
  647. else
  648. if missCum >= timeTresh: will_calc += 100
  649. if rape = 0:
  650. will_cost = (10 + will_calc)/10
  651. else
  652. will_cost = (100 + rape + will_calc)/10
  653. end
  654. end
  655. end
  656. if $ARGS[0] = 'drink':
  657. gs 'willpower', 'calc'
  658. if $ARGS[1] = 'self':
  659. will_cost = (60 - alcohol_exp * 40 + will_calc)/10
  660. elseif $ARGS[1] = 'force':
  661. will_cost = (100 - will_enforced - alcohol_exp * 30 + will_calc)/10
  662. else
  663. if alko > 10:
  664. will_cost = (20 + alcohol_exp * 10 + will_calc)/10
  665. elseif alko > 6:
  666. will_cost = (80 + alcohol_exp * 40 + will_calc)/10
  667. elseif alko > 3:
  668. will_cost = (60 + alcohol_exp * 30 + will_calc)/10
  669. else
  670. will_cost = (10 + alcohol_exp * 20 + will_calc)/10
  671. end
  672. end
  673. end
  674. !!Drug needs already included in the will_calc so just a small base cost here
  675. if $ARGS[0] = 'drugs':
  676. gs 'willpower', 'calc'
  677. if $ARGS[1] = 'self':
  678. will_cost = (100 - addictive_trait_lvl * 30 + will_calc)/10
  679. elseif $ARGS[1] = 'force':
  680. will_cost = (100 - will_enforced - addictive_trait_lvl * 10 + will_calc)/10
  681. else
  682. if addictive_trait_lvl > 0:
  683. will_cost = (addictive_trait_lvl * 30 + will_calc)/10
  684. else
  685. will_cost = (10 + will_calc)/10
  686. end
  687. end
  688. end
  689. if $ARGS[0] = 'crime':
  690. gs 'willpower', 'calc'
  691. if $ARGS[0] = 'force':
  692. will_cost = (80 - will_enforced + will_calc)/10
  693. else
  694. will_cost = (60 + will_calc)/10
  695. end
  696. end
  697. if $ARGS[0] = 'exhib':
  698. gs 'willpower', 'calc'
  699. if $ARGS[1] = 'self':
  700. will_cost = (100 - Exhibitionist_lvl * 20 - pcs_inhib/5 + will_calc)/10
  701. elseif $ARGS[1] = 'force':
  702. will_cost = (100 - will_enforced - Exhibitionist_lvl * 10 + will_calc)/10
  703. else
  704. will_cost = (Exhibitionist_lvl * 25 + pcs_inhib/4 + will_calc)/10
  705. end
  706. end
  707. !!this is to force you to stay wake so will cost nothing if you have more than 5 sleep, it has no base cost as there will always be a sleep cost in calc
  708. if $ARGS[0] = 'sleep':
  709. gs 'willpower', 'calc'
  710. will_cost = 0
  711. if pcs_sleep <= 5: will_cost = will_calc/10
  712. end
  713. !!Choose this if nothing else fits
  714. if $ARGS[0] = 'misc':
  715. gs 'willpower', 'calc'
  716. if $ARGS[1] = 'force':
  717. if $ARGS[2] = 'easy':
  718. will_cost = (60 - will_enforced + will_calc)/10
  719. elseif $ARGS[2] = 'hard':
  720. will_cost = (90 - will_enforced + will_calc)/10
  721. else
  722. will_cost = (70 - will_enforced + will_calc)/10
  723. end
  724. else
  725. if $ARGS[2] = 'easy':
  726. will_cost = (10 + will_calc)/10
  727. elseif $ARGS[2] = 'hard':
  728. will_cost = (40 + will_calc)/10
  729. else
  730. will_cost = (20 + will_calc)/10
  731. end
  732. end
  733. end
  734. !!modifiers for drink an drugs
  735. if $ARGS[0] = 'dnd':
  736. will_dnd = 0
  737. if alko > 10:
  738. will_dnd += 80
  739. elseif alko > 6:
  740. will_dnd += 40
  741. elseif alko > 3:
  742. will_dnd += 20
  743. end
  744. !!cigarettes
  745. if smokerNeed > 10: will_dnd += 10
  746. !!weed
  747. if jointhigh > 0: will_dnd -= 10
  748. !!amphetamines
  749. if amphWithdrawl > 2:
  750. will_dnd += 40
  751. elseif amphHigh > 0:
  752. will_dnd += 60
  753. end
  754. !!heroine
  755. if SLomka > 0:
  756. will_dnd += 80
  757. elseif StrongNarkota > 0:
  758. will_dnd += 50
  759. end
  760. !!cocaine
  761. if narkoman = 1:
  762. will_dnd += 40
  763. elseif nark < 0:
  764. will_dnd -= 20
  765. end
  766. end
  767. if $ARGS[0] ! 'pay' and $ARGS[0] ! 'misc' and $ARGS[2] ! '':
  768. if $ARGS[2] = 'easy':
  769. will_cost = will_cost * 2/3
  770. elseif $ARGS[2] = 'hard':
  771. will_cost = will_cost * 3/2
  772. end
  773. elseif $ARGS[0] = 'pay':
  774. if will_cost < 1: will_cost = 1
  775. pcs_willpwr -= will_cost
  776. if $ARGS[1] = 'force':
  777. will_counter += 1
  778. if will_counter >= 5: will_counter = 0 & willpowermax += 1
  779. if will_enforced < 50: will_enforced += 1
  780. end
  781. end
  782. --- willpower ---------------------------------