1
0

hourly_events.qsrc 8.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328
  1. # hourly_events
  2. !!===========================================================================!!
  3. !! !!
  4. !! Hourly events. !!
  5. !! !!
  6. !!===========================================================================!!
  7. if pcs_nerd > 0:
  8. if daystart = lastreadday:
  9. !!<font color="green">You are completely healthy shine and a healthy glow.</font>
  10. if pcs_mood < 90: pcs_mood += rand(5,10)
  11. $mudnerd = '<font color="green">You are lost in a fantasy after reading a book.</font>'
  12. elseif daystart = lastreadday + 1:
  13. $mudnerd = '<font color="black">You are a little bored and want to plunge into a book.</font>'
  14. elseif daystart = lastreadday + 2:
  15. if pcs_mood > 50: pcs_mood -= rand(5,10)
  16. $mudnerd = '<font color="red">You really want to read something.</font>'
  17. elseif daystart => lastreadday + 3:
  18. if pcs_mood > 10: pcs_mood -= rand(5,10)
  19. $mudnerd = '<font color="red"><b>You have an incredibly strong desire to read!!!</b></font>'
  20. pcs_nerd = max(0, pcs_nerd / 10 - stat['body_count'])
  21. end
  22. end
  23. if pcs_nerd <= 0:
  24. killvar 'pcs_nerd'
  25. killvar '$mudnerd'
  26. end
  27. if obkvsdam > 0: obkvsdam = rand(2, 5)
  28. if scpopt > 1: scpopt = 0
  29. if insleep = 1:
  30. pcs_energy -= (succublvl / 2)
  31. pcs_hydra -= (succublvl / 2)
  32. pcs_stam += iif(pcs_sleep > 90, stammax/2, iif(pcs_sleep > 80, stammax/4, stammax/8))
  33. if alko > 0: alko -= 1
  34. pcs_willpower_feeder += willpowermax * 4
  35. pcs_willpwr += pcs_willpower_feeder / 100
  36. pcs_willpower_feeder = pcs_willpower_feeder mod 100
  37. else
  38. pcs_energy -= succublvl
  39. pcs_hydra -= succublvl
  40. if hypnoAddict > 0: dynamic $hypnoAddiction
  41. if SleepVars['no_sleep_loss'] = 0:
  42. pcs_sleep -= 5
  43. else
  44. SleepVars['no_sleep_loss'] = 0
  45. end
  46. if pcs_sleep <= 0 and succublvl = 0:
  47. pcs_condition['lack_of_sleep'] += 2
  48. if pcs_mood['slpredcheck'] = 1: pcs_mood -= 5
  49. pcs_mood['slpredcheck'] = 1
  50. else
  51. pcs_mood['slpredcheck'] = 0
  52. end
  53. if pcs_energy <= 0:
  54. if pcs_mood['nrgredcheck'] = 1: pcs_mood -= 5
  55. pcs_mood['nrgredcheck'] = 1
  56. else
  57. pcs_mood['nrgredcheck'] = 0
  58. end
  59. if pcs_hydra <= 0:
  60. if pcs_mood['hydredcheck'] = 1: pcs_mood -= 5
  61. pcs_mood['hydredcheck'] = 1
  62. else
  63. pcs_mood['hydredcheck'] = 0
  64. end
  65. if pcs_stam <= 0:
  66. pcs_mood -= rand(5,10)
  67. pcs_sleep -= rand(3,6)
  68. elseif pcs_stam < stammax / 5 and stammax > 50:
  69. pcs_mood -= rand(2,5)
  70. end
  71. if pcs_energy > 20: pcs_stam += stammax / max(5, 110-pcs_energy)
  72. pcs_willpower_feeder += willpowermax*4/3
  73. pcs_willpwr += pcs_willpower_feeder/100
  74. pcs_willpower_feeder = pcs_willpower_feeder mod 100
  75. end
  76. gs 'drugs', 'smoke', 'hourly_events'
  77. gs 'drugs', 'joint', 'hourly_events'
  78. gs 'drugs', 'heroin', 'hourly_events'
  79. gs 'drugs', 'cocaine', 'hourly_events'
  80. gs 'drugs', 'amphetamine', 'hourly_events'
  81. gs 'drugs', 'aphrodisiac', 'hourly_events'
  82. !!=======================================================!!
  83. !! !!Willpower!! !!
  84. !!=======================================================!!
  85. if pcs_willpwr > willpowermax: pcs_willpwr = willpowermax
  86. if pcs_mood <= 20: will_counter -= 2
  87. if willpowermax > 100:
  88. if pcs_willpwr < 25: will_counter -= 1
  89. else
  90. if pcs_willpwr < willpowermax/4: will_counter -= 1
  91. end
  92. if will_counter <= -10:
  93. willpowermax -= 1
  94. will_counter = 0
  95. end
  96. if pcs_stam > stammax: pcs_stam = stammax
  97. !!=======================================================!!
  98. gs 'femcyc'
  99. if Insleep = 0 and pcs_period['period_warning'] = 0 and placebopart > 0 and LutH > 0 and knowpreg = 0:
  100. pcs_period['period_warning'] = 1
  101. msg'Your stomach suddenly twinges, muscles contracting so tightly that they start to cramp. It seems your period is on its way.'
  102. elseif pcs_period['period_warning'] = 1 and LutH_Max-LutH <= 2:
  103. pcs_period['period_warning'] = 2
  104. if isprok = 1:
  105. msg'Your stomach twinges again. Another cramp of pain. It must mean your period is about to start. Good thing you''re already put a tampon in.'
  106. elseif $location_type = 'private' and isprokp = 1:
  107. msg'Your stomach twinges again. Another cramp of pain. You''re pretty sure you know what''s happening but take advantage of the privacy pull down your panties anyways to confirm; Yup. Your pad is already spotting, which must mean your period is imminent. Good thing you''re already prepared.'
  108. elseif $location_type = 'private' and $pantyworntype ! 'none':
  109. msg'Your stomach twinges again. Another cramp of pain. You''re pretty sure you know what''s happening but take advantage of the privacy pull down your panties anyways to confirm; Yup. Your underwear is already spotting. Your period is imminent.'
  110. else
  111. msg'Your stomach twinges again. Another cramp of pain. It must mean your period is about to start. You really need to get a tampon in there ASAP.'
  112. end
  113. elseif mesec > 0:
  114. pcs_period['period_warning'] = 0
  115. end
  116. !! code to trigger vomitting based on morning sickness, hangovers, or just plain bad luck
  117. if Insleep = 0:
  118. vomit['daily_check'] = 0
  119. !!if Insleep = 1:
  120. else
  121. if vomit['daily_check'] = 0:
  122. vomit['daily_check'] = 1
  123. if alko > 4:
  124. vomit['hangover'] = 1
  125. elseif pregchem > 600 and pregchem < 2160 and rand(1,4) = 4:
  126. vomit['morning_sick'] = 1
  127. elseif rand(1,100) = 100:
  128. vomit['unlucky'] = 1
  129. end
  130. end
  131. end
  132. !!Mana regen
  133. pcs_mana += manamax / 20
  134. if alko > 0 and alkoblock = 0:
  135. if alko >= 6:
  136. if pcs_run > 0: run_deg -= 1
  137. if vball_lvl >= 50: vball_deg -= 1
  138. if alko >= 10:
  139. if pcs_stren > 10: stren_deg -= 1
  140. if pcs_vital > 10: vital_deg -= 1
  141. if pcs_intel > 10: intel_deg -= 1
  142. alko -= rand (0,1)
  143. end
  144. end
  145. alko -= rand (0,1)
  146. elseif alko < 0:
  147. alko = 0
  148. end
  149. if shame > 0:
  150. shame -= 1
  151. pcs_mood -= 5
  152. end
  153. if $pantyworntype = 'none' and PCloPants > 0 and PCloPanties = 0 and $clothingworntype ! 'nude' and pcs_traits['commando_lvl'] < 2:
  154. !! mosol += (2 - pcs_traits['commando_lvl'])
  155. if pcs_traits['commando_lvl'] < 1:
  156. mosol += 2
  157. elseif pcs_traits['commando_lvl'] = 1:
  158. mosol += 1
  159. end
  160. if mosol >= 100: pcs_mood -= 5
  161. if mosol >= 60 and pain['pubic'] < 80: gs 'pain', 1, 'pubic', 'ache'
  162. end
  163. if pcs_energy > 100:
  164. fat += (pcs_energy - 100) / 4
  165. pcs_energy = 100
  166. elseif pcs_energy <= (10 + vitalbuf / 25) and fat > (2 + vitalbuf / 25):
  167. fat -= 2
  168. pcs_energy += 6
  169. end
  170. if pcs_hydra > 200: pcs_hydra = 200
  171. if mosol > 0:
  172. if $pantyworntype ! 'none' or $clothingworntype = 'nude' or PCloPanties = 1:
  173. mosol -= rand(0,1)
  174. end
  175. end
  176. if pcs_lipbalm > 0: pcs_lipbalm -= 1
  177. if sickstage = 1:
  178. sick += 1
  179. sicktimer += 1
  180. if sicktimer >= 80:
  181. sickstage = 2
  182. sicktimer = 0
  183. end
  184. end
  185. if sickstage = 2:
  186. if sick > 0: sick -= 1
  187. if sick <= 0:
  188. sick = 0
  189. sickstage = 0
  190. end
  191. end
  192. !!STDs which hurt mod
  193. if Gerpes >= 3 or Sifilis >= 21 or Triper > 2 and pcs_mood >= 15:
  194. pcs_mood -= 5
  195. end
  196. if perkice > 0: perkice -= 1
  197. if frost > 0: frost -= 1
  198. if KGOLpers > 0:
  199. if KGHP < KGHPMAX: KGHP += 10
  200. if KGMana < KGManaMax: KGMana += 10
  201. end
  202. !! Panty happiness gain
  203. if pcs_mood < 60 and $pantyworntype = 'cats': pcs_mood += 2
  204. if pcs_mood < 60 and $braworntype = 'cats': pcs_mood += 2
  205. !!Arousal adjustments
  206. if (PanThinness >= 5 and BraThinness >= 5) and pcs_horny < 25:
  207. pcs_horny += 10
  208. elseif pcs_horny < 10 and (PanThinness >= 5 or BraThinness >= 5):
  209. pcs_horny += 5
  210. end
  211. if $pantyworntype ! 'none' and clit_size >= 25 and pcs_horny < 60:
  212. pcs_horny += 20
  213. end
  214. if insleep = 0:
  215. gs 'sweat', 'add', rand(0,1)
  216. if temper >= 20: gs 'sweat', 'add', rand(0,1)
  217. end
  218. ! Leg and pubes hair growth
  219. if lashair ! 1:
  220. if pcs_traits['jungle_jane'] = 0:
  221. if stat['leg_hair_growth_timer'] < totminut - 1440:
  222. stat['leg_hair_growth_timer'] = totminut
  223. pcs_leghair += 1
  224. end
  225. if stat['pube_growth_timer'] < totminut - 2880:
  226. stat['pube_growth_timer'] = totminut
  227. pcs_pubes += 1
  228. end
  229. !!Pubic hair growth at 1/2 per night
  230. else
  231. !! if trait is active, growth speed is doubled
  232. if stat['leg_hair_growth_timer'] < totminut - 720:
  233. stat['leg_hair_growth_timer'] = totminut
  234. pcs_leghair += 1
  235. end
  236. if stat['pube_growth_timer'] < totminut - 1440:
  237. stat['pube_growth_timer'] = totminut
  238. pcs_pubes += 1
  239. end
  240. end
  241. gs 'body_desc', 'pube_desc_update'
  242. end
  243. ! vovan edition, from 1.2.5
  244. if huntersAndreisex > 0: huntersAndreisex -= 1
  245. if huntersSergeisex > 0: huntersSergeisex -= 1
  246. if huntersIgorsex > 0: huntersIgorsex -= 1
  247. if huntslutsex > 0: huntslutsex -= 1
  248. if mira_go_blok > 0: mira_go_blok -= 1
  249. if mira_no_home > 0: mira_no_home -= 1
  250. gs 'traits', 'hourly'
  251. gs 'katja_procedural', 'hourly'
  252. if (hour mod 2) = 0: gs 'outdoors', 'weather'
  253. --- hourly_events ---------------------------------