diff --git a/js/003-data/miscData.js b/js/003-data/miscData.js index 53940a11848e2f1907ce608b94dedb0f5bfba076..a47385c30c8f561452834f55b0fb457e87567158 100644 --- a/js/003-data/miscData.js +++ b/js/003-data/miscData.js @@ -2060,12 +2060,12 @@ App.Data.misc = { { name: "Hijab and blouse", value: "a hijab and blouse", - get rs() { return (V.boughtItem.clothing.conservative || V.continent === "the Middle East"); } + get rs() { return (V.boughtItem.clothing.conservative === 1 || V.continent === "the Middle East"); } }, { name: "Burkini", value: "a burkini", - get rs() { return V.boughtItem.clothing.swimwear === 1 && (V.boughtItem.clothing.swimwear || V.continent === "the Middle East"); } + get rs() { return V.boughtItem.clothing.swimwear === 1 && (V.boughtItem.clothing.swimwear === 1 || V.continent === "the Middle East"); } }, {name: "Santa dress", value: "a Santa dress", get rs() { return V.boughtItem.clothing.costume === 1; }}, @@ -2117,22 +2117,22 @@ App.Data.misc = { { name: "Leather pants and pasties", value: "leather pants and pasties", - get rs() { return V.boughtItem.clothing.underwear === 1 && V.boughtItem.clothing.casual; } + get rs() { return V.boughtItem.clothing.underwear === 1 && V.boughtItem.clothing.casual === 1; } }, { name: "T-shirt and thong", value: "a t-shirt and thong", - get rs() { return V.boughtItem.clothing.underwear === 1 && V.boughtItem.clothing.casual; } + get rs() { return V.boughtItem.clothing.underwear === 1 && V.boughtItem.clothing.casual === 1; } }, { name: "Tube top and thong", value: "a tube top and thong", - get rs() { return V.boughtItem.clothing.underwear === 1 && V.boughtItem.clothing.casual; } + get rs() { return V.boughtItem.clothing.underwear === 1 && V.boughtItem.clothing.casual === 1; } }, { name: "Oversized t-shirt and boyshorts", value: "an oversized t-shirt and boyshorts", - get rs() { return V.boughtItem.clothing.underwear === 1 && V.boughtItem.clothing.casual; } + get rs() { return V.boughtItem.clothing.underwear === 1 && V.boughtItem.clothing.casual === 1; } }, {name: "Sport shorts and a sports bra", value: "sport shorts and a sports bra", get rs() { return V.boughtItem.clothing.sports === 1; }}, {name: "Sport shorts", value: "sport shorts", get rs() { return V.boughtItem.clothing.sports === 1; }}, @@ -2140,7 +2140,7 @@ App.Data.misc = { { name: "Sport shorts and a t-shirt", value: "sport shorts and a t-shirt", - get rs() { return V.boughtItem.clothing.sports === 1 && V.boughtItem.clothing.casual; } + get rs() { return V.boughtItem.clothing.sports === 1 && V.boughtItem.clothing.casual === 1; } }, {name: "Pony outfit (nice)", value: "a nice pony outfit", get rs() { return V.boughtItem.clothing.pony === 1; }}, {name: "Pony outfit (slutty)", value: "a slutty pony outfit", get rs() { return V.boughtItem.clothing.pony === 1; }}, diff --git a/src/endWeek/saRivalries.js b/src/endWeek/saRivalries.js new file mode 100644 index 0000000000000000000000000000000000000000..fcf40a354d06cd7fec019080623a9d459a998d30 --- /dev/null +++ b/src/endWeek/saRivalries.js @@ -0,0 +1,367 @@ +App.SlaveAssignment.rivalries = (function() { + "use strict"; + + let r; + + // eslint-disable-next-line no-unused-vars + let he, him, his, hers, himself, girl, loli, He, His; + + let rival; + let slavesLength; + + return saRivalries; + + /** + * @param {App.Entity.SlaveState} slave + * @returns {string} + */ + function saRivalries(slave) { + r = []; + slavesLength = V.slaves.length; + + ({ + // eslint-disable-next-line no-unused-vars + he, him, his, hers, himself, girl, He, His, loli + } = getPronouns(slave)); + + if (slave.rivalry === 0) { + if (slave.fuckdoll === 0 && slave.fetish !== "mindbroken") { + if (isSlaveAvailable(slave) && slave.assignment !== window.Job.CONFINEMENT) { + if (slave.devotion < jsRandom(20, 100) && slave.trust > jsRandom(-100, -20)) { + generateRivalry(slave); + } + } + } + } else { + existingRivalry(slave); + } + if (slave.rivalry) { + rivalryValidation(slave); + } + + return r.join(" "); + } + + /** + * @param {App.Entity.SlaveState} slave + * + */ + function generateRivalry(slave) { + let foundRival = 0; + const slavesLength = V.slaves.length; + + for (let sar = 0; sar < slavesLength; sar++) { + if (V.slaves[sar].ID !== slave.ID && V.slaves[sar].rivalry === 0 && V.slaves[sar].ID !== slave.relationshipTarget) { + if (V.slaves[sar].fetish !== "mindbroken" && V.slaves[sar].fuckdoll === 0) { + if (V.slaves[sar].devotion < jsRandom(20, 100) && V.slaves[sar].trust > jsRandom(-100, -20)) { + if (V.slaves[sar].origBodyOwnerID === slave.ID && V.slaves[sar].devotion > 0 && slave.devotion < -30) { + r.push(`${slave.slaveName} loathes that ${SlaveFullName(V.slaves[sar])} is using <span class="em">${his}</span> body to benefit you and makes it abundantly clear every chance ${he} gets. <span class="rivalry inc">They start to dislike each other.</span>`); + foundRival = 1; + } + if (foundRival !== 1 && slave.behavioralFlaw !== "none") { + switch (slave.behavioralFlaw) { + case "arrogant": + if (V.slaves[sar].intelligence > slave.intelligence+slave.intelligenceImplant) { + r.push(`${slave.slaveName} is an arrogant bitch, and ${SlaveFullName(V.slaves[sar])} is authentically smarter than ${he} is, which of course ${he} cannot stand. <span class="rivalry inc">They start to dislike each other.</span>`); + foundRival = 1; + } + break; + case "bitchy": + if (V.slaves[sar].behavioralFlaw === "odd") { + r.push(`${slave.slaveName} is a bit of a bitch, and poor odd ${SlaveFullName(V.slaves[sar])} is a convenient target for ${his} bullying. <span class="rivalry inc">They start to dislike each other.</span>`); + foundRival = 1; + } + break; + case "odd": + if (V.slaves[sar].behavioralFlaw === "bitchy") { + r.push(`${slave.slaveName} is rather strange. ${SlaveFullName(V.slaves[sar])}, who is kind of a bitch, frequently bullies ${him} about it. <span class="rivalry inc">They start to dislike each other.</span>`); + foundRival = 1; + } + break; + case "hates men": + if (V.slaves[sar].attrXX > 35) { + if (V.slaves[sar].faceShape === "masculine" || V.slaves[sar].faceShape === "androgynous" ) { + if (V.slaves[sar].muscles > 10) { + if (V.slaves[sar].vagina > -1) { + r.push(`${slave.slaveName} hates men, and poor butch ${SlaveFullName(V.slaves[sar])} really gets to ${him}, despite having a pussy and everything. <span class="rivalry inc">They start to dislike each other.</span>`); + foundRival = 1; + } else { + r.push(`${slave.slaveName} hates men, and poor masculine ${SlaveFullName(V.slaves[sar])} really gets to ${him}. <span class="rivalry inc">They start to dislike each other.</span>`); + foundRival = 1; + } + } + } + } + break; + case "hates women": + if (V.slaves[sar].attrXY > 35) { + if (V.slaves[sar].faceShape !== "masculine") { + if (V.slaves[sar].muscles <= 30) { + if (V.slaves[sar].vagina > -1) { + r.push(`${slave.slaveName} hates women, and something about the feminine ${SlaveFullName(V.slaves[sar])} really gets to ${him}. <span class="rivalry inc">They start to dislike each other.</span>`); + foundRival = 1; + } else { + r.push(`${slave.slaveName} hates women, and something about the girly ${SlaveFullName(V.slaves[sar])} really gets to ${him}, despite poor V.slaves[sar].slaveName not being perfectly female at all. <span class="rivalry inc">They start to dislike each other.</span>`); + foundRival = 1; + } + } + } + } + break; + case "gluttonous": + if (V.slaves[sar].behavioralFlaw === "anorexic") { + r.push(`${slave.slaveName}, who loves food, can't stand ${SlaveFullName(V.slaves[sar])}'s prissy anorexia. <span class="rivalry inc">They start to dislike each other.</span>`); + foundRival = 1; + } else if (V.slaves[sar].weight < -30) { + r.push(`${slave.slaveName}, who loves food, can't stand ${SlaveFullName(V.slaves[sar])}'s severe emaciation. <span class="rivalry inc">They start to dislike each other.</span>`); + foundRival = 1; + } + break; + case "anorexic": + if (V.slaves[sar].behavioralFlaw === "gluttonous") { + r.push(`${slave.slaveName}, an anorexic, can't stand ${SlaveFullName(V.slaves[sar])}'s disgusting gluttony. <span class="rivalry inc">They start to dislike each other.</span>`); + foundRival = 1; + } else if (V.slaves[sar].weight > 95) { + r.push(`${slave.slaveName}, an anorexic, can't stand ${SlaveFullName(V.slaves[sar])}'s immense girth. <span class="rivalry inc">They start to dislike each other.</span>`); + foundRival = 1; + } + break; + case "devout": + if (V.slaves[sar].behavioralFlaw === "liberated") { + r.push(`${slave.slaveName}, who is devout and might be considered rather conservative if ${he} were free, can't stand ${SlaveFullName(V.slaves[sar])}'s revolting gender liberation. <span class="rivalry inc">They start to dislike each other.</span>`); + foundRival = 1; + } + break; + case "liberated": + if (V.slaves[sar].behavioralFlaw === "devout") { + r.push(`${slave.slaveName}, who is liberated and might be considered rather liberal if ${he} were free, can't stand ${SlaveFullName(V.slaves[sar])}'s bigoted religious faith. <span class="rivalry inc">They start to dislike each other.</span>`); + foundRival = 1; + } + break; + } + } + if (foundRival !== 1 && V.slaves[sar].assignment === slave.assignment) { + if (jsRandom(0, 1) === 1) { + r.push(`${slave.slaveName} and ${SlaveFullName(V.slaves[sar])} see too much of each other while they`); + switch (V.slaves[sar].assignment) { + case window.Job.HOUSE: + case window.Job.QUARTER: + r.push(`work as servants`); + break; + case window.Job.SUBORDINATE: + r.push(`prepare to serve your other slaves`); + break; + case window.Job.GLORYHOLE: + r.push(`work nearby glory holes`); + break; + case window.Job.CELLBLOCK: + r.push(`are confined in nearby cells`); + break; + case window.Job.FUCKTOY: + r.push(`wait for you to use them`); + break; + default: + r.push(`${V.slaves[sar].assignment}`); + } + r.push(`and <span class="rivalry inc">start to dislike each other.</span>`); + foundRival = 1; + } + } + if (foundRival === 1) { + // needed to break the loop if the case statement picked a rival. + // might as well use it to condense all the rival sets too. + slave.rivalry = 1; + slave.rivalryTarget = V.slaves[sar].ID; + V.slaves[sar].rivalry = 1; + V.slaves[sar].rivalryTarget = slave.ID; + break; + } + } + } + } + } + } + + /** + * @param {App.Entity.SlaveState} slave + * + */ + function existingRivalry(slave) { + rival = getSlave(slave.rivalryTarget); + let incRivalry = 0; + let decRivalry = 0; + let reconciled = 0; + let worsenedRivalry = 0; + let lightenedRivalry = 0; + let lustyFix = 0; + let roll = jsRandom(0, 100); + + if (rival === undefined) { + r.push(`<span class="red">Error, rivalryTarget not found.</span>`); + } else { + if (slave.fuckdoll) { + r.push(`${slave.slaveName} is a living sex toy, not a person, it <span class="rivalry dec">can't really maintain any meaningful rivalry</span> with ${SlaveFullName(rival)}.`); + reconciled = 1; + } else if (slave.fetish === "mindbroken") { + r.push(`Since ${slave.slaveName} is mindbroken, ${he} <span class="rivalry dec">can't really maintain any meaningful rivalry</span> with ${SlaveFullName(rival)}.`); + reconciled = 1; + } else if (rival.ID === slave.relationshipTarget && slave.relationship > 3) { + r.push(`Since ${slave.slaveName} and ${slave.slaveName} are in a commited sexual relationship, they <span class="rivalry dec">can't really maintain any meaningful rivalry;</span> most disputes just end in a quick hatefucking.`); + reconciled = 1; + } else { + if (slave.need) { + if (V.universalRulesConsent === 0) { + if (App.Utils.sexAllowed(slave, rival)) { + if (slave.fetishKnown) { + if (slave.fetish === "sadist") { + r.push(`${slave.slaveName} is horny and sadistic, so ${he} rapes ${his} rival ${SlaveFullName(rival)}} every chance ${he} gets; this <span class="devotion inc">thrills</span> ${slave.slaveName}, but ${rival.slaveName} is <span class="trust dec">frightened</span> that you let it happen.`); + slave.need = 0; + slave.devotion += 3; + rival.trust -= 3; + if (slave.rivalry < 3) { + r.push(`Of course, this <span class="rival inc">worsens their rivalry.</span>`); + incRivalry = 1; + worsenedRivalry = 1; + } + SimpleSlaveSlaveFucking(rival, slave, 5); + } else if (slave.fetish === "dom") { + r.push(`${slave.slaveName} is horny and dominant, so ${he} forces ${his} rival ${SlaveFullName(rival)} to submit to ${him} whenever ${he} can; this <span class="devotion inc">thoroughly satisfies</span> ${slave.slaveName}, but ${rival.slaveName} is <span class="devotion dec">angered</span> that you let it happen.`); + slave.need = 0; + slave.devotion += 3; + rival.devotion -= 3; + if (slave.rivalry < 3) { + r.push(`Of course, this <span class="rival inc">worsens their rivalry.</span>`); + incRivalry = 1; + worsenedRivalry = 1; + } + SimpleSlaveSlaveFucking(rival, slave, 5); + } + } + } + } + } + if (worsenedRivalry !== 1) { + if (roll > 50) { + if (rival.fetish === slave.fetish) { + r.push(`${slave.slaveName} and ${SlaveFullName(rival)} share sexual interests, and in the sexual atmosphere of the arcology, it's <span class="rival dec">difficult for them to keep up their dislike</span> of one another with the mutual attraction.`); + decRivalry = 1; + lightenedRivalry = 1; + } + if (roll > 80 && slave.rivalry > 0) { + if (rival.trust < -20) { + if (slave.trust < -20) { + r.push(`Since both ${slave.slaveName} and ${SlaveFullName(rival)} are terrified of you, they work together to <span class="rival dec">get over their feud,</span> since it brings punishment on both of them.`); + decRivalry = 1; + lightenedRivalry = 1; + } + } + if (rival.devotion > 50) { + if (slave.devotion > 50) { + r.push(`Since both ${slave.slaveName} and ${SlaveFullName(rival)} are devoted to you, they work together to <span class="rival dec">get over their feud,</span> since it gets in the way of their duties.`); + decRivalry = 1; + lightenedRivalry = 1; + } + } + if (roll > 90 && slave.rivalry > 0) { + if (slave.energy > 95) { + r.push(`${slave.slaveName} lusts after ${SlaveFullName(rival)}, and does everything ${he} can to <span class="rival dec">patch up their differences.</span>`); + decRivalry = 1; + lightenedRivalry = 1; + lustyFix = 1; + } + if (lustyFix !== 1) { + if (slave.attrXX > 85) { + if (rival.vagina > -1 || rival.faceShape !== "masculine") { + r.push(`${slave.slaveName} lusts after ${SlaveFullName(rival)}, and does everything ${he} can to <span class="rival dec">patch up their differences.</span>`); + decRivalry = 1; + lightenedRivalry = 1; + lustyFix = 1; + } + } + } + if (lustyFix !== 1) { + if (slave.attrXY > 85) { + if (canAchieveErection(rival) || rival.faceShape === "masculine") { + r.push(`${slave.slaveName} lusts after ${SlaveFullName(rival)}, and does everything ${he} can to <span class="rival dec">patch up their differences.</span>`); + decRivalry = 1; + lightenedRivalry = 1; + lustyFix = 1; + } + } + } + if (lustyFix !== 1) { + if (rival.assignment !== slave.assignment) { + if (slave.subTarget !== rival.ID && rival.subTarget !== slave.ID) { + r.push(`With time apart ${slave.slaveName} and ${SlaveFullName(rival)} <span class="rival dec">dislike each other less.</span>`); + decRivalry = 1; + lightenedRivalry = 1; + } + } + } + } + } + } + } + if (areRelated(slave, rival)) { + if (roll > 70 && slave.rivalry < 3 && lightenedRivalry !== 1) { + r.push(`${slave.slaveName} and ${SlaveFullName(rival)} <span class="rival inc">pursue their family rivalry.</span>`); + incRivalry = 1; + worsenedRivalry = 1; + } else if (roll > 40 && slave.rivalry > 0 && worsenedRivalry !== 1) { + r.push(`${slave.slaveName} and ${SlaveFullName(rival)} <span class="rival dec">patch up their family relationship.</span>`); + decRivalry = 1; + lightenedRivalry = 1; + } + } + if (rival.origBodyOwnerID === slave.ID && lightenedRivalry !== 1) { + if (slave.rivalry < 3) { + r.push(`${slave.slaveName} <span class="rival inc">refuses to accept ${SlaveFullName(rival)}'s control of ${his} former body,</span> worsening their rivalry.`); + incRivalry = 1; + } + } else if (roll > (slave.devotion - slave.trust + 10) && lightenedRivalry !== 1) { + if (slave.rivalry < 3) { + r.push(`${slave.slaveName} <span class="rival inc">bickers with ${SlaveFullName(rival)}</span> whenever ${he} can, worsening their rivalry.`); + incRivalry = 1; + } + } else if (roll < (slave.devotion - slave.trust - 10) && slave.rivalry > 0 && worsenedRivalry !== 1) { + r.push(`${slave.slaveName} does ${his} best to be nice to ${SlaveFullName(rival)}, and manages to <span class="rival dec">de-escalate their little feud.</span>`); + decRivalry = 1; + } + } + + if (incRivalry !== 0) { + rival.rivalry++; + slave.rivalry++; + } else if (decRivalry !== 0) { + rival.rivalry--; + slave.rivalry--; + if (slave.rivalry === 0) { + rival.rivalryTarget = 0; + slave.rivalryTarget = 0; + } + } else if (reconciled !== 0) { + rival.rivalry = 0; + rival.rivalryTarget = 0; + slave.rivalry = 0; + slave.rivalryTarget = 0; + } + } + } + + + + /** + * @param {App.Entity.SlaveState} slave + * + */ + function rivalryValidation(slave) { + // This will be obsoleted with multiple rivals system + rival = getSlave(slave.rivalryTarget); + if (rival !== undefined && slave.ID !== rival.rivalryTarget) { + rival.rivalry = 0; + rival.rivalryTarget = 0; + slave.rivalry = 0; + slave.rivalryTarget = 0; + } + } +})(); diff --git a/src/endWeek/standardSlaveReport.js b/src/endWeek/standardSlaveReport.js index 4f9a4640488cbeff69805508cbc04eae11aaf2f8..ba1e5c9f6c7976d283544188a25faec52d5e8d56 100644 --- a/src/endWeek/standardSlaveReport.js +++ b/src/endWeek/standardSlaveReport.js @@ -16,7 +16,7 @@ App.SlaveAssignment.standardSlaveReport = function(slave, silent=false) { ltEffects = App.UI.DOM.renderPassage("SA long term effects"), drugs = App.SlaveAssignment.drugs(slave), relationships = App.UI.DOM.renderPassage("SA relationships"), - rivalries = App.UI.DOM.renderPassage("SA rivalries"), + rivalries = App.SlaveAssignment.rivalries(slave), devotion = App.UI.DOM.renderPassage("SA devotion"); if (!silent) { diff --git a/src/js/itemAvailability.js b/src/js/itemAvailability.js index 7ead21f2bce81291db6accf86c6e61e7e4b24040..044139009a3433d6a5d7cd8594ea80513be4eec8 100644 --- a/src/js/itemAvailability.js +++ b/src/js/itemAvailability.js @@ -109,14 +109,14 @@ globalThis.isItemAccessible = (function() { } } if (item.hasOwnProperty("fs")) { - if (!(V.arcologies[0][item.fs] > 0)) { - return false; + if (V.arcologies[0][item.fs] > 0) { + return true; } } if (slaveResults) { // If we still haven't returned true or false, then we display why this particular slave can't use the item. return slaveResults; } - return true; + return false; } /** diff --git a/src/uncategorized/arcadeReport.tw b/src/uncategorized/arcadeReport.tw index 4576559bd172e8ee1ab3d522ab37e04a2912476e..8d16a4b2fd44c19c45ce8c53b7703329d0d454d1 100644 --- a/src/uncategorized/arcadeReport.tw +++ b/src/uncategorized/arcadeReport.tw @@ -143,7 +143,7 @@ <<include "SA long term effects">> <<= App.SlaveAssignment.drugs(_slave)>> <<include "SA relationships">> - <<include "SA rivalries">> + <<= App.SlaveAssignment.rivalries(_slave)>> <br><<include "SA devotion">> <<else>> <<silently>> @@ -152,7 +152,7 @@ <<include "SA long term effects">> <<run App.SlaveAssignment.drugs(_slave)>> <<include "SA relationships">> - <<include "SA rivalries">> + <<run App.SlaveAssignment.rivalries(_slave)>> <<include "SA devotion">> <</silently>> <</if>> diff --git a/src/uncategorized/brothelReport.tw b/src/uncategorized/brothelReport.tw index a9240a9f865929f19896f5e2ef1bb872d2e20193..ee1ca79f3a1fa8c940b0c7f6b380a2c6364c981d 100644 --- a/src/uncategorized/brothelReport.tw +++ b/src/uncategorized/brothelReport.tw @@ -196,7 +196,7 @@ <<include "SA long term effects">> <<= App.SlaveAssignment.drugs(_S.Madam)>> <<include "SA relationships">> - <<include "SA rivalries">> + <<= App.SlaveAssignment.rivalries(_S.Madam)>> <br><<include "SA devotion">> <<else>> <<silently>> @@ -207,7 +207,7 @@ <<include "SA long term effects">> <<run App.SlaveAssignment.drugs(_S.Madam)>> <<include "SA relationships">> - <<include "SA rivalries">> + <<run App.SlaveAssignment.rivalries(_S.Madam)>> <<include "SA devotion">> <</silently>> <</if>> @@ -286,7 +286,7 @@ <<include "SA long term effects">> <<= App.SlaveAssignment.drugs(_slave)>> <<include "SA relationships">> - <<include "SA rivalries">> + <<= App.SlaveAssignment.rivalries(_slave)>> <br><<include "SA devotion">> <<else>> <<silently>> @@ -298,7 +298,7 @@ <<include "SA long term effects">> <<run App.SlaveAssignment.drugs(_slave)>> <<include "SA relationships">> - <<include "SA rivalries">> + <<run App.SlaveAssignment.rivalries(_slave)>> <<include "SA devotion">> <</silently>> <</if>> diff --git a/src/uncategorized/cellblockReport.tw b/src/uncategorized/cellblockReport.tw index 916daa994d7fad734afde3ad7f0ce5a399a10743..2faaf4c034c23044eb5aea051571aa24f591cc4e 100644 --- a/src/uncategorized/cellblockReport.tw +++ b/src/uncategorized/cellblockReport.tw @@ -140,7 +140,7 @@ <<include "SA long term effects">> <<= App.SlaveAssignment.drugs($slaves[$i])>> <<include "SA relationships">> - <<include "SA rivalries">> + <<= App.SlaveAssignment.rivalries($slaves[$i])>> <br><<include "SA devotion">> <<else>> <<silently>> @@ -151,7 +151,7 @@ <<include "SA long term effects">> <<run App.SlaveAssignment.drugs($slaves[$i])>> <<include "SA relationships">> - <<include "SA rivalries">> + <<run App.SlaveAssignment.rivalries($slaves[$i])>> <<include "SA devotion">> <</silently>> <</if>> @@ -261,7 +261,7 @@ <<include "SA long term effects">> <<= App.SlaveAssignment.drugs(_slave)>> <<include "SA relationships">> - <<include "SA rivalries">> + <<= App.SlaveAssignment.rivalries(_slave)>> <br><<include "SA devotion">> <<else>> <<silently>> @@ -272,7 +272,7 @@ <<include "SA long term effects">> <<run App.SlaveAssignment.drugs(_slave)>> <<include "SA relationships">> - <<include "SA rivalries">> + <<run App.SlaveAssignment.rivalries(_slave)>> <<include "SA devotion">> <</silently>> <</if>> diff --git a/src/uncategorized/clubReport.tw b/src/uncategorized/clubReport.tw index 992cf4724f104c62b3a29c698343e97922f92d2b..f001183f31f8263213dfac903fbf3e4a88da448f 100644 --- a/src/uncategorized/clubReport.tw +++ b/src/uncategorized/clubReport.tw @@ -121,7 +121,7 @@ <<include "SA long term effects">> <<= App.SlaveAssignment.drugs(_S.DJ)>> <<include "SA relationships">> - <<include "SA rivalries">> + <<= App.SlaveAssignment.rivalries(_S.DJ)>> <br><<include "SA devotion">> <<else>> <<silently>> @@ -132,7 +132,7 @@ <<include "SA long term effects">> <<run App.SlaveAssignment.drugs(_S.DJ)>> <<include "SA relationships">> - <<include "SA rivalries">> + <<run App.SlaveAssignment.rivalries(_S.DJ)>> <<include "SA devotion">> <</silently>> <</if>> @@ -197,7 +197,7 @@ <<include "SA long term effects">> <<= App.SlaveAssignment.drugs(_slave)>> <<include "SA relationships">> - <<include "SA rivalries">> + <<= App.SlaveAssignment.rivalries(_slave)>> <br><<include "SA devotion">> <<else>> <<silently>> @@ -209,7 +209,7 @@ <<include "SA long term effects">> <<run App.SlaveAssignment.drugs(_slave)>> <<include "SA relationships">> - <<include "SA rivalries">> + <<run App.SlaveAssignment.rivalries(_slave)>> <<include "SA devotion">> <</silently>> <</if>> diff --git a/src/uncategorized/dairyReport.tw b/src/uncategorized/dairyReport.tw index daf5d900919b3e0d358362f21db08dc2079aa491..15515b63295c42d61374e81ff5c91281a6307a02 100644 --- a/src/uncategorized/dairyReport.tw +++ b/src/uncategorized/dairyReport.tw @@ -309,7 +309,7 @@ <<include "SA long term effects">> <<= App.SlaveAssignment.drugs(_S.Milkmaid)>> <<include "SA relationships">> - <<include "SA rivalries">> + <<= App.SlaveAssignment.rivalries(_S.Milkmaid)>> <br><<include "SA devotion">> <<else>> <<silently>> @@ -320,7 +320,7 @@ <<include "SA long term effects">> <<run App.SlaveAssignment.drugs($slaves[$i])>> <<include "SA relationships">> - <<include "SA rivalries">> + <<run App.SlaveAssignment.rivalries(_S.Milkmaid)>> <<include "SA devotion">> <</silently>> <</if>> @@ -415,7 +415,7 @@ <<include "SA long term effects">> <<= App.SlaveAssignment.drugs(_slave)>> <<include "SA relationships">> - <<include "SA rivalries">> + <<= App.SlaveAssignment.rivalries(_slave)>> <br><<include "SA devotion">> <<else>> <<silently>> @@ -426,7 +426,7 @@ <<include "SA long term effects">> <<run App.SlaveAssignment.drugs(_slave)>> <<include "SA relationships">> - <<include "SA rivalries">> + <<run App.SlaveAssignment.rivalries(_slave)>> <<include "SA devotion">> <</silently>> <</if>> diff --git a/src/uncategorized/fullReport.tw b/src/uncategorized/fullReport.tw index c04175c99395c3c419f24b4fb9f3dba13f195255..d149e4e2790c36538e6ccc78294949f845c89308 100644 --- a/src/uncategorized/fullReport.tw +++ b/src/uncategorized/fullReport.tw @@ -70,7 +70,7 @@ <<include "SA long term effects">> <<run App.SlaveAssignment.drugs($slaves[$i])>> <<include "SA relationships">> - <<include "SA rivalries">> + <<run App.SlaveAssignment.rivalries($slaves[$i])>> <</silently>> <<else>> <<include "SA rules">> @@ -79,7 +79,7 @@ <<include "SA long term effects">> <<= App.SlaveAssignment.drugs($slaves[$i])>> <<include "SA relationships">> - <<include "SA rivalries">> + <<= App.SlaveAssignment.rivalries($slaves[$i])>> <br> <</if>> diff --git a/src/uncategorized/masterSuiteReport.tw b/src/uncategorized/masterSuiteReport.tw index 5e6c7a6038b2b647ae6d38b4ac06044d2bc835bd..21fcacdcb5ca3364df556a0efd6a3af1454928c9 100644 --- a/src/uncategorized/masterSuiteReport.tw +++ b/src/uncategorized/masterSuiteReport.tw @@ -374,7 +374,7 @@ <<include "SA long term effects">> <<= App.SlaveAssignment.drugs(_slave)>> <<include "SA relationships">> - <<include "SA rivalries">> + <<= App.SlaveAssignment.rivalries(_slave)>> <br><<include "SA devotion">> <<else>> <<silently>> @@ -391,7 +391,7 @@ <<include "SA long term effects">> <<run App.SlaveAssignment.drugs(_slave)>> <<include "SA relationships">> - <<include "SA rivalries">> + <<run App.SlaveAssignment.rivalries(_slave)>> <<include "SA devotion">> <</silently>> <</if>> diff --git a/src/uncategorized/saLiveWithHG.tw b/src/uncategorized/saLiveWithHG.tw index 32f698d9ce680470d37e41a763df0b0e8bdf736d..24ad123486096e4f67362c3b42b3c1f9a213b9ce 100644 --- a/src/uncategorized/saLiveWithHG.tw +++ b/src/uncategorized/saLiveWithHG.tw @@ -1038,7 +1038,7 @@ <<include "SA long term effects">> <<run App.SlaveAssignment.drugs($slaves[$i])>> <<include "SA relationships">> - <<include "SA rivalries">> + <<run App.SlaveAssignment.rivalries($slaves[$i])>> <<include "SA devotion">> <</silently>> <<else>> @@ -1048,7 +1048,7 @@ <<include "SA long term effects">> <<= App.SlaveAssignment.drugs($slaves[$i])>> <<include "SA relationships">> - <<include "SA rivalries">> + <<= App.SlaveAssignment.rivalries($slaves[$i])>> <br><<include "SA devotion">> <</if>> diff --git a/src/uncategorized/saRivalries.tw b/src/uncategorized/saRivalries.tw deleted file mode 100644 index ab48315c0df43b30721452f8941dc325d881917f..0000000000000000000000000000000000000000 --- a/src/uncategorized/saRivalries.tw +++ /dev/null @@ -1,279 +0,0 @@ -:: SA rivalries [nobr] - -<<set _SL = $slaves.length>> -<<setLocalPronouns $slaves[$i]>> - -<<if $slaves[$i].rivalry == 0>> - -<<if $slaves[$i].fuckdoll == 0 && $slaves[$i].fetish != "mindbroken">> - <<if isSlaveAvailable($slaves[$i])>> - <<if $slaves[$i].assignment != "stay confined">> - <<if $slaves[$i].devotion < random(20,100)>> - <<if $slaves[$i].trust > random(-100,-20)>> - <<for _j = 0; _j < _SL; _j++>> - <<if $slaves[_j].ID != $slaves[$i].ID>> - <<if $slaves[_j].rivalry == 0>> - <<if $slaves[_j].fetish != "mindbroken">> - <<if $slaves[_j].ID != $slaves[$i].relationshipTarget>> - <<if $slaves[_j].devotion < random(20,100)>> - <<if $slaves[_j].trust > random(-100,-20)>> - <<if $slaves[_j].origBodyOwnerID == $slaves[$i].ID && $slaves[_j].devotion > 0 && $slaves[$i].devotion < -30>> - $slaves[$i].slaveName loathes that <<= SlaveFullName($slaves[_j])>> is using //$his// body to benefit you and makes it abundantly clear every chance $he gets. @@.lightsalmon;They start to dislike each other.@@ - <<set $slaves[_j].rivalry = 1, $slaves[$i].rivalry = 1, $slaves[_j].rivalryTarget = $slaves[$i].ID, $slaves[$i].rivalryTarget = $slaves[_j].ID>> - <<break>> - <</if>> - <<if $slaves[$i].behavioralFlaw != "none">> - <<switch $slaves[$i].behavioralFlaw>> - <<case "arrogant">> - <<if $slaves[_j].intelligence > $slaves[$i].intelligence+$slaves[$i].intelligenceImplant>> - $slaves[$i].slaveName is an arrogant bitch, and <<= SlaveFullName($slaves[_j])>> is authentically smarter than $he is, which of course $he cannot stand. @@.lightsalmon;They start to dislike each other.@@ - <<set $slaves[_j].rivalry = 1, $slaves[$i].rivalry = 1, $slaves[_j].rivalryTarget = $slaves[$i].ID, $slaves[$i].rivalryTarget = $slaves[_j].ID>> - <<break>> - <</if>> - <<case "bitchy">> - <<if $slaves[_j].behavioralFlaw == "odd">> - $slaves[$i].slaveName is a bit of a bitch, and poor odd <<= SlaveFullName($slaves[_j])>> is a convenient target for $his bullying. @@.lightsalmon;They start to dislike each other.@@ - <<set $slaves[_j].rivalry = 1, $slaves[$i].rivalry = 1, $slaves[_j].rivalryTarget = $slaves[$i].ID, $slaves[$i].rivalryTarget = $slaves[_j].ID>> - <<break>> - <</if>> - <<case "odd">> - <<if $slaves[_j].behavioralFlaw == "bitchy">> - $slaves[$i].slaveName is rather strange. <<= SlaveFullName($slaves[_j])>>, who is kind of a bitch, frequently bullies $him about it. @@.lightsalmon;They start to dislike each other.@@ - <<set $slaves[_j].rivalry = 1, $slaves[$i].rivalry = 1, $slaves[_j].rivalryTarget = $slaves[$i].ID, $slaves[$i].rivalryTarget = $slaves[_j].ID>> - <<break>> - <</if>> - <<case "hates men">> - <<if $slaves[_j].attrXX > 35>> - <<if $slaves[_j].faceShape == "masculine" || $slaves[_j].faceShape == "androgynous" >> - <<if $slaves[_j].muscles > 10>> - <<if $slaves[_j].vagina > -1>> - $slaves[$i].slaveName hates men, and poor butch <<= SlaveFullName($slaves[_j])>> really gets to $him, despite having a pussy and everything. @@.lightsalmon;They start to dislike each other.@@ - <<set $slaves[_j].rivalry = 1, $slaves[$i].rivalry = 1, $slaves[_j].rivalryTarget = $slaves[$i].ID, $slaves[$i].rivalryTarget = $slaves[_j].ID>> - <<break>> - <<else>> - $slaves[$i].slaveName hates men, and poor masculine <<= SlaveFullName($slaves[_j])>> really gets to $him. @@.lightsalmon;They start to dislike each other.@@ - <<set $slaves[_j].rivalry = 1, $slaves[$i].rivalry = 1, $slaves[_j].rivalryTarget = $slaves[$i].ID, $slaves[$i].rivalryTarget = $slaves[_j].ID>> - <<break>> - <</if>> - <</if>> - <</if>> - <</if>> - <<case "hates women">> - <<if $slaves[_j].attrXY > 35>> - <<if $slaves[_j].faceShape != "masculine">> - <<if $slaves[_j].muscles <= 30>> - <<if $slaves[_j].vagina > -1>> - $slaves[$i].slaveName hates women, and something about the feminine <<= SlaveFullName($slaves[_j])>> really gets to $him. @@.lightsalmon;They start to dislike each other.@@ - <<set $slaves[_j].rivalry = 1, $slaves[$i].rivalry = 1, $slaves[_j].rivalryTarget = $slaves[$i].ID, $slaves[$i].rivalryTarget = $slaves[_j].ID>> - <<break>> - <<else>> - $slaves[$i].slaveName hates women, and something about the girly <<= SlaveFullName($slaves[_j])>> really gets to $him, despite poor $slaves[_j].slaveName not being perfectly female at all. @@.lightsalmon;They start to dislike each other.@@ - <<set $slaves[_j].rivalry = 1, $slaves[$i].rivalry = 1, $slaves[_j].rivalryTarget = $slaves[$i].ID, $slaves[$i].rivalryTarget = $slaves[_j].ID>> - <<break>> - <</if>> - <</if>> - <</if>> - <</if>> - <<case "gluttonous">> - <<if $slaves[_j].behavioralFlaw == "anorexic">> - $slaves[$i].slaveName, who loves food, can't stand <<= SlaveFullName($slaves[_j])>>'s prissy anorexia. @@.lightsalmon;They start to dislike each other.@@ - <<set $slaves[_j].rivalry = 1, $slaves[$i].rivalry = 1, $slaves[_j].rivalryTarget = $slaves[$i].ID, $slaves[$i].rivalryTarget = $slaves[_j].ID>> - <<break>> - <</if>> - <<if $slaves[_j].weight < -30>> - $slaves[$i].slaveName, who loves food, can't stand <<= SlaveFullName($slaves[_j])>>'s severe emaciation. @@.lightsalmon;They start to dislike each other.@@ - <<set $slaves[_j].rivalry = 1, $slaves[$i].rivalry = 1, $slaves[_j].rivalryTarget = $slaves[$i].ID, $slaves[$i].rivalryTarget = $slaves[_j].ID>> - <<break>> - <</if>> - <<case "anorexic">> - <<if $slaves[_j].behavioralFlaw == "gluttonous">> - $slaves[$i].slaveName, an anorexic, can't stand <<= SlaveFullName($slaves[_j])>>'s disgusting gluttony. @@.lightsalmon;They start to dislike each other.@@ - <<set $slaves[_j].rivalry = 1, $slaves[$i].rivalry = 1, $slaves[_j].rivalryTarget = $slaves[$i].ID, $slaves[$i].rivalryTarget = $slaves[_j].ID>> - <<break>> - <</if>> - <<if $slaves[_j].weight > 130>> - $slaves[$i].slaveName, an anorexic, can't stand <<= SlaveFullName($slaves[_j])>>'s immense girth. @@.lightsalmon;They start to dislike each other.@@ - <<set $slaves[_j].rivalry = 1, $slaves[$i].rivalry = 1, $slaves[_j].rivalryTarget = $slaves[$i].ID, $slaves[$i].rivalryTarget = $slaves[_j].ID>> - <<break>> - <</if>> - <<case "devout">> - <<if $slaves[_j].behavioralFlaw == "liberated">> - $slaves[$i].slaveName, who is devout and might be considered rather conservative if $he were free, can't stand <<= SlaveFullName($slaves[_j])>>'s revolting gender liberation. @@.lightsalmon;They start to dislike each other.@@ - <<set $slaves[_j].rivalry = 1, $slaves[$i].rivalry = 1, $slaves[_j].rivalryTarget = $slaves[$i].ID, $slaves[$i].rivalryTarget = $slaves[_j].ID>> - <<break>> - <</if>> - <<case "liberated">> - <<if $slaves[_j].behavioralFlaw == "devout">> - $slaves[$i].slaveName, who is liberated and might be considered rather liberal if $he were free, can't stand <<= SlaveFullName($slaves[_j])>>'s bigoted religious faith. @@.lightsalmon;They start to dislike each other.@@ - <<set $slaves[_j].rivalry = 1, $slaves[$i].rivalry = 1, $slaves[_j].rivalryTarget = $slaves[$i].ID, $slaves[$i].rivalryTarget = $slaves[_j].ID>> - <<break>> - <</if>> - <</switch>> - <</if>> - <<if $slaves[_j].assignment == $slaves[$i].assignment>> - <<if random(0,1) == 1>> - $slaves[$i].slaveName and <<= SlaveFullName($slaves[_j])>> see too much of each other while they - <<switch $slaves[_j].assignment>> - <<case "be a servant" "work as a servant">> - work as servants - <<case "be a subordinate slave">> - prepare to serve your other slaves - <<case "work a glory hole">> - work nearby glory holes - <<case "be confined in the cellblock">> - are confined in nearby cells - <<case "please you">> - wait for you to use them - <<default>> - $slaves[_j].assignment - <</switch>> - and @@.lightsalmon;start to dislike each other.@@ - <<set $slaves[_j].rivalry = 1, $slaves[$i].rivalry = 1, $slaves[_j].rivalryTarget = $slaves[$i].ID, $slaves[$i].rivalryTarget = $slaves[_j].ID>> - <<break>> - <</if>> - <</if>> - <</if>> - <</if>> - <</if>> - <</if>> - <</if>> - <</if>> - <</for>> - <</if>> - <</if>> - <</if>> - <</if>> -<</if>> - -<<else>> - -<<set _j = $slaveIndices[$slaves[$i].rivalryTarget]>> -<<if def _j>> - <<if $slaves[$i].fuckdoll>> - $slaves[$i].slaveName is a living sex toy, not a person, it @@.lightsalmon;can't really maintain any meaningful rivalry@@ with <<= SlaveFullName($slaves[_j])>>. - <<set $slaves[_j].rivalry = 0,$slaves[_j].rivalryTarget = 0, $slaves[$i].rivalry = 0, $slaves[$i].rivalryTarget = 0>> - <<elseif $slaves[$i].fetish == "mindbroken">> - Since $slaves[$i].slaveName is mindbroken, $he @@.lightsalmon;can't really maintain any meaningful rivalry@@ with <<= SlaveFullName($slaves[_j])>>. - <<set $slaves[_j].rivalry = 0,$slaves[_j].rivalryTarget = 0, $slaves[$i].rivalry = 0, $slaves[$i].rivalryTarget = 0>> - <<else>> - <<if $slaves[$i].need>> - <<if $universalRulesConsent == 0>> - <<if App.Utils.sexAllowed($slaves[$i], $slaves[_j])>> - <<if $slaves[$i].fetishKnown>> - <<if $slaves[$i].fetish == "sadist">> - $slaves[$i].slaveName is horny and sadistic, so $he rapes $his rival <<= SlaveFullName($slaves[_j])>> every chance $he gets; this @@.hotpink;thrills@@ $slaves[$i].slaveName, but $slaves[_j].slaveName is @@.golden;frightened@@ that you let it happen. - <<set $slaves[$i].need = 0, $slaves[$i].devotion += 3, $slaves[_j].trust -= 3, $slaves[$i].counter.penetrative += 5, $slaves[_j].counter.oral += 5>> - <<if $slaves[$i].rivalry < 3>> - Of course, this @@.lightsalmon;worsens their rivalry.@@ - <<set $slaves[_j].rivalry += 1, $slaves[$i].rivalry += 1, _worsenedRivalry = 1>> - <</if>> - <<elseif $slaves[$i].fetish == "dom">> - $slaves[$i].slaveName is horny and dominant, so $he forces $his rival <<= SlaveFullName($slaves[_j])>> to submit to $him whenever $he can; this @@.hotpink;thoroughly satisfies@@ $slaves[$i].slaveName, but $slaves[_j].slaveName is @@.mediumorchid;angered@@ that you let it happen. - <<set $slaves[$i].need = 0, $slaves[$i].devotion += 3, $slaves[_j].devotion -= 3, $slaves[$i].counter.penetrative += 5, $slaves[_j].counter.oral += 5>> - <<if $slaves[$i].rivalry < 3>> - Of course, this @@.lightsalmon;worsens their rivalry.@@ - <<set $slaves[_j].rivalry += 1, $slaves[$i].rivalry += 1, _worsenedRivalry = 1>> - <</if>> - <</if>> - <</if>> - <</if>> - <</if>> - <</if>> - <<set _roll = random(0,100)>> - <<if _worsenedRivalry != 1>> - <<if _roll > 50>> - <<if $slaves[_j].fetish == $slaves[$i].fetish>> - $slaves[$i].slaveName and <<= SlaveFullName($slaves[_j])>> share sexual interests, and in the sexual atmosphere of the arcology, it's @@.lightgreen;difficult for them to keep up their dislike@@ of one another with the mutual attraction. - <<set $slaves[_j].rivalry -= 1, $slaves[$i].rivalry -= 1, _lightenedRivalry = 1>> - <</if>> - <<if $slaves[_j].ID == $slaves[$i].relationshipTarget>> - <<if $slaves[$i].relationship > 3>> - <<set $slaves[_j].rivalry = 0, $slaves[_j].rivalryTarget = 0>> - <<set $slaves[$i].rivalry = 0, $slaves[$i].rivalryTarget = 0>> - <</if>> - <</if>> - <<if _roll > 80 && $slaves[$i].rivalry > 0>> - <<if $slaves[_j].trust < -20>> - <<if $slaves[$i].trust < -20>> - Since both $slaves[$i].slaveName and <<= SlaveFullName($slaves[_j])>> are terrified of you, they work together to @@.lightgreen;get over their feud,@@ since it brings punishment on both of them. - <<set $slaves[_j].rivalry -= 1, $slaves[$i].rivalry -= 1, _lightenedRivalry = 1>> - <</if>> - <</if>> - <<if $slaves[_j].devotion > 50>> - <<if $slaves[$i].devotion > 50>> - Since both $slaves[$i].slaveName and <<= SlaveFullName($slaves[_j])>> are devoted to you, they work together to @@.lightgreen;get over their feud,@@ since it gets in the way of their duties. - <<set $slaves[_j].rivalry -= 1, $slaves[$i].rivalry -= 1, _lightenedRivalry = 1>> - <</if>> - <</if>> - <<if _roll > 90 && $slaves[$i].rivalry > 0>> - <<if $slaves[$i].energy > 95>> - $slaves[$i].slaveName lusts after <<= SlaveFullName($slaves[_j])>>, and does everything $he can to @@.lightgreen;patch up their differences.@@ - <<set $slaves[_j].rivalry -= 1, $slaves[$i].rivalry -= 1, _lustyFix = 1, _lightenedRivalry = 1>> - <</if>> - <<if _lustyFix != 1>> - <<if $slaves[$i].attrXX > 85>> - <<if ($slaves[_j].vagina > -1) || ($slaves[_j].faceShape != "masculine")>> - $slaves[$i].slaveName lusts after <<= SlaveFullName($slaves[_j])>>, and does everything $he can to @@.lightgreen;patch up their differences.@@ - <<set $slaves[_j].rivalry -= 1, $slaves[$i].rivalry -= 1, _lustyFix = 1, _lightenedRivalry = 1>> - <</if>> - <</if>> - <</if>> - <<if _lustyFix != 1>> - <<if $slaves[$i].attrXY > 85>> - <<if ($slaves[_j].balls > 0) || ($slaves[_j].faceShape == "masculine")>> - $slaves[$i].slaveName lusts after <<= SlaveFullName($slaves[_j])>>, and does everything $he can to @@.lightgreen;patch up their differences.@@ - <<set $slaves[_j].rivalry -= 1, $slaves[$i].rivalry -= 1, _lustyFix = 1, _lightenedRivalry = 1>> - <</if>> - <</if>> - <</if>> - <<if _lustyFix != 1>> - <<if $slaves[_j].assignment != $slaves[$i].assignment>> - <<if $slaves[$i].subTarget != $slaves[_j].ID>> - <<if $slaves[_j].subTarget != $slaves[$i].ID>> - With time apart $slaves[$i].slaveName and <<= SlaveFullName($slaves[_j])>> @@.lightgreen;dislike each other less.@@ - <<set $slaves[_j].rivalry -= 1, $slaves[$i].rivalry -= 1, _lightenedRivalry = 1>> - <</if>> - <</if>> - <</if>> - <</if>> - <</if>> - <</if>> - <</if>> - <</if>> - <</if>> - <<if areRelated($slaves[$i], $slaves[_j])>> - <<if _roll > 70 && $slaves[$i].rivalry < 3 && _lightenedRivalry != 1>> - $slaves[$i].slaveName and <<= SlaveFullName($slaves[_j])>> @@.lightsalmon;pursue their family rivalry.@@ - <<set $slaves[_j].rivalry += 1, $slaves[$i].rivalry += 1>> - <<elseif _roll > 40 && $slaves[$i].rivalry > 0 && _worsenedRivalry != 1>> - $slaves[$i].slaveName and <<= SlaveFullName($slaves[_j])>> @@.lightgreen;patch up their family relationship.@@ - <<set $slaves[_j].rivalry -= 1, $slaves[$i].rivalry -= 1, _lightenedRivalry = 1>> - <</if>> - <</if>> - <<if $slaves[_j].origBodyOwnerID == $slaves[$i].ID && _lightenedRivalry != 1>> - <<if $slaves[$i].rivalry < 3>> - $slaves[$i].slaveName @@.lightsalmon;refuses to accept <<= SlaveFullName($slaves[_j])>>'s control of $his former body,@@ worsening their rivalry. - <<set $slaves[_j].rivalry += 1, $slaves[$i].rivalry += 1>> - <</if>> - <<elseif _roll > $slaves[$i].devotion-$slaves[$i].trust+10 && _lightenedRivalry != 1>> - <<if $slaves[$i].rivalry < 3>> - $slaves[$i].slaveName @@.lightsalmon;bickers with <<= SlaveFullName($slaves[_j])>>@@ whenever $he can, worsening their rivalry. - <<set $slaves[_j].rivalry += 1, $slaves[$i].rivalry += 1>> - <</if>> - <<elseif _roll < $slaves[$i].devotion-$slaves[$i].trust-10 && $slaves[$i].rivalry > 0 && _worsenedRivalry != 1>> - $slaves[$i].slaveName does $his best to be nice to <<= SlaveFullName($slaves[_j])>>, and manages to @@.lightgreen;de-escalate their little feud.@@ - <<set $slaves[_j].rivalry -= 1, $slaves[$i].rivalry -= 1>> - <</if>> -<<else>> - @@.red;Error, rivalryTarget not found.@@ -<</if>> - -<</if>> - -<<if $slaves[$i].rivalry>> - <<set _j = $slaveIndices[$slaves[$i].rivalryTarget]>> - <<if (def _j) && ($slaves[$i].ID != $slaves[_j].rivalryTarget)>> - <<set $slaves[_j].rivalry = 0, $slaves[_j].rivalryTarget = 0>> - <<set $slaves[$i].rivalry = 0, $slaves[$i].rivalryTarget = 0>> - <</if>> -<</if>> diff --git a/src/uncategorized/spaReport.tw b/src/uncategorized/spaReport.tw index 9dba2e99fad0e656e978694ecb0d91afc9efa3ec..2f9c724ee5a0bdaf6b659e15944b76ee54bc7b50 100644 --- a/src/uncategorized/spaReport.tw +++ b/src/uncategorized/spaReport.tw @@ -236,7 +236,7 @@ <<include "SA long term effects">> <<= App.SlaveAssignment.drugs(_S.Attendant)>> <<include "SA relationships">> - <<include "SA rivalries">> + <<= App.SlaveAssignment.rivalries(_S.Attendant)>> <br><<include "SA devotion">> <<else>> <<silently>> @@ -247,7 +247,7 @@ <<include "SA long term effects">> <<run App.SlaveAssignment.drugs(_S.Attendant)>> <<include "SA relationships">> - <<include "SA rivalries">> + <<run App.SlaveAssignment.rivalries(_S.Attendant)>> <<include "SA devotion">> <</silently>> <</if>> @@ -344,7 +344,7 @@ <<include "SA long term effects">> <<= App.SlaveAssignment.drugs(_slave)>> <<include "SA relationships">> - <<include "SA rivalries">> + <<= App.SlaveAssignment.rivalries(_slave)>> <br><<include "SA devotion">> <<else>> <<silently>> @@ -356,7 +356,7 @@ <<include "SA long term effects">> <<run App.SlaveAssignment.drugs(_slave)>> <<include "SA relationships">> - <<include "SA rivalries">> + <<run App.SlaveAssignment.rivalries(_slave)>> <<include "SA devotion">> <</silently>> <</if>> diff --git a/src/uncategorized/wardrobe.tw b/src/uncategorized/wardrobe.tw index 5fded2f29aebb4511c6f1784a1e1f0c5d22b8ff5..4cbd5736ff2aa699d69a62f36f067f611d3791d8 100644 --- a/src/uncategorized/wardrobe.tw +++ b/src/uncategorized/wardrobe.tw @@ -24,9 +24,9 @@ The room containing all the clothes and accessories you have available to dress <<if $boughtItem.shoes.heels == 1>> A large variety of shoes are available to select from. <</if>> -<<if $boughtItem.clothing.dildos == 1 && $toysBoughtGags == 1 && $boughtItem.clothing.buttPlugs == 1>> +<<if $boughtItem.clothing.dildos == 1 && $boughtItem.toys.gags == 1 && $boughtItem.clothing.buttPlugs == 1>> Sex toys of all kinds and shapes line the shelves. -<<elseif $boughtItem.clothing.dildos == 1 || $toysBoughtGags == 1 || $boughtItem.clothing.buttPlugs == 1 || $boughtItem.clothing.buttPlugTails == 1 || $boughtItem.clothing.vaginalAttachments == 1>> +<<elseif $boughtItem.clothing.dildos == 1 || $boughtItem.toys.gags == 1 || $boughtItem.clothing.buttPlugs == 1 || $boughtItem.clothing.buttPlugTails == 1 || $boughtItem.clothing.vaginalAttachments == 1>> Some sex toys line the shelves. <</if>> <<if $boughtItem.toys.buckets == 1>> @@ -572,7 +572,7 @@ The room containing all the clothes and accessories you have available to dress <p> <div> - <<if $boughtItem.clothing.dildos == 0>> + <<if $boughtItem.toys.dildos == 0>> [[Order a shipment of extra long dildos and bullet vibes|Wardrobe][cashX(forceNeg(Math.trunc(10000 * $upgradeMultiplierTrade)), "capEx"), $boughtItem.clothing.dildos = 1]] <span class="detail">Costs <<print cashFormat(Math.trunc(10000 * $upgradeMultiplierTrade))>></span> <<else>> @@ -589,7 +589,7 @@ The room containing all the clothes and accessories you have available to dress </div> <div> - <<if $boughtItem.clothing.vaginalAttachments == 0>> + <<if $boughtItem.toys.vaginalAttachments == 0>> [[Order a shipment of vibrating dildo attachments|Wardrobe][cashX(forceNeg(Math.trunc(10000 * $upgradeMultiplierTrade)), "capEx"), $boughtItem.clothing.vaginalAttachments = 1]] <span class="detail">Costs <<print cashFormat(Math.trunc(10000 * $upgradeMultiplierTrade))>></span> <<else>> @@ -598,7 +598,7 @@ The room containing all the clothes and accessories you have available to dress </div> <div> - <<if $boughtItem.clothing.buttPlugs == 0>> + <<if $boughtItem.toys.buttPlugs == 0>> [[Order a shipment of extra long buttplugs|Wardrobe][cashX(forceNeg(Math.trunc(10000 * $upgradeMultiplierTrade)), "capEx"), $boughtItem.clothing.buttPlugs = 1]] <span class="detail">Costs <<print cashFormat(Math.trunc(10000 * $upgradeMultiplierTrade))>></span> <<else>> @@ -607,7 +607,7 @@ The room containing all the clothes and accessories you have available to dress </div> <div> - <<if $boughtItem.clothing.buttPlugTails == 0>> + <<if $boughtItem.toys.buttPlugTails == 0>> [[Order a shipment of attachable tails|Wardrobe][cashX(forceNeg(Math.trunc(5000 * $upgradeMultiplierTrade)), "capEx"), $boughtItem.clothing.buttPlugTails = 1]] <span class="detail">Costs <<print cashFormat(Math.trunc(5000 * $upgradeMultiplierTrade))>></span> <<else>> @@ -616,8 +616,8 @@ The room containing all the clothes and accessories you have available to dress </div> <div> - <<if $toysBoughtGags == 0>> - [[Order a shipment of massive dildo gags|Wardrobe][cashX(forceNeg(Math.trunc(5000 * $upgradeMultiplierTrade)), "capEx"), $toysBoughtGags = 1]] + <<if $boughtItem.toys.gags == 0>> + [[Order a shipment of massive dildo gags|Wardrobe][cashX(forceNeg(Math.trunc(5000 * $upgradeMultiplierTrade)), "capEx"), $boughtItem.toys.gags = 1]] <span class="detail">Costs <<print cashFormat(Math.trunc(5000 * $upgradeMultiplierTrade))>></span> <<else>> You are well stocked with massive dildo gags.