1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174 |
- # stat
- !!This is error catching to prevent stat from running too early
- if opPRE > 0: exit
- if Enable_Android = 0:
- clr
- !only clear status and renew object in non-Android mode
- gs 'obj_din', 'old'
- end
- if daystart_start < 100:
- pl '<BR>Did you start at the <a href="exec:daystart_start = 241 & gs''daystart'' & gs''stat''">end of August</a> or <a href="exec:daystart_start = 152 & gs''daystart'' & gs''stat''">beginning of June</a>?'
- exit
- end
- view
- rand1 = rand(0,100)
- $stat_msg=''
- if MagikDostup = 0: magik_exp = orgasm
- if insleep = 0: gs 'stat_sklattrib'
- if cheatHealth = 1: dynamic $cheatmenu['std_cure']
- if (analplay >= 2 and pcs_ass <= 10) or (analplay >= 4 and pcs_ass <= 15) or (analplay >= 8 and pcs_ass <= 20): pcs_ass += 1 & analplay = 0
- !!The following seems to be part of the combat system.
- musle[1] = musle
- flex[1] = pcs_agil
- stamina[1] = pcs_vital * 3
- wipo[1] = pcs_sprt
- intel[1] = pcs_intel - bimbostupidity
- krasota[1] = pcs_apprnc
- pcs_hgt[1] = pcs_hgt
- salo[1] = salo
- fat[1] = fat
- Bteh[1] = bteh
- Uteh[1] = uteh
- Zteh[1] = zteh
- !!This is a temporary stop-gap measure for the accomadation skill and will be removed
- if succubusflag = 1 and sucskill >= 4:
- if pain['throat'] > 0: pain['throat'] = 0 & sucexcess -= 1
- if pain['asshole'] > 0: pain['asshole'] = 0 & sucexcess -= 1
- if pain['vaginal'] > 0: pain['vaginal'] = 0 & sucexcess -= 1
- if vgape > 0: vgape = 0 & vgapetime = 0 & sucexcess -= 1
- if agape > 0: agape = 0 & agapetime = 0 & sucexcess -= 1
- end
- !!mouth cleaning for drinks
- if pcs_hydra > hydra_check:
- cumspclnt = 2
- gs 'cum_cleanup'
- end
- !!!CHEATS!!!
- if cheatWork = 1:work = 0
- if cheatWorkKiskis = 1:young_shop_miss = 0
- if cheatHapri = 1:pcs_hairbsh = 1
- ! Moved from cheats to settings under 'Enema realism'
- if cheatKlisma = 0:klismaday = daystart & klismaday1 = 1
- if cheatNomakeup = 1:
- if pcs_makeup = 0: pcs_makeup = 1
- end
- if cheatNoSweat = 1 and pcs_sweat > 0: pcs_sweat = 0
- if cheatNoEat = 1:
- if pcs_energy < 35: pcs_energy = 35
- end
- if cheatNoDrink = 1:
- if pcs_hydra < 35: pcs_hydra = 35
- end
- if cheatNoSleep = 1:
- if pcs_sleep < 35: pcs_sleep = 35
- end
- if cheatBandit = 1 and npc_horny['A66'] < 19: npc_horny['A66'] = 19
- if alko > 0 and frost > 0:frost = 0
- if StrongNarkota >= 20:
- if alko > 0:alko = 0
- end
- if lernSkill >= 8: intel_exp += 1 & lernSkill = 0
- if lern >= 10: intel_exp += 1 & lern = 0
- if pav_slut >= 150 and KatjaKnowBJ ! 1: KatjaKnowBJ = 1
- if pav_slut >= 250 or preg > 0 and KatjaKnowSex ! 1: KatjaKnowSex = 1
- shameless = guy + stat['bj'] + stat['anal'] + stat['hj'] + ((slutty + gang) * 2)
- moneySUM = money + karta + stolmoney
- cumSUM = cumsumbod/40
- if husbizvradd > 5:izvratH = 1
- if husbharmin > 10:harakHusb = 0
- if husband = 0:
- husbizvradd = 0
- husbharmin = 0
- husbandMark = 0
- houseslut = 0
- end
- if SNarkvnesh = 0:SNarkvnesh = 1
- if SNarkTimes >= SNarkvnesh * 25:
- SNarkvnesh += 1
- vidage += 1
- end
- if gopota >= 20 and gnewQW = 1:gnewQW = 2
- if workDisk = 4 and week > 5:workDisk = 1
- if workDisk = 3 and week > 5:workDiskAtkPlayer = 1
- if bfa < 0: bfa = 0
- if pcs_vag > 36: pcs_vag = 36
- if pcs_throat > 36: pcs_throat = 36
- if pcs_ass > 36: pcs_ass = 36
- if NarkImmune = 1:
- if narkoman ! 0:narkoman = 0
- elseif nark >= 30 and narkoman = 0 and NarkImmune = 0:
- narkoman = 1
- elseif nark = 0 and narkoman = 1:
- narkoman = 0
- end
- if CheatSlut = 1 or succubusflag = 1:
- !!Succubus cannot get pregnant
- mesec = 0
- FocH = 0
- EggRH = 0
- Ovulate = 0
- fertegg = 0
- UnfertEgg = 0
- PregChem = 0
- preg = 0
- LutH = 0
- RecovH = 0
- babyembryo = 0
- cycle = 1
- end
- if succubusflag = 1 and succublvl > 2 and rape > rape_count:
- !!High Level Succubus cannot get raped
- orgasm += 1
- rape = rape_count
- pcs_mood = 100
- end
- if pcs_horny < 50 and cheatHorny = 1: pcs_horny = 50
- !!These will be made obsolete with the combat system overhaul
- boxing = pcs_jab + pcs_punch + pcs_kick + pcs_def
- if boxing > 100: boxing = 100
- if MagikDostup = 0:
- if pcs_magik > magikhigh:
- magikhigh += 1
- rikudo += pcs_magik * 100
- $stat_msg += '<BR><b>You feel like a strength has been revealed within you and you gush with magic, lifting you to a new energy level.</b>'
- !! This will be replaced when a more advanced physical system is made
- if (pcs_magik mod 2 ! 0) and pcs_eyesize < 2: pcs_eyesize += 1
- if (pcs_magik mod 2 = 0) and pcs_lashes < 2: pcs_lashes += 1
- end
- else
- !!This is for error catching
- killvar 'pcs_magik'
- killvar 'rikudo'
- killvar 'pcs_splcstng'
- end
- if pcs_dom < 0: SUB = SUB - pcs_dom & pcs_dom = 0
- if SUB < 0: pcs_dom = pcs_dom - SUB & SUB = 0
- if pcs_dom > 100: pcs_dom = 100
- if SUB > 100: SUB = 100
- if SUB >= pcs_dom and pcs_dom > 0:SUB = SUB - pcs_dom & pcs_dom = 0
- if pcs_dom >= SUB and SUB > 0:pcs_dom = pcs_dom - SUB & SUB = 0
- if pcs_horny < 0: pcs_horny = 0
- if pcs_inhib < 0:
- pcs_inhib = 0
- elseif pcs_inhib > 100:
- pcs_inhib = 100
- end
- healthmax = (pcs_vital * 10 + pcs_stren * 5)
- stammax = 5 * (2 * pcs_vital + pcs_agil + pcs_stren) / 2
- manamax = (pcs_intel * pcs_magik) + pcs_magik * 100 + pcs_vital * 10 + rikudo
- speed = (2 * (pcs_stren + pcs_agil) + pcs_vital) / 5
- if healthmax < 1: healthmax = 1
- if willpowermax < 50: willpowermax = 50
- if stammax < 1: stammax = 1
- if manamax < 1: manamax = 1
- !pre-calc max value for later display
- if fairycurse >= daystart and fairyshoo > 0: pcs_horny = 90
- if min_arousal > pcs_horny: pcs_horny = min_arousal
- if Enable_lockhorny > 0 and pcs_horny < Enable_lockhorny - 1: pcs_horny = Enable_lockhorny - 1
- if pcs_horny < 0: pcs_horny = 0
- if pcs_health > healthmax: pcs_health = healthmax
- if pcs_willpwr > willpowermax: pcs_willpwr = willpowermax
- if pcs_stam > stammax: pcs_stam = stammax
- if pcs_mana > manamax: pcs_mana = manamax
- if pcs_mood > 100: pcs_mood = 100
- !!Add mood_trauma to events to lower max mood for a period of time
- if mood_trauma > 0:
- mood_max_calc = 100 - (mood_trauma * 5)
- mood_max = max(10, mood_max_calc)
- if pcs_mood > mood_max: pcs_mood = mood_max
- killvar 'mood_max_calc'
- elseif mood_trauma < 0:
- mood_trauma = 0
- end
- if hypnoAddict = 1 and pcs_horny < 30:
- pcs_horny = 30
- elseif hypnoAddict = 2 and pcs_horny < 50:
- pcs_horny = 50
- end
- if cumloc[0] = 1 or cumloc[3] = 1 or hypnoAddict = 0:
- killvar 'missCum'
- elseif missCum > timeTresh:
- if pcs_horny < 90: pcs_horny = 90
- if preziktype = 0: prezikcount = prezik
- if preziktype = 2: preziksabo = prezik
- prezik = 0
- preziktype = 1
- end
- !!!!!!!!!!!
- !!!TIME!!!
- !!!!!!!!!!!
- if nminut ! minut or nhour ! hour:
- ! Zero totminut will be at New Years Eve of 2015
- prevtotmin = totminut
- ! Years since 2015 in days
- totminut = (year - 2015) * 365
- ! Days this year
- if month > 1 : totminut += 31 & ! Jan
- if month > 2 : totminut += 28 & ! Feb
- if month > 3 : totminut += 31 & ! Mar
- if month > 4 : totminut += 30 & ! Apr
- if month > 5 : totminut += 31 & ! May
- if month > 6 : totminut += 30 & ! Jun
- if month > 7 : totminut += 31 & ! Jul
- if month > 8 : totminut += 31 & ! Aug
- if month > 9 : totminut += 30 & ! Sep
- if month > 10: totminut += 31 & ! Oct
- if month > 11: totminut += 30 & ! Nov
- if month > 12: totminut += 31 & ! Dec
- if month > 13: totminut += 31 & ! Jan rollover sanity check
- totminut += day
- ! Hours
- totminut = totminut * 24 + hour
- ! Minutes
- totminut = totminut * 60 + minut + sec / 60
- nminut = minut
- nhour = hour
- end
- ! Execute time based spells
- gs 'spellTimer', prevtotmin, totminut
- ! Determine Incoming Telephone Calls
- gs 'telefon', 'IncomingCheck', prevtotmin, totminut
- !! deodorant
- if deodorant_on = 1 and totminut > deodorant_time: gs 'sweat', 'remove_deo'
- !!painkiller
- if pain['killer'] > 0:
- if pain['killer'] = 1: pain_timer = totminut - 2
- pain['killer'] = totminut - pain_timer
- if pain['killer'] >= 243: pain['killer'] = 0
- end
- ! WD: 'daystart' Should start at 1
- if daystart = 0: daystart = 1
- !!Gaping of vagina recovery time
- if vgape > 0:
- if vgapetime = 0: vgapetime = totminut
- if (vgapetime + 60) <= totminut:vgape -= 1 & vgapetime = 0
- end
- !!Gaping of anus recovery time
- if agape > 0:
- if agapetime = 0: agapetime = totminut
- if (agapetime + 90) <= totminut:agape -= 1 & agapetime = 0
- end
- !!Recovery from spanking - will be superseded by pain system
- if spanked > 0:
- if spankedtime = 0: spankedtime = totminut
- if (spankedtime + 2040) <= totminut:spanked -= 1 & spankedtime = 0
- end
- !! Orgasmic cooldown
- if orgasmic ! 0:
- if orgasmic < totminut - 30: orgasmic = 0 & pcs_horny = 0
- end
- !!!!!!!!!!!!!!! Heels pain and skill gain
- !! This compares the player heels skill to the skill required to wear any heels the player
- !! currently wears. If the skill needed is greater than the player currently possesses,
- !! the pain in the feet increases and the player earns heels skill. If the skill required
- !! is lower, the player might still get experience, depending on how much greater the
- !! player skill is.
- !! Variables
- !! pcs_heels is the main heels skill
- !! heels_exp is used when the player gains experience using heels
- !! heels_deg is used when the player neglects their heels
- !! PShoHeels tracks the height of the heels currently worn
- !! heelsminut tracks when the heels skill was last changed
- !! heelsRequiredskill substitutes PShoHeels to allow comparison with pcs_heels
- !! heelsSkilldiff tracks difference between the players current and skill required by heels
- !! Required skill for various heel sizes
- !! 1 flats - 0
- !! 2 low heel - 5
- !! 3 Mid heel - 15
- !! 4 High heel - 25
- !! 5 ultra high heel - 40
- !! 6 fetish heel - 60
- !! Only run if at least X minutes have passed since last time
- if totminut >= heelsminut + 120:
- heelsminut = totminut
- !! Only check experience and pain gain and if the player wears heels, flats give nothing
- if PShoHeels > 1:
- if PShoHeels = 2:
- heelsRequiredskill = 5
- elseif PShoHeels = 3:
- heelsRequiredskill = 15
- elseif PShoHeels = 4:
- heelsRequiredskill = 25
- elseif PShoHeels = 5:
- heelsRequiredskill = 40
- elseif PShoHeels = 6:
- heelsRequiredskill = 60
- end
- !! stat is called a lot, there should be a limit to how much exp and pain you can accumulate...
- !! If the player skill is below the required skill, give heel_exp and apply ache
- if pcs_heels < heelsRequiredskill:
- heelsSkilldiff = heelsRequiredskill - pcs_heels
- if heelsSkilldiff <= 5:
- heels_exp += rand(3,6)
- if pain['feet'] < 40: gs 'pain', rand(0,1), 'feet', 'ache'
- elseif heelsSkilldiff <= 10:
- heels_exp += rand(5,9)
- if pain['feet'] < 50: gs 'pain', rand(0,2), 'feet', 'ache'
- elseif heelsSkilldiff <= 15:
- heels_exp += rand(7,12)
- if pain['feet'] < 60: gs 'pain', rand(1,3), 'feet', 'ache'
- elseif heelsSkilldiff <= 20:
- heels_exp += rand(9,15)
- if pain['feet'] < 70: gs 'pain', rand(2,4), 'feet', 'ache'
- elseif heelsSkilldiff > 20:
- heels_exp += rand(12,20)
- if pain['feet'] < 80: gs 'pain', rand(3,5), 'feet', 'ache'
- end
- !! Player skill is equal to or higher than the required skill
- !! Maybe have excessive skill result in no gain, or even a degrading skill?
- else
- heelsSkilldiff = pcs_heels - heelsRequiredskill
- if heelsSkilldiff <= 5:
- heels_exp += rand(3,6)
- elseif heelsSkilldiff <= 10:
- heels_exp += rand(2,4)
- elseif heelsSkilldiff <= 15:
- heels_exp += rand(1,2)
- elseif heelsSkilldiff <= 20:
- heels_exp += 0
- elseif heelsSkilldiff > 20:
- heels_deg -= rand(0,1)
- end
- end
- !! If not wearing heels, degrade heels skill
- else
- heels_deg -= rand(0,1)
- end
- !!Bimbo shoe check so bonus will be applied
- if PShoStyle = 2: bimbosh = 1
- if PShoStyle ! 2: bimbosh = 0
- end
- !!!!!!!!!!!!!!! End heels
- if sec >= 60:
- :loopsec
- minut += 1
- sec -= 60
- if sec >= 60:jump 'loopsec'
- end
- if minut >= 60:
- :loopmin
- hour += 1
- minut -= 60
- if SbrosNerdism = 1:pcs_nerd = pcs_sprt / 10 - orgasm
- if pcs_nerd < 0:pcs_nerd = 0
- if obkvsdam > 0:obkvsdam = rand(2, 5)
- if scpopt > 1: scpopt = 0
- if insleep = 1:
- if amphHigh > 0:
- pcs_energy -= (4 / amphetamineBonus + succublvl/2)
- pcs_hydra -= (8 / amphetamineBonus + succublvl/2)
- else
- pcs_energy -= (4 * amphetamineBonus + succublvl/2)
- pcs_hydra -= (8 * amphetamineBonus + succublvl/2)
- end
- pcs_stam += stammax / 10
- pcs_sleep -= 4
- if alko > 0: alko -= 1
- pcs_willpower_feeder += willpowermax*4
- pcs_willpwr += pcs_willpower_feeder/100
- pcs_willpower_feeder = pcs_willpower_feeder mod 100
- else
- if amphHigh > 0:
- pcs_energy -= (8 / amphetamineBonus + succublvl)
- pcs_hydra -= (16 / amphetamineBonus + succublvl)
- else
- pcs_energy -= (8 * amphetamineBonus + succublvl)
- pcs_hydra -= (16 * amphetamineBonus + succublvl)
- end
- pcs_stam += stammax / 20
- pcs_sleep -= 4
- pcs_willpower_feeder += willpowermax*4/3
- pcs_willpwr += pcs_willpower_feeder/100
- pcs_willpower_feeder = pcs_willpower_feeder mod 100
- end
- if pcs_willpwr > willpowermax: pcs_willpwr = willpowermax
- if pcs_willpwr < 25: will_degrade += 1
- if will_degrade >= 5: willpowermax -= 1 & will_degrade = 0
- if pcs_willpwr >= 50 and will_degrade > 0: will_degrade -= 1
- if pcs_stam > stammax: pcs_stam = stammax
- gs 'femcyc'
- if hypnoAddict > 0:dynamic $hypnoAddiction
- !!mana regen
- pcs_mana += manamax / 20
- if alko > 0 and alkoblock = 0:
- if alko >= 6:
- if pcs_run > 0: run_deg -= 1
- if vball_lvl >= 50: vball_deg -= 1
- if alko >= 10:
- if pcs_stren > 10: stren_deg -= 1
- if pcs_vital > 10: vital_deg -= 1
- if pcs_intel > 10: intel_deg -= 1
- alko -= rand (0,1)
- end
- end
- alko -= rand (0,1)
- elseif alko < 0:
- alko = 0
- end
- !!!!!!!!!!!!!
- !!!Avtoboy!!!
- !!!!!!!!!!!!!
- if hour >= 8 and hour <= 23 and NPCnum > 10 and insleep = 0:
- :markturnirotbort
- xf = 0
- :markturnirotbortt
- xf += 1
- turnirFighter[xf] = rand(2, NPCnum)
- if xf < 2:jump 'markturnirotbortt'
- if turnirFighter[1] = turnirFighter[2]:jump 'markturnirotbort'
- a = turnirFighter[1]
- i = turnirFighter[2]
- NoView = 1
- gs 'Autofight'
- end
- !!!!!!!!!!!!!
- if shame > 0:shame -= 1 & pcs_mood -= 5
- if smoker >= 20 and NarkImmune = 0: smokerNeed += 1
- if smokerNeed > 10 and InSleep = 0 and pcs_mood > 20 and NarkImmune = 0: pcs_mood -= pcs_mood / 10
- if smokerNeed > 300:smokerNeed = 0 & smoker = 0
- if StrongNarkota > 0:pcs_mood -= (40 / StrongNarkota) & StrongNarkota -= 1
- if amphWithdrawl >= 5: amphWithdrawl += 1 & pcs_mood -= (amphWithdrawl / 5)
- if amphHigh > 0:
- if amphWithdrawl < 2: amphWithdrawl = 2
- amphetamineBonus = 3
- amphHigh -= 4
- pcs_mood += (2 * amphHigh)
- elseif amphHigh <= 0 and amphWithdrawl = 2:
- if amphIntake > 0:
- amphIntake -= 1
- else
- amphWithdrawl = 0
- end
- amphHigh = 0
- amphetamineBonus = 2
- pcs_mood -= pcs_mood / 10
- elseif amphIntake > 0:
- amphWithdrawl += 1
- elseif amphHigh = 0 and amphWithdrawl = 0:
- amphetamineBonus = 1
- end
- if amphWithdrawl > 169: amphWithdrawl = 1 & amphetamineBonus = 1 & amphCount = 0
- if SLomka > 0 and pcs_mood > 10:SLomka += 1 & pcs_mood -= pcs_mood / 10
- if SLomka > 100 and StrongNarkota <= 0:SLomka = 0 & SNarkTimes = 0
- if jointhigh > 0: jointhigh -= 1
-
- if narkoman = 1 and narkday ! daystart:
- pcs_health -= 5
- if pcs_mood > 40:
- pcs_mood -= 40
- else
- pcs_mood = 5
- end
- end
- if $pantyworntype = 'none' and PCloPants > 0 and PCloPanties = 0 and $clothingworntype ! 'nude':mosol += 1
- if mosol >= 50: pcs_mood -= 5
- if mosol >= 30 and pain['pubic'] < 80: gs 'pain', 1, 'pubic', 'ache'
- if pcs_energy > 100:
- fat += (pcs_energy - 100) / 4
- pcs_energy = 100
- elseif pcs_energy <= (10 + vitalbuf / 25) and fat > (2 + vitalbuf / 25):
- pcs_energy += 6
- fat -= 2
- end
- if pcs_hydra > 200: pcs_hydra = 200
- if mosol > 0:
- if $pantyworntype ! 'none' or $clothingworntype = 'nude' or PCloPanties = 1:mosol -= rand(0,1)
- end
- if pcs_lipbalm > 0:pcs_lipbalm -= 1
- if sickstage = 1:sick += 1 & sicktimer += 1
- if sickstage = 1 and sicktimer >= 80:sicktimer = 0 & sickstage = 2
- if sickstage = 2 and sick > 0:sick -= 1
- if sickstage = 2 and sick <= 0:sick = 0 & sickstage = 0
- if perkice > 0:perkice -= 1
- if frost > 0:frost -= 1
- if KGOLpers > 0:
- if KGHP < KGHPMAX:KGHP += 10
- if KGMana < KGManaMax:KGMana += 10
- end
- !! pain[0] = pain['total'] , pain[1] = pain['damage'] , pain[2] = pain['relief']
- i = arrsize('pain')
- :statpainloop
- if i > 0:
- i -= 1
- pain[i] -= rand(0,1)
- if pain[i] < 0: pain[i] = 0
- jump 'statpainloop'
- end
- !! Panty happiness gain
- if pcs_mood < 60 and $pantyworntype = 'kats': pcs_mood += 2
- if pcs_mood < 60 and $braworntype = 'kats': pcs_mood += 2
- !!Arousal adjustments
- if ($pantyworntype = 'exhibitionist' and $braworntype = 'exhibitionist') and pcs_horny < 25:
- pcs_horny += 10
- elseif pcs_horny < 10 and ($pantyworntype = 'exhibitionist' or $braworntype = 'exhibitionist'):
- pcs_horny += 5
- end
- if aphrodisiac_timer >= 1:
- if pcs_horny < 80:
- pcs_horny = 80
- else
- pcs_horny += 10
- end
- aphrodisiac_timer -= 1
- end
- if $pantyworntype ! 'none' and clit_size >= 25 and pcs_horny < 60:pcs_horny += 20
- if insleep = 0:
- gs 'sweat', 'add', rand(0,1)
- if temper >= 20: gs 'sweat', 'add', rand(0,1)
- end
- ! vovan edition, from 1.2.5
- if huntersAndreisex > 0: huntersAndreisex -= 1
- if huntersSergeisex > 0: huntersSergeisex -= 1
- if huntersIgorsex > 0: huntersIgorsex -= 1
- if huntslutsex > 0: huntslutsex -= 1
- if mira_go_blok > 0: mira_go_blok -= 1
- if mira_no_home > 0: mira_no_home -= 1
- gs 'traits', 'hourly'
- if (hour mod 2) = 0: gs 'outdoors', 'weather'
- if minut >= 60:jump 'loopmin'
- end
- if hour >= 24: gs 'cikl'
- if minut < 10:
- $nilmin = '0'
- else
- $nilmin = ''
- end
- if kid > 0:
- i = arrsize('yearkid')
- :LoopKidAgeCounter
- if i >= 0:
- if yearkid[i] = year + 1 and monthkid[i] = month and daykid[i] = day: msg'It is <<$kidname[i]>>''s birthday today.'
- i -= 1
- jump 'LoopKidAgeCounter'
- end
- end
- if pcs_nerd > 0:
- if lastreadday = daystart:
- !!<font color="green">You are completely healthy shine and a healthy glow.</font>
- pcs_mood = 100
- SbrosNerdism = 0
- $mudnerd = '<font color="green">You are lost in a fantasy after reading a book.</font>'
- end
- if lastreadday + 1 = daystart:
- SbrosNerdism = 0
- $mudnerd = '<font color="black">You are a little bored and want to plunge into a book.</font>'
- end
- if lastreadday + 2 = daystart:
- SbrosNerdism = 0
- if pcs_mood > 50:pcs_mood -= 10
- $mudnerd = '<font color="red">You really want to read something.</font>'
- end
- if lastreadday + 3 <= daystart:
- if pcs_mood > 10:pcs_mood -= 10
- SbrosNerdism = 1
- $mudnerd = '<font color="red"><b>You have an incredibly strong desire to read!!!</b></font>'
- end
- else
- SbrosNerdism = 0
- $mudnerd = ''
- end
- if bimbolevel > 0:
- if bimbowithdrawal = 0:
- $bimbostatus = '<font color = #FF1493>You''re, like, super hawt today.</font>'
- $bimbo_tooltip = 'You''re, like, super hawt today.'
- elseif bimbowithdrawal = 1:
- $bimbostatus = '<font color="green">You feel, like, kind of lame today.</font>'
- $bimbo_tooltip = 'You feel, like, kind of lame today.'
- elseif bimbowithdrawal < 4:
- $bimbostatus = '<font color="grey">You feel, like, totally lame today.</font>'
- $bimbo_tooltip = 'You feel, like, totally lame today.'
- elseif bimbowithdrawal < 6:
- if pcs_mood > 50: pcs_mood -= 10
- $bimbostatus = '<font color="red">You really feel, like, awful today.</font>'
- $bimbo_tooltip = 'You really feel, like, awful today.'
- elseif bimbowithdrawal >= 6:
- if pcs_mood > 10: pcs_mood -= 10
- $bimbostatus= '<font color="red"><b>You feel that, like, horrible today!</b></font>'
- $bimbo_tooltip = 'You feel that, like, horrible today!'
- end
- if bimbowithdrawal > 30:
- bimbowithdrawal = 0
- bimbo = 0
- bimbolevel = 0
- $stat_msg += '<BR>You suddenly feel as if your head is clear, instead of filled with pink thoughts.'
- end
- else
- bimbowithdrawal = 0
- $bimbostatus = ''
- end
- !
- ! WD: Triggers every 15 minutes if not sleeping
- ! Update to remove long iterations on loading saves from previous versions
- ! Do Nothing if sleeping, invalid Trig15Minute value or more than 6 hours 16 minute pass
- if InSleep ! 0 or Trig15Minute > totminut or (totminut - Trig15Minute) >= 376:
- set Trig15Minute = totminut
- ! More than 15 minutes since last check
- else
- if (totminut - Trig15Minute) >= 15:
- ! begin Loop
- :Trig15MinuteLoop
- ! Horny Actions
- if pcs_horny > 100:
- set Trig15Minute = totminut
- else
- set Trig15Minute += 15
- ! WD: Fix vibrator arousal to trigger every 15 minutes, moved from 'time' location
- if vibratorin = 1:pcs_horny += rand(1, 5)
- ! WD: Fixed Piecing arousal to trigger every 15 minutes, instead of once per day
- if pcs_horny < 70:
- hornystat = 0
- if pirsF > 0 and pirsF < 10000:hornystat += 1
- if pirsG > 0 and pirsG < 10000:hornystat += 1
- hornyStat = hornystat * 4
- if pirsA > 0 and pirsA < 10000:hornystat += 1
- if pirsB > 0 and pirsB < 10000:hornystat += 1
- if pirsC > 0 and pirsC < 10000:hornystat += 1
- if pirsD > 0 and pirsD < 10000:hornystat += 1
- if pirsE > 0 and pirsE < 10000:hornystat += 1
- if pirsN > 0 and pirsN < 10000:hornystat += 1
- set pcs_horny += hornyStat / 4 + rand(1,4) <= hornyStat mod 4 & ! Apply 1/4 of value on average
- end
- ! WD: Clothing
- if CloStyle = 4 and pcs_horny < 70:set pcs_horny += rand(0, 2)
- if (PCloSkirt > 5 or PCloPants > 5) and pcs_horny < 50:set pcs_horny += rand(0, 1)
- if PCloTopCut = 4 and pcs_horny < 50:set pcs_horny += rand(0, 1)
- end
- !!SECTION: Bimbo (15 minute interval update checks)
- if bimbolevel = 2:
- if pcs_mood < 100:pcs_mood += ((pcs_mood / 100) * (rand(0,1)))
- if pcs_horny < 25:pcs_horny = 25
- if pcs_horny < 100:pcs_horny += 1
- end
- if bimbolevel = 3:
- if (pcs_mood < 100):pcs_mood += ((pcs_mood / 100) * (rand(0,2)))
- if pcs_horny < 50:pcs_horny = 50
- if pcs_horny < 100:pcs_horny += 2
- end
- !! This is the Succubus non-direct injection (pun intented) sex to sexnutrition and the sexnutrition conversion handling
- if succubusflag = 1:
- if pcs_horny < 50: pcs_horny = 50
- if pcs_horny < 100: pcs_horny += succublvl
- if succhungry > 0:
- pcs_energy -= succhungry * succublvl
- pcs_hydra -= succhungry * succublvl
- pcs_sleep -= succhungry * succublvl
- end
- cumres_idx = arrpos('sparrloc',12)
- if cumres_idx >= 0 and sparrvol[cumres_idx] > 0:sexnutrition += 4 & gs 'cum_cleanup', 'cleanloc', 12
- cumres_idx = arrpos('sparrloc',0)
- if cumres_idx >= 0 and cumsumvag > 0:sexnutrition += cumsumvag * 4 & gs 'cum_cleanup', 'cleanloc', 0
- if cumres_idx >= 0 and cumsumass > 0:sexnutrition += cumsumass * 4 & gs 'cum_cleanup', 'cleanloc', 3
- if arrsize('sparrvol') > 0:
- suctempi = -1
- :SuccAbsorbLoop
- suctempi += 1
- if suctempi <= 1 or suctempi = 4 or suctempi >= 8:
- if suctempi = 12: jump 'SuccAbsorbLoop'
- suctemparr = arrpos('sparrloc',suctempi)
- if suctemparr >= 0 and sparrloc[suctemparr] = suctempi and sparrvol[suctemparr] > 0:
- sexnutrition += succublvl * 5
- cumsumbod -= sparrvol[suctemparr]
- succubxp += 2
- sucabscum = 1
- gs 'cum_cleanup', 'cleandeposit', suctemparr
- cumloc[suctempi] = 0
- spdirty = 0
- cumloc[1] = 0
- cumloc[2] = 0
- cumloc[4] = 0
- cumloc[5] = 0
- cumloc[6] = 0
- cumloc[7] = 0
- cumloc[11] = 0
- cumloc[14] = 0
- !! debug code $stat_msg += '<BR>Absorb ext <<sexnutrition>>'
- end
- end
- if suctempi < 17:jump 'SuccAbsorbLoop'
- end
- if suclezsex < lesbian:
- sexnutrition += succublvl * 20
- suclezsex = lesbian
- succubxp += 3
- sucabslez = 1
- end
- if sexnutrition > 0:
- if sucskill >= 3 and succublvl >= 2: sexnutrition += (sexnutrition * 2) / 10
- if sucabslez = 1 and sucabscum = 1:
- $sucabs1 = 'absorbed energy from the woman you had sex with'
- $sucabs2 = ' and you '
- $sucabs3 = 'absorb the semen in your body'
- elseif sucabscum = 1:
- $sucabs3 = 'absorb the semen in your body'
- elseif sucabslez = 1:
- $sucabs1 = 'absorbed energy from the woman you had sex with'
- else
- !!Debug code
- $stat_msg += '<BR>SOMETHING HAPPENED!'
- end
- $stat_msg += '<BR>You <<$sucabs1>><<$sucabs2>><<$sucabs3>>, gaining nourishment.'
- sucabslez = 0 & sucabscum = 0
- $sucabs1 = '' & $sucabs2 = '' & $sucabs3 = ''
- if (pcs_mood < 100): pcs_mood += ((pcs_mood / 100) * 5)
- if pcs_energy > 100: entemp = (pcs_energy - 100)
- if sucexcess < 0 and sexnutrition > 20 and pcs_energy > 30:
- if sexnutrition - 20 >= (0 - sucexcess) * 2:
- sexnutrition += sucexcess * 2
- sucexcess = 0
- else
- sucexcess += (sexnutrition - 20) / 2
- sexnutrition = 20
- end
- end
- pcs_energy += sexnutrition / 2
- pcs_hydra += sexnutrition
- pcs_sleep += sexnutrition / 20
- if succhungry > 0: succhungry = 0
- sexnutrition = 0
- if pcs_energy > 100: sucexcess += (pcs_energy - entemp - 100) & pcs_energy = 100 + entemp & killvar 'entemp'
- end
- end
- !! safeguards to prevent bimbolevel from going above or below its intended limits
- if bimbolevel > 3: bimbolevel = 3
- if bimbolevel < 0: bimbolevel = 0
- ! do loop
- if (totminut - Trig15Minute) >= 15:jump 'Trig15MinuteLoop'
- end
- end
- !!!!!!!!!!!!!
- !!!ENERGY!!!
- !!!!!!!!!!!!!
- if succubusflag = 1:
- if pcs_energy < 0:
- if fat >= 1:
- if cheatNoFat = 0: fat -= 2
- pcs_energy += 8 + succublvl
- else
- pcs_energy += 8 + succublvl
- sucexcess -= (8 + succublvl) * (6 - succublvl)
- end
- end
- if pcs_health < 0:
- pcs_health = 10
- sucexcess -= 25 * (9 - succublvl)
- end
- if pcs_willpwr < 0:
- pcs_willpwr = 10
- sucexcess -= 20 * (9 - succublvl)
- sucpowzeroed = 4
- end
- end
- if pcs_sleep < 0:
- pcs_sleep = 0
- pcs_mood -= 5
- end
- if pcs_energy < 0:
- pcs_energy = 0
- pcs_health -= 5
- if salo = 0 and pcs_stren + pcs_vital > 0:
- stren_deg -= 1
- vital_deg -= 1
- pcs_energy += 8
- elseif salo = 0 and pcs_stren + pcs_vital <= 0:
- if Enable_nogameover = 0 :
- over = 3
- if $loc ! 'gameover': gt 'gameover'
- exit
- else
- $stat_msg += '<BR><font color=red><B>You starved to death, but Cheat Mode keeps you Alive.</B></font>'
- fat = 1
- end
- elseif salo > 0:
- if cheatNoFat = 0: fat -= 1
- pcs_energy += 8
- end
- end
- if pcs_hydra <= 0:
- pcs_hydra = 1
- pcs_health -= 5
- end
- !!Set hydra_check value
- hydra_check = pcs_hydra
- if pcs_mood <= 0:
- pcs_mood = 1
- pcs_health -= 5
- end
- if pcs_health < 0:
- if Enable_nogameover = 0 :
- over = 1
- if $loc ! 'gameover': gt 'gameover'
- exit & !nogameover by illume
- else
- $stat_msg += '<BR><font color=red><B>You died from injuries, but Cheat Mode keeps you Alive.</B></font>'
- pcs_health = 0
- end
- end
- if pcs_willpwr <= 0 :
- !this will set willpower to 0 correctly; then check mana =1 for insane-gameover(pcs_willpwr=0&mana=1).
- if pcs_mood <= 1:
- if Enable_nogameover = 0 :
- over = 2
- if $loc ! 'gameover': gt 'gameover'
- exit & !nogameover by illume
- else
- $stat_msg += '<BR><font color=red><B>You are insane, but Cheat Mode keeps you Alive.</B></font>'
- !pcs_mood already checked for >=1 in line 1113 if pcs_mood <= 0, no need to set another one
- end
- end
- pcs_willpwr = 0
- end
- !!cars-increase/depressed mood after orgasm/rape
- if rape > 0 and rape ! rape_count and orgasm = orgasm_count:
- pcs_mood = 10
- rape_count = rape
- elseif orgasm > 0 and orgasm ! orgasm_count:
- pcs_mood = 100
- orgasm_count = orgasm
- elseif rape > 0 and rape ! rape_count and orgasm > 0 and orgasm ! orgasm_count:
- pcs_mood = 100
- orgasm_count = orgasm
- rape_count = rape
- end
- !!Health, Willpower, Auto Birth Control pregnancy check
- gs 'body'
- if pcs_health >= healthmax:
- $pcs_health = '<font color="green">You are very healthy.</font>'
- elseif pcs_health >= healthmax * 75 / 100:
- $pcs_health = '<font color=#0064FF>You are healthy.</font>'
- elseif pcs_health >= healthmax * 50 / 100:
- $pcs_health = '<font color="brown">You are not healthy.</font>'
- elseif pcs_health >= healthmax * 25 / 100:
- $pcs_health = '<font color="red">You are sick.</font>'
- else
- $pcs_health = '<font color="red">You are on the verge of death.</font>'
- end
- if pcs_willpwr >= willpowermax:
- $pcs_willpwr = '<font color="green">You feel in charge of your actions.</font>'
- elseif pcs_willpwr >= willpowermax * 75 / 100:
- $pcs_willpwr = '<font color=#0064FF>You are mostly in control.</font>'
- elseif pcs_willpwr >= willpowermax * 50 / 100:
- $pcs_willpwr = '<font color="brown">You might have to make some concessions.</font>'
- elseif pcs_willpwr >= willpowermax * 25 / 100:
- $pcs_willpwr = '<font color="red">You will have to toe the line.</font>'
- else
- $pcs_willpwr = '<font color="red">You are completely at our people''s mercy.</font>'
- end
- !!stop auto birth control pill taking if the player believes they are pregnant or are pregnant
- if (thinkpreg = 1 or knowpreg = 1) and tabletkicheck = 1: tabletkicheck = 0
- !!Mood
- if cheatNoMood = 0:
- maxmood = 100 - moodmodifier
- if pcs_mood > 100:
- pcs_mood = 100
- elseif pcs_mood < 0:
- pcs_mood = 0
- !! Asylum: basically this means clinically insane, like court-ordered committed, saliva dripping, blubbering... Ordinarily irreversible at this stage meaning Game Over, but cheat can help
- end
- else
- pcs_mood = 100
- mood_trauma = 0
- end
- if pcs_mood >= 80:
- $pcs_mood = '<font color="green">You are in a great mood.</font>'
- elseif pcs_mood >= 60:
- $pcs_mood = '<font color=#0064FF>You are in a good mood.</font>'
- elseif pcs_mood >= 40:
- $pcs_mood = '<font color="brown">You are in an OK mood.</font>'
- elseif pcs_mood >= 20:
- $pcs_mood = '<font color="orange">You are in a bad mood.</font>'
- elseif pcs_mood >= 5:
- $pcs_mood = '<font color="red">You are in a terrible mood.</font>'
- else
- $pcs_mood = '<font color="red">You are really depressed and need to improve your mood.</font>'
- end
- if pcs_energy >= 80:
- $pcs_energy = '<font color="green">You couldn''t eat one more bite.</font>'
- elseif pcs_energy >= 40:
- $pcs_energy = '<font color=#0064FF>You''re not really hungry, but a small snack would be very welcome.</font>'
- elseif pcs_energy >= 8:
- $pcs_energy = '<font color="brown">You are hungry.</font>'
- else
- $pcs_energy = '<font color="red">You are very hungry.</font>'
- end
- if pcs_hydra >= 80:
- $pcs_hydra = '<font color="green">You are not thirsty at all.</font>'
- elseif pcs_hydra >= 40:
- $pcs_hydra = '<font color=#0064FF>You are slightly thirsty.</font>'
- elseif pcs_hydra >= 8:
- $pcs_hydra = '<font color="brown">You are thirsty.</font>'
- else
- $pcs_hydra = '<font color="red">You are very thirsty.</font>'
- end
- if pcs_sleep >= 80:
- $pcs_sleep = '<font color="green">You are well rested.</font>'
- elseif pcs_sleep >= 40:
- $pcs_sleep = '<font color=#0064FF>You are slightly tired.</font>'
- elseif pcs_sleep >= 8:
- $pcs_sleep = '<font color="brown">You are tired.</font>'
- else
- $pcs_sleep = '<font color="red">You are very tired.</font>'
- end
- if workFabrika = 1 and week => 1 and week <= 5 and hour > 8 and age => 16 and age < 18 and FabrikaProgulDay ! day or workFabrika = 1 and week => 1 and week <= 5 and hour > 16 and age > 18 and FabrikaProgulDay ! day:
- !!absence from work in a factory in Pavlovsk
- FabrikaProgul += 1
- FabrikaProgulDay = day
- end
- if hotelroom > 0:
- if hotelroom1day = daystart: $stat_msg += '<BR>You have 1 night left on your hotel booking.'
- if hotelroom1day < daystart and hour <= 11: $stat_msg += '<BR>Your hotel booking has expired and you cannot return to your room after 11:00'
- if hotelroom1day < daystart and hour > 11: hotelroom = 0
- end
- if hour >= 8 and hour < 14 and week < 6 and StoryLine > 0 and SchoolAtestat = 0 and kanikuli = 0 and schoolProgulDay ! daystart:
- !!absence from school
- schoolprogul += 1
- schoolProgulDay = daystart
- end
- if cumcondslip <= 0: cumcondslip_deep = 0
- !!Sex stat update
- stat['mast'] += mastr & mastr = 0
- stat['hj'] += hj & hj = 0
- stat['bj'] += bj & bj = 0
- stat['vaginal'] += sex & sex = 0
- stat['anal'] += anal & anal = 0
- stat['cuni'] += kuni & kuni = 0
- stat['anal_strap_give'] += pegging & pegging = 0
- !!Pain calculation
- paintmp1 = func('shortgs','modul',pain['head'],pain['hair'],pain['ears'],pain['eyebrows'],pain['eyes'],pain['cheeks'],pain['nose'],pain['mouth'])
- paintmp2 = func('shortgs','modul',pain['tummy'],pain['pubic'],pain['vaginal'],pain['labia'],pain['clitoris'],pain['urethra'],pain['cervix'],pain['lips'])
- paintmp3 = func('shortgs','modul',pain['throat'],pain['asscheeks'],pain['asshole'],pain['hips'],pain['thighs'],pain['legL'],pain['legR'],pain['feet'])
- paintmp4 = func('shortgs','modul',pain['toes'],pain['shoulders'],pain['armL'],pain['armR'],pain['hands'],pain['fingers'],pain['chest'],pain['breasts'])
- paintmp5 = func('shortgs','modul',pain['tongue'],pain['neck'],pain['back'],pain['nipples'],pain['ribs'],vgape * 8, agape * 10,spanked * 24)
- pain['total'] = func('shortgs','modul',paintmp1,paintmp2,paintmp3,paintmp4,paintmp5)
- if pain['total'] > 100: pain['total'] = 100
- pain['damage'] = pain['total']
- pain['relief'] = 0
- if alko > 9:
- pain['relief'] = 70
- elseif alko > 6:
- pain['relief'] = 40
- elseif alko > 3:
- pain['relief'] = 15
- end
- if StrongNarkota > 0:
- pain['relief'] = 90
- elseif nark > 0:
- pain['relief'] = 60
- elseif pain['killer'] > 12 and alko <= 9:
- pain['relief'] = 50
- end
- if pain['relief'] ! 0:
- if (pain['total'] / pain['relief']) > 0:
- pain['total'] = pain['total'] / pain['relief']
- elseif pain['total'] > 0:
- pain['total'] = 0
- end
- end
- if pain['total'] > 80:
- if (pcs_health * 5) >= healthmax: pcs_health = pcs_health * 20 / 100
- if (pcs_mood * 5) >= 100: pcs_mood = pcs_mood * 20 / 100
- elseif pain['total'] > 60:
- if (pcs_health * 5 / 2) >= healthmax: pcs_health = pcs_health * 40 / 100
- if (pcs_mood * 5 / 2) >= 100: pcs_mood = pcs_mood * 40 / 100
- elseif pain['total'] > 40:
- if (pcs_health * 5 / 3) >= healthmax: pcs_health = pcs_health * 60 / 100
- if (pcs_mood * 5 / 3) >= 100: pcs_mood = pcs_mood * 60 / 100
- elseif pain['total'] > 20:
- if (pcs_health * 5 / 4) >= healthmax: pcs_health = pcs_health * 80 / 100
- if (pcs_mood * 5 / 4) >= 100: pcs_mood = pcs_mood * 80 / 100
- elseif pain['total'] > 0:
- if (pcs_health * 10 / 9) >= healthmax: pcs_health = pcs_health * 90 / 100
- if (pcs_mood * 10 / 9) >= 100: pcs_mood = pcs_mood * 90 / 100
- end
- !!--------------------------pain calculation end--------------------------------
- !!update skills and attributes to pcs_ from there _lvl values plus adjustments based on condition
- gs 'stat_sklattrib_lvlset'
- !!Sleep variable cap
- if pcs_sleep > 100: pcs_sleep = 100
- if insleep = 0: gs 'stat_display'
- gs 'family_schedule'
- !!--------------------------Job Checks For Icons--------------------------------
- if (acting['shoot_day'] = daystart and actress_cast = 1) or (audition['day'] = daystart):
- acting['icon'] = 1
- else
- acting['icon'] = 0
- end
- if model_job_week < 2 and model['status'] = 1:
- model['icon'] = 1
- else
- model['icon'] = 0
- end
- if pfilmday[0] > 0:
- pornstar['icon'] = 1
- else
- pornstar['icon'] = 0
- end
- !!-------------------------School grades and other checks----------------------
- !! Having this for just the mornings means it is not always correct.
- func('_difficulty','getmaxgrades')
-
- if pcs_grades > max_grades: pcs_grades = max_grades
- if pcs_grades < 0: pcs_grades = 0
- --- stat ---------------------------------
|