cikl.qsrc 50 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543
  1. # cikl
  2. !!------------------------------------------------------------------------------------------------------------
  3. !! Masseuse Job (MUST COME BEFORE DAY CHANGES)
  4. !!------------------------------------------------------------------------------------------------------------
  5. if masseuse['jobtype'] < 1:
  6. masseuse['<<week>>_shift_1'] = 0
  7. masseuse['<<week>>_shift_2'] = 0
  8. masseuse['<<week>>_shift_3'] = 0
  9. end
  10. if (masseuse['<<week>>_shift_1'] ! 0 or masseuse['<<week>>_shift_2'] ! 0 or masseuse['<<week>>_shift_3'] ! 0) and masseuse['last_worked_day'] ! daystart:
  11. masseuse['missed_shift2'] = 1
  12. end
  13. !!----------------------------------------------------------------------------
  14. !! Time calculations
  15. day += 1
  16. week += 1
  17. hour -= 24
  18. if day > monthsEnd[month]:
  19. day -= monthsEnd[month]
  20. month += 1
  21. !! Changing the year at new year and making sure February have the correct number of days.
  22. if month > 12:
  23. month = 1
  24. year += 1
  25. if ((year mod 4 = 0) and (year mod 100 ! 0)) or (year mod 400 = 0):
  26. monthsend[2] = 29
  27. else
  28. monthsend[2] = 28
  29. end
  30. end
  31. !!MJ: Dont think that one is needed. But it was in the original loop.
  32. if month < 1: month = 1
  33. $month = $monthName[month]
  34. !! new years party calculation
  35. temp = func('shortgs','dow',year,12,31)
  36. if temp < 6:
  37. nyp_day = 31
  38. elseif temp = 6:
  39. nyp_day = 30
  40. else
  41. nyp_day = 29
  42. end
  43. end
  44. !!MJ: Dont think that one is needed. But it was here already.
  45. if day <= 0:day = 1
  46. ciklNewWeek = 0
  47. if week > 7:
  48. odd_week = iif(odd_week,0,1)
  49. ciklNewWeek = 1
  50. :loopweek
  51. week -= 7
  52. husbandrink = 0
  53. if military = 1:military = 0
  54. if week > 7:jump 'loopweek'
  55. end
  56. gs 'daystart'
  57. !!----------------------------------------------------------------------------
  58. !!Fame call to update all the fame variables
  59. gs 'fame'
  60. !!Cycle stats for Contacts
  61. gs 'telefon', 'DailyStatRefresh', ciklNewWeek
  62. !!moving the porn schedule ahead a day, flaffing for missed shootings, if it even matters
  63. if (film > 0 or pornstack = 1) and pfilmNO = 0 and pfilmSTOP = 0:
  64. if pfilmday[0] > 0: gs 'pornschedule', 'pornmiss'
  65. gs 'pornschedule', 'schedule'
  66. end
  67. !!------------------------------------------------------------------------------------------------------------
  68. !! Job Stuff
  69. !!------------------------------------------------------------------------------------------------------------
  70. !! masseuse paycheck
  71. if masseuse['weeks_pay'] > 0 and week = 5:masseuse['paycheck'] = 1
  72. if masseuse['jobtype'] > 0 and week = 5 and masseuse['weeks_pay'] > 0:
  73. masseuse['payday'] = 1
  74. end
  75. if week = 7 and masseuse['schedule_update'] ! daystart: gs 'masseuse_schedule','schedule_reset'
  76. !!modelling check
  77. if model_week ! (daystart - week) / 7:model_job_week = 0
  78. !!acting strings to set available jobs
  79. if casting = 1:
  80. acting_string1 = rand(10000000,199999999)
  81. acting_string2 = rand(10000000,199999999)
  82. end
  83. dynamic $hypnoDaychange
  84. !!phone reset for bf
  85. ringA = 0
  86. ringB = 0
  87. ringC = 0
  88. !!Appearance Age
  89. vidageday -= 1
  90. if vidageday <= 0:
  91. vidageday = 360
  92. vidage += 1
  93. end
  94. !!Birthday
  95. age = year - ((pcs_dob - (pcs_dob mod 10000)) / 10000)
  96. if ((month * 100) + day) <= pcs_dob mod 10000: age -= 1
  97. if birthday = day and birthmonth = month and model['age'] > 0:model['age'] += 1
  98. if workDolgDay > 0: workDolgDay -= 1
  99. if QWdogreiqTimer > 0: QWdogreiqTimer -= 1
  100. if husband > 0: husbanday += 1
  101. if husband > 10 and husbanday > 0: husband -= 15
  102. if fingal > 0: fingal -= 1
  103. if husbandMark = 1 and husband <= 10:
  104. husbizvradd = 0
  105. husbharmin = 0
  106. husbandMark = 0
  107. husband = 0
  108. divorced += 1
  109. if KFOnLineReaga > 0:KFOnLineReaga -= 1
  110. '<b><font color="red">Your husband has filed for a divorce.</font></b>'
  111. end
  112. !! after having surgery you will be in recuperation for a few days
  113. if surgeryday ! '':
  114. if daystart - 7 <= surgeryday:
  115. dailyhealthimprov = (daystart - surgeryday) * 50
  116. pcs_health = dailyhealthimprov
  117. recuperation = 1
  118. else
  119. killvar 'recuperation'
  120. killvar 'dailyhealthimprov'
  121. end
  122. end
  123. !!Street events daily reset
  124. streetevent_hour = -2
  125. !!Clothing stock and price randomizers
  126. Clothingstock = rand (0,23)
  127. i = 1
  128. :loopprice
  129. Clothingstock[i] = rand (0,500)
  130. i += 1
  131. if i <= 147:jump 'loopprice'
  132. if dyneval ('RESULT = <<$coatworntype>>_coats_h[<<coatwornnumber>>]') <= 0: $coatworntype = 'none'
  133. !! Abortion and pregnancy recovery resets if finished
  134. if abortionbirthdate ! 0 and daystart - abortionbirthdate > 24: abortionbirthdate = 0
  135. if pregbirthdate ! 0 and daystart - pregbirthdate > 73: pregbirthdate = 0
  136. !!------------------------------------------------------------------------------------------------------------
  137. !! Nympho
  138. !!------------------------------------------------------------------------------------------------------------
  139. !! Reserved for nympho trait
  140. if nymphosex_flag = 1:
  141. end
  142. nymphosex_flag = 0
  143. !!------------------------------------------------------------------------------------------------------------
  144. !! Bimbo
  145. !!------------------------------------------------------------------------------------------------------------
  146. !!bimbo flag set in stat_display if bimbo clothing, shoes and makeup are worn at same time
  147. if succubusflag = 0 or CheatBimbo2 = 1:
  148. if cheatBimbo = 0 and bimbo_flag = 1:
  149. bimbo += 1
  150. end
  151. end
  152. !!Once bimbolevel is set to 1, must use the withdrawal in stat to return to 0
  153. if bimbo > 0 or bimbolevel > 0:
  154. if bimbo < 10:
  155. if bimbo_flag = 0:
  156. bimbo -= 2
  157. end
  158. elseif bimbo < 20:
  159. bimbolevel = 1
  160. elseif bimbo < 30:
  161. bimbolevel = 2
  162. else
  163. bimbolevel = 3
  164. end
  165. end
  166. if bimbo >= 40: bimbo = 40
  167. !!Bimbo levels. They use custom variables so they won''t permanently change character stats
  168. if bimbolevel = 0: supnatvnesh = 0 & bimbostupidity = 0
  169. if CheatBimbo3 = 0:
  170. if bimbolevel = 1: supnatvnesh = 2 & bimbostupidity = (pcs_intel / 6)
  171. if bimbolevel = 2: supnatvnesh = 2 & bimbostupidity = (pcs_intel / 4)
  172. if bimbolevel = 3: supnatvnesh = 4 & bimbostupidity = (pcs_intel / 3)
  173. elseif CheatBimbo3 = 1:
  174. if bimbolevel = 1: supnatvnesh = 2 & bimbostupidity = 0
  175. if bimbolevel = 2: supnatvnesh = 2 & bimbostupidity = 0
  176. if bimbolevel = 3: supnatvnesh = 4 & bimbostupidity = 0
  177. end
  178. !!A Succubus cannot be a Bimbo
  179. if succubusflag = 1 and CheatBimbo3 = 0:
  180. if bimbolevel > 0 and bimbo > 0: bimbowithdrawal = 40
  181. elseif bimbolevel >= 1:
  182. !!Checks flag and adds withdrawal if 0
  183. if bimbo_flag = 0:
  184. bimbowithdrawal += 1
  185. else
  186. bimbowithdrawal = 0
  187. end
  188. end
  189. if bimbo < 0: bimbo = 0
  190. !! flag reset
  191. bimbo_flag = 0
  192. !!------------------------------------------------------------------------------------------------------------
  193. !! Butt slut
  194. !!------------------------------------------------------------------------------------------------------------
  195. if orgasm_anal > orgasm_anal[1]:
  196. if traits['buttslut_lvl'] > 0: traits['buttslut_exp'] += orgasm_anal - orgasm_anal[1]
  197. else
  198. if traits['buttslut_exp'] > 1: traits['buttslut_exp'] -= 1
  199. end
  200. orgasm_anal[1] = orgasm_anal
  201. if orgasm_anal > 10 and traits['buttslut_lvl'] = 0: traits['buttslut_lvl'] = 1
  202. if traits['buttslut_exp'] >= 15 and traits['buttslut_lvl'] = 1: traits['buttslut_lvl'] = 2 & traits['buttslut_exp'] = 0
  203. if traits['buttslut_exp'] >= 50 and traits['buttslut_lvl'] = 2: traits['buttslut_lvl'] = 3
  204. if traits['buttslut_exp'] <= 0 and traits['buttslut_lvl'] = 3: traits['buttslut_lvl'] = 2 & traits['buttslut_exp'] = 0
  205. !!------------------------------------------------------------------------------------------------------------
  206. !! Exhibitionism
  207. !!------------------------------------------------------------------------------------------------------------
  208. if pcs_exhib > 0 or exhibitionist_lvl > 0:
  209. if pcs_exhib < 10:
  210. pcs_exhib -= 1
  211. elseif pcs_exhib < 50:
  212. exhibitionist_lvl = 1
  213. elseif pcs_exhib < 100 or exhibitionQW < 3:
  214. exhibitionist_lvl = 2
  215. elseif exhibitionQW > 2:
  216. exhibitionist_lvl = 3
  217. end
  218. end
  219. !!Inhibition increases from wearing revealing clothing
  220. if exhibition_outdoors > 0:
  221. if pcs_inhib > 90:
  222. exhibition_outdoors = exhibition_outdoors * 3
  223. elseif pcs_inhib > 75:
  224. exhibition_outdoors = exhibition_outdoors * 5 / 2
  225. elseif pcs_inhib > 60:
  226. exhibition_outdoors = exhibition_outdoors * 2
  227. elseif pcs_inhib > 30:
  228. exhibition_outdoors = exhibition_outdoors * 3 / 2
  229. end
  230. if exhibition_outdoors <= 5:
  231. inhib_exp += rand(3,6)
  232. elseif exhibition_outdoors <= 10:
  233. inhib_exp += rand(5,9)
  234. elseif exhibition_outdoors <= 15:
  235. inhib_exp += rand(7,12)
  236. elseif exhibition_outdoors <= 20:
  237. inhib_exp += rand(9,15)
  238. elseif exhibition_outdoors <= 25:
  239. inhib_exp += rand(12,20)
  240. elseif exhibition_outdoors <= 30:
  241. inhib_exp += rand(16,25)
  242. elseif exhibition_outdoors <= 35:
  243. inhib_exp += rand(20,30)
  244. elseif exhibition_outdoors <= 40:
  245. inhib_exp += rand(25,40)
  246. elseif exhibition_outdoors <= 50:
  247. inhib_exp += rand(35,50)
  248. elseif exhibition_outdoors <= 65:
  249. inhib_exp += rand(50,75)
  250. else
  251. inhib_exp += rand(70,100)
  252. end
  253. end
  254. exhibition_outdoors = 0
  255. !!------------------------------------------------------------------------------------------------------------
  256. !! Succubus Level & hunger calcs
  257. !!------------------------------------------------------------------------------------------------------------
  258. if succubusflag = 1: gs 'succubus','cikl'
  259. !!------------------------------------------------------------------------------------------------------------
  260. if defcurly = 0 and curly > 0:curly -= 1
  261. if defcurly = 1:
  262. if straight > 0: straight -= 1
  263. if straight = 0: curly = 2147483647
  264. end
  265. ! WD: Added daily reduction of braids for Maruda Hair Mod
  266. if hbraids > 0: hbraids -= 1
  267. gs 'sweat', 'add', 2
  268. if pcs_tan > 0: pcs_tan -= 1
  269. if prezikmsg = 2: prezikmsg = 3
  270. gs 'fertility', 'birth_control'
  271. !!------------------------------------------------------------------------------------------------------------
  272. if pcs_breath = 1:pcs_breath = 0
  273. if cheatNoEat = 1 and dounspell = 1:fat += 15
  274. !!Trauma decay
  275. if mood_trauma > 0: mood_trauma -= 1
  276. !!STD check
  277. if SifacOnce = 1:Sifilis += 1
  278. if GerpesOnce = 1:Gerpes += 1
  279. if TriperOnce = 1:
  280. if Triper > 0:
  281. Triper += 1
  282. end
  283. if TriperOral > 0:
  284. TriperOral += 1
  285. end
  286. If TriperOral > 14 and TriperNapr = 0:
  287. if rand(TriperOral,100) > 80:
  288. TriperOral = 0
  289. if Triper = 0:TriperOnce = 0
  290. TriperOralSigns = 0
  291. end
  292. end
  293. end
  294. if KandidozOnce = 1:Kandidoz += 1
  295. Venera = 0
  296. if SifacOnce = 1: Venera += 1
  297. if GerpesOnce = 1: Venera += 1
  298. if TriperOnce = 1: Venera += 1
  299. if pcs_ass > 1 and ashrink > 0 and analplugIN = 0:
  300. if daystart mod(ashrinkdays) = 0: pcs_ass -= ashrink
  301. if pcs_ass < 0: pcs_ass = 0
  302. end
  303. if pcs_vag > 10 and vshrink > 0:
  304. if daystart mod(vshrinkdays) = 0: pcs_vag -= vshrink
  305. if pcs_vag < 0: pcs_vag = 0
  306. end
  307. lipkoef -= rand(0,1)
  308. if lipkoef <= 0: lipkoef = 0
  309. if isprok = 1 or isprokp = 1:
  310. isprok_lastday = 1
  311. else
  312. isprok_lastday = 0
  313. end
  314. if Enable_autotampon = 0 and isprok = 1: isprok = 0 & 'You threw away your used tampon.'
  315. if Enable_autotampon = 0 and isprokp = 1:isprokp = 0 & 'You threw away your used sanitary pad.'
  316. if preg = 1:
  317. pregtime = pregchem / 24
  318. if pregtimes = 0:pregtimes = 1
  319. elseif preg = 2 and pregminut < totminut:
  320. if Enable_nogameover = 0 :
  321. cla
  322. *clr
  323. over = 4
  324. MSG '<center><b>A horrible pain shoots through your body.</b></center>'
  325. xgt 'gameover'
  326. exit
  327. else
  328. MSG'<font color=red><B>You should die for giving birth unprepared, but Cheat Mode keeps you Alive.</B></font>'
  329. pregminut = totminut + 1440
  330. end
  331. elseif preg = 0:
  332. gs 'shortgs', 'remove_array_element', 'npc_pregtalk','A14'
  333. gs 'shortgs', 'remove_array_element', 'npc_pregtalk','A16'
  334. gs 'shortgs', 'remove_array_element', 'npc_pregtalk','A23'
  335. gs 'shortgs', 'remove_array_element', 'npc_pregtalk','A28'
  336. gs 'shortgs', 'remove_array_element', 'npc_pregtalk','A29'
  337. gs 'shortgs', 'remove_array_element', 'npc_pregtalk','A33'
  338. gs 'shortgs', 'remove_array_element', 'npc_pregtalk','A34'
  339. gs 'shortgs', 'remove_array_element', 'npc_pregtalk','A69'
  340. gs 'shortgs', 'remove_array_element', 'npc_pregtalk','A131'
  341. !{killvar 'pregTalkFamily' -- Do not kill this (Abortion talk).}
  342. killvar 'pcs_pregtalk'
  343. killvar 'pregTalk'
  344. killvar 'pregtime'
  345. killvar 'knowpreg'
  346. killvar 'denypreg'
  347. killvar '$wombthfath'
  348. end
  349. !!------------------------------------------------------------------------------------------------------------
  350. !! Arousal
  351. !!------------------------------------------------------------------------------------------------------------
  352. if magikDostup = 0:
  353. if pcs_horny < 100:pcs_horny += pcs_vag
  354. else
  355. if pcs_vag = 0:
  356. razeba = 0
  357. if pcs_horny > 0 and pcs_horny <= 50:pcs_horny -= 10
  358. if pcs_horny > 50:pcs_horny -= 25
  359. elseif pcs_vag > 0:
  360. if pregtimes = 0:
  361. if age < 18:
  362. razeba = 1
  363. if pcs_horny > 0 and pcs_horny <= 50:pcs_horny -= 5
  364. if pcs_horny > 50 and pcs_horny < 80:pcs_horny -= 10
  365. if pcs_horny >= 80:pcs_horny -= 20
  366. elseif age >= 18 and age < 21:
  367. razeba = 2
  368. if pcs_horny > 0 and pcs_horny <= 50:pcs_horny -= 1
  369. if pcs_horny > 50 and pcs_horny < 80:pcs_horny -= 5
  370. if pcs_horny >= 80:pcs_horny -= 10
  371. elseif age >= 21 and age < 25:
  372. razeba = 3
  373. if pcs_horny > 0 and pcs_horny <= 50:pcs_horny += 1
  374. if pcs_horny > 50 and pcs_horny < 80:pcs_horny -= 1
  375. if pcs_horny >= 80:pcs_horny -= 5
  376. elseif age >= 25 and age < 30:
  377. razeba = 4
  378. if pcs_horny > 0 and pcs_horny <= 50:pcs_horny += 5
  379. if pcs_horny > 50 and pcs_horny < 80:pcs_horny += 1
  380. if pcs_horny >= 80:pcs_horny -= 5
  381. elseif age >= 30:
  382. razeba = 5
  383. if pcs_horny > 0 and pcs_horny <= 50:pcs_horny += 10
  384. if pcs_horny > 50 and pcs_horny < 80:pcs_horny += 5
  385. if pcs_horny >= 80:pcs_horny += 1
  386. end
  387. elseif pregtimes > 0:
  388. if preg = 0:
  389. razeba = 5
  390. if pcs_horny > 0 and pcs_horny <= 50:pcs_horny += 10
  391. if pcs_horny > 50 and pcs_horny < 80:pcs_horny += 5
  392. if pcs_horny >= 80:pcs_horny += 1
  393. elseif preg > 0:
  394. razeba = 6
  395. if pcs_horny < 100:pcs_horny += pregchem / 240
  396. end
  397. end
  398. end
  399. end
  400. if pcs_horny < 0:pcs_horny = 0
  401. !!------------------------------------------------------------------------------------------------------------
  402. !reset Natasha Belova''s clothes
  403. if NatbelQW['seethroughwearing'] = 1: NatbelQW['seethroughwearing'] = 0
  404. !!------------------------------------------------------------------------------------------------------------
  405. !counter for Dimka avoidance
  406. if dimaFilm = 1 and dimaRudeBlock = 0:
  407. nodimkaK += 1
  408. DimkaWarnedToday = 0
  409. end
  410. !!------------------------------------------------------------------------------------------------------------
  411. !!Fame degradation
  412. gs 'fame', 'deg'
  413. !!Traits
  414. gs 'traits', 'overnight'
  415. !!------------------------------------------------------------------------------------------------------------
  416. !! Clothing wear and tear
  417. gs 'starenie'
  418. !!cocaine reduction
  419. if nark > 60:
  420. nark = 60
  421. elseif nark > 30:
  422. nark -= 3
  423. elseif nark > 0:
  424. nark -= 1
  425. end
  426. if pregchem > 240:fat += 1
  427. !!------------------------------------------------------------------------------------------------------------
  428. !! Pain
  429. !!------------------------------------------------------------------------------------------------------------
  430. if pain['head'] > 0:pain['head'] -= rand(1,3)
  431. if pain['hair'] > 0:pain['hair'] -= rand(1,3)
  432. if pain['ears'] > 0:pain['ears'] -= rand(1,3)
  433. if pain['eyebrows'] > 0:pain['eyebrows'] -= rand(1,3)
  434. if pain['eyes'] > 0:pain['eyes'] -= rand(1,3)
  435. if pain['cheeks'] > 0:pain['cheeks'] -= rand(1,3)
  436. if pain['nose'] > 0:pain['nose'] -= rand(1,3)
  437. if pain['mouth'] > 0:pain['mouth'] -= rand(1,3)
  438. if pain['lips'] > 0:pain['lips'] -= rand(1,3)
  439. if pain['tongue'] > 0:pain['tongue'] -= rand(1,3)
  440. if pain['throat'] > 0:pain['throat'] -= rand(1,3)
  441. if pain['neck'] > 0:pain['neck'] -= rand(1,3)
  442. if pain['back'] > 0:pain['back'] -= rand(1,3)
  443. if pain['asscheeks'] > 0:pain['asscheeks'] -= rand(1,3)
  444. if pain['asshole'] > 0:pain['asshole'] -= rand(1,3)
  445. if pain['hips'] > 0:pain['hips'] -= rand(1,3)
  446. if pain['thighs'] > 0:pain['thighs'] -= rand(1,3)
  447. if pain['legL'] > 0:pain['legL'] -= rand(1,3)
  448. if pain['legR'] > 0:pain['legR'] -= rand(1,3)
  449. if pain['feet'] > 0:pain['feet'] -= rand(1,3)
  450. if pain['toes'] > 0:pain['toes'] -= rand(1,3)
  451. if pain['shoulders'] > 0:pain['shoulders'] -= rand(1,3)
  452. if pain['armL'] > 0:pain['armL'] -= rand(1,3)
  453. if pain['armR'] > 0:pain['armR'] -= rand(1,3)
  454. if pain['hands'] > 0:pain['hands'] -= rand(1,3)
  455. if pain['fingers'] > 0:pain['fingers'] -= rand(1,3)
  456. if pain['chest'] > 0:pain['chest'] -= rand(1,3)
  457. if pain['breasts'] > 0:pain['breasts'] -= rand(1,3)
  458. if pain['nipples'] > 0:pain['nipples'] -= rand(1,3)
  459. if pain['ribs'] > 0:pain['ribs'] -= rand(1,3)
  460. if pain['tummy'] > 0:pain['tummy'] -= rand(1,3)
  461. if pain['pubic'] > 0:pain['pubic'] -= rand(1,3)
  462. if pain['vaginal'] > 0:pain['vaginal'] -= rand(1,3)
  463. if pain['labia'] > 0:pain['labia'] -= rand(1,3)
  464. if pain['clitoris'] > 0:pain['clitoris'] -= rand(1,3)
  465. if pain['urethra'] > 0:pain['urethra'] -= rand(1,3)
  466. if pain['cervix'] > 0:pain['cervix'] -= rand(1,3)
  467. if painpub = 2:
  468. if painpubday + 5 < daystart:
  469. $painpub = 'Your vulva is painfully sore.'
  470. painpub = 1
  471. painpubday = daystart
  472. elseif painpubday + 5 >= daystart:
  473. $painpub = 'Your vulva is painfully sore.'
  474. end
  475. elseif painpub = 1:
  476. if painpubday + 5 < daystart:
  477. $painpub = ''
  478. painpub = 0
  479. painpubday = daystart
  480. elseif painpubday + 5 >= daystart:
  481. $painpub = 'Your vulva is a little sore.'
  482. end
  483. end
  484. prezikProver += 1
  485. if pirs_pain_ton > 0:pirs_pain_ton -= 1
  486. if shorthair = 1:
  487. shorthairday += 1
  488. if shorthairday >= 45:shorthairday = 0 & shorthair = 0
  489. end
  490. !!------------------------------------------------------------------------------------------------------------
  491. !!Keeping Christina hating Sveta
  492. gs 'Zvereva_events', 'cikl'
  493. !!Updating Katja''s variables.
  494. gs 'katjaHomeTalk', 'cikl'
  495. if npc_rel['A69'] > 60 and rand(0,3) = 0:npc_rel['A69'] -= 1
  496. !!Making Sonia''s fall progress if the player do not see the scenes at the disco, by making it such that if at a Sunday her fall have not advanced this weekend it will automatically advance.
  497. gs 'soniadisco', 'cikl'
  498. dmishaevent = 0
  499. if Gspravka <= 0 and GspravkaT = 1:GspravkaT = 0 & Gspravka = 0
  500. if GspravkaT = 1:Gspravka -= 1
  501. if BurgerQW['IlyQW'] = 2 and BurgerQW['IlyQWPoliceDayCount'] = 30:BurgerQW['IlyQW'] = 3
  502. if BurgerQW['IlyQW'] = 2 and BurgerQW['IlyQWPoliceDayCount'] > 0 and BurgerQW['IlyQWPoliceDayCount'] < 30:BurgerQW['IvanQWPoliceDayCount'] += 1
  503. !!remove degradation for inhibition
  504. inhib_flr = inhib_lvl
  505. gs 'stat_sklattrib', 'daycall'
  506. !Update body measurements and base appearnce
  507. gs 'body_shape', 'DailyUpdate'
  508. gs 'AppearanceSystem', 'UpdateBaseAppearnce'
  509. gs 'body_desc'
  510. if husband > 0 and husbandrink ! 11:husbandrink = rand(0, 10)
  511. !!Pussy_Kats job settings
  512. inWorkYoungShop = 0
  513. if week = 1 and young_shop_work = 100: young_shop_work = 1
  514. if week = 5 and young_shop_work1 = 100: young_shop_work1 = 1
  515. if week = 1 and young_shop_work2 = 100: young_shop_work2 = 1
  516. husbandsexday = 0
  517. borsexkol = 0
  518. givisexday = 0
  519. if shantsr > 0:
  520. pay = shantsr * 5000
  521. karta += pay
  522. shantsr = 0
  523. end
  524. if shantbog > 0:
  525. :shantftb
  526. shantftbgrand = rand(0, 10)
  527. if shantftbgrand > 2:
  528. shantpopala += 1
  529. shantbog -= 1
  530. if shantbog > 0:jump 'shantftb'
  531. elseif shantftbgrand <= 2:
  532. karta += 30000
  533. shantbog -= 1
  534. if shantbog > 0:jump 'shantftb'
  535. end
  536. end
  537. petersexday = 0
  538. klismaday1 = 0
  539. !!ugly duckling start becoming a swan
  540. if uglyduck_flag = 1 and hotcat >= 5:
  541. killvar 'uglyduck_flag'
  542. gs 'npc_relationship', 'socialgroup_setting_boys', 10, 10, 10, 10, 0, 0
  543. grupvalue[1] += 100
  544. old_grupvalue[1] += 100
  545. end
  546. !! Resetting relationships that go over the max
  547. :toptemprel
  548. if temprel < aarraynumber:
  549. temprel +=1
  550. if npc_rel['A'+'<<temprel>>'] > 100:npc_rel['A'+'<<temprel>>'] = 100
  551. jump 'toptemprel'
  552. end
  553. killvar 'temprel'
  554. !!------------------------------------------------------------------------------------------------------------
  555. !! Banking
  556. !!------------------------------------------------------------------------------------------------------------
  557. !!MJ: Add some (daily) interest to the bank account.
  558. !!Not very realistic but won''t make anyone too rich.
  559. if bankAccount = 1:
  560. kartatotal = karta
  561. :kartaloop
  562. if kartatotal > 20000000:
  563. kartacount += 1
  564. largekarta[kartacount] = 20000000
  565. kartatotal -= 20000000
  566. jump 'kartaloop'
  567. else
  568. largekarta[0] = kartatotal
  569. end
  570. if karta >= 2000000:
  571. !! yearly interest of 2.3% recalculated into daily interest = 0.006% daily
  572. intrate = 60
  573. elseif karta >= 0:
  574. !! yearly interest of 1.15% recalculated into daily interest = 0.003% daily
  575. intrate = 30
  576. else
  577. !! yearly overdraft interest of 20% recalculated into daily interest = 0.055% daily
  578. intrate = 550
  579. end
  580. :intloop
  581. if kartacount > 0:
  582. smallmoneypos += (largekarta[kartacount] * intrate)
  583. if smallmoneypos >= 1000000 or smallmoneypos <= -1000000: karta += smallmoneypos / 1000000 & smallmoneypos = smallmoneypos mod 1000000
  584. largekarta[kartacount] = 0
  585. kartacount -= 1
  586. jump 'intloop'
  587. else
  588. smallmoneypos += (largekarta[0] * intrate)
  589. largekarta[0] = 0
  590. if kartacount ! 0: kartacount = 0
  591. end
  592. if smallmoneypos >= 1000000 or smallmoneypos <= -1000000:
  593. karta += smallmoneypos / 1000000
  594. smallmoneypos = smallmoneypos mod 1000000
  595. end
  596. if atmDeposit > 0 and atmDepositDate <= daystart:
  597. karta += atmDeposit
  598. atmDeposit = 0
  599. end
  600. end
  601. !!------------------------------------------------------------------------------------------------------------
  602. !! Payments
  603. !!------------------------------------------------------------------------------------------------------------
  604. if day = 25:
  605. !! meynold payment
  606. if mey_vika['mey_vika_qw'] >= 35 and mey_tamara['help_count'] < 10 and mey_tamara['qw_end'] = 0:
  607. karta += 10000
  608. '<b><font color=green>For your efforts aunt Tamara gave you 10,000 rubles</font></b>'
  609. mey_tamara['help_count'] = 0
  610. elseif mey_vika['mey_vika_qw'] >= 35 and mey_tamara['help_count'] >= 10 and mey_tamara['qw_end'] = 0:
  611. karta += 15000
  612. '<b><font color=green>For your efforts aunt Tamara gave you 15,000 rubles</font></b>'
  613. mey_tamara['help_count'] = 0
  614. end
  615. if BurgerQW['Secretary'] = 1 and BurgerQW['SecretaryTimesWorked'] > 0 and paydaybistrosec = 0:
  616. Pay = BurgerQW['SecretaryTimesWorked'] * 1250
  617. BurgerQW['SecretaryTimesWorked'] = 0
  618. karta += Pay
  619. paydaybistrosec = 1
  620. '<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>'
  621. end
  622. if workKafe = 1 and paydayKafe = 0:
  623. paydayKafe = 1
  624. pay = smenaKafe * 600
  625. karta += pay
  626. smenaKafe = 0
  627. '<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>'
  628. end
  629. if workhosp = 1 and nopaypoly = 0:
  630. pay = smena * 1000
  631. karta += pay
  632. smena = 0
  633. nopaypoly = 1
  634. '<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>'
  635. end
  636. if worksalon = 1 and nopaysalon = 0:
  637. pay = smenaSalon * 1560
  638. karta += pay
  639. smenaSalon = 0
  640. nopaysalon = 1
  641. '<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>'
  642. end
  643. if tanwork = 1 and nopaytanwork = 0:
  644. nopaytanwork = 1
  645. karta += 10000
  646. '<b><font color="green">Your salary of 10,000 <b>₽</b> has been paid into your bank account for your work as a house maid.</font></b>'
  647. end
  648. if workSec = 1 and paydaySec = 0:
  649. paydaySec = 1
  650. pay = sekDay * 1500
  651. karta += pay
  652. sekDay = 0
  653. '<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>'
  654. end
  655. if workFabrika = 1:
  656. pay = smenaFabrika * 600
  657. smenaFabrika = 0
  658. karta += pay
  659. '<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>'
  660. end
  661. if husband > 0 and paydayHusb = 0:
  662. paydayHusb = 1
  663. if husbFin = 0:huspay = 20000
  664. if husbFin = 1:huspay = 30000
  665. if husbFin = 2:huspay = 40000
  666. karta += huspay
  667. '<b><font color="green">Your husband has paid <<huspay>> <b>₽</b> into your bank account.</font></b>'
  668. end
  669. if func('uniutil', 'scholarship' , 'is_active') and scholarshipday = 0:
  670. scholarshipday = 1
  671. karta += func('uniutil', 'scholarship', 'get')
  672. '<b><font color="green">You have received '+func('uniutil', 'scholarship', 'get')+' <b>₽</b> from your scholarship.</font></b>'
  673. end
  674. ! Utilities for all apartments.
  675. if (home_owned[1] = 1 or home_owned[1] = 2 or home_owned[4] > 0 or home_owned[5] = 2) and electroday = 0:
  676. gs 'housing', 'util'
  677. if bankAccount = 1 and karta >= elektro:
  678. '<b><font color="green"><<elektro>> <b>₽</b> for utilities, has been automatically deducted from your bank account.</font></b>'
  679. electroday = 1
  680. if elektro >= 2000:
  681. elektro = 2000 + rand(0, 100)
  682. karta -= elektro * hcount_util
  683. end
  684. elseif bankAccount = 1 and karta + bankDebtLimit >= elektro:
  685. '<b><font color="green"><<elektro>> <b>₽</b> for utilities, has been automatically deducted from your bank account and overdraw facility. Please contact your bank.</font></b>'
  686. electroday = 1
  687. if elektro >= 2000:
  688. elektro = 2000 + rand(0, 100)
  689. karta -= elektro * hcount_util
  690. end
  691. elseif bankAccount = 0 and money >= elektro:
  692. '<b><font color="red">You currently do not have a bank account setup for automatic utilities payments. <<elektro>> <b>₽</b> has been deducted from your cash holdings.</font></b>'
  693. electroday = 1
  694. if elektro >= 2000:
  695. elektro = 2000 + rand(0, 100)
  696. money -= elektro * hcount_util
  697. end
  698. else
  699. '<b><font color="red">Your card was declined during automatic debit of <<elektro>> <b>₽</b>, for automatic utilities payment.</font></b>'
  700. end
  701. end
  702. ! Cable for all apartments
  703. if kabel > 0 and kabelday = 0:
  704. gs 'housing', 'cable'
  705. if bankAccount = 1 and karta >= (300 * hcount_cable):
  706. '<b><font color="green">300 <b>₽</b> has been deducted from your bank account, for you cable TV subscription.</font></b>'
  707. kabelday = 1
  708. karta -= 300 * hcount_cable
  709. elseif bankAccount = 1 and karta + bankDebtLimit >= (300 * hcount_cable):
  710. '<b><font color="green">300 <b>₽</b> has been deducted from your bank account and overdraw facility, for you cable TV subscription.</font></b>'
  711. kabelday = 1
  712. karta -= 300 * hcount_cable
  713. elseif bankAccount = 0 and money >= (300 * hcount_cable):
  714. '<b><font color="red">You currently do not have a bank account setup for automatic payment of your cable TV subscription. 300 <b>₽</b> has been deducted from your cash holdings.</font></b>'
  715. kabelday = 1
  716. money -= 300 * hcount_cable
  717. else
  718. '<b><font color="red">Your card was declined during automatic debit of 300 <b>₽</b> for cable TV subscription.</font></b>'
  719. end
  720. end
  721. end
  722. if day ! 25:
  723. if paydayHusb = 1:paydayHusb = 0
  724. if workKafe = 1 and paydayKafe = 1:paydayKafe = 0
  725. if workSec = 1 and paydaySec = 1:paydaySec = 0
  726. if (home_owned[1] = 1 or home_owned[4] > 0) and haday = 1:haday = 0
  727. if (home_owned[1] > 0 or home_owned[4] > 0 or home_owned[5] = 2) and electroday = 1:electroday = 0
  728. if (home_owned[1] > 0 or home_owned[4] > 0 or home_owned[5] = 3) and kabel > 0 and kabelday = 1:kabelday = 0
  729. if scholarshipday = 1:scholarshipday = 0
  730. if nopaytanwork = 1:nopaytanwork = 0
  731. if nopaypoly = 1:nopaypoly = 0
  732. if nopaysalon = 1:nopaysalon = 0
  733. if paydaybistrosec = 1:paydaybistrosec = 0
  734. end
  735. if sdaday = day and sdamonth = month and home_owned[1] = 3:
  736. home_owned[1] = 2
  737. '<b><font color="red">Your tenants have moved out and your apartment is now vacant.</font></b>'
  738. !msg 'Your tenants have moved out and your apartment is now vacant.'
  739. end
  740. !!----------------------------------------
  741. !! Rent
  742. !!----------------------------------------
  743. if home_owned[1] = 1 or home_owned[4] > 0:
  744. gs 'housing', 'rent'
  745. ! Rent for the city apartment
  746. if home_owned[1] = 1:
  747. if ArendHouseSL <= 2:
  748. !From bank
  749. if bankAccount = 1 and karta >= home_rent[1]:
  750. '<b><font color="green">Your rent payment of <<home_rent[1]>> <b>₽</b> for your city apartment, has automatically been deducted from your bank account.</font></b>'
  751. karta -= home_rent[1]
  752. ArendHouseSL += ArendHouseSL_due
  753. elseif bankAccount = 1 and karta + bankDebtLimit >= home_rent[1]:
  754. '<b><font color="green">Your rent payment of <<home_rent[1]>> <b>₽</b> for your city apartment, has automatically been deducted from your bank account and overdraw facility. Please contact your bank regarding your overdraw repayment.</font></b>'
  755. karta -= home_rent[1]
  756. ArendHouseSL += ArendHouseSL_due
  757. elseif bankAccount = 0:
  758. '<b><font color="red">You currently do not have a bank account setup for automatic rent deduction of <<home_rent[1]>> <b>₽</b> for your city apartment. To avoid eviction, please make manual payment as soon as possible.</font></b>'
  759. else
  760. nl
  761. '<b><b><font color="red">Your card was declined during automatic rent deduction of <<home_rent[1]>> <b>₽</b> for your city apartment. To avoid eviction, please rectify as soon as possible.</font></b>'
  762. end
  763. end
  764. end
  765. ! Rent for the Pushkin apartment
  766. if home_owned[4] > 0:
  767. if ArendHouseSL4 <= 2:
  768. !From bank
  769. if bankAccount = 1 and karta >= home_rent[4]:
  770. '<b><font color="green">Your rent payment of <<home_rent[4]>> <b>₽</b> for your Pushkin apartment, has automatically been deducted from your bank account.</font></b>'
  771. karta -= home_rent[4]
  772. ArendHouseSL4 += ArendHouseSL4_due
  773. elseif bankAccount = 1 and karta + bankDebtLimit >= home_rent[4]:
  774. '<b><font color="green">Your rent payment of <<home_rent[4]>> <b>₽</b> for your Pushkin apartment, has automatically been deducted from your bank account and overdraw facility. Please contact your bank regarding your overdraw repayment.</font></b>'
  775. karta -= home_rent[4]
  776. ArendHouseSL4 += ArendHouseSL4_due
  777. elseif bankAccount = 0:
  778. '<b><font color="red">You currently do not have a bank account setup for automatic rent deduction of <<home_rent[4]>> <b>₽</b> for your Pushkin apartment. To avoid eviction, please make manual payment as soon as possible.</font></b>'
  779. else
  780. nl
  781. '<b><b><font color="red">Your card was declined during automatic rent deduction of <<home_rent[4]>> <b>₽</b> for your Pushkin apartment. To avoid eviction, please rectify as soon as possible.</font></b>'
  782. end
  783. end
  784. end
  785. end
  786. if home_owned[1] = 1 and ArendHouseSL <= 0: ArendHouseSL = 0 & home_owned[1] = 0
  787. if home_owned[4] > 0 and ArendHouseSL4 <= 0: ArendHouseSL4 = 0 & home_owned[4] = 0
  788. if home_owned[1] = 1: ArendHouseSL -= 1
  789. if home_owned[4] > 0: ArendHouseSL4 -= 1
  790. !!------------------------------------------------------------------------------------------------------------
  791. killvar 'holyday'
  792. killvar 'kanikuli'
  793. killvar 'pcs_ate'
  794. killvar 'pcs_drank'
  795. !! THIS IS THE OLD SYSTEM. Only keeping this in while it''s still in use as reference for the old variables, otherwise THESE VALUES ARE NOT THE CORRECT ONES FOR NEW VARIABLES
  796. !!sisboyparty
  797. !!-1 - don''t go to the party
  798. !!0 - don''t know about parties
  799. !!1 - knows about the parties
  800. !!2 - agreed to go to the party
  801. !!3 - Missed the party
  802. !!suspension ends
  803. if suspended['day'] = daystart: suspended['on'] = 0
  804. if storyline = 1:
  805. !!Party refresh if you didn''t see sis
  806. if week = 1 and sisboyparty ! 2:
  807. if sisterQW['party'] = -1: sisterQW['party'] = 0
  808. if sisboypartyQW >= 2 and sisboyparty > 0:
  809. sisboyparty_day = daystart + rand(3,5)
  810. end
  811. end
  812. if sisboyparty = 2 and sisboyparty_day + 1 < daystart: sisboyparty = 3
  813. if SchoolAtestat = 0 and SchoolBlock = 0:
  814. if month = 12 and day > 25:
  815. if day < 31:
  816. $holyday = '<b>Winter Break in <<32-day>> days.</b>'
  817. else
  818. $holyday = '<b>Winter Break starts tomorrow.</b>'
  819. end
  820. elseif month = 1 and day <= 15:
  821. kanikuli = 2
  822. if day < 13:
  823. $holyday = '<b>Winter Break.</b>'
  824. elseif day < 15:
  825. $holyday = '<b>Winter Break ends in <<16-day>> days.</b>'
  826. else
  827. $holyday = '<b>Last day of Winter Break.</b>'
  828. end
  829. elseif month = 3 and day > 13:
  830. if day < 19:
  831. $holyday = '<b>Spring Break starts in <<20-day>> days.</b>'
  832. elseif day = 19:
  833. $holyday = '<b>Spring Break starts tomorrow.</b>'
  834. elseif day >= 20 and day <= 26:
  835. kanikuli = 3
  836. if day < 24:
  837. $holyday = '<b>Spring Break.</b>'
  838. elseif day < 26:
  839. $holyday = '<b>Spring Break ends in <<27-day>> days.</b>'
  840. else
  841. $holyday = '<b>Last day of Spring Break.</b>'
  842. end
  843. end
  844. elseif month = 5:
  845. if year = 2017:
  846. if day = 25:
  847. kanikuli = 6
  848. SchoolAtestat = -1
  849. $holyday = '<b>Your graduation is today. Be there by 8:00.</b>'
  850. elseif day = 24:
  851. $holyday = '<b>Your graduation is tomorrow. Be there by 8:00.</b>'
  852. elseif day >= 19:
  853. $holyday = '<b>Your graduation is in <<26-day>> days.</b>'
  854. end
  855. elseif day >= 25:
  856. if day = 31:
  857. $holyday = '<b>Summer Break starts tomorrow.</b>'
  858. else
  859. $holyday = '<b>Summer Break starts in <<32-day>> days.</b>'
  860. end
  861. end
  862. elseif month = 6 or month = 7 or month = 8:
  863. kanikuli = 4
  864. if month = 8 and day >= 25:
  865. if day = 31:
  866. $holyday = '<b>Last day of Summer Break.</b>'
  867. else
  868. $holyday = '<b>Summer Break ends in <<32-day>> days.</b>'
  869. end
  870. else
  871. $holyday = '<b>Summer Break.</b>'
  872. end
  873. !! start inc 'I put it here because I want to reset these variables during the summer, they are related to cheerleading and it is useful just in case that PC will be part of the team for more than one year.'
  874. killvar 'first_time_outside_in_cold_weather'
  875. killvar 'first_time_doing_basketball'
  876. killvar 'first_time_spring_football_match'
  877. !! end inc
  878. elseif month = 10 and day >= 29:
  879. $holyday = '<b>Autumn Break starts in <<35-day>> days.</b>'
  880. elseif month = 11:
  881. if day < 3:
  882. $holyday = '<b>Autumn Break starts in <<4-day>> days.</b>'
  883. elseif day = 3:
  884. $holyday = '<b>Autumn Break starts tomorrow.</b>'
  885. elseif day < 6:
  886. kanikuli = 1
  887. $holyday = '<b>Autumn Break.</b>'
  888. elseif day < 11:
  889. kanikuli = 1
  890. $holyday = '<b>Autumn Break ends in <<12-day>> days.</b>'
  891. elseif day = 11:
  892. kanikuli = 1
  893. $holyday = '<b>Last day of Autumn Break.</b>'
  894. end
  895. end
  896. if kanikuli = 0 and week < 6:
  897. if week = 1:
  898. !!The start and end values for i have to be changed if more female schoolgirl npcs are added to the game
  899. i = 11
  900. :hotcat_calc_jump
  901. i += 1
  902. if hotcat_rating['A<<i>>'] = 0: jump 'hotcat_calc_jump'
  903. switch_rand = rand(1,100)
  904. if hotcat_movement['A<<i>>'] = 0 and switch_rand < 21:
  905. hotcat_rating['A<<i>>'] -= 1
  906. hotcat_movement['A<<i>>'] -= 1
  907. elseif hotcat_movement['A<<i>>'] = 0 and switch_rand > 80:
  908. hotcat_rating['A<<i>>'] += 1
  909. hotcat_movement['A<<i>>'] += 1
  910. elseif hotcat_movement['A<<i>>'] = 1 and switch_rand > 40:
  911. hotcat_rating['A<<i>>'] -= 1
  912. hotcat_movement['A<<i>>'] -= 1
  913. elseif hotcat_movement['A<<i>>'] = -1 and switch_rand > 40:
  914. hotcat_rating['A<<i>>'] += 1
  915. hotcat_movement['A<<i>>'] += 1
  916. end
  917. if i < 145: jump 'hotcat_calc_jump'
  918. killvar 'i'
  919. killvar 'switch_rand'
  920. end
  921. !! Resetting the late flag
  922. if late = 1: late = 0
  923. end
  924. !!Social grup changes
  925. !!Change from relatonship with other students.
  926. gs 'gschool_socialchg', 'group_student_rel_change'
  927. !!Decay for the school groups
  928. if grupvalue[1] > 0:
  929. grupvalue[1] -= rand(0,1)
  930. else
  931. grupvalue[1] = 0
  932. end
  933. if grupvalue[2] > 0:
  934. grupvalue[2] -= rand(0,1)
  935. else
  936. grupvalue[2] = 0
  937. end
  938. if grupvalue[3] > 0:
  939. grupvalue[3] -= rand(0,1)
  940. else
  941. grupvalue[3] = 0
  942. end
  943. if grupvalue[4] > 0:
  944. grupvalue[4] -= rand(0,1)
  945. else
  946. grupvalue[4] = 0
  947. end
  948. !!Maximum increase for grupvalues is 10 and max decay is 30
  949. if oldgrupvalue_set = 0:
  950. oldgrupvalue_set = 1
  951. old_grupvalue[1] = grupvalue[1]
  952. old_grupvalue[2] = grupvalue[2]
  953. old_grupvalue[3] = grupvalue[3]
  954. old_grupvalue[4] = grupvalue[4]
  955. else
  956. if old_grupvalue[1] + 10 < grupvalue[1]: grupvalue[1] = old_grupvalue[1] + 10
  957. if old_grupvalue[2] + 10 < grupvalue[2]: grupvalue[2] = old_grupvalue[2] + 10
  958. if old_grupvalue[3] + 10 < grupvalue[3]: grupvalue[3] = old_grupvalue[3] + 10
  959. if old_grupvalue[4] + 10 < grupvalue[4]: grupvalue[4] = old_grupvalue[4] + 10
  960. if old_grupvalue[1] - 30 > grupvalue[1]: grupvalue[1] = old_grupvalue[1] - 30
  961. if old_grupvalue[2] - 30 > grupvalue[2]: grupvalue[2] = old_grupvalue[2] - 30
  962. if old_grupvalue[3] - 30 > grupvalue[3]: grupvalue[3] = old_grupvalue[3] - 30
  963. if old_grupvalue[4] - 30 > grupvalue[4]: grupvalue[4] = old_grupvalue[4] - 30
  964. end
  965. !!Limit to max school group values
  966. if grupvalue[1] > 1000: grupvalue[1] = 1000
  967. if grupvalue[2] > 1000: grupvalue[2] = 1000
  968. if grupvalue[3] > 1000: grupvalue[3] = 1000
  969. if grupvalue[4] > 1000: grupvalue[4] = 1000
  970. old_grupvalue[1] = grupvalue[1]
  971. old_grupvalue[2] = grupvalue[2]
  972. old_grupvalue[3] = grupvalue[3]
  973. old_grupvalue[4] = grupvalue[4]
  974. elseif SchoolAtestat = -1:
  975. if home_owned[2] = 0:
  976. $holyday = '<b>You missed your graduation. You could pick up your diploma at the school.</b>'
  977. else
  978. $holyday = '<b>You missed your graduation. Maybe your mother picked up your diploma.</b>'
  979. end
  980. end
  981. !!Brother''s dick growth as he gets older
  982. !Commented out till some future time
  983. !if kolka_dick_day + 30 < daystart and npc_dick['A34'] < 26:
  984. ! kolka_dick_day = daystart
  985. ! npc_dick['A34'] += 1
  986. !end
  987. !if npc_dick['A34'] < 20 and npc_dick['A34'] > 16:
  988. ! $npc_thdick['A34'] = 'well proportioned'
  989. !elseif npc_dick['A34'] >= 20 and npc_dick['A34'] <= 26:
  990. ! $npc_thdick['A34'] = 'thick'
  991. !end
  992. !! Calcualting the increase/decreas of the grade each week.
  993. gs 'gschool', 'weekly grade update'
  994. end
  995. killvar 'natholi'
  996. if month = 1 and day >= 1 and day <= 8:
  997. $natholi = 'New Year holidays'
  998. natholi = 1
  999. if day = 1:$natholi += ', New Year'
  1000. if day = 7:$natholi += ', Christmas'
  1001. end
  1002. if month = 2 and day = 23:$natholi = 'Defender of Fatherland Day' & natholi = 1
  1003. if month = 3 and day = 8:$natholi = 'Women''s Day' & natholi = 1
  1004. if month = 5 and day = 1:$natholi = 'Spring and Labor Day' & natholi = 1
  1005. if month = 5 and day = 2:$natholi = 'National holiday' & natholi = 1
  1006. if month = 5 and day = 9:$natholi = 'Victory Day' & natholi = 1
  1007. if month = 6 and day = 12:$natholi = 'Russia Day' & natholi = 1
  1008. if month = 6 and day = 13:$natholi = 'National holiday' & natholi = 1
  1009. if month = 11 and day = 4:$natholi = 'Unity Day' & natholi = 1
  1010. if natholi = 1:
  1011. if $holyday ! '': $holyday += '<br>'
  1012. $holyday += $natholi
  1013. end
  1014. !!------------------------------------------------------------------------------------------------------------------------
  1015. !!Setting the the weeks in the university semester and makeing sure that the gades are calculated at the right times
  1016. gs 'uni_lessons', 'cikl'
  1017. !!------------------------------------------------------------------------------------------------------------------------
  1018. if bcream_used >= 1:
  1019. bcream_used = 0
  1020. temp = rand(0,max(nbsize-genbsize+5,5)) / max(nbsize-genbsize,1)
  1021. if temp > 0: temp = 1
  1022. nbsize += temp
  1023. if temp > 0:'Feels like your breasts have grown slightly.'
  1024. end
  1025. if steroid_dose >= 1:
  1026. if lashair < 1:
  1027. pcs_pubes += steroid_dose
  1028. pcs_leghair += steroid_dose
  1029. end
  1030. steroid_dose = 0
  1031. end
  1032. if aphrodisiac_overdose = 1:aphrodisiac_overdose = 0
  1033. if aphrodisiac_timer ! 0:aphrodisiac_timer = 0
  1034. if mentats_dose = 1:
  1035. mentats_dose = 0
  1036. elseif mentats_dose > 1:
  1037. pain['head'] += 20 * mentats_dose
  1038. mentats_dose = 0
  1039. end
  1040. !! vovan, from 1.2.5
  1041. hunters_check = 0
  1042. mushroom_pickers = 0
  1043. mira_go_river = 0
  1044. forestpicnic = 0
  1045. if Mira_no > 0: Mira_no -= 1
  1046. if Mira_no < 0: Mira_no = 0
  1047. !! new grandparent chore stuff, for 0.8.0
  1048. if gadstay = 1 and lost_girl = 0:
  1049. if daystart > (grandmaQW['last_day_helped'] + 3) and daystart > (grandpaQW['last_day_helped'] + 3):
  1050. if (daystart - grandmaQW['last_day_helped']) <= (daystart - grandpaQW['last_day_helped']):
  1051. 'You haven''t helped your grandparents with any chores in <<daystart - grandmaQW[''last_day_helped'']>> days. You should help out more regularly to stay on your grandparents'' good side.'
  1052. else
  1053. 'You haven''t helped your grandparents with any chores in <<daystart - grandpaQW[''last_day_helped'']>> days. You should help out more regularly to stay on your grandparents'' good side.'
  1054. end
  1055. grandmaQW['help_amount'] -= 1
  1056. end
  1057. end
  1058. !! disappointing grandma
  1059. if grandmaQW['chore_clean_floor'] = 1 or grandmaQW['chore_clean_floor'] = 2:
  1060. grandmaQW['chore_clean_floor'] = 0
  1061. grandmaQW['disappointment'] = 1
  1062. elseif grandmaQW['chore_wash_clothes'] = 1 or grandmaQW['chore_wash_clothes'] = 2:
  1063. grandmaQW['chore_wash_clothes'] = 0
  1064. grandmaQW['disappointment'] = 1
  1065. elseif grandmaQW['chore_milk_cow'] = 1 or grandmaQW['chore_milk_cow'] = 2:
  1066. grandmaQW['chore_milk_cow'] = 0
  1067. grandmaQW['disappointment'] = 1
  1068. elseif grandmaQW['chore_groceries'] = 1 or grandmaQW['chore_groceries'] = 2:
  1069. grandmaQW['chore_groceries'] = 0
  1070. grandmaQW['disappointment'] = 1
  1071. elseif grandmaQW['chore_can_mushrooms'] = 1 or grandmaQW['chore_can_mushrooms'] = 2:
  1072. grandmaQW['chore_can_mushrooms'] = 0
  1073. grandmaQW['disappointment'] = 1
  1074. elseif grandmaQW['chore_can_berries'] = 1 or grandmaQW['chore_can_berries'] = 2:
  1075. grandmaQW['chore_can_berries'] = 0
  1076. grandmaQW['disappointment'] = 1
  1077. elseif grandmaQW['chore_can_veggies'] = 1 or grandmaQW['chore_can_veggies'] = 2:
  1078. grandmaQW['chore_can_veggies'] = 0
  1079. grandmaQW['disappointment'] = 1
  1080. elseif grandmaQW['chore_feed_chickens'] = 1 or grandmaQW['chore_feed_chickens'] = 2:
  1081. grandmaQW['chore_feed_chickens'] = 0
  1082. grandmaQW['disappointment'] = 1
  1083. elseif grandmaQW['chore_work_in_garden'] = 1 or grandmaQW['chore_work_in_garden'] = 2:
  1084. grandmaQW['chore_work_in_garden'] = 0
  1085. grandmaQW['disappointment'] = 1
  1086. elseif grandmaQW['chore_water_garden'] = 1 or grandmaQW['chore_water_garden'] = 2:
  1087. grandmaQW['chore_water_garden'] = 0
  1088. grandmaQW['disappointment'] = 1
  1089. elseif grandmaQW['chore_collect_strawberries'] = 1 or grandmaQW['chore_collect_strawberries'] = 2:
  1090. grandmaQW['chore_collect_strawberries'] = 0
  1091. grandmaQW['disappointment'] = 1
  1092. elseif grandmaQW['chore_collect_fruit'] = 1 or grandmaQW['chore_collect_fruit'] = 2:
  1093. grandmaQW['chore_collect_fruit'] = 0
  1094. grandmaQW['disappointment'] = 1
  1095. elseif grandmaQW['chore_harvest_garden'] = 1 or grandmaQW['chore_harvest_garden'] = 2:
  1096. grandmaQW['chore_harvest_garden'] = 0
  1097. grandmaQW['disappointment'] = 1
  1098. elseif grandmaQW['chore_gather_mushrooms'] = 1 or grandmaQW['chore_gather_mushrooms'] = 2:
  1099. grandmaQW['chore_gather_mushrooms'] = 0
  1100. grandmaQW['chore_mushroom_quantity'] = 0
  1101. grandmaQW['disappointment'] = 1
  1102. elseif grandmaQW['chore_gather_berries'] = 1 or grandmaQW['chore_gather_berries'] = 2:
  1103. grandmaQW['chore_gather_berries'] = 0
  1104. grandmaQW['chore_berry_quantity'] = 0
  1105. grandmaQW['disappointment'] = 1
  1106. elseif grandmaQW['chore_gather_both'] = 1 or grandmaQW['chore_gather_both'] = 2:
  1107. grandmaQW['chore_gather_both'] = 0
  1108. grandmaQW['chore_mushroom_quantity'] = 0
  1109. grandmaQW['chore_berry_quantity'] = 0
  1110. grandmaQW['disappointment'] = 1
  1111. end
  1112. !! disappointing grandpa
  1113. if grandpaQW['chore_fetch_firewood'] = 1 or grandpaQW['chore_fetch_firewood'] = 2:
  1114. grandpaQW['chore_fetch_firewood'] = 0
  1115. grandpaQW['disappointment'] = 1
  1116. elseif grandpaQW['chore_feed_horse'] = 1 or grandpaQW['chore_feed_horse'] = 2:
  1117. grandpaQW['chore_feed_horse'] = 0
  1118. grandpaQW['disappointment'] = 1
  1119. elseif grandpaQW['chore_feed_cow'] = 1 or grandpaQW['chore_feed_cow'] = 2:
  1120. grandpaQW['chore_feed_cow'] = 0
  1121. grandpaQW['disappointment'] = 1
  1122. elseif grandpaQW['chore_clean_yard'] = 1 or grandpaQW['chore_clean_yard'] = 2:
  1123. grandpaQW['chore_clean_yard'] = 0
  1124. grandpaQW['disappointment'] = 1
  1125. elseif grandpaQW['chore_feed_boar'] = 1 or grandpaQW['chore_feed_boar'] = 2:
  1126. grandpaQW['chore_feed_boar'] = 0
  1127. grandpaQW['disappointment'] = 1
  1128. elseif grandpaQW['chore_bathe_horse'] = 1 or grandpaQW['chore_bathe_horse'] = 2:
  1129. grandpaQW['chore_bathe_horse'] = 0
  1130. grandpaQW['chore_bathe_horse_prog'] = 0
  1131. grandpaQW['disappointment'] = 1
  1132. elseif grandpaQW['chore_brush_horse'] = 1 or grandpaQW['chore_brush_horse'] = 2:
  1133. grandpaQW['chore_brush_horse'] = 0
  1134. grandpaQW['disappointment'] = 1
  1135. elseif grandpaQW['chore_lead_horse_to_field'] = 1 or grandpaQW['chore_lead_horse_to_field'] = 2:
  1136. grandpaQW['chore_lead_horse_to_field'] = 0
  1137. grandpaQW['disappointment'] = 1
  1138. elseif grandpaQW['chore_herd_cattle'] = 1 or grandpaQW['chore_herd_cattle'] = 2:
  1139. grandpaQW['chore_herd_cattle'] = 0
  1140. grandpaQW['disappointment'] = 1
  1141. elseif grandpaQW['chore_lead_cow_to_field'] = 1 or grandpaQW['chore_lead_cow_to_field'] = 2:
  1142. grandpaQW['chore_lead_cow_to_field'] = 0
  1143. grandpaQW['disappointment'] = 1
  1144. elseif grandpaQW['chore_gather_mushrooms'] = 1 or grandpaQW['chore_gather_mushrooms'] = 2:
  1145. grandpaQW['chore_gather_mushrooms'] = 0
  1146. grandpaQW['chore_mushroom_quantity'] = 0
  1147. grandpaQW['disappointment'] = 1
  1148. elseif grandpaQW['chore_gather_berries'] = 1 or grandpaQW['chore_gather_berries'] = 2:
  1149. grandpaQW['chore_gather_berries'] = 0
  1150. grandpaQW['chore_berry_quantity'] = 0
  1151. grandpaQW['disappointment'] = 1
  1152. elseif grandpaQW['chore_gather_both'] = 1 or grandpaQW['chore_gather_both'] = 2:
  1153. grandpaQW['chore_gather_both'] = 0
  1154. grandpaQW['chore_mushroom_quantity'] = 0
  1155. grandpaQW['chore_berry_quantity'] = 0
  1156. grandpaQW['disappointment'] = 1
  1157. elseif grandpaQW['chore_bale_hay'] = 1 or grandpaQW['chore_bale_hay'] = 2:
  1158. grandpaQW['chore_bale_hay'] = 0
  1159. grandpaQW['disappointment'] = 1
  1160. end
  1161. !! grandparents use root cellar
  1162. if boletus_stored > 0: boletus_stored -= rand(0,1)
  1163. if bilberry_stored > 0: bilberry_stored -= rand(0,1)
  1164. if boletus_stored < 0: boletus_stored = 0
  1165. if bilberry_stored < 0: bilberry_stored = 0
  1166. !! end of new grandparent chore stuff, for 0.8.0
  1167. if catout ! 0: catout = 0
  1168. if feedcat ! 0: feedcat = 0
  1169. loc_count = ARRSIZE('$CloLosLoc')
  1170. i = loc_count - 1
  1171. :loopCloLoc
  1172. $CloLoc = $CloLosLoc[i]
  1173. CloLostOn = CloLosDay[$CloLoc]
  1174. if CloLostOn + RAND(7,14) < daystart :
  1175. gs 'clothing', 'recover_lost_clothes', $CloLoc, 2
  1176. end
  1177. i -=1
  1178. if i > -1 :jump 'loopCloLoc'
  1179. if vidageday > 1080: vidageday = 1080
  1180. if blizoruk < 10: blizoruk -= 1
  1181. if blizoruk < 100: blizoruk -= rand(0,1)
  1182. if blizoruk < 0: blizoruk = 0
  1183. !!------------------------------------------------------------------------------------------------------------------------
  1184. !!C and b array cleaning
  1185. if InSleep = 1: gs 'npc','cleanarrays'
  1186. !!------------------------------------------------------------------------------------------------------------
  1187. !!-------------Family schedule variables----------------------------------------------------------------------
  1188. !! 23 = kitchen
  1189. !! 24 = Living room
  1190. !! 25 = bathroom
  1191. !! 26 = Svetas room
  1192. if week = 6:
  1193. momclean1 = rand(23,26)
  1194. else
  1195. momclean1 = rand(23,24)
  1196. end
  1197. if rand(0,1) = 0:
  1198. momclean2 = 23
  1199. else
  1200. momclean2 = 25
  1201. end
  1202. !!-------------Therapist Route schedule variables----------------------------------------------------------------------
  1203. !! 23 = kitchen
  1204. !! 24 = Living room
  1205. !! 25 = bathroom
  1206. !! 26 = Master''s room
  1207. if therapistWantsSlave > 0:
  1208. annaclean1 = rand(23,26)
  1209. end
  1210. !!------------------------------------------------------------------------------------------------------------
  1211. !!-------------Family Dog----------------------------------------------------------------------
  1212. if $status['dog'] ! 'blocked' and rex['owned'] = 1:
  1213. rex['timer_day'] = daystart
  1214. !!Daily decay
  1215. rex['relationship'] -= 1
  1216. !!Chores
  1217. if cheat['dog_rel'] = 0 and rex['gadukino_day'] ! daystart:
  1218. npc_rel['A29'] -= iif(rex['count_walk'] + rex['count_feed'] = 0, -1, (rex['count_walk'] + rex['count_feed']))
  1219. rex['relationship'] -= iif(rex['count_walk'] + rex['count_feed'] = 0, -1, (rex['count_walk'] + rex['count_feed']))
  1220. end
  1221. rex['count_run'] = 0
  1222. rex['count_walk'] = rex['count_walk_base']
  1223. rex['timer_walk'] = 0
  1224. rex['count_feed'] = rex['count_feed_base']
  1225. rex['timer_feed'] = 0
  1226. if week = 1:
  1227. if cheat['dog_rel'] = 0:
  1228. npc_rel['A29'] -= rex['count_bath']
  1229. rex['relationship'] -= (rex['count_bath'] * 5)
  1230. end
  1231. rex['count_bath'] = rex['count_bath_base']
  1232. end
  1233. end
  1234. !!------------------------------------------------------------------------------------------------------------
  1235. !!---------- School related schedule -------------------------------------------------------------------------
  1236. starlets_on = iif( ( (week = 5 and odd_week = 0) or (week = 1 or week = 3 or week >= 6) ) and natholi = 0,1,0)
  1237. cheerleaders_on = iif( ( (week = 5 and odd_week = 1) or (week = 2 or week = 4) ) and (natholi = 0 and (month >9 or month <6)) ,1,0)
  1238. if starlets['late_message'] = 1: starlets['late_message'] = 0
  1239. !!------------------------------------------------------------------------------------------------------------
  1240. !!---------- Starlet Content ---------------------------------------------------------------------------------
  1241. if AlbinaQW['StarletsJoined'] > 0 and AlbinaQW['StarletsShutDown'] = 0 and npc_pregtalk['A23'] = 0:
  1242. if starlets_practice = daystart - 1:
  1243. starlets_missed = 1
  1244. starlets_practice = 0
  1245. end
  1246. if starlets_on = 1: starlets_practice = daystart
  1247. end
  1248. if month = 9 and day = 16 and AlbinaQW['ParkRally'] = 0: AlbinaQW['ParkRally'] = 1
  1249. if month = 10 and day = 16 and AlbinaQW['ParkRally'] = 1: AlbinaQW['ParkRally'] = 2
  1250. if month = 11 and day = 19 and (AlbinaQW['StarletsJoined'] <= 0 or (AlbinaQW['StarletsJoined'] = 1 and npc_pregtalk['A23'] = 1)) and AlbinaQW['StarletsShutDown'] = 0: AlbinaQW['StarletsShutDown'] = 1
  1251. !!------------------------------------------------------------------------------------------------------------
  1252. !!-------------Music career related variables and calculations------------------------------------------------
  1253. !! How many hours a day can Sveta perform. It maxes out at 3.
  1254. !! Using the actual skill level, not the one modified by Attributes because that is more realistic for this.
  1255. ml_performance['max_perform_minutes'] = pcs_instrmusic + pcs_vokal
  1256. ml_performance['performed_minutes'] = 0
  1257. !! Checking for missed guitar lesson
  1258. if ml_guitarlesson['nextlesson'] < daystart and ml_guitarlesson['lessonday'] ! 8:
  1259. ml_guitarlesson['lessonday'] = 8
  1260. end
  1261. !! Calculating the fame increase from the uploaded songs and removing ones that do not effect fame anymore to keep the
  1262. !! data at a sane level
  1263. if ml_onlinesongcount > 0:
  1264. i = 0
  1265. j = -1
  1266. :looponlinesongs
  1267. !! this so every song counts only every 7 days and only for a limited number of weeks
  1268. if ml_onlinesong_freshness[i] > 0:
  1269. j += 1
  1270. ml_tempsong_freshness[j] = ml_onlinesong_sfreshness[i]
  1271. ml_tempsong_lastcalcday[j] = ml_onlinesong_lastcalcday[i]
  1272. ml_tempsong_hotcat[j] = ml_onlinesong_hotcat[i]
  1273. ml_tempsong_skilllevel[j] = ml_onlinesong_skilllevel[i]
  1274. ml_tempsong_uploaded[j] = ml_onlinesong_uploaded[i]
  1275. *nl
  1276. if ml_tempsong_lastcalcday[j] <= (daystart - 7) and ml_tempsong_uploaded = 1:
  1277. gs 'fame', 'city', 'music', rand(0, ml_tempsong_freshness[j]/100)
  1278. ml_tempsong_freshness[j] -= 10
  1279. ml_tempsong_lastcalcday[j] = daystart
  1280. end
  1281. end
  1282. i += 1
  1283. if i < ml_onlinesongcount: jump 'looponlinesongs'
  1284. killvar 'ml_onlinesong_freshness'
  1285. killvar 'ml_onlinesong_lastcalcday'
  1286. killvar 'ml_onlinesong_hotcat'
  1287. killvar 'ml_onlinesong_skilllevel'
  1288. killvar 'ml_onlinesong_uploaded'
  1289. i = 0
  1290. if j >= 0:
  1291. :looprebuildsongs
  1292. ml_onlinesong_freshness[i] = ml_tempsong_freshness[i]
  1293. ml_onlinesong_hotcat[i] = ml_tempsong_hotcat[i]
  1294. ml_onlinesong_lastcalcday[i] = ml_tempsong_lastcalcday[i]
  1295. ml_onlinesong_skilllevel[i] = ml_tempsong_skilllevel[i]
  1296. ml_onlinesong_uploaded[i] = ml_tempsong_uploaded[i]
  1297. i += 1
  1298. if i <= j: jump 'looprebuildsongs'
  1299. end
  1300. killvar 'ml_tempsong_freshness'
  1301. killvar 'ml_tempsong_lastcalcday'
  1302. killvar 'ml_tempsong_hotcat'
  1303. killvar 'ml_tempsong_skilllevel'
  1304. killvar 'ml_tempsong_uploaded'
  1305. end
  1306. !! Repertoire quality decay if no practice is done
  1307. if ml_performance['set_lastpracticeday'] ! (daystart-1): repertoire_quality -= 2
  1308. --- cikl ---------------------------------