# 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 '
Did you start at the end of August or beginning of June?'
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 >= 75 and KatjaKnowBJ ! 1: KatjaKnowBJ = 1
if pav_slut >= 125 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 += '
You feel like a strength has been revealed within you and you gush with magic, lifting you to a new energy level.'
!! 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
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:
!!You are completely healthy shine and a healthy glow.
pcs_mood = 100
SbrosNerdism = 0
$mudnerd = 'You are lost in a fantasy after reading a book.'
end
if lastreadday + 1 = daystart:
SbrosNerdism = 0
$mudnerd = 'You are a little bored and want to plunge into a book.'
end
if lastreadday + 2 = daystart:
SbrosNerdism = 0
if pcs_mood > 50:pcs_mood -= 10
$mudnerd = 'You really want to read something.'
end
if lastreadday + 3 <= daystart:
if pcs_mood > 10:pcs_mood -= 10
SbrosNerdism = 1
$mudnerd = 'You have an incredibly strong desire to read!!!'
end
else
SbrosNerdism = 0
$mudnerd = ''
end
if bimbolevel > 0:
if bimbowithdrawal = 0:
$bimbostatus = 'You''re, like, super hawt today.'
$bimbo_tooltip = 'You''re, like, super hawt today.'
elseif bimbowithdrawal = 1:
$bimbostatus = 'You feel, like, kind of lame today.'
$bimbo_tooltip = 'You feel, like, kind of lame today.'
elseif bimbowithdrawal < 4:
$bimbostatus = 'You feel, like, totally lame today.'
$bimbo_tooltip = 'You feel, like, totally lame today.'
elseif bimbowithdrawal < 6:
if pcs_mood > 50: pcs_mood -= 10
$bimbostatus = 'You really feel, like, awful today.'
$bimbo_tooltip = 'You really feel, like, awful today.'
elseif bimbowithdrawal >= 6:
if pcs_mood > 10: pcs_mood -= 10
$bimbostatus= 'You feel that, like, horrible today!'
$bimbo_tooltip = 'You feel that, like, horrible today!'
end
if bimbowithdrawal > 30:
bimbowithdrawal = 0
bimbo = 0
bimbolevel = 0
$stat_msg += '
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 += '
Absorb ext <>'
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 += '
SOMETHING HAPPENED!'
end
$stat_msg += '
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 += '
You starved to death, but Cheat Mode keeps you Alive.'
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 += '
You died from injuries, but Cheat Mode keeps you Alive.'
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 += '
You are insane, but Cheat Mode keeps you Alive.'
!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 = 'You are very healthy.'
elseif pcs_health >= healthmax * 75 / 100:
$pcs_health = 'You are healthy.'
elseif pcs_health >= healthmax * 50 / 100:
$pcs_health = 'You are not healthy.'
elseif pcs_health >= healthmax * 25 / 100:
$pcs_health = 'You are sick.'
else
$pcs_health = 'You are on the verge of death.'
end
if pcs_willpwr >= willpowermax:
$pcs_willpwr = 'You feel in charge of your actions.'
elseif pcs_willpwr >= willpowermax * 75 / 100:
$pcs_willpwr = 'You are mostly in control.'
elseif pcs_willpwr >= willpowermax * 50 / 100:
$pcs_willpwr = 'You might have to make some concessions.'
elseif pcs_willpwr >= willpowermax * 25 / 100:
$pcs_willpwr = 'You will have to toe the line.'
else
$pcs_willpwr = 'You are completely at our people''s mercy.'
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
end
if pcs_mood >= 80:
$pcs_mood = 'You are in a great mood.'
elseif pcs_mood >= 60:
$pcs_mood = 'You are in a good mood.'
elseif pcs_mood >= 40:
$pcs_mood = 'You are in an OK mood.'
elseif pcs_mood >= 20:
$pcs_mood = 'You are in a bad mood.'
elseif pcs_mood >= 5:
$pcs_mood = 'You are in a terrible mood.'
else
$pcs_mood = 'You are really depressed and need to improve your mood.'
end
if pcs_energy >= 80:
$pcs_energy = 'You couldn''t eat one more bite.'
elseif pcs_energy >= 40:
$pcs_energy = 'You''re not really hungry, but a small snack would be very welcome.'
elseif pcs_energy >= 8:
$pcs_energy = 'You are hungry.'
else
$pcs_energy = 'You are very hungry.'
end
if pcs_hydra >= 80:
$pcs_hydra = 'You are not thirsty at all.'
elseif pcs_hydra >= 40:
$pcs_hydra = 'You are slightly thirsty.'
elseif pcs_hydra >= 8:
$pcs_hydra = 'You are thirsty.'
else
$pcs_hydra = 'You are very thirsty.'
end
if pcs_sleep >= 80:
$pcs_sleep = 'You are well rested.'
elseif pcs_sleep >= 40:
$pcs_sleep = 'You are slightly tired.'
elseif pcs_sleep >= 8:
$pcs_sleep = 'You are tired.'
else
$pcs_sleep = 'You are very tired.'
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 += '
You have 1 night left on your hotel booking.'
if hotelroom1day < daystart and hour <= 11: $stat_msg += '
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'
--- stat ---------------------------------