Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- # Add script to HS1_Directory\Plugins\Console\Lib
- # During H-scene type the following lines in the console.
- # Replace scriptFilename with the name of the file excluding the .py extension
- # import scriptFilename
- # scriptFilename.start()
- import UnityEngine
- import CharFemale
- import unity_util
- from datetime import datetime
- from UnityEngine import Input, KeyCode
- def start():
- unity_util.clean_behaviors()
- class Controller():
- def __init__(self):
- #-------------
- # Options
- #-------------
- self.minSliders = [
- 1, #height
- 0.4, #breast size
- 0.5, #breast height
- 0.5, #breast direction
- 0.5, #breast spacing
- 0.5, #breast angle
- 0.5, #breast length
- 0.5, #areola puffiness
- 0.5, #nipple width
- 0.5, #head
- 0.5, #neck width
- 0.5, #neck thickness
- 0.3, #thorax width
- 0.4, #thorax thickness
- 0.5, #chest width
- 0.5, #chest thickness
- 0.4, #waist width
- 0.4, #waist thickness
- 0.5, #waist height
- 0.25, #pelvis width
- 0.5, #pelvis thickness
- 0.63, #hips width
- 0.5, #hips thickness
- 1.2, #butt
- 0.5, #butt angle
- 0.75, #thighs
- 0.5, #legs
- 0.5, #calves
- 0.5, #ankles
- 0.5, #shoulders
- 0.5, #upper arms
- 0.5, #lower arms
- ]
- self.maxSliders = [
- 1, #height
- 2, #breast size
- 0.5, #breast height
- 0.75, #breast direction
- 2, #breast spacing
- 0.5, #breast angle
- 0.5, #breast length
- -0.5, #areola puffiness
- 4, #nipple width
- 0.5, #head
- 0.5, #neck width
- 0.5, #neck thickness
- 0.3, #thorax width
- 0.4, #thorax thickness
- 0.5, #chest width
- 0.5, #chest thickness
- 0.15, #waist width
- 0.2, #waist thickness
- 0.5, #waist height
- 1.5, #pelvis width
- 0.75, #pelvis thickness
- 1.3, #hips width
- 1, #hips thickness
- 5, #butt
- 0.5, #butt angle
- 3, #thighs
- 0.35, #legs
- 1.3, #calves
- 0.5, #ankles
- 0.5, #shoulders
- 0.5, #upper arms
- 0.5 #lower arms
- ]
- self.bustGravityMin = 0.3
- self.bustGravityMax = 0.7
- self.bodyDetailWeightMin = 1
- self.bodyDetailWeightMax = 1
- # Number of steps from minimum size to maximum size. Increase number to slow growth
- self.totalSteps = 1000
- #-------------
- # Don't edit below here unless you know what you're doing
- self.ChangeToMinimumSize()
- self.orgasm = False
- self.orgasmDateTime = datetime.now()
- print('Script started. ')
- print('Controls: ')
- print(' Space = Grow ')
- print(' Insert = Shrink ')
- print(' Delete = Reset to minimum size ')
- def Update(self):
- try:
- if (Input.GetKey(KeyCode.Space)):
- self.Expand()
- elif (Input.GetKey(KeyCode.Insert)):
- self.Shrink()
- if (Input.GetKey(KeyCode.Delete)):
- self.ChangeToMinimumSize()
- if (self.orgasm):
- self.DuringOrgasm()
- else:
- self.CheckOrgasm()
- except:
- print("Unexpected error:", sys.exc_info()[0])
- def DuringOrgasm(self):
- diff = datetime.now() - self.orgasmDateTime
- if (diff.seconds < 4):
- self.Expand()
- def CheckOrgasm(self):
- fem = UnityEngine.Object.FindObjectsOfTypeAll(CharFemale)[1]
- if (fem.hohoAkaRate == 1.0):
- self.orgasm = True
- self.orgasmDateTime = datetime.now()
- def UpdateBreastSoftness(self):
- if (self.currentSliders[1] < 0.6):
- self.softness = 1.5
- elif (self.currentSliders[1] < 0.7):
- self.softness = 1.4
- elif (self.currentSliders[1] < 0.8):
- self.softness = 1.3
- elif (self.currentSliders[1] < 0.9):
- self.softness = 1.2
- elif (self.currentSliders[1] < 1):
- self.softness = 1.1
- elif (self.currentSliders[1] < 1.1):
- self.softness = 1
- elif (self.currentSliders[1] < 1.2):
- self.softness = 0.92
- elif (self.currentSliders[1] < 1.3):
- self.softness = .84
- elif (self.currentSliders[1] < 1.4):
- self.softness = 0.76
- elif (self.currentSliders[1] < 1.5):
- self.softness = 0.7
- elif (self.currentSliders[1] < 1.6):
- self.softness = 0.67
- elif (self.currentSliders[1] < 1.7):
- self.softness = 0.64
- elif (self.currentSliders[1] < 1.8):
- self.softness = 0.61
- elif (self.currentSliders[1] < 1.9):
- self.softness = 0.58
- elif (self.currentSliders[1] < 2):
- self.softness = 0.55
- elif (self.currentSliders[1] < 2.1):
- self.softness = 0.524
- elif (self.currentSliders[1] < 2.2):
- self.softness = 0.498
- elif (self.currentSliders[1] < 2.3):
- self.softness = 0.472
- elif (self.currentSliders[1] < 2.4):
- self.softness = 0.446
- elif (self.currentSliders[1] < 2.5):
- self.softness = 0.42
- elif (self.currentSliders[1] < 2.6):
- self.softness = 0.406
- elif (self.currentSliders[1] < 2.7):
- self.softness = 0.392
- elif (self.currentSliders[1] < 2.8):
- self.softness = 0.378
- elif (self.currentSliders[1] < 2.9):
- self.softness = 0.364
- elif (self.currentSliders[1] < 3):
- self.softness = 0.35
- else:
- self.softness = 0
- def Expand(self):
- #if True:
- if (self.currentSliders[1] < self.maxSliders[1]):
- for idx, sliderVal in enumerate(self.currentSliders):
- self.currentSliders[idx] += getSliderStep(idx, self.minSliders, self.maxSliders, self.totalSteps)
- if (self.currentSliders[1] > 1.5):
- self.currentSliders[8] += getSliderStep(8, self.minSliders, self.maxSliders, self.totalSteps)
- bustGravityStep = (self.bustGravityMax - self.bustGravityMin) / self.totalSteps
- self.bustGravity += bustGravityStep
- if (self.bustGravity > self.bustGravityMax):
- self.bustGravity = self.bustGravityMax
- bodyDetailWeightStep = (self.bodyDetailWeightMax - self.bodyDetailWeightMin) / self.totalSteps
- self.bodyDetailWeight += bodyDetailWeightStep
- if (self.bodyDetailWeight > self.bodyDetailWeightMax):
- self.bodyDetailWeight = self.bodyDetailWeightMax
- self.UpdateBreastSoftness()
- updateSize(self.currentSliders, self.softness, self.bustGravity, self.bodyDetailWeight)
- def Shrink(self):
- if (self.currentSliders[1] > self.minSliders[1]):
- for idx, sliderVal in enumerate(self.currentSliders):
- self.currentSliders[idx] -= getSliderStep(idx, self.minSliders, self.maxSliders, self.totalSteps)
- bustGravityStep = (self.bustGravityMax - self.bustGravityMin) / self.totalSteps
- self.bustGravity -= bustGravityStep
- bodyDetailWeightStep = (self.bodyDetailWeightMax - self.bodyDetailWeightMin) / self.totalSteps
- self.bodyDetailWeight -= bodyDetailWeightStep
- self.UpdateBreastSoftness()
- updateSize(self.currentSliders, self.softness, self.bustGravity, self.bodyDetailWeight)
- def ChangeToMinimumSize(self):
- self.currentSliders = list(self.minSliders)
- self.bustGravity = self.bustGravityMin
- self.bodyDetailWeight = self.bodyDetailWeightMin
- self.UpdateBreastSoftness()
- updateSize(self.currentSliders, self.softness, self.bustGravity, self.bodyDetailWeight)
- return unity_util.create_gui_behavior(Controller)
- def getSliderStep(index, sliderMin, sliderMax, totalSteps):
- return (sliderMax[index] - sliderMin[index]) / totalSteps
- def updateSize(sliderArray, breastSoftness, bustGravity, bodyDetailWeight):
- fem = UnityEngine.Object.FindObjectsOfTypeAll(CharFemale)[1]
- for idx, sliderVal in enumerate(sliderArray):
- fem.femaleCustom.SetShapeBodyValue(idx, sliderVal)
- fem.femaleCustomInfo.bustSoftness = breastSoftness
- fem.femaleCustomInfo.bustWeight = bustGravity
- fem.femaleCustomInfo.bodyDetailWeight = bodyDetailWeight
- fem.updateShapeBody = True
- fem.UpdateBustSoftnessAndGravity()
- fem.femaleCustom.ChangeBodyDetailWeight()
- fem.femaleBody.updateBustSize = True
- fem.resetupDynamicBoneBust = True
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement