From 8562cc68b3a80b2831698b536f7c73530bd84de9 Mon Sep 17 00:00:00 2001 From: klorpa <30924131+klorpa@users.noreply.github.com> Date: Tue, 14 Aug 2018 14:20:23 -0500 Subject: [PATCH] Cochlear Implants --- src/init/storyInit.tw | 2 + src/interaction/cyberConfig.tw | 14 +++ src/interaction/researchLab.tw | 10 +++ src/js/fresult.tw | 2 +- src/js/storyJS.tw | 2 +- src/npc/startingGirls/startingGirls.tw | 14 +-- src/pregmod/organFarmOptions.tw | 15 ++++ src/uncategorized/BackwardsCompatibility.tw | 12 ++- src/uncategorized/customSlave.tw | 14 +-- src/uncategorized/generateXXSlave.tw | 6 ++ src/uncategorized/generateXYSlave.tw | 6 ++ src/uncategorized/labReport.tw | 4 + src/uncategorized/multiImplant.tw | 37 ++++++++ src/uncategorized/reAWOL.tw | 2 + src/uncategorized/reNickname.tw | 22 ++++- src/uncategorized/remoteSurgery.tw | 45 +++++++++- src/uncategorized/surgeryDegradation.tw | 94 +++++++++++++++++++-- src/utility/assayWidgets.tw | 6 ++ src/utility/slaveCreationWidgets.tw | 21 ++--- 19 files changed, 290 insertions(+), 38 deletions(-) diff --git a/src/init/storyInit.tw b/src/init/storyInit.tw index d3c60420e32..073634d5f2f 100644 --- a/src/init/storyInit.tw +++ b/src/init/storyInit.tw @@ -1283,6 +1283,7 @@ advGracePLimb: 0, advCombatPLimb: 0, cyberneticPLimb: 0, ocularImplant: 0, +cochlearImplant: 0, erectileImplant: 0 } >> @@ -1322,6 +1323,7 @@ advGracePLimb: 0, advCombatPLimb: 0, cyberneticPLimb: 0, ocularImplant: 0, +cochlearImplant: 0, erectileImplant: 0 } >> diff --git a/src/interaction/cyberConfig.tw b/src/interaction/cyberConfig.tw index 36a8aac20c6..8ac0b73002e 100644 --- a/src/interaction/cyberConfig.tw +++ b/src/interaction/cyberConfig.tw @@ -50,6 +50,20 @@ | [[Heart-shaped|cyberConfig][$activeSlave.eyeColor = "heart-shaped",$temp = 2,$cash -= $modCost]] <</if>> + <<if $activeSlave.earImplant == 1>><br><br> + $He has a cochlear implant installed. + <<if $activeSlave.hears == 0>> + They are operating normally. + <<elseif $activeSlave.hears == -1>> + They are set to muffle $his hearing. + <<else>> + They are turned off. + <</if>> + <br><br> + <<if $activeSlave.hears != 0>>[[Restore hearing|cyberConfig][$activeSlave.hears = 0,$temp = 3]] | <</if>> + <<if $activeSlave.hears != -1>>[[Muffle|cyberConfig][$activeSlave.hears = -1,$temp = 3]] | <</if>> + <<if $activeSlave.hears != -2>>[[Disable|cyberConfig][$activeSlave.hears = -2,$temp = 3]]<</if>> + <<if $activeSlave.PLimb > 0>><br><br> $He has PLimb interface installed. You can assign and adjust $his prosthetics here. <<if $activeSlave.amp <= -1>><br> diff --git a/src/interaction/researchLab.tw b/src/interaction/researchLab.tw index 4da68401160..9dee8f21291 100644 --- a/src/interaction/researchLab.tw +++ b/src/interaction/researchLab.tw @@ -146,6 +146,9 @@ <<if $researchLab.ocularImplant == 0 && $stockpile.ocularImplant > 0>><br> [[Reverse engineer ocular implants|Research Lab][$stockpile.ocularImplant -= 1,$researchLab.productionTime = 100,$researchLab.research = "Ocular implants"]] <</if>> + <<if $researchLab.cochlearImplant == 0 && $stockpile.cochlearImplant > 0>><br> + [[Reverse engineer cochlear implants|Research Lab][$stockpile.cochlearImplant -= 1,$researchLab.productionTime = 100,$researchLab.research = "Cochlear implants"]] + <</if>> <<if $researchLab.erectileImplant == 0 && $stockpile.erectileImplant > 0>><br> [[Reverse engineer erectile implant|Research Lab][$stockpile.erectileImplant -= 1,$researchLab.productionTime = 100,$researchLab.research = "Erectile implant"]] <</if>> @@ -185,6 +188,9 @@ <<if $researchLab.ocularImplant == 1>><br> [[Build ocular implants|Research Lab][$researchLab.productionTime = 80,$researchLab.manufacture = "Ocular implants"]] // Currently have: $stockpile.ocularImplant// <</if>> + <<if $researchLab.cochlearImplant == 1>><br> + [[Build cochlear implants|Research Lab][$researchLab.productionTime = 80,$researchLab.manufacture = "Cochlear implants"]] // Currently have: $stockpile.cochlearImplant// + <</if>> <<if $researchLab.erectileImplant == 1>><br> [[Build Erectile implant|Research Lab][$researchLab.productionTime = 50,$researchLab.manufacture = "Erectile implant"]] // Costs <<print cashFormat(25000)>>. Currently have: $stockpile.erectileImplant// <</if>> @@ -204,6 +210,7 @@ [[Advanced beauty limbs|Research Lab][$temp = 1, $cash -= 30000, $stockpile.advGracePLimb += 1]] //Costs <<print cashFormat(30000)>>. Currently have: $stockpile.advGracePLimb//<br> [[Advanced combat limbs|Research Lab][$temp = 1, $cash -= 30000, $stockpile.advCombatPLimb += 1]] //Costs <<print cashFormat(30000)>>. Currently have: $stockpile.advCombatPLimb//<br> [[Ocular implants|Research Lab][$temp = 1, $cash -= 35000, $stockpile.ocularImplant += 1]] //Costs <<print cashFormat(35000)>>. Currently have: $stockpile.ocularImplant//<br> + [[Cochlear implants|Research Lab][$temp = 1, $cash -= 35000, $stockpile.cochlearImplant += 1]] //Costs <<print cashFormat(35000)>>. Currently have: $stockpile.cochlearImplant//<br> /*[[Erectile implant|Research Lab][$temp = 1, $cash -= 25000, $stockpile.erectileImplant += 1]] //Costs <<print cashFormat(25000)>>. Currently have: $stockpile.erectileImplant//*/ <br><br>__Schematics__<br> @@ -228,6 +235,9 @@ <<if $researchLab.ocularImplant != 1 && $researchLab.research != "Ocular implants">> [[Ocular implants|Research Lab][$temp = 1, $cash -= 160000, $researchLab.ocularImplant = 1]] //Costs <<print cashFormat(160000)>>.//<br> <</if>> + <<if $researchLab.cochlearImplant != 1 && $researchLab.research != "Cochlear implants">> + [[Cochlear implants|Research Lab][$temp = 1, $cash -= 160000, $researchLab.cochlearImplant = 1]] //Costs <<print cashFormat(160000)>>.//<br> + <</if>> /*<<if $researchLab.erectileImplant != 1 && $researchLab.research != "Erectile implant">> [[Erectile implant|Research Lab][$temp = 1, $cash -= 95000, $researchLab.erectileImplant = 1]] //Costs <<print cashFormat(95000)>>.// <</if>>*/ diff --git a/src/js/fresult.tw b/src/js/fresult.tw index aef0d694df5..1dff5592acd 100644 --- a/src/js/fresult.tw +++ b/src/js/fresult.tw @@ -194,7 +194,7 @@ window.FResult = (function() { function calcHearing(slave) { if (!canHear(slave)) V.FResult -= 3; - else if (slave.ears <= -1) { + else if (slave.hears <= -1) { if (slave.earwear !== "corrective glasses" && slave.earwear !== "corrective contacts") V.FResult -= 1; } else if (slave.earwear === "blurring glasses") diff --git a/src/js/storyJS.tw b/src/js/storyJS.tw index 405c0fd43e7..db35a0008ef 100644 --- a/src/js/storyJS.tw +++ b/src/js/storyJS.tw @@ -370,7 +370,7 @@ window.canSee = function(slave) { window.canHear = function(slave) { if (!slave) { return null; - } else if (slave.ears > -2) { + } else if (slave.hears > -2) { return true; } else { return false; diff --git a/src/npc/startingGirls/startingGirls.tw b/src/npc/startingGirls/startingGirls.tw index 734d49bc6b6..e8d9f90d896 100644 --- a/src/npc/startingGirls/startingGirls.tw +++ b/src/npc/startingGirls/startingGirls.tw @@ -785,21 +785,21 @@ Her nationality is $activeSlave.nationality. <br>''Hearing:'' <span id="hearing"> <<if $seeExtreme == 1>> - <<if $activeSlave.ears == -2>>Deaf. - <<elseif $activeSlave.ears == -1>>Hard of hearing. + <<if $activeSlave.hears == -2>>Deaf. + <<elseif $activeSlave.hears == -1>>Hard of hearing. <<else>>Normal. <</if>> <<else>> -<<if $activeSlave.ears == -1>>Hard of hearing. +<<if $activeSlave.hears == -1>>Hard of hearing. <<else>>Normal. <</if>> <</if>> </span> -<<link "Normal">><<set $activeSlave.ears = 1>><<replace "#hearing">>Normal.<</replace>><<StartingGirlsCost>><</link>> | -<<link "Hard Of Hearing">><<set $activeSlave.ears = -1>><<replace "#hearing">>Hard of hearing.<</replace>><<StartingGirlsCost>><</link>> +<<link "Normal">><<set $activeSlave.hears = 0>><<replace "#hearing">>Normal.<</replace>><<StartingGirlsCost>><</link>> | +<<link "Hard Of Hearing">><<set $activeSlave.hears = -1>><<replace "#hearing">>Hard of hearing.<</replace>><<StartingGirlsCost>><</link>> <<if $seeExtreme == 1>> | -<<link "Deaf">><<set $activeSlave.ears = -2>><<replace "#hearing">>Deaf.<</replace>><<StartingGirlsCost>><</link>> +<<link "Deaf">><<set $activeSlave.hears = -2>><<replace "#hearing">>Deaf.<</replace>><<StartingGirlsCost>><</link>> <</if>> <br><br>''Breasts:'' @@ -1582,7 +1582,7 @@ Her nationality is $activeSlave.nationality. <<link "Onahole">> <<StartingGirlsWorkaround>> <<StartingGirlsRefresh>> - <<set $activeSlave.analSkill = 0, $activeSlave.oralSkill = 0, $activeSlave.vaginalSkill = 0, $activeSlave.whoreSkill = 0, $activeSlave.entertainSkill = 0, $activeSlave.combatSkill = 0, $activeSlave.fetish = "mindbroken", $activeSlave.amp = 1, $activeSlave.voice = 0, $activeSlave.eyes = 1, $activeSlave.ears = 1>> + <<set $activeSlave.analSkill = 0, $activeSlave.oralSkill = 0, $activeSlave.vaginalSkill = 0, $activeSlave.whoreSkill = 0, $activeSlave.entertainSkill = 0, $activeSlave.combatSkill = 0, $activeSlave.fetish = "mindbroken", $activeSlave.amp = 1, $activeSlave.voice = 0, $activeSlave.eyes = 1, $activeSlave.hears = 0>> <<SaleDescription>> <<StartingGirlsCost>> <</link>> diff --git a/src/pregmod/organFarmOptions.tw b/src/pregmod/organFarmOptions.tw index cece3de1121..27db6ee7b34 100644 --- a/src/pregmod/organFarmOptions.tw +++ b/src/pregmod/organFarmOptions.tw @@ -14,6 +14,7 @@ pigOvaries: 0, dogOvaries: 0, eyes: 0, + cochleae: 0, voicebox: 0, mpreg: 0, mpregPig: 0, @@ -42,6 +43,8 @@ <<set $slaveOrgans.dogOvaries = 1>> <<elseif $organs[_i].type == "eyes">> <<set $slaveOrgans.eyes = 1>> + <<elseif $organs[_i].type == "cochleae">> + <<set $slaveOrgans.cochleae = 1>> <<elseif $organs[_i].type == "voicebox">> <<set $slaveOrgans.voicebox = 1>> <<elseif $organs[_i].type == "mpreg">> @@ -191,6 +194,18 @@ The fabricator is ready to grow an organ for $him. Extract tissue to begin growi <</link>> //Costs <<print cashFormat(10000)>> and is imperfect - eyes will lack natural color// <</if>> <</if>> +<<if $slaveOrgans.cochleae != 1>> + <<if $activeSlave.hears <= -2 && $activeSlave.earImplant != 1>> + <br> + <<link "Cochleae">> + <<set $cash -= 10000>> + <<set _newOrgan = {type: "cochleae", weeksToCompletion: "10", ID: 0}>> + <<set _newOrgan.ID = $activeSlave.ID>> + <<set $organs.push(_newOrgan)>> + <<goto "Remote Surgery">> + <</link>> //Costs <<print cashFormat(8000)>>// + <</if>> +<</if>> <<if $slaveOrgans.voicebox != 1>> <<if ($activeSlave.voice == 0)>> <br> diff --git a/src/uncategorized/BackwardsCompatibility.tw b/src/uncategorized/BackwardsCompatibility.tw index c9b1aeca145..a58a01436bc 100644 --- a/src/uncategorized/BackwardsCompatibility.tw +++ b/src/uncategorized/BackwardsCompatibility.tw @@ -2449,8 +2449,16 @@ Setting missing slave variables: <<set _Slave.eyewear = "none">> <</if>> -<<if ndef _Slave.ears>> - <<set _Slave.ears = 1>> +<<if ndef _Slave.hears>> + <<set _Slave.hears = 0>> +<</if>> + +<<if ndef _Slave.earwear>> + <<set _Slave.earwear = "none">> +<</if>> + +<<if ndef _Slave.earImplant>> + <<set _Slave.earImplant = 0>> <</if>> <<if ndef _Slave.indenture>> diff --git a/src/uncategorized/customSlave.tw b/src/uncategorized/customSlave.tw index 2acf6dbe685..53d85903cea 100644 --- a/src/uncategorized/customSlave.tw +++ b/src/uncategorized/customSlave.tw @@ -1090,24 +1090,24 @@ Skin tone: <span id = "skin"> <br> -<span id = "ears"> -<<if $customSlave.ears == 1>>Normal hearing. -<<elseif $customSlave.ears == -1>>Hard of hearing. +<span id = "hears"> +<<if $customSlave.hears == 0>>Normal hearing. +<<elseif $customSlave.hears == -1>>Hard of hearing. <<else>>Deaf. <</if>> </span> <<link "Normal Hearing">> - <<set $customSlave.ears = 1>> + <<set $customSlave.hears = 0>> <<CustomSlaveEars>> <</link>> | <<link "Hard Of Hearing">> - <<set $customSlave.ears = -1>> + <<set $customSlave.hears = -1>> <<CustomSlaveEars>> <</link>> | <<link "Deaf">> - <<set $customSlave.ears = -2>> + <<set $customSlave.hears = -2>> <<CustomSlaveEars>> <</link>> @@ -1165,7 +1165,7 @@ Nationality: $customSlave.nationality. <br><br> <<link "Reset custom order form">> - <<set $customSlave = {age: 19, health: 0, muscles: 0, lips: 15, heightMod: "normal", weight: 0, face: 0, race: "white", skin: "left natural", boobs: 500, butt: 3, sex: 1, virgin: 0, dick: 2, balls: 2, clit: 0, labia: 0, vaginaLube: 1, analVirgin: 0, skills: 15, whoreSkills: 15, combatSkills: 0, intelligence: 0, intelligenceImplant: 1, nationality: "Stateless", amp: 0, eyes: 1, ears: 1}>> + <<set $customSlave = {age: 19, health: 0, muscles: 0, lips: 15, heightMod: "normal", weight: 0, face: 0, race: "white", skin: "left natural", boobs: 500, butt: 3, sex: 1, virgin: 0, dick: 2, balls: 2, clit: 0, labia: 0, vaginaLube: 1, analVirgin: 0, skills: 15, whoreSkills: 15, combatSkills: 0, intelligence: 0, intelligenceImplant: 1, nationality: "Stateless", amp: 0, eyes: 1, hears: 0}>> <<goto "Custom Slave">> <</link>> diff --git a/src/uncategorized/generateXXSlave.tw b/src/uncategorized/generateXXSlave.tw index ed69f34fcca..c5deb89c068 100644 --- a/src/uncategorized/generateXXSlave.tw +++ b/src/uncategorized/generateXXSlave.tw @@ -189,6 +189,12 @@ <<set $activeSlave.eyes = -2>> <</if>> <</if>> +<<if ($activeSlave.physicalAge > random(0,100))>> + <<set $activeSlave.hears = -1>> + <<if random(0,100) > 90>> + <<set $activeSlave.hears = -2>> + <</if>> +<</if>> <<if ($activeSlave.intelligenceImplant == 1) && ($activeSlave.accent >= 3) && (3+$activeSlave.intelligence) > random(0, 6)>> diff --git a/src/uncategorized/generateXYSlave.tw b/src/uncategorized/generateXYSlave.tw index 257518dd1e6..461e03a0d40 100644 --- a/src/uncategorized/generateXYSlave.tw +++ b/src/uncategorized/generateXYSlave.tw @@ -98,6 +98,12 @@ <<set $activeSlave.eyes = -2>> <</if>> <</if>> +<<if ($activeSlave.physicalAge > random(0,100))>> + <<set $activeSlave.hears = -1>> + <<if random(0,100) > 90>> + <<set $activeSlave.hears = -2>> + <</if>> +<</if>> /% Since we use nationality for height effects we need to initialize it now instead of later on like in vanilla Free Cities. %/ <<if $fixedRace == 0>> diff --git a/src/uncategorized/labReport.tw b/src/uncategorized/labReport.tw index 6011d0cc1f3..23e63a87604 100644 --- a/src/uncategorized/labReport.tw +++ b/src/uncategorized/labReport.tw @@ -27,6 +27,8 @@ <<set $researchLab.cyberneticPLimb = 1>> <<case "Ocular implants">> <<set $researchLab.ocularImplant = 1>> + <<case "Cochlear implants">> + <<set $researchLab.cochlearImplant = 1>> <<case "Erectile implant">> <<set $researchLab.erectileImplant = 1>> <</switch>> @@ -56,6 +58,8 @@ <<set $stockpile.cyberneticPLimb += 1, $researchLab.productionTime = 150>> <<case "Ocular implants">> <<set $stockpile.ocularImplant += 1, $researchLab.productionTime = 80>> + <<case "Cochlear implants">> + <<set $stockpile.cochlearImplant += 1, $researchLab.productionTime = 60>> <<case "Erectile implant">> <<set $stockpile.erectileImplant += 1, $researchLab.productionTime = 50>> <</switch>> diff --git a/src/uncategorized/multiImplant.tw b/src/uncategorized/multiImplant.tw index d7d55afe313..2f6e31db365 100644 --- a/src/uncategorized/multiImplant.tw +++ b/src/uncategorized/multiImplant.tw @@ -18,6 +18,7 @@ You head down to your <<if $surgeryUpgrade == 1>>heavily upgraded and customized pigOvaries: 0, dogOvaries: 0, eyes: 0, + cochleae: 0, voicebox: 0, mpreg: 0, mpregPig: 0, @@ -61,6 +62,9 @@ You head down to your <<if $surgeryUpgrade == 1>>heavily upgraded and customized <<elseif $completedOrgans[_j].type == "eyes">> <<set _slaveOrgans.eyes = $completedOrgans[_j]>> <<set $completedOrgans.deleteAt(_j),_j-->> + <<elseif $completedOrgans[_j].type == "cochleae">> + <<set _slaveOrgans.cochleae = $completedOrgans[_j]>> + <<set $completedOrgans.deleteAt(_j),_j-->> <<elseif $completedOrgans[_j].type == "voicebox">> <<set _slaveOrgans.voicebox = $completedOrgans[_j]>> <<set $completedOrgans.deleteAt(_j),_j-->> @@ -113,6 +117,39 @@ You head down to your <<if $surgeryUpgrade == 1>>heavily upgraded and customized <<set $completedOrgans.push(_slaveOrgans.eyes)>> <</if>> <</if>> + /* cochleae */ + <<if _slaveOrgans.cochleae != 0>> + <<if ($activeSlave.hears == -2) && $activeSlave.earImplant != 1>> + <<set $cash -= $surgeryCost>> + <<set $activeSlave.hears = 0>> + <<set $activeSlave.eyeColor = $activeSlave.origEye>> + /* no way to salvage original eye color */ + <<set $activeSlave.health -= 20>> + <<if $organFarmUpgrade == 2>> + <<set $activeSlave.chem += 20>> + <</if>> + <<set $surgeryType = "undeafen">> + <br><hr> + <<include "Surgery Degradation">> + <<elseif $activeSlave.earImplant == 1>> + <<set $cash -= $surgeryCost>> + <<set $stockpile.cochlearImplant++>> + <<set $activeSlave.hears = 0>> + <<set _oldEyes = $genePool.find(function(s) { return s.ID = $activeSlave.ID; })>> + <<set $activeSlave.origEye = _oldEyes.origEye>> + <<set $activeSlave.eyeColor = $activeSlave.origEye>> + <<set $activeSlave.health -= 20>> + <<if $organFarmUpgrade == 2>> + <<set $activeSlave.chem += 20>> + <</if>> + <<set $surgeryType = "newEars">> + <<include "Surgery Degradation">> + <<else>> + <br><hr> + @@.red;Could not implant cochleae on $activeSlave.slaveName: she is not deaf.@@ + <<set $completedOrgans.push(_slaveOrgans.cochleae)>> + <</if>> + <</if>> /* voice */ <<if _slaveOrgans.voicebox != 0>> <<if ($activeSlave.voice == 0)>> diff --git a/src/uncategorized/reAWOL.tw b/src/uncategorized/reAWOL.tw index a568f0e82fd..c769fb19d2f 100644 --- a/src/uncategorized/reAWOL.tw +++ b/src/uncategorized/reAWOL.tw @@ -88,6 +88,7 @@ Your window of opportunity to act is closing. If you have plans for punishing th <<set $activeSlave.muscles = 50>> <<set $activeSlave.weight = random(-10,10)>> <<set $activeSlave.eyes = 1>> + <<set $activeSlave.hears = 0>> <<set $activeSlave.anus = 0>> <<set $activeSlave.analSkill = 0>> <<set $activeSlave.whoreSkill = 0>> @@ -168,6 +169,7 @@ Your window of opportunity to act is closing. If you have plans for punishing th <<set $activeSlave.muscles = 50>> <<set $activeSlave.weight = random(-10,10)>> <<set $activeSlave.eyes = 1>> + <<set $activeSlave.hears = 0>> <<set $activeSlave.anus = 0>> <<set $activeSlave.analSkill = 0>> <<set $activeSlave.whoreSkill = 0>> diff --git a/src/uncategorized/reNickname.tw b/src/uncategorized/reNickname.tw index 3235bbdfee4..439251e0d32 100644 --- a/src/uncategorized/reNickname.tw +++ b/src/uncategorized/reNickname.tw @@ -183,6 +183,12 @@ <<if ($activeSlave.eyes == -2)>> <<set $qualifiedNicknames.push("blind")>> <</if>> +<<if ($activeSlave.hears == -2)>> + <<set $qualifiedNicknames.push("deaf")>> +<</if>> +<<if ($activeSlave.voice == 0)>> + <<set $qualifiedNicknames.push("mute")>> +<</if>> <<if $activeSlave.breedingMark == 1 && $propOutcome == 1>> <<set $qualifiedNicknames.push("mark")>> <</if>> @@ -1121,10 +1127,22 @@ <<case "blind">> <<set $nickname = either("'Batty'", "'Blind'", "'Braille'", "'Cataracts'", "'Crash'", "'Deadeye'", "'Eyeless'", "'No-Sight'", "'Sightless'", "'Stares'", "'White Cane'")>> - <<set $situationDesc = "is blind. $His dull eyes reveal $his condition. $He has to feel $his way between jobs and is at the mercy of everyone.">> + <<set $situationDesc = "is blind. $His dull eyes reveal $his condition. $He has to feel $his way between jobs, and is at the mercy of everyone.">> <<set $applyDesc = "accepts that $his disability defines $him. $He keeps $his eyes wide open, no longer fearing what others say about them.">> <<set $notApplyDesc = "understands that $he is expected to obey, work, and fuck just like any of your other slaves, regardless of $his eyesight.">> +<<case "deaf">> + <<set $nickname = either("'Adder'", "'Cochlear'", "'Deaf'", "'Deaf Ears'", "'Deafened'", "'Decibel'", "'Ear Plugs'", "'Earless'", "'Hearing Aid'", "'Hearing Impaired'", "'Lip Reader'", "'Post'", "'Sign Language'", "'Stone Deaf'", "'Tinnitus'", "'Unhearing'")>> + <<set $situationDesc = "is deaf. $He is on constant alert for the commands and orders $he can not hear, and is at the mercy of everyone.">> + <<set $applyDesc = "accepts that $his disability defines $him. $He takes pride in knowing that $he's being insulted on the fact that $he can't hear any insults.">> + <<set $notApplyDesc = "understands that $he is expected to obey, work, and fuck just like any of your other slaves, regardless of $his hearing.">> + +<<case "mute">> + <<set $nickname = either("'Aphonic'", "'Dumb'", "'Gagged'", "'Mute'", "'Mutie'", "'Quiet'", "'Sign Language'", "'Silent'", "'Soundless'", "'Speechless'", "'Tight-Lipped'", "'Tongueless'", "'Voiceless'", "'Wordless'")>> + <<set $situationDesc = "is mute. $He poorly attempts to communicate with often panicky gesturing, and is at the mercy of everyone.">> + <<set $applyDesc = "accepts that $his disability defines $him. $He gestures with much less panic, now that $his communication problems are common knowledge.">> + <<set $notApplyDesc = "understands that $he is expected to obey, work, and fuck just like any of your other slaves, regardless of $his voice.">> + <<case "preg">> <<set $nickname = either("'Breeder'", "'Breeding Bitch'", "'Breeding Cow'", "'Breeding Mare'", "'Breeding Sow'", "'Breeding Stock'", "'Broodmother'", "'Fertile'", "'Mare'", "'Mommy'", "'Mother'", "'Ninpuchan'", "'Preg'", "'Preggers'")>> <<set $situationDesc = "is a breeding slave. $His belly seems to grow daily, unavoidable evidence that $he's pregnant. Most men prefer slaves without pregnant stomachs, but those that enjoy them adore $him. $He occupies a strange place in slave culture, desired and abhorred, hopeful and fearful.">> @@ -1185,7 +1203,7 @@ <<link "Encourage use of the nickname">> <<EventNameDelink $activeSlave>> <<replace "#result">> - Whatever $activeSlave.slaveName's feelings about being called $nickname were, $he knows they're moot the first time $he hears you refer to $him that way. @@.hotpink;$He has become more submissive to you.@@ $activeSlave.slaveName $applyDesc + Whatever $activeSlave.slaveName's feelings about being called $nickname were, $he knows they're moot <<if !canHear($activeSlave)>>when $he learns that you also<<else>>the first time $he hears you<</if>> refer to $him that way.<</if>> @@.hotpink;$He has become more submissive to you.@@ $activeSlave.slaveName $applyDesc <<set $activeSlave.devotion += 4>> <<set $activeSlave.slaveName = ($nickname + " " + $activeSlave.slaveName)>> <</replace>> diff --git a/src/uncategorized/remoteSurgery.tw b/src/uncategorized/remoteSurgery.tw index 83aa76874f7..01d057b4fa1 100644 --- a/src/uncategorized/remoteSurgery.tw +++ b/src/uncategorized/remoteSurgery.tw @@ -123,12 +123,12 @@ $His $activeSlave.faceShape face is <<else>> <br> $He has working - <<if $activeSlave.eyes == -1 && $activeSlave.eyes != -3>> + <<if $activeSlave.eyes == -1>> eyes, but is nearsighted. <<if ($activeSlave.origEye != "implant")>> [[Correct eyesight|Surgery Degradation][$activeSlave.eyes = 1, $cash -= $surgeryCost, $activeSlave.health -= 10, $surgeryType = "eyeFix"]] <</if>> - <<elseif ($activeSlave.eyes == 1) && $activeSlave.eyes != -3>> + <<elseif $activeSlave.eyes == 1>> eyes and good vision. <<if ($seeExtreme == 1) && ($activeSlave.origEye != "implant")>> [[Blur vision|Surgery Degradation][$activeSlave.eyes = -1, $cash -= $surgeryCost, $activeSlave.health -= 10, $surgeryType = "eyeBlur"]] @@ -155,6 +155,47 @@ $His $activeSlave.faceShape face is <</if>> <</if>> +<<if $activeSlave.earImplant == 1>> + <br> + $He has cochlear implants. +<<elseif ($activeSlave.hears <= -2)>> + <br> + $He is deaf. +<<else>> + <br> + $He has working + <<if $activeSlave.hears == -1>> + ears, but is hearing impaired. + <<if ($activeSlave.earImplant != 1)>> + [[Correct hearing|Surgery Degradation][$activeSlave.hears = 0, $cash -= $surgeryCost, $activeSlave.health -= 10, $surgeryType = "earFix"]] + <</if>> + <<elseif $activeSlave.hears == 0>> + ears and good hearing. + <<if ($seeExtreme == 1) && ($activeSlave.earImplant != 1)>> + [[Muffle hearing|Surgery Degradation][$activeSlave.hears = -1, $cash -= $surgeryCost, $activeSlave.health -= 10, $surgeryType = "earMuffle"]] + <</if>> + <</if>> +<</if>> + +<<if ($seeExtreme == 1)>> + <<if $activeSlave.indentureRestrictions < 1>> + <<if $activeSlave.earImplant != 1>> + <<if ($activeSlave.hears > -2)>> + | [[Deafen|Surgery Degradation][$activeSlave.hears = -2,$activeSlave.eyeColor = "dulled " + $activeSlave.origEye,$activeSlave.eyeColor = $activeSlave.origEye,$cash -= $surgeryCost, $activeSlave.health -= 10,$surgeryType = "deafen"]] + <</if>> + /*<<if ($activeSlave.hears != -3)>> + <<if ($activeSlave.hears >= -2)>> | <</if>> + | [[Remove eyes|Surgery Degradation][$activeSlave.eyeColor = "empty",$activeSlave.origEye = "none",$cash -= $surgeryCost, $activeSlave.health -= 20,$surgeryType = "remove eyes"]] + <<if ($activeSlave.hears != -2)>>//This will greatly restrict $him//<</if>> + <</if>>*/ + <</if>> + <<if ($cyberMod == 1) && ($stockpile.ocularImplant > 0) && ($activeSlave.earImplant != 1)>> + <<if ($activeSlave.hears != -3)>> <</if>> + | [[Give her cochlear implants|Surgery Degradation][$activeSlave.earImplant = 1, $stockpile.cochlearImplant--,$cash -= $surgeryCost, $activeSlave.health -= 20,$surgeryType = "cochlear implant"]] + <</if>> + <</if>> +<</if>> + <br> $He has <<if $activeSlave.lips <= 10>> diff --git a/src/uncategorized/surgeryDegradation.tw b/src/uncategorized/surgeryDegradation.tw index 6818f3c8388..b3b7385520d 100644 --- a/src/uncategorized/surgeryDegradation.tw +++ b/src/uncategorized/surgeryDegradation.tw @@ -278,14 +278,14 @@ As the remote surgery's long recovery cycle completes, <<case "blind">> The laser eye surgery is brief, with @@.red;nothing more than minor health effects.@@ As soon as she is allowed to open her eyes and look around, she begins to glance back and forth frantically, not immediately understanding that this darkness is her new reality. <<if ($activeSlave.devotion > 50)>> - When she finally figures it out, she begins to weep, not understanding why it's necessary that she be unable to see. After a short cry that trails off into a few sniffles, she carries on. + When she finally figures it out, she begins to weep, not understanding why it's necessary that she be unable to see. After a short cry that trails off into a few sniffles, she carries on. <<elseif ($activeSlave.devotion > 20)>> - When she finally figures it out, she begins to bawl, not understanding what she did to earn this. After a short expurgation of @@.gold;grief and terror,@@ she takes a deep breath and visibly suppresses her emotions. - <<set $activeSlave.trust -= 20>> + When she finally figures it out, she begins to bawl, not understanding what she did to earn this. After a short expurgation of @@.gold;grief and terror,@@ she takes a deep breath and visibly suppresses her emotions. + <<set $activeSlave.trust -= 20>> <<else>> - When she realizes what's happened, her face @@.mediumorchid;clouds with rage.@@ Reflexively, she begins to peer around, looking for the source of her woes. She finally understands the true use of blindness when she realizes she won't be able to tell where you are, where anyone is, or even where she is. Her well being is now firmly in the hands of someone she distrusts. She begins to @@.gold;shake with fear.@@ - <<set $activeSlave.trust -= 8>> - <<set $activeSlave.devotion -= 8>> + When she realizes what's happened, her face @@.mediumorchid;clouds with rage.@@ Reflexively, she begins to peer around, looking for the source of her woes. She finally understands the true use of blindness when she realizes she won't be able to tell where you are, where anyone is, or even where she is. Her well being is now firmly in the hands of someone she distrusts. She begins to @@.gold;shake with fear.@@ + <<set $activeSlave.trust -= 8>> + <<set $activeSlave.devotion -= 8>> <</if>> <<case "remove eyes">> @@ -342,6 +342,63 @@ As the remote surgery's long recovery cycle completes, <<case "newEyes">> The implant surgery is @@.red;invasive@@ and she spends some time in the autosurgery recovering. As soon as she is allowed to open her eyes and look around, she notices nothing has changed; though next time she looks in the mirror, she'll see a pair of familiar $activeSlave.eyeColor eyes peering back at her. +<<case "undeafen">> + The inner ear surgery is @@.red;invasive@@ and $he spends some time in the autosurgery recovering. As soon as $he is allowed to open $his eyes and look around, her gaze flicks from object to object with manic speed as she processes her new vision. Seeing the world as it is is a gift that those who do not need it cannot properly understand. + <<set $activeSlave.devotion += 25>> + <<set $activeSlave.trust += 25>> + <<if ($activeSlave.devotion > 50)>> + She loved you before, but she's @@.hotpink;very grateful,@@ and @@.mediumaquamarine;more trusting,@@ too. She never realized just how good you looked, and now she can't get your image out of her mind. + <<if $activeSlave.relationship == 0>><<set $activeSlave.relationship = -2>><</if>> + <<elseif ($activeSlave.devotion > 20)>> + She accepted you as her owner before, but she's @@.hotpink;very grateful,@@ and @@.mediumaquamarine;more trusting,@@ too. + <<else>> + She hardly knows what to make of this wonderful present from someone $he hates, and struggles with suspicion that the gift conceals some sort of snare. After a while, though, $he accepts that you @@.hotpink;truly did help $him,@@ and @@.mediumaquamarine;might be trustworthy.@@ + <</if>> + +<<case "deafen">> + The inner ear surgery is brief, with @@.red;nothing more than minor health effects.@@ As soon as she is allowed to open her eyes and look around, she begins to glance back and forth frantically, not immediately understanding that this darkness is her new reality. + <<if ($activeSlave.devotion > 50)>> + When she finally figures it out, she begins to weep, not understanding why it's necessary that she be unable to see. After a short cry that trails off into a few sniffles, she carries on. + <<elseif ($activeSlave.devotion > 20)>> + When she finally figures it out, she begins to bawl, not understanding what she did to earn this. After a short expurgation of @@.gold;grief and terror,@@ she takes a deep breath and visibly suppresses her emotions. + <<set $activeSlave.trust -= 20>> + <<else>> + When she realizes what's happened, her face @@.mediumorchid;clouds with rage.@@ Reflexively, she begins to peer around, looking for the source of her woes. She finally understands the true use of blindness when she realizes she won't be able to tell where you are, where anyone is, or even where she is. Her well being is now firmly in the hands of someone she distrusts. She begins to @@.gold;shake with fear.@@ + <<set $activeSlave.trust -= 8>> + <<set $activeSlave.devotion -= 8>> + <</if>> + +<<case "cochlear implant">> + <<if $activeSlave.hears <= -2>> + The implant surgery is @@.red;invasive@@ and she spends some time in the autosurgery recovering. As soon as she is allowed to open her eyes and look around, her gaze flicks from object to object with manic speed as her new eyes deliver nearly overwhelming amount of visual information. Seeing the world as it is is a gift that those who do not need it cannot properly understand. + <<set $activeSlave.devotion += 25>> + <<set $activeSlave.trust += 25>> + <<if ($activeSlave.devotion > 50)>> + She loved you before, but she's @@.hotpink;very grateful,@@ and @@.mediumaquamarine;more trusting,@@ too. She never realized just how good you looked, and now she can't get your image out of her mind. + <<if $activeSlave.relationship == 0>><<set $activeSlave.relationship = -2>><</if>> + <<elseif ($activeSlave.devotion > 20)>> + She accepted you as her owner before, but she's @@.hotpink;very grateful,@@ and @@.mediumaquamarine;more trusting,@@ too. + <<else>> + She hardly knows what to make of this wonderful present from someone she hates, and struggles with suspicion that the gift conceals some sort of snare. After a while, though, she accepts that you @@.hotpink;truly did help her,@@ and @@.mediumaquamarine;might be trustworthy.@@ + <</if>> + <<else>> + The implant surgery is @@.red;invasive@@ and she spends some time in the autosurgery recovering. When she is allowed to open her eyes the amount of visual information makes her reel. + <<if ($activeSlave.devotion > 50)>> + She is @@.hotpink;grateful,@@ for her improved vision, and knowing how much you invested in her makes her @@.mediumaquamarine;trust you more@@ as well. + <<set $activeSlave.devotion += 10; $activeSlave.trust += 10>> + <<elseif ($activeSlave.devotion > 20)>> + She has mixed feelings about her new eyes, but she's @@.mediumaquamarine;aware@@ how valuable such implants are, and she already @@.hotpink;accepted@@ that you have complete control over her body. + <<set $activeSlave.devotion += 5; $activeSlave.trust += 10>> + <<else>> + She is @@.gold;disturbed@@ that you replaced her eyes with artificial ones and afraid of increased control over her that such device grants. + <<set $activeSlave.devotion -= 5>> + <</if>> + <</if>> + <<set $activeSlave.hears = 0>> + +<<case "newEars">> + The implant surgery is @@.red;invasive@@ and she spends some time in the autosurgery recovering. As soon as she is allowed to open her eyes and look around, she notices nothing has changed; though next time she looks in the mirror, she'll see a pair of familiar $activeSlave.eyeColor eyes peering back at her. + <<case "boobs">> <<if ($activeSlave.areolae < 2)>> <<if (random(1,100) > 70)>> @@ -872,6 +929,31 @@ As the remote surgery's long recovery cycle completes, <<set $activeSlave.trust -= 10>> <<set $activeSlave.devotion -= 10>> <</if>> + +<<case "earFix">> + The inner ear surgery is brief, with @@.red;nothing more than minor health effects.@@ As soon as she is allowed to open her eyes and look around, her gaze flicks from object to object with manic speed as she processes her newly clear vision. Hearing the world as it is without hearing aids is a gift that those who do not need it cannot properly understand. + <<set $activeSlave.devotion += 5>> + <<set $activeSlave.trust += 5>> + <<if ($activeSlave.devotion > 50)>> + She loved you before, but she's @@.hotpink;very grateful,@@ and @@.mediumaquamarine;more trusting,@@ too. + <<elseif ($activeSlave.devotion >= -20)>> + She accepted you as her owner before, but she's @@.hotpink;very grateful,@@ and @@.mediumaquamarine;more trusting,@@ too. + <<else>> + She hardly knows what to make of this wonderful present from someone she hates, and struggles with suspicion that the gift conceals some sort of snare. After a while, though, she accepts that you @@.hotpink;truly did help her,@@ and @@.mediumaquamarine;might be trustworthy.@@ + <</if>> + +<<case "earMuffle">> + The inner ear surgery is brief, with @@.red;nothing more than minor health effects.@@ As soon as she is allowed to open her eyes and look around, she begins to glance back and forth frantically, not immediately understanding that this muffled world is her new reality. + <<if ($activeSlave.devotion > 50)>> + When she finally figures it out, she begins to weep, not understanding why it's necessary that she not be able to see clearly. After a short cry that trails off into a few sniffles, she carries on. + <<elseif ($activeSlave.devotion > 20)>> + When she finally figures it out, she begins to bawl, not understanding what she did to earn this. After a short expurgation of @@.gold;grief and terror,@@ she takes a deep breath and visibly suppresses her emotions. + <<set $activeSlave.trust -= 5>> + <<else>> + When she realizes what's happened, her face @@.mediumorchid;clouds with rage.@@ Reflexively, she begins to peer around, looking for the source of her woes. She finally understands the true import of blurred vision when she has trouble telling if anyone's close, and begins to @@.gold;shake with fear.@@ + <<set $activeSlave.trust -= 10>> + <<set $activeSlave.devotion -= 10>> + <</if>> <<case "race">> <<if ($activeSlave.devotion > 50)>> diff --git a/src/utility/assayWidgets.tw b/src/utility/assayWidgets.tw index 52b484a0535..bc2c01f000e 100644 --- a/src/utility/assayWidgets.tw +++ b/src/utility/assayWidgets.tw @@ -1232,6 +1232,12 @@ <<set $deadliness -= 1>> <</if>> +<<if !canHear($args[0])>> + <<set $deadliness -= 8>> +<<elseif ($args[0].hears == -1 && !["corrective glasses", "corrective contacts"].includes($args[0].earwear)) || ($args[0].hears == 0 && ["blurring glasses", "blurring contacts"].includes($args[0].earwear))>> + <<set $deadliness -= 1>> +<</if>> + <<if $deadliness < 1>> <<set $deadliness = 1>> <</if>> diff --git a/src/utility/slaveCreationWidgets.tw b/src/utility/slaveCreationWidgets.tw index 3396eee8ff6..630d379ee94 100644 --- a/src/utility/slaveCreationWidgets.tw +++ b/src/utility/slaveCreationWidgets.tw @@ -6,7 +6,7 @@ Called from Gen XX, Gen XY, CheatMode DB, InitNationalities. %/ <<widget "BaseSlave">> - <<set $activeSlave = {slaveName: "blank", slaveSurname: 0, birthName: "blank", birthSurname: 0, genes: "XX", pronoun: "she", possessive: "her", possessivePronoun: "hers", objectReflexive: "herself", object: "her", noun: "girl", weekAcquired: 0, origin: 0, career: 0, ID: 0, prestige: 0, pornFeed: 0, pornFame: 0, pornFameSpending: 0, pornPrestige: 0, pornPrestigeDesc: 0, pornFameType: "none", pornFocus: "none", pornTypeGeneral: 0, pornTypeFuckdoll: 0, pornTypeRape: 0, pornTypePreggo: 0, pornTypeBBW: 0, pornTypeGainer: 0, pornTypeStud: 0, pornTypeLoli: 0, pornTypeDeepThroat: 0, pornTypeStruggleFuck: 0, pornTypePainal: 0, pornTypeTease: 0, pornTypeRomantic: 0, pornTypePervert: 0, pornTypeCaring: 0, pornTypeUnflinching: 0, pornTypeSizeQueen: 0, pornTypeNeglectful: 0, pornTypeCumAddict: 0, pornTypeAnalAddict: 0, pornTypeAttentionWhore: 0, pornTypeBreastGrowth: 0, pornTypeAbusive: 0, pornTypeMalicious: 0, pornTypeSelfHating: 0, pornTypeBreeder: 0, pornTypeSub: 0, pornTypeCumSlut: 0, pornTypeAnal: 0, pornTypeHumiliation: 0, pornTypeBoobs: 0, pornTypeDom: 0, pornTypeSadist: 0, pornTypeMasochist: 0, pornTypePregnancy: 0, prestigeDesc: 0, recruiter: 0, relation: 0, relationTarget: 0, relationship: 0, relationshipTarget: 0, rivalry: 0, rivalryTarget: 0, subTarget: 0, father: 0, mother: 0, daughters: 0, sisters: 0, canRecruit: 0, choosesOwnAssignment: 0, assignment: "rest", assignmentVisible: 1, sentence: 0, training: 0, toyHole: "all her holes", indenture: -1, indentureRestrictions: 0, birthWeek: random(0,51), actualAge: 18, visualAge: 18, physicalAge: 18, ovaryAge: 18, ageImplant: 0, health: 0, minorInjury: 0, trust: 0, oldTrust: 0, devotion: 0, oldDevotion: 0, weight: 0, muscles: 0, height: 170, heightImplant: 0, nationality: "slave", race: "white", markings: "none", eyes: 1, eyeColor: "brown", origEye: "brown", eyewear: "none", ears: 1, earwear: "none", origHColor: "brown", hColor: "brown", pubicHColor: "brown", skin: "light", hLength: 60, hStyle: "short", pubicHStyle: "neat", waist: 0, corsetPiercing: 0, PLimb: 0, amp: 0, heels:0, voice: 2, voiceImplant: 0, accent: 0, shoulders: 0, shouldersImplant: 0, boobs: 0, boobsImplant: 0, boobsImplantType: 0, boobShape: "normal", nipples: "cute", nipplesPiercing: 0, nipplesAccessory: 0, areolae: 0, areolaePiercing: 0, boobsTat: 0, lactation: 0, lactationAdaptation: 0, milk: 0, cum: 0, hips: 0, hipsImplant: 0, butt: 0, buttImplant: 0, buttImplantType: 0, buttTat: 0, face: 0, faceImplant: 0, faceShape: "normal", lips: 15, lipsImplant: 0, lipsPiercing: 0, lipsTat: 0, teeth: "normal", tonguePiercing: 0, vagina: 0, vaginaLube: 0, vaginaPiercing: 0, vaginaTat: 0, preg: -1, pregSource: 0, pregType: 0, pregAdaptation: 50, broodmother: 0, broodmotherFetuses: 0, broodmotherOnHold: 0, broodmotherCountDown: 0, labor: 0, births: 0, cSec: 0, bellyAccessory: "none", labia: 0, clit: 0, clitPiercing: 0, clitSetting: "vanilla", foreskin: 0, anus: 0, dick: 0, analArea: 1, dickPiercing: 0, dickTat: 0, prostate: 0, balls: 0, scrotum: 0, ovaries: 0, anusPiercing: 0, anusTat: 0, makeup: 0, nails: 0, brand: 0, brandLocation: 0, earPiercing: 0, nosePiercing: 0, eyebrowPiercing: 0, navelPiercing: 0, shouldersTat: 0, armsTat: 0, legsTat: 0, backTat: 0, stampTat: 0, vaginalSkill: 0, oralSkill: 0, analSkill: 0, whoreSkill: 0, entertainSkill: 0, combatSkill: 0, livingRules: "spare", speechRules: "restrictive", releaseRules: "restrictive", relationshipRules: "restrictive", standardPunishment: "situational", standardReward: "situational", useRulesAssistant: 1, diet: "healthy", dietCum: 0, dietMilk: 0, tired: 0, hormones: 0, drugs: "no drugs", curatives: 0, chem: 0, aphrodisiacs: 0, addict: 0, fuckdoll: 0, choosesOwnClothes: 0, clothes: "no clothing", collar: "none", shoes: "none", vaginalAccessory: "none", dickAccessory: "none", legAccessory: "none", buttplug: "none", buttplugAttachment: "none", intelligence: 0, intelligenceImplant: 0, energy: 50, need: 0, attrXX: 0, attrXY: 0, attrKnown: 0, fetish: "none", fetishStrength: 70, fetishKnown: 0, behavioralFlaw: "none", behavioralQuirk: "none", sexualFlaw: "none", sexualQuirk: "none", oralCount: 0, vaginalCount: 0, analCount: 0, mammaryCount: 0, penetrativeCount: 0, publicCount: 0, pitKills: 0, customTat: "", customLabel: "", customDesc: "", customTitle: "", customTitleLisp: "", rudeTitle: 0, customImage: 0, currentRules: [], bellyTat: 0, induce: 0, mpreg: 0, inflation: 0, inflationType: "none", inflationMethod: 0, milkSource: 0, cumSource: 0, burst: 0, pregKnown: 0, pregWeek: 0, belly: 0, bellyPreg: 0, bellyFluid: 0, bellyImplant: -1, bellySag: 0, bellySagPreg: 0, bellyPain: 0, cervixImplant: 0, birthsTotal: 0, pubertyAgeXX: 13, pubertyAgeXY: 13, scars: 0, breedingMark: 0, underArmHStyle: "waxed", bodySwap: 0, HGExclude: 0, ballType: "human", eggType: "human", reservedChildren: 0, choosesOwnChastity: 0, pregControl: "none", readyLimbs: [], ageAdjust: 0, bald: 0, origBodyOwner: "", origBodyOwnerID: 0, death: "", hormoneBalance: 0, onDiet: 0, breastMesh: 0, slavesFathered: 0, PCChildrenFathered: 0, slavesKnockedUp: 0, PCKnockedUp: 0, origSkin: "white", vasectomy: 0, haircuts: 0, newGamePlus: 0, skillHG: 0, skillRC: 0, skillBG: 0, skillMD: 0, skillDJ: 0, skillNU: 0, skillTE: 0, skillAT: 0, skillST: 0, skillMM: 0, skillWA: 0, skillS: 0, skillE: 0, skillW: 0, tankBaby: 0, inducedNCS: 0, NCSyouthening: 0}>> + <<set $activeSlave = {slaveName: "blank", slaveSurname: 0, birthName: "blank", birthSurname: 0, genes: "XX", pronoun: "she", possessive: "her", possessivePronoun: "hers", objectReflexive: "herself", object: "her", noun: "girl", weekAcquired: 0, origin: 0, career: 0, ID: 0, prestige: 0, pornFeed: 0, pornFame: 0, pornFameSpending: 0, pornPrestige: 0, pornPrestigeDesc: 0, pornFameType: "none", pornFocus: "none", pornTypeGeneral: 0, pornTypeFuckdoll: 0, pornTypeRape: 0, pornTypePreggo: 0, pornTypeBBW: 0, pornTypeGainer: 0, pornTypeStud: 0, pornTypeLoli: 0, pornTypeDeepThroat: 0, pornTypeStruggleFuck: 0, pornTypePainal: 0, pornTypeTease: 0, pornTypeRomantic: 0, pornTypePervert: 0, pornTypeCaring: 0, pornTypeUnflinching: 0, pornTypeSizeQueen: 0, pornTypeNeglectful: 0, pornTypeCumAddict: 0, pornTypeAnalAddict: 0, pornTypeAttentionWhore: 0, pornTypeBreastGrowth: 0, pornTypeAbusive: 0, pornTypeMalicious: 0, pornTypeSelfHating: 0, pornTypeBreeder: 0, pornTypeSub: 0, pornTypeCumSlut: 0, pornTypeAnal: 0, pornTypeHumiliation: 0, pornTypeBoobs: 0, pornTypeDom: 0, pornTypeSadist: 0, pornTypeMasochist: 0, pornTypePregnancy: 0, prestigeDesc: 0, recruiter: 0, relation: 0, relationTarget: 0, relationship: 0, relationshipTarget: 0, rivalry: 0, rivalryTarget: 0, subTarget: 0, father: 0, mother: 0, daughters: 0, sisters: 0, canRecruit: 0, choosesOwnAssignment: 0, assignment: "rest", assignmentVisible: 1, sentence: 0, training: 0, toyHole: "all her holes", indenture: -1, indentureRestrictions: 0, birthWeek: random(0,51), actualAge: 18, visualAge: 18, physicalAge: 18, ovaryAge: 18, ageImplant: 0, health: 0, minorInjury: 0, trust: 0, oldTrust: 0, devotion: 0, oldDevotion: 0, weight: 0, muscles: 0, height: 170, heightImplant: 0, nationality: "slave", race: "white", markings: "none", eyes: 1, eyeColor: "brown", origEye: "brown", eyewear: "none", hears: 0, earwear: "none", earImplant: 0, origHColor: "brown", hColor: "brown", pubicHColor: "brown", skin: "light", hLength: 60, hStyle: "short", pubicHStyle: "neat", waist: 0, corsetPiercing: 0, PLimb: 0, amp: 0, heels:0, voice: 2, voiceImplant: 0, accent: 0, shoulders: 0, shouldersImplant: 0, boobs: 0, boobsImplant: 0, boobsImplantType: 0, boobShape: "normal", nipples: "cute", nipplesPiercing: 0, nipplesAccessory: 0, areolae: 0, areolaePiercing: 0, boobsTat: 0, lactation: 0, lactationAdaptation: 0, milk: 0, cum: 0, hips: 0, hipsImplant: 0, butt: 0, buttImplant: 0, buttImplantType: 0, buttTat: 0, face: 0, faceImplant: 0, faceShape: "normal", lips: 15, lipsImplant: 0, lipsPiercing: 0, lipsTat: 0, teeth: "normal", tonguePiercing: 0, vagina: 0, vaginaLube: 0, vaginaPiercing: 0, vaginaTat: 0, preg: -1, pregSource: 0, pregType: 0, pregAdaptation: 50, broodmother: 0, broodmotherFetuses: 0, broodmotherOnHold: 0, broodmotherCountDown: 0, labor: 0, births: 0, cSec: 0, bellyAccessory: "none", labia: 0, clit: 0, clitPiercing: 0, clitSetting: "vanilla", foreskin: 0, anus: 0, dick: 0, analArea: 1, dickPiercing: 0, dickTat: 0, prostate: 0, balls: 0, scrotum: 0, ovaries: 0, anusPiercing: 0, anusTat: 0, makeup: 0, nails: 0, brand: 0, brandLocation: 0, earPiercing: 0, nosePiercing: 0, eyebrowPiercing: 0, navelPiercing: 0, shouldersTat: 0, armsTat: 0, legsTat: 0, backTat: 0, stampTat: 0, vaginalSkill: 0, oralSkill: 0, analSkill: 0, whoreSkill: 0, entertainSkill: 0, combatSkill: 0, livingRules: "spare", speechRules: "restrictive", releaseRules: "restrictive", relationshipRules: "restrictive", standardPunishment: "situational", standardReward: "situational", useRulesAssistant: 1, diet: "healthy", dietCum: 0, dietMilk: 0, tired: 0, hormones: 0, drugs: "no drugs", curatives: 0, chem: 0, aphrodisiacs: 0, addict: 0, fuckdoll: 0, choosesOwnClothes: 0, clothes: "no clothing", collar: "none", shoes: "none", vaginalAccessory: "none", dickAccessory: "none", legAccessory: "none", buttplug: "none", buttplugAttachment: "none", intelligence: 0, intelligenceImplant: 0, energy: 50, need: 0, attrXX: 0, attrXY: 0, attrKnown: 0, fetish: "none", fetishStrength: 70, fetishKnown: 0, behavioralFlaw: "none", behavioralQuirk: "none", sexualFlaw: "none", sexualQuirk: "none", oralCount: 0, vaginalCount: 0, analCount: 0, mammaryCount: 0, penetrativeCount: 0, publicCount: 0, pitKills: 0, customTat: "", customLabel: "", customDesc: "", customTitle: "", customTitleLisp: "", rudeTitle: 0, customImage: 0, currentRules: [], bellyTat: 0, induce: 0, mpreg: 0, inflation: 0, inflationType: "none", inflationMethod: 0, milkSource: 0, cumSource: 0, burst: 0, pregKnown: 0, pregWeek: 0, belly: 0, bellyPreg: 0, bellyFluid: 0, bellyImplant: -1, bellySag: 0, bellySagPreg: 0, bellyPain: 0, cervixImplant: 0, birthsTotal: 0, pubertyAgeXX: 13, pubertyAgeXY: 13, scars: 0, breedingMark: 0, underArmHStyle: "waxed", bodySwap: 0, HGExclude: 0, ballType: "human", eggType: "human", reservedChildren: 0, choosesOwnChastity: 0, pregControl: "none", readyLimbs: [], ageAdjust: 0, bald: 0, origBodyOwner: "", origBodyOwnerID: 0, death: "", hormoneBalance: 0, onDiet: 0, breastMesh: 0, slavesFathered: 0, PCChildrenFathered: 0, slavesKnockedUp: 0, PCKnockedUp: 0, origSkin: "white", vasectomy: 0, haircuts: 0, newGamePlus: 0, skillHG: 0, skillRC: 0, skillBG: 0, skillMD: 0, skillDJ: 0, skillNU: 0, skillTE: 0, skillAT: 0, skillST: 0, skillMM: 0, skillWA: 0, skillS: 0, skillE: 0, skillW: 0, tankBaby: 0, inducedNCS: 0, NCSyouthening: 0}>> <</widget>> /% @@ -184,12 +184,12 @@ <<replace "#hearing">> <<if $seeExtreme == 1>> - <<if $activeSlave.ears == -2>>Deaf. - <<elseif $activeSlave.ears == -1>>Hard of hearing. + <<if $activeSlave.hears == -2>>Deaf. + <<elseif $activeSlave.hears == -1>>Hard of hearing. <<else>>Normal. <</if>> <<else>> - <<if $activeSlave.ears == -1>>Hard of hearing. + <<if $activeSlave.hears == -1>>Hard of hearing. <<else>>Normal. <</if>> <</if>> @@ -1813,9 +1813,9 @@ Call as <<CustomSlaveEars>> %/ <<widget "CustomSlaveEars">> - <<replace #ears>> - <<if $customSlave.ears == -2>>Deaf. - <<elseif $customSlave.ears == -1>>Hard of hearing. + <<replace #hears>> + <<if $customSlave.hears == -2>>Deaf. + <<elseif $customSlave.hears == -1>>Hard of hearing. <<else>>Normal hearing. <</if>> <</replace>> @@ -2389,7 +2389,7 @@ <<set $activeSlave.eyes = -2>> <</if>> <<if random (1,100) > 90>> - <<set $activeSlave.ears = -2>> + <<set $activeSlave.hears = -2>> <</if>> <</if>> @@ -2676,7 +2676,7 @@ <<set $activeSlave.health = random(-99,0)>> <<set $activeSlave.weight = random(-100,0)>> <<set $activeSlave.eyes = either(-2, -1, -1, -1, -1, 1, 1, 1)>> - <<set $activeSlave.ears = either(-2, -1, -1, -1, -1, 1, 1, 1)>> + <<set $activeSlave.hears = either(-2, -1, -1, -1, -1, 1, 1, 1)>> <<if $seeExtreme == 1>> <<set $activeSlave.amp = either(0, 0, 0, 0, 0, 0, 1, 1, 1)>> <</if>> @@ -2730,6 +2730,7 @@ <<set $activeSlave.weight = random(-100,-50)>> <<set $activeSlave.muscles = random(-100,-50)>> <<set $activeSlave.eyes = -2>> + <<set $activeSlave.hears = -2>> <<if $seeExtreme == 1>> <<set $activeSlave.amp = 1>> <</if>> @@ -4612,7 +4613,7 @@ <<if $activeSlave.boobShape == "saggy" || $activeSlave.boobShape == "downward-facing">> <<set $activeSlave.boobShape = "perky">> <</if>> - <<set $activeSlave.eyes = 1, $activeSlave.voice = 2>> + <<set $activeSlave.eyes = 1, $activeSlave.hears = 0, $activeSlave.voice = 2>> <<switch $Role>> /* Opens security */ <<case "Lieutenant Colonel">> -- GitLab