diff --git a/src/endWeek/nextWeek/nextWeek.js b/src/endWeek/nextWeek/nextWeek.js index 9cc3b7df9416cbc716860963897d1bbf1a929f60..d810c85d84da46c2acc7ba8e3ec7c03db099ce98 100644 --- a/src/endWeek/nextWeek/nextWeek.js +++ b/src/endWeek/nextWeek/nextWeek.js @@ -71,7 +71,8 @@ App.EndWeek.nextWeek = function() { V.PC.boobsMilk = 0; } // V.PC.boobsMilk = Math.round(10 * V.PC.lactationAdaptation); - V.PC.boobsMilk = milkAmount(V.PC) * 20; + // V.PC.boobsMilk = milkAmount(V.PC) * 20; + V.PC.boobsMilk = milkAmount(V.PC) * Math.max((V.PC.lactationAdaptation / 10), 1); V.PC.boobsMilk += boobsMilkIntegrityPC; V.PC.boobsMilk = Math.round(V.PC.boobsMilk / 10) * 10; V.PC.boobs += V.PC.boobsMilk; @@ -194,7 +195,8 @@ App.EndWeek.nextWeek = function() { slave.boobsMilk = 0; } // slave.boobsMilk = Math.round(10 * slave.lactationAdaptation); - slave.boobsMilk = milkAmount(slave) * 20; + // slave.boobsMilk = milkAmount(slave) * 20; + slave.boobsMilk = milkAmount(slave) * Math.max((slave.lactationAdaptation / 10), 1); slave.boobsMilk += boobsMilkIntegrity; slave.boobsMilk = Math.round(slave.boobsMilk / 10) * 10; slave.boobs += slave.boobsMilk; diff --git a/src/events/nonRandom/daughters/pCollaborationChoice.js b/src/events/nonRandom/daughters/pCollaborationChoice.js index d37a2800f96321317941ccc22ec0a044e98327d0..22d54e3e515f1f25c617fc92c6caccc45ebb1c87 100644 --- a/src/events/nonRandom/daughters/pCollaborationChoice.js +++ b/src/events/nonRandom/daughters/pCollaborationChoice.js @@ -21,9 +21,13 @@ App.Events.PCoupCollaborationChoice = class PCoupCollaborationChoice extends App r.push(`Your next communication from the Daughters of Liberty is a request for a live video call. You accept and are surprised to be confronted by ${V.traitor.slaveName}'s`); if (V.traitorType === "horror") { - r.push(`terrified`); + r.push(`terrified face.`); + } else if (V.traitorType === "broken") { + r.push(`coherent face; it would seem ${his} mind has come back to ${him}.`); + } else { + r.push(`face.`); } - r.push(`face. ${He} looks very different, without visible modifications of any kind and dressed in utilitarian clothes, but it's ${him}.`); + r.push(`${He} looks very different, without visible modifications of any kind and dressed in utilitarian clothes, but it's ${him}.`); App.Events.addParagraph(node, r); r = []; @@ -52,7 +56,7 @@ App.Events.PCoupCollaborationChoice = class PCoupCollaborationChoice extends App Spoken(V.traitor, `"Don't let them get you ${Master}! Show them who's boss!"`) ); } else { - r.push(`${He} hastily gestures that they are coming for you and that nothing you can do will deter them. ${He} barely signs off a plea for you to prepare your defenses.`); + r.push(`${He} hastily gestures that they are coming for you and that nothing you can do will deter them. ${He} barely signs off a plea for you to prepare your defenses before being dragged offsceen.`); } V.traitorType = "hostage"; } else if (V.traitor.intelligence + V.traitor.intelligenceImplant < -50) { diff --git a/src/events/nonRandom/daughters/pTraitorMessage.js b/src/events/nonRandom/daughters/pTraitorMessage.js index 5735ea1a53fc54191604e85b83783370f8f935b5..8ecd7fadfbc7679be403a5aef6d2120b4582b422 100644 --- a/src/events/nonRandom/daughters/pTraitorMessage.js +++ b/src/events/nonRandom/daughters/pTraitorMessage.js @@ -46,7 +46,14 @@ App.Events.PTraitorMessage = class PTraitorMessage extends App.Events.BaseEvent /* ------------------ pregnancy setup end here----------------- r.push(`As no broodmother cases in code below, it's no need to setup every case of impregnation through new system. Backup mechanic will do it for normal pregnancies.`); */ - + + if (V.traitor.fuckdoll !== 0) { + V.traitor.fuckdoll = 0; + } + if (V.traitor.fetish === Fetish.MINDBROKEN) { + V.traitor.fetish = "none"; + V.traitor.fetishStrength = 0; + } if (V.traitor.hStyle === "shaved") { V.traitor.hStyle = "strip"; } @@ -68,6 +75,8 @@ App.Events.PTraitorMessage = class PTraitorMessage extends App.Events.BaseEvent } } else if (V.traitorType === "defiant") { r.push(`${He} looks elated to be free, it's impossible to deny. ${He} seems unaware ${he}'s being recorded.`); + } else if (V.traitorType === "broken") { + r.push(`${He} looks completely indifferent to the situation. ${He} likely is unaware that ${he} is no longer in the penthouse.`); } else { r.push(`${He} looks a little bewildered, but there's an obvious happiness to ${him}, it's impossible to deny. ${He} seems unaware ${he}'s being recorded.`); } diff --git a/src/events/nonRandom/daughters/pUndergroundRailroad.js b/src/events/nonRandom/daughters/pUndergroundRailroad.js index cb5f60a954deb4887b66fd9c8910ace646cc58ec..b1fc03872f825196ef6274b136462d074170f4d4 100644 --- a/src/events/nonRandom/daughters/pUndergroundRailroad.js +++ b/src/events/nonRandom/daughters/pUndergroundRailroad.js @@ -23,6 +23,8 @@ App.Events.PUndergroundRailroad = class PUndergroundRailroad extends App.Events. if (traitor.devotion + traitor.trust >= 175) { V.traitorType = "agent"; + } else if (traitor.fuckdoll !== 0 || traitor.fetish === Fetish.MINDBROKEN) { + V.traitorType = "broken"; } else if (traitor.trust <= -75) { V.traitorType = "horror"; } else if (traitor.devotion <= -20 && traitor.trust >= 20) { @@ -153,6 +155,16 @@ App.Events.PUndergroundRailroad = class PUndergroundRailroad extends App.Events. new App.Events.Result(`Let ${him} go`, agentRelease), new App.Events.Result(`Tell ${him} to ignore the Daughters in the future`, agentIgnore) ]); + } else if (V.traitorType === "broken") { + r.push(`${traitor.slaveName} is mentally absent, so you have your sincere doubts that ${he} actually knows anything about the matters at hand. ${He} does, however, serve as an anchor for your search. You review the surveillance recordings, tracking where and what ${he} was doing during ${his} day. It would appear that several nondescript citizens tried to carry on a conversation with ${him}. Peculiar.`); + + App.Events.addParagraph(node, r); + r = []; + + App.Events.addResponses(node, [ + new App.Events.Result(`Free ${him}`, brokenFree), + new App.Events.Result(`Ignore the situation`, brokenIgnore) + ]); } else { r.push(`You call ${traitor.slaveName} in and politely inquire as to whether ${he} knows anything about the matter.`); if (V.traitorType === "horror") { @@ -362,6 +374,26 @@ App.Events.PUndergroundRailroad = class PUndergroundRailroad extends App.Events. return frag; } + function brokenFree() { + const frag = new DocumentFragment(); + let r = []; + unlock(); + r.push(`You decide to release ${him} into the streets and keep an eye on ${him}. ${He} is quickly scooped up by several citizens, some of which you recognize from the earlier video, and taken away. There is a plot in motion against you, and it extends worringly deep into your domain.`); + sendTraitor(); + App.Events.addParagraph(frag, r); + return frag; + } + + function brokenIgnore() { + const frag = new DocumentFragment(); + let r = []; + unlock(); + r.push(`You see no reason to humor them. All attempts to use your monitoring systems to find the citizens who visited ${traitor.slaveName} fail; it seems their ability to corrupt your systems is considerable. While ${he} doesn't talk, <span class="devotion dec">whispers of freedom</span> still manage to run through your chattel.`); + V.slaves.filter(desiresFreedom).forEach(s => s.devotion -= 5); + App.Events.addParagraph(frag, r); + return frag; + } + function free() { const frag = new DocumentFragment(); let r = []; diff --git a/src/npc/descriptions/boobs/boobs.js b/src/npc/descriptions/boobs/boobs.js index 9dbef09520ec65f7de47caf79d2e431708f5d3d6..30a26f9a94ae5440f4d851d3bacb21e620c6ef5e 100644 --- a/src/npc/descriptions/boobs/boobs.js +++ b/src/npc/descriptions/boobs/boobs.js @@ -1889,13 +1889,13 @@ App.Desc.nipples = function(slave, descType) { } else if (slave.lactation === 1) { if (slave.boobs > 300) { if (slave.boobsMilk > 0) { - r += ` ${His} breasts are painfully engorged with ${slave.milkFlavor === "none" ? `` : `${slave.milkFlavor}-flavored `}milk.`; + r += ` ${His} breasts are painfully engorged with${V.debugMode ? ` ${slave.boobsMilk}ccs of` : ""} ${slave.milkFlavor === "none" ? `` : `${slave.milkFlavor}-flavored `}milk.`; } else { r += ` ${His} motherly breasts are full of ${slave.milkFlavor === "none" ? `` : `${slave.milkFlavor}-flavored `}milk.`; } } else { if (slave.boobsMilk > 0) { - r += ` ${His} chest is painfully engorged with ${slave.milkFlavor === "none" ? `` : `${slave.milkFlavor} `}milk and leaks with the slightest provocation.`; + r += ` ${His} chest is painfully engorged with${V.debugMode ? ` ${slave.boobsMilk}ccs of` : ""} ${slave.milkFlavor === "none" ? `` : `${slave.milkFlavor} `}milk and leaks with the slightest provocation.`; } else { r += ` ${His} sensitive chest is swollen with ${slave.milkFlavor === "none" ? `` : `${slave.milkFlavor}-flavored `}milk.`; }