diff --git a/src/npc/startingGirls/commitStartingGirl.tw b/src/npc/startingGirls/commitStartingGirl.tw deleted file mode 100644 index c2c4b16801b672fcbd27dd559f28bc47ade8bd44..0000000000000000000000000000000000000000 --- a/src/npc/startingGirls/commitStartingGirl.tw +++ /dev/null @@ -1,146 +0,0 @@ -:: Commit Starting Girl [nobr] - -<<run App.StartingGirls.cleanup($activeSlave)>> -<<set _beforeCareerBonus = clone($activeSlave)>> -<<set _srcID = $activeSlave.ID>> - -<<if def $slaveIndices[$activeSlave.ID]>> - <div>@@.red;Starting Girl ID conflict; slave not committed. Please report this error with a description of your actions.@@</div> -<<else>> - <<run newSlave($activeSlave)>> -<</if>> - -<<if $activeSlave.pregSource == -1>> - <<set $PC.counter.slavesKnockedUp++>> -<</if>> - -<<set $originOverride = 0>> - -<<if $cash < minimumSlaveCost()>><<goto "Acquisition">><</if>> - -<<run cashX(forceNeg(startingSlaveCost($activeSlave)), "slaveTransfer", $activeSlave)>> - -<<= SlaveFullName($activeSlave)>> has been added to your starting stable of slaves. You now have <<print cashFormat($cash)>> remaining. -<br> -<<if $cash >= minimumSlaveCost()>> - <br> - <<link "Add another slave, starting from a new slave">> - <<set $activeSlave = App.StartingGirls.generate()>> - <<goto "Starting Girls">> - <</link>> - <br> - <<link "Add another slave, based on the previous slave">> - <<set $activeSlave = _beforeCareerBonus>> - <<set $activeSlave.ID = generateSlaveID()>> - <<run nationalityToName($activeSlave), App.StartingGirls.randomizeUnknowns($activeSlave)>> - <<set $activeSlave.mother = 0, $activeSlave.father = 0>> - <<goto "Starting Girls">> - <</link>> - <br> - //Add another slave, related to the previous slave:// - <div class="indent"> - <<link "Twin">> - <<run setMissingParents(getSlave(_srcID))>> - <<set _beforeCareerBonus.mother = getSlave(_srcID).mother, _beforeCareerBonus.father = getSlave(_srcID).father>> - <<set $activeSlave = generateRelatedSlave(_beforeCareerBonus, "twin")>> - <<run App.StartingGirls.randomizeUnknowns($activeSlave)>> - <<goto "Starting Girls">> - <</link>> - </div> - <<if $seeDicks !== 100 && $activeSlave.mother === 0>> - <<set _ageRange = getParentAgeRange($activeSlave, false)>> - <<if _ageRange.min <= _ageRange.max>> - <div class="indent"> - <<link "Mother">> - <<set $activeSlave = generateRelatedSlave(_beforeCareerBonus, "parent", _beforeCareerBonus.genes === "XY")>> - <<run App.StartingGirls.randomizeUnknowns($activeSlave)>> - <<set getSlave(_srcID).mother = $activeSlave.ID>> - <<goto "Starting Girls">> - <</link>> - </div> - <</if>> - <</if>> - <<if $seeDicks !== 0 && $activeSlave.father === 0>> - <<set _ageRange = getParentAgeRange($activeSlave, true)>> - <<if _ageRange.min <= _ageRange.max>> - <div class="indent"> - <<link "Father">> - <<set $activeSlave = generateRelatedSlave(_beforeCareerBonus, "parent", _beforeCareerBonus.genes === "XX")>> - <<run App.StartingGirls.randomizeUnknowns($activeSlave)>> - <<set getSlave(_srcID).father = $activeSlave.ID>> - <<goto "Starting Girls">> - <</link>> - </div> - <</if>> - <</if>> - <<if $activeSlave.actualAge < $retirementAge - 2>> - <<if $seeDicks !== 100>> - <div class="indent"> - <<link "Older Sister">> - <<run setMissingParents(getSlave(_srcID))>> - <<set _beforeCareerBonus.mother = getSlave(_srcID).mother, _beforeCareerBonus.father = getSlave(_srcID).father>> - <<set $activeSlave = generateRelatedSlave(_beforeCareerBonus, "older sibling", _beforeCareerBonus.genes === "XY")>> - <<run App.StartingGirls.randomizeUnknowns($activeSlave)>> - <<goto "Starting Girls">> - <</link>> - </div> - <</if>> - <<if $seeDicks !== 0>> - <div class="indent"> - <<link "Older Brother">> - <<run setMissingParents(getSlave(_srcID))>> - <<set _beforeCareerBonus.mother = getSlave(_srcID).mother, _beforeCareerBonus.father = getSlave(_srcID).father>> - <<set $activeSlave = generateRelatedSlave(_beforeCareerBonus, "older sibling", _beforeCareerBonus.genes === "XX")>> - <<run App.StartingGirls.randomizeUnknowns($activeSlave)>> - <<goto "Starting Girls">> - <</link>> - </div> - <</if>> - <</if>> - <<if $activeSlave.actualAge > $minimumSlaveAge + 2>> - <<if $seeDicks !== 100>> - <div class="indent"> - <<link "Younger Sister">> - <<run setMissingParents(getSlave(_srcID))>> - <<set _beforeCareerBonus.mother = getSlave(_srcID).mother, _beforeCareerBonus.father = getSlave(_srcID).father>> - <<set $activeSlave = generateRelatedSlave(_beforeCareerBonus, "younger sibling", _beforeCareerBonus.genes === "XY")>> - <<run App.StartingGirls.randomizeUnknowns($activeSlave)>> - <<goto "Starting Girls">> - <</link>> - </div> - <</if>> - <<if $seeDicks !== 0>> - <div class="indent"> - <<link "Younger Brother">> - <<run setMissingParents(getSlave(_srcID))>> - <<set _beforeCareerBonus.mother = getSlave(_srcID).mother, _beforeCareerBonus.father = getSlave(_srcID).father>> - <<set $activeSlave = generateRelatedSlave(_beforeCareerBonus, "younger sibling", _beforeCareerBonus.genes === "XX")>> - <<run App.StartingGirls.randomizeUnknowns($activeSlave)>> - <<goto "Starting Girls">> - <</link>> - </div> - <</if>> - <</if>> - <<if $activeSlave.actualAge > $minimumSlaveAge + 11>> - <<if $seeDicks !== 100>> - <div class="indent"> - <<link "Daughter">> - <<set $activeSlave = generateRelatedSlave(_beforeCareerBonus, "child", _beforeCareerBonus.genes === "XY")>> - <<run App.StartingGirls.randomizeUnknowns($activeSlave)>> - <<goto "Starting Girls">> - <</link>> - </div> - <</if>> - <<if $seeDicks !== 0>> - <div class="indent"> - <<link "Son">> - <<set $activeSlave = generateRelatedSlave(_beforeCareerBonus, "child", _beforeCareerBonus.genes === "XX")>> - <<run App.StartingGirls.randomizeUnknowns($activeSlave)>> - <<goto "Starting Girls">> - <</link>> - </div> - <</if>> - <</if>> - <div class="indent">//Warning: related slaves will influence each others' opinion of you, and may become difficult to control if not properly broken.//</div> -<</if>> -<br>[[Stop adding slaves and take control of the arcology|Acquisition]] diff --git a/src/npc/startingGirls/startingGirls.js b/src/npc/startingGirls/startingGirls.js index aaceb89568132a3e84626d957ae062383bc005d3..7042d7ebd8de8cb0e28adc9d087209537879c931 100644 --- a/src/npc/startingGirls/startingGirls.js +++ b/src/npc/startingGirls/startingGirls.js @@ -1512,20 +1512,58 @@ App.StartingGirls.finalize = function(slave) { el.appendChild(options.render()); if (V.cash >= cost) { + const addGirl = () => { + cashX(forceNeg(cost), "slaveTransfer", slave); + if (V.applyCareerBonus) { + if (_.isArray(V.careerBonusNeeded)) { + V.careerBonusNeeded.push(slave.ID); + } else { + V.careerBonusNeeded = [slave.ID]; + } + } + App.StartingGirls.cleanup(slave); + if (slave.pregSource === -1) { + V.PC.counter.slavesKnockedUp++; + } + newSlave(clone(slave)); + }; + if (V.cash - cost > minimumSlaveCost()) { + App.UI.DOM.appendNewElement("div", el, + App.UI.DOM.link( + "Add this slave, and use it as a template for the next slave", + () => { + addGirl(); + slave.ID = generateSlaveID(); + nationalityToName(slave); + App.StartingGirls.randomizeUnknowns(slave); + slave.mother = 0; + slave.father = 0; + }, + [], + "Starting Girls" + ) + ); + App.UI.DOM.appendNewElement("div", el, + App.UI.DOM.link( + "Add this slave, and randomize the next slave", + () => { + addGirl(); + V.originOverride = 0; + V.activeSlave = this.generate(); + }, + [], + "Starting Girls" + ) + ); + } App.UI.DOM.appendNewElement("div", el, App.UI.DOM.link( - "Add this slave", + "Add this slave, and take control of the arcology", () => { - if (V.applyCareerBonus) { - if (_.isArray(V.careerBonusNeeded)) { - V.careerBonusNeeded.push(slave.ID); - } else { - V.careerBonusNeeded = [slave.ID]; - } - } + addGirl(); }, [], - "Commit Starting Girl" + "Acquisition" ) ); } else {