cikl 37 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290
  1. # cikl
  2. !!----------------------------------------------------------------------------
  3. !! Time calculations
  4. day += 1
  5. week += 1
  6. hour -= 24
  7. if day > monthsEnd[month]:
  8. day -= monthsEnd[month]
  9. month += 1
  10. if month > 12: month = 1 & year += 1
  11. !!MJ: Dont think that one is needed. But it was in the original loop.
  12. if month < 1: month = 1
  13. $month = $monthName[month]
  14. end
  15. !!MJ: Dont think that one is needed. But it was here already.
  16. if day <= 0:day = 1
  17. if week > 7:
  18. :loopweek
  19. week -= 7
  20. husbandrink = 0
  21. if military = 1:military = 0
  22. if week > 7:jump 'loopweek'
  23. end
  24. !!----------------------------------------------------------------------------
  25. !!Fame call to update all the fame variables
  26. gs 'fame'
  27. !!moving the porn schedule ahead a day, flaffing for missed shootings, if it even matters
  28. if (film > 0 or pornstack = 1) and pfilmNO = 0 and pfilmSTOP = 0:
  29. if pfilmday[0] > 0: gs 'pornschedule', 'pornmiss'
  30. gs 'pornschedule', 'schedule'
  31. end
  32. !!acting strings to set available jobs
  33. if casting = 1:
  34. acting_string1 = rand(10000000000,199999999999)
  35. acting_string2 = rand(10000000000,199999999999)
  36. end
  37. gs 'daystart'
  38. dynamic $hypnoDaychange
  39. !!phone reset for bf
  40. ringA = 0
  41. ringB = 0
  42. ringC = 0
  43. if BuyHous = 2 and ArendHouseSL <= 0: ArendHouseSL = 0 & BuyHous = 0 & housr = 0
  44. if BuyHous = 2 and ArendHouseSL > 0: ArendHouseSL -= 1
  45. !!Appearance Age
  46. vidageday -= 1
  47. if vidageday <= 0:
  48. vidageday = 360
  49. vidage += 1
  50. end
  51. !!Birthday
  52. age = year - ((pcs_dob - (pcs_dob mod 10000)) / 10000)
  53. if ((month * 100) + day) <= pcs_dob mod 10000: age -= 1
  54. if workDolgDay > 0: workDolgDay -= 1
  55. if QWdogreiqTimer > 0: QWdogreiqTimer -= 1
  56. if husband > 0: husbanday += 1
  57. if husband > 10 and husbanday > 0: husband -= 15
  58. if fingal > 0: fingal -= 1
  59. if husbandMark = 1 and husband <= 10:
  60. husbizvradd = 0
  61. husbharmin = 0
  62. husbandMark = 0
  63. husband = 0
  64. divorced += 1
  65. if KFOnLineReaga > 0:KFOnLineReaga -= 1
  66. '<b><font color="red">Your husband has filed for a divorce.</font></b>'
  67. end
  68. if katjaPreg = 0 and month >= 2:
  69. if schoool_year = 2001 and year > 2016:
  70. katjaPreg = 1
  71. elseif schoool_year = 2000 and year > 2017:
  72. katjaPreg = 1
  73. end
  74. end
  75. !! after having surgery you will be in recuperation for a few days
  76. if surgeryday ! '':
  77. if daystart - 7 <= surgeryday:
  78. dailyhealthimprov = (daystart - surgeryday) * 50
  79. pcs_health = dailyhealthimprov
  80. recuperation = 1
  81. else
  82. killvar 'recuperation'
  83. killvar 'dailyhealthimprov'
  84. end
  85. end
  86. !!Street events daily reset
  87. streetevent_hour = -2
  88. !!Clothing stock and price randomizers
  89. Clothingstock = rand (0,23)
  90. i = 1
  91. :loopprice
  92. Clothingstock[i] = rand (0,500)
  93. i += 1
  94. if i <= 147:jump 'loopprice'
  95. !!underwear rng
  96. cheap_panty_number = rand(1,37)
  97. cheap_bra_number = rand(1,19)
  98. if coatH[defaultcoat] <= 0: defaultcoat = 0
  99. !!------------------------------------------------------------------------------------------------------------
  100. !! Bimbo
  101. !!------------------------------------------------------------------------------------------------------------
  102. !!A Succubus cannot be a Bimbo
  103. if succubusflag = 1 and bimbo > 0: bimbo -= succublvl * 2
  104. !!Bonus from clothing and shoes
  105. if succubusflag = 0 and $cheatBimbo ! '<b>ON</b>':
  106. if bimbocl = 1:
  107. bimbocl = 0
  108. bimbo += 2
  109. end
  110. if bimbosh = 1:
  111. bimbosh = 0
  112. bimbo += 1
  113. end
  114. else
  115. bimbocl = 0
  116. end
  117. !!Once bimbolevel is set to 1, must use the withdrawal in stat to return to 0
  118. if bimbo > 0 or bimbolevel > 0:
  119. if bimbo < 10:
  120. bimbo -= 1
  121. elseif bimbo < 20:
  122. bimbolevel = 1
  123. elseif bimbo < 30:
  124. bimbolevel = 2
  125. else
  126. bimbolevel = 3
  127. end
  128. end
  129. if bimbo >= 40: bimbo = 40
  130. !!Bimbo levels. They use custom variables so they wont permanently change character stats
  131. if bimbolevel = 0: supnatvnesh = 0 & bimbostupidity = 0
  132. if bimbolevel = 1: supnatvnesh = 2 & bimbostupidity = (pcs_intel / 6)
  133. if bimbolevel = 2: supnatvnesh = 4 & bimbostupidity = (pcs_intel / 4)
  134. if bimbolevel = 3: supnatvnesh = 8 & bimbostupidity = (pcs_intel / 3)
  135. !!Succubus Level & hunger calcs
  136. if succubusflag = 1:
  137. cheatHealth = 1
  138. dynamic $cheatmenu['std_cure']
  139. !! A Succubus cannot be a Bimbo
  140. if bimbolevel > 0 and bimbo > 0: bimbowithdrawal = 40
  141. !! Hunger handling
  142. if sucxpsnapshot >= succubxp: succhungry += 1
  143. sucxpsnapshot = succubxp
  144. if succubxp < 0: succubxp = 0
  145. !! Level handling
  146. if succubxp < 60:
  147. succublvl = 1
  148. $sucself1 = 'that feeling'
  149. sucstorecap = 0
  150. if bimbolevel <= 0: supnatvnesh = 1
  151. elseif succubxp < 150:
  152. succublvl = 2
  153. $sucself1 = 'the power'
  154. sucstorecap = 0
  155. if bimbolevel <= 0: supnatvnesh = 3
  156. elseif succubxp < 270:
  157. succublvl = 3
  158. $sucself1 = 'your other self'
  159. sucstorecap = 100
  160. if bimbolevel <= 0: supnatvnesh = 6
  161. else
  162. succublvl = 4
  163. $sucself1 = 'your true self'
  164. sucstorecap = 200
  165. if bimbolevel <= 0: supnatvnesh = 10
  166. end
  167. if sucskill >= 2 and succublvl >= 2: sucstorecap += 100
  168. if sucskill >= 3 and succublvl >= 2: sucstorecap += (sucstorecap * 2) / 10
  169. if stren_muta < (succublvl - 1): stren_muta = (succublvl - 1)
  170. if agil_muta < (succublvl - 1): agil_muta = (succublvl - 1)
  171. if vital_muta < (succublvl - 1): vital_muta = (succublvl - 1)
  172. if intel_muta < (succublvl - 1): intel_muta = (succublvl - 1)
  173. if react_muta < (succublvl - 1): react_muta = (succublvl - 1)
  174. if sprt_muta < (succublvl - 1): sprt_muta = (succublvl - 1)
  175. if chrsm_muta < (succublvl - 1): chrsm_muta = (succublvl - 1)
  176. if prcptn_muta < (succublvl - 1): prcptn_muta = (succublvl - 1)
  177. if (sucexcess >= 100 and (sucskill < 2 or succhungry > -2)) or (sucexcess >= 100 + sucstorecap and sucskill >= 2):
  178. if pcs_stren < 250: stren_exp += 20 & sucexcess -= 10
  179. if pcs_agil < 250: agil_exp += 20 & sucexcess -= 10
  180. if pcs_vital < 250: vital_exp += 20 & sucexcess -= 10
  181. if pcs_intel < 250: intel_exp += 20 & sucexcess -= 10
  182. if pcs_react < 250: react_exp += 20 & sucexcess -= 10
  183. if pcs_sprt < 250: sprt_exp += 20 & sucexcess -= 10
  184. if pcs_chrsm < 250: chrsm_exp += 20 & sucexcess -= 10
  185. if pcs_prcptn < 250: prcptn_exp += 20 & sucexcess -= 10
  186. if succhungry > (0 - 2 - succublvl): succhungry -= 1 & sucexcess -= 10
  187. if pcs_skin < 100: pcs_skin += 1 & sucexcess -= 2
  188. !! This is to drive the Succubus vidage into the max appearance range
  189. if vidageday < 720 and vidage >= 28: vidageday += 4 & sucexcess -= 4
  190. if vidageday > 0 and vidage <= 20: vidageday -= 4 & sucexcess -= 4
  191. if vidageday >= 720 and vidage > 28:
  192. vidageday -= 360
  193. vidage -= 1
  194. end
  195. if sucexcess > sucstorecap: sucexcess = sucstorecap
  196. elseif sucexcess < 0 and succhungry < 0:
  197. succhungry += 1
  198. if (0 - sucexcess) < (10 * succublvl):
  199. sucexcess = 0
  200. else
  201. sucexcess += (10 * succublvl)
  202. end
  203. end
  204. if sucexcess < 0: sucpowzeroed += 1
  205. if sucexcess >= 0 and sucpowzeroed > 0: sucpowzeroed -= 1
  206. !! This is so a Succubus always moves toward a default vaginal and anal size when she has the accomadation ability
  207. if sucskill >= 4:
  208. if pcs_vag - 2 >= 13:
  209. pcs_vag -= 2
  210. elseif pcs_vag + 2 <= 13:
  211. pcs_vag += 2
  212. end
  213. if pcs_ass - 2 >= 8:
  214. pcs_ass -= 2
  215. elseif pcs_ass + 2 <= 8:
  216. pcs_ass += 2
  217. end
  218. end
  219. end
  220. !!Bimbo second half, after Succubus so changes there can be reflected here if still bimbo and Succubus
  221. !!Checks how often sex has occured in the last 24 hours and for drops in bimbo score, for calculating withdrawal
  222. if bimbolevel >= 1:
  223. bimbo += ((stat['vaginal'] + stat['bj'] + stat['anal']) - snapshotX) - 3
  224. if bimbo > snapshotY:
  225. bimbowithdrawal = 0
  226. else
  227. bimbowithdrawal += 1
  228. end
  229. end
  230. if bimbo < 0: bimbo = 0
  231. snapshotX = (stat['vaginal'] + stat['bj'] + stat['anal'])
  232. snapshotY = bimbo
  233. !!------------------------------------------------------------------------------------------------------------
  234. if defcurly = 0 and curly > 0:curly -= 1
  235. if defcurly = 1:
  236. if straight > 0: straight -= 1
  237. if straight = 0: curly = 2147483647
  238. end
  239. ! WD: Added daily reduction of braids for Maruda Hair Mod
  240. if hbraids > 0: hbraids -= 1
  241. pcs_sweat += 2
  242. if pcs_tan > 0: pcs_tan -= 1
  243. if prezikmsg = 2: prezikmsg = 3
  244. !!------------------------------------------------------------------------------------------------------------
  245. !! Birth control
  246. !!------------------------------------------------------------------------------------------------------------
  247. !! Birth Control Management variables
  248. !!
  249. !! tabletkimm : The modifier for the current mood of the MC.
  250. !! tabletkiap : Autopill factor affecting the liklihood you took your pill as you should have
  251. !! tabletkipt : Pill Dicipline Take increase
  252. !! tabletkipi : Pill Dicipline Dont take increase
  253. !! tabletkicpd : Current MC Pill Dicipline
  254. !! tabletkichday : Current day that the Birth Control is being evaluated for
  255. !! tabletkicheck : If the birth control is automatically handled
  256. !! tabletki : How many packages of Birth Control Pills there are
  257. !! tabletkiold : Total number packages of expired pills
  258. !! tabletkifake : Total number packages of fake/counterfeit pills
  259. !! tabletkirej : Total number packages of factory rejected pills
  260. !! tabletkifert : Total number packages of subsituted fertility pills
  261. !! tabletkisug : Total number packages of sugar pills
  262. !! pillsleft : Total number packages of pills in current package
  263. !! tabletkishot : The flag for being on the Birth Control shot.
  264. !! pillcon : The number for the current birth control chemical level.
  265. !! pilldays : The number of consecutive days (you believe) you have taken your pill
  266. if Luth > (LutH_Max-75) and placebopart <= 0: placebopart = 8
  267. placebopart -= 1
  268. if tabletkishot <= 0: pillcon -= 1000 & pillcon2 -= 1000
  269. if pillcon < 0: pillcon = 0
  270. if pillcon2 < 0: pillcon2 = 0
  271. if tabletkicheck = 2:
  272. if tabletkishot ! 0:
  273. !!cycle = 1
  274. mesec = 0
  275. if rand(0,1000) = 1000:
  276. EggRH = rand(20,80)
  277. else
  278. EggRH = 0
  279. end
  280. FocH = EggRH
  281. end
  282. if tabletkishot <= 0:
  283. pillcon -= 29000
  284. pillcon2 -= 29000
  285. if tabletkishot < 0: tabletkishot = 0
  286. end
  287. if shotdays = -8:
  288. tabletkicheck = 0
  289. shotdue = 0
  290. 'Your birth control shot is no longer protecting you.'
  291. elseif shotdays <= 0:
  292. if shotdays = 0:
  293. shotdue = 7
  294. else
  295. shotdue -= 1
  296. end
  297. 'The chemicals regulating your fertility cycle are wearing off, you need to get your shot in <<shotdue>> days.'
  298. elseif shotdays > 1 and shotdays < 5:
  299. 'You are due for a birth control shot soon if you do not get one, you might get pregnant.'
  300. elseif shotdays = 1:
  301. 'Your birth control shot is due for renewal tomorrow.'
  302. end
  303. if shotdays > -100:shotdays -=1
  304. if tabletkishot > 0:tabletkishot -= 1
  305. end
  306. tabletkipd += tabletkipi
  307. tabletkipi = 0
  308. tabletkipt = 0
  309. if tabletkicheck = 1:
  310. if tabletki = 0 and pillsleft[ptype] = 0:
  311. tabletkicheck = 0
  312. 'You are out of birth control pills.'
  313. tabletkipi = -5
  314. elseif tabletki = 0 and pillsleft[ptype] = 28:
  315. 'You have just opened your last package of birth control pills. You need to buy more.'
  316. elseif tabletki = 0 and pillsleft[ptype] <= 5:
  317. 'You are running out of birth control pills, you only have a few left.'
  318. end
  319. end
  320. if tabletkicheck = 1 and tabletkichday < daystart:
  321. tabletkichday = daystart
  322. tabletkimm = (100*(pcs_willpwr / willpowermax)) + pcs_mood
  323. if pcs_sleep < 10:
  324. tabletkimm -= (100- (pcs_sleep * 10))
  325. end
  326. if pcs_willpwr < willpowermax / 4:
  327. tabletkimm = tabletkimm / 4
  328. elseif pcs_mood < 10:
  329. tabletkimm = tabletkimm / 2
  330. end
  331. tabletkiap = tabletkimm
  332. tabletkiap += (pcs_intel * 4) + (pcs_sprt * 2) + (age * 3)
  333. tabletkiap -= ((kid * 30) + (abort * 2) - (tabletkipd * ((60 - age) / 10)))
  334. temprand = rand(0,(200 + (tabletkimm - ((100 - pcs_sprt) * 3))))
  335. tabletkiap += temprand
  336. if tabletkiap < 300:
  337. if tabletkipd > -10:
  338. if pcs_willpwr < willpowermax / 4:
  339. pilldaychk = 0
  340. 'You stare at your package of birth control pills, you know you should take one but you can''t quite work up enough effort to care.'
  341. elseif pcs_mood < 10:
  342. pilldaychk = 0
  343. 'You stare at your package of birth control pills, but you don''t open it.'
  344. elseif pcs_sleep < 10:
  345. pilldaychk = 0
  346. 'You fumble with your birth control pills, trying to get a pill out. You finally give up too tired to manage it.'
  347. else
  348. pilldaychk = 0
  349. 'You just realized you forgot to take your birth control pill today.'
  350. end
  351. end
  352. tabletkipt = 2
  353. tabletkipi = -4
  354. else
  355. if tabletkiap < 350:
  356. temprand = rand(0,5)
  357. else
  358. temprand = rand(0,1000)
  359. end
  360. if temprand = 0:
  361. temprand = rand(0,1)
  362. if temprand = 0:
  363. gs 'din_bad','takepill'
  364. tabletkipt = -2
  365. tabletkipi = 1
  366. else
  367. tabletkipt = 3
  368. tabletkipi = -3
  369. end
  370. if tabletkipd > -10:
  371. pilldaychk = 0
  372. 'You find yourself holding the bottle of birth control pills, you cannot remember if you took one or not.'
  373. end
  374. if tabletkipd > 0:
  375. if rand(0,9) = 0:
  376. if tabletkipt < 0:
  377. pilldaychk = 0
  378. 'You don''t think you have taken your pill today.'
  379. else
  380. pilldaychk = 1
  381. 'You think you have taken your pill today.'
  382. end
  383. else
  384. if tabletkipt > 0:
  385. pilldaychk = 0
  386. 'You don''t think you have taken your pill today.'
  387. else
  388. pilldaychk = 1
  389. 'You think you have taken your pill today.'
  390. end
  391. end
  392. end
  393. else
  394. 'You take your birth control pill for the day.'
  395. pilldaychk = 1
  396. gs 'din_bad','takepill'
  397. if rand(0,7) = 0 and tabletkiday >= (daystart - 1): tabletkipd += 1
  398. tabletkiday = daystart
  399. tabletkipt = 0
  400. tabletkipi = 0
  401. end
  402. end
  403. elseif tabletkicheck = 0:
  404. if tabletkiday >= (daystart - 1) and tabletkipt = 0 and rand(0,7) = 0: tabletkipt = 1
  405. if pillcon > 0 and tabletkipi = 0 and rand(0,3) and (tabletkiday + 15) > daystart = 0: tabletkipi = -1
  406. end
  407. if pilldaychk = 1:
  408. pilldays += 1
  409. else
  410. pilldays -= 1
  411. end
  412. pilldaychk = 0
  413. if pilldays > 18: pilldays = 18
  414. if pilldays < 0: pilldays = 0
  415. !!
  416. $MenCal[] = $str(cycle)
  417. if ArrSize('$MenCal') = 60: killvar '$MenCal',0
  418. !!------------------------------------------------------------------------------------------------------------
  419. if lashair ! 1:
  420. pcs_leghair += 1
  421. pcs_pubes += 1
  422. end
  423. if age < 18 and rand (0,2) = 0 and pcs_leghair > 0: pcs_leghair -= 1
  424. if pcs_breath = 1:pcs_breath = 0
  425. if cheatNoEat = 1 and dounspell = 1:fat += 15
  426. !!STD check
  427. if SifacOnce = 1:Sifilis += 1
  428. if GerpesOnce = 1:Gerpes += 1
  429. if TriperOnce = 1:
  430. if Triper > 0:
  431. Triper += 1
  432. end
  433. if TriperOral > 0:
  434. TriperOral += 1
  435. end
  436. If TriperOral > 14 and TriperNapr = 0:
  437. if rand(TriperOral,100) > 80:
  438. TriperOral = 0
  439. if Triper = 0:TriperOnce = 0
  440. TriperOralSigns = 0
  441. end
  442. end
  443. end
  444. if KandidozOnce = 1:Kandidoz += 1
  445. VeneraN = 0
  446. if VeneraOnce > 0:VeneraOnce = 0
  447. if SifacOnce = 1:VeneraN += 1
  448. if GerpesOnce = 1:VeneraN += 1
  449. if TriperOnce = 1:VeneraN += 1
  450. Venera = VeneraN
  451. if pcs_ass > 1 and ashrink > 0 and analplugIN = 0:
  452. if anusK < 0:anusK = 0
  453. if anusK < ashrinkdays:anusK += 1
  454. if anusK >= ashrinkdays:pcs_ass -= ashrink & anusK = 0
  455. if pcs_ass < 0: pcs_ass = 0
  456. end
  457. if pcs_vag > 10 and vshrink > 0:
  458. if vaginaK < 0:vaginaK = 0
  459. if vaginaK < vshrinkdays:vaginaK += 1
  460. if vaginaK >= vshrinkdays:vaginaK = 0 & pcs_vag -= vshrink
  461. end
  462. lipkoef -= rand(0,1)
  463. if lipkoef <= 0: lipkoef = 0
  464. if Enable_autotampon = 0 and isprok = 1:isprok = 0 & 'You threw away your used tampon.'
  465. if Enable_autotampon = 0 and isprokp = 1:isprokp = 0 & 'You threw away your used sanitary pad.'
  466. if preg = 1:
  467. pregtime = pregchem / 24
  468. if pregtimes = 0:pregtimes = 1
  469. elseif preg = 2 and pregminut < totminut:
  470. if Enable_nogameover = 0 :
  471. cla
  472. *clr
  473. over = 4
  474. MSG '<center><b>A horrible pain shoots through your body.</b></center>'
  475. xgt 'gameover'
  476. exit
  477. else
  478. MSG'<font color=red><B>You should die for giving birth unprepared, but Cheat Mode keeps you Alive.</B></font>'
  479. pregminut = totminut + 1440
  480. end
  481. elseif preg = 0:
  482. KILLVAR 'pregTalkBrother'
  483. KILLVAR 'pregTalkSister'
  484. KILLVAR 'pregTalkFather'
  485. !{KILLVAR 'pregTalkFamily' -- Do not kill this (Abortion talk).}
  486. KILLVAR 'pregTalkMom'
  487. KILLVAR 'pregTalk'
  488. KILLVAR 'pregTalkNat'
  489. KILLVAR 'pregTalkKatja'
  490. KILLVAR 'pregTalkAlbina'
  491. KILLVAR 'pregTalkPC'
  492. KILLVAR 'pregTalkStarlets'
  493. KILLVAR 'pregTalkvball'
  494. KILLVAR 'pregTalkTrack'
  495. killvar 'pregtalkStarlets'
  496. killvar 'pregtalkvball'
  497. killvar 'pregtime'
  498. killvar 'knowpreg'
  499. killvar 'denypreg'
  500. killvar '$wombthfath'
  501. end
  502. !!------------------------------------------------------------------------------------------------------------
  503. !! Arousal
  504. !!------------------------------------------------------------------------------------------------------------
  505. if magikDostup = 0:
  506. if pcs_horny < 100:pcs_horny += pcs_vag
  507. else
  508. if pcs_vag = 0:
  509. razeba = 0
  510. if pcs_horny > 0 and pcs_horny <= 50:pcs_horny -= 10
  511. if pcs_horny > 50:pcs_horny -= 25
  512. elseif pcs_vag > 0:
  513. if pregtimes = 0:
  514. if age < 18:
  515. razeba = 1
  516. if pcs_horny > 0 and pcs_horny <= 50:pcs_horny -= 5
  517. if pcs_horny > 50 and pcs_horny < 80:pcs_horny -= 10
  518. if pcs_horny >= 80:pcs_horny -= 20
  519. elseif age >= 18 and age < 21:
  520. razeba = 2
  521. if pcs_horny > 0 and pcs_horny <= 50:pcs_horny -= 1
  522. if pcs_horny > 50 and pcs_horny < 80:pcs_horny -= 5
  523. if pcs_horny >= 80:pcs_horny -= 10
  524. elseif age >= 21 and age < 25:
  525. razeba = 3
  526. if pcs_horny > 0 and pcs_horny <= 50:pcs_horny += 1
  527. if pcs_horny > 50 and pcs_horny < 80:pcs_horny -= 1
  528. if pcs_horny >= 80:pcs_horny -= 5
  529. elseif age >= 25 and age < 30:
  530. razeba = 4
  531. if pcs_horny > 0 and pcs_horny <= 50:pcs_horny += 5
  532. if pcs_horny > 50 and pcs_horny < 80:pcs_horny += 1
  533. if pcs_horny >= 80:pcs_horny -= 5
  534. elseif age >= 30:
  535. razeba = 5
  536. if pcs_horny > 0 and pcs_horny <= 50:pcs_horny += 10
  537. if pcs_horny > 50 and pcs_horny < 80:pcs_horny += 5
  538. if pcs_horny >= 80:pcs_horny += 1
  539. end
  540. elseif pregtimes > 0:
  541. if preg = 0:
  542. razeba = 5
  543. if pcs_horny > 0 and pcs_horny <= 50:pcs_horny += 10
  544. if pcs_horny > 50 and pcs_horny < 80:pcs_horny += 5
  545. if pcs_horny >= 80:pcs_horny += 1
  546. elseif preg > 0:
  547. razeba = 6
  548. if pcs_horny < 100:pcs_horny += pregtime / 10
  549. end
  550. end
  551. end
  552. end
  553. if pcs_horny < 0:pcs_horny = 0
  554. !!------------------------------------------------------------------------------------------------------------
  555. !!Exhibitionism
  556. if exhibition_outdoors > 0:
  557. if pcs_exhibition > 90:
  558. exhibition_outdoors = exhibition_outdoors * 3
  559. elseif pcs_exhibition > 75:
  560. exhibition_outdoors = exhibition_outdoors * 5 / 2
  561. elseif pcs_exhibition > 60:
  562. exhibition_outdoors = exhibition_outdoors * 2
  563. elseif pcs_exhibition > 30:
  564. exhibition_outdoors = exhibition_outdoors * 3 / 2
  565. end
  566. if exhibition_outdoors <= 5:
  567. exhibition_exp += rand(3,6)
  568. elseif exhibition_outdoors <= 10:
  569. exhibition_exp += rand(5,9)
  570. elseif exhibition_outdoors <= 15:
  571. exhibition_exp += rand(7,12)
  572. elseif exhibition_outdoors <= 20:
  573. exhibition_exp += rand(9,15)
  574. elseif exhibition_outdoors <= 25:
  575. exhibition_exp += rand(12,20)
  576. elseif exhibition_outdoors <= 30:
  577. exhibition_exp += rand(16,25)
  578. elseif exhibition_outdoors <= 35:
  579. exhibition_exp += rand(20,30)
  580. elseif exhibition_outdoors <= 40:
  581. exhibition_exp += rand(25,40)
  582. elseif exhibition_outdoors <= 50:
  583. exhibition_exp += rand(35,50)
  584. elseif exhibition_outdoors <= 65:
  585. exhibition_exp += rand(50,75)
  586. else
  587. exhibition_exp += rand(70,100)
  588. end
  589. end
  590. exhibition_outdoors = 0
  591. if pcs_exhibition = 0:
  592. if exhibition_exp >= 5: pcs_exhibition = 1 & exhibition_exp -= 5
  593. else
  594. !!Intentional double to add up to 2 points
  595. if exhibition_exp >= 5 * pcs_exhibition / 2: exhibition_exp -= 5 * pcs_exhibition / 2 & pcs_exhibition += 1
  596. if exhibition_exp >= 5 * pcs_exhibition / 2: exhibition_exp -= 5 * pcs_exhibition / 2 & pcs_exhibition += 1
  597. end
  598. if pcs_exhibition > 50 and exhibitionQW < 3: pcs_exhibition = 50
  599. !counter for Dimka avoidance
  600. if dimaFilm = 1 and dimaRudeBlock = 0:
  601. nodimkaK += 1
  602. DimkaWarnedToday = 0
  603. end
  604. !!------------------------------------------------------------------------------------------------------------
  605. !!Fame degradation
  606. gs 'fame', 'deg'
  607. !!Traits
  608. gs 'traits', 'overnight'
  609. !!------------------------------------------------------------------------------------------------------------
  610. !! Maruda hair mod
  611. !!------------------------------------------------------------------------------------------------------------
  612. !! Max. Hair length 600mm, or 60cm, which should be somewhere in the lower back area.
  613. !! Hair grows 1mm each day, it takes 20 months (1 month = 30 days) to regrow the hair from 0.
  614. if pcs_hairlng < 1001 and hairgrowcht = 0:pcs_hairlng += 1
  615. if pcs_haircol ! nathcol:
  616. dyefade -=1
  617. if dyefade < 0: dyefade = 0
  618. if dyefade > 0 and dyefade < 7: dyevmod = 5
  619. if dyefade = 0: dyevmod = 15
  620. end
  621. if hscrunch > 0:
  622. hscrunchrand = rand(1, 100)
  623. if hscrunchrand <= 8:hscrunch -= 1
  624. end
  625. !!------------------------------------------------------------------------------------------------------------
  626. !! Clothing wear and tear
  627. gs 'starenie'
  628. !! Underwear cleaning at home
  629. if tanwork = 1 or (StoryLine = 1 and ParHomeBlock = 0): gs 'underwear', 'cleaning'
  630. if nark > 60:
  631. nark = 60
  632. elseif nark > 30:
  633. nark -= 3
  634. elseif nark > 0:
  635. nark -= 1
  636. end
  637. if pregtime > 10:fat += 1
  638. !!------------------------------------------------------------------------------------------------------------
  639. !! Pain
  640. !!------------------------------------------------------------------------------------------------------------
  641. if pain['head'] > 0:pain['head'] -= rand(1,3)
  642. if pain['hair'] > 0:pain['hair'] -= rand(1,3)
  643. if pain['ears'] > 0:pain['ears'] -= rand(1,3)
  644. if pain['eyebrows'] > 0:pain['eyebrows'] -= rand(1,3)
  645. if pain['eyes'] > 0:pain['eyes'] -= rand(1,3)
  646. if pain['cheeks'] > 0:pain['cheeks'] -= rand(1,3)
  647. if pain['nose'] > 0:pain['nose'] -= rand(1,3)
  648. if pain['mouth'] > 0:pain['mouth'] -= rand(1,3)
  649. if pain['lips'] > 0:pain['lips'] -= rand(1,3)
  650. if pain['tongue'] > 0:pain['tongue'] -= rand(1,3)
  651. if pain['throat'] > 0:pain['throat'] -= rand(1,3)
  652. if pain['neck'] > 0:pain['neck'] -= rand(1,3)
  653. if pain['back'] > 0:pain['back'] -= rand(1,3)
  654. if pain['asscheeks'] > 0:pain['asscheeks'] -= rand(1,3)
  655. if pain['asshole'] > 0:pain['asshole'] -= rand(1,3)
  656. if pain['hips'] > 0:pain['hips'] -= rand(1,3)
  657. if pain['thighs'] > 0:pain['thighs'] -= rand(1,3)
  658. if pain['legL'] > 0:pain['legL'] -= rand(1,3)
  659. if pain['legR'] > 0:pain['legR'] -= rand(1,3)
  660. if pain['feet'] > 0:pain['feet'] -= rand(1,3)
  661. if pain['toes'] > 0:pain['toes'] -= rand(1,3)
  662. if pain['shoulders'] > 0:pain['shoulders'] -= rand(1,3)
  663. if pain['armL'] > 0:pain['armL'] -= rand(1,3)
  664. if pain['armR'] > 0:pain['armR'] -= rand(1,3)
  665. if pain['hands'] > 0:pain['hands'] -= rand(1,3)
  666. if pain['fingers'] > 0:pain['fingers'] -= rand(1,3)
  667. if pain['chest'] > 0:pain['chest'] -= rand(1,3)
  668. if pain['breasts'] > 0:pain['breasts'] -= rand(1,3)
  669. if pain['nipples'] > 0:pain['nipples'] -= rand(1,3)
  670. if pain['ribs'] > 0:pain['ribs'] -= rand(1,3)
  671. if pain['tummy'] > 0:pain['tummy'] -= rand(1,3)
  672. if pain['pubic'] > 0:pain['pubic'] -= rand(1,3)
  673. if pain['vaginal'] > 0:pain['vaginal'] -= rand(1,3)
  674. if pain['labia'] > 0:pain['labia'] -= rand(1,3)
  675. if pain['clitoris'] > 0:pain['clitoris'] -= rand(1,3)
  676. if pain['urethra'] > 0:pain['urethra'] -= rand(1,3)
  677. if pain['cervix'] > 0:pain['cervix'] -= rand(1,3)
  678. if painpub = 2:
  679. if painpubday + 5 < daystart:
  680. $painpub = 'Your vulva is painfully sore.'
  681. painpub = 1
  682. painpubday = daystart
  683. elseif painpubday + 5 >= daystart:
  684. $painpub = 'Your vulva is painfully sore.'
  685. end
  686. elseif painpub = 1:
  687. if painpubday + 5 < daystart:
  688. $painpub = ''
  689. painpub = 0
  690. painpubday = daystart
  691. elseif painpubday + 5 >= daystart:
  692. $painpub = 'Your vulva is a little sore.'
  693. end
  694. end
  695. !!---- Calculation of lash extension degradation and false lash removal
  696. if pcs_lashes > 2:
  697. if lashextensionstyle >= 1:
  698. lashextensionduration -= 1
  699. if lashextensionduration >= 1 and lashextensionduration <= 4:
  700. 'It''s time for you to do your maintenance on your lash extensions; you should go to the salon or you risk growing them all out.'
  701. end
  702. if lashextensionduration <= 0:
  703. 'You waited too long to do maintenance on your lash extensions; there''s too little there to notice or work with at this point.'
  704. pcs_lashes = pcs_naturallashes
  705. killvar 'lashextensionstyle'
  706. killvar 'lashextensionduration'
  707. killvar 'lashextensionnew'
  708. end
  709. end
  710. if false_lashes > 0:
  711. false_lashes -= 1
  712. if false_lashes = 0:
  713. 'Your false lashes came off in the night; there''s no recovering them now.'
  714. pcs_lashes = pcs_naturallashes
  715. else
  716. 'Somehow, your lashes managed to stay attached throughout the night. You might be able to get away with wearing them another day straight.'
  717. end
  718. end
  719. end
  720. prezikProver += 1
  721. if pirs_pain_ton > 0:pirs_pain_ton -= 1
  722. if shorthair = 1:
  723. shorthairday += 1
  724. if shorthairday >= 45:shorthairday = 0 & shorthair = 0
  725. end
  726. !!------------------------------------------------------------------------------------------------------------
  727. if KatjaOTN > 0:
  728. if KatjaHorny > 0 and KatjaLust < 40:KatjaHorny -= rand(1, 3)
  729. if KatjaLust >= 40:KatjaHorny += rand(1, 3)
  730. if KatjaHorny < 0:KatjaHorny = 0
  731. if KatjaHorny >= 100:KatjaHorny = 0 & KatjaMastr += 1 & KatjaLust += 1
  732. end
  733. if npc_rel['A69'] > 60 and rand(0,3) = 0:npc_rel['A69'] -= 1
  734. !!------------------------------------------------------------------------------------------------------------
  735. !! Generation
  736. !!------------------------------------------------------------------------------------------------------------
  737. if NPCnum < 290:
  738. NPCnow = NPCnum
  739. NPCnum += rand(1, 3)
  740. gs 'npc'
  741. elseif NPCnum < 300:
  742. NPCnow = NPCnum
  743. NPCnum += 1
  744. gs 'npc'
  745. end
  746. !!------------------------------------------------------------------------------------------------------------
  747. if kanikuli = 0:pcs_grades -= 1
  748. dmishaevent = 0
  749. if Gspravka <= 0 and GspravkaT = 1:GspravkaT = 0 & Gspravka = 0
  750. if GspravkaT = 1:Gspravka -= 1
  751. if IvanPodstavaQW = 2 and PodpiskaNeviezd = 30:IvanPodstavaQW = 3
  752. if IvanPodstavaQW = 2 and PodpiskaNeviezd > 0 and PodpiskaNeviezd < 30:PodpiskaNeviezd += 1
  753. gs 'stat_sklattrib', 'daycall'
  754. if dounspell = 1:
  755. if strenbuf > 90:
  756. strenbuf -= 2
  757. elseif strenbuf > 80:
  758. strenbuf -= 1
  759. end
  760. if vitalbuf > 90:
  761. vitalbuf -= 2
  762. elseif vitalbuf > 80:
  763. vitalbuf -= 1
  764. end
  765. if strenbuf > pcs_stren: strenbuf -= 1
  766. if strenbuf < pcs_stren: strenbuf += 1
  767. if vitalbuf > pcs_vital: vitalbuf -= 1
  768. if vitalbuf < pcs_vital: vitalbuf += 1
  769. if agilbuf > pcs_agil: agilbuf -= 1
  770. if agilbuf < pcs_agil: agilbuf += 1
  771. else
  772. gs 'body_shape'
  773. end
  774. if husband > 0 and husbandrink ! 11:husbandrink = rand(0, 10)
  775. inWorkYoungShop = 0
  776. husbandsexday = 0
  777. borsexkol = 0
  778. givisexday = 0
  779. if shantsr > 0:
  780. pay = shantsr * 5000
  781. karta += pay
  782. shantsr = 0
  783. end
  784. if shantbog > 0:
  785. :shantftb
  786. shantftbgrand = rand(0, 10)
  787. if shantftbgrand > 2:
  788. shantpopala += 1
  789. shantbog -= 1
  790. if shantbog > 0:jump 'shantftb'
  791. elseif shantftbgrand <= 2:
  792. karta += 30000
  793. shantbog -= 1
  794. if shantbog > 0:jump 'shantftb'
  795. end
  796. end
  797. petersexday = 0
  798. klismaday1 = 0
  799. !! Resetting relationships that go over the max
  800. :toptemprel
  801. if temprel < 250:
  802. temprel +=1
  803. if npc_rel['A'+'<<temprel>>'] > 100:npc_rel['A'+'<<temprel>>'] = 100
  804. jump 'toptemprel'
  805. end
  806. killvar 'temprel'
  807. !!------------------------------------------------------------------------------------------------------------
  808. !! Banking
  809. !!------------------------------------------------------------------------------------------------------------
  810. !!MJ: Add some (daily) interest to the bank account.
  811. !!Not very realistic but wont make anyone too rich.
  812. if bankAccount = 1:
  813. kartatotal = karta
  814. :kartaloop
  815. if kartatotal > 20000000:
  816. kartacount += 1
  817. largekarta[kartacount] = 20000000
  818. kartatotal -= 20000000
  819. jump 'kartaloop'
  820. else
  821. largekarta[0] = kartatotal
  822. end
  823. if karta >= 2000000:
  824. !! yearly interest of 2.3% recalculated into daily interest = 0.006% daily
  825. intrate = 60
  826. elseif karta >= 0:
  827. !! yearly interest of 1.15% recalculated into daily interest = 0.003% daily
  828. intrate = 30
  829. else
  830. !! yearly overdraft interest of 20% recalculated into daily interest = 0.055% daily
  831. intrate = 550
  832. end
  833. :intloop
  834. if kartacount > 0:
  835. smallmoneypos += (largekarta[kartacount] * intrate)
  836. if smallmoneypos >= 1000000 or smallmoneypos <= -1000000: karta += smallmoneypos / 1000000 & smallmoneypos = smallmoneypos mod 1000000
  837. largekarta[kartacount] = 0
  838. kartacount -= 1
  839. jump 'intloop'
  840. else
  841. smallmoneypos += (largekarta[0] * intrate)
  842. largekarta[0] = 0
  843. if kartacount ! 0: kartacount = 0
  844. end
  845. if smallmoneypos >= 1000000 or smallmoneypos <= -1000000:
  846. karta += smallmoneypos / 1000000
  847. smallmoneypos = smallmoneypos mod 1000000
  848. end
  849. if atmDeposit > 0 and atmDepositDate <= daystart:
  850. karta += atmDeposit
  851. atmDeposit = 0
  852. end
  853. end
  854. !!------------------------------------------------------------------------------------------------------------
  855. !! Payments
  856. !!------------------------------------------------------------------------------------------------------------
  857. if day = 25:
  858. !! meynold payment
  859. if mey_vika_qw >= 35 and mey_tamara_help_count >= 10 and mey_tamara_qw_end = 0:
  860. money += 10000
  861. '<b><font color=green>For your efforts aunt Tamara gave you 10000 rubles</font></b>'
  862. mey_tamara_help_count = 0
  863. end
  864. if PersSecWork = 1 and PersSecWorkTimes > 0 and paydaybistrosec = 0:
  865. Pay = PersSecWorkTimes * 2500
  866. PersSecWorkTimes = 0
  867. karta += Pay
  868. paydaybistrosec = 1
  869. '<b><font color="green">Your salary of <<pay>> <b>₽</b> has been paid into your bank account for your job as a secretary.</font></b>'
  870. end
  871. if workKafe = 1 and paydayKafe = 0:
  872. paydayKafe = 1
  873. pay = smenaKafe * 600
  874. karta += pay
  875. smenaKafe = 0
  876. '<b><font color="green">Your salary of <<pay>> <b>₽</b> has been paid into your bank account for your job as a waitress in a cafe.</font></b>'
  877. end
  878. if workhosp = 1 and nopaypoly = 0:
  879. pay = smena * 1000
  880. karta += pay
  881. smena = 0
  882. nopaypoly = 1
  883. '<b><font color="green">Your salary of <<pay>> <b>₽</b> has been paid into your bank account for your work in the clinic.</font></b>'
  884. end
  885. if worksalon = 1 and nopaysalon = 0:
  886. pay = smena * 800
  887. karta += pay
  888. smena = 0
  889. nopaysalon = 1
  890. '<b><font color="green">Your salary of <<pay>> <b>₽</b> has been paid into your bank account for your work in a beauty salon.</font></b>'
  891. end
  892. if tanwork = 1 and nopaytanwork = 0:
  893. nopaytanwork = 1
  894. karta += 25000
  895. '<b><font color="green">Your salary of 25,000 <b>₽</b> has been paid into your bank account for your work as a house maid.</font></b>'
  896. end
  897. if workSec = 1 and paydaySec = 0:
  898. paydaySec = 1
  899. pay = sekDay * 800
  900. if officebestslut >= 3:pay += 20000
  901. karta += pay
  902. sekDay = 0
  903. '<b><font color="green">Your salary of <<pay>> <b>₽</b> has been paid into your bank account for your job as a secretary.</font></b>'
  904. end
  905. if workFabrika = 1:
  906. pay = smenaFabrika * 400
  907. smenaFabrika = 0
  908. karta += pay
  909. '<b><font color="green">Your salary of <<pay>> <b>₽</b> has been paid into your bank account for your job at the garment factory.</font></b>'
  910. end
  911. if husband > 0 and paydayHusb = 0:
  912. paydayHusb = 1
  913. if husbFin = 0:huspay = 15000
  914. if husbFin = 1:huspay = 25000
  915. if husbFin = 2:huspay = 40000
  916. karta += huspay
  917. '<b><font color="green">Your husband has paid <<huspay>> <b>₽</b> into your bank account.</font></b>'
  918. end
  919. if stipuha = 1 and stipuhaday = 0:stipuhaday = 1 & karta += 1200 & '<b><font color="green">You have received 1,200 <b>₽</b> scholarship.</font></b>'
  920. if housr = 1 and haday = 0 and BuyHous = 0:haday = 1 & money -= 3000 & '<b><font color="red">You paid 3,000 <b>₽</b> for your apartment.</font></b>'
  921. if housr = 1 and electroday = 0:
  922. electroday = 1
  923. if elektro >= 800:elektro = 800 + rand(0, 100)
  924. money -= elektro
  925. '<b><font color="red">You paid <<elektro>> for electricity.</font></b>'
  926. end
  927. if housr = 1 and kabel > 0 and kabelday = 0:kabelday = 1 & money -= 300 & '<b><font color="red">You have paid 300 <b>₽</b> for cable TV.</font></b>'
  928. end
  929. if day ! 25:
  930. if paydayHusb = 1:paydayHusb = 0
  931. if workKafe = 1 and paydayKafe = 1:paydayKafe = 0
  932. if workSec = 1 and paydaySec = 1:paydaySec = 0
  933. if housr = 1 and haday = 1 and BuyHous = 0:haday = 0
  934. if housr = 1 and electroday = 1:electroday = 0
  935. if housr = 1 and kabel > 0 and kabelday = 1:kabelday = 0
  936. if stipuhaday = 1:stipuhaday = 0
  937. if nopaytanwork = 1:nopaytanwork = 0
  938. if nopaypoly = 1:nopaypoly = 0
  939. if nopaysalon = 1:nopaysalon = 0
  940. if paydaybistrosec = 1:paydaybistrosec = 0
  941. end
  942. if sdaday = day and sdamonth = month and housr = 0:
  943. housr = 1
  944. '<b><font color="red">Your tenants have moved out and your apartment is now vacant.</font></b>'
  945. !msg 'Your tenants have moved out and your apartment is now vacant.'
  946. end
  947. !!------------------------------------------------------------------------------------------------------------
  948. killvar 'holyday'
  949. killvar 'kanikuli'
  950. !!sisboyparty
  951. !!-1 - don''t go to the party
  952. !!0 - don''t know about parties
  953. !!1 - knows about the parties
  954. !!2 - agreed to go to the party
  955. !!3 - Missed the party
  956. if storyline = 1:
  957. !!Party refresh if you didn''t see sis
  958. if week = 1 and sisboyparty ! 2:
  959. if sisboyparty = -1: sisboyparty = 1
  960. if sisboypartyQW >= 2 and sisboyparty > 0:
  961. sisboyparty_day = daystart + rand(3,5)
  962. end
  963. end
  964. if sisboyparty = 2 and sisboyparty_day > daystart: sisboyparty = 3
  965. !!missed graduation
  966. if month = 5 and day = 26:
  967. if schoool_year = 2001 and year = 2018 and kanikuli ! 7:
  968. grad_miss = daystart + 1
  969. elseif schoool_year = 2000 and year = 2017 and kanikuli ! 7:
  970. grad_miss = daystart + 1
  971. end
  972. end
  973. if SchoolAtestat = 0:
  974. if month = 12 and day > 25:
  975. if day < 31:
  976. $holyday = '<b>Winter Break in <<32-day>> days.</b>'
  977. else
  978. $holyday = '<b>Winter Break starts tomorrow.</b>'
  979. end
  980. elseif month = 1 and day <= 15:
  981. kanikuli = 2
  982. if day < 13:
  983. $holyday = '<b>Winter Break.</b>'
  984. elseif day < 15:
  985. $holyday = '<b>Winter Break ends in <<16-day>> days.</b>'
  986. else
  987. $holyday = '<b>Last day of Winter Break.</b>'
  988. end
  989. elseif month = 3 and day > 13:
  990. if day < 19:
  991. $holyday = '<b>Spring Break starts in <<20-day>> days.</b>'
  992. elseif day = 19:
  993. $holyday = '<b>Spring Break starts tomorrow.</b>'
  994. elseif day >= 20 and day <= 26:
  995. kanikuli = 3
  996. if day < 24:
  997. $holyday = '<b>Spring Break.</b>'
  998. elseif day < 26:
  999. $holyday = '<b>Spring Break ends in <<27-day>> days.</b>'
  1000. else
  1001. $holyday = '<b>Last day of Spring Break.</b>'
  1002. end
  1003. end
  1004. elseif month = 5:
  1005. if ( (schoool_year = 2000 and year = 2017) or (schoool_year = 2001 and year = 2018) ) and day >= 19 and day <= 25:
  1006. if day = 25:
  1007. kanikuli = 6
  1008. $holyday = '<b>Your graduation is today. Be there by 8:00.</b>'
  1009. elseif day = 24:
  1010. $holyday = '<b>Your graduation is tomorrow. Be there by 8:00.</b>'
  1011. else
  1012. $holyday = '<b>Your graduation is in <<26-day>> days.</b>'
  1013. end
  1014. elseif day >= 25:
  1015. if day = 31:
  1016. $holyday = '<b>Summer Break starts tomorrow.</b>'
  1017. else
  1018. $holyday = '<b>Summer Break starts in <<32-day>> days.</b>'
  1019. end
  1020. end
  1021. elseif month = 6 or month = 7 or month = 8:
  1022. kanikuli = 4
  1023. if month = 8 and day >= 25:
  1024. if day = 31:
  1025. $holyday = '<b>Last day of Summer Break.</b>'
  1026. else
  1027. $holyday = '<b>Summer Break ends in <<32-day>> days.</b>'
  1028. end
  1029. else
  1030. $holyday = '<b>Summer Break.</b>'
  1031. end
  1032. elseif month = 10 and day >= 29:
  1033. $holyday = '<b>Autumn Break starts in <<35-day>> days.</b>'
  1034. elseif month = 11:
  1035. if day < 3:
  1036. $holyday = '<b>Autumn Break starts in <<4-day>> days.</b>'
  1037. elseif day = 3:
  1038. $holyday = '<b>Autumn Break starts tomorrow.</b>'
  1039. elseif day < 6:
  1040. kanikuli = 1
  1041. $holyday = '<b>Autumn Break.</b>'
  1042. elseif day < 11:
  1043. kanikuli = 1
  1044. $holyday = '<b>Autumn Break ends in <<12-day>> days.</b>'
  1045. elseif day = 11:
  1046. kanikuli = 1
  1047. $holyday = '<b>Last day of Autumn Break.</b>'
  1048. end
  1049. end
  1050. end
  1051. end
  1052. killvar 'natholi'
  1053. if month = 1 and day >= 1 and day <= 8:
  1054. $natholi = 'New Year holidays'
  1055. natholi = 1
  1056. if day = 1:$natholi += ', New Year'
  1057. if day = 7:$natholi += ', Christmas'
  1058. end
  1059. if month = 2 and day = 23:$natholi = 'Defender of Fatherland Day' & natholi = 1
  1060. if month = 3 and day = 8:$natholi = 'Women''s Day' & natholi = 1
  1061. if month = 5 and day = 1:$natholi = 'Spring and Labor Day' & natholi = 1
  1062. if month = 5 and day = 2:$natholi = 'National holiday' & natholi = 1
  1063. if month = 5 and day = 9:$natholi = 'Victory Day' & natholi = 1
  1064. if month = 6 and day = 12:$natholi = 'Russia Day' & natholi = 1
  1065. if month = 6 and day = 13:$natholi = 'National holiday' & natholi = 1
  1066. if month = 11 and day = 4:$natholi = 'Unity Day' & natholi = 1
  1067. if natholi = 1:
  1068. if $holyday ! '': $holyday += '<br>'
  1069. $holiday += $natholi
  1070. end
  1071. if bcream_used >= 1:
  1072. bcream_used = 0
  1073. temp = rand(0,5)
  1074. nbsize += temp
  1075. if temp > 0:'Feels like your breasts have grown slightly.'
  1076. end
  1077. if steroid_dose >= 1:
  1078. if lashair < 1:
  1079. pcs_pubes += steroid_dose
  1080. pcs_leghair += steroid_dose
  1081. end
  1082. steroid_dose = 0
  1083. end
  1084. if aphrodisiac_overdose = 1:aphrodisiac_overdose = 0
  1085. if aphrodisiac_timer ! 0:aphrodisiac_timer = 0
  1086. if mentats_dose = 1:
  1087. mentats_dose = 0
  1088. elseif mentats_dose > 1:
  1089. pain['head'] += 20 * mentats_dose
  1090. mentats_dose = 0
  1091. end
  1092. if breastpumped = 0 and breastcount > 0: breastcount -= 1
  1093. if breastpumped = 1: breastpumped = 0
  1094. !!Appearance base calculation call
  1095. gs 'body_shape', 'basebeautycalc'
  1096. !! vovan, from 1.2.5
  1097. hanters_check = 0
  1098. mushroom_pickers = 0
  1099. horse_river = 0
  1100. haying_time = 0
  1101. mira_go_river = 0
  1102. forestpicnic = 0
  1103. if Mira_no > 0: Mira_no -= 1
  1104. if Mira_no < 0: Mira_no = 0
  1105. if catout ! 0: catout = 0
  1106. if feedcat ! 0: feedcat = 0
  1107. loc_count = ARRSIZE('$CloLosLoc')
  1108. i = loc_count - 1
  1109. :loopCloLoc
  1110. $CloLoc = $CloLosLoc[i]
  1111. CloLostOn = CloLosDay[$CloLoc]
  1112. if CloLostOn + RAND(7,14) < daystart :
  1113. gs 'clothing', 'recover_lost_clothes', $CloLoc, 2
  1114. end
  1115. i -=1
  1116. if i > -1 :jump 'loopCloLoc'
  1117. --- cikl ---------------------------------