diff --git a/src/endWeek/nextWeek/resetGlobals.js b/src/endWeek/nextWeek/resetGlobals.js index ac5fc9999b4f472eb7c62f90843ae58147dc4109..e3dac2a4ce278c4cbbca0dc48b4bf33f503adca9 100644 --- a/src/endWeek/nextWeek/resetGlobals.js +++ b/src/endWeek/nextWeek/resetGlobals.js @@ -5,12 +5,6 @@ App.EndWeek.resetGlobals = function() { // Integer and float variables. No real need to zero them out but doesn't hurt to have them in a known state, though this might mask variables NaN'ing out. Takes up the least amount of Memory besides a "" string. V.i = 0; V.j = 0; - V.motherSlave = -1; - V.daughterSlave = -1; - V.devMother = -1; - V.devDaughter = -1; - V.youngerSister = -1; - V.olderSister = -1; // Other arrays V.events = []; @@ -25,8 +19,6 @@ App.EndWeek.resetGlobals = function() { V.PETSevent = []; V.FSNonconformistEvents = []; V.REButtholeCheckinIDs = []; - V.rebelSlaves = []; - V.eligibleSlaves = []; // Slave Objects using 0 instead of null. Second most memory eaten up. V.activeSlave = 0; diff --git a/src/js/utilsSlaves.js b/src/js/utilsSlaves.js index 86b3b0590ed39c12ea680637bb598ecff511a78d..49338f9dfd6ec1506c6b94baa421952b63fc19b8 100644 --- a/src/js/utilsSlaves.js +++ b/src/js/utilsSlaves.js @@ -1,9 +1,13 @@ globalThis.cumSlaves = function() { return V.slaves.filter(s => (s.assignment === Job.MILKED || s.assignment === Job.DAIRY) && s.balls > 0 && s.ballType === "human"); -} +}; globalThis.fuckSlavesLength = function() { return V.slaves.filter(s => [Job.FUCKTOY, Job.MASTERSUITE, Job.CONCUBINE].includes(s.assignment)).length; -} +}; + +globalThis.getRieEligibleSlaves = function() { + return V.slaves.filter(s => assignmentVisible(s) || [Job.MASTERSUITE, Job.CONCUBINE, Job.HOUSE].includes(s.assignment) && s.fuckdoll === 0); +}; globalThis.SlaveSort = function() { const effectivePreg = (slave) => { diff --git a/src/uncategorized/randomIndividualEvent.tw b/src/uncategorized/randomIndividualEvent.tw index 30c5424c9e4f1751959225506830d6759e377273..c0aa662f7e22f1b3eca95cb6aa26cc5054685042 100644 --- a/src/uncategorized/randomIndividualEvent.tw +++ b/src/uncategorized/randomIndividualEvent.tw @@ -1,6 +1,7 @@ :: Random Individual Event [nobr] <<if $eventSlave == 0>> + <<set _eligibleSlaves = getRieEligibleSlaves()>> <<if ($debugMode > 0 && $debugModeEventSelection > 0)>> <<set $nextButton = "Refresh", $nextLink = "Random Individual Event", $returnTo = "Random Individual Event", $encyclopedia = "Random Events">> @@ -9,32 +10,25 @@ ''One of the following eligible slaves would have been selected for an individual random event:'' <br> - <<for $i = 0; $i < $eligibleSlaves.length; $i++>> - <<capture $i>> - <<set $eventSlave = getSlave($eligibleSlaves[$i])>> - <<set _slaveName = SlaveFullName($eventSlave)>> - <br><<print "[[_slaveName|Random Individual Event][$eventSlave = getSlave($eligibleSlaves[$i])]]">> - <</capture>> + <<for _slave range _eligibleSlaves>> + <<set _slaveName = SlaveFullName(_slave)>> + <br><<print "[[_slaveName|Random Individual Event][$eventSlave = getSlave(_slave)]]">> <</for>> <br><br>[[Switch to Random Nonindividual Event|Random Nonindividual Event][$activeSlave = 0, $eventSlave = 0]] <<else>> - <<set $eventSlave = getSlave($eligibleSlaves.random())>> + <<set $eventSlave = getSlave(_eligibleSlaves.random())>> <<goto "Random Individual Event">> <</if>> <<else>> - /* initialize event lists as arrays [], not objects {} */ <<set $events = [], $RESSevent = [], $RESSTRevent = [], $RETSevent = [], $RECIevent = [], $activeSlave = 0, $legendaryFacility = 0>> <<run generateRandomEventPool($eventSlave)>> - /* EVENT RANDOMIZATION */ <<set $events = populateEventArray().concat(App.Events.getIndividualEventsPassageList($eventSlave))>> - <<if ($debugMode > 0 && $debugModeEventSelection > 0)>> <<goto "random event select">> <<else>> <<goto "random event roll">> <</if>> - <</if>> /* CLOSES SLAVE SELECT */ diff --git a/src/uncategorized/randomNonindividualEvent.tw b/src/uncategorized/randomNonindividualEvent.tw index eb531a13b0fd99b5d9105625045132a796f54399..c932445f6a6ec1ecfa8076e475ddb7662175d9d7 100644 --- a/src/uncategorized/randomNonindividualEvent.tw +++ b/src/uncategorized/randomNonindividualEvent.tw @@ -10,9 +10,9 @@ ''Any one of your slaves would have been selected for a random non-individual event:'' <br> - <<for $i = 0; $i < $slaves.length; $i++>> - <<set _slaveName = SlaveFullName($slaves[$i])>> - <br><<print "[[_slaveName|Random Nonindividual Event][$eventSlave = $slaves[" + $i + "]]]">> + <<for _slave range $slaves>> + <<set _slaveName = SlaveFullName(_slave)>> + <br><<print "[[_slaveName|Random Nonindividual Event][$eventSlave = _slave]]">> <</for>> <br><br>[[Switch to RIE Eligibility Check|RIE Eligibility Check][$activeSlave = 0, $eventSlave = 0]] <<else>> diff --git a/src/uncategorized/rieEligibilityCheck.tw b/src/uncategorized/rieEligibilityCheck.tw index 21e47a71f33576a6a8660d4bdc4209bd90179b56..da8ad9786309e34c79b01e6733de59729629d42d 100644 --- a/src/uncategorized/rieEligibilityCheck.tw +++ b/src/uncategorized/rieEligibilityCheck.tw @@ -1,23 +1,12 @@ :: RIE Eligibility Check <<silently>> - -<<set $eventSlave = 0, $eligibleSlaves = []>> - -<<for $i = 0; $i < $slaves.length; $i++>> - <<if assignmentVisible($slaves[$i]) || $slaves[$i].assignment == "serve in the master suite" || $slaves[$i].assignment == "be your Concubine" || $slaves[$i].assignment == "work as a servant">> - <<if $slaves[$i].fuckdoll == 0>> - <<set $eligibleSlaves.push($slaves[$i].ID)>> - <</if>> - <</if>> -<</for>> - +<<set $eventSlave = 0>> <<if $hostageRescued == 1>> <<goto "P hostage acquisition">> -<<elseif $eligibleSlaves.length == 0>> +<<elseif getRieEligibleSlaves().length === 0>> <<goto "Next Week">> <<else>> <<goto "Random Individual Event">> <</if>> - <</silently>>