pcs_has_attr.qsrc 15 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820
  1. # pcs_has_attr
  2. !! Preferences:
  3. !!
  4. !! body:
  5. !! ass:
  6. !! body_ass_flat
  7. !! body_ass_average
  8. !! body_ass_big
  9. !! body_ass_heart
  10. !! body_ass_bubble
  11. !! bmi:
  12. !! body_bmi_starving
  13. !! body_bmi_underweight
  14. !! body_bmi_normal
  15. !! body_bmi_overweight
  16. !! body_bmi_obese
  17. !! eyes:
  18. !! body_eyes_brown
  19. !! body_eyes_grey
  20. !! body_eyes_green
  21. !! body_eyes_blue
  22. !! lips:
  23. !! body_lips_thin
  24. !! body_lips_normal
  25. !! body_lips_plump
  26. !! body_lips_big
  27. !! body_lips_pillowy
  28. !! skin:
  29. !! body_skin_bad
  30. !! body_skin_normal
  31. !! body_skin_good
  32. !! strength:
  33. !! body_strength_weak
  34. !! body_strenght_normal
  35. !! body_strenght_athletic
  36. !! body_strenght_strong
  37. !! body_strenght_manly
  38. !! sweat:
  39. !! body_sweat_none
  40. !! body_sweat_sweaty
  41. !! body_sweat_stinky
  42. !! tits:
  43. !! body_tits_small
  44. !! body_tits_average
  45. !! body_tits_big
  46. !! body_tits_huge
  47. !! body_fit
  48. !! body_pregnant
  49. !! body_tan
  50. !! body_tan_not
  51. !!
  52. !! clothes:
  53. !! exposed:
  54. !! clothes_exposed_ass
  55. !! clothes_exposed_bra
  56. !! clothes_exposed_panties
  57. !! clothes_exposed_pussy
  58. !! clothes_exposed_tits
  59. !! skirt:
  60. !! clothes_skirt_long
  61. !! clothes_skirt_normal
  62. !! clothes_skirt_short
  63. !! style:
  64. !! clothes_style_bimbo
  65. !! clothes_style_goth
  66. !! clothes_style_punk
  67. !! clothes_thin
  68. !!
  69. !! cosmetics:
  70. !! cosmetics_deodorant
  71. !! cosmetics_makeup
  72. !! cosmetics_piercing
  73. !! cosmetics_tattoo
  74. !!
  75. !! cum:
  76. !! cum_clothes
  77. !! cum_face
  78. !!
  79. !! hair:
  80. !! color:
  81. !! hair_color_black
  82. !! hair_color_brown
  83. !! hair_color_red
  84. !! hair_color_blonde
  85. !! hair_color_dyed
  86. !! length:
  87. !! hair_length_veryshort
  88. !! hair_length_short
  89. !! hair_length_chin
  90. !! hair_length_shoulder
  91. !! hair_length_bra
  92. !! hair_length_long
  93. !! pubes:
  94. !! hair_pubes_shaven
  95. !! hair_pubes_grown
  96. !! hair_pubes_styled
  97. !! hair_leg
  98. !! hair_leg_not
  99. !! hair_curly
  100. !! hair_straight
  101. !! How to use.
  102. !!
  103. !! func('pcs_has_attr', 'clothes_style_bimbo')
  104. !! func('pcs_has_attr', 'cosmetics_tattoo')
  105. !!
  106. !!------------------------!!
  107. !! !!
  108. !! Temporary !!
  109. !! !!
  110. !! To be Checked !!
  111. !! !!
  112. !!------------------------!!
  113. !! body_
  114. !! ass_bubble
  115. !! ass_big
  116. !! ass_average
  117. !! ass_flat
  118. !! tits_big
  119. !! tits_average
  120. !! tits_small
  121. !! hair_length_long
  122. !! $npc_reaction_choice[] = 'NAME' adds 'NAME' to the end of the list.
  123. !!-------------------------------------------------------------------!!
  124. !! !!
  125. !! LOGIC !!
  126. !! !!
  127. !!-------------------------------------------------------------------!!
  128. !! How to use: func('pcs_has_attr', 'AND', $ARGS[1], $ARGS[2], ...)
  129. !! func('pcs_has_attr', 'AND', 'body_tits_average', 'body_bmi_normal', 'hair_color_black')
  130. if $ARGS[0] = 'AND':
  131. pha_AND_maxi = arrsize('ARGS')
  132. if pha_AND_maxi = 1:
  133. result = 0
  134. jump 'pha_AND_killvar'
  135. end
  136. pha_AND_i = 1
  137. :pha_AND_loop
  138. if func('pcs_has_attr', $ARGS[pha_AND_i]) = 0:
  139. result = 0
  140. jump 'pha_AND_killvar'
  141. end
  142. pha_AND_i += 1
  143. if pha_AND_i < pha_AND_maxi: jump 'pha_AND_loop'
  144. result = 1
  145. :pha_AND_killvar
  146. killvar 'pha_AND_maxi'
  147. killvar 'pha_AND_i'
  148. elseif $ARGS[0] = 'OR':
  149. pha_OR_maxi = arrsize('ARGS')
  150. if pha_OR_maxi = 1:
  151. result = 0
  152. jump 'pha_OR_killvar'
  153. end
  154. pha_OR_i = 1
  155. :pha_OR_loop
  156. if func('pcs_has_attr', $ARGS[pha_OR_i]) = 1:
  157. result = 1
  158. jump 'pha_OR_killvar'
  159. end
  160. pha_OR_i += 1
  161. if pha_OR_i < pha_OR_maxi: jump 'pha_OR_loop'
  162. result = 0
  163. :pha_OR_killvar
  164. killvar 'pha_OR_maxi'
  165. killvar 'pha_OR_i'
  166. end
  167. !!-------------------------------------------------------------------!!
  168. !! !!
  169. !! Body !!
  170. !! !!
  171. !!-------------------------------------------------------------------!!
  172. !!To be checked
  173. if $ARGS[0] = 'body_ass_flat':
  174. !! flat butt
  175. if pcs_butt <= 14:
  176. result = 1
  177. else
  178. result = 0
  179. end
  180. elseif $ARGS[0] = 'body_ass_average':
  181. !! average feminine butt
  182. if pcs_butt >= 15 and pcs_butt <= 25:
  183. result = 1
  184. else
  185. result = 0
  186. end
  187. elseif $ARGS[0] = 'body_ass_big':
  188. !! Big round butt
  189. if pcs_butt >= 26 and pcs_butt <= 40:
  190. result = 1
  191. else
  192. result = 0
  193. end
  194. elseif $ARGS[0] = 'body_ass_heart':
  195. !! Heart-shaped butt
  196. if pcs_butt >= 41 and pcs_butt <= 59:
  197. result = 1
  198. else
  199. result = 0
  200. end
  201. elseif $ARGS[0] = 'body_ass_bubble':
  202. !! Bubble butt
  203. if pcs_butt >= 60:
  204. result = 1
  205. else
  206. result = 0
  207. end
  208. end
  209. !! To be checked
  210. if $ARGS[0] = 'body_bmi_starving':
  211. if pcs_bmi <= 15:
  212. result = 1
  213. else
  214. result = 0
  215. end
  216. elseif $ARGS[0] = 'body_bmi_underweight':
  217. if pcs_bmi >= 16 and pcs_bmi <= 18:
  218. result = 1
  219. else
  220. result = 0
  221. end
  222. elseif $ARGS[0] = 'body_bmi_normal':
  223. if pcs_bmi >= 19 and pcs_bmi <= 24:
  224. result = 1
  225. else
  226. result = 0
  227. end
  228. elseif $ARGS[0] = 'body_bmi_overweight':
  229. if pcs_bmi >= 25 and pcs_bmi <= 29:
  230. result = 1
  231. else
  232. result = 0
  233. end
  234. elseif $ARGS[0] = 'body_bmi_obese':
  235. if pcs_bmi >= 30:
  236. result = 1
  237. else
  238. result = 0
  239. end
  240. end
  241. !!To be checked
  242. if $ARGS[0] = 'body_eyes_brown':
  243. if pcs_eyecol = 0:
  244. result = 1
  245. else
  246. result = 0
  247. end
  248. elseif $ARGS[0] = 'body_eyes_grey':
  249. if pcs_eyecol = 1:
  250. result = 1
  251. else
  252. result = 0
  253. end
  254. elseif $ARGS[0] = 'body_eyes_green':
  255. if pcs_eyecol = 2:
  256. result = 1
  257. else
  258. result = 0
  259. end
  260. elseif $ARGS[0] = 'body_eyes_blue':
  261. if pcs_eyecol = 3:
  262. result = 1
  263. else
  264. result = 0
  265. end
  266. end
  267. !!To be checked
  268. if $ARGS[0] = 'body_lips_thin':
  269. if pcs_lips <= 0:
  270. result = 1
  271. else
  272. result = 0
  273. end
  274. elseif $ARGS[0] = 'body_lips_normal':
  275. if pcs_lips = 1:
  276. result = 1
  277. else
  278. result = 0
  279. end
  280. elseif $ARGS[0] = 'body_lips_plump':
  281. if pcs_lips = 2:
  282. result = 1
  283. else
  284. result = 0
  285. end
  286. elseif $ARGS[0] = 'body_lips_big':
  287. if pcs_lips = 3:
  288. result = 1
  289. else
  290. result = 0
  291. end
  292. elseif $ARGS[0] = 'body_lips_pillowy':
  293. if pcs_lips >= 4:
  294. result = 1
  295. else
  296. result = 0
  297. end
  298. end
  299. !!To be checked
  300. if $ARGS[0] = 'body_skin_bad':
  301. if pcs_skin <= 399:
  302. result = 1
  303. else
  304. result = 0
  305. end
  306. elseif $ARGS[0] = 'body_skin_normal':
  307. if pcs_skin >= 400 and pcs_skin <= 599:
  308. result = 1
  309. else
  310. result = 0
  311. end
  312. elseif $ARGS[0] = 'body_skin_good':
  313. if pcs_skin >= 600:
  314. result = 1
  315. else
  316. result = 0
  317. end
  318. end
  319. if $ARGS[0] = 'body_strength_weak':
  320. if stren_plus_lvl <= 0 and strenbuf <= 20:
  321. result = 1
  322. else
  323. result = 0
  324. end
  325. elseif $ARGS[0] = 'body_strength_normal':
  326. if stren_plus_lvl <= 0 and strenbuf >= 21 and strenbuf <= 60:
  327. result = 1
  328. else
  329. result = 0
  330. end
  331. elseif $ARGS[0] = 'body_strength_athletic':
  332. if stren_plus_lvl <= 0 and strenbuf >= 61 and strenbuf <= 100:
  333. result = 1
  334. else
  335. result = 0
  336. end
  337. elseif $ARGS[0] = 'body_strength_strong':
  338. if stren_plus_lvl > 0 and strenbuf >= 100 and strenbuf <= 150:
  339. result = 1
  340. else
  341. result = 0
  342. end
  343. elseif $ARGS[0] = 'body_strength_manly':
  344. if stren_plus_lvl > 0 and strenbuf >= 151:
  345. result = 1
  346. else
  347. result = 0
  348. end
  349. end
  350. !!To be checked
  351. if $ARGS[0] = 'body_sweat_none':
  352. if pcs_sweat <= 21:
  353. result = 1
  354. else
  355. result = 0
  356. end
  357. elseif $ARGS[0] = 'body_sweat_sweaty':
  358. if pcs_sweat >= 22 and pcs_sweat <= 39:
  359. result = 1
  360. else
  361. result = 0
  362. end
  363. elseif $ARGS[0] = 'body_sweat_stinky':
  364. if pcs_sweat >= 40:
  365. result = 1
  366. else
  367. result = 0
  368. end
  369. end
  370. !!To be checked
  371. if $ARGS[0] = 'body_tits_small':
  372. !! flat to A-cup
  373. if pcs_cupsize <= 10:
  374. result = 1
  375. else
  376. result = 0
  377. end
  378. elseif $ARGS[0] = 'body_tits_average':
  379. !! B- to D-cup
  380. if pcs_cupsize >= 11 and pcs_cupsize <= 25:
  381. result = 1
  382. else
  383. result = 0
  384. end
  385. elseif $ARGS[0] = 'body_tits_big':
  386. !! E- to G-cup
  387. if pcs_cupsize >= 26 and pcs_cupsize <= 40:
  388. result = 1
  389. else
  390. result = 0
  391. end
  392. elseif $ARGS[0] = 'body_tits_huge':
  393. !! H-cup and bigger
  394. if pcs_cupsize >= 41:
  395. result = 1
  396. else
  397. result = 0
  398. end
  399. end
  400. if $ARGS[0] = 'body_fit':
  401. if pcs_bmi >= 19 and pcs_bmi <= 24 and (pcs_vital*2 + pcs_agil + pcs_stren)/4 >= 60:
  402. result = 1
  403. else
  404. result = 0
  405. end
  406. elseif $ARGS[0] = 'body_pregnant':
  407. if func('body_din', 'pregnancyVisibility'):
  408. result = 1
  409. else
  410. result = 0
  411. end
  412. elseif $ARGS[0] = 'body_tan':
  413. if pcs_tan >= 5:
  414. result = 1
  415. else
  416. result = 0
  417. end
  418. elseif $ARGS[0] = 'body_tan_not':
  419. if pcs_tan <= 5:
  420. result = 1
  421. else
  422. result = 0
  423. end
  424. end
  425. !!-------------------------------------------------------------------!!
  426. !! !!
  427. !! Clothes !!
  428. !! !!
  429. !!-------------------------------------------------------------------!!
  430. if $ARGS[0] = 'clothes_exposed_ass':
  431. !! if $pantyworntype = 'none' and ($clothingworntype = 'nude' or PCloThinness >= 5 or PCloPants = 6 or PCloSkirt => 5 or PCloCoverBack >= 1):
  432. if CoverBack >= 1:
  433. result = 1
  434. else
  435. result = 0
  436. end
  437. elseif $ARGS[0] = 'clothes_exposed_bra':
  438. !! if $braworntype ! 'none' and ($clothingworntype = 'nude' or PCloThinness >= 5 or CloTopCut >= 3):
  439. if $braworntype ! 'none' and PBraCover >= 1:
  440. result = 1
  441. else
  442. result = 0
  443. end
  444. elseif $ARGS[0] = 'clothes_exposed_panties':
  445. !! if $pantyworntype ! 'none' and ($clothingworntype = 'nude' or PCloThinness >= 5 or PCloPants = 6 or PCloSkirt => 5):
  446. if $pantyworntype ! 'none' and (PCloCoverBack >= 1 or PCloCoverFront >= 1):
  447. result = 1
  448. else
  449. result = 0
  450. end
  451. elseif $ARGS[0] = 'clothes_exposed_pussy':
  452. !! if $pantyworntype = 'none' and ($clothingworntype = 'nude' or PCloThinness >= 5 or PCloPants = 6 or PCloSkirt => 5 or PCloCoverFront >= 1):
  453. if CoverFront >= 1:
  454. result = 1
  455. else
  456. result = 0
  457. end
  458. elseif $ARGS[0] = 'clothes_exposed_tits':
  459. !! if $braworntype = 'none' and ($clothingworntype = 'nude' or PCloThinness >= 5 or CloTopCut >= 3 or PCloCoverTop >= 1):
  460. if CoverTop >= 1:
  461. result = 1
  462. else
  463. result = 0
  464. end
  465. end
  466. if $ARGS[0] = 'clothes_skirt_long':
  467. if CloSkirtShortness <= 2:
  468. result = 1
  469. else
  470. result = 0
  471. end
  472. elseif $ARGS[0] = 'clothes_skirt_normal':
  473. if CloSkirtShortness >= 3 and CloSkirtShortness <= 4:
  474. result = 1
  475. else
  476. result = 0
  477. end
  478. elseif $ARGS[0] = 'clothes_skirt_short':
  479. if CloSkirtShortness >= 5:
  480. result = 1
  481. else
  482. result = 0
  483. end
  484. elseif $ARGS[0] = 'clothes_style_bimbo':
  485. if bimbo_flag = 1:
  486. result = 1
  487. else
  488. result = 0
  489. end
  490. elseif $ARGS[0] = 'clothes_style_goth':
  491. if goth_flag = 1:
  492. result = 1
  493. else
  494. result = 0
  495. end
  496. elseif $ARGS[0] = 'clothes_style_punk':
  497. if punk_flag = 1:
  498. result = 1
  499. else
  500. result = 0
  501. end
  502. elseif $ARGS[0] = 'clothes_thin':
  503. if CloThinness >= 5:
  504. result = 1
  505. else
  506. result = 0
  507. end
  508. end
  509. !!-------------------------------------------------------------------!!
  510. !! !!
  511. !! Cosmetics !!
  512. !! !!
  513. !!-------------------------------------------------------------------!!
  514. !! To be checked
  515. if $ARGS[0] = 'cosmetics_deodorant':
  516. if deodorant_on ! 0:
  517. result = 1
  518. else
  519. result = 0
  520. end
  521. elseif $ARGS[0] = 'cosmetics_makeup':
  522. if pcs_makeup > 1:
  523. result = 1
  524. else
  525. result = 0
  526. end
  527. elseif $ARGS[0] = 'cosmetics_piercing':
  528. if (pirsA > 0 and pirsA < 10000) or (pirsB > 0 and pirsB < 10000) or (pirsD > 0 and pirsD < 10000) or (pirsE > 0 and pirsE < 10000) or (pirsE > 0 and pirsE < 10000 and (PCloBra > 0 or CloThinness > 5)):
  529. result = 1
  530. else
  531. result = 0
  532. end
  533. elseif $ARGS[0] = 'cosmetics_tattoo':
  534. if tatarm >= 1 or tatlip >= 1 or tatneck >= 1 or tathand >= 1 or tatfce >= 1 or ((tatback >= 1 or tatblly >= 1 or tatside >= 1 or tatlech >= 1 or tatwrist >= 1) and (PCloBra > 0 or CloThinness > 5)) or (tatankle >= 1 and (CloSkirtShortness > 1 or CloPantsShortness > 1)) or (tatleg >= 1 and (CloSkirtShortness > 2 or CloPantsShortness > 2)):
  535. result = 1
  536. else
  537. result = 0
  538. end
  539. end
  540. !!-------------------------------------------------------------------!!
  541. !! !!
  542. !! Cum !!
  543. !! !!
  544. !!-------------------------------------------------------------------!!
  545. if $ARGS[0] = 'cum_face':
  546. if cumloc[11] = 1 or cumloc[16] = 1:
  547. result = 1
  548. else
  549. result = 0
  550. end
  551. elseif $ARGS[0] = 'cum_clothes':
  552. if cumloc[6] = 1 or cumloc[7] = 1:
  553. result = 1
  554. else
  555. result = 0
  556. end
  557. end
  558. !!-------------------------------------------------------------------!!
  559. !! !!
  560. !! Hair !!
  561. !! !!
  562. !!-------------------------------------------------------------------!!
  563. if $ARGS[0] = 'hair_color_black':
  564. if pcs_haircol = 0:
  565. result = 1
  566. else
  567. result = 0
  568. end
  569. elseif $ARGS[0] = 'hair_color_brown':
  570. if pcs_haircol = 1:
  571. result = 1
  572. else
  573. result = 0
  574. end
  575. elseif $ARGS[0] = 'hair_color_red':
  576. if pcs_haircol = 2:
  577. result = 1
  578. else
  579. result = 0
  580. end
  581. elseif $ARGS[0] = 'hair_color_blonde':
  582. if pcs_haircol = 3:
  583. result = 1
  584. else
  585. result = 0
  586. end
  587. elseif $ARGS[0] = 'hair_color_dyed':
  588. if pcs_haircol >= 4:
  589. result = 1
  590. else
  591. result = 0
  592. end
  593. end
  594. if $ARGS[0] = 'hair_length_veryshort':
  595. if pcs_hairlng <= 30:
  596. result = 1
  597. else
  598. result = 0
  599. end
  600. elseif $ARGS[0] = 'hair_length_short':
  601. if pcs_hairlng >= 31 and pcs_hairlng <= 80:
  602. result = 1
  603. else
  604. result = 0
  605. end
  606. elseif $ARGS[0] = 'hair_length_chin':
  607. if pcs_hairlng >= 81 and pcs_hairlng <= 160:
  608. result = 1
  609. else
  610. result = 0
  611. end
  612. elseif $ARGS[0] = 'hair_length_shoulder':
  613. if pcs_hairlng >= 161 and pcs_hairlng <= 260:
  614. result = 1
  615. else
  616. result = 0
  617. end
  618. elseif $ARGS[0] = 'hair_length_bra':
  619. if pcs_hairlng >= 261 and pcs_hairlng <= 400:
  620. result = 1
  621. else
  622. result = 0
  623. end
  624. elseif $ARGS[0] = 'hair_length_long':
  625. if pcs_hairlng >= 401:
  626. result = 1
  627. else
  628. result = 0
  629. end
  630. end
  631. if $ARGS[0] = 'hair_pubes_shaven':
  632. if pcs_pubes <= 10 or lashair = 1:
  633. result = 1
  634. else
  635. result = 0
  636. end
  637. elseif $ARGS[0] = 'hair_pubes_grown':
  638. if pcs_pubes >= 11 and lashair = 0:
  639. result = 1
  640. else
  641. result = 0
  642. end
  643. !! needs to be finished
  644. elseif $ARGS[0] = 'hair_pubes_styled':
  645. result = 0
  646. if pcs_pubes >= 17 and pcs_pubes <= 25 and lashair = 0 and func('pcs_has_attr', 'clothes_exposed_pussy'):
  647. if (pubestyle >= 2 and pubestyle <= 9) or (pubestyle >= 12 and pubestyle <= 14):
  648. result = 1
  649. end
  650. end
  651. end
  652. if $ARGS[0] = 'hair_leg':
  653. if pcs_leghair >= 4:
  654. result = 1
  655. else
  656. result = 0
  657. end
  658. elseif $ARGS[0] = 'hair_leg_not':
  659. if pcs_leghair <= 3:
  660. result = 1
  661. else
  662. result = 0
  663. end
  664. elseif $ARGS[0] = 'hair_curly':
  665. if curly >= 1:
  666. result = 1
  667. else
  668. result = 0
  669. end
  670. elseif $ARGS[0] = 'hair_straight':
  671. if curly <= 0:
  672. result = 1
  673. else
  674. result = 0
  675. end
  676. end
  677. --- pcs_has_attr ---------------------------------