traits.qsrc 16 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344
  1. # traits
  2. if $ARGS[0] = 'menu':
  3. *clr & cla
  4. gs 'obj_din', 'chartabs'
  5. '<center><h1>Traits</h1></center>'
  6. '<center><table cellspacing="0" cellpadding="20" valign="top"><tr>'
  7. '<td>'
  8. '<center><b>Bimbo</b></center>'
  9. if bimbolevel = 0:
  10. 'You do not have this trait.'
  11. 'To gain this trait, you must wear bimbo make up, clothing and shoes on 10 consecutive days.'
  12. 'You have <<bimbo>> out of 10 points towards level 1.'
  13. elseif bimbolevel = 1:
  14. 'You have this trait at level 1.'
  15. 'To maintain this trait, you must wear bimbo make up, clothing and shoes at least once per day.'
  16. 'Due to this trait, you gain a very small bonus to appearance and a very small penalty to intelligence.'
  17. 'You have <<bimbo>> out of 20 points towards level 2.'
  18. if bimbowithdrawal = 0:
  19. 'You are not in withdrawal.'
  20. else
  21. 'You are in withdrawal and have <<14 - bimbowithdrawal>> days before losing this trait.'
  22. end
  23. elseif bimbolevel = 2:
  24. 'You have this trait at level 2.'
  25. 'To maintain this trait, you must wear bimbo make up, clothing and shoes at least once per day.'
  26. 'Due to this trait, you gain a small bonus to appearance and a small penalty to intelligence.'
  27. 'You have <<bimbo>> out of 30 points towards level 3.'
  28. if bimbowithdrawal = 0:
  29. 'You are not in withdrawal.'
  30. else
  31. 'You are in withdrawal and have <<14 - bimbowithdrawal>> days before losing this trait.'
  32. end
  33. else
  34. 'You have this trait at level 3.'
  35. 'To maintain this trait, you must wear bimbo make up, clothing and shoes at least once per day.'
  36. 'Due to this trait, you gain a moderate bonus to appearance and a moderate penalty to intelligence.'
  37. if bimbowithdrawal = 0:
  38. 'You are not in withdrawal.'
  39. else
  40. 'You are in withdrawal and have <<14 - bimbowithdrawal>> days before losing this trait.'
  41. end
  42. end
  43. *nl & '<center><b>Exhibitionist</b></center>'
  44. if Exhibitionist_lvl = 0 and cheatVars['no_trait_exhib'] = 0:
  45. 'You do not have this trait.'
  46. 'To gain this trait, you must have low enough inhibition and choose to expose your breasts in public.'
  47. 'You have <<pcs_exhib>> out of 10 points towards level 1. This will slowly decrease each day unless you expose yourself.'
  48. elseif Exhibitionist_lvl = 1:
  49. 'You have this trait at level 1.'
  50. 'To increase this trait, you must choose to expose your breasts and/or bare bottom in public.'
  51. 'This trait grants you a small amount of excitement from exposing yourself.'
  52. 'You have <<pcs_exhib>> out of 50 points towards level 2.'
  53. elseif Exhibitionist_lvl = 2:
  54. 'You have this trait at level 2.'
  55. 'To increase this trait, you must choose to expose your breasts, bare bottom and/or pussy in public.'
  56. 'This trait grants you a moderate amount of excitement from exposing yourself.'
  57. if pcs_exhib < 100:
  58. 'You have <<pcs_exhib>> out of 100 points towards level 3.'
  59. elseif pcs_exhib >= 100 and exhibitionQW < 3:
  60. 'You must trigger an event in the park to gain level 3.'
  61. elseif pcs_exhib >= 100 and exhibitionQW > 2:
  62. 'You will have to wait until the end of the day for the trait level to update.'
  63. end
  64. else
  65. 'You have this trait at level 3.'
  66. 'This is the highest level of this trait.'
  67. 'This trait grants you a large amount of excitement from exposing yourself.'
  68. end
  69. *nl
  70. if pcs_traits['nerd_status'] = 0:
  71. '<center><b>Likes learning</b></center>'
  72. 'You don''t have this trait but have <<pcs_traits[''nerd_points'']>> points. You need to earn <<40 - pcs_traits[''nerd_points'']>> more points to get level 1 of this trait.'
  73. elseif pcs_traits['nerd_status'] = 1:
  74. '<center><b>Likes learning</b></center>'
  75. 'You have level 1 of this trait and <<pcs_traits[''nerd_points'']>> points. You need to earn <<60 - pcs_traits[''nerd_points'']>> more points to get level 2 of this trait. If you fall below 20 points, you''ll lose this trait.'
  76. elseif pcs_traits['nerd_status'] = 2:
  77. '<center><b>Loves to learn</b></center>'
  78. 'You have level 2 of this trait and <<pcs_traits[''nerd_points'']>> points. You need to earn <<80 - pcs_traits[''nerd_points'']>> more points to get level 3 of this trait. If you fall below 40 points, you''ll fall back to level 1.'
  79. elseif pcs_traits['nerd_status'] = 3:
  80. '<center><b>Teacher''s pet</b></center>'
  81. 'You have level 3 of this trait and <<pcs_traits[''nerd_points'']>> points. If you fall below 60 points, you''ll fall back to level 2.'
  82. end
  83. 'Listening to more than 80% of lessons and doing your homework regularly earns you points for this trait, but you''ll lose points if you listen to less than 60% of lessons or if you don''t do your homework.'
  84. *nl & '<center><b>Addictive Personality</b></center>'
  85. if addictive_trait_lvl = 0 and cheatVars['no_trait_addictive'] = 0:
  86. 'You do not have this trait.'
  87. 'To gain this trait, you have to use 2 different types of drugs several times. At the moment, you have <<addictive_exp>> out of 2 points towards level 1.'
  88. elseif addictive_trait_lvl = 1:
  89. 'You have this trait at level 1.'
  90. 'You have some experience with taking drugs, and it becomes harder for you to refuse to take them.'
  91. 'To increase this trait, you have to use 3 different types of drugs several times. At the moment, you have <<addictive_exp>> out of 3 points towards level 2.'
  92. elseif addictive_trait_lvl = 2:
  93. 'You have this trait at level 2.'
  94. 'Taking drugs has become something normal, and that makes it even harder for you to refuse to take them.'
  95. 'To increase this trait, you have to use 4 different types of drugs several times. At the moment, you have <<addictive_exp>> out of 4 points towards level 3.'
  96. elseif addictive_trait_lvl = 3:
  97. 'You have this trait at level 3.'
  98. 'Taking drugs is a normal part of your life, which makes it difficult for you to refuse to take them.'
  99. 'This is the highest level of this trait.'
  100. end
  101. *nl & '<center><b>Cumeater</b></center>'
  102. if pcs_traits['cumeater'] = 0 and cheatVars['no_trait_cumeater'] = 0:
  103. 'You do not have this trait.'
  104. 'To gain this trait, you must swallow cum 10 times.'
  105. 'You have swallowed cum <<stat[''swallow'']>> times.'
  106. elseif pcs_traits['cumeater'] = 0 and cheatVars['no_trait_cumeater'] = 1:
  107. 'You do not have this trait.'
  108. else
  109. 'You have this trait.'
  110. 'It allows you to remove cum from certain locations and eat it'
  111. 'This trait cannot be lost.'
  112. end
  113. if pcs_traits['commando_exp'] > 0 or pcs_traits['commando_lvl'] > 0: *nl & '<center><b>Commando</b></center>'
  114. if pcs_traits['commando_lvl'] = 0 and pcs_traits['commando_exp'] > 0:
  115. 'You need to gain more experience not wearing panties with clothing to gain this trait.'
  116. elseif pcs_traits['commando_lvl'] = 1:
  117. 'You have this trait at level 1.'
  118. 'You''re starting to get used to not wearing panties. Skirts are quite comfortable without them, but you still find the friction of pants to be a bit irritating.'
  119. elseif pcs_traits['commando_lvl'] = 2:
  120. 'You have this trait at level 2.'
  121. 'You are perfectly comfortable wearing any kind of clothing without panties. Your pussy is no longer irritated when wearing pants without panties.'
  122. elseif pcs_traits['commando_lvl'] = 3:
  123. 'You have this trait at level 3.'
  124. 'You are more comfortable without panties than with them. In fact, you <i>hate</i> wearing them! They''re restrictive and annoying. You suffer mood penalties when wearing panties.'
  125. end
  126. if pcs_traits['alko_status'] = -1:
  127. *nl & '<center><b>Lightweight</b></center>'
  128. 'It doesn''t take much for you to get drunk. You don''t have to drink as much to feel the effects of alcohol.'
  129. elseif pcs_traits['alko_status'] = 1:
  130. *nl & '<center><b>Heavyweight</b></center>'
  131. 'You''ve built up a tolerance, making it harder for you to feel the effects of alcohol.'
  132. end
  133. !!exp earned from anal sex but degrades over time. Level 3 can be lost but lvl1 and 2 cannot
  134. *nl & '<center><b>Buttslut</b></center>'
  135. if pcs_traits['buttslut_lvl'] = 0:
  136. 'You need to have more anal orgasms to gain this trait. To reach lvl 1 you need to have more than 10 anal orgasms.'
  137. 'You currently have had <<orgasm_anal>> anal orgasms.'
  138. elseif pcs_traits['buttslut_lvl'] = 1:
  139. 'You have this trait at level 1. To reach lvl 2 you need to gain more anal orgasm exp.'
  140. 'You currently have <<pcs_traits[''buttslut_exp'']>> experience. Having more anal orgasms will increase this, otherwise it will degrade over time.'
  141. 'You''re starting to enjoy anal sex ' + iif(stat['think_virgin'] = 0, 'almost as much as regular sex.', 'more than before.')
  142. elseif pcs_traits['buttslut_lvl'] = 2:
  143. 'You have this trait at level 2. To reach lvl 3 you need to gain more anal orgasm exp.'
  144. 'You currently have <<pcs_traits[''buttslut_exp'']>> experience. Having more anal orgasms will increase this, otherwise it will degrade over time.'
  145. 'You''re enjoy anal sex ' + iif(stat['think_virgin'] = 0, 'as much as regular sex.', 'a great deal.')
  146. elseif pcs_traits['buttslut_lvl'] = 3:
  147. 'You have this trait at level 3. This is the highest level.'
  148. 'You currently have <<pcs_traits[''buttslut_exp'']>> experience. Having more anal orgasms will increase this, otherwise it will degrade over time.'
  149. if stat['think_virgin'] = 0:
  150. 'You now enjoy anal sex more than regular sex.'
  151. else
  152. 'You find anal sex to be extremely gratifying.'
  153. end
  154. end
  155. if pcs_traits['new_again'] > 0:
  156. *nl & '<center><b>Everything is New Again</b></center>'
  157. 'Being thrust into a new life has forced you to re-evaluate and relearn everything. You pick up new skills more quickly for a short time.'
  158. 'Will last <<pcs_traits[''new_again'']>> more day(s)'
  159. end
  160. act 'Exit the menu': gt $loc, $loc_arg
  161. '</td></tr></table></center>'
  162. end
  163. if $ARGS[0] = 'hourly':
  164. if stat['swallow'] >= 10 and pcs_traits['cumeater'] = 0 and cheatVars['no_trait_cumeater'] = 0:
  165. pcs_traits['cumeater'] = 1
  166. msg 'You have gained the trait "Cumeater"'
  167. end
  168. end
  169. if $ARGS[0] = 'creampie_fetish':
  170. pcs_traits['creampie_fetish'] = 1
  171. msg 'You have gained the Creampie Fetish trait! Your desire for creampies are so strong that you can''t help but orgasm when a big load of spunk is poured into your pussy, whether you asked for it or not ;)'
  172. end
  173. if $ARGS[0] = 'fitness_freak':
  174. pcs_traits['fitness_freak'] = 1
  175. msg '"You don''t know if it''s something you learned or something is just wrong with your brain. You love exercise. It feels good. *Really* good. Yeah. *That* kind of good. You get turned on when you exercise and the people around you can subconsciously sense it.'
  176. 'Exercise increases your arousal and for a short time after, you ignore the appearance penalties of sweat, adding them as a bonus to your appearance instead."'
  177. end
  178. if $ARGS[0] = 'stiff_nipples':
  179. pcs_traits['pokies'] = 1
  180. msg 'You have particularly stiff nipples. They''re always hard, even when you''re not aroused. So hard that they''ll give you pokies through a bra that other girls would get away with without one.'
  181. end
  182. if $ARGS[0] = 'wet_pussy':
  183. pcs_traits['wet_pussy'] = 1
  184. msg 'You get wetter than other girls, especially when aroused.'
  185. end
  186. if $ARGS[0] = 'overnight':
  187. !!pcs_traits['alko_status']: light weight (-1), normal (0), heavy weight (+1)
  188. !!pcs_traits['alko_points']: between -100 and 100, tracks if sveta is a light or heavy wight
  189. !!pcs_traits['alko_day']: amount of alko sveta has drunk today
  190. !!Gains/Decay
  191. if pcs_traits['alko_day'] > 0:
  192. if pcs_traits['alko_day'] > 9:
  193. pcs_traits['alko_points'] += 9
  194. else
  195. pcs_traits['alko_points'] += pcs_traits['alko_day']
  196. end
  197. elseif pcs_traits['alko_day'] = 0:
  198. pcs_traits['alko_points'] -= 2
  199. end
  200. !! The effect of homework on the nerd trait is handle along with the grade calculations in gschool.qsrc
  201. if SchoolAtestat = 0 and kanikuli = 0 and week = 6:
  202. if pcs_traits['nerd_point_gain_start'] = 1:
  203. !!This check has to be changed if the number of non-sport lessons ever changes (27 right now)
  204. if pcs_traits['nerd_lessons'] > 20:
  205. pcs_traits['nerd_points'] += pcs_traits['nerd_lessons'] - 17
  206. elseif pcs_traits['nerd_lessons'] < 14:
  207. pcs_traits['nerd_points'] -= iif(pcs_traits['nerd_status'] > 0, 5, 10)
  208. end
  209. else
  210. !! This is here such that you don''t get the point the first week, since it is only two days long.
  211. pcs_traits['nerd_point_gain_start'] = 1
  212. end
  213. pcs_traits['nerd_lessons'] = 0
  214. elseif university['semester_week'] > 0 and university['student'] = 1 and week = 5:
  215. !!This is for being a university student, with only 9 weekly classes and no homework the gain is a little more aggressive from classes.
  216. if pcs_traits['nerd_lessons'] > 7:
  217. pcs_traits['nerd_points'] += (pcs_traits['nerd_lessons']-7)*5
  218. elseif pcs_traits['nerd_lessons'] < 4:
  219. pcs_traits['nerd_points'] -= iif(pcs_traits['nerd_status'] > 0, 5, 10)
  220. end
  221. pcs_traits['nerd_lessons'] = 0
  222. end
  223. !!Trait selection
  224. if pcs_traits['alko_points'] > 50 and pcs_traits['alko_status'] < 1:
  225. pcs_traits['alko_status'] = 1
  226. msg 'You have gained the trait ''Heavyweight''.'
  227. elseif pcs_traits['alko_points'] < -50 and pcs_traits['alko_status'] > -1:
  228. pcs_traits['alko_status'] = -1
  229. msg 'You have gained the trait ''Lightweight''.'
  230. elseif pcs_traits['alko_status'] = -1 and pcs_traits['alko_points'] > 0:
  231. pcs_traits['alko_status'] = 0
  232. msg 'You have lost the trait ''Lightweight''.'
  233. elseif pcs_traits['alko_status'] = 1 and pcs_traits['alko_points'] < 0:
  234. pcs_traits['alko_status'] = 0
  235. msg 'You have lost the trait ''Heavyweight''.'
  236. end
  237. if pcs_traits['nerd_points'] > 80 and pcs_traits['nerd_status'] < 3:
  238. pcs_traits['nerd_status'] = 3
  239. msg 'You have gained the trait ''Teacher''s pet''.'
  240. elseif pcs_traits['nerd_points'] > 60 and pcs_traits['nerd_status'] < 2:
  241. pcs_traits['nerd_status'] = 2
  242. msg 'You have gained the trait ''Loves to learn''.'
  243. elseif pcs_traits['nerd_points'] > 40 and pcs_traits['nerd_status'] < 1:
  244. pcs_traits['nerd_status'] = 1
  245. msg 'You have gained the trait ''Likes learning''.'
  246. elseif pcs_traits['nerd_points'] < 60 and pcs_traits['nerd_status'] = 3:
  247. pcs_traits['nerd_status'] = 2
  248. msg 'You have lost the trait ''Teacher''s pet''.'
  249. elseif pcs_traits['nerd_points'] < 40 and pcs_traits['nerd_status'] = 2:
  250. pcs_traits['nerd_status'] = 1
  251. msg 'You have lost the trait ''Loves to learn''.'
  252. elseif pcs_traits['nerd_points'] < 20 and pcs_traits['nerd_status'] = 1:
  253. pcs_traits['nerd_status'] = 0
  254. msg 'You have lost the trait ''Likes learning''.'
  255. end
  256. !!Trait effects
  257. if pcs_traits['nerd_status'] = 3:
  258. grupvalue[1] -= 1
  259. grupvalue[3] += rand(1,2)
  260. grupvalue[4] -= rand(1,2)
  261. elseif pcs_traits['nerd_status'] = 2:
  262. grupvalue[3] += 1
  263. grupvalue[4] -= 1
  264. elseif pcs_traits['nerd_status'] = 1:
  265. grupvalue[3] += rand(0,1)
  266. end
  267. !!Cleanup
  268. pcs_traits['alko_day'] = 0
  269. if pcs_traits['alko_points'] > 100:
  270. pcs_traits['alko_points'] = 100
  271. elseif pcs_traits['alko_points'] < -100:
  272. pcs_traits['alko_points'] = -100
  273. end
  274. if pcs_traits['nerd_points'] > 100:
  275. pcs_traits['nerd_points'] = 100
  276. elseif pcs_traits['nerd_points'] < -100:
  277. pcs_traits['nerd_points'] = -100
  278. end
  279. end
  280. if $ARGS[0] = 'addictive_personality':
  281. !!Addictive Personality Trait
  282. if cheatVars['no_trait_addictive'] = 0:
  283. addictive_exp = drugVars['cigarettes_exp'] + drugVars['weed_exp'] + drugVars['heroin_exp'] + drugVars['cocaine_exp'] + drugVars['alcohol_exp'] + drugVars['amphetamine_exp']
  284. if addictive_exp = 2 and addictive_trait_lvl < 1:
  285. addictive_trait_lvl = 1
  286. if add_trait_msg_1 = 0: add_trait_msg_1 = 1 & msg 'You have gained the trait ''Addictive Personality''.'
  287. elseif addictive_exp = 3 and addictive_trait_lvl < 2:
  288. addictive_trait_lvl = 2
  289. if add_trait_msg_2 = 0: add_trait_msg_2 = 1 & msg 'You have increased the level of your ''Addictive Personality'' trait to 2.'
  290. elseif addictive_exp >= 4 or (drugVars['heroin_exp'] = 1 and drugVars['cocaine_exp'] = 1) and addictive_trait_lvl < 3:
  291. addictive_trait_lvl = 3
  292. if add_trait_msg_3 = 0: add_trait_msg_3 = 1 & msg 'You have increased the level of your ''Addictive Personality'' trait to 3.'
  293. end
  294. end
  295. end
  296. if $ARGS[0] = 'easy-orgasms':
  297. if pcs_traits['easy_orgasms'] > 0 and orgasm > 0:
  298. *nl
  299. '<center><b>Easy Orgasms</b></center>'
  300. if pcs_traits['trained_easy_orgasm'] = 0:
  301. 'Orgasms have always come easy to you. Like, <i>really</i> easy. Where other girls might struggle to get their rocks off, sometimes all it takes is one thrust for you.'
  302. else
  303. 'It wasn''t always like this, but after lots of time spent training your body, orgasms come fast and easy to you. Like, <i>really</i> easy. You''re so sensitive, it''s almost like flipping a lightswitch how fast you can come.'
  304. end
  305. end
  306. end
  307. --- traits ---------------------------------