diff --git a/src/facilities/farmyard/farmyard.tw b/src/facilities/farmyard/farmyard.tw index fa2afef1a024459a14cc7365483fe86142e2c563..ff47e477539b9191d95a20226e4a05477775b560 100644 --- a/src/facilities/farmyard/farmyard.tw +++ b/src/facilities/farmyard/farmyard.tw @@ -463,7 +463,7 @@ $farmyardNameCaps is an oasis of growth in the midst of the jungle of steel and <br><hr><br> <<if $Farmer != 0>> -<<set $Flag = 2>> +<<set $SlaveSummaryFiler = "leading">> <<include "Slave Summary">> <<else>> You do not have a slave serving as a Farmer. [[Appoint one|Farmer Select]] @@ -483,7 +483,7 @@ $farmyardNameCaps is an oasis of growth in the midst of the jungle of steel and ''$farmyardNameCaps is full and cannot hold any more slaves'' <<elseif ($slaves.length > $farmyardSlaves)>> <<resetAssignmentFilter>> - <<set $Flag = 0>> + <<set $SlaveSummaryFiler = "assignable">> <<include "Slave Summary">> <</if>> </div> @@ -493,7 +493,7 @@ $farmyardNameCaps is an oasis of growth in the midst of the jungle of steel and <div class="content"> <<if $farmyardSlaves > 0>> <<farmyardAssignmentFilter>> - <<set $Flag = 1>> + <<set $SlaveSummaryFiler = "occupying">> <<include "Slave Summary">> <<resetAssignmentFilter>> <<else>> diff --git a/src/facilities/nursery/childSummary.tw b/src/facilities/nursery/childSummary.tw index cb3b48b4025de4e187cf84a6b5ac0b42388d7b7b..df36e3788188cb1d9f73b786eb9763f4a958e20d 100644 --- a/src/facilities/nursery/childSummary.tw +++ b/src/facilities/nursery/childSummary.tw @@ -4,12 +4,12 @@ "Main": c => (c.assignmentVisible == 1), "Nursery": c => (c.assignmentVisible == 1 && c.fuckdoll == 0), "Personal Attention Select": c => (c.assignmentVisible == 1 && c.fuckdoll <= 0) && ( - ($Flag == 0 && c.assignment != "be a child") - || ($Flag == 1 && c.assignment == "be a child") + ($SlaveSummaryFiler == "assignable" && c.assignment != "be a child") + || ($SlaveSummaryFiler == "occupying" && c.assignment == "be a child") ), - "New Game Plus": c => (($Flag == 0 && c.assignment != "be imported") || ($Flag != 0 && c.assignment == "be imported")), - "Rules Slave Select": c => (($Flag == 0 && !ruleSlaveSelected(s, $currentRule)) || ($Flag != 0 && ruleSlaveSelected(s, $currentRule))), - "Rules Slave Exclude": c => (($Flag == 0 && !ruleSlaveExcluded(s, $currentRule)) || ($Flag != 0 && ruleSlaveExcluded(s, $currentRule))), + "New Game Plus": c => (($SlaveSummaryFiler == "assignable" && c.assignment != "be imported") || ($SlaveSummaryFiler != 0 && c.assignment == "be imported")), + "Rules Slave Select": c => (($SlaveSummaryFiler == "assignable" && !ruleSlaveSelected(s, $currentRule)) || ($SlaveSummaryFiler != 0 && ruleSlaveSelected(s, $currentRule))), + "Rules Slave Exclude": c => (($SlaveSummaryFiler == "assignable" && !ruleSlaveExcluded(s, $currentRule)) || ($SlaveSummaryFiler != 0 && ruleSlaveExcluded(s, $currentRule))), }>> <<set _Pass = passage(), _CL = $cribs.length, $assignTo = _Pass, _indexed = 0, _passagePreFilter = (c => c.assignment != "be your agent" && c.assignment != "live with your agent" && (!setup.passagePreFilters.hasOwnProperty(_Pass) || setup.passagePreFilters[_Pass](c))), @@ -24,9 +24,9 @@ <<if $useSlaveListInPageJSNavigation == 1>> <<set _Count = _indexSlavesIdxs.length>> /* Useful for finding weird combinations — usages of this passage that don't yet generate the quick index. - * <<print 'pass/count/indexed/flag::[' + _Pass + '/' + _Count + '/' + _indexed + '/' + $Flag + ']'>> + * <<print 'pass/count/indexed/flag::[' + _Pass + '/' + _Count + '/' + _indexed + '/' + $SlaveSummaryFiler + ']'>> */ - <<if ((_Count > 1) && (_indexed == 0) && (((_Pass == 'Main') && (ndef $Flag) && (($useSlaveSummaryTabs == 0) || ($childAssignmentTab == "all"))) || ($Flag == 1)))>> + <<if ((_Count > 1) && (_indexed == 0) && (((_Pass == 'Main') && (ndef $SlaveSummaryFiler) && (($useSlaveSummaryTabs == 0) || ($childAssignmentTab == "all"))) || ($SlaveSummaryFiler == "occupying")))>> <<set _indexed = 1, _counter = 0, _buttons = [], _offset = -50>> <<if (/Select/i.test(_Pass))>> <<set _offset = -25>> @@ -129,13 +129,13 @@ <</link>> <<case "New Game Plus">> - <<if $Flag == 0>> + <<if $SlaveSummaryFiler == "assignable">> <br>__''@@.pink;_Child.slaveName@@''__ <<else>> <br>__''@@.pink;_Child.slaveName@@''__ <</if>> <<case "Rules Slave Select">> - <<if $Flag == 0>> + <<if $SlaveSummaryFiler == "assignable">> <br>__'' [[_childName|Rules Slave Select Workaround][$activeSlave = $cribs[_csi]]]''__ <<else>> @@ -143,7 +143,7 @@ [[_childName|Rules Slave Deselect Workaround][$activeSlave = $cribs[_csi]]]''__ <</if>> <<case "Rules Slave Exclude">> - <<if $Flag == 0>> + <<if $SlaveSummaryFiler == "assignable">> <br>__'' [[_childName|Rules Slave Exclude Workaround][$activeSlave = $cribs[_csi]]]''__ <<else>> @@ -208,7 +208,7 @@ will <</if>> /* closes _numFacilities */ -<<if ((_Pass != 'Main') || (def $Flag) || ($useSlaveSummaryTabs == 0) || ($childAssignmentTab == "all"))>> +<<if ((_Pass != 'Main') || (def $SlaveSummaryFiler) || ($useSlaveSummaryTabs == 0) || ($childAssignmentTab == "all"))>> <<print '<span id="slave-' + $cribs[_csi].ID + '"> </span>'>> <</if>> <br> @@ -225,14 +225,14 @@ will <<continue>> <<case "New Game Plus">> <br><<if $seeImages != 1 || $seeSummaryImages != 1 || $imageChoice == 1>> <</if>> - <<if $Flag === 0>> + <<if $SlaveSummaryFiler === "assignable">> <<link "Add to import list" "New Game Plus">> - <<set $cribsToImport += 1,$Flag = 1>> + <<set $cribsToImport += 1,$SlaveSummaryFiler = "occupying">> <<= assignJob($cribs[_csi], "be imported")>> <</link>> <<else>> <<link "Remove from import list" "New Game Plus">> - <<set $cribsToImport -= 1,$Flag = 0>> + <<set $cribsToImport -= 1,$SlaveSummaryFiler = "assignable">> <<= removeJob($cribs[_csi], $cribs[_csi].assignment)>> <</link>> <</if>> diff --git a/src/facilities/nursery/nursery.tw b/src/facilities/nursery/nursery.tw index b8b2810635dd579145a571ce2cc9c571e0ecac85..715258fee35ae053ec813070f6fe09fd5651e5cb 100644 --- a/src/facilities/nursery/nursery.tw +++ b/src/facilities/nursery/nursery.tw @@ -1,6 +1,6 @@ :: Nursery [nobr] -<<set $nextButton = "Back to Main", $nextLink = "Main", $returnTo = "Nursery", $showEncyclopedia = 1, $encyclopedia = "Nursery", $nurserySlaves = $NurseryiIDs.length, $Flag = 0>> +<<set $nextButton = "Back to Main", $nextLink = "Main", $returnTo = "Nursery", $showEncyclopedia = 1, $encyclopedia = "Nursery", $nurserySlaves = $NurseryiIDs.length, $SlaveSummaryFiler = "assignable">> <<set $targetAgeNursery = Number($targetAgeNursery) || $minimumSlaveAge>> <<set $targetAgeNursery = Math.clamp($targetAgeNursery, $minimumSlaveAge, 42)>> @@ -118,7 +118,7 @@ $nurseryNameCaps <br><br> <<if $Matron != 0>> - <<set $Flag = 2>> + <<set $SlaveSummaryFiler = "leading">> <<include "Slave Summary">> <<else>> You do not have a slave serving as a Matron. [[Appoint one|Matron Select]] @@ -137,7 +137,7 @@ $nurseryNameCaps <div class="content"> <<if $nurserySlaves > 0>> <<nurseryAssignmentFilter>> - <<set $Flag = 1>> + <<set $SlaveSummaryFiler = "occupying">> <<include "Slave Summary">> <<resetAssignmentFilter>> <<else>> @@ -152,7 +152,7 @@ $nurseryNameCaps ''$nurseryNameCaps is full and cannot hold any more slaves'' <<elseif ($slaves.length > $nurserySlaves)>> <<resetAssignmentFilter>> - <<set $Flag = 0>> + <<set $SlaveSummaryFiler = "assignable">> <<include "Slave Summary">> <</if>> </div> diff --git a/src/facilities/schoolroom/schoolroomFramework.js b/src/facilities/schoolroom/schoolroomFramework.js index b207a406c61ff4e4c806f5856940b563897409e3..0ec97695b7b4774678bbd4026f428b000ef94bc6 100644 --- a/src/facilities/schoolroom/schoolroomFramework.js +++ b/src/facilities/schoolroom/schoolroomFramework.js @@ -11,7 +11,7 @@ App.Data.Facilities.schoolroom = { }, defaultJob: "student", manager: { - position: "teacher", + position: "schoolteacher", assignment: "be the Schoolteacher", careers: ["a child prodigy", "a coach", "a dean", "a historian", "a librarian", "a principal", "a private instructor", "a professor", "a scholar", "a scientist", "a teacher's pet", "a teacher", "a teaching assistant", "an archaeologist", "an astronaut", "an economist"], skill: "teacher", diff --git a/src/interaction/prostheticConfig.tw b/src/interaction/prostheticConfig.tw index 4ecb8e9b0e8f6c8aded1d7d8812f4c32cfb8c8d5..4fdee1954eae47ae8574cc2adc8f59ecc629d795 100644 --- a/src/interaction/prostheticConfig.tw +++ b/src/interaction/prostheticConfig.tw @@ -272,7 +272,7 @@ Fit prosthetics to $him: <<for _p range setup.prostheticIDs>> <<if _p != "erectile">> /* exclude erectile implant */ <<if $adjustProsthetics.findIndex(function(p) {return p.id == _p && p.slaveID == $activeSlave.ID}) != -1 || $researchLab.tasks.findIndex(function(p) {return p.type == "craftFit" && p.id == _p && p.slaveID == $activeSlave.ID}) != -1>><br> - //<<= capitalizeFirstLetter(addA(setup.prosthetics[_p].name))>> is already being fitted to this $him.// + //<<= capitalizeFirstLetter(addA(setup.prosthetics[_p].name))>> is already being fitted to $him.// <<elseif setup.prosthetics[_p].level > $prostheticsUpgrade>><br> //You need better contracts to buy <<= addA(setup.prosthetics[_p].name)>>.// <<elseif $activeSlave.readyProsthetics.findIndex(function(p) {return p.id == _p}) == -1>> diff --git a/src/js/slaveSummaryWidgets.js b/src/js/slaveSummaryWidgets.js index b7b14df26beee0491ee5bbee6dc61573bec1df6f..8a3a619f689ce1165dad83c007c9a77414e309fb 100644 --- a/src/js/slaveSummaryWidgets.js +++ b/src/js/slaveSummaryWidgets.js @@ -4824,81 +4824,117 @@ window.SlaveSummaryUncached = (function () { App.UI.PassageSlaveFilers = { "Main": s => (s.assignmentVisible === 1), "Personal Attention Select": s => (s.assignmentVisible === 1 && s.fuckdoll <= 0), - "Agent Select": s => (s.fuckdoll === 0 && s.devotion > 20 && s.intelligence + s.intelligenceImplant > 15 && s.intelligenceImplant >= 15 && canWalk(s) && canSee(s) && canHear(s) && canTalk(s) && s.broodmother < 2 && (s.breedingMark !== 1 || State.variables.propOutcome === 0)), - "BG Select": s => (s.assignmentVisible === 1 && s.fuckdoll === 0 && s.devotion > 50 && s.assignment !== "guard you" && canWalk(s) && canSee(s) && canHear(s) && (s.breedingMark !== 1 || State.variables.propOutcome === 0)), - "Recruiter Select": s => (s.assignmentVisible === 1 && s.fuckdoll === 0 && s.devotion > 50 && s.assignment !== "recruit girls" && canWalk(s) && canSee(s) && canTalk(s)), - "HG Select": s => (s.assignmentVisible === 1 && s.fuckdoll === 0 && s.devotion > 50 && s.assignment !== "be your Head Girl" && canWalk(s) && canHear(s) && canSee(s) && canTalk(s)), + "Agent Select": s => ((s.fuckdoll === 0 && s.devotion > 20 && s.intelligence + s.intelligenceImplant > 15 && s.intelligenceImplant >= 15 && canWalk(s) && canSee(s) && canHear(s) && canTalk(s) && s.broodmother < 2 && (s.breedingMark !== 1 || State.variables.propOutcome === 0)) && + ((State.variables.SlaveSummaryFiler !== "experienced") || + (State.variables.SlaveSummaryFiler === "experienced" && (s.skill[App.Data.Facilities.arcologyAgent.manager.skill] >= State.variables.masteredXP) || (typeof s.career === 'string' && App.Data.Facilities.arcologyAgent.manager.careers.includes(s.career))))), + "BG Select": s => ((s.assignmentVisible === 1 && s.fuckdoll === 0 && s.devotion > 50 && s.assignment !== "guard you" && canWalk(s) && canSee(s) && canHear(s) && (s.breedingMark !== 1 || State.variables.propOutcome === 0)) && + ((State.variables.SlaveSummaryFiler !== "experienced") || + (State.variables.SlaveSummaryFiler === "experienced" && (s.skill[App.Data.Facilities.armory.manager.skill] >= State.variables.masteredXP) || (typeof s.career === 'string' && App.Data.Facilities.armory.manager.careers.includes(s.career))))), + "Recruiter Select": s => ((s.assignmentVisible === 1 && s.fuckdoll === 0 && s.devotion > 50 && s.assignment !== "recruit girls" && canWalk(s) && canSee(s) && canTalk(s)) && + ((State.variables.SlaveSummaryFiler !== "experienced") || + (State.variables.SlaveSummaryFiler === "experienced" && (s.skill[App.Data.Facilities.penthouse.manager.skill] >= State.variables.masteredXP) || (typeof s.career === 'string' && App.Data.Facilities.penthouse.manager.careers.includes(s.career))))), + "HG Select": s => ((s.assignmentVisible === 1 && s.fuckdoll === 0 && s.devotion > 50 && s.assignment !== "be your Head Girl" && canWalk(s) && canHear(s) && canSee(s) && canTalk(s)) && + ((State.variables.SlaveSummaryFiler !== "experienced") || + (State.variables.SlaveSummaryFiler === "experienced" && (s.skill[App.Data.Facilities.headGirlSuite.manager.skill] >= State.variables.masteredXP) || (typeof s.career === 'string' && App.Data.Facilities.headGirlSuite.manager.careers.includes(s.career))))), "Head Girl Suite": s => (s.assignmentVisible === 1 && s.fuckdoll <= 0 && ( - (State.variables.Flag === 0 && s.assignment !== "be your Head Girl" && s.indentureRestrictions <= 0 && (s.breedingMark !== 1 || State.variables.propOutcome === 0)) || - (State.variables.Flag !== 0 && s.assignment === "live with your Head Girl"))), + (State.variables.SlaveSummaryFiler === "assignable" && s.assignment !== "be your Head Girl" && s.indentureRestrictions <= 0 && (s.breedingMark !== 1 || State.variables.propOutcome === 0)) || + (State.variables.SlaveSummaryFiler !== "assignable" && s.assignment === "live with your Head Girl"))), "Subordinate Targeting": s => (s.devotion >= -20 && s.fuckdoll === 0 && State.variables.activeSlave.ID !== s.ID && (State.variables.activeSlave.amp !== 1 || s.amp !== 1)), - "Spa": s => (s.assignmentVisible === 1 && s.fuckdoll <= 0 && ( - (State.variables.Flag === 0 && s.assignment !== "rest in the spa") || - (State.variables.Flag === 1 && s.assignment === "rest in the spa") || - (State.variables.Flag !== 0 && State.variables.Flag !== 1 && s.ID === State.variables.Attendant.ID))), - "Attendant Select": s => (s.assignmentVisible === 1 && s.fuckdoll === 0 && s.devotion > 50 && canWalk(s) && canHear(s)), + "Spa": s => ((s.assignmentVisible === 1 && s.fuckdoll <= 0 && ( + (State.variables.SlaveSummaryFiler === "assignable" && s.assignment !== "rest in the spa") || + (State.variables.SlaveSummaryFiler === "occupying" && s.assignment === "rest in the spa") || + (State.variables.SlaveSummaryFiler === "leading" && s.ID === State.variables.Attendant.ID))) || + (s.assignmentVisible === 0 && s.fuckdoll <= 0 && ( + (State.variables.SlaveSummaryFiler === "transferable" && s.assignment !== "rest in the spa")))), + "Attendant Select": s => ((s.assignmentVisible === 1 && s.fuckdoll === 0 && s.devotion > 50 && canWalk(s) && canHear(s)) && + ((State.variables.SlaveSummaryFiler !== "experienced") || + (State.variables.SlaveSummaryFiler === "experienced" && (s.skill[App.Data.Facilities.spa.manager.skill] >= State.variables.masteredXP) || (typeof s.career === 'string' && App.Data.Facilities.spa.manager.careers.includes(s.career))))), "Nursery": s => (s.assignmentVisible === 1 && s.fuckdoll <= 0 && (s.devotion > 20 || s.trust > 20) && ( - (State.variables.Flag === 0 && s.assignment !== "work as a nanny") || - (State.variables.Flag === 1 && s.assignment === "work as a nanny") || - (State.variables.Flag !== 0 && State.variables.Flag !== 1 && s.ID === State.variables.Matron.ID))), - "Matron Select": s => (s.assignmentVisible === 1 && s.fuckdoll === 0 && s.devotion > 50 && canWalk(s) && canHear(s)), + (State.variables.SlaveSummaryFiler === "assignable" && s.assignment !== "work as a nanny") || + (State.variables.SlaveSummaryFiler === "occupying" && s.assignment === "work as a nanny") || + (State.variables.SlaveSummaryFiler === "leading" && s.ID === State.variables.Matron.ID))), + "Matron Select": s => ((s.assignmentVisible === 1 && s.fuckdoll === 0 && s.devotion > 50 && canWalk(s) && canHear(s)) && + ((State.variables.SlaveSummaryFiler !== "experienced") || + (State.variables.SlaveSummaryFiler === "experienced" && (s.skill[App.Data.Facilities.nursery.manager.skill] >= State.variables.masteredXP) || (typeof s.career === 'string' && App.Data.Facilities.nursery.manager.careers.includes(s.career))))), "Brothel": s => (s.assignmentVisible === 1 && s.fuckdoll <= 0 && ( - (State.variables.Flag === 0 && s.assignment !== "work in the brothel") || - (State.variables.Flag === 1 && s.assignment === "work in the brothel") || - (State.variables.Flag !== 0 && State.variables.Flag !== 1 && s.ID === State.variables.Madam.ID))), - "Madam Select": s => (s.assignmentVisible === 1 && s.fuckdoll === 0 && s.devotion > 50 && s.intelligence + s.intelligenceImplant >= -50 && canWalk(s) && canSee(s) && canHear(s) && (s.breedingMark !== 1 || State.variables.propOutcome === 0)), + (State.variables.SlaveSummaryFiler === "assignable" && s.assignment !== "work in the brothel") || + (State.variables.SlaveSummaryFiler === "occupying" && s.assignment === "work in the brothel") || + (State.variables.SlaveSummaryFiler === "leading" && s.ID === State.variables.Madam.ID))), + "Madam Select": s => ((s.assignmentVisible === 1 && s.fuckdoll === 0 && s.devotion > 50 && s.intelligence + s.intelligenceImplant >= -50 && canWalk(s) && canSee(s) && canHear(s) && (s.breedingMark !== 1 || State.variables.propOutcome === 0)) && + ((State.variables.SlaveSummaryFiler !== "experienced") || + (State.variables.SlaveSummaryFiler === "experienced" && (s.skill[App.Data.Facilities.brothel.manager.skill] >= State.variables.masteredXP) || (typeof s.career === 'string' && App.Data.Facilities.brothel.manager.careers.includes(s.career))))), "Club": s => (s.assignmentVisible === 1 && s.fuckdoll <= 0 && ( - (State.variables.Flag === 0 && s.assignment !== "serve in the club") || - (State.variables.Flag === 1 && s.assignment === "serve in the club") || - (State.variables.Flag !== 0 && State.variables.Flag !== 1 && s.ID === State.variables.DJ.ID))), - "DJ Select": s => (s.assignmentVisible === 1 && s.fuckdoll === 0 && s.devotion > 50 && s.intelligence + s.intelligenceImplant >= -50 && canTalk(s) && canHear(s) && canWalk(s) && (s.breedingMark !== 1 || State.variables.propOutcome === 0)), - "Clinic": s => (s.assignmentVisible === 1 && s.fuckdoll <= 0 && ( - (State.variables.Flag === 0 && s.assignment !== "get treatment in the clinic") || - (State.variables.Flag === 1 && s.assignment === "get treatment in the clinic") || - (State.variables.Flag !== 0 && State.variables.Flag !== 1 && s.ID === State.variables.Nurse.ID))), - "Nurse Select": s => (s.assignmentVisible === 1 && s.fuckdoll === 0 && s.devotion > 50 && canWalk(s) && canSee(s)), - "Schoolroom": s => (s.assignmentVisible === 1 && s.fuckdoll <= 0 && ( - (State.variables.Flag === 0 && s.fetish !== "mindbroken" && s.assignment !== "learn in the schoolroom") || - (State.variables.Flag === 1 && s.assignment === "learn in the schoolroom") || - (State.variables.Flag !== 0 && State.variables.Flag !== 1 && s.ID === State.variables.Schoolteacher.ID))), - "Schoolteacher Select": s => (s.assignmentVisible === 1 && s.fuckdoll === 0 && s.devotion > 50 && canTalk(s) && canHear(s) && canSee(s)), + (State.variables.SlaveSummaryFiler === "assignable" && s.assignment !== "serve in the club") || + (State.variables.SlaveSummaryFiler === "occupying" && s.assignment === "serve in the club") || + (State.variables.SlaveSummaryFiler === "leading" && s.ID === State.variables.DJ.ID))), + "DJ Select": s => ((s.assignmentVisible === 1 && s.fuckdoll === 0 && s.devotion > 50 && s.intelligence + s.intelligenceImplant >= -50 && canTalk(s) && canHear(s) && canWalk(s) && (s.breedingMark !== 1 || State.variables.propOutcome === 0)) && + ((State.variables.SlaveSummaryFiler !== "experienced") || + (State.variables.SlaveSummaryFiler === "experienced" && (s.skill[App.Data.Facilities.club.manager.skill] >= State.variables.masteredXP) || (typeof s.career === 'string' && App.Data.Facilities.club.manager.careers.includes(s.career))))), + "Clinic": s => ((s.assignmentVisible === 1 && s.fuckdoll <= 0 && ( + (State.variables.SlaveSummaryFiler === "assignable" && s.assignment !== "get treatment in the clinic") || + (State.variables.SlaveSummaryFiler === "occupying" && s.assignment === "get treatment in the clinic") || + (State.variables.SlaveSummaryFiler === "leading" && s.ID === State.variables.Nurse.ID))) || + (s.assignmentVisible === 0 && s.fuckdoll <= 0 && ( + (State.variables.SlaveSummaryFiler === "transferable" && s.assignment !== "get treatment in the clinic")))), + "Nurse Select": s => ((s.assignmentVisible === 1 && s.fuckdoll === 0 && s.devotion > 50 && canWalk(s) && canSee(s)) && + ((State.variables.SlaveSummaryFiler !== "experienced") || + (State.variables.SlaveSummaryFiler === "experienced" && (s.skill[App.Data.Facilities.clinic.manager.skill] >= State.variables.masteredXP) || (typeof s.career === 'string' && App.Data.Facilities.clinic.manager.careers.includes(s.career))))), + "Schoolroom": s => ((s.assignmentVisible === 1 && s.fuckdoll <= 0 && ( + (State.variables.SlaveSummaryFiler === "assignable" && s.fetish !== "mindbroken" && s.assignment !== "learn in the schoolroom") || + (State.variables.SlaveSummaryFiler === "occupying" && s.assignment === "learn in the schoolroom") || + (State.variables.SlaveSummaryFiler === "leading" && s.ID === State.variables.Schoolteacher.ID))) || + (s.assignmentVisible === 0 && s.fuckdoll <= 0 && ( + (State.variables.SlaveSummaryFiler === "transferable" && s.assignment !== "learn in the schoolroom")))), + "Schoolteacher Select": s => ((s.assignmentVisible === 1 && s.fuckdoll === 0 && s.devotion > 50 && canTalk(s) && canHear(s) && canSee(s)) && + ((State.variables.SlaveSummaryFiler !== "experienced") || + (State.variables.SlaveSummaryFiler === "experienced" && (s.skill[App.Data.Facilities.schoolroom.manager.skill] >= State.variables.masteredXP) || (typeof s.career === 'string' && App.Data.Facilities.schoolroom.manager.careers.includes(s.career))))), "Dairy": s => (s.assignmentVisible === 1 && s.fuckdoll <= 0 && ( - (State.variables.Flag === 0 && s.assignment !== "work in the dairy") || - (State.variables.Flag === 1 && s.assignment === "work in the dairy") || - (State.variables.Flag !== 0 && State.variables.Flag !== 1 && s.ID === State.variables.Milkmaid.ID))), - "Milkmaid Select": s => (s.assignmentVisible === 1 && s.fuckdoll === 0 && s.devotion > 20 && canWalk(s) && canSee(s) && canHear(s)), + (State.variables.SlaveSummaryFiler === "assignable" && s.assignment !== "work in the dairy") || + (State.variables.SlaveSummaryFiler === "occupying" && s.assignment === "work in the dairy") || + (State.variables.SlaveSummaryFiler === "leading" && s.ID === State.variables.Milkmaid.ID))), + "Milkmaid Select": s => ((s.assignmentVisible === 1 && s.fuckdoll === 0 && s.devotion > 20 && canWalk(s) && canSee(s) && canHear(s)) && + ((State.variables.SlaveSummaryFiler !== "experienced") || + (State.variables.SlaveSummaryFiler === "experienced" && (s.skill[App.Data.Facilities.dairy.manager.skill] >= State.variables.masteredXP) || (typeof s.career === 'string' && App.Data.Facilities.dairy.manager.careers.includes(s.career))))), "Farmyard": s => (s.assignmentVisible === 1 && s.fuckdoll <= 0 && ( - (State.variables.Flag === 0 && s.assignment !== "work as a farmhand") || - (State.variables.Flag === 1 && s.assignment === "work as a farmhand") || - (State.variables.Flag !== 0 && State.variables.Flag !== 1 && s.ID === State.variables.Farmer.ID))), - "Farmer Select": s => (s.assignmentVisible === 1 && s.fuckdoll === 0 && s.devotion > 50 && canWalk(s) && canSee(s) && canHear(s)), + (State.variables.SlaveSummaryFiler === "assignable" && s.assignment !== "work as a farmhand") || + (State.variables.SlaveSummaryFiler === "occupying" && s.assignment === "work as a farmhand") || + (State.variables.SlaveSummaryFiler === "leading" && s.ID === State.variables.Farmer.ID))), + "Farmer Select": s => ((s.assignmentVisible === 1 && s.fuckdoll === 0 && s.devotion > 50 && canWalk(s) && canSee(s) && canHear(s)) && + ((State.variables.SlaveSummaryFiler !== "experienced") || + (State.variables.SlaveSummaryFiler === "experienced" && (s.skill[App.Data.Facilities.farm.manager.skill] >= State.variables.masteredXP) || (typeof s.career === 'string' && App.Data.Facilities.farm.manager.careers.includes(s.career))))), "Servants' Quarters": s => (s.assignmentVisible === 1 && s.fuckdoll <= 0 && ( - (State.variables.Flag === 0 && s.assignment !== "work as a servant") || - (State.variables.Flag === 1 && s.assignment === "work as a servant") || - (State.variables.Flag !== 0 && State.variables.Flag !== 1 && s.ID === State.variables.Stewardess.ID))), - "Stewardess Select": s => (s.assignmentVisible === 1 && s.fuckdoll === 0 && s.devotion > 50 && s.intelligence + s.intelligenceImplant >= -50 && canWalk(s) && canSee(s) && canHear(s)), + (State.variables.SlaveSummaryFiler === "assignable" && s.assignment !== "work as a servant") || + (State.variables.SlaveSummaryFiler === "occupying" && s.assignment === "work as a servant") || + (State.variables.SlaveSummaryFiler === "leading" && s.ID === State.variables.Stewardess.ID))), + "Stewardess Select": s => ((s.assignmentVisible === 1 && s.fuckdoll === 0 && s.devotion > 50 && s.intelligence + s.intelligenceImplant >= -50 && canWalk(s) && canSee(s) && canHear(s)) && + ((State.variables.SlaveSummaryFiler !== "experienced") || + (State.variables.SlaveSummaryFiler === "experienced" && (s.skill[App.Data.Facilities.servantsQuarters.manager.skill] >= State.variables.masteredXP) || (typeof s.career === 'string' && App.Data.Facilities.servantsQuarters.manager.careers.includes(s.career))))), "Master Suite": s => (s.assignmentVisible === 1 && s.fuckdoll <= 0 && ( - (State.variables.Flag === 0 && s.assignment !== "serve in the master suite") || - (State.variables.Flag === 1 && s.assignment === "serve in the master suite") || - (State.variables.Flag !== 0 && State.variables.Flag !== 1 && s.ID === State.variables.Concubine.ID))), - "Concubine Select": s => (s.assignmentVisible === 1 && s.fuckdoll === 0 && s.devotion > 50 && s.amp !== 1), + (State.variables.SlaveSummaryFiler === "assignable" && s.assignment !== "serve in the master suite") || + (State.variables.SlaveSummaryFiler === "occupying" && s.assignment === "serve in the master suite") || + (State.variables.SlaveSummaryFiler === "leading" && s.ID === State.variables.Concubine.ID))), + "Concubine Select": s => ((s.assignmentVisible === 1 && s.fuckdoll === 0 && s.devotion > 50 && s.amp !== 1) && + ((State.variables.SlaveSummaryFiler !== "experienced") || + (State.variables.SlaveSummaryFiler === "experienced" && (s.skill[App.Data.Facilities.masterSuite.manager.skill] >= State.variables.masteredXP) || (typeof s.career === 'string' && App.Data.Facilities.masterSuite.manager.careers.includes(s.career))))), "Cellblock": s => (s.assignmentVisible === 1 && s.fuckdoll <= 0 && s.fetish !== "mindbroken" && ( - (State.variables.Flag === 0 && s.assignment !== "be confined in the cellblock") || - (State.variables.Flag === 1 && s.assignment === "be confined in the cellblock") || - (State.variables.Flag !== 0 && State.variables.Flag !== 1 && s.ID === State.variables.Wardeness.ID))), - "Wardeness Select": s => (s.assignmentVisible === 1 && s.fuckdoll === 0 && s.devotion > 50 && canWalk(s) && canSee(s) && canHear(s)), + (State.variables.SlaveSummaryFiler === "assignable" && s.assignment !== "be confined in the cellblock") || + (State.variables.SlaveSummaryFiler === "occupying" && s.assignment === "be confined in the cellblock") || + (State.variables.SlaveSummaryFiler === "leading" && s.ID === State.variables.Wardeness.ID))), + "Wardeness Select": s => ((s.assignmentVisible === 1 && s.fuckdoll === 0 && s.devotion > 50 && canWalk(s) && canSee(s) && canHear(s)) && + ((State.variables.SlaveSummaryFiler !== "experienced") || + (State.variables.SlaveSummaryFiler === "experienced" && (s.skill[App.Data.Facilities.cellblock.manager.skill] >= State.variables.masteredXP) || (typeof s.career === 'string' && App.Data.Facilities.cellblock.manager.careers.includes(s.career))))), "Arcade": s => (s.assignmentVisible === 1 && (State.variables.arcade >= State.variables.arcadeSlaves || State.variables.arcadeUpgradeFuckdolls === 1) && ( - (State.variables.Flag === 0 && s.assignment !== "be confined in the arcade") || - (State.variables.Flag !== 0 && s.assignment === "be confined in the arcade"))), + (State.variables.SlaveSummaryFiler === "assignable" && s.assignment !== "be confined in the arcade") || + (State.variables.SlaveSummaryFiler !== "assignable" && s.assignment === "be confined in the arcade"))), "Pit": s => (s.assignmentVisible === 1 && s.fuckdoll === 0 && ( - (State.variables.Flag === 0 && !State.variables.fighterIDs.includes(s.ID) && canWalk(s) && (s.assignment !== "guard you") && (s.assignment !== "work in the dairy" || State.variables.dairyRestraintsSetting < 2)) || - (State.variables.Flag !== 0 && State.variables.fighterIDs.includes(s.ID)))), + (State.variables.SlaveSummaryFiler === "assignable" && !State.variables.fighterIDs.includes(s.ID) && canWalk(s) && (s.assignment !== "guard you") && (s.assignment !== "work in the dairy" || State.variables.dairyRestraintsSetting < 2)) || + (State.variables.SlaveSummaryFiler !== "assignable" && State.variables.fighterIDs.includes(s.ID)))), "Coursing Association": s => (s.assignmentVisible === 1 && s.fuckdoll === 0 && ( - (State.variables.Flag === 0 && canWalk(s) && State.variables.Lurcher.ID !== s.ID) || - (State.variables.Flag !== 0 && State.variables.Lurcher.ID === s.ID))), - "New Game Plus": s => ((State.variables.Flag === 0 && s.assignment !== "be imported") || (State.variables.Flag !== 0 && s.assignment === "be imported")), - "Rules Slave Select": s => ((State.variables.Flag === 0 && !ruleSlaveSelected(s, State.variables.currentRule)) || (State.variables.Flag !== 0 && ruleSlaveSelected(s, State.variables.currentRule))), - "Rules Slave Exclude": s => ((State.variables.Flag === 0 && !ruleSlaveExcluded(s, State.variables.currentRule)) || (State.variables.Flag !== 0 && ruleSlaveExcluded(s, State.variables.currentRule))), + (State.variables.SlaveSummaryFiler === "assignable" && canWalk(s) && State.variables.Lurcher.ID !== s.ID) || + (State.variables.SlaveSummaryFiler !== "assignable" && State.variables.Lurcher.ID === s.ID))), + "New Game Plus": s => ((State.variables.SlaveSummaryFiler === "assignable" && s.assignment !== "be imported") || (State.variables.SlaveSummaryFiler !== "assignable" && s.assignment === "be imported")), + "Rules Slave Select": s => ((State.variables.SlaveSummaryFiler === "assignable" && !ruleSlaveSelected(s, State.variables.currentRule)) || (State.variables.SlaveSummaryFiler !== "assignable" && ruleSlaveSelected(s, State.variables.currentRule))), + "Rules Slave Exclude": s => ((State.variables.SlaveSummaryFiler === "assignable" && !ruleSlaveExcluded(s, State.variables.currentRule)) || (State.variables.SlaveSummaryFiler !== "assignable" && ruleSlaveExcluded(s, State.variables.currentRule))), "Matchmaking": s => (s.devotion >= 100 && s.relationship === State.variables.activeSlave.relationship && s.ID !== State.variables.activeSlave.ID), "Dinner Party Preparations": s => (s.assignmentVisible === 1 && s.fuckdoll === 0), }; @@ -4995,10 +5031,10 @@ App.UI.slaveSummaryList = function (passageName) { if (V.useSlaveListInPageJSNavigation === 1) { const _Count = _indexSlavesIdxs.length; /* Useful for finding weird combinations — usages of this passage that don't yet generate the quick index. - * <<print 'pass/count/indexed/flag::[' + passageName + '/' + _Count + '/' + _indexed + '/' + $Flag + ']'>> + * <<print 'pass/count/indexed/flag::[' + passageName + '/' + _Count + '/' + _indexed + '/' + $SlaveSummaryFiler + ']'>> */ - if (((_Count > 1) && (_indexed === 0) && (((passageName === "Main") && (V.Flag === undefined) && ((V.useSlaveSummaryTabs === 0) || (V.slaveAssignmentTab === "all"))) || (V.Flag === 1)))) { + if (((_Count > 1) && (_indexed === 0) && (((passageName === "Main") && (V.SlaveSummaryFiler === undefined) && ((V.useSlaveSummaryTabs === 0) || (V.slaveAssignmentTab === "all"))) || (V.SlaveSummaryFiler === "occupying")))) { const _buttons = []; let _offset = -50; if (/Select/i.test(passageName)) { @@ -5132,7 +5168,7 @@ App.UI.slaveSummaryList = function (passageName) { res.push(`<div id="slave_${ _Slave.ID }" style="clear:both">`); if (passageFacility !== undefined) { - if (V.Flag === 0) { + if (V.SlaveSummaryFiler === "assignable" || V.SlaveSummaryFiler === "transferable") { if (!passageFacility.hasFreeSpace) { res.pop(); continue; @@ -5148,7 +5184,7 @@ App.UI.slaveSummaryList = function (passageName) { res.push(dividerAndImage(_Slave)); res.push(`[[${_slaveName}|Slave Interact][$activeSlave = $slaves[${_ssi}]]]`); } - } else if (V.Flag === 1) { + } else if (V.SlaveSummaryFiler === "occupying") { res.push(dividerAndImage(_Slave)); res.push(`[[${_slaveName}|Slave Interact][$activeSlave = $slaves[${_ssi}]]]`); } else { @@ -5187,7 +5223,7 @@ App.UI.slaveSummaryList = function (passageName) { res.push(`[[${_slaveName}|Subordinate Targeting][$activeSlave.subTarget = $slaves[${_ssi}].ID]]`); break; case "Coursing Association": - if (V.Flag === 0) { + if (V.SlaveSummaryFiler === "assignable") { res.push(dividerAndImage(_Slave)); res.push(`[[${_slaveName}|Assign][$i = ${_ssi}]]`); } else { @@ -5197,7 +5233,7 @@ App.UI.slaveSummaryList = function (passageName) { break; case "New Game Plus": res.push(dividerAndImage(_Slave)); - if (V.Flag === 0) { + if (V.SlaveSummaryFiler === "assignable") { res.push(`__''@@.pink;${_Slave.slaveName}@@''__`); } else { res.push(`__''@@.pink;${_Slave.slaveName}@@''__`); @@ -5205,7 +5241,7 @@ App.UI.slaveSummaryList = function (passageName) { break; case "Rules Slave Select": slaveImagePrinted = false; - if (V.Flag === 0) { + if (V.SlaveSummaryFiler === "assignable") { res.push(`__''[[${_slaveName}|Rules Slave Select Workaround][$activeSlave = $slaves[${_ssi}]]]''__`); } else { res.push(`__''[[${_slaveName}|Rules Slave Deselect Workaround][$activeSlave = $slaves[${_ssi}]]]''__`); @@ -5213,7 +5249,7 @@ App.UI.slaveSummaryList = function (passageName) { break; case "Rules Slave Exclude": slaveImagePrinted = false; - if (V.Flag === 0) { + if (V.SlaveSummaryFiler === "assignable") { res.push(`__''[[${_slaveName}|Rules Slave Exclude Workaround][$activeSlave = $slaves[${_ssi}]]]''__`); } else { res.push(`__''[[${_slaveName}|Rules Slave NoExclude Workaround][$activeSlave = $slaves[${_ssi}]]]''__`); @@ -5258,7 +5294,7 @@ App.UI.slaveSummaryList = function (passageName) { } const _numFacilities = V.brothel + V.club + V.dairy + V.farmyard + V.servantsQuarters + V.masterSuite + V.spa + V.clinic + V.schoolroom + V.cellblock + V.arcade + V.HGSuite; - + if (_numFacilities > 0) { if (passageName === "Main" || passageName === "Head Girl Suite" || passageName === "Spa" || passageName === "Brothel" || passageName === "Club" || passageName === "Arcade" || passageName === "Clinic" || passageName === "Schoolroom" || passageName === "Dairy" || passageName === "Farmyard" || passageName === "Servants' Quarters" || passageName === "Master Suite" || passageName === "Cellblock") { V.returnTo = passageName; @@ -5268,7 +5304,7 @@ App.UI.slaveSummaryList = function (passageName) { } } /* closes _numFacilities */ - if ((passageName !== 'Main') || (V.Flag !== undefined) || (V.useSlaveSummaryTabs === 0) || (tabName === "all")) { + if ((passageName !== 'Main') || (V.SlaveSummaryFiler !== undefined) || (V.useSlaveSummaryTabs === 0) || (tabName === "all")) { res.push(`<span id="slave-${slaves[_ssi].ID}"> </span>`); } res.push('<br/>'); @@ -5285,9 +5321,11 @@ App.UI.slaveSummaryList = function (passageName) { if (passageFacility !== undefined) { res.push(`<br>${ V.seeImages !== 1 || V.seeSummaryImages !== 1 || V.imageChoice === 1}` ? ' ' : ''); - if (V.Flag === 0) { + if (V.SlaveSummaryFiler === "assignable") { + res.push(`<<link "Send ${_Slave.object} to ${passageFacility.name}" "Assign">><<set $i = ${_ssi}>><</link>>`); + } else if (V.SlaveSummaryFiler === "transferable") { res.push(`<<link "Send ${_Slave.object} to ${passageFacility.name}" "Assign">><<set $i = ${_ssi}>><</link>>`); - } else if (V.Flag === 1) { + } else if (V.SlaveSummaryFiler === "occupying") { res.push(`<<link "Remove ${_Slave.object} from ${passageFacility.name}" "Retrieve">><<set $i = ${_ssi}>><</link>>`); } else if (passageFacility.desc.manager !== null){ const managerCapName = capFirstChar(passageFacility.desc.manager.position); @@ -5310,14 +5348,14 @@ App.UI.slaveSummaryList = function (passageName) { break; case "New Game Plus": res.push(`<br>${ V.seeImages !== 1 || V.seeSummaryImages !== 1 || V.imageChoice === 1}` ? ' ' : ''); - if (V.Flag === 0) { + if (V.SlaveSummaryFiler === "assignable") { res.push(`<<link "Add to import list" "New Game Plus">> - <<set $slavesToImport += 1,$Flag = 1>> + <<set $slavesToImport += 1,$SlaveSummaryFiler = "occupying">> <<= assignJob($slaves[${_ssi}], "be imported")>> <</link>>`); } else { res.push(`<<link "Remove from import list" "New Game Plus">> - <<set $slavesToImport -= 1,$Flag = 0>> + <<set $slavesToImport -= 1,$SlaveSummaryFiler = "assignable">> <<= removeJob($slaves[${_ssi}], $slaves[${_ssi}].assignment)>> <</link>>`); } diff --git a/src/npc/agent/agentFramework.js b/src/npc/agent/agentFramework.js index f3160b904b1b8277303a95bad01a0d710a36251d..7e540ac9ea32c966acca249ad8ce6360d80d6ac1 100644 --- a/src/npc/agent/agentFramework.js +++ b/src/npc/agent/agentFramework.js @@ -1,5 +1,5 @@ App.Data.Facilities.arcologyAgent = { - baseName: "arcololgy", + baseName: "arcology", genericName: null, jobs: { agentsSlave: { diff --git a/src/pregmod/widgets/assignmentFilterWidget.tw b/src/pregmod/widgets/assignmentFilterWidget.tw index 87ce972f2e3744befa869e33ff1e71a8327fdef7..2c47355fb694d3e9d1cf7763cc568473082a3fa0 100644 --- a/src/pregmod/widgets/assignmentFilterWidget.tw +++ b/src/pregmod/widgets/assignmentFilterWidget.tw @@ -78,23 +78,24 @@ /* * Checks from which Facility its get called and removes it from the list * this is the Main Filter widget used on all Passages atm - * sets Flag = zero so slave summary provides send-to-facility links + * sets SlaveSummaryFiler = "assignable" so slave summary provides send-to-facility links */ <<widget "assignmentFilter">> - <<link All>><<showallAssignmentFilter>><<replace #ComingGoing>><<set $Flag = 0>><<include 'Slave Summary'>><<resetAssignmentFilter>><</replace>><</link>> - <<if passage() != "Arcade">><<print " | ">><<link Arcade>><<arcadeAssignmentFilter>><<replace #ComingGoing>><<set $Flag = 0>><<include 'Slave Summary'>><<resetAssignmentFilter>><</replace>><</link>><</if>> - <<if passage() != "Brothel">><<print " | ">><<link Brothel>><<brothelAssignmentFilter>><<replace #ComingGoing>><<set $Flag = 0>><<include 'Slave Summary'>><<resetAssignmentFilter>><</replace>><</link>><</if>> - <<if passage() != "Cellblock">><<print " | ">><<link Cellblock>><<cellblockAssignmentFilter>><<replace #ComingGoing>><<set $Flag = 0>><<include 'Slave Summary'>><<resetAssignmentFilter>><</replace>><</link>><</if>> - <<if passage() != "Clinic">><<print " | ">><<link Clinic>><<clinicAssignmentFilter>><<replace #ComingGoing>><<set $Flag = 0>><<include 'Slave Summary'>><<resetAssignmentFilter>><</replace>><</link>><</if>> - <<if passage() != "Club">><<print " | ">><<link Club>><<clubAssignmentFilter>><<replace #ComingGoing>><<set $Flag = 0>><<include 'Slave Summary'>><<resetAssignmentFilter>><</replace>><</link>><</if>> - <<if passage() != "Dairy">><<print " | ">><<link Dairy>><<dairyAssignmentFilter>><<replace #ComingGoing>><<set $Flag = 0>><<include 'Slave Summary'>><<resetAssignmentFilter>><</replace>><</link>><</if>> - <<if passage() != "Farmyard">><<print " | ">><<link Farmyard>><<farmyardAssignmentFilter>><<replace #ComingGoing>><<set $Flag = 0>><<include 'Slave Summary'>><<resetAssignmentFilter>><</replace>><</link>><</if>> - <<print " | ">><<link Penthouse>><<penthouseAssignmentFilter>><<replace #ComingGoing>><<include 'Slave Summary'>><<set $Flag = 0>><<resetAssignmentFilter>><</replace>><</link>> - <<if passage() != "Schoolroom">><<print " | ">><<link Schoolroom>><<schoolAssignmentFilter>><<replace #ComingGoing>><<set $Flag = 0>><<include 'Slave Summary'>><<resetAssignmentFilter>><</replace>><</link>><</if>> - <<if passage() != "Spa">><<print " | ">><<link Spa>><<spaAssignmentFilter>><<replace #ComingGoing>><<set $Flag = 0>><<include 'Slave Summary'>><<resetAssignmentFilter>><</replace>><</link>><</if>> - <<if passage() != "Nursery">><<print " | ">><<link Nursery>><<nurseryAssignmentFilter>><<replace #ComingGoing>><<set $Flag = 0>><<include 'Slave Summary'>><<resetAssignmentFilter>><</replace>><</link>><</if>> - <<if passage() != "Master Suite">><<print " | ">><<link Suite>><<suiteAssignmentFilter>><<replace #ComingGoing>><<set $Flag = 0>><<include 'Slave Summary'>><<resetAssignmentFilter>><</replace>><</link>><</if>> - <<if passage() != "Servants' Quarters">><<print " | ">><<link Quarters>><<quartersAssignmentFilter>><<set $Flag = 0>><<replace #ComingGoing>><<include 'Slave Summary'>><<resetAssignmentFilter>><</replace>><</link>><</if>> + <<link All>><<showallAssignmentFilter>><<replace #ComingGoing>><<set $SlaveSummaryFiler = "assignable">><<include 'Slave Summary'>><<resetAssignmentFilter>><</replace>><</link>> + <<if passage() != "Arcade">><<print " | ">><<link Arcade>><<arcadeAssignmentFilter>><<replace #ComingGoing>><<set $SlaveSummaryFiler = "assignable">><<include 'Slave Summary'>><<resetAssignmentFilter>><</replace>><</link>><</if>> + <<if passage() != "Brothel">><<print " | ">><<link Brothel>><<brothelAssignmentFilter>><<replace #ComingGoing>><<set $SlaveSummaryFiler = "assignable">><<include 'Slave Summary'>><<resetAssignmentFilter>><</replace>><</link>><</if>> + <<if passage() != "Cellblock">><<print " | ">><<link Cellblock>><<cellblockAssignmentFilter>><<replace #ComingGoing>><<set $SlaveSummaryFiler = "assignable">><<include 'Slave Summary'>><<resetAssignmentFilter>><</replace>><</link>><</if>> + <<if passage() != "Clinic">><<print " | ">><<link Clinic>><<clinicAssignmentFilter>><<replace #ComingGoing>><<set $SlaveSummaryFiler = "assignable">><<include 'Slave Summary'>><<resetAssignmentFilter>><</replace>><</link>><</if>> + <<if passage() != "Club">><<print " | ">><<link Club>><<clubAssignmentFilter>><<replace #ComingGoing>><<set $SlaveSummaryFiler = "assignable">><<include 'Slave Summary'>><<resetAssignmentFilter>><</replace>><</link>><</if>> + <<if passage() != "Dairy">><<print " | ">><<link Dairy>><<dairyAssignmentFilter>><<replace #ComingGoing>><<set $SlaveSummaryFiler = "assignable">><<include 'Slave Summary'>><<resetAssignmentFilter>><</replace>><</link>><</if>> + <<if passage() != "Farmyard">><<print " | ">><<link Farmyard>><<farmyardAssignmentFilter>><<replace #ComingGoing>><<set $SlaveSummaryFiler = "assignable">><<include 'Slave Summary'>><<resetAssignmentFilter>><</replace>><</link>><</if>> + <<print " | ">><<link Penthouse>><<penthouseAssignmentFilter>><<replace #ComingGoing>><<include 'Slave Summary'>><<set $SlaveSummaryFiler = "assignable">><<resetAssignmentFilter>><</replace>><</link>> + <<if passage() != "Schoolroom">><<print " | ">><<link Schoolroom>><<schoolAssignmentFilter>><<replace #ComingGoing>><<set $SlaveSummaryFiler = "assignable">><<include 'Slave Summary'>><<resetAssignmentFilter>><</replace>><</link>><</if>> + <<if passage() != "Spa">><<print " | ">><<link Spa>><<spaAssignmentFilter>><<replace #ComingGoing>><<set $SlaveSummaryFiler = "assignable">><<include 'Slave Summary'>><<resetAssignmentFilter>><</replace>><</link>><</if>> + <<if passage() != "Nursery">><<print " | ">><<link Nursery>><<nurseryAssignmentFilter>><<replace #ComingGoing>><<set $SlaveSummaryFiler = "assignable">><<include 'Slave Summary'>><<resetAssignmentFilter>><</replace>><</link>><</if>> + <<if passage() != "Master Suite">><<print " | ">><<link Suite>><<suiteAssignmentFilter>><<replace #ComingGoing>><<set $SlaveSummaryFiler = "assignable">><<include 'Slave Summary'>><<resetAssignmentFilter>><</replace>><</link>><</if>> + <<if passage() != "Servants' Quarters">><<print " | ">><<link Quarters>><<quartersAssignmentFilter>><<set $SlaveSummaryFiler = "assignable">><<replace #ComingGoing>><<include 'Slave Summary'>><<resetAssignmentFilter>><</replace>><</link>><</if>> + <<print " | ">><<link @@.lime;Experienced@@>><<showallAssignmentFilter>><<set $SlaveSummaryFiler = "experienced">><<replace #ComingGoing>><<include 'Slave Summary'>><<resetAssignmentFilter>><</replace>><<set $SlaveSummaryFiler = "">><</link>> <</widget>> /* diff --git a/src/uncategorized/BackwardsCompatibility.tw b/src/uncategorized/BackwardsCompatibility.tw index 7e276538b6829860b754c900cadbef3b9dc7f50b..773bdd0de9664163889a7af819d59e5ee5dc561c 100644 --- a/src/uncategorized/BackwardsCompatibility.tw +++ b/src/uncategorized/BackwardsCompatibility.tw @@ -33,6 +33,10 @@ <<unset $drugs, $harshCollars, $shoes, $bellyAccessories, $vaginalAccessories, $dickAccessories, $buttplugs>> <</if>> +<<if def $Flag>> + <<unset $Flag>> +<</if>> + <<if def $servantMilkersJobs>> <<unset $servantMilkersJobs>> <</if>> diff --git a/src/uncategorized/arcade.tw b/src/uncategorized/arcade.tw index 449c99cf56b86ec73dd17700f63836be8a47ca35..d9ac9c962fae24160f16acdf35bc416b43d80f5f 100644 --- a/src/uncategorized/arcade.tw +++ b/src/uncategorized/arcade.tw @@ -149,7 +149,7 @@ $arcadeNameCaps <div class="content"> <<if $arcadeSlaves > 0>> <<arcadeAssignmentFilter>> - <<set $Flag = 1>> + <<set $SlaveSummaryFiler = "occupying">> <<include "Slave Summary">> <<resetAssignmentFilter>> <<else>> @@ -164,7 +164,7 @@ $arcadeNameCaps ''$arcadeNameCaps is full and cannot hold any more slaves'' <<elseif ($slaves.length > $arcadeSlaves)>> <<resetAssignmentFilter>> - <<set $Flag = 0>> + <<set $SlaveSummaryFiler = "assignable">> <<include "Slave Summary">> <</if>> </div> diff --git a/src/uncategorized/brothel.tw b/src/uncategorized/brothel.tw index d5fbc18b57f1a0a0974dcc38e6ddcffe857b8b05..bb80d9b4f8f0b3b9f8e83dbaf4ea8d5add533c24 100644 --- a/src/uncategorized/brothel.tw +++ b/src/uncategorized/brothel.tw @@ -1,6 +1,6 @@ :: Brothel [nobr] -<<set $nextButton = "Back to Main", $nextLink = "Main", $returnTo = "Brothel", $showEncyclopedia = 1, $encyclopedia = "Brothel", $brothelSlaves = $BrothiIDs.length, $Flag = 0>> +<<set $nextButton = "Back to Main", $nextLink = "Main", $returnTo = "Brothel", $showEncyclopedia = 1, $encyclopedia = "Brothel", $brothelSlaves = $BrothiIDs.length, $SlaveSummaryFiler = "assignable">> <<if $brothelName != "the Brothel">> <<set $brothelNameCaps = $brothelName.replace("the ", "The ")>> @@ -207,7 +207,7 @@ Last week this <br><br> <<if $Madam != 0>> - <<set $Flag = 2>> + <<set $SlaveSummaryFiler = "leading">> <<include "Slave Summary">> <<else>> You do not have a slave serving as a Madam. [[Appoint one|Madam Select]] @@ -226,7 +226,7 @@ Last week this <div class="content"> <<if $brothelSlaves > 0>> <<brothelAssignmentFilter>> - <<set $Flag = 1>> + <<set $SlaveSummaryFiler = "occupying">> <<include "Slave Summary">> <<resetAssignmentFilter>> <<else>> @@ -241,7 +241,7 @@ Last week this ''$brothelNameCaps is full and cannot hold any more slaves'' <<elseif ($slaves.length > $brothelSlaves)>> <<resetAssignmentFilter>> - <<set $Flag = 0>> + <<set $SlaveSummaryFiler = "assignable">> <<include "Slave Summary">> <</if>> </div> diff --git a/src/uncategorized/cellblock.tw b/src/uncategorized/cellblock.tw index 1e396b40a2e4b8db39fd545c3d037474f8f357f5..424333eabcf931fea40b22aa14857c8f3b70860e 100644 --- a/src/uncategorized/cellblock.tw +++ b/src/uncategorized/cellblock.tw @@ -112,7 +112,7 @@ $cellblockNameCaps <br><br> <<if $Wardeness != 0>> - <<set $Flag = 2>> + <<set $SlaveSummaryFiler = "leading">> <<include "Slave Summary">> <<else>> You do not have a slave serving as a Wardeness. [[Appoint one|Wardeness Select]] @@ -131,7 +131,7 @@ $cellblockNameCaps <div class="content"> <<if $cellblockSlaves > 0>> <<cellblockAssignmentFilter>> - <<set $Flag = 1>> + <<set $SlaveSummaryFiler = "occupying">> <<include "Slave Summary">> <<resetAssignmentFilter>> <<else>> @@ -146,7 +146,7 @@ $cellblockNameCaps ''$cellblockNameCaps is full and cannot hold any more slaves'' <<elseif ($slaves.length > $cellblockSlaves)>> <<resetAssignmentFilter>> - <<set $Flag = 0>> + <<set $SlaveSummaryFiler = "assignable">> <<include "Slave Summary">> <</if>> </div> diff --git a/src/uncategorized/clinic.tw b/src/uncategorized/clinic.tw index ddb516b27b94453e8042a5827f8eec94b36a9c9f..80d8114857dc763592b0c372e260c00826ae3981 100644 --- a/src/uncategorized/clinic.tw +++ b/src/uncategorized/clinic.tw @@ -134,7 +134,7 @@ $clinicNameCaps <br><br> <<if $Nurse != 0>> - <<set $Flag = 2>> + <<set $SlaveSummaryFiler = "leading">> <<include "Slave Summary">> <<else>> You do not have a slave serving as a clinical Nurse. [[Appoint one|Nurse Select]] @@ -147,13 +147,14 @@ $clinicNameCaps <div class="tab"> <button class="tablinks" onclick="opentab(event, 'assign')" id="tab assign">Assign a slave</button> <button class="tablinks" onclick="opentab(event, 'remove')" id="tab remove">Remove a slave</button> + <button class="tablinks" onclick="opentab(event, 'transfer')" id="tab transfer">Transfer from Facility</button> </div> <div id="remove" class="tabcontent"> <div class="content"> <<if $clinicSlaves > 0>> <<clinicAssignmentFilter>> - <<set $Flag = 1>> + <<set $SlaveSummaryFiler = "occupying">> <<include "Slave Summary">> <<resetAssignmentFilter>> <<else>> @@ -168,7 +169,19 @@ $clinicNameCaps ''$clinicNameCaps is full and cannot hold any more slaves'' <<elseif ($slaves.length > $clinicSlaves)>> <<resetAssignmentFilter>> - <<set $Flag = 0>> + <<set $SlaveSummaryFiler = "assignable">> + <<include "Slave Summary">> + <</if>> + </div> +</div> + +<div id="transfer" class="tabcontent"> + <div class="content"> + <<if ($clinic <= $clinicSlaves)>> + ''$clinicNameCaps is full and cannot hold any more slaves'' + <<elseif ($slaves.length > $clinicSlaves)>> + <<resetAssignmentFilter>> + <<set $SlaveSummaryFiler = "transferable">> <<include "Slave Summary">> <</if>> </div> @@ -176,8 +189,10 @@ $clinicNameCaps <<if ($tabChoice.Clinic == "assign")>> <script>document.getElementById("tab assign").click();</script> -<<else>> +<<elseif ($tabChoice.Clinic == "remove")>> <script>document.getElementById("tab remove").click();</script> +<<elseif ($tabChoice.Clinic == "transfer")>> + <script>document.getElementById("tab transfer").click();</script> <</if>> </body> diff --git a/src/uncategorized/club.tw b/src/uncategorized/club.tw index 2350808bbda0370a844f69b7e114a1070d7a434d..2e69d4f5c9f95385189cbbb697e6f5329c0dde19 100644 --- a/src/uncategorized/club.tw +++ b/src/uncategorized/club.tw @@ -251,7 +251,7 @@ $clubNameCaps <br><br> <<if $DJ != 0>> - <<set $Flag = 2>> + <<set $SlaveSummaryFiler = "leading">> <<include "Slave Summary">> <<else>> You do not have a slave serving as a DJ. [[Appoint one|DJ Select]] @@ -270,7 +270,7 @@ $clubNameCaps <div class="content"> <<if $clubSlaves > 0>> <<clubAssignmentFilter>> - <<set $Flag = 1>> + <<set $SlaveSummaryFiler = "occupying">> <<include "Slave Summary">> <<resetAssignmentFilter>> <<else>> @@ -285,7 +285,7 @@ $clubNameCaps ''$clubNameCaps is full and cannot hold any more slaves'' <<elseif ($slaves.length > $clubSlaves)>> <<resetAssignmentFilter>> - <<set $Flag = 0>> + <<set $SlaveSummaryFiler = "assignable">> <<include "Slave Summary">> <</if>> </div> diff --git a/src/uncategorized/coursingAssociation.tw b/src/uncategorized/coursingAssociation.tw index e6d13b8d162eb260e0275fc3f5ef887fe2b46307..e774b3188ffc25a08a3afa395a058ac16ddeecc1 100644 --- a/src/uncategorized/coursingAssociation.tw +++ b/src/uncategorized/coursingAssociation.tw @@ -20,7 +20,7 @@ The chasing slaves are known as lurchers, the term once used for the sighthounds <<if $Lurcher != 0>> <br><br>''Fire your Lurcher:'' - <<set $Flag = 1>> + <<set $SlaveSummaryFiler = "occupying">> <<include "Slave Summary">> <</if>> @@ -28,7 +28,7 @@ The chasing slaves are known as lurchers, the term once used for the sighthounds <br><br> <<assignmentFilter>> <span id="ComingGoing"> - <<set $Flag = 0>> + <<set $SlaveSummaryFiler = "assignable">> <<showallAssignmentFilter>> <<include "Slave Summary">> <<resetAssignmentFilter>> diff --git a/src/uncategorized/dairy.tw b/src/uncategorized/dairy.tw index e5e43cfcc6167a78a10bdb2935455195f9ed6cb1..e0129d2ceda4b9eb8f3429e9b9d59c2d2b4f71ee 100644 --- a/src/uncategorized/dairy.tw +++ b/src/uncategorized/dairy.tw @@ -501,7 +501,7 @@ $dairyNameCaps <br><br> <<if ($Milkmaid != 0)>> - <<set $Flag = 2>> + <<set $SlaveSummaryFiler = "leading">> <<include "Slave Summary">> <<if canAchieveErection($Milkmaid) && $Milkmaid.pubertyXY == 1>> <<setLocalPronouns $Milkmaid>> @@ -539,7 +539,7 @@ $dairyNameCaps <div class="content"> <<if $dairySlaves > 0>> <<dairyAssignmentFilter>> - <<set $Flag = 1>> + <<set $SlaveSummaryFiler = "occupying">> <<include "Slave Summary">> <<resetAssignmentFilter>> <<else>> @@ -554,7 +554,7 @@ $dairyNameCaps ''$dairyNameCaps is full and cannot hold any more slaves'' <<elseif ($slaves.length > $dairySlaves)>> <<resetAssignmentFilter>> - <<set $Flag = 0>> + <<set $SlaveSummaryFiler = "assignable">> <<include "Slave Summary">> <</if>> </div> diff --git a/src/uncategorized/headGirlSuite.tw b/src/uncategorized/headGirlSuite.tw index 474c4d5e2a49bc6f9e7888120cf185c477b4b2e2..8a42b0aac0057103c5a91c9d9fe6502d1343a9c4 100644 --- a/src/uncategorized/headGirlSuite.tw +++ b/src/uncategorized/headGirlSuite.tw @@ -57,7 +57,7 @@ <div class="content"> <<if $HGSuiteSlaves > 0>> <<headgirlSuiteAssignmentFilter>> - <<set $Flag = 1>> + <<set $SlaveSummaryFiler = "occupying">> <<include "Slave Summary">> <<resetAssignmentFilter>> <</if>> @@ -69,7 +69,7 @@ <<if ($slaves.length > $HGSuiteSlaves) && ($HGSuiteSlaves < 1)>> <<assignmentFilter>> <<resetAssignmentFilter>> - <<set $Flag = 0>> + <<set $SlaveSummaryFiler = "assignable">> <<include "Slave Summary">> <<else>> ''Head Girl already has a girl.'' diff --git a/src/uncategorized/main.tw b/src/uncategorized/main.tw index 43657866041973194fc8f487ecbea69cbae59dba..4aec940dc9292dc84bc8039eb8a205ee3377f06e 100644 --- a/src/uncategorized/main.tw +++ b/src/uncategorized/main.tw @@ -1,6 +1,6 @@ :: Main [nobr] -<<unset $Flag>> +<<unset $SlaveSummaryFiler>> <<resetAssignmentFilter>> <<if $releaseID >= 1000 || $ver.includes("0.9") || $ver.includes("0.8") || $ver.includes("0.7") || $ver.includes("0.6")>> <<if $releaseID >= 1031>> diff --git a/src/uncategorized/masterSuite.tw b/src/uncategorized/masterSuite.tw index 12689c1814ba63bf8b9aa180fea42ad4fda791db..0478aadd359f2820bd83aef6233d46b6102b2247 100644 --- a/src/uncategorized/masterSuite.tw +++ b/src/uncategorized/masterSuite.tw @@ -346,7 +346,7 @@ $masterSuiteNameCaps is furnished <br><br> <<if $Concubine != 0>> - <<set $Flag = 2>> + <<set $SlaveSummaryFiler = "leading">> <<include "Slave Summary">> <<else>> You do not have a slave serving as your Concubine. [[Appoint one|Concubine Select]] @@ -365,7 +365,7 @@ $masterSuiteNameCaps is furnished <div class="content"> <<if $masterSuiteSlaves > 0>> <<suiteAssignmentFilter>> - <<set $Flag = 1>> + <<set $SlaveSummaryFiler = "occupying">> <<include "Slave Summary">> <<resetAssignmentFilter>> <<else>> @@ -380,7 +380,7 @@ $masterSuiteNameCaps is furnished ''$masterSuiteNameCaps is full and cannot hold any more slaves'' <<elseif ($slaves.length > $masterSuiteSlaves)>> <<resetAssignmentFilter>> - <<set $Flag = 0>> + <<set $SlaveSummaryFiler = "assignable">> <<include "Slave Summary">> <</if>> </div> diff --git a/src/uncategorized/matchmaking.tw b/src/uncategorized/matchmaking.tw index dd884f98f2f89e5d5ab15c90e087add69e27bc40..6b9224a3e70e96d5bf9aa64f1a4d9b1a801784ff 100644 --- a/src/uncategorized/matchmaking.tw +++ b/src/uncategorized/matchmaking.tw @@ -381,7 +381,7 @@ Despite $his devotion and trust, $he is still a slave, and probably knows that $ <<if $seeImages == 1>><br style="clear:both"><</if>> <br><br>__Put $him with another worshipful <<if $eventSlave.relationship == -2>>emotionally bonded slave<<else>>emotional slut<</if>>:__ -<<set $Flag = 1>> +<<set $SlaveSummaryFiler = "occupying">> <<include "Slave Summary">> </span> diff --git a/src/uncategorized/newGamePlus.tw b/src/uncategorized/newGamePlus.tw index 3eb8bf2e8ce3a54319bb5e9242391a2640334fd0..179ce4b766a520e77c960b3196363fe3bd4524e3 100644 --- a/src/uncategorized/newGamePlus.tw +++ b/src/uncategorized/newGamePlus.tw @@ -1,6 +1,6 @@ :: New Game Plus [nobr] -<<set $ui = "start">> <<unset $Flag>> +<<set $ui = "start">> <<unset $SlaveSummaryFiler>> <<if ndef $slavesToImport>><<set $slavesToImport = 0>><</if>> <<if ndef $slavesToImportMax>><<set $slavesToImportMax = 5>><</if>> @@ -70,7 +70,7 @@ Select up to $slavesToImportMax slaves to be imported into a new game and then c <<if $slavesToImport >= $slavesToImportMax>> //Current slave import capacity exceded.// <</if>> - <<set $Flag = 1>> <<include "Slave Summary">> + <<set $SlaveSummaryFiler = "occupying">> <<include "Slave Summary">> <</if>> </div> </div> @@ -81,7 +81,7 @@ Select up to $slavesToImportMax slaves to be imported into a new game and then c <<else>> <<if $slaves.length > $slavesToImport>> ''These slaves are available to be imported into the new game:'' - <<set $Flag = 0>> <<include "Slave Summary">> + <<set $SlaveSummaryFiler = "assignable">> <<include "Slave Summary">> <</if>> <</if>> </div> diff --git a/src/uncategorized/pit.tw b/src/uncategorized/pit.tw index ca941710bea2e80d80d3a1bdbb2ff10f9042612e..e8a3332ad6807ea6af78a10f5f55d6b8c9dd15bc 100644 --- a/src/uncategorized/pit.tw +++ b/src/uncategorized/pit.tw @@ -343,7 +343,7 @@ $pitNameCaps is clean and ready, <div id="remove" class="tabcontent"> <div class="content"> <<if _DL > 0>> - <<set $Flag = 1>> + <<set $SlaveSummaryFiler = "occupying">> <<include "Slave Summary">> <<else>> <br><br>//$pitNameCaps is empty for the moment// @@ -354,7 +354,7 @@ $pitNameCaps is clean and ready, <div id="assign" class="tabcontent"> <div class="content"> <<if (_SL > _DL)>> - <<set $Flag = 0>> + <<set $SlaveSummaryFiler = "assignable">> <<include "Slave Summary">> <</if>> </div> diff --git a/src/uncategorized/reDevotedMotherDaughter.tw b/src/uncategorized/reDevotedMotherDaughter.tw index 3a668017f66130aa55ff2973ea653a3cd5e0f584..030e72642fc74a86e1b722529a7a17310e6f2a4c 100644 --- a/src/uncategorized/reDevotedMotherDaughter.tw +++ b/src/uncategorized/reDevotedMotherDaughter.tw @@ -33,7 +33,7 @@ $slaves[$i].slaveName and $his daughter $slaves[$j].slaveName are both good slav <span id="result"> <br><<link "Spend the night sharing your bed with them, and each of them with the other">> <<replace "#result">> - Neither of them bats an eye when you announce you're turning in early and that they'll be joining you. Since they're already naked, they get into your big soft bed before you and lie facing each other, with enough room in between them for you to take a central position. They clearly assume you'll start with one of them on each side of you, so they're quite surprised when you slide in behind $slaves[$i].slaveName instead. $slaves[$j].slaveName snuggles up to _his2 mother happily enough, however. You extend the foreplay to hours, eventually bringing both of them to such a state of naked arousal that they begin grinding against each other as much as they do you. They get the idea, and things turn into a sort of unspoken mutual one-upmanship between them. What starts with $slaves[$j].slaveName clearly feeling very daring as _he2 sucks _his2 mother's nipple ends with $slaves[$i].slaveName lying on $his back getting fucked by you while $he orally pleasures $slaves[$j].slaveName. You're face to face with $slaves[$j].slaveName and _he2 groans happily into your mouth as $slaves[$i].slaveName moans into _his2 fuckhole. + Neither of them bats an eye when you announce you're turning in early and that they'll be joining you. Since they're already naked, they get into your big soft bed before you and lie facing each other, with enough room in between them for you to take a central position. They clearly assume you'll start with one of them on each side of you, so they're quite surprised when you slide in behind $slaves[$i].slaveName instead. $slaves[$j].slaveName snuggles up to _his2 mother happily enough, however. You extend the foreplay for hours, eventually bringing both of them to such a state of naked arousal that they begin grinding against each other as much as they do you. They get the idea, and things turn into a sort of unspoken mutual one-upmanship between them. What starts with $slaves[$j].slaveName clearly feeling very daring as _he2 sucks _his2 mother's nipple ends with $slaves[$i].slaveName lying on $his back getting fucked by you while $he orally pleasures $slaves[$j].slaveName. You're face to face with $slaves[$j].slaveName and _he2 groans happily into your mouth as $slaves[$i].slaveName moans into _his2 fuckhole. @@.mediumaquamarine;They have both become more trusting of you.@@ <<set $slaves[$i].trust += 4, $slaves[$j].trust += 4, $slaves[$i].counter.oral += 1, $slaves[$j].counter.oral += 1, $oralTotal += 2>> diff --git a/src/uncategorized/rulesSlaveExclude.tw b/src/uncategorized/rulesSlaveExclude.tw index 3bda3fbbe8e85595d0a240438868031231cd0a27..50ff00c308ea639e7445b88fd6a79b8aba140590 100644 --- a/src/uncategorized/rulesSlaveExclude.tw +++ b/src/uncategorized/rulesSlaveExclude.tw @@ -7,15 +7,15 @@ <</if>> <<if ($currentRule.excludedSlaves.length < 1)>> - <<set $Flag = 0>> + <<set $SlaveSummaryFiler = "assignable">> Select slaves to exclude from Rule $r: <<include "Slave Summary">> <<else>> Slaves currently excluded from Rule $r: [[Clear list|Rules Slave Exclude][$currentRule.excludedSlaves = []]] - <<set $Flag = 1>> + <<set $SlaveSummaryFiler = "occupying">> <<include "Slave Summary">> <br><br> Select more slaves to exclude from Rule $r: - <<set $Flag = 0>> + <<set $SlaveSummaryFiler = "assignable">> <<include "Slave Summary">> <</if>> diff --git a/src/uncategorized/rulesSlaveSelect.tw b/src/uncategorized/rulesSlaveSelect.tw index 4f234f4a0790886558cb52525bd6877576724c84..ded8c3ef46ca23f4ef1eb37fbfdd57d2955c2c5a 100644 --- a/src/uncategorized/rulesSlaveSelect.tw +++ b/src/uncategorized/rulesSlaveSelect.tw @@ -7,15 +7,15 @@ <</if>> <<if ($currentRule.selectedSlaves.length < 1)>> - <<set $Flag = 0>> + <<set $SlaveSummaryFiler = "assignable">> Choose specific slaves to limit Rule $r: <<include "Slave Summary">> <<else>> Rule $r currently limited to specific slaves: [[Clear list|Rules Slave Select][$currentRule.selectedSlaves = []]] - <<set $Flag = 1>> + <<set $SlaveSummaryFiler = "occupying">> <<include "Slave Summary">> <br><br> Choose more specific slaves: - <<set $Flag = 0>> + <<set $SlaveSummaryFiler = "assignable">> <<include "Slave Summary">> <</if>> diff --git a/src/uncategorized/schoolroom.tw b/src/uncategorized/schoolroom.tw index 0e5804136ef95699c49b6252bc64248b04d3a29f..a1b75e32d5ed0ee10b30adf3535d429530eaa6a7 100644 --- a/src/uncategorized/schoolroom.tw +++ b/src/uncategorized/schoolroom.tw @@ -117,7 +117,7 @@ $schoolroomNameCaps is well-equipped, with wallscreens to display lessons. These <br><br> <<if $Schoolteacher != 0>> - <<set $Flag = 2>> + <<set $SlaveSummaryFiler = "leading">> <<include "Slave Summary">> <<else>> You do not have a slave serving as a Schoolteacher. [[Appoint one|Schoolteacher Select]] @@ -129,13 +129,14 @@ $schoolroomNameCaps is well-equipped, with wallscreens to display lessons. These <div class="tab"> <button class="tablinks" onclick="opentab(event, 'assign')" id="tab assign">Assign a slave</button> <button class="tablinks" onclick="opentab(event, 'remove')" id="tab remove">Remove a slave</button> + <button class="tablinks" onclick="opentab(event, 'transfer')" id="tab transfer">Transfer from Facility</button> </div> <div id="remove" class="tabcontent"> <div class="content"> <<if $schoolroomSlaves > 0>> <<schoolAssignmentFilter>> - <<set $Flag = 1>> + <<set $SlaveSummaryFiler = "occupying">> <<include "Slave Summary">> <<resetAssignmentFilter>> <<else>> @@ -150,7 +151,19 @@ $schoolroomNameCaps is well-equipped, with wallscreens to display lessons. These ''$schoolroomNameCaps is full and cannot hold any more slaves'' <<elseif ($slaves.length > $schoolroomSlaves)>> <<resetAssignmentFilter>> - <<set $Flag = 0>> + <<set $SlaveSummaryFiler = "assignable">> + <<include "Slave Summary">> + <</if>> + </div> +</div> + +<div id="transfer" class="tabcontent"> + <div class="content"> + <<if ($schoolroom <= $schoolroomSlaves)>> + ''$schoolroomNameCaps is full and cannot hold any more slaves'' + <<elseif ($slaves.length > $schoolroomSlaves)>> + <<resetAssignmentFilter>> + <<set $SlaveSummaryFiler = "transferable">> <<include "Slave Summary">> <</if>> </div> @@ -158,8 +171,10 @@ $schoolroomNameCaps is well-equipped, with wallscreens to display lessons. These <<if ($tabChoice.Schoolroom == "assign")>> <script>document.getElementById("tab assign").click();</script> -<<else>> +<<elseif ($tabChoice.Schoolroom == "remove")>> <script>document.getElementById("tab remove").click();</script> +<<elseif ($tabChoice.Schoolroom == "transfer")>> + <script>document.getElementById("tab transfer").click();</script> <</if>> </body> diff --git a/src/uncategorized/servantsQuarters.tw b/src/uncategorized/servantsQuarters.tw index 879198bd2f3271393da4ca480ed601f30e6406c8..ae1fbcc51cb4d0f161ef216133d6275a8d734b43 100644 --- a/src/uncategorized/servantsQuarters.tw +++ b/src/uncategorized/servantsQuarters.tw @@ -105,7 +105,7 @@ $servantsQuartersNameCaps <br><br> <<if $Stewardess != 0>> <<setLocalPronouns $Stewardess>> - <<set $Flag = 2>> + <<set $SlaveSummaryFiler = "leading">> <<include "Slave Summary">> <<if canAchieveErection($Stewardess) && $Stewardess.pubertyXY == 1>> <br> @@ -132,7 +132,7 @@ $servantsQuartersNameCaps <div class="content"> <<if $servantsQuartersSlaves > 0>> <<quartersAssignmentFilter>> - <<set $Flag = 1>> + <<set $SlaveSummaryFiler = "occupying">> <<include "Slave Summary">> <<resetAssignmentFilter>> <<else>> @@ -147,7 +147,7 @@ $servantsQuartersNameCaps ''$servantsQuartersNameCaps is full and cannot hold any more slaves'' <<elseif ($slaves.length > $servantsQuartersSlaves)>> <<resetAssignmentFilter>> - <<set $Flag = 0>> + <<set $SlaveSummaryFiler = "assignable">> <<include "Slave Summary">> <</if>> </div> diff --git a/src/uncategorized/spa.tw b/src/uncategorized/spa.tw index 365de16c72667fb97e74655092b5a2370d7226bb..1c7e28ba55915ba469c9194c1af4687cdfb4e805 100644 --- a/src/uncategorized/spa.tw +++ b/src/uncategorized/spa.tw @@ -119,7 +119,7 @@ $spaNameCaps <br><br> <<if $Attendant != 0>> - <<set $Flag = 2>> + <<set $SlaveSummaryFiler = "leading">> <<include "Slave Summary">> <<else>> You do not have a slave serving as a spa Attendant. [[Appoint one|Attendant Select]] @@ -133,13 +133,14 @@ $spaNameCaps <div class="tab"> <button class="tablinks" onclick="opentab(event, 'assign')" id="tab assign">Assign a slave</button> <button class="tablinks" onclick="opentab(event, 'remove')" id="tab remove">Remove a slave</button> + <button class="tablinks" onclick="opentab(event, 'transfer')" id="tab transfer">Transfer from Facility</button> </div> <div id="remove" class="tabcontent"> <div class="content"> <<if $spaSlaves > 0>> <<spaAssignmentFilter>> - <<set $Flag = 1>> + <<set $SlaveSummaryFiler = "occupying">> <<include "Slave Summary">> <<resetAssignmentFilter>> <<else>> @@ -154,7 +155,19 @@ $spaNameCaps ''$spaNameCaps is full and cannot hold any more slaves'' <<elseif ($slaves.length > $spaSlaves)>> <<resetAssignmentFilter>> - <<set $Flag = 0>> + <<set $SlaveSummaryFiler = "assignable">> + <<include "Slave Summary">> + <</if>> + </div> +</div> + +<div id="transfer" class="tabcontent"> + <div class="content"> + <<if ($spa <= $spaSlaves)>> + ''$spaNameCaps is full and cannot hold any more slaves'' + <<elseif ($slaves.length > $spaSlaves)>> + <<resetAssignmentFilter>> + <<set $SlaveSummaryFiler = "transferable">> <<include "Slave Summary">> <</if>> </div> @@ -162,8 +175,10 @@ $spaNameCaps <<if ($tabChoice.Spa == "assign")>> <script>document.getElementById("tab assign").click();</script> -<<else>> +<<elseif ($tabChoice.Spa == "remove")>> <script>document.getElementById("tab remove").click();</script> +<<elseif ($tabChoice.Spa == "transfer")>> + <script>document.getElementById("tab transfer").click();</script> <</if>> </body>