cikl.qsrc 43 KB

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