diff --git a/devNotes/beauty-test b/devNotes/beauty-test index a389d4b58bd9950b69b1e704a283312118f4321a..5a3ee7604044ac0416c74d63732207240715d4b7 100644 --- a/devNotes/beauty-test +++ b/devNotes/beauty-test @@ -203,20 +203,20 @@ <<if ($arcologies[0].FSAssetExpansionist != "unset") && $arcologies[0].FSGenderFundamentalist == "unset">> <<if $args[0].dick >= 20>> - <<set $beauty += 17+($args[0].dick*($arcologies[0].FSGenderRadicalist/500))>> /*23*/ + <<set $beauty += 17+($args[0].dick*($arcologies[0].FSAssetExpansionist/500))>> /*23*/ <<elseif $args[0].dick >= 10>> - <<set $beauty += 10+($args[0].dick*($arcologies[0].FSGenderRadicalist/300))>> /*16.3*/ + <<set $beauty += 10+($args[0].dick*($arcologies[0].FSAssetExpansionist/300))>> /*16.3*/ <<elseif $args[0].dick > 6>> <<set $beauty += $args[0].dick*(1+($arcologies[0].FSAssetExpansionist/100))>> /*10*/ <</if>> <<if $args[0].balls > 100>> - <<set $beauty += Math.trunc(60+($args[0].balls/25))>> /*65*/ + <<set $beauty += 41+($args[0].balls*($arcologies[0].FSAssetExpansionist/500))>> /*66*/ <<elseif $args[0].balls > 80>> - <<set $beauty += Math.trunc(44+($args[0].balls/6))>> /*60.6*/ + <<set $beauty += 16+($args[0].balls*($arcologies[0].FSAssetExpansionist/400))>> /*41*/ <<elseif $args[0].balls > 60>> - <<set $beauty += Math.trunc(24+($args[0].balls/4))>> /*44*/ + <<set $beauty += 6+($args[0].balls*($arcologies[0].FSAssetExpansionist/800))>> /*16*/ <<elseif $args[0].balls > 10>> - <<set $beauty += Math.trunc($args[0].balls/2.5)>> /*24*/ + <<set $beauty += $args[0].balls*(($arcologies[0].FSAssetExpansionist/1000))>> /*6*/ <</if>> <<elseif $arcologies[0].FSGenderFundamentalist != "unset">> <<if $args[0].dick > 0>> @@ -238,9 +238,9 @@ <</if>> <<if $args[0].scrotum > 0>> <<if $args[0].balls > 100>> - <<set $beauty += Math.trunc(60+($args[0].balls/25))>> + <<set $beauty += 40+($args[0].balls*($arcologies[0].FSGenderRadicalist/2000))>> /*46.25*/ <<elseif $args[0].balls > 60>> - <<set $beauty += 45+($args[0].balls*($arcologies[0].FSGenderRadicalist/800))>> /*57.5*/ + <<set $beauty += 30+($args[0].balls*($arcologies[0].FSGenderRadicalist/1000))>> /*40*/ <<elseif $args[0].balls > 10>> <<set $beauty += 15+($args[0].balls*($arcologies[0].FSGenderRadicalist/400))>> /*30*/ <<else>> @@ -248,79 +248,73 @@ <</if>> <</if>> <<else>> - <<set $beauty -= (2*$args[0].dick) + ($args[0].balls)>> -<</if>> - -/* bonus for dick focused genderrads */ -<<if ($arcologies[0].FSGenderRadicalistLawFuta == 1)>> -<<elseif ($arcologies[0].FSGenderRadicalistLawFuta == 2)>> /* erection! */ -<<elseif ($arcologies[0].FSGenderRadicalistLawFuta == 3)>> -<</if>> - -<<if ($arcologies[0].FSGenderRadicalist > 20 && $arcologies[0].FSGenderRadicalistLawFuta != 3) || ($arcologies[0].FSSlimnessEnthusiast > 20)>> - <<if $args[0].hips < 0>> - <<set $beauty += Math.abs($args[0].hips)>> - <</if>> -<</if>> -<<if $arcologies[0].FSRestart != "unset">> - <<if $args[0].balls > 0>> - <<set $beauty -= $args[0].balls*(1+($arcologies[0].FSRestart/100))>> + <<set $beauty -= 2*$args[0].dick>> + <<if $args[0].scrotum > 0>> + <<set $beauty -= $args[0].balls>> <</if>> <</if>> -<<if $arcologies[0].FSGenderRadicalist != "unset">> - <<if $args[0].preg > 5 && $arcologies[0].FSRepopulationFocus == "unset" && $arcologies[0].FSRestart == "unset">> - <<set $beauty = ($beauty*0.7)>> - <</if>> -<<elseif $arcologies[0].FSGenderFundamentalist != "unset">> - <<if $args[0].shoulders > $args[0].hips>> - <<if $args[0].boobs <= 2000*($args[0].shoulders-$args[0].hips)>> - <<set $beauty -= ($args[0].shoulders-$args[0].hips)*(1+($arcologies[0].FSGenderFundamentalist/200))>> - <</if>> - <</if>> -<<else>> - <<if $args[0].shoulders > $args[0].hips>> - <<if $args[0].boobs <= 2000*($args[0].shoulders-$args[0].hips)>> - <<set $beauty -= $args[0].shoulders-$args[0].hips>> - <</if>> - <</if>> - <<if $args[0].scrotum > 4>> - <<set $beauty += $args[0].balls - 4>> - <</if>> - <<if $args[0].preg > 10 && $arcologies[0].FSRepopulationFocus == "unset" && $arcologies[0].FSRestart == "unset">> - <<set $beauty = ($beauty*0.8)>> + +<<if $arcologies[0].FSRestart != "unset">> /* Eugenics does not like slaves having working balls */ + <<if $args[0].balls > 0 && $args[0].ballType == "human">> + <<set $beauty -= $args[0].balls*(1+($arcologies[0].FSRestart/100))>> <</if>> <</if>> -<<if $arcologies[0].FSPhysicalIdealist != "unset">> -<<if $args[0].muscles > 30>> - <<set $beauty += ($args[0].muscles*($arcologies[0].FSPhysicalIdealist/40))>> -<</if>> -<</if>> +/* bonus for dick focused genderrads */ <<if $arcologies[0].FSGenderRadicalistLawFuta != 0>> -<<if $arcologies[0].FSGenderRadicalistLawFuta == 1>> - <<if $args[0].dick > 0>> - <<if $args[0].vagina > -1>> - <<set $beauty += 2*$args[0].dick>> - <</if>> - <</if>> -<<elseif $arcologies[0].FSGenderRadicalistLawFuta == 2>> - <<if $args[0].dick > 0>> - <<if $args[0].balls > 0>> - <<set $beauty += $args[0].dick+$args[0].balls>> - <</if>> - <</if>> -<<else>> - <<if $args[0].butt >= 5>> - <<if $args[0].anus >= 2>> - <<if $args[0].hips >= 1>> - <<if $args[0].analSkill > 60>> - <<set $beauty += ($args[0].butt-5) + 2*($args[0].anus-2) + 4*($args[0].hips-1)>> - <</if>> - <</if>> - <</if>> + <<if ($arcologies[0].FSGenderRadicalistLawFuta == 1)>> + <<if $args[0].dick > 0>> + <<if $args[0].vagina > -1>> + <<if $args[0].dick > 0 && $args[0].dick <= 10>> + <<set $beauty += $args[0].dick>> /*10*/ + <</if>> + <<if $args[0].dick > 20>> + <<set $beauty += 2>> + <<elseif $args[0].dick > 10>> + <<set $beauty += 4>> + <</if>> + <</if>> + <</if>> + <<elseif ($arcologies[0].FSGenderRadicalistLawFuta == 2)>> /* erection! */ + <<if $args[0].dick > 0>> + <<if $args[0].balls > 0>> + <<if $args[0].scrotum > 0>> + <<if canAchieveErection($args[0])>> + <<set $beauty += $args[0].dick>> + <<if $args[0].balls > 0 && $args[0].balls <= 10>> + <<set $beauty += $args[0].balls>> /*10*/ + <</if>> + <<elseif $args[0].balls > 120>> + <<set $beauty += 14>> + <<elseif $args[0].balls > 100>> + <<set $beauty += 12>> + <<elseif $args[0].balls > 80>> + <<set $beauty += 10>> + <<elseif $args[0].balls > 60>> + <<set $beauty += 8>> + <<elseif $args[0].balls > 40>> + <<set $beauty += 6>> + <<elseif $args[0].balls > 20>> + <<set $beauty += 4>> + <<elseif $args[0].balls > 10>> + <<set $beauty += 2>> + <</if>> + <</if>> + <</if>> + <</if>> + <</if>> + <<elseif ($arcologies[0].FSGenderRadicalistLawFuta == 3)>> + <<if $args[0].butt >= 5>> + <</if>> + <<if $args[0].anus >= 2>> + <</if>> + <<if $args[0].hips >= 1>> + <</if>> + <<if $args[0].analSkill > 60>> + <<set $beauty += ($args[0].butt-5) + 2*($args[0].anus-2) + 4*($args[0].hips-1)>> + <</if>> <</if>> <</if>> -<</if>> /* boobs content */ @@ -454,7 +448,38 @@ +<<if ($arcologies[0].FSGenderRadicalist > 20 && $arcologies[0].FSGenderRadicalistLawFuta != 3) || ($arcologies[0].FSSlimnessEnthusiast > 20)>> + <<if $args[0].hips < 0>> + <<set $beauty += Math.abs($args[0].hips)>> + <</if>> +<</if>> + +<<if $arcologies[0].FSGenderRadicalist != "unset">> + <<if $args[0].preg > 5 && $arcologies[0].FSRepopulationFocus == "unset" && $arcologies[0].FSRestart == "unset">> + <<set $beauty = ($beauty*0.7)>> + <</if>> +<<elseif $arcologies[0].FSGenderFundamentalist != "unset">> + <<if $args[0].shoulders > $args[0].hips>> + <<if $args[0].boobs <= 2000*($args[0].shoulders-$args[0].hips)>> + <<set $beauty -= ($args[0].shoulders-$args[0].hips)*(1+($arcologies[0].FSGenderFundamentalist/200))>> + <</if>> + <</if>> +<<else>> + <<if $args[0].shoulders > $args[0].hips>> + <<if $args[0].boobs <= 2000*($args[0].shoulders-$args[0].hips)>> + <<set $beauty -= $args[0].shoulders-$args[0].hips>> + <</if>> + <</if>> + <<if $args[0].preg > 10 && $arcologies[0].FSRepopulationFocus == "unset" && $arcologies[0].FSRestart == "unset">> + <<set $beauty = ($beauty*0.8)>> + <</if>> +<</if>> +<<if $arcologies[0].FSPhysicalIdealist != "unset">> +<<if $args[0].muscles > 30>> + <<set $beauty += ($args[0].muscles*($arcologies[0].FSPhysicalIdealist/40))>> +<</if>> +<</if>> <<if $args[0].boobs > 250>> <<if $args[0].boobShape == "perky">> diff --git a/src/gui/Encyclopedia/encyclopedia.tw b/src/gui/Encyclopedia/encyclopedia.tw index 30581c8d9009a165e5053a5930201da5bac6a002..590b27bf54772ae0da45499143db060f2931ef9c 100644 --- a/src/gui/Encyclopedia/encyclopedia.tw +++ b/src/gui/Encyclopedia/encyclopedia.tw @@ -564,7 +564,7 @@ Well, I woke up with a guy on top of me. Kind of like now! But, like, he was rea I don't really know? All I really did was sleep. It's what happens when you're getting a lot of drugs and need curatives to keep them from hurting you. You just sleep a lot. And when you're awake, you're really groggy and can't remember much. It makes it easier. //It makes what easier?// -Being raped. I mean, um, that was before I was trained a lot? So I didn't like it most of the time guys fucked me in the ass. But I just layed there and let it happen mostly. I heard from girls later that the slave market I was at uses that as a test, actually. +Being raped. I mean, um, that was before I was trained a lot? So I didn't like it most of the time guys fucked me in the ass. But I just laid there and let it happen mostly. I heard from girls later that the slave market I was at uses that as a test, actually. //A test of what?// Well if a new girl is all drugged up and, you know, gets hard and cums when they fuck her, she gets special treatment. A girl they caught with me, I think she came the first day, and she's, like, a Concubine now? But if a girl still fights on all the drugs they put her in the arcade. Most just lie there like me, which means they need better hormones. So then they clip you. @@ -1135,7 +1135,7 @@ Slaves can have various ''skin distinctions,'' including freckles, heavy freckli <<case "Lips">>\ Slaves' ''lips'' contribute to beauty. At very large sizes, they will alter dialog, though this has no mechanical effect. They can be enlarged with targeted growth hormones or surgery, but such surgery can reduce [[Oral skill|Encyclopedia][$encyclopedia = "Oral Skill"]]. <<case "Nipples">>\ -Slaves' ''nipples'' have varying effects, depending on their shape. Tiny nipples have a negative effect on beauty, puffy and inverted nipples improve it, huge nipples improve it more strongly, and all others have no effect. Inverted and partially inverted nipples can be permanently protruded by nipple piercings or milking: this is uncomfortable, and will reduce [[Devotion|Encyclopedia][$encyclopedia = "Devotion"]] unless the slave is a [[Masochist|Encyclopedia][$encyclopedia = "Masochist"]]. Tiny nipples can be enlarged with [[XX hormones|Encyclopedia][$encyclopedia = "Hormones (XX)"]], huge nipples can be reduced with [[XY hormones|Encyclopedia][$encyclopedia = "Hormones (XY)"]], breast growth hormones will grow and may invert nipples, and breast implantation may damage nipples enough to shrink them slightly. +Slaves' ''nipples'' have varying effects, depending on their shape. Tiny nipples have a negative effect on beauty, puffy and inverted nipples improve it, huge nipples improve it more strongly, and all others have no effect. Inverted and partially inverted nipples can be permanently protruded by nipple piercings or milking: this is uncomfortable, and will reduce [[Devotion|Encyclopedia][$encyclopedia = "Devotion"]] unless the slave is a [[Masochist|Encyclopedia][$encyclopedia = "Masochists"]]. Tiny nipples can be enlarged with [[XX hormones|Encyclopedia][$encyclopedia = "Hormones (XX)"]], huge nipples can be reduced with [[XY hormones|Encyclopedia][$encyclopedia = "Hormones (XY)"]], breast growth hormones will grow and may invert nipples, and breast implantation may damage nipples enough to shrink them slightly. <<case "Breasts">>\ Slaves' ''breasts'' contribute to beauty. They can be enlarged with [[XX hormones|Encyclopedia][$encyclopedia = "Hormones (XX)"]], intense [[Lactation|Encyclopedia][$encyclopedia = "Lactation"]], weight gain, or surgery (which [[Boob fetishists|Encyclopedia][$encyclopedia = "Boob Fetishists"]] will be grateful for). <<case "Weight">>\ @@ -1711,6 +1711,14 @@ At the beginning of the game, the lingua franca of the arcology will be determin @@.red;Low@@ access to refugees and other desperate people. @@.green;High@@ cultural independence. \ +<<case "Oceanic Terrain">>\ +''Oceanic'' terrain is one of the possible settings for the Free City in which the arcology is located. It provides: + @@.yellow;High@@ minimum slave value and initial @@.yellow;bull market@@ for slaves. + Moderate ease of commerce with the old world. + @@.red;Very low@@ access to refugees and other desperate people. + @@.green;Very high@@ cultural independence. + Ensures access to slaves from all over the world and will not associate the arcology with a continent. +\ \<<case "Security Force">>\ ''NOTE: The Security Force is an optional mod, and as such will only be initialized in-game if it is enabled at game start or in the options menu.'' @@ -1963,12 +1971,13 @@ Error: bad title. [[Customization (PC)|Encyclopedia][$encyclopedia = "PC Customization"]] | [[Age (PC)|Encyclopedia][$encyclopedia = "PC Age"]] | [[Body (PC)|Encyclopedia][$encyclopedia = "PC Body"]] | [[Wealth|Encyclopedia][$encyclopedia = "Wealth"]] | [[Business|Encyclopedia][$encyclopedia = "Business"]] | [[PMC Work|Encyclopedia][$encyclopedia = "PMC Work"]] | [[Slaving|Encyclopedia][$encyclopedia = "Slaving"]] | [[Engineering|Encyclopedia][$encyclopedia = "Engineering"]] | [[Medicine|Encyclopedia][$encyclopedia = "Medicine"]] | [[Celebrity|Encyclopedia][$encyclopedia = "Celebrity"]] | [[Hard Work|Encyclopedia][$encyclopedia = "Hard Work"]] | [[Force|Encyclopedia][$encyclopedia = "Force"]] | [[Social Engineering|Encyclopedia][$encyclopedia = "Social Engineering"]] | [[Luck|Encyclopedia][$encyclopedia = "Luck"]] <</if>> -<<if ["Urban Terrain", "Rural Terrain", "Marine Terrain"].includes($encyclopedia)>> +<<if ["Urban Terrain", "Rural Terrain", "Marine Terrain", "Oceanic Terrain"].includes($encyclopedia)>> <br><br> //Terrain settings//<br> [[Urban|Encyclopedia][$encyclopedia = "Urban Terrain"]] | [[Rural|Encyclopedia][$encyclopedia = "Rural Terrain"]] | -[[Marine|Encyclopedia][$encyclopedia = "Marine Terrain"]] +[[Marine|Encyclopedia][$encyclopedia = "Marine Terrain"]] | +[[Oceanic|Encyclopedia][$encyclopedia = "Oceanic Terrain"]] <</if>> <<if ["Relationships", "Rivalries", "Romances", "Slave Marriages", "Slaveowner Marriages", "Emotional Slut", "Emotionally Bonded"].includes($encyclopedia)>> diff --git a/src/js/rulesAssistant.tw b/src/js/rulesAssistant.tw new file mode 100644 index 0000000000000000000000000000000000000000..c2670492399b181f3ef2f588bf37795911d52385 --- /dev/null +++ b/src/js/rulesAssistant.tw @@ -0,0 +1,307 @@ +:: rulesAssistant [script] + +function panic(message) { + message = message || "panic"; + if (typeof Error !== "undefined") { + throw new Error(message); + } + throw message; +} + +function assert(condition, message) { + if (!condition) + panic(message || "Assertion failed"); +} + + +window.isSimpleCondition = function(expr, validNames) { + assert(validNames, "validNames was not given"); + + switch (expr.id) { + case "true": case "false": + return true; + + case "<": case "<=": case ">": case ">=": + return ( + expr.first.id === "(name)" // first operand should be a name + && validNames.includes(expr.first.name) // among the valid ones + && expr.second.id === "(number)" // and second should be a literal + ); + + case "&&": case "||": + return ( + (expr.first.id == "<" || expr.first.id == "<=") + && (expr.second.id == ">" || expr.second.id == ">=") + && isSimpleCondition(expr.first, validNames) + && isSimpleCondition(expr.second, validNames) + && expr.first.first.name === expr.second.first.name + ); + } + return false; +} + + +window.getVariable = function(expr) { + switch (expr.id) { + case "true": + return "always"; + case "false": + return "none"; + case "<": case "<=": case ">": case ">=": + return expr.first.name === "energy" ? "sex drive" : expr.first.name; + case "&&": case "||": + return getVariable(expr.first); + } +} + +window.changeVariable = function(expr, newVar) { + //assert(isSimpleCondition(expr), "expr is not simple"); + + switch (expr.id) { + case "true": case "false": + return { + id: "<", + first: {id: "(name)", name: newVar}, + second: {id: "(number)", value: 0} + }; + + case "<": case "<=": case ">": case ">=": + expr.first.name = newVar; + return expr; + + case "&&": case "||": + expr.first.first.name = newVar; + expr.second.first.name = newVar; + return expr; + } +} + + +window.changeComparison = function(expr, newComparison) { + assert(expr.id !== "true" && expr.id !== "false", "expr is constant"); + //assert(isSimpleCondition(expr), "expr is not simple"); + + var newOperand = { + id: newComparison, + first: {id: "(name)", name: expr.first.name}, + second: {id: "(number)", value: 0} + }; + + if (newComparison === "<" || newComparison === "<=") { + switch (expr.id) { + case "<": case "<=": + expr.id = newComparison; + return expr; + case ">": case ">=": + return { id: "&&", first: newOperand, second: expr }; + case "&&": case "||": + expr.first.id = newComparison; + return expr; + } + } else { + switch (expr.id) { + case "<": case "<=": + return { id: "&&", first: expr, second: newOperand }; + case ">": case ">=": + expr.id = newComparison; + return expr; + case "&&": case "||": + expr.second.id = newComparison; + return expr; + } + } +} + +window.removeComparison = function(expr, comparisonType) { + assert(expr.id !== "true" && expr.id !== "false", "expr is constant"); + //assert(isSimpleCondition(expr), "expr is not simple"); + assert(comparisonType === "lower" || comparisonType === "upper", + "invalid comparisonType '" + comparisonType + "'"); + + if (comparisonType === "lower") { + switch (expr.id) { + case "<": case "<=": + return expr; + case ">": case ">=": + return { id: "true" }; + case "&&": case "||": + return expr.first; + } + } else { + switch (expr.id) { + case "<": case "<=": + return { id: "false" }; + case ">": case ">=": + return expr; + case "&&": case "||": + return expr.second; + } + } +} + + +window.changeConnective = function(expr, newConnective) { + switch (expr.id) { + case "true": case "false": + case "<": case "<=": case ">": case ">=": + return expr; + case "&&": case "||": + expr.id = newConnective; + return expr; + } +} + + +window.unparseExpr = function(expr) { + switch (expr.id) { + + // literals + case "true": + return "true"; + case "false": + return "false"; + case "(number)": case "(string)": + return expr.value; + + // names + case "(name)": + return expr.name; + + // logical infix operators + case "&&": case "||": + // numerical infix comperators + case "<": case "<=": + case ">": case ">=": + case "=": case "!=": + // numerical infix operators (excluding minus) + case "+": case "*": case "/": case "^": + return [unparseExpr(expr.first), + expr.id, + unparseExpr(expr.second)].join(" "); + + // unary/prefix operators + case "!": + return expr.id + unparseExpr(expr.first); + + case "-": + if (expr.second !== undefined) { + return unparseExpr(expr.first) + " - " + unparseExpr(expr.second); + } else { + return "-" + unparseExpr(expr.first); + } + + // parentheses + case "(": + return "(" + unparseExpr(expr.first) + ")"; + } + + panic("how did I get here? unknown expr.id: " + expr.id); +} + +window.typeExpr = function(expr, env) { + switch (expr.id) { + + case "true": case "false": + return "bool"; + case "(number)": + return "number"; + case "(string)": + return "string"; + + case "(name)": + return env[expr.name]; + + case "&&": case "||": + return "bool"; + + case "<": case "<=": + case ">": case ">=": + return "bool"; + case "=": case "!=": + return "bool"; + + case "*": case "/": case "^": + return "number"; + + case "+": + return typeExpr(expr.first, env) === "string" ? "string" : "number"; + + case "!": + return typeExpr(expr.first, env); + case "-": + if (expr.second !== undefined) { + return "number"; + } else { + return typeExpr(expr.first, env); + } + + case "(": + return typeExpr(expr.first, env); + } +} + +window.evalExpr = function(expr, env) { + switch (expr.id) { + + case "true": + return true; + case "false": + return false; + case "(number)": case "(string)": + return expr.value; + + case "(name)": + return env[expr.name]; + + case "&&": + return evalExpr(expr.first, env) && evalExpr(expr.second, env); + case "||": + return evalExpr(expr.first, env) || evalExpr(expr.second, env); + case "<": + return evalExpr(expr.first, env) < evalExpr(expr.second, env); + case "<=": + return evalExpr(expr.first, env) <= evalExpr(expr.second, env); + case ">": + return evalExpr(expr.first, env) > evalExpr(expr.second, env); + case ">=": + return evalExpr(expr.first, env) >= evalExpr(expr.second, env); + case "=": + return evalExpr(expr.first, env) == evalExpr(expr.second, env); + case "!=": + return evalExpr(expr.first, env) != evalExpr(expr.second, env); + + case "+": + return evalExpr(expr.first, env) + evalExpr(expr.second, env); + case "*": + return evalExpr(expr.first, env) * evalExpr(expr.second, env); + case "/": + return evalExpr(expr.first, env) / evalExpr(expr.second, env); + case "^": + return Math.pow(evalExpr(expr.first, env), evalExpr(expr.second, env)); + + case "!": + return !evalExpr(expr.first, env); + case "-": + if (expr.second !== undefined) { + return evalExpr(expr.first, env) - evalExpr(expr.second, env); + } else { + return -evalExpr(expr.first, env); + } + + case "(": + return evalExpr(expr.first, env); + } +} + + +window.printError = function(exprStr, error) { + var result = [], + inError = false; + for (var i = 0; i < exprStr.length; i++) { + if (i === error.index) + result.push("@@.red;"); + result.push(exprStr[i]); + } + result.push("@@"); + return result.join(""); +} diff --git a/src/js/rulesAssistantParser.tw b/src/js/rulesAssistantParser.tw new file mode 100644 index 0000000000000000000000000000000000000000..dfeeaaa4f570c52475887e3df6a0c7e22c5cad2a --- /dev/null +++ b/src/js/rulesAssistantParser.tw @@ -0,0 +1,358 @@ +:: rulesAssistantParser [script] + +// Implements a Top Down Operator Precedence parser, also know as a Pratt +// parser, after its "inventor", Vaughan Pratt. The one implemented here +// closely follows what's presented here, +// * http://javascript.crockford.com/tdop/tdop.html +// by Douglas Crockford, that uses that technique in JSLint. Other relevant +// resources on the interweb +// * http://effbot.org/zone/simple-top-down-parsing.htm +// * http://eli.thegreenplace.net/2010/01/02/top-down-operator-precedence-parsing +// * http://journal.stuffwithstuff.com/2011/03/19/pratt-parsers-expression-parsing-made-easy/ +// * https://higherlogics.blogspot.gr/2009/11/extensible-statically-typed-pratt.html +// * https://github.com/fholm/Vaughan +// * https://github.com/DasIch/pratt +// included here mostly as bookmarks for potential future reference. +// +// With regards to the lexer, I used the following with many changes +// * http://eli.thegreenplace.net/2013/06/25/regex-based-lexical-analysis-in-python-and-javascript/ +// +// Other useful things that I may not use any more but wouldn't want to lose, +// * https://plainjs.com/javascript/utilities/merge-two-javascript-objects-19/ +// * https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/Regular_Expressions + + +if (!RegExp.escape) { + RegExp.escape = function(s) { + return s.replace(/[.*+?^${}()|[\]\\]/g, "\\$&"); + }; +} + +if (!String.prototype.format) { + String.prototype.format = function() { + var args = arguments; + return this.replace(/{(\d+)}/g, function(match, number) { + return typeof args[number] !== "undefined" ? args[number] : match; + }); + }; +} + +function panic(index, msg) { + throw {index: index, message: msg}; +} + + + +var Lexer = function(skipWhitespace) { + this.rules = []; + this.index = 0; + this.buffer = ""; + this.skipWhitespace = skipWhitespace ? /\S/ : null; +} + +Lexer.prototype.addRule = function(id, defn) { + var pattern = (defn && defn.pattern) || RegExp.escape(id); + this.rules.push({ + id: id, + pattern: new RegExp('^' + pattern) + }); +} + +Lexer.prototype.feed = function(buffer) { + this.buffer = buffer; + this.index = 0; +} + +Lexer.prototype.nextInterestingChar = function() { + if (this.skipWhitespace) { + var match = this.skipWhitespace.exec(this.buffer.substr(this.index)); + return match ? this.index + match.index + : this.buffer.length; + } + return this.index; +} + +Lexer.prototype.next = function() { + this.index = this.nextInterestingChar(); + + if (this.index >= this.buffer.length) + return { done: true }; + + for (var i = 0; i < this.rules.length; ++i) { + var rule = this.rules[i], + match = rule.pattern.exec(this.buffer.substr(this.index)); + if (match) { + var token = { + id: rule.id, + value: match[0], + index: this.index, + }; + this.index += token.value.length; + return { done: false, value: token }; + } + } + + panic(this.index, "illegal character"); +} + + + +var BaseSymbol = { + lbp: 0, + nud: function() { panic(this.index, "unexpected '" + this.id + "'"); }, + led: function() { panic(this.index, "not an operator"); } +}; + +var Parser = function(eofToken) { + this.lexer = new Lexer(true); + this.currentSymbol = null; + + this.eofToken = eofToken; + this.symbolTable = { + [this.eofToken]: Object.create(BaseSymbol, {id: {value: this.eofToken}}) + }; +} + +Parser.prototype.addSymbol = function(id, defn) { + var s = this.symbolTable[id]; + if (s) { + if (defn) { + if (defn.lbp !== undefined) s.lbp = defn.lbp; + if (defn.nud !== undefined) s.nud = defn.nud; + if (defn.led !== undefined) s.led = defn.led; + } + } else { + s = Object.create(BaseSymbol); + s.id = id; + if (defn && defn.lbp !== undefined) s.lbp = defn.lbp; + if (defn && defn.nud) s.nud = defn.nud; + if (defn && defn.led) s.led = defn.led; + this.symbolTable[id] = s; + this.lexer.addRule(id, defn); + } + return this; +} + +Parser.prototype.addInfix = function(id, lbp, callback) { + this.addSymbol(id, { + lbp: lbp, + led: function(p, left) { return callback(this, left, p.parse(lbp)); } + }); + return this; +} + +Parser.prototype.addInfixR = function(id, lbp, callback) { + this.addSymbol(id, { + lbp: lbp, + led: function(p, left) { return callback(this, left, p.parse(lbp-1)); } + }); + return this; +} + +Parser.prototype.addPrefix = function(id, callback) { + this.addSymbol(id, { + // FIXME: this should not always be 70 + nud: function (p) { return callback(this, p.parse(70)); } + }); + return this; +} + +Parser.prototype.addConstant = function(id, callback) { + this.addSymbol(id, { + nud: function () { return callback(this); } + }); + return this; +} + +Parser.prototype.advance = function(id) { + if (id !== undefined && this.currentSymbol.id !== id) + panic(this.currentSymbol.index, "expected '" + id + "', got '" + this.currentSymbol.id + "'"); + + var iter = this.lexer.next(), + token = iter.value; + if (iter.done) + token = { + id: this.eofToken, + index: this.lexer.buffer.length + }; + + var symbol = this.symbolTable[iter.done ? this.eofToken : token.id]; + if (!symbol) + panic(token.index, "unknown token '" + token.id + "'"); + + var newSymbol = Object.create(symbol); + newSymbol.value = token.value; + newSymbol.index = token.index; + return this.currentSymbol = newSymbol; +} + +Parser.prototype.parse = function(rbp) { + var symbol = this.currentSymbol; + this.advance(); + var left = symbol.nud(this); + + rbp = rbp || 0; + while (rbp < this.currentSymbol.lbp) { + symbol = this.currentSymbol; + this.advance(); + left = symbol.led(this, left); + } + return left; +} + +Parser.prototype.parseString = function(string) { + this.lexer.feed(string); + this.advance(); // "kickstart" the lexer + var result = this.parse(); + this.advance(this.eofToken); + return result; +} + + + +var ASTBuilder = function(eofToken) { + this.parser = new Parser(eofToken); +} + +ASTBuilder.prototype.addSymbol = function(id, extra) { + this.parser.addSymbol(id, extra); + return this; +} + +ASTBuilder.prototype.addInfix = function(id, lbp) { + this.parser.addInfix(id, lbp, function(symbol, left, right) { + return { + id: id, + first: left, + second: right, + }; + }); + return this; +} + +ASTBuilder.prototype.addInfixR = function(id, lbp) { + this.parser.addInfixR(id, lbp, function(symbol, left, right) { + return { + id: id, + first: left, + second: right, + }; + }); + return this; +} + +ASTBuilder.prototype.addPrefix = function(id) { + this.parser.addPrefix(id, function(symbol, left) { + return { + id: id, + first: left, // it's not really the left is it? + }; + }); + return this; +} + +ASTBuilder.prototype.addConstant = function(id, value) { + this.parser.addConstant(id, function(symbol) { + return { + id: id, + value: value, + }; + }); + return this; +} + + +var op = { + add: function(a, b) { return a + b; }, + sub: function(a, b) { return a - b; }, + mul: function(a, b) { return a * b; }, + div: function(a, b) { return a / b; }, + pow: function(a, b) { return Math.pow(a, b); }, + + neg: function(a) { return -a; }, + + lt: function(a, b) { return a < b; }, + le: function(a, b) { return a <= b; }, + gt: function(a, b) { return a > b; }, + ge: function(a, b) { return a >= b; }, + eq: function(a, b) { return a === b; }, + neq: function(a, b) { return a !== b; }, + + not: function(a) { return !a; }, + or: function(a, b) { return a || b; }, + and: function(a, b) { return a && b; }, +}; + +var parserBuilder = new ASTBuilder("(end)") + // XXX: need to be first to not be recognised as a (name) + .addConstant("true", true) + .addConstant("false", false) + + .addSymbol("(number)", { + pattern: "\\d+", + nud: function() { + return { + id: "(number)", + value: parseInt(this.value), + }; + } + }) + + .addSymbol("(string)", { + pattern: "\"(?:[^\\\\\"]|\\\\\"|\\\\(?!\"))*\"", + nud: function(p) { + return { + id: "(string)", + value: this.value, + }; + } + }) + + .addSymbol("(name)", { + pattern: "[a-zA-Z]\\w*", + nud: function(p) { + return { + id: "(name)", + name: this.value, + }; + } + }) + + .addInfix("+", 50, op.add) + .addInfix("-", 50, op.sub) + .addInfix("*", 60, op.mul) + .addInfix("/", 60, op.div) + .addInfixR("^", 70, op.pow) + + .addPrefix("-", op.neg) + + .addInfix("<=", 40, op.le) + .addInfix("<", 40, op.lt) + .addInfix(">=", 40, op.ge) + .addInfix(">", 40, op.gt) + .addInfix("!=", 40, op.neq) + .addInfix("=", 40, op.eq) + + .addPrefix("!", op.not) + .addInfix("||", 30, op.or) + .addInfix("&&", 30, op.and) + + .addSymbol(")") + .addSymbol("(", { + nud: function(p) { + var expr = p.parse(0); + p.advance(")"); + return expr; + } + }); + +var parser = parserBuilder.parser; +window.parser = parser; + +window.parseCondition = function(condition) { + try { + return {expr: parser.parseString(condition), error: null}; + } catch (e) { + return {expr: null, error: e}; + } +} diff --git a/src/js/storyJS.tw b/src/js/storyJS.tw index 03e9791cd3833455555fd2fb51effc6a42139320..4aba8af4e58484822579e5a447973b1de7aac652 100644 --- a/src/js/storyJS.tw +++ b/src/js/storyJS.tw @@ -993,46 +993,43 @@ window.ruleSlaveExcluded = function(slave, rule) { }; window.hasSurgeryRule = function(slave, rules) { - if (!slave || !rules || !slave.currentRules) { - return false; - }else { - for(var d=rules.length-1; d >= 0; d--){ - for(var e=0; e < slave.currentRules.length;e++){ - if(slave.currentRules[e] == rules[d].ID){ - if (rules[d].autoSurgery > 0){ - return true; - } - } + if (!slave || !rules || !slave.currentRules) + return false; + + for (var d = rules.length-1; d >= 0; d--) { + if (ruleApplied(slave, rules[d].ID)) { + if (rules[d].autoSurgery > 0) { + return true; } - }return false; + } } + return false; }; -window.hasHColorRule = function(slave, rules) { - return lastRuleFor(slave, rules, "hColor") ? true : false; -}; - -window.hasHStyleRule = function(slave, rules) { - return lastRuleFor(slave, rules, "hStyle") ? true : false; -}; - -window.hasEyeColorRule = function(slave, rules) { - return lastRuleFor(slave, rules, "eyeColor") ? true : false; -}; - -window.lastRuleFor = function(slave, rules, what) { - if (!slave || !rules || !slave.currentRules) - return null; +window.hasRuleFor = function(slave, rules, what) { + if (!slave || !rules || !slave.currentRules) + return false; for (var d = rules.length-1; d >= 0; d--) { if (ruleApplied(slave, rules[d].ID)) { if (rules[d][what] !== "no default setting") { - return rules[d]; + return true; } } } + return false; +}; - return null; +window.hasHColorRule = function(slave, rules) { + return hasRuleFor(slave, rules, "hColor"); +} + +window.hasHStyleRule = function(slave, rules) { + return hasRuleFor(slave, rules, "hStyle"); +}; + +window.hasEyeColorRule = function(slave, rules) { + return hasRuleFor(slave, rules, "eyeColor"); }; window.lastPregRule = function(slave, rules) { @@ -1041,9 +1038,9 @@ window.lastPregRule = function(slave, rules) { if (!slave.currentRules) return false; - for (var d = rules.length-1; d >= 0; d--){ + for (var d = rules.length-1; d >= 0; d--) { if (ruleApplied(slave, rules[d].ID)) { - if (rules[d].preg == -1){ + if (rules[d].preg == -1) { return rules[d]; } } @@ -1052,158 +1049,6 @@ window.lastPregRule = function(slave, rules) { return null; }; -window.lastEyeWearRule = function(slave, rules) { - return lastRuleFor(slave, rules, "eyewear"); -}; - -window.lastEyeColorRule = function(slave, rules) { - return lastRuleFor(slave, rules, "eyeColor"); -}; - -window.lastMakeupRule = function(slave, rules) { - return lastRuleFor(slave, rules, "makeup"); -}; - -window.lastNailsRule = function(slave, rules) { - return lastRuleFor(slave, rules, "nails"); -}; - -window.lastHColorRule = function(slave, rules) { - return lastRuleFor(slave, rules, "hColor"); -}; - -window.lastHStyleRule = function(slave, rules) { - return lastRuleFor(slave, rules, "hStyle"); -}; - -window.lastHLengthRule = function(slave, rules) { - return lastRuleFor(slave, rules, "hLength"); -}; - -window.lastPubicHColorRule = function(slave, rules) { - return lastRuleFor(slave, rules, "pubicHColor"); -}; - -window.lastPubicHStyleRule = function(slave, rules) { - return lastRuleFor(slave, rules, "pubicHStyle"); -}; - -window.lastUnderArmHColorRule = function(slave, rules) { - return lastRuleFor(slave, rules, "underArmHColor"); -}; - -window.lastUnderArmHStyleRule = function(slave, rules) { - return lastRuleFor(slave, rules, "underArmHStyle"); -}; - -window.lastNipplesPiercingRule = function(slave, rules) { - return lastRuleFor(slave, rules, "nipplesPiercing"); -}; - -window.lastAreolaePiercingRule = function(slave, rules) { - return lastRuleFor(slave, rules, "areolaePiercing"); -}; - -window.lastClitPiercingRule = function(slave, rules) { - return lastRuleFor(slave, rules, "clitPiercing"); -}; - -window.lastClitSettingRule = function(slave, rules) { - return lastRuleFor(slave, rules, "clitSetting"); -}; - -window.lastClitSettingXYRule = function(slave, rules) { - return lastRuleFor(slave, rules, "clitSettingXY"); -}; - -window.lastClitSettingXXRule = function(slave, rules) { - return lastRuleFor(slave, rules, "clitSettingXX"); -}; - -window.lastClitSettingEnergyRule = function(slave, rules) { - return lastRuleFor(slave, rules, "clitSettingEnergy"); -}; - -window.lastVaginaPiercingRule = function(slave, rules) { - return lastRuleFor(slave, rules, "vaginaPiercing"); -}; - -window.lastDickPiercingRule = function(slave, rules) { - return lastRuleFor(slave, rules, "dickPiercing"); -}; - -window.lastAnusPiercingRule = function(slave, rules) { - return lastRuleFor(slave, rules, "anusPiercing"); -}; - -window.lastLipsPiercingRule = function(slave, rules) { - return lastRuleFor(slave, rules, "lipsPiercing"); -}; - -window.lastTonguePiercingRule = function(slave, rules) { - return lastRuleFor(slave, rules, "tonguePiercing"); -}; - -window.lastEarPiercingRule = function(slave, rules) { - return lastRuleFor(slave, rules, "earPiercing"); -}; - -window.lastEyebrowPiercingRule = function(slave, rules) { - return lastRuleFor(slave, rules, "eyebrowPiercing"); -}; - -window.lastNosePiercingRule = function(slave, rules) { - return lastRuleFor(slave, rules, "nosePiercing"); -}; - -window.lastNavelPiercingRule = function(slave, rules) { - return lastRuleFor(slave, rules, "navelPiercing"); -}; - -window.lastCorsetPiercingRule = function(slave, rules) { - return lastRuleFor(slave, rules, "corsetPiercing"); -}; - -window.lastBoobsTatRule = function(slave, rules) { - return lastRuleFor(slave, rules, "boobsTat"); -}; - -window.lastButtTatRule = function(slave, rules) { - return lastRuleFor(slave, rules, "buttTat"); -}; - -window.lastVaginaTatRule = function(slave, rules) { - return lastRuleFor(slave, rules, "vaginaTat"); -}; - -window.lastDickTatRule = function(slave, rules) { - return lastRuleFor(slave, rules, "dickTat"); -}; - -window.lastAnusTatRule = function(slave, rules) { - return lastRuleFor(slave, rules, "anusTat"); -}; - -window.lastLipsTatRule = function(slave, rules) { - return lastRuleFor(slave, rules, "lipsTat"); -}; - -window.lastShouldersTatRule = function(slave, rules) { - return lastRuleFor(slave, rules, "shouldersTat"); -}; - -window.lastArmsTatRule = function(slave, rules) { - return lastRuleFor(slave, rules, "armsTat"); -}; - -window.lastLegsTatRule = function(slave, rules) { - return lastRuleFor(slave, rules, "legsTat"); -}; - -window.lastStampTatRule = function(slave, rules) { - return lastRuleFor(slave, rules, "stampTat"); -}; - window.lastSurgeryRuleFor = function(slave, rules, what) { if (!slave || !rules || !slave.currentRules) return null; @@ -1238,59 +1083,6 @@ window.lastButtSurgeryRule = function(slave, rules) { return lastSurgeryRuleFor(slave, rules, "butt"); }; -window.checkThresholds = function(number, rule) { - if (!rule) { - return null; - } else { - if ((rule.thresholdUpper != "none") && (rule.thresholdLower != "none")){ - if (!rule.eqLower && !rule.eqUpper){ - if((number < rule.thresholdUpper) && (number > rule.thresholdLower)){ - return true; - } - } - else if (rule.eqLower && !rule.eqUpper){ - if((number < rule.thresholdUpper) && (number >= rule.thresholdLower)){ - return true; - } - } - else if (!rule.eqLower && rule.eqUpper){ - if((number <= rule.thresholdUpper) && (number > rule.thresholdLower)){ - return true; - } - } - else { - if((number <= rule.thresholdUpper) && (number >= rule.thresholdLower)){ - return true; - } - } - } - else if (rule.thresholdUpper != "none"){ - if (!rule.eqUpper) { - if(number < rule.thresholdUpper){ - return true; - } - } - else{ - if(number <= rule.thresholdUpper){ - return true; - } - } - } - else if (rule.thresholdLower != "none"){ - if (!rule.eqLower) { - if(number > rule.thresholdLower){ - return true; - } - } - else{ - if(number >= rule.thresholdLower){ - return true; - } - } - }return false; - } -}; - window.milkAmount = function(slave) { var milk; var calcs; @@ -1378,6 +1170,54 @@ window.cumAmount = function(slave) { } }; + +window.mergeRules = function(rules) { + var combinedRule = {}; + + for (var i = 0; i < rules.length; i++) { + for (var attr in rules[i]) { + + // A rule overrides any preceding ones if, + // * there are no preceding ones, + // * or it sets autoBrand, + // * or it sets setAssignment to something other that "none", + // * or it sets assignFacility to something other that "none", + // * or it sets none of the above and is not "no default setting" + var applies = ( + combinedRule[attr] === undefined + || (attr === "autoBrand" && rules[i][attr]) + || (attr === "setAssignment" && rules[i][attr] !== "none") + || (attr === "assignFacility" && rules[i][attr] !== "none") + || ( + attr !== "autoBrand" + && attr !== "setAssignment" + && attr !== "assignFacility" + && rules[i][attr] !== "no default setting" + ) + ); + + if (applies) { + if (attr == "setAssignment" && combinedRule.assignFacility !== "none") { + // If the rules so far have set assignFacility, unset it, + // since the assignment overrides it. We assume that a + // given rule won't set both assignFacility and + // setAssignment. If that happens, which one will prevail + // is down to the enumeration order of "for ... in". + combinedRule.assignFacility = "none"; + combinedRule.facilityRemove = false; + } + if (attr == "assignFacility" && combinedRule.setAssignment !== "none") + // Similarly, if setAssignment is set, unset it. + combinedRule.setAssignment = "none"; + + combinedRule[attr] = rules[i][attr]; + } + } + } + + return combinedRule; +} + /* OLD window.randomRelatedSlave = function(slave, filterFunction) { if(!slave || !SugarCube) { return undefined; } diff --git a/src/js/textInput.tw b/src/js/textInput.tw new file mode 100644 index 0000000000000000000000000000000000000000..f1d74660861e8f3335faf2012faa61136aa6ae94 --- /dev/null +++ b/src/js/textInput.tw @@ -0,0 +1,53 @@ +:: textinput.tw [script] + +Macro.add("textinput", { + // Signifies that the macro is a container macro. + tags: null, + + handler: function() { + if (this.args.length < 2) { + var errors = []; + if (this.args.length < 1) { errors.push("variable name"); } + if (this.args.length < 2) { errors.push("default value"); } + return this.error("no " + errors.join(" or ") + " specified"); + } + + // Ensure that the variable name argument is a string. + if (typeof this.args[0] !== "string") { + return this.error("variable name argument is not a string"); + } + + var varName = this.args[0].trim(); + + // Try to ensure that we receive the variable's name (incl. sigil), not its value. + if (varName[0] !== "$" && varName[0] !== "_") { + return this.error("variable name '" + varName + "' is missing its sigil ($ or _)"); + } + + var that = this; + var defaultValue = this.args[1]; + var el = document.createElement("textarea"); + + // Setup and append the textarea element to the output buffer. + jQuery(el) + .attr({ + rows: 4, + // cols: 68, // instead of setting "cols" we set the `min-width` in CSS + tabindex: 0 // for accessiblity + }) + .addClass("macro-textarea") // "hijack" the .macro-textarea class + .on("change", function () { + Wikifier.setValue(varName, this.value); + if (that.payload[0].contents !== "") + Wikifier.wikifyEval(that.payload[0].contents.trim()); + }) + .appendTo(this.output); + + // Set the story variable and textarea element to the default value. + Wikifier.setValue(varName, defaultValue); + + // Ideally, we should be setting `.defaultValue` here, but IE doesn't support it, + // so we have to use `.textContent`, which is equivalent. + el.textContent = defaultValue; + } +}); diff --git a/src/npc/fFeelings.tw b/src/npc/fFeelings.tw index 5eac35d7131c7f4d582c5529b7c2bbe685d561f9..9c94d208dad9d91e5522251d640bcdab473b86d0 100644 --- a/src/npc/fFeelings.tw +++ b/src/npc/fFeelings.tw @@ -418,7 +418,7 @@ My favorite part of my body i<<s>> <<case "cumslut">> I barely cum without my ball<<s>>. I mi<<ss>>, you know, cleaning up after my<<s>>elf. With my mouth. <<case "buttslut">> - I really like being clipped. I think it'<<s>> le<<ss>> di<<s>>tracting, you know, from my butthole. And I <<s>>till have my pro<<s>>tate which i<<s>> what matter<<s>>. + I really like being clipped. I think it'<<s>> le<<ss>> di<<s>>tracting, you know, from my butthole. <<if $activeSlave.prostate > 0>>And I <<s>>till have my pro<<s>>tate which i<<s>> what matter<<s>>.<</if>> <<case "boobs">> I don't mind being clipped. Between that and my boob<<s>> I feel like a ni<<c>>e little <<s>>lave girl. <</switch>> @@ -788,7 +788,7 @@ My favorite part of my body i<<s>> <<else>> <<if ($activeSlave.fetishKnown == 1)>> <<if ($activeSlave.fetish == "buttslut") || ($activeSlave.energy > 95)>> - Getting buttfucked to orga<<s>>m whenever I can get hard i<<s>> a dream come true. Actually, getting buttfucked until I cum even when I'm <<s>>oft is pretty ni<<c>>e too. + Getting buttfucked to orga<<s>>m whenever I can get hard i<<s>> a dream come true. Actually, getting buttfucked until I cum <<if $activeSlave.prostate > 0>>even when I'm <<s>>oft <</if>>is pretty ni<<c>>e too. <<elseif ($activeSlave.attrKnown == 1) && ($activeSlave.attrXY > 80)>> It'<<s>> okay getting cockmilked, I like all the dick<<s>> around. <<else>> @@ -1060,7 +1060,9 @@ My favorite part of my body i<<s>> <</if>> <</if>> <<if $arcologies[0].FSPastoralist >= 10>> - <<if ($activeSlave.lactation > 0)>> + <<if ($activeSlave.lactation > 0) && ($activeSlave.balls > 0)>> + I'll do my be<<s>>t to make a<<s>> much milk and cum for the arcology as I can. + <<elseif ($activeSlave.lactation > 0)>> I'll do my be<<s>>t to make a<<s>> much milk for the arcology as I can. <<elseif ($activeSlave.dick > 0) && ($activeSlave.balls > 0)>> I'll do my best to make a<<s>> much cum for the arcology a<<s>> I can. @@ -1068,8 +1070,7 @@ My favorite part of my body i<<s>> I wish I could make milk for the arcology. <</if>> <</if>> - -<</if>> +<</if>> /* closes FS */ <<if ($activeSlave.devotion > 75)>> <<if ($activeSlave.weekAcquired == 1) && ($week > 104)>> diff --git a/src/pregmod/reMaleCitizenHookup.tw b/src/pregmod/reMaleCitizenHookup.tw index 3f989ecf76893c749feec6bc80dbacfb7dfc557a..6c5fb46f948b8f903f3cd04b03798f55db930a0e 100644 --- a/src/pregmod/reMaleCitizenHookup.tw +++ b/src/pregmod/reMaleCitizenHookup.tw @@ -162,7 +162,7 @@ He's yours for the taking, if you want him, and if his praise and proximity were <<default>> flirt with you quite hard without crossing any lines between a citizen and an arcology owner. <</switch>> -He's clearly attracted to you; even the most consummate actor would have difficulty fooling you, and his breath is a little quick, his pupils are a bit dilated, and he's blushing cutely. But he's no fool, either. A casual liasion with <<PCTitle>>$PCTitle would be a tremendous social boost for him. +He's clearly attracted to you; even the most consummate actor would have difficulty fooling you, and his breath is a little quick, his pupils are a bit dilated, and he's blushing cutely. But he's no fool, either. A casual liaison with <<PCTitle>>$PCTitle would be a tremendous social boost for him. <br><br> <span id="result"> diff --git a/src/uncategorized/BackwardsCompatibility.tw b/src/uncategorized/BackwardsCompatibility.tw index a7b24f6955ff209ee9fa06014de04130172ed432..f66e822783ab62b45ab9efef122f871dc810f72a 100644 --- a/src/uncategorized/BackwardsCompatibility.tw +++ b/src/uncategorized/BackwardsCompatibility.tw @@ -100,6 +100,53 @@ <</if>> <<for _i = 0; _i < $defaultRules.length; _i++>> + + <<if ndef $defaultRules[_i].condition>> + <<set _activation = $defaultRules[_i].activation>> + <<if _activation == "sex drive">> + <<set _activation = "sexDrive">> + <</if>> + + <<if _activation == "none">> + <<set $defaultRules[_i].condition = {id: "false"}>> + <<elseif _activation == "always">> + <<set $defaultRules[_i].condition = {id: "true"}>> + + <<elseif $defaultRules[_i].thresholdLower != "none" && $defaultRules[_i].thresholdUpper != "none">> + <<set $defaultRules[_i].condition = { + id: "&&", + first: { + id: $defaultRules[_i].eqUpper ? "<=" : "<", + first: {id: "(name)", name: _activation}, + second: {id: "(number)", value: $defaultRules[_i].thresholdUpper} + }, + second: { + id: $defaultRules[_i].eqLower ? ">=" : ">", + first: {id: "(name)", name: _activation}, + second: {id: "(number)", value: $defaultRules[_i].thresholdLower}, + }, + }>> + + <<elseif $defaultRules[_i].thresholdLower != "none">> + <<set $defaultRules[_i].condition = { + id: $defaultRules[_i].eqLower ? ">=" : ">", + first: {id: "(name)", name: _activation}, + second: {id: "(number)", value: $defaultRules[_i].thresholdLower}, + }>> + + <<elseif $defaultRules[_i].thresholdUpper != "none">> + <<set $defaultRules[_i].condition = { + id: $defaultRules[_i].eqUpper ? "<=" : "<", + first: {id: "(name)", name: _activation}, + second: {id: "(number)", value: $defaultRules[_i].thresholdUpper}, + }>> + + <<else>> + /% both thresholds are "none", same as activation being none + <<set $defaultRules[_i].condition = {id: "false"}>> + <</if>> + <</if>> + <<if ndef $defaultRules[_i].standardReward>> <<set $defaultRules[_i].standardReward = "no default setting">> <</if>> @@ -1145,7 +1192,7 @@ Setting missing global variables: <</if>> <<if ndef $fakeBellies>> -<<set $fakeBellies to ["a small empathy belly", "a medium empathy belly", "a large empathy belly", "a huge empathy belly"]>> /* lets fake bellies be seperated from other .bellyAccessory */ +<<set $fakeBellies to ["a small empathy belly", "a medium empathy belly", "a large empathy belly", "a huge empathy belly"]>> /* lets fake bellies be separated from other .bellyAccessory */ <</if>> <<if ($ver.includes("0.6") == true) || ($ver.includes("0.7") == true) || ($ver.includes("0.8") == true) || ($ver == "0.9")>> diff --git a/src/uncategorized/RESS.tw b/src/uncategorized/RESS.tw index 545299ca3367ae7fed8d93fc6015eab6c6f5f02a..8d25aa8c734fdb11e1a45f06bc7cf754f963cf82 100644 --- a/src/uncategorized/RESS.tw +++ b/src/uncategorized/RESS.tw @@ -320,7 +320,7 @@ Though it's late, she's surprised to find the lights in the master suite off. Yo <<case "slave dick huge">> -The showers your slaves use are well vented and transparent walled so that you can see their occupants clearly, even from your desk. Working late at night, you see <span id="name"><<print "[[$activeSlave.slaveName|Long Slave Description][$nextLink = passage(), $eventDescription = 1]]">></span> sitting hunched under the water in one of the showers, with her back to you. You tell your desk to focus on her, and you are rewarded with three different angles of $activeSlave.slaveName giving herself a blowjob. She has to bend over very hard<<if $activeSlave.preg > 20>> and at a very awkward angle<</if>> to get the tip of her huge <<if $seeRace == 1>>$activeSlave.race <</if>>dick<<if $activeSlave.preg > 20>> around her pregnant belly and<</if>> into her mouth, but she's obviously enjoying it all the same. It's not against the rules for her to masturbate; she's just found an impressive way of doing it. <<if $activeSlave.balls == 3>>As she works herself, she plays with her massive balls, rolling them around and squeezing them gently.<<elseif $activeSlave.balls == 2>>As she works herself, she plays with her balls, massaging them with one hand.<</if>> +The showers your slaves use are well vented and transparent walled so that you can see their occupants clearly, even from your desk. Working late at night, you see <span id="name"><<print "[[$activeSlave.slaveName|Long Slave Description][$nextLink = passage(), $eventDescription = 1]]">></span> sitting hunched under the water in one of the showers, with her back to you. You tell your desk to focus on her, and you are rewarded with three different angles of $activeSlave.slaveName giving herself a blowjob. She has to bend over very hard<<if $activeSlave.preg > 20>> and at a very awkward angle<</if>> to get the tip of her huge <<if $seeRace == 1>>$activeSlave.race <</if>>dick<<if $activeSlave.preg > 20>> around her pregnant belly and<</if>> into her mouth, but she's obviously enjoying it all the same. It's not against the rules for her to masturbate; she's just found an impressive way of doing it. <<if $activeSlave.scrotum > 0>><<if $activeSlave.balls == 3>>As she works herself, she plays with her massive balls, rolling them around and squeezing them gently.<<elseif $activeSlave.balls == 2>>As she works herself, she plays with her balls, massaging them with one hand.<</if>><</if>> <<case "obedient idiot">> @@ -737,7 +737,7 @@ At your <<if canSee($activeSlave)>>nod<<else>>acknowledgement<</if>>, she <</if>> She hangs her head. <<elseif ($activeSlave.fetish == "buttslut") && ($activeSlave.fetishKnown == 1)>> - spins around to show off her favorite fuckhole, bending over <<if $activeSlave.preg > 20>>as far as she can with her pregnant belly in the way<<else>>farther than usual<</if>> to indicate the area between it and <<if $activeSlave.vagina > -1>>her cunt<<elseif $activeSlave.balls > 0>>her ballsack<<elseif $activeSlave.dick == 0>>her featurelessly smooth groin and its little cumhole<<else>>the base of her soft bitchclit<</if>>. + spins around to show off her favorite fuckhole, bending over <<if $activeSlave.preg > 20>>as far as she can with her pregnant belly in the way<<else>>farther than usual<</if>> to indicate the area between it and <<if $activeSlave.vagina > -1>>her cunt<<elseif ($activeSlave.balls > 0) && ($activeSlave.scrotum > 0)>>her ballsack<<elseif $activeSlave.dick == 0>>her featurelessly smooth groin and its little cumhole<<else>>the base of her soft bitchclit<</if>>. <<if SlaveStatsChecker.checkForLisp($activeSlave)>> "<<if def $PC.customTitleLisp>>$PC.customTitleLisp<<elseif $PC.title != 0>>Mathter<<else>>Mithtreth<</if>>, may I have a pierthing right here? Right below my butthole? It would keep me so ready for a buttfuck. I mean, more than I already am. Pleathe?" <<else>> @@ -1023,7 +1023,7 @@ Early one morning, <span id="name"><<print "[[$activeSlave.slaveName|Long Slave <<case "slave dick on slave">> -Through the glass walls of your office, you see <span id="name"><<print "[[$activeSlave.slaveName|Long Slave Description][$nextLink = passage(), $eventDescription = 1]]">></span> fucking another slave with her <<if $activeSlave.dick <= 2>>small penis<<elseif $activeSlave.dick <= 4>>long cock<<elseif $activeSlave.dick > 4>>huge, horselike phallus<</if>>. Since you gave her orders that permit her to fuck your other slaves, she's been fucking them whenever she can. The other slave is <<if $activeSlave.dick <= 2>>enjoying herself even though the <<if $seeRace == 1>>$activeSlave.race <</if>>dick in her pussy is a little disappointing<<elseif $activeSlave.dick <= 4>>enjoying the sex<<else>>enjoying the big <<if $seeRace == 1>>$activeSlave.race <</if>>dick, even if she does wince from time to time<</if>>. <<if $activeSlave.balls > 3>>As $activeSlave.slaveName pounds, her big balls slap against her partner.<<elseif $activeSlave.balls > 1>>As $activeSlave.slaveName pounds, her balls tighten, preparing to empty themselves.<</if>> +Through the glass walls of your office, you see <span id="name"><<print "[[$activeSlave.slaveName|Long Slave Description][$nextLink = passage(), $eventDescription = 1]]">></span> fucking another slave with her <<if $activeSlave.dick <= 2>>small penis<<elseif $activeSlave.dick <= 4>>long cock<<elseif $activeSlave.dick > 4>>huge, horselike phallus<</if>>. Since you gave her orders that permit her to fuck your other slaves, she's been fucking them whenever she can. The other slave is <<if $activeSlave.dick <= 2>>enjoying herself even though the <<if $seeRace == 1>>$activeSlave.race <</if>>dick in her pussy is a little disappointing<<elseif $activeSlave.dick <= 4>>enjoying the sex<<else>>enjoying the big <<if $seeRace == 1>>$activeSlave.race <</if>>dick, even if she does wince from time to time<</if>>. <<if $activeSlave.scrotum > 0>><<if $activeSlave.balls > 3>>As $activeSlave.slaveName pounds, her big balls slap against her partner.<<elseif $activeSlave.balls > 1>>As $activeSlave.slaveName pounds, her balls tighten, preparing to empty themselves.<</if>><</if>> <<case "slave clit on slave">> @@ -8369,7 +8369,7 @@ By the time you've finished with her sensitive ass, it shines red, and she is cr <<case "downward-facing">> The nipples that cap her downward-facing udders are tugged even farther towards the ground. <<case "torpedo-shaped">> - Her torpedos are long enough that the weights are a long way from her chest, allowing them to tug her nipples a long way down. + Her torpedoes are long enough that the weights are a long way from her chest, allowing them to tug her nipples a long way down. <<case "wide-set">> Her wide-set its are dragged together for once as their nipples are tugged downward. <<case "saggy">> diff --git a/src/uncategorized/arcmgmt.tw b/src/uncategorized/arcmgmt.tw new file mode 100644 index 0000000000000000000000000000000000000000..c1ed3bbfa4756bdbf64926098d2f075bb0a03f11 --- /dev/null +++ b/src/uncategorized/arcmgmt.tw @@ -0,0 +1,581 @@ +:: Arcology Management [nobr] + +__Arcology Management__ +<br> + +<<set _flux = random(20,40)>> +<<if $arcologies[0].FSPaternalist != "unset">> + Poor citizens can rely on their better-off peers in $arcologies[0].name. + <<set _flux -= Math.trunc($arcologies[0].FSPaternalist/10)>> +<<elseif $arcologies[0].FSDegradationist != "unset">> + The arcology is a cutthroat place in which falling into slavery is very easy. + <<set _flux += Math.trunc($arcologies[0].FSDegradationist/10)>> +<</if>> +<<if $arcologies[0].FSEgyptianRevivalist != "unset">> + Egyptian Revivalism is benevolent in some ways, and charity is common here. + <<set _flux -= Math.trunc($arcologies[0].FSEgyptianRevivalist/10)>> +<<elseif $arcologies[0].FSRomanRevivalist != "unset">> + Your citizens take pride in looking after each other. + <<set _flux -= Math.trunc($arcologies[0].FSRomanRevivalist/10)>> +<</if>> +<<if $arcologies[0].FSChattelReligionist != "unset">> + Chattel Religionism helps some poor citizens see slavery as a spiritually pure fate. + <<set _flux += Math.trunc($arcologies[0].FSChattelReligionist/10)>> +<<elseif $arcologies[0].FSNull != "unset">> + Your arcology's vibrant, open culture helps everyone succeed, preventing many struggling citizens from falling into slavery. + <<set _flux -= Math.trunc($arcologies[0].FSNull/5)>> +<</if>> +<<if $arcologies[0].FSPastoralist != "unset">> + The pastoralization of $arcologies[0].name helps concentrate wealth in the hands of a few. + <<set _flux += Math.trunc($arcologies[0].FSPastoralist/10)>> +<</if>> +<<if $AntiEnslavementCash == 1>> + Your charity purse prevents a few citizens from falling into slavery. + <<set _flux -= 10>> +<<elseif $ProEnslavementCash == 1>> + You @@.yellowgreen;take kickbacks@@ for ignoring enslavement of citizens. + <<set _flux += 10>> + <<set $cash += random(500,1500)>> +<</if>> +<<if $AntiEnslavementRep == 1>> + You use your personal influence to help struggling citizens. + <<set _flux -= 10, $rep -= 100>> +<<elseif $ProEnslavementRep == 1>> + You @@.green;make friends@@ by tacitly supporting enslavement of upstart citizens. + <<set _flux += 10, $rep += 100>> +<</if>> +<<set $ACitizens -= _flux, $ASlaves += _flux>> +This week, <<if _flux > 0>>few or no<<else>>many<</if>> of $arcology[0].name's citizens fell into slavery. + +<<if $ACitizens < $ACitizenLimit>> + <<if $AntiImmigrationCash == 1>> + You covertly @@.yellowgreen;sell@@ the private information of potential arcology immigrants on the old world black market. + <<set $cash += random(500,1500), $ACitizens -= random(5,15)>> + <</if>> + <<if $AntiImmigrationRep == 1>> + You allow citizens input on potential immigrants, a @@.green;popular@@ program. + <<set $rep += 100, $ACitizens -= random(5,15)>> + <</if>> + <<if $arcologies[0].FSRestartLaw == 1>> + Your sterilization program drives several disloyal citizens out of the arcology. + <<set $ACitizens -= random(3,10)>> + <</if>> +<</if>> + +<<if $ACitizens >= $ACitizenLimit>> + <<set $ACitizens = $ACitizenLimit>> + Your arcology is currently home to as many citizens as it can house; unless the living areas are reconfigured, the citizen population will not increase. +<<else>> + <<set $ACitizens += random(-10,10)>> + <<if $ProImmigrationRep == 1>> + Your welcome program for new citizens helps encourage wealthy people from the old world to immigrate, but @@.red;annoys some longstanding citizens.@@ + <<set $ACitizens += random(10,20), $rep -= 100>> + <</if>> + <<if $ProImmigrationCash == 1>> + The rent promotion for new immigrants brings new citizens to the arcology. + <<set $ACitizens += random(10,20)>> + <</if>> + <<if $arcologies[0].FSRepopulationFocusLaw == 1>> + The rent promotion for pregnant women attracts several gravid ladies and a few girls eager to become mothers to enroll as citizens in your arcology. + <<set $ACitizens += random(5,10)>> + <</if>> + <<if $ACitizens < $ACitizenLimit*0.6>> + The availability of a large number of apartments encourages many new citizens to immigrate. + <<set $ACitizens += random(10,20)>> + <</if>> + <<if $ACitizens <= 100>> + Your arcology is home to an extremely small number of very wealthy citizens; wealth is as concentrated as possible and the citizen population will not decrease further. + <<set $ACitizens = 100>> + <</if>> +<</if>> + +<<if $ASlaves >= $ASlaveLimit>> + <<set $ASlaves = $ASlaveLimit>> + The living areas of the arcology are packed with sex slaves; your citizens cannot find space for any more. +<<else>> + <<set $ASlaves -= random(1,10)+Math.trunc(10*(1-$slaveCostFactor))>> + <<if $slaveCostFactor >= 1.2>> + With the price of slaves so high, some of your citizens make money by selling a few of their girls. + <<elseif $slaveCostFactor <= 0.8>> + With the price of slaves so low, some of your citizens gratify themselves with new purchases. + <</if>> + <<if $ASlaves < $ASlaveLimit*0.8>> + <<if $ASlaves < $ASlaveLimit*0.6>> + Since there's a lot of space for sex slaves in the living areas, it's fashionable for your citizens to buy up cheap girls and fill their apartments. + <<set $ASlaves += random(1,10)+Math.trunc($arcologies[0].prosperity/5)>> + <<else>> + Since the living areas can comfortably house more sex slaves, it's fashionable for your citizens to buy more girls. + <<set $ASlaves += random(1,10)+Math.trunc($arcologies[0].prosperity/10)>> + <</if>> + <<if $arcologies[0].prosperity > 200>> + $arcologies[0].name is extremely prosperous, and they can afford to buy many of the best. + <<elseif $arcologies[0].prosperity > 100>> + $arcologies[0].name is quite prosperous, and they can afford to buy many pretty slaves. + <</if>> + <</if>> + <<if $ASlaves <= 4000>><<set $ASlaves = 4000>><</if>> +<</if>> + +$ACitizens citizens and <<print $ASlaves+$helots+$slaves.length>> slaves now live in your arcology. +<<if $arcologies[0].FSSupremacistLawME == 1>>The citizenry is entirely $arcologies[0].FSSupremacistRace.<</if>> +<<if $arcologies[0].FSRomanRevivalistLaw == 1>>The citizens take pride in their martial duties, preferring to wear utilitarian clothing even when off duty.<</if>> +<<if $arcologies[0].FSGenderRadicalistLaw == 1>>Every single one of the slaves is female by virtue of her fuckable asshole. +<<elseif $arcologies[0].FSGenderFundamentalistSMR == 1>>Almost every citizen is an upstanding man, while the slave population is almost completely female.<</if>> +<<if $arcologies[0].FSEgyptianRevivalistLaw == 1>>Close relationships between citizens and slaves, especially slave siblings, are common.<</if>> +<<if $arcologies[0].FSSubjugationistLawME == 1>>$arcologies[0].FSSubjugationistRace subhumans form a majority of the slaves.<</if>> +<<if $arcologies[0].FSChattelReligionistLaw == 1>>The slave population as a whole is unusually accepting of its station.<</if>> +<<if $arcologies[0].FSPaternalistLaw == 1>>The slaves are well cared for, and it can sometimes be difficult to tell slaves from citizens. +<<elseif $arcologies[0].FSDegradationistLaw == 1>>Most of the slaves are recent captures, since the vicious society that's taken root here uses people up quickly.<</if>> +<<if $arcologies[0].FSBodyPuristLaw == 1>>The average slave is quite healthy. +<<elseif $arcologies[0].FSTransformationFetishistResearch == 1>>Breast implants are almost universal; an M cup bust is below average among the slave population. +<<elseif $arcologies[0].FSTransformationFetishistLaw == 1>>Breast implants are almost universal; a D cup bust is below average among the slave population.<</if>> +<<if $arcologies[0].FSSlimnessEnthusiastSMR == 1>>Most of the slave population is quite slim and physically fit. +<<elseif $arcologies[0].FSAssetExpansionistSMR == 1>>The arcology's consumption of pharmaceuticals is impressive, since slave growth hormones are nearly ubiquitous.<</if>> +<<if $arcologies[0].FSRepopulationFocusLaw == 1>>Many of the women in the arcology are pregnant.<<elseif $arcologies[0].FSRepopulationFocusSMR == 1>>Most of the slaves in the arcology are pregnant.<<elseif $arcologies[0].FSRestartLaw == 1>>Many of your civilians have agreed to be sterilized.<<elseif $arcologies[0].FSRestartSMR == 1>>Many of slave slaves in your arcology are infertile.<</if>> +<<if $arcologies[0].FSPastoralistLaw == 1>>Much of the menial slave labor force works to service the arcology's hundreds of human cattle.<</if>> +<<if $arcologies[0].FSPhysicalIdealistSMR == 1>>The arcology must import a very large quantity of nutritive protein to nourish its slaves.<</if>> + +<<if $ACitizens > $ASlaves*2>> + Since most citizens do not own sex slaves, @@.yellowgreen;demand for sexual services is intense.@@ +<<elseif $ACitizens > $ASlaves>> + Since many citizens do not own sex slaves, @@.yellowgreen;demand for sexual services is healthy.@@ +<<elseif $ACitizens > $ASlaves*0.5>> + Since many citizens keep a personal sex slave, @@.yellow;demand for sexual services is only moderate.@@ +<<elseif $ACitizens > $ASlaves*0.25>> + Since most citizens keep at least one sex slave, @@.gold;local demand for sexual services is low,@@ though visitors to the arcology will always keep it above a certain minimum. +<<else>> + Since most of your citizens now keep private harems of sex slaves, @@.gold;local demand for sexual services is very low,@@ though visitors to the arcology will always keep it above a certain minimum. +<</if>> + +<br> + +<<set $rents = random(1,100)>> +<<for _i = 1; _i < $sectors.length; _i++>> + <<if $sectors[_i].ownership == 1>> + <<switch $sectors[_i].type>> + <<case "DenseApartments" "LuxuryApartments" "Apartments" "Shops" "Markets" "Manufacturing">> + <<set $rents += $arcologies[0].prosperity*10>> + <</switch>> + <</if>> +<</for>> +<<set $rentalMultiplier = 1>> +<<if $arcologies[0].FSPaternalistLaw == 1>> + <<set $rentalMultiplier -= 0.1>> + Tenants who can prove that they abstain from certain practices are given a reduction to their rent. +<</if>> +<<if $arcologies[0].FSYouthPreferentialistLaw == 1>> + <<set $rentalMultiplier -= 0.1>> + Younger citizens are offered subsidized rent to encourage young people to join the free population of your arcology. +<</if>> +<<if $arcologies[0].FSMaturityPreferentialistLaw == 1>> + <<set $rentalMultiplier -= 0.1>> + Older citizens are offered subsidized rent to encourage mature people to join the free population of your arcology. +<</if>> +<<if $arcologies[0].FSRepopulationFocusLaw == 1>> + <<set $rentalMultiplier -= 0.1>> + Pregnant citizens are offered subsidized rent to encourage free women to become pregnant and pregnant women to join the free population of your arcology. +<<elseif $arcologies[0].FSRestartLaw == 1>> + <<set $rentalMultiplier += 0.1>> + Non-elite citizens who refuse to be sterilized face a moderate tax and the looming possibility of expulsion or enslavement. +<</if>> +<<if $arcologies[0].FSArabianRevivalistLaw == 1>> + <<set $rentalMultiplier += 0.1>> + Those of your citizens who have not yet subscribed to the society you are building are permitted to live and do business here, but must pay a moderate jizya tax for the privilege as part of their rent. +<</if>> +<<set $rents = Math.trunc($rents*$rentalMultiplier)>> + +<<set $cash += $rents>> + +This week, rents from $arcologies[0].name came to +<<if $rents > 0>> + @@.yellowgreen;¤$rents.@@ +<<else>> + @@.red;¤$rents.@@ +<</if>> + +<<if $economy > 1>> + <<set $rents = ($week*100)+random(-100,100)>> + <<if $cash > 1000>> + <<set $rents += Math.trunc($cash/10)>> + <</if>> + The @@.red;degenerating world economy@@ makes supplying and maintaining $arcologies[0].name extremely difficult. This week, bribes and other costs to keep it running came to @@.yellowgreen;¤$rents.@@ + <<set $cash -= $rents>> +<</if>> + +<<if $helots+$menialBioreactors+$fuckdolls > 0>> +<<set _earnings = 0>> +You own +<<if $helots > 0>> + <<set _earnings += $helots*10>> + <<if $Sweatshops > 0>> + <<if $Sweatshops*500 < $helots>> + <<set _earnings += $helots*10>> + <<else>> + <<set _earnings += $Sweatshops*2000>> + <</if>> + <</if>> + <<if $helots > 1>>$helots menial slaves<<if ($menialBioreactors > 0) && ($fuckdolls == 0)>> and<<else>>,<</if>><<else>>one menial slave<<if ($menialBioreactors > 0) && ($fuckdolls == 0)>> and<<else>>,<</if>><</if>> +<</if>> +<<if $menialBioreactors > 0>> + <<set _earnings += $menialBioreactors*(10+(10*$arcologies[0].FSPastoralistLaw))>> + <<if $dairy>><<if $dairyUpgradeMenials>><<set _earnings += $menialBioreactors*5>><</if>><</if>> + <<if $menialBioreactors > 1>>$menialBioreactors standard bioreactors,<<else>>one standard bioreactor,<</if>> + <<if $fuckdolls > 0>>and<</if>> +<</if>> +<<if $fuckdolls > 0>> + <<set _earnings += $fuckdolls*(15+(10*$arcologies[0].FSDegradationistLaw))>> + <<if $arcade>><<if $arcadeUpgradeMenials>><<set _earnings += $fuckdolls*5>><</if>><</if>> + <<if $fuckdolls > 1>>$fuckdolls standard fuckdolls,<<else>>one fuckdoll,<</if>> +<</if>> +<<set _earnings += random(1,10)>> +<<set $cash += _earnings>> +earning you @@.yellowgreen;¤_earnings.@@ +<</if>> + +<<set _refugees = 0>> +<<if $terrain == "urban">> + <<set _refugees += random(0,5)>> +<<elseif $terrain == "rural">> + <<set _refugees += random(0,3)>> +<<elseif $terrain == "marine">> + <<set _refugees += random(0,1)>> +<</if>> +<<if $ProRefugees == 1>> + <<set _refugees += random(0,1)>> +<</if>> +<<for $i = 0; $i < 3; $i++>> + <<if $rep > random(0,30000)>> + <<set _refugees += 1>> + <</if>> +<</for>> +<<if _refugees > 0>> + Some desperate people filtered into the arcology during the week: as owner, you were able to enslave _refugees of them. + <<set $helots += _refugees>> +<</if>> + +<<set _AWeekGrowth = $AGrowth>> +<<if _AWeekGrowth+$arcologies[0].prosperity > $AProsperityCap>> + @@.yellow;$arcologies[0].name is at its maximum prosperity, so rents will not increase until it is improved.@@ +<<elseif (2*_AWeekGrowth)+$arcologies[0].prosperity >= $AProsperityCap>> + @@.yellow;Your arcology is nearly at its maximum prosperity.@@ + <<set $arcologies[0].prosperity += _AWeekGrowth>> +<<else>> + <<if $arcologies[0].ownership >= 100>> + Your controlling interest in $arcologies[0].name allows you to lead it economically, @@.green;supercharging growth.@@ + <<set _AWeekGrowth += 3>> + <<elseif $arcologies[0].ownership >= random(40,100)>> + Your interest in $arcologies[0].name allows you to lead it economically, @@.green;boosting growth.@@ + <<set _AWeekGrowth++>> + <</if>> + <<if $arcologies[0].prosperity < ($rep/100)>> + Your impressive reputation relative to $arcologies[0].name's prosperity @@.green;drives an increase in business.@@ + <<set _AWeekGrowth++>> + <<elseif $rep > 18000>> + <<elseif $arcologies[0].prosperity > ($rep/60)>> + Your low reputation relative to $arcologies[0].name's prosperity @@.red;seriously impedes business growth.@@ + <<set _AWeekGrowth -= 2>> + <<elseif $arcologies[0].prosperity > ($rep/80)>> + Your unimpressive reputation relative to $arcologies[0].name's prosperity @@.yellow;slows business growth.@@ + <<set _AWeekGrowth-->> + <</if>> + <<if $personalAttention == "business">> + <<if ($PC.trading >= 100) || ($PC.career == "arcology owner")>> + Your @@.springgreen;business focus and your experience@@ allow you to greatly assist in advancing the arcology's prosperity. + <<set _AWeekGrowth += 2>> + <<else>> + Your business focus allows you to help improve the arcology's prosperity. + <<set _AWeekGrowth++>> + <</if>> + <<if $PC.actualAge >= 50>> + <<if $arcologies[0].FSMaturityPreferentialistLaw == 1>> + You are able to leverage your long seniority in the business community using the arcology's favorable laws to further advance prosperity. + <<set _AWeekGrowth++>> + <</if>> + <<elseif $PC.actualAge < 35>> + <<if $arcologies[0].FSYouthPreferentialistLaw == 1>> + You are able to leverage your freshness in the business community using the arcology's favorable laws to further advance prosperity. + <<set _AWeekGrowth++>> + <</if>> + <</if>> + <</if>> + <<if $arcologies[0].FSNull != "unset">> + Your cultural openness is a powerful driver of economic activity. + <<set _AWeekGrowth += Math.trunc($arcologies[0].FSNull/25)>> + <</if>> + <<if $arcologies[0].FSRestart != "unset">> + Your powerful connections open many avenues of economic expansion. + <<set _AWeekGrowth += Math.trunc($arcologies[0].FSRestart/10)>> + <</if>> + <<if $arcologies[0].FSPaternalist >= random(1,100)>> + This week, the careful attention to slave welfare your new society emphasizes has been a driver of prosperity. + <<set _AWeekGrowth++>> + <</if>> + <<if $arcologies[0].FSChattelReligionistCreed == 1>> + <<if $nicaeaFocus == "owners">> + The focus on slaveowners' whims in the creed of $nicaeaName interests the rich and powerful, increasing prosperity. + <<set _AWeekGrowth += $nicaeaPower>> + <</if>> + <</if>> + <<if $arcologies[0].FSRomanRevivalist >= random(1,100)>> + This week, intense interest in your project to revive Roman values has driven prosperity. + <<set _AWeekGrowth++>> + <<elseif $arcologies[0].FSChineseRevivalist != "unset">> + <<if ($HeadGirl != 0) && ($Recruiter != 0) && ($Bodyguard != 0)>> + This week, your imperial administration, staffed with a Head Girl, a Recruiter, and a Bodyguard, has improved prosperity. + <<set _AWeekGrowth += 2>> + <</if>> + <</if>> + <<if $PC.trading >= 100>> + Your @@.springgreen;business skills@@ drive increased prosperity. + <<set _AWeekGrowth++>> + <<elseif $PC.career == "arcology owner">> + Your @@.springgreen;experience in the Free Cities@@ helps increase prosperity. + <<set _AWeekGrowth++>> + <</if>> + <<set _schools = $TSS.schoolPresent+$GRI.schoolPresent+$SCP.schoolPresent+$LDE.schoolPresent+$TGA.schoolPresent+$TFS.schoolPresent>> + <<if _schools == 1>> + The presence of a slave school in the arcology improves the local economy. + <<elseif _schools > 0>> + The presence of slave schools in the arcology greatly improves the local economy. + <<elseif $arcologies[0].prosperity > 80>> + The lack of a branch campus from a reputable slave school is slowing further development of the local economy. + <<set _AWeekGrowth-->> + <</if>> + <<set _AWeekGrowth += _schools>> + <<if $arcologies[0].FSDegradationistLaw == 1>> + Requiring menials to be given time to fuck human sex toys in the arcade reduces labor efficiency, slowing growth. + <<set _AWeekGrowth-->> + <</if>> + <<if $arcologies[0].FSBodyPuristLaw == 1>> + The drug surcharge used to fund the purity regime reduces growth. + <<set _AWeekGrowth-->> + <</if>> + <<if $arcologies[0].FSPastoralistLaw == 1>> + Prosperity improvement is slowed by the regulations on animal products. + <<set _AWeekGrowth-->> + <</if>> + <<if $arcologies[0].FSPaternalistSMR == 1>> + Your slave market regulations slow the flow of chattel through the arcology. + <<set _AWeekGrowth-->> + <</if>> + <<if $terrain == "urban">> + Since your arcology is located in the heart of an urban area, its commerce is naturally vibrant. + <<set _AWeekGrowth++>> + <</if>> + <<if $terrain == "ravine">> + Since your arcology is located in the heart of a ravine, its commerce is hindered by a lack of accessability. + <<set _AWeekGrowth-->> + <</if>> + <<if def $arcologies[0].embargoTarget && $arcologies[0].embargoTarget != -1>> + The local economy is hurt by the double edged sword of your economic warfare. + <<set _AWeekGrowth -= $arcologies[0].embargo*2>> + <</if>> + <<set $desc = []>> + <<set $descNeg = []>> + <<for $i = 1; $i < $arcologies.length; $i++>> + <<set $activeArcology = $arcologies[0]>> + <<set $targetArcology = $arcologies[$i]>> + <<include "Arcology Opinion">> + <<if $opinion >= 100>> + <<set $desc.push($arcologies[$i].name)>> + <<elseif $opinion <= -100>> + <<set $descNeg.push($arcologies[$i].name)>> + <</if>> + <</for>> + <<if $desc.length > 0>> + Your arcology's economy benefits from close social alignment with + <<if $desc.length > 2>> + ''$desc[0]'', + <<for $k = 1; $k < $desc.length; $k++>> + <<if $k < $desc.length-1>> + ''$desc[$k]'', + <<else>> + and ''$desc[$k]''<<if $descNeg.length > 0>>, but<<else>>.<</if>> + <</if>> + <</for>> + <<elseif $desc.length == 2>> + ''$desc[0]'' and ''$desc[1]''<<if $descNeg.length > 0>>, but<<else>>.<</if>> + <<else>> + ''$desc[0]''<<if $descNeg.length > 0>>, but<<else>>.<</if>> + <</if>> + <<set _AWeekGrowth += $desc.length>> + <</if>> + <<if $descNeg.length > 0>> + <<if $desc.length > 0>>Your arcology's economy<</if>> + is hindered by social conflicts with + <<if $descNeg.length > 2>> + ''$descNeg[0]'', + <<for $k = 1; $k < $descNeg.length; $k++>> + <<if $k < $descNeg.length-1>> + ''$descNeg[$k]'', + <<else>> + and ''$descNeg[$k]''. + <</if>> + <</for>> + <<elseif $descNeg.length == 2>> + ''$descNeg[0]'' and ''$descNeg[1]''. + <<else>> + ''$descNeg[0]''. + <</if>> + <<set _AWeekGrowth -= $descNeg.length>> + <</if>> + <<if $alwaysSubsidizeGrowth == 1>> + Growth was subsidized as planned. + <<set _AWeekGrowth++>> + <</if>> + <<set _AWeekGrowth = Math.trunc(0.5*_AWeekGrowth)>> + <<if _AWeekGrowth > 0>> + Since $arcologies[0].name can support more citizens and more activity, @@.green;its prosperity improved this week.@@ + <<elseif _AWeekGrowth == 0>> + Though $arcologies[0].name can support more citizens and more activity, @@.yellow;growth was moribund this week.@@ + <<else>> + Though $arcologies[0].name can support more citizens and more activity, @@.red;it lost prosperity this week.@@ + <</if>> + <<set $arcologies[0].prosperity += _AWeekGrowth>> +<</if>> + +<<if $TSS.schoolPresent+$GRI.schoolPresent+$SCP.schoolPresent+$LDE.schoolPresent+$TGA.schoolPresent+$TFS.schoolPresent > 0>> +<br> + +<<if $TSS.schoolPresent == 1>> +<br> +The Slave School has a <<if $TSS.schoolProsperity > 4>>very prosperous<<elseif $TSS.schoolProsperity < -4>>struggling<<else>>thriving<</if>> branch campus in $arcologies[0].name. +<<if $TSS.schoolProsperity >= 10>> + It is one of the finest slave schools in the world<<if $rep > 19000>>.<<else>>, @@.green;improving your reputation.@@<<set $rep += 200>><</if>> + <<set $TSS.subsidize = 0>> + <<set $TSS.schoolProsperity = 10>> +<</if>> +<<if $TSS.subsidize == 1>> + You have a policy of subsidizing them. + <<set $TSS.schoolProsperity++>> +<<elseif $TSS.subsidize == -1>> + You have a policy of covertly undermining them. + <<set $TSS.schoolProsperity-->> +<</if>> +<</if>> + +<<if $GRI.schoolPresent == 1>> +<br> +The Growth Research Institute has a <<if $GRI.schoolProsperity > 4>>very prosperous<<elseif $GRI.schoolProsperity < -4>>struggling<<else>>thriving<</if>> subsidiary lab in $arcologies[0].name. +<<if $GRI.schoolProsperity >= 10>> + It is one of the finest research facilities in the world<<if $rep > 19000>>.<<else>>, @@.green;improving your reputation.@@<<set $rep += 200>><</if>> + <<set $GRI.subsidize = 0, $GRI.schoolProsperity = 10>> +<</if>> +<<if $GRI.subsidize == 1>> + You have a policy of subsidizing them. + <<set $GRI.schoolProsperity++>> +<<elseif $GRI.subsidize == -1>> + You have a policy of covertly undermining them. + <<set $GRI.schoolProsperity-->> +<</if>> +<</if>> + +<<if $SCP.schoolPresent == 1>> +<br> +St. Claver Preparatory has a <<if $SCP.schoolProsperity > 4>>very prosperous<<elseif $SCP.schoolProsperity < -4>>struggling<<else>>thriving<</if>> branch campus in $arcologies[0].name. +<<if $SCP.schoolProsperity >= 10>> + It is one of the finest slave schools in the world<<if $rep > 19000>>.<<else>>, @@.green;improving your reputation.@@<<set $rep += 200>><</if>> + <<set $SCP.subsidize = 0, $SCP.schoolProsperity = 10>> +<</if>> +<<if $SCP.subsidize == 1>> + You have a policy of subsidizing them. + <<set $SCP.schoolProsperity++>> +<<elseif $SCP.subsidize == -1>> + You have a policy of covertly undermining them. + <<set $SCP.schoolProsperity-->> +<</if>> +<</if>> + +<<if $LDE.schoolPresent == 1>> +<br> +L'Ecole des Enculees has a <<if $LDE.schoolProsperity > 4>>very prosperous<<elseif $LDE.schoolProsperity < -4>>struggling<<else>>thriving<</if>> branch campus in $arcologies[0].name. +<<if $LDE.schoolProsperity >= 10>> + It is one of the finest slave schools in the world<<if $rep > 19000>>.<<else>>, @@.green;improving your reputation.@@<<set $rep += 200>><</if>> + <<set $LDE.subsidize = 0, $LDE.schoolProsperity = 10>> +<</if>> +<<if $LDE.subsidize == 1>> + You have a policy of subsidizing them. + <<set $LDE.schoolProsperity++>> +<<elseif $LDE.subsidize == -1>> + You have a policy of covertly undermining them. + <<set $LDE.schoolProsperity-->> +<</if>> +<</if>> + +<<if $TGA.schoolPresent == 1>> +<br> +The Gymnasium-Academy has a <<if $TGA.schoolProsperity > 4>>very prosperous<<elseif $TGA.schoolProsperity < -4>>struggling<<else>>thriving<</if>> branch campus in $arcologies[0].name. +<<if $TGA.schoolProsperity >= 10>> + It is one of the finest slave schools in the world<<if $rep > 19000>>.<<else>>, @@.green;improving your reputation.@@<<set $rep += 200>><</if>> + <<set $TGA.subsidize = 0, $TGA.schoolProsperity = 10>> +<</if>> +<<if $TGA.subsidize == 1>> + You have a policy of subsidizing them. + <<set $TGA.schoolProsperity++>> +<<elseif $TGA.subsidize == -1>> + You have a policy of covertly undermining them. + <<set $TGA.schoolProsperity-->> +<</if>> +<</if>> + +<<if $TFS.schoolPresent == 1>> +<br> +The Futanari Sisters have a <<if $TFS.schoolProsperity > 4>>very prosperous<<elseif $TFS.schoolProsperity < -4>>struggling<<else>>thriving<</if>> community in $arcologies[0].name. +<<if $TFS.schoolProsperity >= 10>> + They are one of the most renowned futa societies in the world<<if $rep > 19000>>.<<else>>, @@.green;improving your reputation.@@<<set $rep += 200>><</if>> + <<set $TFS.subsidize = 0, $TFS.schoolProsperity = 10>> +<</if>> +<<if $TFS.subsidize == 1>> + You have a policy of subsidizing them<<if ($PC.dick == 1) && ($PC.vagina == 1) && ($PC.boobs == 1)>>, which is more effective due to your close relationship with them and your physical resemblance to them<<set $TFS.schoolProsperity++>><</if>>. + <<set $TFS.schoolProsperity++>> +<<elseif $TFS.subsidize == -1>> + You have a policy of covertly undermining them. + <<set $TFS.schoolProsperity-->> +<</if>> +<</if>> + +<</if>> + +<<if $marketAssistantLimit != 0>> +<<silently>><<MenialPopCap>><</silently>> +<<set $seed = Math.clamp($slaveCostFactor*1000, 500, 1500)>> +<br> +Your ''business assistant'' manages the menial slave market. +<<if $seed <= 800+$marketAssistantAggressiveness>>/* BUY */ + <<if $helots+$fuckdolls+$menialBioreactors >= $PopCap>> + There is no room in the parts of your arcology you own for more menial slaves. + <<else>> + <<if $cash > $marketAssistantLimit+$seed>> + <<if $assistant == 0>>It<<else>>She<</if>> acquires more chattel, since it's a buyers' market. + <<if ($arcologies[0].FSPastoralist != "unset") && ($arcologies[0].FSPaternalist == "unset")>> + <<set $menialBioreactors += Math.trunc(($cash-$marketAssistantLimit)/($seed-100)), $cash -= Math.trunc(($cash-$marketAssistantLimit)/($seed-100))*($seed-100)>> + <<elseif ($arcologies[0].FSDegradationist != "unset")>> + <<set $fuckdolls += Math.trunc(($cash-$marketAssistantLimit)/($seed*2)), $cash -= Math.trunc(($cash-$marketAssistantLimit)/($seed*2))*($seed*2)>> + <<else>> + <<set $helots += Math.trunc(($cash-$marketAssistantLimit)/($seed)), $cash -= Math.trunc(($cash-$marketAssistantLimit)/($seed))*($seed)>> + <</if>> + <</if>> + <</if>> +<<elseif $seed >= 1200-$marketAssistantAggressiveness>>/* SELL */ + <<if $helots+$fuckdolls+$menialBioreactors > 0>> + <<if $assistant == 0>>It<<else>>She<</if>> liquidates your chattel holdings, since it's a sellers' market. + <</if>> + <<if $helots > 0>> + <<set $cash+=$helots*($seed),$helots = 0>> + <</if>> + <<if $fuckdolls > 0>> + <<set $cash+=$fuckdolls*($seed),$fuckdolls = 0>> + <</if>> + <<if $menialBioreactors > 0>> + <<set $cash+=$menialBioreactors*($seed),$menialBioreactors = 0>> + <</if>> +<<else>> + Prices are average, so <<if $assistant == 0>>it<<else>>she<</if>> does not make any significant moves. +<</if>> +<<silently>><<MenialPopCap>><</silently>> +<</if>> + +<<if $FSAnnounced > 0>> + <br><br> + <<include "FS Developments">> +<</if>> diff --git a/src/uncategorized/economics.tw b/src/uncategorized/economics.tw index 1cb2e7f5d46e0b497f501d92dd39eb456546a8bb..85ec1376f1767c0539b724bda4a9482b327e9032 100644 --- a/src/uncategorized/economics.tw +++ b/src/uncategorized/economics.tw @@ -1,132 +1,17 @@ :: Economics [nobr] +<h1> <<print $arcologies[0].name + " Weekly Financial Report - Week " + $week>></h1> + <<set $nextButton = "Continue", $nextLink = "Scheduled Event">> <<if $cash > -10000>> <<set $debtWarned = 0>> <</if>> -<<ApartmentEffects>> +<<SectorCounts>> <<UpdateOwnership>> -//FC Markets Report:// - -<<set $assetAffected = either("general", "slaves", "entrapment", "capture", "training", "surgical", "drugs")>> -<<set $assetDirection = either("up", "down")>> - -<<if $assetAffected == "general">> - <<if $assetDirection == "up">> - <<if random(1,100) > 50>> - ...rising energy costs drove @@.yellowgreen;rising prices@@ of several market baskets... - <<else>> - ...conflict-driven increases in transportation costs increase @@.yellowgreen;price indices@@... - <</if>> - <<set $generalAssetPrice += 2>> - <<else>> - <<if random(1,100) > 50>> - ...increasing Free Cities slave labor effects @@.gold;general prices@@... - <<else>> - ...Antarctic oil shale pushing down energy prices, driving down major @@.gold;price indices@@... - <</if>> - <<set $generalAssetPrice -= 2>> - <</if>> -<<elseif $assetAffected == "slaves">> - <<if $assetDirection == "up">> - <<if random(1,100) > 50>> - ...heavy demand for fashionable varieties drove @@.yellowgreen;rising slave prices@@ last... - <<else>> - ...study suggested the sexual revolution would continue to drive up @@.yellowgreen;slave prices@@... - <</if>> - <<set $slaveAssetPrice += 2>> - <<else>> - <<if random(1,100) > 50>> - ...increased supply due to bush wars drove down @@.gold;slave prices@@... - <<else>> - ...@@.gold;slave prices@@ continue to fall due to major improvements in training... - <</if>> - <<set $slaveAssetPrice -= 2>> - <</if>> -<<elseif $assetAffected == "entrapment">> - <<if $assetDirection == "up">> - <<if random(1,100) > 50>> - ...prospect of deregulation drove a @@.yellowgreen;scramble@@ for means of enslavement... - <<else>> - ...law would legalize enslavement, driving @@.yellowgreen;high prices@@ for associated... - <</if>> - <<set $entrapmentAssetPrice += 2>> - <<else>> - <<if random(1,100) > 50>> - ...reactionism produced lower demand and @@.gold;lower prices@@ for legal enslavement... - <<else>> - ...report on low success rates @@.gold;drove down@@ value of legal enslavement methods... - <</if>> - <<set $entrapmentAssetPrice -= 2>> - <</if>> -<<elseif $assetAffected == "capture">> - <<if $assetDirection == "up">> - <<if random(1,100) > 50>> - ...declaration of war @@.yellowgreen;pushed up@@ average mercenary wage... - <<else>> - ...advancing technology to blame for @@.yellowgreen;rising costs@@ of assets for wet work... - <</if>> - <<set $captureAssetPrice += 2>> - <<else>> - <<if random(1,100) > 50>> - ...rumored peace treaty @@.gold;pushed down@@ mercenary contract clearing rate... - <<else>> - ...demobilization of the cash-strapped army expected to produce mercenary @@.gold;glut@@... - <</if>> - <<set $captureAssetPrice -= 2>> - <</if>> -<<elseif $assetAffected == "training">> - <<if $assetDirection == "up">> - <<if random(1,100) > 50>> - ...rising demand in turn @@.yellowgreen;pushing up@@ prices for most means of slave training... - <<else>> - ...public demand for ever-better slave training inevitably @@.yellowgreen;increase@@ training costs... - <</if>> - <<set $trainingAssetPrice += 2>> - <<else>> - <<if random(1,100) > 50>> - ...competition from low-cost slave breaking firms @@.gold;reducing@@ asking price for... - <<else>> - ...increased automation of slave training @@.gold;negatively impacting@@ training contracts... - <</if>> - <<set $trainingAssetPrice -= 2>> - <</if>> -<<elseif $assetAffected == "surgical">> - <<if $assetDirection == "up">> - <<if random(1,100) > 50>> - ...fashionable extravagant implant procedures @@.yellowgreen;driving prices@@ of remote surgical... - <<else>> - ...near-universal breast implants producing corresponding @@.yellowgreen;price inflation@@ of surgery... - <</if>> - <<set $surgicalAssetPrice += 2>> - <<else>> - <<if random(1,100) > 50>> - ...vastly reduced overhead with remote surgery @@.gold;hitting prices@@ of surgery hard... - <<else>> - ...oversupply after major manufacturers converted lines to @@.gold;low-cost@@ implant production... - <</if>> - <<set $surgicalAssetPrice -= 2>> - <</if>> -<<elseif $assetAffected == "drugs">> - <<if $assetDirection == "up">> - <<if random(1,100) > 50>> - ...intense demand for curatives in conflict zones @@.yellowgreen;increasing prices@@... - <<else>> - ...setbacks in growth hormone human testing expected to @@.yellowgreen;increase prices@@ of traditional formula... - <</if>> - <<set $drugAssetPrice += 2>> - <<else>> - <<if random(1,100) > 50>> - ...new formula @@.gold;cut costs@@ of common curatives by an unprecedented... - <<else>> - ...glut caused by big pharma reorienting towards @@.gold;cheap,@@ mass-produced aphros... - <</if>> - <<set $drugAssetPrice -= 2>> - <</if>> -<</if>> +<<include "Markets Report">> <br><br> @@ -134,1736 +19,18 @@ <br><br> -__Personal Business__ -<br> - -<<if $cash < 0>> - @@.red;You are in debt.@@ This week, interest came to ¤<<print (1+Math.trunc(Math.abs($cash)/100))>>. - <<set $cash -= (1+Math.trunc(Math.abs($cash)/100))>> - <<if $arcologies[0].FSRomanRevivalist != "unset">> - Society @@.red;very strongly disapproves@@ of your being in debt; this damages the idea that you model yourself on what a Roman leader should be. - <<FSChange "RomanRevivalist" -10>> - <</if>> - <<if $cash < 0 && $cash > -25000 && $arcologies[0].FSRestartDecoration == 100>> - Money is quickly shifted to bring you out of debt, though @@.red;the Societal Elite are left doubting@@ your worth. - <<set $cash = 0>> - <<set $failedElite += 100>> - <<elseif $cash < -9000>> - @@.red;WARNING: you are dangerously indebted.@@ Immediately acquire more liquid assets or you will be in danger of being enslaved yourself. - <<set $debtWarned += 1>> - <<if $debtWarned > 1>> - <<set $ui = "start">> - <<set $gameover = "debt">><<goto "Gameover">> - <</if>> - <</if>> -<<elseif ($personalAttention == "whoring")>> - <<if $PC.preg >= 16>> - <<if $arcologies[0].FSRepopulationFocus != "unset">> - <<set $seed = random(2000,4500)>> - You focus on finding a "date" this week and earn @@.yellowgreen;¤<<print Math.trunc(($seed*($rep/500))+($PC.preg*100))>>@@ for your body, much more than usual; guess your pregnancy focused population wants your baby rounded body more than ever. However, doing such things @@.red;damages your reputation@@. - <<set $cash += Math.trunc(($seed*($rep/500))+($PC.preg*100))>> - <<set $rep = Math.trunc($rep*.90)>> - <<elseif $arcologies[0].FSRestart != "unset">> - <<if $PC.pregSource != -1>> - You focus on finding a "date" this week and earn @@.yellowgreen;¤25@@, barely enough to cover the abortion the john that gave it to you told you to get. Showing off your gravid body @@.red;infuriates your citizens and cripples your reputation@@. - <<set $cash += 25>> - <<set $rep = Math.trunc($rep*.25)>> - <<set $failedElite += 25>> - <<else>> - <<set $seed = random(2000,4500)>> - You focus on finding a "date" this week and earn @@.yellowgreen;¤<<print Math.trunc($seed*($rep/500))>>@@ for your body. However, doing such things @@.red;damages your reputation@@. - <<set $cash += Math.trunc($seed*($rep/500))>> - <<set $rep = Math.trunc($rep*.75)>> - <</if>> - <<else>> - <<set $seed = random(5,2500)>> - You focus on finding a "date" this week and earn @@.yellowgreen;¤<<print Math.trunc($seed*($rep/800))>>@@ for your body, much less than usual; your pregnancy must be turning off potential clients. However, doing such things @@.red;damages your reputation@@. - <<set $cash += Math.trunc($seed*($rep/800))>> - <<set $rep = Math.trunc($rep*.75)>> - <</if>> - <<else>> - <<set $seed = random(2000,4500)>> - You focus on finding a "date" this week and earn @@.yellowgreen;¤<<print Math.trunc($seed*($rep/500))>>@@ for your body. However, doing such things @@.red;damages your reputation@@. - <<set $cash += Math.trunc($seed*($rep/500))>> - <<set $rep = Math.trunc($rep*.75)>> - <<if $PC.preg == 0 && ($PC.vagina == 1)>> - <<if random(1,100) > 80>> - <<set $PC.preg = 1>> - <<set $PC.pregSource = -2>> - <</if>> - <</if>> - <</if>> -<<elseif ($personalAttention == "upkeep")>> - <<if $PC.preg >= 20>> - You spend your free time hustling around your penthouse, cleaning and making sure everything is in order. You manage to reduce your upkeep by 20%. Your pregnancy slows you down some, but you're used to working around it. - <<else>> - You spend your free time hustling around your penthouse, cleaning and making sure everything is in order. You manage to reduce your upkeep by 25%. <<if $PC.vagina == 1>>This is much easier to do without a big baby bump in the way.<</if>> - <</if>> -<<elseif ($cash > 1000) && ($personalAttention == "business")>> - <<if $PC.preg >= 20>> - <<set $seed = random(500,1000)>> - <<else>> - <<set $seed = random(1000,1500)>> - <</if>> - <<if $PC.trading >= 100>> - You focus on business and leverage your @@.springgreen;venture capital experience@@ to make good money: - <<set $seed += random(500,1000)>> - <<elseif $PC.career == "arcology owner">> - You focus on business and leverage your @@.springgreen;Free Cities experience@@ to make good money: - <<set $seed += random(500,1000)>> - <<else>> - You focus on business this week and make money: - <</if>> - @@.yellowgreen;¤<<print ($seed+Math.trunc(Math.abs($cash)/40))>>.@@ - <<set $cash += ($seed+Math.trunc(Math.abs($cash)/40))>> - <<if $arcologies[0].FSRomanRevivalist != "unset">> - Society @@.green;approves@@ of your close attention to your own affairs; this advances your image as a <<if def $PC.customTitle>>$PC.customTitle<<elseif $PC.title == 1>>well-rounded Roman man<<else>>responsible Roman lady<</if>>. - <<FSChange "RomanRevivalist" 2>> - <</if>> -<<elseif ($cash > 1000)>> - You have significant assets. This week, your business endeavors made you @@.yellowgreen;¤<<print (1+Math.trunc(Math.abs($cash)/50))>>.@@ - <<set $cash += (1+Math.trunc(Math.abs($cash)/50))>> -<<else>> - You have enough cash to manage your affairs, but not enough to do much business. -<</if>> - -<<if ($personalAttention == "trading")>> - <<set _oldSkill = $PC.trading>> - <<set $PC.trading += random(5,10)>> - <<if _oldSkill <= 10>> - <<if $PC.trading > 10>> - You now have @@.green;basic knowledge@@ about how to be a venture capitalist. - <</if>> - <<elseif _oldSkill <= 30>> - <<if $PC.trading > 30>> - You now have @@.green;some skill@@ as a venture capitalist. - <</if>> - <<elseif _oldSkill <= 60>> - <<if $PC.trading > 60>> - You are now an @@.green;expert venture capitalist.@@ - <</if>> - <<else>> - <<if $PC.trading >= 100>> - <<set $personalAttention = "business">> - You are now a @@.green;master venture capitalist.@@ - <</if>> - <</if>> - -<<elseif ($personalAttention == "warfare")>> - <<set _oldSkill = $PC.warfare>> - <<set $PC.warfare += random(5,10)>> - <<if _oldSkill <= 10>> - <<if $PC.warfare > 10>> - You now have @@.green;basic knowledge@@ about how to be a mercenary. - <</if>> - <<elseif _oldSkill <= 30>> - <<if $PC.warfare > 30>> - You now have @@.green;some skill@@ as a mercenary. - <</if>> - <<elseif _oldSkill <= 60>> - <<if $PC.warfare > 60>> - You are now an @@.green;expert mercenary.@@ - <</if>> - <<else>> - <<if $PC.warfare >= 100>> - <<set $personalAttention = "business">> - You are now a @@.green;master mercenary.@@ - <</if>> - <</if>> - -<<elseif ($personalAttention == "slaving")>> - <<set _oldSkill = $PC.slaving>> - <<set $PC.slaving += random(5,10)>> - <<if _oldSkill <= 10>> - <<if $PC.slaving > 10>> - You now have @@.green;basic knowledge@@ about how to be a slaver. - <</if>> - <<elseif _oldSkill <= 30>> - <<if $PC.slaving > 30>> - You now have @@.green;some skill@@ as a slaver. - <</if>> - <<elseif _oldSkill <= 60>> - <<if $PC.slaving > 60>> - You are now an @@.green;expert slaver.@@ - <</if>> - <<else>> - <<if $PC.slaving >= 100>> - <<set $personalAttention = "business">> - You are now a @@.green;master slaver.@@ - <</if>> - <</if>> - -<<elseif ($personalAttention == "engineering")>> - <<set _oldSkill = $PC.engineering>> - <<set $PC.engineering += random(5,10)>> - <<if _oldSkill <= 10>> - <<if $PC.engineering > 10>> - You now have @@.green;basic knowledge@@ about how to be an arcology engineer. - <</if>> - <<elseif _oldSkill <= 30>> - <<if $PC.engineering > 30>> - You now have @@.green;some skill@@ as an arcology engineer. - <</if>> - <<elseif _oldSkill <= 60>> - <<if $PC.engineering > 60>> - You are now an @@.green;expert arcology engineer.@@ - <</if>> - <<else>> - <<if $PC.engineering >= 100>> - <<set $personalAttention = "business">> - You are now a @@.green;master arcology engineer.@@ - <</if>> - <</if>> - -<<elseif ($personalAttention == "medicine")>> - <<set _oldSkill = $PC.medicine>> - <<set $PC.medicine += random(5,10)>> - <<if _oldSkill <= 10>> - <<if $PC.medicine > 10>> - You now have @@.green;basic knowledge@@ about how to be a slave surgeon. - <</if>> - <<elseif _oldSkill <= 30>> - <<if $PC.medicine > 30>> - You now have @@.green;some skill@@ as a slave surgeon. - <</if>> - <<elseif _oldSkill <= 60>> - <<if $PC.medicine > 60>> - You are now an @@.green;expert slave surgeon.@@ - <</if>> - <<else>> - <<if $PC.medicine >= 100>> - <<set $personalAttention = "business">> - You are now a @@.green;master slave surgeon.@@ - <</if>> - <</if>> - -<</if>> - -<<if $cash > 1000>> -<<if $CashForRep == 1>> - This week you gave up business opportunities worth ¤$policyCost to help deserving citizens, @@.green;burnishing your reputation.@@ - <<set $rep += 100, $cash -= $policyCost>> -<</if>> -<</if>> -<<if $rep > 100>> -<<if $RepForCash == 1>> - This week you used your position to secure business opportunities worth ¤$policyCost at the expense of citizens, @@.red;damaging your reputation.@@ - <<set $rep -= 100, $cash += $policyCost>> -<</if>> -<</if>> -<<if $rep <= 18000>> -<<if $rep > 100>> -<<if $RegularParties != 1>> - Your @@.red;reputation is damaged@@ by your not hosting regular social events for your leading citizens. - <<set $rep -= 100>> -<</if>> -<</if>> -<</if>> - -Routine upkeep of your demesne costs @@.yellow;¤$costs.@@ -<<if $plot == 1>> -<<if $week > 10>> -<<if $weatherToday.severity-$weatherCladding > 2>> - <<set $weatherAwareness = 1>> - <<if $weatherCladding == 1>> - <<set $seed = Math.trunc((($weatherToday.severity-3)*($arcologies[0].prosperity*random(50,100)))+random(1,100))>> - $arcologies[0].name's hardened exterior only partially resisted the extreme weather this week, and it requires repairs costing @@.yellow;¤$seed.@@ Your citizens are @@.green;grateful@@ to you for upgrading $arcologies[0].name to provide a safe haven from the terrible climate. - <<set $rep += 100>> - <<elseif $weatherCladding == 2>> - <<set $seed to Math.trunc((($weatherToday.severity-4)*($arcologies[0].prosperity*random(50,100)))+random(1,100))>> - $arcologies[0].name's hardened exterior only partially resisted the extreme weather this week, and it requires repairs costing @@.yellow;¤$seed.@@ Your citizens are @@.green;grateful@@ to you for upgrading $arcologies[0].name to provide a safe haven from the terrible climate. - <<set $rep += 100>> - <<else>> - <<set $seed = Math.trunc((($weatherToday.severity-2)*($arcologies[0].prosperity*random(50,100)))+random(1,100))>> - Severe weather damaged the arcology this week, requiring repairs costing @@.yellow;¤$seed.@@ Your citizens are @@.red;unhappy@@ that the arcology has proven vulnerable to the terrible climate. - <<set $rep -= 100>> - <</if>> - <<if $cash > 0>> - <<set $cash -= $seed>> - <<elseif $arcologies[0].FSRestartDecoration == 100>> - Since you lack the resources to effect prompt repairs yourself, the Societal Elite cover for you. The arcology's prosperity is @@.red;is damaged@@, but your public rep is left intact. The Societal Elite @@.red;are troubled by your failure@@. - <<if $arcologies[0].prosperity > 50>> - <<set $arcologies[0].prosperity -= random(5,10)>> - <</if>> - <<set $failedElite += 100>> - <<set $cash -= Math.trunc($seed/4)>> - <<else>> - Since you lack the resources to effect prompt repairs yourself, prominent citizens step in to repair their own parts of the arcology. This is @@.red;terrible for your reputation,@@ and it also @@.red;severely reduces the arcology's prosperity.@@ - <<if $arcologies[0].prosperity > 50>> - <<set $arcologies[0].prosperity -= random(5,10)>> - <</if>> - <<set $rep = Math.trunc($rep*0.8)>> - <<set $cash -= Math.trunc($seed/4)>> - <</if>> -<<elseif $weatherToday.severity-$weatherCladding == 2>> - <<if $weatherCladding == 1>> - <<set $weatherAwareness = 1>> - The arcology's hardened exterior resisted severe weather this week. Your citizens are @@.green;grateful@@ to you for maintaining the arcology as a safe haven from the terrible climate. - <<set $rep += 100>> - <</if>> -<</if>> -<</if>> -<</if>> -<<set $cash -= $costs>> - -<br> - -<<set $seed = random(1,100)>> -<<if $arcologies[0].FSRomanRevivalist > random(1,150)>> - <<if $slaveCostFactor > 0.6>> - @@.yellow;Your Roman Revivalism is having an effect on the slave market and has driven local prices down@@ by convincing slave traders that this is a staunchly pro-slavery area.<br> - <<set $slaveCostFactor -= 0.1>> - <<else>> - @@.yellow;Your Roman Revivalism is having an effect on the slave market and is holding local prices down@@ by convincing slave traders that this is a staunchly pro-slavery area.<br> - <</if>> -<<elseif ($slaveCostFactor > 1.3)>> - @@.yellow;Natural market forces drive the very high price of slaves down.@@<br> - <<set $slaveCostFactor -= 0.2>> -<<elseif ($slaveCostFactor < 0.7)>> - @@.yellow;Natural market forces drive the very low price of slaves up.@@<br> - <<set $slaveCostFactor += 0.2>> -<<elseif ($seed > 30)>> - <<if ($slaveCostFactor > 1)>> - @@.yellow;Natural market forces drive the high price of slaves slowly down.@@<br> - <<set $slaveCostFactor -= 0.1>> - <<elseif ($slaveCostFactor < 1)>> - @@.yellow;Natural market forces drive the low price of slaves slowly up.@@<br> - <<set $slaveCostFactor += 0.1>> - <<else>> - <<if $seed > 80>> - @@.yellow;The price of slaves has naturally risen slightly.@@<br> - <<set $slaveCostFactor += 0.1>> - <<elseif $seed > 60>> - @@.yellow;The price of slaves has naturally fallen slightly.@@<br> - <<set $slaveCostFactor -= 0.1>> - <</if>> - <</if>> -<</if>> - -<<if $menialDemandFactor != 0>> -<<if Math.abs($menialDemandFactor) > 100>> -<<if ($menialDemandFactor > 1000) && ($slaveCostFactor <= 1.2)>> - Your dealings in menial slaves have had a major impact on the slave market, @@.yellow;greatly increasing slave prices.@@ - <<set $menialDemandFactor = 0>> - <<set $slaveCostFactor += 0.3>> - <br><br> -<<elseif ($menialDemandFactor > 500) && ($slaveCostFactor <= 1.3)>> - Your dealings in menial slaves have had a noticeable impact on the slave market, @@.yellow;significantly increasing slave prices.@@ - <<set $menialDemandFactor = 0>> - <<set $slaveCostFactor += 0.2>> - <br><br> -<<elseif ($menialDemandFactor > 250) && ($slaveCostFactor <= 1.4)>> - Your dealings in menial slaves have had a minor impact on the slave market, @@.yellow;slightly increasing slave prices.@@ - <<set $menialDemandFactor = 0>> - <<set $slaveCostFactor += 0.1>> - <br><br> -<<elseif ($menialDemandFactor < -1000) && ($slaveCostFactor >= 0.8)>> - Your dealings in menial slaves have had a major impact on the slave market, @@.yellow;greatly reducing slave prices.@@ - <<set $menialDemandFactor = 0>> - <<set $slaveCostFactor -= 0.3>> - <br><br> -<<elseif ($menialDemandFactor < -500) && ($slaveCostFactor >= 0.7)>> - Your dealings in menial slaves have had a noticeable impact on the slave market, @@.yellow;significantly reducing slave prices.@@ - <<set $menialDemandFactor = 0>> - <<set $slaveCostFactor -= 0.2>> - <br><br> -<<elseif ($menialDemandFactor < -250) && ($slaveCostFactor >= 0.6)>> - Your dealings in menial slaves have had a minor impact on the slave market, @@.yellow;slightly reducing slave prices.@@ - <<set $menialDemandFactor = 0>> - <<set $slaveCostFactor -= 0.1>> - <br><br> -<</if>> -<</if>> -<</if>> - -<<if $corpAnnounced == 1>> - <br> - <<if $corpIncorporated == 0>> - <span id="incorporate"> - You have not yet committed funds to create a publicly traded slave trading corporation. <<link "Lay the groundwork for incorporation">><<set $corpIncorporated = 1>><<set $sharePrice = 20>><<set $oldSharePrice = $sharePrice>><<set $personalShares = 2000>><<set $cash -= 30000>><<set $publicShares = 1000>><<set $corpCash = 20000>><<set $generalAssets = 500>><<set $slaveAssets = 1000>><<set $entrapmentAssets = 500>><<set $captureAssets = 500>><<set $trainingAssets = 500>><<set $surgicalAssets = 500>><<set $drugAssets = 500>><<replace "#incorporate">><<print "The groundwork has been laid for the incorporation of a publicly traded slave trading concern. The IPO will involve 1000 shares at ¤20/share.">><</replace>><</link>> //Costs ¤30000// - </span> - <<else>> - <<include "Corporation Developments">> - <</if>> - <br> -<</if>> - -<<if $securityForceActive == 1>> - <<include "Security Force EOW Report">> -<</if>> - -<br> - -__Reputation__ -<br> - -<<PCTitle>> - -On formal occasions, you are announced as $PCTitle. - -<<if $arcologies[0].FSChattelReligionist != "unset">> -<<if $arcologies[0].FSChattelReligionistCreed == 1>> - $arcologies[0].name keeps the creed of the $nicaeaName. The faithful - <<if $nicaeaAchievement == "slaves">> - <<if $slaves.length > 50>> - @@.green;strongly approve@@ of the large - <<FSChange "ChattelReligionist" 5>> - <<elseif $slaves.length > 20>> - @@.green;approve@@ of the good - <<FSChange "ChattelReligionist" 2>> - <<elseif $slaves.length > 20>> - are not impressed by the - <</if>> - number of people you're giving the honor of sexual servitude. - <<elseif $nicaeaAchievement == "devotion">> - <<if $averageDevotion > 80>> - @@.green;strongly approve@@ of the worshipfulness - <<FSChange "ChattelReligionist" 5>> - <<elseif $averageDevotion > 50>> - @@.green;approve@@ of the devotion - <<FSChange "ChattelReligionist" 2>> - <<elseif $slaves.length > 20>> - are not impressed by the devotion - <</if>> - of your slaves. - <<else>> - <<if $averageTrust > 50>> - @@.green;strongly approve@@ of the great trust your slaves place in you. - <<FSChange "ChattelReligionist" 5>> - <<elseif $averageTrust > 20>> - @@.green;approve@@ of the trust your slaves place in you. - <<FSChange "ChattelReligionist" 2>> - <<elseif $slaves.length > 20>> - are not impressed by fear many of your slaves feel towards you. - <</if>> - <</if>> -<</if>> -<</if>> - -<<set $repDecay = 0.2>> -<<if $arcologies[0].FSChattelReligionistLaw == 1>> - <<set $repLoss = 0>> - Since you are the Prophet, your reputation no longer degrades at all. -<<elseif $arcologies[0].FSRestartDecoration == 100>> - <<set $repLoss = 0>> - Since you are an established member of the Societal Elite, your public reputation no longer decays. -<<elseif $rep > $enduringRep>> - <<if $arcologies[0].FSMaturityPreferentialistLaw == 1>> - <<if $PC.actualAge >= 65>> - Since you're getting on in years and have an impressive list of accomplishments, and $arcologies[0].name's society respects age, your reputation degrades quite slowly. - <<set $repLoss = Math.trunc(($rep-$enduringRep)*($repDecay-0.025))>> - <<elseif $PC.actualAge >= 50>> - Since you're well into middle age and have an impressive list of accomplishments, and $arcologies[0].name's society respects age, your reputation degrades quite slowly. - <<set $repLoss = Math.trunc(($rep-$enduringRep)*($repDecay-0.025))>> - <<elseif $PC.actualAge < 35>> - Since you're unusually young for an arcology owner, and $arcologies[0].name's society respects age, your reputation degrades quite quickly. - <<set $repLoss = Math.trunc(($rep-$enduringRep)*($repDecay+0.025))>> - <<else>> - Since you're only entering middle age, and $arcologies[0].name's society respects age, your reputation degrades fairly quickly. - <<set $repLoss = Math.trunc(($rep-$enduringRep)*($repDecay))>> - <</if>> - <<elseif $arcologies[0].FSYouthPreferentialistLaw == 1>> - <<if $PC.actualAge >= 65>> - Since you're getting on in years and have an impressive list of accomplishments, but $arcologies[0].name's society is coming to prefer youth to experience, so your reputation degrades fairly quickly. - <<set $repLoss = Math.trunc(($rep-$enduringRep)*($repDecay-0.025))>> - <<elseif $PC.actualAge >= 50>> - You're well into middle age and have an impressive list of accomplishments, but $arcologies[0].name's society is coming to prefer youth to experience, so your reputation degrades fairly quickly. - <<set $repLoss = Math.trunc(($rep-$enduringRep)*($repDecay+0.025))>> - <<elseif $PC.actualAge < 35>> - You're unusually young for an arcology owner, but $arcologies[0].name's society doesn't mind. - <<set $repLoss = Math.trunc(($rep-$enduringRep)*($repDecay))>> - <<else>> - Since you're entering middle age, and $arcologies[0].name's society respects youth, your reputation degrades fairly quickly. - <<set $repLoss = Math.trunc(($rep-$enduringRep)*($repDecay+0.025))>> - <</if>> - <<else>> - <<if $PC.actualAge >= 65>> - Since you're getting on in years and have an impressive list of accomplishments, and $arcologies[0].name's society respects age, your reputation degrades quite slowly. - <<set $repLoss = Math.trunc(($rep-$enduringRep)*($repDecay-0.025))>> - <<elseif $PC.actualAge >= 50>> - Since you're well into middle age and have an impressive list of accomplishments, your reputation degrades fairly slowly. - <<set $repLoss = Math.trunc(($rep-$enduringRep)*($repDecay-0.025))>> - <<elseif $PC.actualAge < 35>> - Since you're unusually young for an arcology owner, your reputation degrades fairly quickly. - <<set $repLoss = Math.trunc(($rep-$enduringRep)*($repDecay+0.025))>> - <<else>> - <<set $repLoss = Math.trunc(($rep-$enduringRep)*($repDecay))>> - <</if>> - <</if>> - <<if $enduringRep > 8000>> - However, you have been a figure of renown for so long that much of your reputation has become permanent. - <<elseif $enduringRep > 5000>> - However, you have been a figure of repute for enough time that part of your reputation has become permanent. - <<elseif $enduringRep > 2000>> - However, you have been a figure of regard for long enough that some of your reputation has become permanent. - <</if>> - <<set $enduringRep += Math.trunc($repLoss*0.025)>> -<<else>> - <<set $repLoss = 0>> - <<if $enduringRep > 8000>> - You have been a figure of renown for so long that your reputation does not decay past its present level. - <<elseif $enduringRep > 5000>> - You have been a figure of repute for enough time that your reputation does not decay past its present level. - <<elseif $enduringRep > 2000>> - You have been a figure of regard for long enough that your reputation does not decay past its present level. - <</if>> -<</if>> - -<<if ($weatherAwareness == 0) && ($weatherCladding == 2)>> - The public @@.green;is awestruck@@ of the beautiful weather hardening you have applied to the arcology's exterior, though they do not understand why you would waste so much money first ruining your arcology's appearance before doing this. - <<set $rep += 10>> -<<elseif ($weatherAwareness == 0) && ($weatherCladding == 1)>> - The public @@.red;disapproves@@ of the ugly weather hardening you have applied to the arcology's exterior, not understanding what you're worried about. - <<set $rep -= 100>> -<</if>> - -<<if $arcologies[0].FSRestartDecoration == 100>> - As a member of the societal elite, your appearance has no bearing on your reputation. -<<else>> -<<if ($PC.dick == 0) && ($PC.boobs == 1)>> - <<if $rep > 18000>> - Your reputation is so well-established that society has accepted your notoriously feminine appearance despite how unusual it is for a prominent slaveowner to look like you do. - <<if $arcologies[0].FSGenderRadicalist > 30>> - Indeed, society sees you as entirely male, since you are powerful, and @@.green;strongly approves@@ of your nonconformity; this advances the redefinition of gender around power. - <<FSChange "GenderRadicalist" 5>> - <<elseif $arcologies[0].FSGenderFundamentalist > 30>> - Indeed, society has been reconciled to female leadership, preferring to see you as a mother figure. - <</if>> - <<elseif $arcologies[0].FSGenderRadicalist > 40>> - Society accepts you as an arcology owner, since it has become open-minded about power and gender. - <<if $arcologies[0].FSGenderRadicalist > 50>> - Indeed, society sees you as fundamentally male, since you are powerful, and @@.green;strongly approves@@ of your audacity; this advances the redefinition of gender around power. - <<FSChange "GenderRadicalist" 5>> - <</if>> - <<else>> - Most prominent slaveowners are male, and your obviously feminine appearance makes it @@.red;harder for you to maintain your reputation.@@ - <<set $repLoss += Math.trunc($rep*0.05)>> - <<if $arcologies[0].FSGenderFundamentalist > 10>> - Society @@.red;strongly resents@@ your being an arcology owner; this damages the idea that women should not be in positions of responsibility. - <<FSChange "GenderFundamentalist" -5>> - <</if>> - <</if>> -<<elseif ($PC.boobs == 1)>> - <<if $rep > 15000>> - Your reputation is so strong that society has accepted your feminine appearance despite how unusual it is for a prominent slaveowner to look like you do. - <<if $arcologies[0].FSGenderRadicalist > 30>> - Indeed, society sees you as entirely male, since you are powerful, and @@.green;strongly approves@@ of your nonconformity; this advances the redefinition of gender around power. - <<FSChange "GenderRadicalist" 5>> - <<elseif $arcologies[0].FSGenderFundamentalist > 30>> - Indeed, society has been reconciled to your feminine appearance, seeing you as a person apart. - <</if>> - <<elseif $arcologies[0].FSGenderRadicalist > 20>> - Society accepts you as an arcology owner, since it has become open-minded anyone who has a cock and fucks. - <<if $arcologies[0].FSGenderRadicalist > 30>> - Indeed, society sees you as dominant, since you fuck bitches, and @@.green;strongly approves@@ of your nonconformity; this advances the redefinition of gender around power. - <<FSChange "GenderRadicalist" 5>> - <</if>> - <<else>> - Most prominent slaveowners are very masculine, and your feminine appearance makes it @@.red;harder for you to maintain your reputation.@@ - <<set $repLoss += Math.trunc($rep*0.03)>> - <<if $arcologies[0].FSGenderFundamentalist > 30>> - Society @@.red;strongly resents@@ your being an arcology owner; this damages the idea that feminine people should not be in positions of responsibility. - <<FSChange "GenderFundamentalist" -5>> - <</if>> - <</if>> -<<elseif ($PC.dick == 0) || ($PC.vagina == 1)>> - <<if $rep > 15000>> - Your reputation is so strong that society has accepted your unorthodox arrangement downstairs, for an arcology owner. - <<if $arcologies[0].FSGenderRadicalist > 30>> - Indeed, society sees you as entirely male, since you are powerful, and @@.green;strongly approves@@ of your nonconformity; this advances the redefinition of gender around power. - <<FSChange "GenderRadicalist" 5>> - <<elseif $arcologies[0].FSGenderFundamentalist > 30>> - Indeed, society has been reconciled to your strangeness, seeing you as a person apart. - <</if>> - <<elseif $arcologies[0].FSGenderRadicalist > 20>> - Society accepts you as an arcology owner, since it has become open-minded about the exact genital layout of powerful people. - <<if $arcologies[0].FSGenderRadicalist > 30>> - Indeed, society sees you as dominant, since you are powerful, and @@.green;strongly approves@@ of your nonconformity; this advances the redefinition of gender around power. - <<FSChange "GenderRadicalist" 5>> - <</if>> - <<else>> - Most prominent slaveowners are very masculine, and though your unorthodox arrangement downstairs isn't obvious when you're clothed, the rumors are unavoidable and it's @@.red;harder for you to maintain your reputation.@@ - <<set $repLoss += Math.trunc($rep*0.03)>> - <<if $arcologies[0].FSGenderFundamentalist > 30>> - Society @@.red;strongly resents@@ your being an arcology owner; this damages the idea that people who are not men should not be in positions of responsibility. - <<FSChange "GenderFundamentalist" -5>> - <</if>> - <</if>> -<</if>> -<</if>> - -<<if $arcologies[0].FSSupremacist != "unset">> - <<if ($PC.race == $arcologies[0].FSSupremacistRace)>> - Since you are a member of the $PC.race, society @@.green;strongly approves@@ of your ownership of the arcology. - <<FSChange "Supremacist" 5>> - <</if>> -<<elseif $arcologies[0].FSSubjugationist != "unset">> - <<if ($PC.race == $arcologies[0].FSSubjugationistRace)>> - <<if $rep > 15000>> - Your reputation is so strong that society has accepted your <<print $PC.race>>ness despite you being an inferior race. - <<else>> - Society @@.red;loathes;@@ being lead by an inferior $PC.race, believeing that any other race would make a far better leader than you. - <<set $rep -= 200*($arcologies[0].FSSubjugationist/$FSLockinLevel)>> - <</if>> - <</if>> -<</if>> - -<<if $arcologies[0].FSAssetExpansionist != "unset">> - <<if $PC.boobsBonus == 3>> - Society loves enormous breasts and you are no exception; your <<if $PC.boobsImplant == 1>>chest balloons<<else>>cow tits<</if>> @@.green;improve@@ your public image. - <<set $rep += 10>> - <</if>> - <<if $PC.butt == 3>> - Society loves big butts and you are no exception; your <<if $PC.buttImplant == 1>>inflated ass<<else>>fat ass<</if>> @@.green;improves@@ your public image. - <<set $rep += 10>> - <</if>> - <<if $PC.ballsImplant > 1>> - Society loves big things and the bulge in your crotch is no exception; your swollen balls @@.green;improve@@ your public image. - <<set $rep += (5*$PC.ballsImplant)>> - <</if>> -<<elseif $arcologies[0].FSSlimnessEnthusiast != "unset">> - <<if $PC.boobsBonus > 1>> - Society finds big breasts unsightly and you are no exception; your <<if $PC.boobsImplant == 1>>chest balloons<<else>>fat tits<</if>> @@.red;harm@@ your public image. - <<set $rep -= (10*$PC.boobsBonus)>> - <</if>> - <<if $PC.butt == 3>> - Society finds big butts unsightly and you are no exception; your <<if $PC.buttImplant == 1>>inflated ass<<else>>fat ass<</if>> @@.red;harms@@ your public image. - <<set $rep -= (10*$PC.butt)>> - <</if>> -<</if>> - -<<if $arcologies[0].FSTransformationFetishist != "unset">> - <<if $PC.boobsImplant == 1>> - Society loves fake breasts and yours are no exception; your breast implants @@.green;improve@@ your public image. - <<set $rep += (7*$PC.boobsBonus)>> - <</if>> - <<if $PC.buttImplant == 1>> - Society loves fake butts and yours are no exception; your ass implants @@.green;improve@@ your public image. - <<set $rep += (7*$PC.butt)>> - <</if>> - <<if $PC.ballsImplant > 1>> - Society loves everything augmented and the bulge in your crotch is no exception; your swollen balls @@.green;improve@@ your public image. - <<set $rep += (5*$PC.ballsImplant)>> - <</if>> -<<elseif $arcologies[0].FSBodyPurist != "unset">> - <<if $PC.boobsImplant == 1>> - Society finds fake breasts repuslive and yours are no exception; your balloon-like breasts @@.red;harm@@ your public image. - <<set $rep -= (10*$PC.boobsBonus)>> - <</if>> - <<if $PC.butt == 3>> - Society finds fake butts unsightly and yours is no exception; your inflated ass @@.red;harms@@ your public image. - <<set $rep -= (10*$PC.butt)>> - <</if>> - <<if $PC.ballsImplant > 1>> - Society finds everything unnatural disgusting and the grotesque bulge in your crotch is no exception; your gel filled balls @@.red;harm@@ your public image. - <<set $rep -= (10*$PC.ballsImplant)>> - <</if>> -<</if>> - -<<if ($PC.preg >= 20) || ($PC.career == "escort" && $PC.preg >= 16)>> - <<if $arcologies[0].FSRestart != "unset">> - <<if $arcologies[0].FSRestartDecoration == 100>> - <<if $PC.pregSource != -1>> - Most prominent female owners avoid being penetrated on principle; your fecund figure exposes not only your willingness to be penetrated, but your breach of eugenics. Your citizens are @@.red;livid@@ over your actions and are calling for your removal. - <<set $rep -= 500>> - <<set $failedElite += 100>> - <<else>> - Since it is public knowledge that you are carrying a child in the name of eugenics; society views you as a bearer of the future and @@.green;celebrates@@ your contributions to society. - <<set $rep += 200>> - <<set $failedElite -= 10>> - <</if>> - <<else>> - Most prominent female owners avoid being penetrated on principle; your fecund figure exposes not only your willingness to be penetrated, but your breach of the eugenics you are pushing for. Your citizens are @@.red;disgusted@@ by both your body and your lack of commitment. - <<set $rep -= 500>> - <<set $failedElite += 50>> - <</if>> - <<elseif $arcologies[0].FSRepopulationFocus >= 60>> - Most prominent female owners avoid being penetrated on principle, but your arcology values motherhood so much that it is more @@.green;pleased@@ with your dedication than it is disappointed in your penetration. - <<set $rep += 10>> - <<else>> - Most prominent female owners avoid being penetrated on principle; your fecund figure exposes your willingness to be penetrated, making it @@.red;harder for you to maintain your reputation.@@ - <<set $rep -= 200>> - <</if>> -<</if>> - -<<if $PC.career == "escort" && $rep < 16000>> - Society @@.red;frowns@@ over being run by an ex-whore. The presence of porn of you on the net doesn't aid your reputation either. - <<set $rep -= ($rep*0.1)>> -<<elseif $PC.career == "escort">> - Your reputation is so strong that society has accepted your previous endeavors despite how unusual it is for a prominent slaveowner to have once nearly been a slave. -<</if>> -<<if $PC.career == "servant" && $rep < 12000>> - Society @@.red;frowns@@ over being run by an ex-<<if $PC.title == 1>>butler<<else>>maid<</if>>, despite how prominent their previous owner was. - <<set $rep -= ($rep*0.1)>> -<<elseif $PC.career == "servant">> - Your reputation is so strong that society has accepted your previous vocation despite how unusual it is for a prominent slaveowner to have once been nothing more than a lowly servant. -<</if>> -<<if $PC.career == "gang" && $rep < 15000>> - Society @@.red;frowns@@ over being run by an ex-gang leader, no matter how strong they might have been. - <<set $rep -= ($rep*0.1)>> -<<elseif $PC.career == "gang">> - Your reputation is strong enough that society has come to accept your background as part of your image. -<</if>> - -<<if $arcologies[0].FSRomanRevivalist != "unset">> - <<if $mercenaries > 0>> - Society @@.green;approves@@ of how you are providing for the defense of the state, as should all citizens of the new Rome. - <<FSChange "RomanRevivalist" $mercenaries>> - <</if>> - <<if ($slaves.length > 20) && ($cash > 50000)>> - Society @@.green;strongly approves@@ of your wealth and prosperity, fit goals for the <<if def $PC.customTitle>>$PC.customTitle<<elseif $PC.title == 1>>new Roman man<<else>>rising Roman lady<</if>>. - <<FSChange "RomanRevivalist" 5>> - <</if>> - <<if $language != "Latin">> - Continuing to use $language as the lingua franca of $arcologies[0].name rather than the storied Latin @@.red;disappoints@@ society and causes doubt about your revivalist project. - <<FSChange "RomanRevivalist" -2>> - <</if>> -<<elseif $arcologies[0].FSEgyptianRevivalist != "unset">> - <<if $racialVarieties.length > 4>> - Society @@.green;strongly approves@@ of how you own a cornucopia of different races, which advances the ancient Egyptian ideal of cosmopolitan sex slavery. - <<FSChange "EgyptianRevivalist" 5>> - <</if>> - <<if $language != "Ancient Egyptian">> - Continuing to use $language as the lingua franca of $arcologies[0].name rather than revived Ancient Egyptian @@.red;disappoints@@ society and causes doubt about your revivalist project. - <<FSChange "EgyptianRevivalist" -2>> - <</if>> -<<elseif $arcologies[0].FSEdoRevivalist != "unset">> - <<set $seed = Math.trunc($rep/5000)>> - <<if $publicServants < $seed>> - Society @@.red;disapproves@@ of your failure to provide for cultural development by offering public servants or club slaves in a number that befits your reputation. - <<FSChange "EdoRevivalist" -2>> - <<elseif $publicServants > $seed>> - Society @@.green;approves@@ of your provision for cultural development by offering public servants and club slaves in a number that befits your reputation. - <<FSChange "EdoRevivalist" 2>> - <</if>> - <<if $language != "Japanese">> - Continuing to use $language as the lingua franca of $arcologies[0].name rather than pure Japanese @@.red;disappoints@@ society and causes doubt about your revivalist project. - <<FSChange "EdoRevivalist" -2>> - <</if>> -<<elseif $arcologies[0].FSArabianRevivalist != "unset">> - <<if $fuckSlaves < $rep/3500>> - Society @@.red;disapproves@@ of the small size of your harem, feeling that you do not have enough fucktoys or slaves in your master suite for your reputation. - <<FSChange "ArabianRevivalist" -2>> - <<else>> - Society @@.green;approves@@ of the size of your harem, feeling that you have a good number of fucktoys and slaves in your master suite for your reputation. - <<FSChange "ArabianRevivalist" 2>> - <</if>> - <<if $language != "Arabic">> - Continuing to use $language as the lingua franca of $arcologies[0].name rather than the Arabic in which the word of God was passed to Muhammad @@.red;disappoints@@ society and causes doubt about your revivalist project. - <<FSChange "ArabianRevivalist" -2>> - <</if>> -<<elseif $arcologies[0].FSChineseRevivalist != "unset">> - <<if $HeadGirl == 0>> - Society @@.red;disapproves@@ of your failure to rely on a Head Girl, as proper imperial administration requires, - <<FSChange "ChineseRevivalist" -2>> - <<else>> - Society @@.green;approves@@ of your reliance on a Head Girl, as proper imperial administration requires, - <<FSChange "ChineseRevivalist" 2>> - <</if>> - <<if $Recruiter == 0>> - @@.red;disapproves@@ of your failure to maintain a Recruiter to expand the Middle Kingdom, - <<FSChange "ChineseRevivalist" -2>> - <<else>> - @@.green;approves@@ of your maintaining a Recruiter to expand the Middle Kingdom, - <<FSChange "ChineseRevivalist" 2>> - <</if>> - <<if $Bodyguard == 0>> - and @@.red;disapproves@@ of your failure to keep a Bodyguard as befits a proper imperial palace. - <<FSChange "ChineseRevivalist" -2>> - <<else>> - and @@.green;approves@@ of your keeping a Bodyguard, as befits a proper imperial palace. - <<FSChange "ChineseRevivalist" 2>> - <</if>> - <<if $language != "Chinese">> - Continuing to use $language as the lingua franca of $arcologies[0].name rather than the Chinese of the Middle Kingdom @@.red;disappoints@@ society and causes doubt about your revivalist project. - <<FSChange "ChineseRevivalist" -2>> - <</if>> -<</if>> - -<<if ($arcologies[0].FSRepopulationFocus != "unset")>> - <<if $IntelligenceEugenicsSMR == 1 || $HeightEugenicsSMR == 1 || $FaceEugenicsSMR == 1>> - Society @@.red;disapproves@@ of your policies sterilizing potential mothers. Your insistence on eugenics hinders adoption of your new society. - <<set _noEugenics = -1*($IntelligenceEugenicsSMR+$HeightEugenicsSMR+$FaceEugenicsSMR)>> - <<FSChange "Repopulationist" _noEugenics>> - <</if>> -<<elseif ($arcologies[0].FSRestart != "unset")>> - <<if ($IntelligenceEugenicsSMR == 1 || $HeightEugenicsSMR == 1 || $FaceEugenicsSMR == 1) && $arcologies[0].FSRestartSMR != 1>> - Society @@.green; approves@@ of your slave eugenics policies, easing them into more thorough eugenics. - <<set _yesEugenics = ($IntelligenceEugenicsSMR+$HeightEugenicsSMR+$FaceEugenicsSMR)>> - <<FSChange "Eugenics" _yesEugenics>> - <<set $failedElite -= 1*($IntelligenceEugenicsSMR+$HeightEugenicsSMR+$FaceEugenicsSMR)>> - <<elseif $arcologies[0].FSRestartSMR == 1>> - <<set $failedElite -= 2*($IntelligenceEugenicsSMR+$HeightEugenicsSMR+$FaceEugenicsSMR)>> - <</if>> -<</if>> - -<<if ($arcologies[0].FSRepopulationFocus != "unset") && ($birthsTotal > 0)>> - The number of children you've bought into the world @@.green;pleases@@ your citizens. - <<if $birthsTotal < 1000>> - <<set $rep += $birthsTotal>> - <<else>> - <<set $rep += 1000>> - <</if>> -<</if>> - -<<if $shelterAbuse > 5>> - <<if $arcologies[0].FSPaternalist != "unset">> - You are on the Slave Shelter's public list of abusive slaveowners. Society @@.red;disapproves@@ of your falling foul of such a well regarded charity. - <<FSChange "Paternalist" -2>> - <<elseif $arcologies[0].FSDegradationist != "unset">> - You are on the Slave Shelter's public list of abusive slaveowners. Your citizens find this hilarious, and @@.green;approve@@ of your taking advantage of a pack of idiots. - <<FSChange "Degradationist" 2>> - <</if>> -<</if>> - -<<if $Cash4Babies == 1>> - <<if $arcologies[0].FSDegradationist != "unset">> - Society @@.green;approves@@ of your poor treatment of slave infants. - <<set $rep += 5*$FSSingleSlaveRep*($arcologies[0].FSDegradationist/$FSLockinLevel)>> - <<elseif $arcologies[0].FSRestart != "unset">> - <<elseif $arcologies[0].FSPaternalist != "unset">> - Society @@.red;greatly despises@@ your poor treatment of slave infants. - <<set $rep -= (25*$FSSingleSlaveRep*($arcologies[0].FSPaternalist/$FSLockinLevel))+($rep/20)>> - <<elseif $arcologies[0].FSRepopulationFocus != "unset">> - Society @@.red;disapproves@@ of your poor treatment of your future population, holding back acceptance of your new society. - <<set $arcologies[0].FSRepopulationFocus -= 0.05*$FSSingleSlaveRep>> - <<set $rep -= (5*$FSSingleSlaveRep*($arcologies[0].FSRepopulationFocus/$FSLockinLevel))+($rep/20)>> - <<else>> - Your citizens @@.red;disapprove@@ of your poor treatment of slave children. - <<set $rep -= ($rep/20)>> - <</if>> -<</if>> - -<<if $MixedMarriage == 1>> - Your citizens - <<if $arcologies[0].FSPaternalist >= 80>> - are so paternalistic that they @@.green;approve@@ of - <<FSChange "Paternalist" 2>> - <<elseif $arcologies[0].FSPaternalist >= 40>> - are paternalistic enough to tolerate - <<else>> - @@.red;disapprove@@ of - <<set $rep -= 50>> - <</if>> - your support for marriage between citizens and slaves. -<</if>> - -<<if $arcologies[0].FSNull != "unset">> - Your cultural openness @@.green;helps your reputation,@@ since few citizens have disputes with your permissive approach. - <<set $rep += 50*$FSSingleSlaveRep*($arcologies[0].FSNull/$FSLockinLevel)>> -<</if>> - -<<if $arcologies[0].FSRestartLaw == 1>> - Your laws requiring the non-elite to pay additional taxes or be sterilized @@.red;agitates@@ some of your citizens, but they don't matter. Only your @@.green;pleased@@ elite do. - <<set $rep -= 100>> - <<set $failedElite -= 1>> -<</if>> - -<<if $FrigiditySMR == 1>> - Your market regulations regarding slave sex drives @@.red;outrages@@ your citizens seeking sex slaves, since only slaves disinterested in sex are available. - <<set $rep -= 250>> -<</if>> - -<<if $PC.degeneracy > 0>> - <<if $PC.degeneracy > 100>> - There are @@.red;severe and devastating rumors@@ about you spreading across the arcology. - <<set $rep -= 100*$PC.degeneracy>> - <<elseif $PC.degeneracy > 75>> - There are @@.red;severe rumors@@ about you spreading across the arcology. - <<set $rep -= 10*($PC.degeneracy*2)>> - <<elseif $PC.degeneracy > 50>> - There are @@.red;bad rumors@@ about you spreading across the arcology. - <<set $rep -= 10*$PC.degeneracy>> - <<elseif $PC.degeneracy > 25>> - There are @@.red;rumors@@ about you spreading across the arcology. - <<set $rep -= 5*$PC.degeneracy>> - <<elseif $PC.degeneracy > 10>> - There are @@.red;minor rumors@@ about you spreading across the arcology. - <<set $rep -= $PC.degeneracy*2>> - <<else>> - The occasional rumor about you can be heard throughout the arcology. - <<set $rep -= $PC.degeneracy>> - <</if>> -<</if>> - -<<set $rep -= $repLoss>> -<<set $rep += $repGain>> - -<<if $repGain > $repLoss>> - @@.green;Your reputation increased this week.@@ -<<elseif $repGain < $repLoss>> - @@.red;Your reputation decreased this week.@@ -<</if>> - -<<if $rep > 19000>> - Your reputation is capped. - <<set $rep = 20000>> -<<elseif $rep-$enduringRep > 7500>> - Your base rate of reputation decay is very high. -<<elseif $rep-$enduringRep > 5000>> - Your base rate of reputation decay is high. -<<elseif $rep-$enduringRep > 2500>> - Your base rate of reputation decay is moderate. -<<elseif $rep-$enduringRep > 0>> - Your base rate of reputation decay is low. -<</if>> -<<if $enduringRep >= 10000>> - Your legend is perfected, reducing reputation decay to its lowest possible level. - <<set $enduringRep = 10000>> -<</if>> - -<<if $alwaysSubsidizeRep == 1>> -<<if $rep <= 19900>> - <<set $rep += 100>> - Reputation subsidized as planned. -<<else>> - <<set $cash += 1000>> - Reputation subsidy reclaimed this week since your reputation is capped. -<</if>> -<</if>> - -<<if $failedElite > 1>> - <<set $failedElite -= 1>> -<</if>> -<<if $PC.degeneracy > 0>> - <<set $PC.degeneracy -= 1>> -<</if>> +<<include "Personal Business">> -<<if $arcologies[0].FSRestartDecoration == 100>> - <<if $failedElite > 300>> - The Societal Elite @@.red;are plotting your demise@@. - <<set $ui = "start">> - <<set $gameover to "you failed">><<goto "Gameover">> - <<elseif $failedElite > 250>> - The Societal Elite @@.red;are openly discussing about your failures@@. It would be in your best interests to appease them. - <<elseif $failedElite > 200>> - The Societal Elite @@.red;are avoiding you@@. Getting back on their good side is a good idea, lest you want to disappear. - <<elseif $failedElite > 150>> - The Societal Elite @@.red;stop their conversations around you@@. You may want to consider your actions more. - <<elseif $failedElite > 50>> - The Societal Elite @@.red;mutter about you@@. - <</if>> -<<elseif $arcologies[0].FSRestart != "unset">> - <<if $failedElite > 300>> - The Societal Elite @@.red;have left@@. - <<set $arcologies[0].FSRestart = "unset">> - <<set $arcologies[0].FSRestartDecoration = 20>> - <<set $arcologies[0].FSRestartLaw = 0>> - <<set $FSCredits += 1>> - <<set $failedElite = 0>> - <<set $rep -= 10000>> - <<set $ACitizens -= random(30,100)>> - <<if $arcologies[0].prosperity > 50>> - <<set $arcologies[0].prosperity -= random(20,40)>> - <</if>> - <<elseif $failedElite > 250>> - The Societal Elite @@.red;are openly discussing leaving@@. It would be in your best interests to appease them. - <<elseif $failedElite > 200>> - The Societal Elite @@.red;are avoiding you@@. Getting back on their good side is a good idea, lest you want to disappear. - <<elseif $failedElite > 150>> - The Societal Elite @@.red;stop their conversations around you@@. You may want to consider your actions more. - <<elseif $failedElite > 50>> - The Societal Elite @@.red;mutter about you@@. - <</if>> -<</if>> - -<<if ($PC.boobs == 1 && $PC.boobsBonus > 0) || $PC.preg >= 8 || $playerAging != 0>> <br><br> -__Personal Notes__ -<br> -<<if ($playerAging != 0)>>Your birthday is <<if $PC.birthWeek is 51>>next week<<if $playerAging == 2>>; you'll be turning <<print $PC.actualAge+1>><</if>><<else>>in <<print 52-$PC.birthWeek>> weeks<</if>>.<</if>> -<<if $PC.career == "servant">> -<<if $PC.boobs == 1 && $PC.boobsBonus > 0>> - <<if $PC.boobsBonus > 2>> - You've gotten your dress let out to accommodate your huge bust. - <<elseif $PC.boobsBonus == 2>> - Your dress bulges with your big breasts. - <<elseif $PC.boobsBonus == 1>> - Your dress feels tight around your breasts. - <</if>> -<</if>> -<<if $PC.preg >= 42>> - Your baby is overdue and your master isn't here anymore to comfort your exhausted body. You try your best, <<if $PC.pregSource == -3>>drawing strength from the knowledge that you carry your late master's legacy within you<<else>>but deep down you are saddened that your child isn't his<</if>>.<<if $PC.pregMood == 1>> However, thanks to all your mothering, your slaves are more than happy to do everything they can for you.<<elseif $PC.pregMood == 2>> Your dicked slaves are terrified of being seen by you, knowing full well that they will be bearing the full weight of your body as you try to fill the hole left by your late master.<</if>> -<<elseif $PC.preg >= 40>> - Your dress is at its capacity, any bigger and you'd risk tearing it at the seams, though your late master did make sure his girls were well dressed even when they were fully rounded with his child. Every action you take is exhausting, and even though your slaves are more than capable of serving your every desire, you refuse to slow down with your duties.<<if $PC.pregMood == 1>> Though you definatly appreciate their aid.<<elseif $PC.pregMood == 2>> Your hormones practically rule you, leading you to demand your slaves to be prepared to pleasure you at a moments notice. Your needy cunt hungers for dick and you don't care what it is attached to right now.<</if>> -<<elseif $PC.preg >= 36>> - Your child happily kicks away inside your womb, and each time a small bump apears on the outside of your dress.<<if $PC.pregMood == 1>> While hormones may have you demanding and needy, you do everything you can to treat your slaves as if they were your own children.<<elseif $PC.pregMood == 2>> You know it's unbecoming for an arcology owner, but your former master loved to fuck you while you were pregnant with his children and your body misses his touch.<</if>> -<<elseif $PC.preg >= 32>> - Your huge pregnant belly is tiring to carry around, but your well versed with moving about with a rounded middle.<<if $PC.pregMood == 1>> You can't help but enjoy having a slave suckle from you while you relax with her in your lap.<<elseif $PC.pregMood == 2>> You know how to have sex while pregnant, and as such, so will your slaves.<</if>> -<<elseif $PC.preg >= 28>> - You've stopped bothering to tie your apron behind you, allowing your dress the freedom to stretch with your growing child.<<if $PC.pregMood == 1>> You catch yourself babying your slaves from time to time.<<elseif $PC.pregMood == 2>>Your sex drive has become unquenchable as of late.<</if>> -<<elseif $PC.preg >= 24>> - Your maid's outfit is filled out by your baby-filled belly; not only is it obvious, but it is slowing you down in your day to day affairs. -<<elseif $PC.preg >= 22>> - Something startling happened this week; while enjoying a slave, your belly button popped out! -<<elseif $PC.preg >= 20>> - Your belly is now large enough that there is no hiding it. After you've let out your apron, your dress fits nicely again. -<<elseif $PC.preg >= 16>> - Your dress tightly clings to your early pregnancy, though it, your apron, and your previous experience hide it well. -<<elseif $PC.preg >= 12>> - Your apron holds your dress tightly to your bloated middle. -<<elseif $PC.preg >= 8>> - Your dress and apron feel tight around your middle. -<</if>> -<<if $PC.ballsImplant > 2>> - Your dress and apron bulges with your enormous balls. -<<elseif $PC.ballsImplant == 2>> - Your dress hides your huge balls, but it does nothing to hide your altered gait. -<<elseif $PC.ballsImplant == 1>> - Your dress hides your big balls. -<</if>> -<<if $PC.butt > 2>> - <<if $PC.buttImplant == 1>> - You had to get your dress let out to contain your enormous rear. It can't hide how big and fake it is though. - <<else>> - You had to get your dress let out to contain your enormous rear. - <</if>> -<<elseif $PC.butt == 2>> - Your dress is starting to feel tight around your huge rear. -<<elseif $PC.butt == 1>> - Your dress is filled out by your big butt. -<</if>> -<<elseif $PC.career == "escort">> -<<if $PC.boobs == 1 && $PC.boobsBonus > 0>> - <<if $PC.boobsBonus > 2>> - You top strains as it struggles to cover your nipples, letting your huge bust bulge lewdly around it. - <<elseif $PC.boobsBonus == 2>> - Your top can barely contain your big breasts, leaving you looking sluttier than ever. - <<elseif $PC.boobsBonus == 1>> - Your breasts spill over your slutty top. - <</if>> -<</if>> -<<if $PC.preg >= 42>> - You can barely pull yourself and your overdue child out of bed; every action is a chore, you keep bumping things, and your child just won't calm down.<<if $PC.pregMood == 1>> However, thanks to all your tenderness, your slaves are more than happy to do everything they can for you.<<elseif $PC.pregMood == 2>> Your dicked slaves are terrified of being seen by you, knowing full well that they will be bearing the full weight of your body as you satisfy your desires.<</if>> -<<elseif $PC.preg >= 40>> - You don't even bother to try to be slutty anymore, your full-term globe of a belly just steals all the attention away from your other assets. Every action you take is exhausting; though your slaves are more than capable of serving your every whim.<<if $PC.pregMood == 1>> Even in the final stages of pregnancy, you make sure the slaves attending you are treated as if the were your favorite clients.<<elseif $PC.pregMood == 2>> Your hormones practically rule you, leading you to demand your slaves to be prepared to pleasure you at a moments notice. Your needy cunt hungers for dick and you don't care what it is attached to right now.<</if>> -<<elseif $PC.preg >= 36>> - Your huge pregnant belly hides your crotch and every kick from your eager child threatens to dislodge your breasts from your struggling top.<<if $PC.pregMood == 1>> While you may be demanding and needy, you do everything you can to treat them as if they were a virgin client.<<elseif $PC.pregMood == 2>> You know it's unbecoming for an arcology owner, but you need a dick in you even more than usual.<</if>> -<<elseif $PC.preg >= 32>> - Your huge pregnant belly is tiring to carry around and is beginning to draw attention away from your other features.<<if $PC.pregMood == 1>> You can't help but enjoy having a slave, or client, suckle from you while you relax with them in your lap.<<elseif $PC.pregMood == 2>> You don't let your pregnancy get in the way when it comes to sex; you make sure your slaves, and clients, learn just how much you know about sex.<</if>> -<<elseif $PC.preg >= 28>> - You've switched to even skimpier clothing to show off your pregnant belly.<<if $PC.pregMood == 1>> You catch yourself playfully teasing your slaves from time to time.<<elseif $PC.pregMood == 2>>Your sex drive has become unquenchable as of late.<</if>> -<<elseif $PC.preg >= 24>> - Your outfit is only enhanced by your baby-filled belly; mostly because it adds to your slutty appearance. Though it definitly is impacting your business. -<<elseif $PC.preg >= 22>> - Something startling happened this week; while enjoying a slave, your belly button popped out! -<<elseif $PC.preg >= 20>> - Your slutty pants are begining to get hidden by your rounded middle. -<<elseif $PC.preg >= 16>> - Your exposed midriff bulges out enough to give away your growing pregnancy. -<<elseif $PC.preg >= 12>> - Your exposed midriff is noticeably bloated. -<<elseif $PC.preg >= 8>> - When you look down, you can't help but notice your belly sticking out a little. -<</if>> -<<if $PC.ballsImplant > 2>> - You've swapped up to a larger pair of slutty pants, specially designed with extra sack room. They draw the eye right to your bulge<<if $PC.preg >= 28>>; you can do without people thinking you are giving birth into your pants, though<</if>>. -<<elseif $PC.ballsImplant == 2>> - Your slutty pants are really tight around the groin, but they hold your huge balls in place quite nicely. -<<elseif $PC.ballsImplant == 1>> - Your slutty pants bulge more than ever with your big balls. -<</if>> -<<if $PC.dick == 1>> - <<if $PC.butt > 2>> - <<if $PC.buttImplant == 1>> - You had to get your slutty pants let out to contain your enormous rear. It still feels really tight, however, thanks to the implants. - <<else>> - You had to get your slutty pants let out to contain your enormous rear. It still overflows scandalously, however. - <</if>> - <<elseif $PC.butt == 2>> - Your huge rear spills out from the top of your slutty pants. - <<elseif $PC.butt == 1>> - Your slutty pants are strained by your big butt. - <</if>> -<<else>> - <<if $PC.butt > 2>> - <<if $PC.buttImplant == 1>> - Your ass has completely devoured your slutty shorts. You look like you are wearing a thong leaving your overly round cheeks to hang free. - <<else>> - Your ass has completely devoured your slutty shorts. You look like you are wearing a thong leaving your cheeks to jiggle freely. - <</if>> - <<elseif $PC.butt == 2>> - Your slutty shorts are filled to bursting by your rear. Roughly half of your ass is actually in your bottoms, the rest is bulging out scandalously. - <<elseif $PC.butt == 1>> - Your slutty shorts are strained by your big butt. It spills out every gap it can. - <</if>> -<</if>> -<<else>> -<<if $PC.boobs == 1 && $PC.boobsBonus > 0>> - <<if $PC.boobsBonus > 2>> - You've gotten your top retailored to fit your huge bust. - <<elseif $PC.boobsBonus == 2>> - Your top strains against your big breasts. - <<elseif $PC.boobsBonus == 1>> - Your top feels tight around your breasts. - <</if>> -<</if>> -<<if $PC.preg >= 42>> - You can barely pull yourself and your overdue child out of bed; every action is a chore, you keep bumping things, and your child just won't calm down.<<if $PC.pregMood == 1>> However, thanks to all your mothering, your slaves are more than happy to do everything they can for you.<<elseif $PC.pregMood == 2>> Your dicked slaves are terrified of being seen by you, knowing full well that they will be bearing the full weight of your body as you satisfy your desires.<</if>> -<<elseif $PC.preg >= 40>> - You don't even bother to try to cover your full-term pregnancy, opting to just let it hang out of your old clothing. Every action you take is exhausting; though your slaves are more than capable of serving your every desire.<<if $PC.pregMood == 1>> Even in the final stages of pregnancy, you make sure the slaves attending you are treated as if the were your children.<<elseif $PC.pregMood == 2>> Your hormones practically rule you, leading you to demand your slaves to be prepared to pleasure you at a moments notice. Your needy cunt hungers for dick and you don't care what it is attached to right now.<</if>> -<<elseif $PC.preg >= 36>> - Your huge pregnant belly strains the buttons on your maternity suit. Every kick from your eager child threatens to send your buttons flying.<<if $PC.pregMood == 1>> While you may be demanding and needy, you do everything you can to treat them as if they were your own children.<<elseif $PC.pregMood == 2>> You know it's unbecoming for an arcology owner, but you need a dick in you and you don't care from where.<</if>> -<<elseif $PC.preg >= 32>> - Your huge pregnant belly is tiring to carry around and is beginning to stretch out your new clothes.<<if $PC.pregMood == 1>> You can't help but enjoy having a slave suckle from you while you relax with her in your lap.<<elseif $PC.pregMood == 2>> You don't let your pregnancy get in the way when it comes to sex; you make sure your slaves learn new positions to accommodate your bulk.<</if>> -<<elseif $PC.preg >= 28>> - You've switched to using what can only be called formal maternity wear to cover your pregnant belly.<<if $PC.pregMood == 1>> You catch yourself babying your slaves from time to time.<<elseif $PC.pregMood == 2>>Your sex drive has become unquenchable as of late.<</if>> -<<elseif $PC.preg >= 24>> - You can barely cover your baby filled belly; not only is it obvious, but it is getting in the way of your business. -<<elseif $PC.preg >= 22>> - Something startling happened this week; while enjoying a slave, your belly button popped out! -<<elseif $PC.preg >= 20>> - Your belly is now large enough that there is no hiding it. Your top strains to cover it. -<<elseif $PC.preg >= 16>> - Your top tightly clings to your early pregnancy, though you manage to conceal it well enough. -<<elseif $PC.preg >= 12>> - Your top tightly clings to your bloated middle. -<<elseif $PC.preg >= 8>> - Your top feels oddly tight around your middle. -<</if>> -<<if $PC.ballsImplant > 2>> - You've had to get your suit pants retailored again to fit your enormous balls. It is obvious that the bulge in your pants is not your penis<<if $PC.preg >= 28>>; you've had several people rush to your aid under the mistaken belief that your child was crowing into your pants<</if>>. -<<elseif $PC.ballsImplant == 2>> - You've had to get your suit pants retailored to fit your huge balls. It gives you a strinking figure, though. -<<elseif $PC.ballsImplant == 1>> - Your suit pants bulge more than ever with your big balls. -<</if>> -<<if $PC.dick == 1>> - <<if $PC.butt > 2>> - <<if $PC.buttImplant == 1>> - You had to get your suit pants let out to contain your enormous rear. It does nothing to hide how big and round your asscheeks are, though. - <<else>> - You had to get your suit pants let out to contain your enormous rear. It can clearly be seen jiggling within them. - <</if>> - <<elseif $PC.butt == 2>> - Your huge rear threatens to tear apart your suit pants. You'll need to get them let out soon. - <<elseif $PC.butt == 1>> - Your suit pants are strained by your big butt. - <</if>> -<<else>> - <<if $PC.butt > 2>> - <<if $PC.buttImplant == 1>> - Your skirt covers your enormous butt but does nothing to hide its size and shape; you're beginning to show too much leg again, it might be time for a longer skirt. - <<else>> - Your skirt covers your enormous butt but does nothing to hide its size and fluidity; your rear is soft enough to fill out your skirt but not lift it up too far, it also translates every motion to the fabric, however. - <</if>> - <<elseif $PC.butt == 2>> - Your skirt covers your huge butt but does nothing to hide its size; in fact, you've had to start wearing a longer one to make up for the extra surface area. - <<elseif $PC.butt == 1>> - Your skirt covers your big butt but does nothing to hide its size. - <</if>> -<</if>> -<</if>> -<<if $PC.boobs == 1 && $PC.boobsImplants == 0>> - <<if $PC.preg == 31>> - <<if $PC.boobsBonus == 0>> - <<if random(1,100) > 75>> - Your breasts have @@.lime;grown larger@@ to feed your coming child. Quick measurements show you've gone up a cup size over the course of your pregnancy. - <<set $PC.boobsBonus++>> - <</if>> - <<elseif $PC.boobsBonus == -1>> - <<if random(1,100) > 80>> - Your breasts have been really @@.lime;swollen@@ lately with your new pregnancy. Quick measurements show you've gone up nearly two cup sizes. You may want to consider getting a breast reduction. - <<set $PC.boobsBonus++>> - <</if>> - <<elseif $PC.boobsBonus == 1>> - <<if random(1,100) > 75>> - Your already large breasts have @@.lime;grown even larger@@ with your new pregnancy. Quick measurements show you've gone up another cup size or so over the course of your pregnancy. - <<set $PC.boobsBonus++>> - <</if>> - <<elseif $PC.boobsBonus == 2>> - <<if random(1,100) > 90>> - Your already huge breasts have @@.lime;grown even more enormous@@ with your new pregnancy. Quick measurements show you've gone up yet another a cup size over the course of your pregnancy. - <<set $PC.boobsBonus++>> - <</if>> - <</if>> - <</if>> -<</if>> -<</if>> +<<include "Reputation">> <br><br> -__Arcology Management__ -<br> - -<<if $ASlaves < 100>> - <<set $ASlaves = random(90,110)>> -<<else>> - <<set $ASlaves += random(-10,10)>> -<</if>> -<<set $ACitizens += random(-10,10)>> - -<<if $ProImmigrationRep == 1>> - <<if $ACitizens < $ACitizenLimit>> - Your welcome program for new citizens helps encourage wealthy people from the old world to immigrate, but @@.red;annoys some longstanding citizens.@@ - <<set $ACitizens += random(10,20)>> - <<set $rep -= 100>> - <</if>> -<<elseif $AntiImmigrationCash == 1>> - <<if $ACitizens > 100>> - You covertly @@.yellowgreen;sell@@ the private information of potential arcology immigrants on the old world black market. - <<set $cash += random(500,1500)>> - <<set $ACitizens -= random(5,15)>> - <</if>> -<</if>> -<<if $arcologies[0].FSRestartLaw == 1>> - <<if $ACitizens > 100>> - Your sterilization program drives several disloyal citizens out of the arcology. - <<set $ACitizens -= random(3,10)>> - <</if>> -<</if>> -<<if $arcologies[0].FSRepopulationFocusLaw == 1>> - <<if $ACitizens < $ACitizenLimit>> - The rent promotion for pregnant women attracts several gravid ladies and a few girls eager to become mothers to enroll as citizens in your arcology. - <<set $ACitizens += random(5,10)>> - <</if>> -<</if>> -<<if $ProImmigrationCash == 1>> - <<if $ACitizens < $ACitizenLimit>> - The rent promotion for new immigrants brings new citizens to the arcology. - <<set $ACitizens += random(10,20)>> - <</if>> -<<elseif $AntiImmigrationRep == 1>> - <<if $ACitizens > 100>> - You allow citizens input on potential immigrants, a @@.green;popular@@ program. - <<set $rep += 100>> - <<set $ACitizens -= random(5,15)>> - <</if>> -<</if>> - -<<set $seed = random(20,40)>> -<<if $arcologies[0].FSPaternalist != "unset">> - Poor citizens can rely on their better-off peers in $arcologies[0].name. - <<set $seed -= Math.trunc($arcologies[0].FSPaternalist/10)>> -<<elseif $arcologies[0].FSDegradationist != "unset">> - The arcology is a cutthroat place in which falling into slavery is very easy. - <<set $seed += Math.trunc($arcologies[0].FSDegradationist/10)>> -<</if>> -<<if $arcologies[0].FSEgyptianRevivalist != "unset">> - Egyptian Revivalism is benevolent in some ways, and charity is common here. - <<set $seed -= Math.trunc($arcologies[0].FSEgyptianRevivalist/10)>> -<<elseif $arcologies[0].FSRomanRevivalist != "unset">> - Your citizens take pride in looking after each other. - <<set $seed -= Math.trunc($arcologies[0].FSRomanRevivalist/10)>> -<</if>> -<<if $arcologies[0].FSChattelReligionist != "unset">> - Chattel Religionism helps some poor citizens see slavery as a spiritually pure fate. - <<set $seed += Math.trunc($arcologies[0].FSChattelReligionist/10)>> -<<elseif $arcologies[0].FSNull != "unset">> - Your arcology's vibrant, open culture helps everyone succeed, preventing many struggling citizens from falling into slavery. - <<set $seed -= Math.trunc($arcologies[0].FSNull/5)>> -<</if>> -<<if $arcologies[0].FSPastoralist != "unset">> - The pastoralization of $arcologies[0].name helps concentrate wealth in the hands of a few. - <<set $seed += Math.trunc($arcologies[0].FSPastoralist/10)>> -<</if>> -<<if $AntiEnslavementCash == 1>> - Your charity purse prevents a few citizens from falling into slavery. - <<set $seed -= 10>> -<<elseif $ProEnslavementCash == 1>> - You @@.yellowgreen;take kickbacks@@ for ignoring enslavement of citizens. - <<set $seed += 10>> - <<set $cash += random(500,1500)>> -<</if>> -<<if $AntiEnslavementRep == 1>> - You use your personal influence to help struggling citizens. - <<set $seed -= 10>> - <<set $rep -= 100>> -<<elseif $ProEnslavementRep == 1>> - You @@.green;make friends@@ by tacitly supporting enslavement of upstart citizens. - <<set $seed += 10>> - <<set $rep += 100>> -<</if>> -<<if $seed < 0>> - <<if $ACitizens < $ASlaves*5>> - <<if $ACitizens > 100>> - <<set $ACitizens -= $seed>> - <</if>> - <<set $ASlaves += $seed>> - <</if>> -<<else>> - <<if $ACitizens > $ASlaves*0.1>> - <<if $ACitizens > 100>> - <<set $ACitizens -= $seed>> - <</if>> - <<set $ASlaves += $seed>> - <</if>> -<</if>> - -<<if $ACitizens >= $ACitizenLimit>> - <<set $ACitizens = $ACitizenLimit>> - Your arcology is currently home to as many citizens as it can house; unless the living areas are reconfigured, the citizen population will not increase. -<<elseif $ACitizens <= 100>> - <<set $ACitizens = 100>> - Your arcology is home to an extremely small number of very wealthy citizens; wealth is as concentrated as possible and the citizen population will not decrease further. -<<elseif $ACitizens < $ACitizenLimit*0.6>> - <<set $ACitizens += random(10,20)>> - The availability of a large number of apartments encourages many new citizens to immigrate. -<</if>> - -$ACitizens citizens and <<print $ASlaves+$helots+$slaves.length>> slaves now live in your arcology. -<<if $arcologies[0].FSSupremacistLawME == 1>>The citizenry is entirely $arcologies[0].FSSupremacistRace.<</if>> -<<if $arcologies[0].FSRomanRevivalistLaw == 1>>The citizens take pride in their martial duties, preferring to wear utilitarian clothing even when off duty.<</if>> -<<if $arcologies[0].FSGenderRadicalistLaw == 1>>Every single one of the slaves is female by virtue of her fuckable asshole. -<<elseif $arcologies[0].FSGenderFundamentalistSMR == 1>>Almost every citizen is an upstanding man, while the slave population is almost completely female.<</if>> -<<if $arcologies[0].FSEgyptianRevivalistLaw == 1>>Close relationships between citizens and slaves, especially slave siblings, are common.<</if>> -<<if $arcologies[0].FSSubjugationistLawME == 1>>$arcologies[0].FSSubjugationistRace subhumans form a majority of the slaves.<</if>> -<<if $arcologies[0].FSChattelReligionistLaw == 1>>The slave population as a whole is unusually accepting of its station.<</if>> -<<if $arcologies[0].FSPaternalistLaw == 1>>The slaves are well cared for, and it can sometimes be difficult to tell slaves from citizens. -<<elseif $arcologies[0].FSDegradationistLaw == 1>>Most of the slaves are recent captures, since the vicious society that's taken root here uses people up quickly.<</if>> -<<if $arcologies[0].FSBodyPuristLaw == 1>>The average slave is quite healthy. -<<elseif $arcologies[0].FSTransformationFetishistResearch == 1>>Breast implants are almost universal; an M cup bust is below average among the slave population. -<<elseif $arcologies[0].FSTransformationFetishistLaw == 1>>Breast implants are almost universal; a D cup bust is below average among the slave population.<</if>> -<<if $arcologies[0].FSSlimnessEnthusiastSMR == 1>>Most of the slave population is quite slim and physically fit. -<<elseif $arcologies[0].FSAssetExpansionistSMR == 1>>The arcology's consumption of pharmaceuticals is impressive, since slave growth hormones are nearly ubiquitous.<</if>> -<<if $arcologies[0].FSRepopulationFocusLaw == 1>>Many of the women in the arcology are pregnant.<<elseif $arcologies[0].FSRepopulationFocusSMR == 1>>Most of the slaves in the arcology are pregnant.<<elseif $arcologies[0].FSRestartLaw == 1>>Many of your civilians have agreed to be sterilized.<<elseif $arcologies[0].FSRestartSMR == 1>>Many of slave slaves in your arcology are infertile.<</if>> -<<if $arcologies[0].FSPastoralistLaw == 1>>Much of the menial slave labor force works to service the arcology's hundreds of human cattle.<</if>> -<<if $arcologies[0].FSPhysicalIdealistSMR == 1>>The arcology must import a very large quantity of nutritive protein to nourish its slaves.<</if>> - -<<if $ACitizens > $ASlaves*2>> - Since most citizens cannot afford their own sex slaves, @@.yellowgreen;demand for sexual services is intense.@@ -<<elseif $ACitizens > $ASlaves>> - Since many citizens cannot afford their own sex slaves, @@.yellowgreen;demand for sexual services is healthy.@@ -<<elseif $ACitizens > $ASlaves*0.5>> - Since many citizens can afford to keep a sex slave, @@.yellow;demand for sexual services is only moderate.@@ -<<elseif $ACitizens > $ASlaves*0.25>> - Since most citizens can afford to keep at least one sex slave, @@.gold;local demand for sexual services is low,@@ though visitors to the arcology will always keep it above a certain minimum. -<<else>> - Since most of your citizens now keep private harems of sex slaves, @@.gold;local demand for sexual services is very low,@@ though visitors to the arcology will always keep it above a certain minimum. -<</if>> - -<br> - -<<set $rents = random(1,100)>> -<<for _i = 1; _i < $sectors.length; _i++>> - <<if $sectors[_i].ownership == 1>> - <<switch $sectors[_i].type>> - <<case "DenseApartments" "LuxuryApartments" "Apartments" "Shops" "Markets" "Manufacturing">> - <<set $rents += $arcologies[0].prosperity*10>> - <</switch>> - <</if>> -<</for>> -<<set $rentalMultiplier = 1>> -<<if $arcologies[0].FSPaternalistLaw == 1>> - <<set $rentalMultiplier -= 0.1>> - Tenants who can prove that they abstain from certain practices are given a reduction to their rent. -<</if>> -<<if $arcologies[0].FSYouthPreferentialistLaw == 1>> - <<set $rentalMultiplier -= 0.1>> - Younger citizens are offered subsidized rent to encourage young people to join the free population of your arcology. -<</if>> -<<if $arcologies[0].FSMaturityPreferentialistLaw == 1>> - <<set $rentalMultiplier -= 0.1>> - Older citizens are offered subsidized rent to encourage mature people to join the free population of your arcology. -<</if>> -<<if $arcologies[0].FSRepopulationFocusLaw == 1>> - <<set $rentalMultiplier -= 0.1>> - Pregnant citizens are offered subsidized rent to encourage free women to become pregnant and pregnant women to join the free population of your arcology. -<<elseif $arcologies[0].FSRestartLaw == 1>> - <<set $rentalMultiplier += 0.1>> - Non-elite citizens who refuse to be sterilized face a moderate tax and the looming possibility of expulsion or enslavement. -<</if>> -<<if $arcologies[0].FSArabianRevivalistLaw == 1>> - <<set $rentalMultiplier += 0.1>> - Those of your citizens who have not yet subscribed to the society you are building are permitted to live and do business here, but must pay a moderate jizya tax for the privilege as part of their rent. -<</if>> -<<set $rents = Math.trunc($rents*$rentalMultiplier)>> - -<<set $cash += $rents>> +<<include "Arcology Management">> -This week, rents from $arcologies[0].name came to -<<if $rents > 0>> - @@.yellowgreen;¤$rents.@@ -<<else>> - @@.red;¤$rents.@@ -<</if>> - -<<if $economy > 1>> - <<set $rents = ($week*100)+random(-100,100)>> - <<if $cash > 1000>> - <<set $rents += Math.trunc($cash/10)>> - <</if>> - The @@.red;degenerating world economy@@ makes supplying and maintaining $arcologies[0].name extremely difficult. This week, bribes and other costs to keep it running came to @@.yellowgreen;¤$rents.@@ - <<set $cash -= $rents>> -<</if>> - -<<if $helots+$menialBioreactors+$fuckdolls > 0>> -<<set $seed = 0>> -You own -<<if $helots > 0>> - <<set $seed += Math.trunc($helots*(random(90,110)/100)*20)>> - <<if $helots > 1>> - $helots menial slaves<<if ($menialBioreactors > 0) && ($fuckdolls == 0)>> and<<else>>,<</if>> - <<else>> - one menial slave<<if ($menialBioreactors > 0) && ($fuckdolls == 0)>> and<<else>>,<</if>> - <</if>> -<</if>> -<<if $menialBioreactors > 0>> - <<set $seed += Math.trunc($menialBioreactors*(random(90,110)/100)*(15+(10*$arcologies[0].FSPastoralistLaw)))>> - <<if $menialBioreactors > 1>> - $menialBioreactors standard bioreactors, - <<else>> - one standard bioreactor, - <</if>> - <<if $fuckdolls > 0>>and<</if>> -<</if>> -<<if $fuckdolls > 0>> - <<set $seed += Math.trunc($fuckdolls*(random(90,110)/100)*(25+(10*$arcologies[0].FSDegradationistLaw)))>> - <<if $fuckdolls > 1>> - $fuckdolls standard fuckdolls, - <<else>> - one fuckdoll, - <</if>> -<</if>> -<<set $cash += $seed>> -earning you @@.yellowgreen;¤$seed.@@ -<</if>> - -<<set $seed = 0>> -<<if $terrain == "urban">> - <<set $seed += random(0,5)>> -<<elseif $terrain == "rural">> - <<set $seed += random(0,3)>> -<<elseif $terrain == "marine">> - <<set $seed += random(0,1)>> -<</if>> -<<if $ProRefugees == 1>> - <<set $seed += random(0,1)>> -<</if>> -<<for $i = 0; $i < 3; $i++>> - <<if $rep > random(0,30000)>> - <<set $seed += 1>> - <</if>> -<</for>> -<<if $seed > 0>> - Some desperate people filtered into the arcology during the week: as owner, you were able to enslave $seed of them. - <<set $helots += $seed>> -<</if>> - -<<set _AWeekGrowth = $AGrowth>> -<<if _AWeekGrowth+$arcologies[0].prosperity > $AProsperityCap>> - @@.yellow;$arcologies[0].name is at its maximum prosperity, so rents will not increase until it is improved.@@ -<<elseif (2*_AWeekGrowth)+$arcologies[0].prosperity >= $AProsperityCap>> - @@.yellow;Your arcology is nearly at its maximum prosperity.@@ - <<set $arcologies[0].prosperity += _AWeekGrowth>> -<<else>> - <<if $arcologies[0].ownership >= 100>> - Your controlling interest in $arcologies[0].name allows you to lead it economically, @@.green;supercharging growth.@@ - <<set _AWeekGrowth += 3>> - <<elseif $arcologies[0].ownership >= random(40,100)>> - Your interest in $arcologies[0].name allows you to lead it economically, @@.green;boosting growth.@@ - <<set _AWeekGrowth++>> - <</if>> - <<if $arcologies[0].prosperity < ($rep/100)>> - Your impressive reputation relative to $arcologies[0].name's prosperity @@.green;drives an increase in business.@@ - <<set _AWeekGrowth++>> - <<elseif $rep > 18000>> - <<elseif $arcologies[0].prosperity > ($rep/60)>> - Your low reputation relative to $arcologies[0].name's prosperity @@.red;seriously impedes business growth.@@ - <<set _AWeekGrowth -= 2>> - <<elseif $arcologies[0].prosperity > ($rep/80)>> - Your unimpressive reputation relative to $arcologies[0].name's prosperity @@.yellow;slows business growth.@@ - <<set _AWeekGrowth-->> - <</if>> - <<if $personalAttention == "business">> - <<if ($PC.trading >= 100) || ($PC.career == "arcology owner")>> - Your @@.springgreen;business focus and your experience@@ allow you to greatly assist in advancing the arcology's prosperity. - <<set _AWeekGrowth += 2>> - <<else>> - Your business focus allows you to help improve the arcology's prosperity. - <<set _AWeekGrowth++>> - <</if>> - <<if $PC.actualAge >= 50>> - <<if $arcologies[0].FSMaturityPreferentialistLaw == 1>> - You are able to leverage your long seniority in the business community using the arcology's favorable laws to further advance prosperity. - <<set _AWeekGrowth++>> - <</if>> - <<elseif $PC.actualAge < 35>> - <<if $arcologies[0].FSYouthPreferentialistLaw == 1>> - You are able to leverage your freshness in the business community using the arcology's favorable laws to further advance prosperity. - <<set _AWeekGrowth++>> - <</if>> - <</if>> - <</if>> - <<if $arcologies[0].FSNull != "unset">> - Your cultural openness is a powerful driver of economic activity. - <<set _AWeekGrowth += Math.trunc($arcologies[0].FSNull/25)>> - <</if>> - <<if $arcologies[0].FSRestart != "unset">> - Your powerful connections open many avenues of economic expansion. - <<set _AWeekGrowth += Math.trunc($arcologies[0].FSRestart/10)>> - <</if>> - <<if $arcologies[0].FSPaternalist >= random(1,100)>> - This week, the careful attention to slave welfare your new society emphasizes has been a driver of prosperity. - <<set _AWeekGrowth++>> - <</if>> - <<if $arcologies[0].FSChattelReligionistCreed == 1>> - <<if $nicaeaFocus == "owners">> - The focus on slaveowners' whims in the creed of $nicaeaName interests the rich and powerful, increasing prosperity. - <<set _AWeekGrowth += $nicaeaPower>> - <</if>> - <</if>> - <<if $arcologies[0].FSRomanRevivalist >= random(1,100)>> - This week, intense interest in your project to revive Roman values has driven prosperity. - <<set _AWeekGrowth++>> - <<elseif $arcologies[0].FSChineseRevivalist != "unset">> - <<if ($HeadGirl != 0) && ($Recruiter != 0) && ($Bodyguard != 0)>> - This week, your imperial administration, staffed with a Head Girl, a Recruiter, and a Bodyguard, has improved prosperity. - <<set _AWeekGrowth += 2>> - <</if>> - <</if>> - <<if $PC.trading >= 100>> - Your @@.springgreen;business skills@@ drive increased prosperity. - <<set _AWeekGrowth++>> - <<elseif $PC.career == "arcology owner">> - Your @@.springgreen;experience in the Free Cities@@ helps increase prosperity. - <<set _AWeekGrowth++>> - <</if>> - <<set _schools = $TSS.schoolPresent+$GRI.schoolPresent+$SCP.schoolPresent+$LDE.schoolPresent+$TGA.schoolPresent+$TFS.schoolPresent>> - <<if _schools == 1>> - The presence of a slave school in the arcology improves the local economy. - <<elseif _schools > 0>> - The presence of slave schools in the arcology greatly improves the local economy. - <<elseif $arcologies[0].prosperity > 80>> - The lack of a branch campus from a reputable slave school is slowing further development of the local economy. - <<set _AWeekGrowth-->> - <</if>> - <<set _AWeekGrowth += _schools>> - <<if $arcologies[0].FSDegradationistLaw == 1>> - Requiring menials to be given time to fuck human sex toys in the arcade reduces labor efficiency, slowing growth. - <<set _AWeekGrowth-->> - <</if>> - <<if $arcologies[0].FSBodyPuristLaw == 1>> - The drug surcharge used to fund the purity regime reduces growth. - <<set _AWeekGrowth-->> - <</if>> - <<if $arcologies[0].FSPastoralistLaw == 1>> - Prosperity improvement is slowed by the regulations on animal products. - <<set _AWeekGrowth-->> - <</if>> - <<if $arcologies[0].FSPaternalistSMR == 1>> - Your slave market regulations slow the flow of chattel through the arcology. - <<set _AWeekGrowth-->> - <</if>> - <<if $terrain == "urban">> - Since your arcology is located in the heart of an urban area, its commerce is naturally vibrant. - <<set _AWeekGrowth++>> - <</if>> - <<if $terrain == "ravine">> - Since your arcology is located in the heart of a ravine, its commerce is hindered by a lack of accessability. - <<set _AWeekGrowth -= 1>> - <</if>> - <<if def $arcologies[0].embargoTarget && $arcologies[0].embargoTarget != -1>> - The local economy is hurt by the double edged sword of your economic warfare. - <<set _AWeekGrowth -= $arcologies[0].embargo*2>> - <</if>> - <<set $desc = []>> - <<set $descNeg = []>> - <<for $i = 1; $i < $arcologies.length; $i++>> - <<set $activeArcology = $arcologies[0]>> - <<set $targetArcology = $arcologies[$i]>> - <<include "Arcology Opinion">> - <<if $opinion >= 100>> - <<set $desc.push($arcologies[$i].name)>> - <<elseif $opinion <= -100>> - <<set $descNeg.push($arcologies[$i].name)>> - <</if>> - <</for>> - <<if $desc.length > 0>> - Your arcology's economy benefits from close social alignment with - <<if $desc.length > 2>> - ''$desc[0]'', - <<for $k = 1; $k < $desc.length; $k++>> - <<if $k < $desc.length-1>> - ''$desc[$k]'', - <<else>> - and ''$desc[$k]''<<if $descNeg.length > 0>>, but<<else>>.<</if>> - <</if>> - <</for>> - <<elseif $desc.length == 2>> - ''$desc[0]'' and ''$desc[1]''<<if $descNeg.length > 0>>, but<<else>>.<</if>> - <<else>> - ''$desc[0]''<<if $descNeg.length > 0>>, but<<else>>.<</if>> - <</if>> - <<set _AWeekGrowth += $desc.length>> - <</if>> - <<if $descNeg.length > 0>> - <<if $desc.length > 0>>Your arcology's economy<</if>> - is hindered by social conflicts with - <<if $descNeg.length > 2>> - ''$descNeg[0]'', - <<for $k = 1; $k < $descNeg.length; $k++>> - <<if $k < $descNeg.length-1>> - ''$descNeg[$k]'', - <<else>> - and ''$descNeg[$k]''. - <</if>> - <</for>> - <<elseif $descNeg.length == 2>> - ''$descNeg[0]'' and ''$descNeg[1]''. - <<else>> - ''$descNeg[0]''. - <</if>> - <<set _AWeekGrowth -= $descNeg.length>> - <</if>> - <<if $alwaysSubsidizeGrowth == 1>> - Growth was subsidized as planned. - <<set _AWeekGrowth++>> - <</if>> - <<set _AWeekGrowth = Math.trunc(0.5*_AWeekGrowth)>> - <<if _AWeekGrowth > 0>> - Since $arcologies[0].name can support more citizens and more activity, @@.green;its prosperity improved this week.@@ - <<elseif _AWeekGrowth == 0>> - Though $arcologies[0].name can support more citizens and more activity, @@.yellow;growth was moribund this week.@@ - <<else>> - Though $arcologies[0].name can support more citizens and more activity, @@.red;it lost prosperity this week.@@ - <</if>> - <<set $arcologies[0].prosperity += _AWeekGrowth>> -<</if>> - -<<if $TSS.schoolPresent+$GRI.schoolPresent+$SCP.schoolPresent+$LDE.schoolPresent+$TGA.schoolPresent+$TFS.schoolPresent > 0>> -<br> - -<<if $TSS.schoolPresent == 1>> -<br> -The Slave School has a <<if $TSS.schoolProsperity > 4>>very prosperous<<elseif $TSS.schoolProsperity < -4>>struggling<<else>>thriving<</if>> branch campus in $arcologies[0].name. -<<if $TSS.schoolProsperity >= 10>> - It is one of the finest slave schools in the world<<if $rep > 19000>>.<<else>>, @@.green;improving your reputation.@@<<set $rep += 200>><</if>> - <<set $TSS.subsidize = 0>> - <<set $TSS.schoolProsperity = 10>> -<</if>> -<<if $TSS.subsidize == 1>> - You have a policy of subsidizing them. - <<set $TSS.schoolProsperity++>> -<<elseif $TSS.subsidize == -1>> - You have a policy of covertly undermining them. - <<set $TSS.schoolProsperity-->> -<</if>> -<</if>> - -<<if $GRI.schoolPresent == 1>> -<br> -The Growth Research Institute has a <<if $GRI.schoolProsperity > 4>>very prosperous<<elseif $GRI.schoolProsperity < -4>>struggling<<else>>thriving<</if>> subsidiary lab in $arcologies[0].name. -<<if $GRI.schoolProsperity >= 10>> - It is one of the finest research facilities in the world<<if $rep > 19000>>.<<else>>, @@.green;improving your reputation.@@<<set $rep += 200>><</if>> - <<set $GRI.subsidize = 0, $GRI.schoolProsperity = 10>> -<</if>> -<<if $GRI.subsidize == 1>> - You have a policy of subsidizing them. - <<set $GRI.schoolProsperity++>> -<<elseif $GRI.subsidize == -1>> - You have a policy of covertly undermining them. - <<set $GRI.schoolProsperity-->> -<</if>> -<</if>> - -<<if $SCP.schoolPresent == 1>> -<br> -St. Claver Preparatory has a <<if $SCP.schoolProsperity > 4>>very prosperous<<elseif $SCP.schoolProsperity < -4>>struggling<<else>>thriving<</if>> branch campus in $arcologies[0].name. -<<if $SCP.schoolProsperity >= 10>> - It is one of the finest slave schools in the world<<if $rep > 19000>>.<<else>>, @@.green;improving your reputation.@@<<set $rep += 200>><</if>> - <<set $SCP.subsidize = 0, $SCP.schoolProsperity = 10>> -<</if>> -<<if $SCP.subsidize == 1>> - You have a policy of subsidizing them. - <<set $SCP.schoolProsperity++>> -<<elseif $SCP.subsidize == -1>> - You have a policy of covertly undermining them. - <<set $SCP.schoolProsperity-->> -<</if>> -<</if>> - -<<if $LDE.schoolPresent == 1>> -<br> -L'Ecole des Enculees has a <<if $LDE.schoolProsperity > 4>>very prosperous<<elseif $LDE.schoolProsperity < -4>>struggling<<else>>thriving<</if>> branch campus in $arcologies[0].name. -<<if $LDE.schoolProsperity >= 10>> - It is one of the finest slave schools in the world<<if $rep > 19000>>.<<else>>, @@.green;improving your reputation.@@<<set $rep += 200>><</if>> - <<set $LDE.subsidize = 0, $LDE.schoolProsperity = 10>> -<</if>> -<<if $LDE.subsidize == 1>> - You have a policy of subsidizing them. - <<set $LDE.schoolProsperity++>> -<<elseif $LDE.subsidize == -1>> - You have a policy of covertly undermining them. - <<set $LDE.schoolProsperity-->> -<</if>> -<</if>> - -<<if $TGA.schoolPresent == 1>> -<br> -The Gymnasium-Academy has a <<if $TGA.schoolProsperity > 4>>very prosperous<<elseif $TGA.schoolProsperity < -4>>struggling<<else>>thriving<</if>> branch campus in $arcologies[0].name. -<<if $TGA.schoolProsperity >= 10>> - It is one of the finest slave schools in the world<<if $rep > 19000>>.<<else>>, @@.green;improving your reputation.@@<<set $rep += 200>><</if>> - <<set $TGA.subsidize = 0, $TGA.schoolProsperity = 10>> -<</if>> -<<if $TGA.subsidize == 1>> - You have a policy of subsidizing them. - <<set $TGA.schoolProsperity++>> -<<elseif $TGA.subsidize == -1>> - You have a policy of covertly undermining them. - <<set $TGA.schoolProsperity-->> -<</if>> -<</if>> - -<<if $TFS.schoolPresent == 1>> -<br> -The Futanari Sisters have a <<if $TFS.schoolProsperity > 4>>very prosperous<<elseif $TFS.schoolProsperity < -4>>struggling<<else>>thriving<</if>> community in $arcologies[0].name. -<<if $TFS.schoolProsperity >= 10>> - They are one of the most renowned futa societies in the world<<if $rep > 19000>>.<<else>>, @@.green;improving your reputation.@@<<set $rep += 200>><</if>> - <<set $TFS.subsidize = 0, $TFS.schoolProsperity = 10>> -<</if>> -<<if $TFS.subsidize == 1>> - You have a policy of subsidizing them<<if ($PC.dick == 1) && ($PC.vagina == 1) && ($PC.boobs == 1)>>, which is more effective due to your close relationship with them and your physical resemblance to them<<set $TFS.schoolProsperity++>><</if>>. - <<set $TFS.schoolProsperity++>> -<<elseif $TFS.subsidize == -1>> - You have a policy of covertly undermining them. - <<set $TFS.schoolProsperity-->> -<</if>> -<</if>> - -<</if>> - -<<if $marketAssistantLimit != 0>> -<<silently>><<MenialPopCap>><</silently>> -<<set $seed = Math.clamp($slaveCostFactor*1000, 500, 1500)>> -<br> -Your ''business assistant'' manages the menial slave market. -<<if $seed <= 800+$marketAssistantAggressiveness>>/* BUY */ - <<if $helots+$fuckdolls+$menialBioreactors >= $PopCap>> - There is no room in the parts of your arcology you own for more menial slaves. - <<else>> - <<if $cash > $marketAssistantLimit+$seed>> - <<if $assistant == 0>>It<<else>>She<</if>> acquires more chattel, since it's a buyers' market. - <<if ($arcologies[0].FSPastoralist != "unset") && ($arcologies[0].FSPaternalist == "unset")>> - <<set $menialBioreactors += Math.trunc(($cash-$marketAssistantLimit)/($seed-100)), $cash -= Math.trunc(($cash-$marketAssistantLimit)/($seed-100))*($seed-100)>> - <<elseif ($arcologies[0].FSDegradationist != "unset")>> - <<set $fuckdolls += Math.trunc(($cash-$marketAssistantLimit)/($seed*2)), $cash -= Math.trunc(($cash-$marketAssistantLimit)/($seed*2))*($seed*2)>> - <<else>> - <<set $helots += Math.trunc(($cash-$marketAssistantLimit)/($seed)), $cash -= Math.trunc(($cash-$marketAssistantLimit)/($seed))*($seed)>> - <</if>> - <</if>> - <</if>> -<<elseif $seed >= 1200-$marketAssistantAggressiveness>>/* SELL */ - <<if $helots+$fuckdolls+$menialBioreactors > 0>> - <<if $assistant == 0>>It<<else>>She<</if>> liquidates your chattel holdings, since it's a sellers' market. - <</if>> - <<if $helots > 0>> - <<set $cash+=$helots*($seed),$helots = 0>> - <</if>> - <<if $fuckdolls > 0>> - <<set $cash+=$fuckdolls*($seed),$fuckdolls = 0>> - <</if>> - <<if $menialBioreactors > 0>> - <<set $cash+=$menialBioreactors*($seed),$menialBioreactors = 0>> - <</if>> -<<else>> - Prices are average, so <<if $assistant == 0>>it<<else>>she<</if>> does not make any significant moves. -<</if>> -<<silently>><<MenialPopCap>><</silently>> +<<if ($PC.boobs == 1 && $PC.boobsBonus > 0) || $PC.preg >= 8 || $playerAging != 0>> +<br><br> +<<include "Personal Notes">> <</if>> -<<if $FSAnnounced > 0>> - <br><br> - <<include "FS Developments">> -<</if>> diff --git a/src/uncategorized/endWeek.tw b/src/uncategorized/endWeek.tw index efd8c180442bb3d2122fe3a07a3ad916d5c42dde..afd8588a02199b9469047dcd7b33de868eed89f4 100644 --- a/src/uncategorized/endWeek.tw +++ b/src/uncategorized/endWeek.tw @@ -121,7 +121,7 @@ <<set $PC.preg++>> <</if>> -<<set $HGEnergy = 0, $HGCum = 0, $HGSlaveSuccess = 0, $HeadGirl = 0, $HGBalls = 0, $HGRelease = 1, $Recruiter = 0, $Madam = 0, $madamCashBonus = 0, $DJ = 0, $DJRepBonus = 0, $Milkmaid = 0, $Collectrix = 0, $Stewardess = 0, $Schoolteacher = 0, $Wardeness = 0, $Concubine = 0, $Attendant = 0, $Nurse = 0, $Bodyguard = 0, $bedSlaveOne = 0, $bedSlaveTwo = 0, $bedSlaveThree = 0, $bedSlaveFour = 0, $fuckSlaves = 0, $freeSexualEnergy = 0, $publicServants = 0, $cumSlaves = 0, $averageDick = 0, $slavesWithWorkingDicks = 0>> +<<set $HGEnergy = 0, $HGCum = 0, $HGSlaveSuccess = 0, $HeadGirl = 0, $HGRelease = 1, $Recruiter = 0, $Madam = 0, $madamCashBonus = 0, $DJ = 0, $DJRepBonus = 0, $Milkmaid = 0, $Collectrix = 0, $Stewardess = 0, $Schoolteacher = 0, $Wardeness = 0, $Concubine = 0, $Attendant = 0, $Nurse = 0, $Bodyguard = 0, $bedSlaveOne = 0, $bedSlaveTwo = 0, $bedSlaveThree = 0, $bedSlaveFour = 0, $fuckSlaves = 0, $freeSexualEnergy = 0, $publicServants = 0, $cumSlaves = 0, $averageDick = 0, $slavesWithWorkingDicks = 0>> /* GAMEOVERS */ <<if $slaves.length < 1>> diff --git a/src/uncategorized/exportRule.tw b/src/uncategorized/exportRule.tw index faa3947e12b2db0c44b1eb1ac753f92bfd15e91e..51fd4273b19e9973ca26c2357a19ed0fd75f9641 100644 --- a/src/uncategorized/exportRule.tw +++ b/src/uncategorized/exportRule.tw @@ -19,7 +19,7 @@ thresholdUpper: <<else>> $currentRule.thresholdUpper, <</if>> -eqLower: $currentRule.eqLower, eqUpper: $currentRule.eqUpper, releaseRules: "$currentRule.releaseRules", clitSetting: "$currentRule.clitSetting", clitSettingSecondary: "$currentRule.clitSettingSecondary", speechRules: "$currentRule.speechRules", clothes: "$currentRule.clothes", fuckdoll: 0, choosesOwnClothes: $currentRule.choosesOwnClothes, collar: "$currentRule.collar", shoes: "$currentRule.shoes", virginAccessory: "$currentRule.virginAccessory", vaginalAccessory: "$currentRule.vaginalAccessory", dickAccessory: "$currentRule.dickAccessory", cSec: 0, bellyAccessory: "$currentRule.bellyAccessory", buttplug: "$currentRule.buttplug", markings: "$currentRule.markings", eyeColor: "$currentRule.eyeColor", makeup: "$currentRule.makeup", nails: "$currentRule.nails", hColor: "$currentRule.hColor", hLength: "$currentRule.hLength", hStyle: "$currentRule.hStyle", pubicHColor: "$currentRule.pubicHColor", pubicHStyle: "$currentRule.pubicHStyle", nipplesPiercing: "$currentRule.nipplesPiercing", areolaePiercing: "$currentRule.areolaePiercing", clitPiercing: "$currentRule.clitPiercing", vaginaLube: "$currentRule.vaginaLube", vaginaPiercing: "$currentRule.vaginaPiercing", analArea: $currentRule.analArea, dickPiercing: "$currentRule.dickPiercing", anusPiercing: "$currentRule.anusPiercing", lipsPiercing: "$currentRule.lipsPiercing", tonguePiercing: "$currentRule.tonguePiercing", earPiercing: "$currentRule.earPiercing", nosePiercing: "$currentRule.nosePiercing", eyebrowPiercing: "$currentRule.eyebrowPiercing", navelPiercing: "$currentRule.navelPiercing", corsetPiercing: "$currentRule.corsetPiercing", boobsTat: "$currentRule.boobsTat", buttTat: "$currentRule.buttTat", vaginaTat: "$currentRule.vaginaTat", dickTat: "$currentRule.dickTat", lipsTat: "$currentRule.lipsTat", anusTat: "$currentRule.anusTat", shouldersTat: "$currentRule.shouldersTat", armsTat: "$currentRule.armsTat", legsTat: "$currentRule.legsTat", backTat: "backTat", stampTat: "$currentRule.stampTat", curatives: $currentRule.curatives, livingRules: "$currentRule.livingRules", relationshipRules: "$currentRule.relationshipRules", standardPunishment: "situational", standardReward: "situational", useRulesAssistant: $currentRule.useRulesAssistant, diet: "$currentRule.diet", dietCum: "$currentRule.dietCum", dietMilk: "$currentRule.dietMilk", muscles: "$currentRule.muscles", XY: "$currentRule.XY", XX: "$currentRule.XX", gelding: "$currentRule.gelding", preg: "$currentRule.preg", growth: "$currentRule.growth", aphrodisiacs: $currentRule.aphrodisiacs, autoSurgery: $currentRule.autoSurgery, choosesOwnAssignment: $currentRule.choosesOwnAssignment, lactation: $currentRule.lactation, autoBrand: $currentRule.autoBrand, pornFameSpending: "$currentRule.pornFameSpending", dietGrowthSupport: $currentRule.dietGrowthSupport, eyewear: "$currentRule.eyewear", underArmHColor: "$currentRule.underArmHColor", underArmHStyle: "$currentRule.underArmHStyle", assignment: <<if ndef $currentRule.assignment || $currentRule.assignment.length < 1>> +eqLower: $currentRule.eqLower, eqUpper: $currentRule.eqUpper, releaseRules: "$currentRule.releaseRules", clitSetting: "$currentRule.clitSetting", clitSettingSecondary: "$currentRule.clitSettingSecondary", speechRules: "$currentRule.speechRules", clothes: "$currentRule.clothes", collar: "$currentRule.collar", shoes: "$currentRule.shoes", virginAccessory: "$currentRule.virginAccessory", vaginalAccessory: "$currentRule.vaginalAccessory", dickAccessory: "$currentRule.dickAccessory", bellyAccessory: "$currentRule.bellyAccessory", buttplug: "$currentRule.buttplug", eyeColor: "$currentRule.eyeColor", makeup: "$currentRule.makeup", nails: "$currentRule.nails", hColor: "$currentRule.hColor", hLength: "$currentRule.hLength", hStyle: "$currentRule.hStyle", pubicHColor: "$currentRule.pubicHColor", pubicHStyle: "$currentRule.pubicHStyle", nipplesPiercing: "$currentRule.nipplesPiercing", areolaePiercing: "$currentRule.areolaePiercing", clitPiercing: "$currentRule.clitPiercing", vaginaLube: "$currentRule.vaginaLube", vaginaPiercing: "$currentRule.vaginaPiercing", dickPiercing: "$currentRule.dickPiercing", anusPiercing: "$currentRule.anusPiercing", lipsPiercing: "$currentRule.lipsPiercing", tonguePiercing: "$currentRule.tonguePiercing", earPiercing: "$currentRule.earPiercing", nosePiercing: "$currentRule.nosePiercing", eyebrowPiercing: "$currentRule.eyebrowPiercing", navelPiercing: "$currentRule.navelPiercing", corsetPiercing: "$currentRule.corsetPiercing", boobsTat: "$currentRule.boobsTat", buttTat: "$currentRule.buttTat", vaginaTat: "$currentRule.vaginaTat", dickTat: "$currentRule.dickTat", lipsTat: "$currentRule.lipsTat", anusTat: "$currentRule.anusTat", shouldersTat: "$currentRule.shouldersTat", armsTat: "$currentRule.armsTat", legsTat: "$currentRule.legsTat", backTat: "backTat", stampTat: "$currentRule.stampTat", curatives: $currentRule.curatives, livingRules: "$currentRule.livingRules", relationshipRules: "$currentRule.relationshipRules", standardPunishment: "situational", standardReward: "situational", diet: "$currentRule.diet", dietCum: "$currentRule.dietCum", dietMilk: "$currentRule.dietMilk", muscles: "$currentRule.muscles", XY: "$currentRule.XY", XX: "$currentRule.XX", gelding: "$currentRule.gelding", preg: "$currentRule.preg", growth: "$currentRule.growth", aphrodisiacs: $currentRule.aphrodisiacs, autoSurgery: $currentRule.autoSurgery, choosesOwnAssignment: $currentRule.choosesOwnAssignment, autoBrand: $currentRule.autoBrand, pornFameSpending: "$currentRule.pornFameSpending", dietGrowthSupport: $currentRule.dietGrowthSupport, eyewear: "$currentRule.eyewear", underArmHColor: "$currentRule.underArmHColor", underArmHStyle: "$currentRule.underArmHStyle", assignment: <<if ndef $currentRule.assignment || $currentRule.assignment.length < 1>> [], <<else>> $currentRule.assignment, diff --git a/src/uncategorized/freeRangeDairyAssignmentScene.tw b/src/uncategorized/freeRangeDairyAssignmentScene.tw index 9e88d827ff44a397f3218b56e009fb6d57a36b5a..5122001d875e070bbd121c1a805cf034aad09951 100644 --- a/src/uncategorized/freeRangeDairyAssignmentScene.tw +++ b/src/uncategorized/freeRangeDairyAssignmentScene.tw @@ -275,7 +275,7 @@ Unfortunately, there is neither a milkmaid providing personal assistance nor aut She shudders with joy. <</if>> Soon, the automatic sodomizer pumps the dildo in and out of her butt-hole. - <<if $activeSlave.balls > 0 >> + <<if ($activeSlave.balls > 0) && ($activeSlave.scrotum > 0)>> Her <<if $activeSlave.balls > 5 >>massive<</if>> balls swing back and forth. <</if>> <<if $activeSlave.dick > 0 >> @@ -306,9 +306,9 @@ The machine strokes her dick mechanically, but very pleasurable. <</if>> It does not take long for $activeSlave.slaveName to reach her first orgasm of many. Her muscles tense. <<if $activeSlave.dick > 0 >> - Her <<if $activeSlave.balls > 5 >>cum-engorged<</if>> balls draw up. - Her <<if $activeSlave.dick > 8 >>gargantuan member<<elseif $activeSlave.dick > 6 >>huge cock<<else>>dick<</if>> twitches and flexes within its receptacle. - <<if $activeSlave.balls >= 50>> + Her <<if $activeSlave.balls > 5 >>cum-engorged<</if>> balls draw up. + Her <<if $activeSlave.dick > 8 >>gargantuan member<<elseif $activeSlave.dick > 6 >>huge cock<<else>>dick<</if>> twitches and flexes within its receptacle. + <<if $activeSlave.balls >= 50>> A special tank beneath her holds her monolithic balls' endless ejaculate while the machine struggles to suck it away. <<elseif $activeSlave.balls >= 37>> A special tank attached to the hose holds her titanic balls' near endless ejaculate while the machine struggles to suck it away. @@ -316,14 +316,17 @@ It does not take long for $activeSlave.slaveName to reach her first orgasm of ma A special reservoir attached to the hose holds her massive balls' ridiculous ejaculate while the machine struggles to suck it away. <<elseif $activeSlave.balls >= 10>> The machine strains to suck down the giant load from her huge balls. - <<elseif $activeSlave.balls > 5 >> - The copious ejaculation from her over-sized balls give the machine something to work on. + <<elseif $activeSlave.balls > 5 >> + The copious ejaculation from her over-sized balls give the machine something to work on. <<elseif $activeSlave.balls > 0 >> - Her ejaculate is quickly sucked away. + Her ejaculate is quickly sucked away. <<else>> - Her ballslessness impedes cum-production, but ejaculating feels nice, anyway. + Her ballslessness impedes cum-production, but ejaculating feels nice, anyway. <</if>> <</if>> +<<if ($activeSlave.dick < 1) && ($activeSlave.balls > 0) && ($activeSlave.prostate > 0)>> + Cum splashes from her urethra and is quickly sucked away. +<</if>> <<if $activeSlave.lactation > 0 >> <br> The milking cups on her nipples switch from rhythmic pulsing into intense suction. Aided by her orgasm, milk spurts from her nipples @@ -338,7 +341,7 @@ The milking cups on her nipples switch from rhythmic pulsing into intense suctio <<elseif $activeSlave.boobs > 700 >> until there is enough for whitening a cup of coffee. Her average breasts cannot store much more milk. <<elseif ($arcologies[0].FSSlimnessEnthusiast > 80) >> - for a suprisingly long time. Your arcology succeeded in optimized the milking process for small breasts. + for a surprisingly long time. Your arcology succeeded in optimized the milking process for small breasts. <<else>> for a short time. Her small tits cannot dispense much milk at once. <</if>> diff --git a/src/uncategorized/initRules.tw b/src/uncategorized/initRules.tw index 04a6a16f23118e7bb3db5394617f55ce53601af5..eea67e7c3392e2e9bc58e11ccf0de7b7da6c4cd3 100644 --- a/src/uncategorized/initRules.tw +++ b/src/uncategorized/initRules.tw @@ -3,17 +3,13 @@ <<silently>> <<set $defaultRules = []>> -<<set _activeRule = {ID: 1, name: "Obedient Slaves", activation: "devotion", thresholdLower: 20, eqLower: true, thresholdUpper: "none", eqUpper: true, releaseRules: "no default setting", clitSetting: "no default setting", clitSettingXY: "no default setting", clitSettingXX: "no default setting", clitSettingEnergy: "no default setting", speechRules: "no default setting", clothes: "no default setting", fuckdoll: 0, choosesOwnClothes: 0, collar: "no default setting", shoes: "no default setting", virginAccessory: "no default setting", aVirginAccessory: "no default setting", vaginalAccessory: "no default setting", aVirginDickAccessory: "no default setting", dickAccessory: "no default setting", cSec: 0, bellyAccessory: "no default setting", aVirginButtplug: "no default setting", buttplug: "no default setting", markings: "none", eyeColor: "no default setting", makeup: "no default setting", nails: "no default setting", hColor: "no default setting", hLength: "no default setting", hStyle: "no default setting", pubicHColor: "no default setting", pubicHStyle: "no default setting", nipplesPiercing: "no default setting", areolaePiercing: "no default setting", clitPiercing: "no default setting", vaginaLube: "no default setting", vaginaPiercing: "no default setting", analArea: 1, dickPiercing: "no default setting", anusPiercing: "no default setting", lipsPiercing: "no default setting", tonguePiercing: "no default setting", earPiercing: "no default setting", nosePiercing: "no default setting", eyebrowPiercing: "no default setting", navelPiercing: "no default setting", corsetPiercing: "no default setting", boobsTat: "no default setting", buttTat: "no default setting", vaginaTat: "no default setting", dickTat: "no default setting", lipsTat: "no default setting", anusTat: "no default setting", shouldersTat: "no default setting", armsTat: "no default setting", legsTat: "no default setting", backTat: "no default setting", stampTat: "no default setting", curatives: "no default setting", livingRules: "no default setting", relationshipRules: "no default setting", standardPunishment: "no default setting", standardReward: "no default setting", useRulesAssistant: 1, diet: "no default setting", dietCum: "no default setting", dietMilk: "no default setting", muscles: "no default setting", XY: "no default setting", XX: "no default setting", gelding: "no default setting", preg: "no default setting", growth: "no default setting", aphrodisiacs: "no default setting", autoSurgery: 0, choosesOwnAssignment: 0, lactation: 0, autoBrand: 0, pornFameSpending: "no default setting", dietGrowthSupport: 0, eyewear: "no default setting", assignment: [], excludeAssignment: [], setAssignment: "none", facility: [], excludeFacility: [], assignFacility: "none", excludeSpecialSlaves: true, facilityRemove: false, removalAssignment: "rest", selectedSlaves: [], excludedSlaves: [], surgery: {lactation: "no default setting", cosmetic: 0, accent: "no default setting", shoulders: "no default setting", shouldersImplant: "no default setting", boobs: "no default setting", hips: "no default setting", hipsImplant: "no default setting", butt: "no default setting", faceShape: "no default setting", lips: "no default setting", holes: 0}, underArmHColor: "no default setting", underArmHStyle: "no default setting" }>> +<<set _activeRule = {ID: 1, name: "Obedient Slaves", condition: {id: ">=", first: {id: "(name)", name: "devotion"}, second: {id: "(number)", value: 20}}, releaseRules: "no default setting", clitSetting: "no default setting", clitSettingXY: "no default setting", clitSettingXX: "no default setting", clitSettingEnergy: "no default setting", speechRules: "no default setting", clothes: "no default setting", collar: "no default setting", shoes: "no default setting", virginAccessory: "no default setting", aVirginAccessory: "no default setting", vaginalAccessory: "no default setting", aVirginDickAccessory: "no default setting", dickAccessory: "no default setting", bellyAccessory: "no default setting", aVirginButtplug: "no default setting", buttplug: "no default setting", eyeColor: "no default setting", makeup: "no default setting", nails: "no default setting", hColor: "no default setting", hLength: "no default setting", hStyle: "no default setting", pubicHColor: "no default setting", pubicHStyle: "no default setting", nipplesPiercing: "no default setting", areolaePiercing: "no default setting", clitPiercing: "no default setting", vaginaLube: "no default setting", vaginaPiercing: "no default setting", dickPiercing: "no default setting", anusPiercing: "no default setting", lipsPiercing: "no default setting", tonguePiercing: "no default setting", earPiercing: "no default setting", nosePiercing: "no default setting", eyebrowPiercing: "no default setting", navelPiercing: "no default setting", corsetPiercing: "no default setting", boobsTat: "no default setting", buttTat: "no default setting", vaginaTat: "no default setting", dickTat: "no default setting", lipsTat: "no default setting", anusTat: "no default setting", shouldersTat: "no default setting", armsTat: "no default setting", legsTat: "no default setting", backTat: "no default setting", stampTat: "no default setting", curatives: "no default setting", livingRules: "no default setting", relationshipRules: "no default setting", standardPunishment: "no default setting", standardReward: "no default setting", diet: "no default setting", dietCum: "no default setting", dietMilk: "no default setting", muscles: "no default setting", XY: "no default setting", XX: "no default setting", gelding: "no default setting", preg: "no default setting", growth: "no default setting", aphrodisiacs: "no default setting", autoSurgery: 0, autoBrand: 0, pornFameSpending: "no default setting", dietGrowthSupport: 0, eyewear: "no default setting", assignment: [], excludeAssignment: [], setAssignment: "none", facility: [], excludeFacility: [], assignFacility: "none", excludeSpecialSlaves: true, facilityRemove: false, removalAssignment: "rest", selectedSlaves: [], excludedSlaves: [], surgery: {lactation: "no default setting", cosmetic: 0, accent: "no default setting", shoulders: "no default setting", shouldersImplant: "no default setting", boobs: "no default setting", hips: "no default setting", hipsImplant: "no default setting", butt: "no default setting", faceShape: "no default setting", lips: "no default setting", holes: 0}, underArmHColor: "no default setting", underArmHStyle: "no default setting" }>> <<set $defaultRules.push(_activeRule)>> -<<set _activeRule = {ID: 2, name: "Disobedient Slaves", activation: "devotion", thresholdLower: "none", eqLower: true, thresholdUpper: 20, eqUpper: false, releaseRules: "no default setting", clitSetting: "no default setting", clitSettingXY: "no default setting", clitSettingXX: "no default setting", clitSettingEnergy: "no default setting", speechRules: "no default setting", clothes: "no default setting", fuckdoll: 0, choosesOwnClothes: 0, collar: "no default setting", shoes: "no default setting", virginAccessory: "no default setting", aVirginAccessory: "no default setting", vaginalAccessory: "no default setting", aVirginDickAccessory: "no default setting", dickAccessory: "no default setting", cSec: 0, bellyAccessory: "no default setting", aVirginButtplug: "no default setting", buttplug: "no default setting", markings: "none", eyeColor: "no default setting", makeup: "no default setting", nails: "no default setting", hColor: "no default setting", hLength: "no default setting", hStyle: "no default setting", pubicHColor: "no default setting", pubicHStyle: "no default setting", nipplesPiercing: "no default setting", areolaePiercing: "no default setting", clitPiercing: "no default setting", vaginaLube: "no default setting", vaginaPiercing: "no default setting", analArea: 1, dickPiercing: "no default setting", anusPiercing: "no default setting", lipsPiercing: "no default setting", tonguePiercing: "no default setting", earPiercing: "no default setting", nosePiercing: "no default setting", eyebrowPiercing: "no default setting", navelPiercing: "no default setting", corsetPiercing: "no default setting", boobsTat: "no default setting", buttTat: "no default setting", vaginaTat: "no default setting", dickTat: "no default setting", lipsTat: "no default setting", anusTat: "no default setting", shouldersTat: "no default setting", armsTat: "no default setting", legsTat: "no default setting", backTat: "no default setting", stampTat: "no default setting", curatives: "no default setting", livingRules: "spare", relationshipRules: "no default setting", standardPunishment: "no default setting", standardReward: "no default setting", useRulesAssistant: 1, diet: "no default setting", dietCum: "no default setting", dietMilk: "no default setting", muscles: "no default setting", XY: "no default setting", XX: "no default setting", gelding: "no default setting", preg: "no default setting", growth: "no default setting", aphrodisiacs: "no default setting", autoSurgery: 0, choosesOwnAssignment: 0, lactation: 0, autoBrand: 0, pornFameSpending: "no default setting", dietGrowthSupport: 0, eyewear: "no default setting", assignment: [], excludeAssignment: [], setAssignment: "none", facility: [], excludeFacility: [], assignFacility: "none", excludeSpecialSlaves: true, facilityRemove: false, removalAssignment: "rest", selectedSlaves: [], excludedSlaves: [], surgery: {lactation: "no default setting", cosmetic: 0, accent: "no default setting", shoulders: "no default setting", shouldersImplant: "no default setting", boobs: "no default setting", hips: "no default setting", hipsImplant: "no default setting", butt: "no default setting", faceShape: "no default setting", lips: "no default setting", holes: 0}, underArmHColor: "no default setting", underArmHStyle: "no default setting"}>> +<<set _activeRule = {ID: 2, name: "Disobedient Slaves", condition: {id: "<", first: {id: "(name)", name: "devotion"}, second: {id: "(number)", value: 20}}, releaseRules: "no default setting", clitSetting: "no default setting", clitSettingXY: "no default setting", clitSettingXX: "no default setting", clitSettingEnergy: "no default setting", speechRules: "no default setting", clothes: "no default setting", collar: "no default setting", shoes: "no default setting", virginAccessory: "no default setting", aVirginAccessory: "no default setting", vaginalAccessory: "no default setting", aVirginDickAccessory: "no default setting", dickAccessory: "no default setting", bellyAccessory: "no default setting", aVirginButtplug: "no default setting", buttplug: "no default setting", eyeColor: "no default setting", makeup: "no default setting", nails: "no default setting", hColor: "no default setting", hLength: "no default setting", hStyle: "no default setting", pubicHColor: "no default setting", pubicHStyle: "no default setting", nipplesPiercing: "no default setting", areolaePiercing: "no default setting", clitPiercing: "no default setting", vaginaLube: "no default setting", vaginaPiercing: "no default setting", dickPiercing: "no default setting", anusPiercing: "no default setting", lipsPiercing: "no default setting", tonguePiercing: "no default setting", earPiercing: "no default setting", nosePiercing: "no default setting", eyebrowPiercing: "no default setting", navelPiercing: "no default setting", corsetPiercing: "no default setting", boobsTat: "no default setting", buttTat: "no default setting", vaginaTat: "no default setting", dickTat: "no default setting", lipsTat: "no default setting", anusTat: "no default setting", shouldersTat: "no default setting", armsTat: "no default setting", legsTat: "no default setting", backTat: "no default setting", stampTat: "no default setting", curatives: "no default setting", livingRules: "spare", relationshipRules: "no default setting", standardPunishment: "no default setting", standardReward: "no default setting", diet: "no default setting", dietCum: "no default setting", dietMilk: "no default setting", muscles: "no default setting", XY: "no default setting", XX: "no default setting", gelding: "no default setting", preg: "no default setting", growth: "no default setting", aphrodisiacs: "no default setting", autoSurgery: 0, autoBrand: 0, pornFameSpending: "no default setting", dietGrowthSupport: 0, eyewear: "no default setting", assignment: [], excludeAssignment: [], setAssignment: "none", facility: [], excludeFacility: [], assignFacility: "none", excludeSpecialSlaves: true, facilityRemove: false, removalAssignment: "rest", selectedSlaves: [], excludedSlaves: [], surgery: {lactation: "no default setting", cosmetic: 0, accent: "no default setting", shoulders: "no default setting", shouldersImplant: "no default setting", boobs: "no default setting", hips: "no default setting", hipsImplant: "no default setting", butt: "no default setting", faceShape: "no default setting", lips: "no default setting", holes: 0}, underArmHColor: "no default setting", underArmHStyle: "no default setting"}>> <<set $defaultRules.push(_activeRule)>> -<<set _activeRule = {ID: 3, name: "Unhealthy Slaves", activation: "health", thresholdLower: "none", eqLower: true, thresholdUpper: -10, eqUpper: false, releaseRules: "no default setting", clitSetting: "no default setting", clitSettingXY: "no default setting", clitSettingXX: "no default setting", clitSettingEnergy: "no default setting", speechRules: "no default setting", clothes: "no default setting", fuckdoll: 0, choosesOwnClothes: 0, collar: "no default setting", shoes: "no default setting", virginAccessory: "no default setting", aVirginAccessory: "no default setting", vaginalAccessory: "no default setting", dickAccessory: "no default setting", aVirginDickAccessory: "no default setting", cSec: 0, bellyAccessory: "no default setting", aVirginButtplug: "no default setting", buttplug: "no default setting", markings: "none", eyeColor: "no default setting", makeup: "no default setting", nails: "no default setting", hColor: "no default setting", hLength: "no default setting", hStyle: "no default setting", pubicHColor: "no default setting", pubicHStyle: "no default setting", nipplesPiercing: "no default setting", areolaePiercing: "no default setting", clitPiercing: "no default setting", vaginaLube: "no default setting", vaginaPiercing: "no default setting", analArea: 1, dickPiercing: "no default setting", anusPiercing: "no default setting", lipsPiercing: "no default setting", tonguePiercing: "no default setting", earPiercing: "no default setting", nosePiercing: "no default setting", eyebrowPiercing: "no default setting", navelPiercing: "no default setting", corsetPiercing: "no default setting", boobsTat: "no default setting", buttTat: "no default setting", vaginaTat: "no default setting", dickTat: "no default setting", lipsTat: "no default setting", anusTat: "no default setting", shouldersTat: "no default setting", armsTat: "no default setting", legsTat: "no default setting", backTat: "no default setting", stampTat: "no default setting", curatives: "applied", livingRules: "no default setting", relationshipRules: "no default setting", standardPunishment: "no default setting", standardReward: "no default setting", useRulesAssistant: 1, diet: "no default setting", dietCum: "no default setting", dietMilk: "no default setting", muscles: "no default setting", XY: "no default setting", XX: "no default setting", gelding: "no default setting", preg: "no default setting", growth: "no default setting", aphrodisiacs: "no default setting", autoSurgery: 0, choosesOwnAssignment: 0, lactation: 0, autoBrand: 0, pornFameSpending: "no default setting", dietGrowthSupport: 0, eyewear: "no default setting", assignment: [], excludeAssignment: [], setAssignment: "none", facility: [], excludeFacility: [], assignFacility: "none", excludeSpecialSlaves: true, facilityRemove: false, removalAssignment: "rest", selectedSlaves: [], excludedSlaves: [], surgery: {lactation: "no default setting", cosmetic: 0, accent: "no default setting", shoulders: "no default setting", shouldersImplant: "no default setting", boobs: "no default setting", hips: "no default setting", hipsImplant: "no default setting", butt: "no default setting", faceShape: "no default setting", lips: "no default setting", holes: 0}, underArmHColor: "no default setting", underArmHStyle: "no default setting"}>> +<<set _activeRule = {ID: 3, name: "Unhealthy Slaves", condition: {id: "<", first: {id: "(name)", name: "health"}, second: {id: "(number)", value: -10}}, releaseRules: "no default setting", clitSetting: "no default setting", clitSettingXY: "no default setting", clitSettingXX: "no default setting", clitSettingEnergy: "no default setting", speechRules: "no default setting", clothes: "no default setting", collar: "no default setting", shoes: "no default setting", virginAccessory: "no default setting", aVirginAccessory: "no default setting", vaginalAccessory: "no default setting", dickAccessory: "no default setting", aVirginDickAccessory: "no default setting", bellyAccessory: "no default setting", aVirginButtplug: "no default setting", buttplug: "no default setting", eyeColor: "no default setting", makeup: "no default setting", nails: "no default setting", hColor: "no default setting", hLength: "no default setting", hStyle: "no default setting", pubicHColor: "no default setting", pubicHStyle: "no default setting", nipplesPiercing: "no default setting", areolaePiercing: "no default setting", clitPiercing: "no default setting", vaginaLube: "no default setting", vaginaPiercing: "no default setting", dickPiercing: "no default setting", anusPiercing: "no default setting", lipsPiercing: "no default setting", tonguePiercing: "no default setting", earPiercing: "no default setting", nosePiercing: "no default setting", eyebrowPiercing: "no default setting", navelPiercing: "no default setting", corsetPiercing: "no default setting", boobsTat: "no default setting", buttTat: "no default setting", vaginaTat: "no default setting", dickTat: "no default setting", lipsTat: "no default setting", anusTat: "no default setting", shouldersTat: "no default setting", armsTat: "no default setting", legsTat: "no default setting", backTat: "no default setting", stampTat: "no default setting", curatives: "applied", livingRules: "no default setting", relationshipRules: "no default setting", standardPunishment: "no default setting", standardReward: "no default setting", diet: "no default setting", dietCum: "no default setting", dietMilk: "no default setting", muscles: "no default setting", XY: "no default setting", XX: "no default setting", gelding: "no default setting", preg: "no default setting", growth: "no default setting", aphrodisiacs: "no default setting", autoSurgery: 0, autoBrand: 0, pornFameSpending: "no default setting", dietGrowthSupport: 0, eyewear: "no default setting", assignment: [], excludeAssignment: [], setAssignment: "none", facility: [], excludeFacility: [], assignFacility: "none", excludeSpecialSlaves: true, facilityRemove: false, removalAssignment: "rest", selectedSlaves: [], excludedSlaves: [], surgery: {lactation: "no default setting", cosmetic: 0, accent: "no default setting", shoulders: "no default setting", shouldersImplant: "no default setting", boobs: "no default setting", hips: "no default setting", hipsImplant: "no default setting", butt: "no default setting", faceShape: "no default setting", lips: "no default setting", holes: 0}, underArmHColor: "no default setting", underArmHStyle: "no default setting"}>> <<set $defaultRules.push(_activeRule)>> -<<if def $defaultRulesSlave>> -<<unset $defaultRulesSlave>> -<</if>> - <</silently>> diff --git a/src/uncategorized/longSlaveDescription.tw b/src/uncategorized/longSlaveDescription.tw index e62381f7770bff028a98a9eb747b19483d05437c..439dd79f6b97894835c15ae6c37fdf2aa87f2666 100644 --- a/src/uncategorized/longSlaveDescription.tw +++ b/src/uncategorized/longSlaveDescription.tw @@ -100,8 +100,6 @@ She comes to you for an inspection straight from confinement in a glory hole. <<elseif $activeSlave.assignment == "get milked">> between milkings. -<<elseif $activeSlave.assignment == "get cockmilked">> - between cockmilkings. <<elseif $activeSlave.assignment == "rest">> from where she was resting. <<elseif $activeSlave.assignment == "please you">> diff --git a/src/uncategorized/main.tw b/src/uncategorized/main.tw index be930479320dd9b249d1f3e7e53312d6861b78e9..0622f666d0d3e7545018beef1d0bee109c2e6a2d 100644 --- a/src/uncategorized/main.tw +++ b/src/uncategorized/main.tw @@ -140,6 +140,9 @@ <<set $incubatorNameCaps = "The Incubator">> <</if>> +/* Saves use the first eight printed words to make the "file name", the below line cheats and makes saves here nicer named. */ +@@font-size: 0; $arcologies[0].name, Week $week, $slaves.length Slaves, ¤$cash … … … @@ + <<if $newModelUI == 1>><<DisplayBuilding>><</if>> <<if $seeArcology == 1>> <<include "Arcology Description">> | [[Hide|Main][$seeArcology = 0]]<br><</if>> diff --git a/src/uncategorized/marketsReport.tw b/src/uncategorized/marketsReport.tw new file mode 100644 index 0000000000000000000000000000000000000000..f05488787fccdff388cfbca58580808fa0943925 --- /dev/null +++ b/src/uncategorized/marketsReport.tw @@ -0,0 +1,120 @@ +:: Markets Report [nobr] + +//FC Markets Report:// + +<<set $assetAffected = either("general", "slaves", "entrapment", "capture", "training", "surgical", "drugs")>> +<<set $assetDirection = either("up", "down")>> + +<<if $assetAffected == "general">> + <<if $assetDirection == "up">> + <<if random(1,100) > 50>> + ...rising energy costs drove @@.yellowgreen;rising prices@@ of several market baskets... + <<else>> + ...conflict-driven increases in transportation costs increase @@.yellowgreen;price indices@@... + <</if>> + <<set $generalAssetPrice += 2>> + <<else>> + <<if random(1,100) > 50>> + ...increasing Free Cities slave labor effects @@.gold;general prices@@... + <<else>> + ...Antarctic oil shale pushing down energy prices, driving down major @@.gold;price indices@@... + <</if>> + <<set $generalAssetPrice -= 2>> + <</if>> +<<elseif $assetAffected == "slaves">> + <<if $assetDirection == "up">> + <<if random(1,100) > 50>> + ...heavy demand for fashionable varieties drove @@.yellowgreen;rising slave prices@@ last... + <<else>> + ...study suggested the sexual revolution would continue to drive up @@.yellowgreen;slave prices@@... + <</if>> + <<set $slaveAssetPrice += 2>> + <<else>> + <<if random(1,100) > 50>> + ...increased supply due to bush wars drove down @@.gold;slave prices@@... + <<else>> + ...@@.gold;slave prices@@ continue to fall due to major improvements in training... + <</if>> + <<set $slaveAssetPrice -= 2>> + <</if>> +<<elseif $assetAffected == "entrapment">> + <<if $assetDirection == "up">> + <<if random(1,100) > 50>> + ...prospect of deregulation drove a @@.yellowgreen;scramble@@ for means of enslavement... + <<else>> + ...law would legalize enslavement, driving @@.yellowgreen;high prices@@ for associated... + <</if>> + <<set $entrapmentAssetPrice += 2>> + <<else>> + <<if random(1,100) > 50>> + ...reactionism produced lower demand and @@.gold;lower prices@@ for legal enslavement... + <<else>> + ...report on low success rates @@.gold;drove down@@ value of legal enslavement methods... + <</if>> + <<set $entrapmentAssetPrice -= 2>> + <</if>> +<<elseif $assetAffected == "capture">> + <<if $assetDirection == "up">> + <<if random(1,100) > 50>> + ...declaration of war @@.yellowgreen;pushed up@@ average mercenary wage... + <<else>> + ...advancing technology to blame for @@.yellowgreen;rising costs@@ of assets for wet work... + <</if>> + <<set $captureAssetPrice += 2>> + <<else>> + <<if random(1,100) > 50>> + ...rumored peace treaty @@.gold;pushed down@@ mercenary contract clearing rate... + <<else>> + ...demobilization of the cash-strapped army expected to produce mercenary @@.gold;glut@@... + <</if>> + <<set $captureAssetPrice -= 2>> + <</if>> +<<elseif $assetAffected == "training">> + <<if $assetDirection == "up">> + <<if random(1,100) > 50>> + ...rising demand in turn @@.yellowgreen;pushing up@@ prices for most means of slave training... + <<else>> + ...public demand for ever-better slave training inevitably @@.yellowgreen;increase@@ training costs... + <</if>> + <<set $trainingAssetPrice += 2>> + <<else>> + <<if random(1,100) > 50>> + ...competition from low-cost slave breaking firms @@.gold;reducing@@ asking price for... + <<else>> + ...increased automation of slave training @@.gold;negatively impacting@@ training contracts... + <</if>> + <<set $trainingAssetPrice -= 2>> + <</if>> +<<elseif $assetAffected == "surgical">> + <<if $assetDirection == "up">> + <<if random(1,100) > 50>> + ...fashionable extravagant implant procedures @@.yellowgreen;driving prices@@ of remote surgical... + <<else>> + ...near-universal breast implants producing corresponding @@.yellowgreen;price inflation@@ of surgery... + <</if>> + <<set $surgicalAssetPrice += 2>> + <<else>> + <<if random(1,100) > 50>> + ...vastly reduced overhead with remote surgery @@.gold;hitting prices@@ of surgery hard... + <<else>> + ...oversupply after major manufacturers converted lines to @@.gold;low-cost@@ implant production... + <</if>> + <<set $surgicalAssetPrice -= 2>> + <</if>> +<<elseif $assetAffected == "drugs">> + <<if $assetDirection == "up">> + <<if random(1,100) > 50>> + ...intense demand for curatives in conflict zones @@.yellowgreen;increasing prices@@... + <<else>> + ...setbacks in growth hormone human testing expected to @@.yellowgreen;increase prices@@ of traditional formula... + <</if>> + <<set $drugAssetPrice += 2>> + <<else>> + <<if random(1,100) > 50>> + ...new formula @@.gold;cut costs@@ of common curatives by an unprecedented... + <<else>> + ...glut caused by big pharma reorienting towards @@.gold;cheap,@@ mass-produced aphros... + <</if>> + <<set $drugAssetPrice -= 2>> + <</if>> +<</if>> diff --git a/src/uncategorized/neighborsDevelopment.tw b/src/uncategorized/neighborsDevelopment.tw index cf9cbf06e966ba2185875375967222b8e5ef4084..b7e98c7890b832d717c30db77cc47547bdbd2c3a 100644 --- a/src/uncategorized/neighborsDevelopment.tw +++ b/src/uncategorized/neighborsDevelopment.tw @@ -422,7 +422,11 @@ has an estimated GSP of @@.yellowgreen;¤<<print Math.trunc((0.1*$arcologies[$i] <<set $arcologies[$i].minority = 100-$arcologies[$i].ownership>> <</if>> <<else>> - <<set $arcologies[$i].minority = 100 - $arcologies[$i].ownership - $arcologies[$i].PCminority>> + <<if (($arcologies[$i].ownership + $arcologies[$i].PCminority) >= 99) && ($arcologies[$i].rival != 1)>> + <<set $arcologies[$i].ownership = 98 - $arcologies[$i].PCminority>> + <<else>> + <<set $arcologies[$i].minority = 98 - $arcologies[$i].ownership - $arcologies[$i].PCminority>> + <</if>> <</if>> <</if>> <</if>> diff --git a/src/uncategorized/pBioreactorPerfected.tw b/src/uncategorized/pBioreactorPerfected.tw index 71ee96e744a36edf058d6f7c3bbe6aaa92c8833e..ac8639db200334d4218787b14fb4cb6641eba3a2 100644 --- a/src/uncategorized/pBioreactorPerfected.tw +++ b/src/uncategorized/pBioreactorPerfected.tw @@ -74,7 +74,7 @@ When you need peace and quiet to work through a difficult problem, you sometimes <<else>> <<if $PC.title == 1>>"Sir,"<<else>>"Ma'am,"<</if>> she says, "I'd like to ask you something about this slave." <</if>> -You stop and consider the cow, from her titanic breasts to her <<if $activeSlave.balls > 5>>swollen balls<<elseif $activeSlave.vagina > -1>>slavering cunt<<else>>distended stomach<</if>> to her dildo-filled anus. +You stop and consider the cow, from her titanic breasts to her <<if ($activeSlave.balls > 5) && ($activeSlave.scrotum > 0)>>swollen balls<<elseif $activeSlave.vagina > -1>>slavering cunt<<else>>distended stomach<</if>> to her dildo-filled anus. <<if $assistant == 0>> "This slave is permanently dependent on her milking machine," it continues. "She cannot be removed without uneconomical expenditures, and is unlikely to be useful elsewhere. Additionally, there is nothing more that can be done to make her breasts any bigger<<if $activeSlave.balls > 5>> or her testicles any more productive<<elseif $activeSlave.ovaries == 1>> or her womb any more productive<</if>>. Her development is essentially final, and that status can be made official. She could be redesignated as equipment. Other than her designation, this would make little difference: the machine would be slightly less cautious with her drugs, future intubations, and such. She would be removed from the slave lists." diff --git a/src/uncategorized/persBusiness.tw b/src/uncategorized/persBusiness.tw new file mode 100644 index 0000000000000000000000000000000000000000..9084d0e0b5bac68571b456bcec97b88fbec4453c --- /dev/null +++ b/src/uncategorized/persBusiness.tw @@ -0,0 +1,359 @@ +:: Personal Business [nobr] + +__Personal Business__ +<br> + +<<if $cash < 0>> + @@.red;You are in debt.@@ This week, interest came to ¤<<print (1+Math.trunc(Math.abs($cash)/100))>>. + <<set $cash -= (1+Math.trunc(Math.abs($cash)/100))>> + <<if $arcologies[0].FSRomanRevivalist != "unset">> + Society @@.red;very strongly disapproves@@ of your being in debt; this damages the idea that you model yourself on what a Roman leader should be. + <<FSChange "RomanRevivalist" -10>> + <</if>> + <<if $cash < 0 && $cash > -25000 && $arcologies[0].FSRestartDecoration == 100>> + Money is quickly shifted to bring you out of debt, though @@.red;the Societal Elite are left doubting@@ your worth. + <<set $cash = 0>> + <<set $failedElite += 100>> + <<elseif $cash < -9000>> + @@.red;WARNING: you are dangerously indebted.@@ Immediately acquire more liquid assets or you will be in danger of being enslaved yourself. + <<set $debtWarned += 1>> + <<if $debtWarned > 1>> + <<set $ui = "start">> + <<set $gameover = "debt">><<goto "Gameover">> + <</if>> + <</if>> +<<elseif ($personalAttention == "whoring")>> + <<if $PC.preg >= 16>> + <<if $arcologies[0].FSRepopulationFocus != "unset">> + <<set $seed = random(2000,4500)>> + You focus on finding a "date" this week and earn @@.yellowgreen;¤<<print Math.trunc(($seed*($rep/500))+($PC.preg*100))>>@@ for your body, much more than usual; guess your pregnancy focused population wants your baby rounded body more than ever. However, doing such things @@.red;damages your reputation@@. + <<set $cash += Math.trunc(($seed*($rep/500))+($PC.preg*100))>> + <<set $rep = Math.trunc($rep*.90)>> + <<elseif $arcologies[0].FSRestart != "unset">> + <<if $PC.pregSource != -1>> + You focus on finding a "date" this week and earn @@.yellowgreen;¤25@@, barely enough to cover the abortion the john that gave it to you told you to get. Showing off your gravid body @@.red;infuriates your citizens and cripples your reputation@@. + <<set $cash += 25>> + <<set $rep = Math.trunc($rep*.25)>> + <<set $failedElite += 25>> + <<else>> + <<set $seed = random(2000,4500)>> + You focus on finding a "date" this week and earn @@.yellowgreen;¤<<print Math.trunc($seed*($rep/500))>>@@ for your body. However, doing such things @@.red;damages your reputation@@. + <<set $cash += Math.trunc($seed*($rep/500))>> + <<set $rep = Math.trunc($rep*.75)>> + <</if>> + <<else>> + <<set $seed = random(5,2500)>> + You focus on finding a "date" this week and earn @@.yellowgreen;¤<<print Math.trunc($seed*($rep/800))>>@@ for your body, much less than usual; your pregnancy must be turning off potential clients. However, doing such things @@.red;damages your reputation@@. + <<set $cash += Math.trunc($seed*($rep/800))>> + <<set $rep = Math.trunc($rep*.75)>> + <</if>> + <<else>> + <<set $seed = random(2000,4500)>> + You focus on finding a "date" this week and earn @@.yellowgreen;¤<<print Math.trunc($seed*($rep/500))>>@@ for your body. However, doing such things @@.red;damages your reputation@@. + <<set $cash += Math.trunc($seed*($rep/500))>> + <<set $rep = Math.trunc($rep*.75)>> + <<if $PC.preg == 0 && ($PC.vagina == 1)>> + <<if random(1,100) > 80>> + <<set $PC.preg = 1>> + <<set $PC.pregSource = -2>> + <</if>> + <</if>> + <</if>> +<<elseif ($personalAttention == "upkeep")>> + <<if $PC.preg >= 20>> + You spend your free time hustling around your penthouse, cleaning and making sure everything is in order. You manage to reduce your upkeep by 20%. Your pregnancy slows you down some, but you're used to working around it. + <<else>> + You spend your free time hustling around your penthouse, cleaning and making sure everything is in order. You manage to reduce your upkeep by 25%. <<if $PC.vagina == 1>>This is much easier to do without a big baby bump in the way.<</if>> + <</if>> +<<elseif ($cash > 1000) && ($personalAttention == "business")>> + <<if $PC.preg >= 20>> + <<set $seed = random(500,1000)>> + <<else>> + <<set $seed = random(1000,1500)>> + <</if>> + <<if $PC.trading >= 100>> + You focus on business and leverage your @@.springgreen;venture capital experience@@ to make good money: + <<set $seed += random(500,1000)>> + <<elseif $PC.career == "arcology owner">> + You focus on business and leverage your @@.springgreen;Free Cities experience@@ to make good money: + <<set $seed += random(500,1000)>> + <<else>> + You focus on business this week and make money: + <</if>> + @@.yellowgreen;¤<<print ($seed+Math.trunc(Math.abs($cash)/40))>>.@@ + <<set $cash += ($seed+Math.trunc(Math.abs($cash)/40))>> + <<if $arcologies[0].FSRomanRevivalist != "unset">> + Society @@.green;approves@@ of your close attention to your own affairs; this advances your image as a <<if def $PC.customTitle>>$PC.customTitle<<elseif $PC.title == 1>>well-rounded Roman man<<else>>responsible Roman lady<</if>>. + <<FSChange "RomanRevivalist" 2>> + <</if>> +<<elseif ($cash > 1000)>> + You have significant assets. This week, your business endeavors made you @@.yellowgreen;¤<<print (1+Math.trunc(Math.abs($cash)/50))>>.@@ + <<set $cash += (1+Math.trunc(Math.abs($cash)/50))>> +<<else>> + You have enough cash to manage your affairs, but not enough to do much business. +<</if>> + +<<if ($personalAttention == "trading")>> + <<set _oldSkill = $PC.trading>> + <<set $PC.trading += random(5,10)>> + <<if _oldSkill <= 10>> + <<if $PC.trading > 10>> + You now have @@.green;basic knowledge@@ about how to be a venture capitalist. + <</if>> + <<elseif _oldSkill <= 30>> + <<if $PC.trading > 30>> + You now have @@.green;some skill@@ as a venture capitalist. + <</if>> + <<elseif _oldSkill <= 60>> + <<if $PC.trading > 60>> + You are now an @@.green;expert venture capitalist.@@ + <</if>> + <<else>> + <<if $PC.trading >= 100>> + <<set $personalAttention = "business">> + You are now a @@.green;master venture capitalist.@@ + <</if>> + <</if>> + +<<elseif ($personalAttention == "warfare")>> + <<set _oldSkill = $PC.warfare>> + <<set $PC.warfare += random(5,10)>> + <<if _oldSkill <= 10>> + <<if $PC.warfare > 10>> + You now have @@.green;basic knowledge@@ about how to be a mercenary. + <</if>> + <<elseif _oldSkill <= 30>> + <<if $PC.warfare > 30>> + You now have @@.green;some skill@@ as a mercenary. + <</if>> + <<elseif _oldSkill <= 60>> + <<if $PC.warfare > 60>> + You are now an @@.green;expert mercenary.@@ + <</if>> + <<else>> + <<if $PC.warfare >= 100>> + <<set $personalAttention = "business">> + You are now a @@.green;master mercenary.@@ + <</if>> + <</if>> + +<<elseif ($personalAttention == "slaving")>> + <<set _oldSkill = $PC.slaving>> + <<set $PC.slaving += random(5,10)>> + <<if _oldSkill <= 10>> + <<if $PC.slaving > 10>> + You now have @@.green;basic knowledge@@ about how to be a slaver. + <</if>> + <<elseif _oldSkill <= 30>> + <<if $PC.slaving > 30>> + You now have @@.green;some skill@@ as a slaver. + <</if>> + <<elseif _oldSkill <= 60>> + <<if $PC.slaving > 60>> + You are now an @@.green;expert slaver.@@ + <</if>> + <<else>> + <<if $PC.slaving >= 100>> + <<set $personalAttention = "business">> + You are now a @@.green;master slaver.@@ + <</if>> + <</if>> + +<<elseif ($personalAttention == "engineering")>> + <<set _oldSkill = $PC.engineering>> + <<set $PC.engineering += random(5,10)>> + <<if _oldSkill <= 10>> + <<if $PC.engineering > 10>> + You now have @@.green;basic knowledge@@ about how to be an arcology engineer. + <</if>> + <<elseif _oldSkill <= 30>> + <<if $PC.engineering > 30>> + You now have @@.green;some skill@@ as an arcology engineer. + <</if>> + <<elseif _oldSkill <= 60>> + <<if $PC.engineering > 60>> + You are now an @@.green;expert arcology engineer.@@ + <</if>> + <<else>> + <<if $PC.engineering >= 100>> + <<set $personalAttention = "business">> + You are now a @@.green;master arcology engineer.@@ + <</if>> + <</if>> + +<<elseif ($personalAttention == "medicine")>> + <<set _oldSkill = $PC.medicine>> + <<set $PC.medicine += random(5,10)>> + <<if _oldSkill <= 10>> + <<if $PC.medicine > 10>> + You now have @@.green;basic knowledge@@ about how to be a slave surgeon. + <</if>> + <<elseif _oldSkill <= 30>> + <<if $PC.medicine > 30>> + You now have @@.green;some skill@@ as a slave surgeon. + <</if>> + <<elseif _oldSkill <= 60>> + <<if $PC.medicine > 60>> + You are now an @@.green;expert slave surgeon.@@ + <</if>> + <<else>> + <<if $PC.medicine >= 100>> + <<set $personalAttention = "business">> + You are now a @@.green;master slave surgeon.@@ + <</if>> + <</if>> + +<</if>> + +<<if $cash > 1000>> +<<if $CashForRep == 1>> + This week you gave up business opportunities worth ¤$policyCost to help deserving citizens, @@.green;burnishing your reputation.@@ + <<set $rep += 100, $cash -= $policyCost>> +<</if>> +<</if>> +<<if $rep > 100>> +<<if $RepForCash == 1>> + This week you used your position to secure business opportunities worth ¤$policyCost at the expense of citizens, @@.red;damaging your reputation.@@ + <<set $rep -= 100, $cash += $policyCost>> +<</if>> +<</if>> +<<if $rep <= 18000>> +<<if $rep > 100>> +<<if $RegularParties != 1>> + Your @@.red;reputation is damaged@@ by your not hosting regular social events for your leading citizens. + <<set $rep -= 100>> +<</if>> +<</if>> +<</if>> + +Routine upkeep of your demesne costs @@.yellow;¤$costs.@@ +<<if $plot == 1>> +<<if $week > 10>> +<<if $weatherToday.severity-$weatherCladding > 2>> + <<set $weatherAwareness = 1>> + <<if $weatherCladding == 1>> + <<set $seed = Math.trunc((($weatherToday.severity-3)*($arcologies[0].prosperity*random(50,100)))+random(1,100))>> + $arcologies[0].name's hardened exterior only partially resisted the extreme weather this week, and it requires repairs costing @@.yellow;¤$seed.@@ Your citizens are @@.green;grateful@@ to you for upgrading $arcologies[0].name to provide a safe haven from the terrible climate. + <<set $rep += 100>> + <<elseif $weatherCladding == 2>> + <<set $seed to Math.trunc((($weatherToday.severity-4)*($arcologies[0].prosperity*random(50,100)))+random(1,100))>> + $arcologies[0].name's hardened exterior only partially resisted the extreme weather this week, and it requires repairs costing @@.yellow;¤$seed.@@ Your citizens are @@.green;grateful@@ to you for upgrading $arcologies[0].name to provide a safe haven from the terrible climate. + <<set $rep += 100>> + <<else>> + <<set $seed = Math.trunc((($weatherToday.severity-2)*($arcologies[0].prosperity*random(50,100)))+random(1,100))>> + Severe weather damaged the arcology this week, requiring repairs costing @@.yellow;¤$seed.@@ Your citizens are @@.red;unhappy@@ that the arcology has proven vulnerable to the terrible climate. + <<set $rep -= 100>> + <</if>> + <<if $cash > 0>> + <<set $cash -= $seed>> + <<elseif $arcologies[0].FSRestartDecoration == 100>> + Since you lack the resources to effect prompt repairs yourself, the Societal Elite cover for you. The arcology's prosperity is @@.red;is damaged@@, but your public rep is left intact. The Societal Elite @@.red;are troubled by your failure@@. + <<if $arcologies[0].prosperity > 50>> + <<set $arcologies[0].prosperity -= random(5,10)>> + <</if>> + <<set $failedElite += 100>> + <<set $cash -= Math.trunc($seed/4)>> + <<else>> + Since you lack the resources to effect prompt repairs yourself, prominent citizens step in to repair their own parts of the arcology. This is @@.red;terrible for your reputation,@@ and it also @@.red;severely reduces the arcology's prosperity.@@ + <<if $arcologies[0].prosperity > 50>> + <<set $arcologies[0].prosperity -= random(5,10)>> + <</if>> + <<set $rep = Math.trunc($rep*0.8)>> + <<set $cash -= Math.trunc($seed/4)>> + <</if>> +<<elseif $weatherToday.severity-$weatherCladding == 2>> + <<if $weatherCladding == 1>> + <<set $weatherAwareness = 1>> + The arcology's hardened exterior resisted severe weather this week. Your citizens are @@.green;grateful@@ to you for maintaining the arcology as a safe haven from the terrible climate. + <<set $rep += 100>> + <</if>> +<</if>> +<</if>> +<</if>> +<<set $cash -= $costs>> + +<br> + +<<set $seed = random(1,100)>> +<<if $arcologies[0].FSRomanRevivalist > random(1,150)>> + <<if $slaveCostFactor > 0.6>> + @@.yellow;Your Roman Revivalism is having an effect on the slave market and has driven local prices down@@ by convincing slave traders that this is a staunchly pro-slavery area.<br> + <<set $slaveCostFactor -= 0.1>> + <<else>> + @@.yellow;Your Roman Revivalism is having an effect on the slave market and is holding local prices down@@ by convincing slave traders that this is a staunchly pro-slavery area.<br> + <</if>> +<<elseif ($slaveCostFactor > 1.3)>> + @@.yellow;Natural market forces drive the very high price of slaves down.@@<br> + <<set $slaveCostFactor -= 0.2>> +<<elseif ($slaveCostFactor < 0.7)>> + @@.yellow;Natural market forces drive the very low price of slaves up.@@<br> + <<set $slaveCostFactor += 0.2>> +<<elseif ($seed > 30)>> + <<if ($slaveCostFactor > 1)>> + @@.yellow;Natural market forces drive the high price of slaves slowly down.@@<br> + <<set $slaveCostFactor -= 0.1>> + <<elseif ($slaveCostFactor < 1)>> + @@.yellow;Natural market forces drive the low price of slaves slowly up.@@<br> + <<set $slaveCostFactor += 0.1>> + <<else>> + <<if $seed > 80>> + @@.yellow;The price of slaves has naturally risen slightly.@@<br> + <<set $slaveCostFactor += 0.1>> + <<elseif $seed > 60>> + @@.yellow;The price of slaves has naturally fallen slightly.@@<br> + <<set $slaveCostFactor -= 0.1>> + <</if>> + <</if>> +<</if>> + +<<if $menialDemandFactor != 0>> +<<if Math.abs($menialDemandFactor) > 100>> +<<if ($menialDemandFactor > 1000) && ($slaveCostFactor <= 1.2)>> + Your dealings in menial slaves have had a major impact on the slave market, @@.yellow;greatly increasing slave prices.@@ + <<set $menialDemandFactor = 0>> + <<set $slaveCostFactor += 0.3>> + <br><br> +<<elseif ($menialDemandFactor > 500) && ($slaveCostFactor <= 1.3)>> + Your dealings in menial slaves have had a noticeable impact on the slave market, @@.yellow;significantly increasing slave prices.@@ + <<set $menialDemandFactor = 0>> + <<set $slaveCostFactor += 0.2>> + <br><br> +<<elseif ($menialDemandFactor > 250) && ($slaveCostFactor <= 1.4)>> + Your dealings in menial slaves have had a minor impact on the slave market, @@.yellow;slightly increasing slave prices.@@ + <<set $menialDemandFactor = 0>> + <<set $slaveCostFactor += 0.1>> + <br><br> +<<elseif ($menialDemandFactor < -1000) && ($slaveCostFactor >= 0.8)>> + Your dealings in menial slaves have had a major impact on the slave market, @@.yellow;greatly reducing slave prices.@@ + <<set $menialDemandFactor = 0>> + <<set $slaveCostFactor -= 0.3>> + <br><br> +<<elseif ($menialDemandFactor < -500) && ($slaveCostFactor >= 0.7)>> + Your dealings in menial slaves have had a noticeable impact on the slave market, @@.yellow;significantly reducing slave prices.@@ + <<set $menialDemandFactor = 0>> + <<set $slaveCostFactor -= 0.2>> + <br><br> +<<elseif ($menialDemandFactor < -250) && ($slaveCostFactor >= 0.6)>> + Your dealings in menial slaves have had a minor impact on the slave market, @@.yellow;slightly reducing slave prices.@@ + <<set $menialDemandFactor = 0>> + <<set $slaveCostFactor -= 0.1>> + <br><br> +<</if>> +<</if>> +<</if>> + +<<if $corpAnnounced == 1>> + <br> + <<if $corpIncorporated == 0>> + <span id="incorporate"> + You have not yet committed funds to create a publicly traded slave trading corporation. <<link "Lay the groundwork for incorporation">><<set $corpIncorporated = 1>><<set $sharePrice = 20>><<set $oldSharePrice = $sharePrice>><<set $personalShares = 2000>><<set $cash -= 30000>><<set $publicShares = 1000>><<set $corpCash = 20000>><<set $generalAssets = 500>><<set $slaveAssets = 1000>><<set $entrapmentAssets = 500>><<set $captureAssets = 500>><<set $trainingAssets = 500>><<set $surgicalAssets = 500>><<set $drugAssets = 500>><<replace "#incorporate">><<print "The groundwork has been laid for the incorporation of a publicly traded slave trading concern. The IPO will involve 1000 shares at ¤20/share.">><</replace>><</link>> //Costs ¤30000// + </span> + <<else>> + <<include "Corporation Developments">> + <</if>> + <br> +<</if>> + +<<if $securityForceActive == 1>> + <<include "Security Force EOW Report">> +<</if>> diff --git a/src/uncategorized/personalNotes.tw b/src/uncategorized/personalNotes.tw new file mode 100644 index 0000000000000000000000000000000000000000..7728842c495be3b4c37f159fdc0b0eed452bd146 --- /dev/null +++ b/src/uncategorized/personalNotes.tw @@ -0,0 +1,212 @@ +:: Personal Notes [nobr] + +__Personal Notes__ +<br> +<<if ($playerAging != 0)>>Your birthday is <<if $PC.birthWeek is 51>>next week<<if $playerAging == 2>>; you'll be turning <<print $PC.actualAge+1>><</if>><<else>>in <<print 52-$PC.birthWeek>> weeks<</if>>.<</if>> +<<if $PC.career == "servant">> +<<if $PC.boobs == 1 && $PC.boobsBonus > 0>> + <<if $PC.boobsBonus > 2>> + You've gotten your dress let out to accommodate your huge bust. + <<elseif $PC.boobsBonus == 2>> + Your dress bulges with your big breasts. + <<elseif $PC.boobsBonus == 1>> + Your dress feels tight around your breasts. + <</if>> +<</if>> +<<if $PC.preg >= 42>> + Your baby is overdue and your master isn't here anymore to comfort your exhausted body. You try your best, <<if $PC.pregSource == -3>>drawing strength from the knowledge that you carry your late master's legacy within you<<else>>but deep down you are saddened that your child isn't his<</if>>.<<if $PC.pregMood == 1>> However, thanks to all your mothering, your slaves are more than happy to do everything they can for you.<<elseif $PC.pregMood == 2>> Your dicked slaves are terrified of being seen by you, knowing full well that they will be bearing the full weight of your body as you try to fill the hole left by your late master.<</if>> +<<elseif $PC.preg >= 40>> + Your dress is at its capacity, any bigger and you'd risk tearing it at the seams, though your late master did make sure his girls were well dressed even when they were fully rounded with his child. Every action you take is exhausting, and even though your slaves are more than capable of serving your every desire, you refuse to slow down with your duties.<<if $PC.pregMood == 1>> Though you definatly appreciate their aid.<<elseif $PC.pregMood == 2>> Your hormones practically rule you, leading you to demand your slaves to be prepared to pleasure you at a moments notice. Your needy cunt hungers for dick and you don't care what it is attached to right now.<</if>> +<<elseif $PC.preg >= 36>> + Your child happily kicks away inside your womb, and each time a small bump apears on the outside of your dress.<<if $PC.pregMood == 1>> While hormones may have you demanding and needy, you do everything you can to treat your slaves as if they were your own children.<<elseif $PC.pregMood == 2>> You know it's unbecoming for an arcology owner, but your former master loved to fuck you while you were pregnant with his children and your body misses his touch.<</if>> +<<elseif $PC.preg >= 32>> + Your huge pregnant belly is tiring to carry around, but your well versed with moving about with a rounded middle.<<if $PC.pregMood == 1>> You can't help but enjoy having a slave suckle from you while you relax with her in your lap.<<elseif $PC.pregMood == 2>> You know how to have sex while pregnant, and as such, so will your slaves.<</if>> +<<elseif $PC.preg >= 28>> + You've stopped bothering to tie your apron behind you, allowing your dress the freedom to stretch with your growing child.<<if $PC.pregMood == 1>> You catch yourself babying your slaves from time to time.<<elseif $PC.pregMood == 2>>Your sex drive has become unquenchable as of late.<</if>> +<<elseif $PC.preg >= 24>> + Your maid's outfit is filled out by your baby-filled belly; not only is it obvious, but it is slowing you down in your day to day affairs. +<<elseif $PC.preg >= 22>> + Something startling happened this week; while enjoying a slave, your belly button popped out! +<<elseif $PC.preg >= 20>> + Your belly is now large enough that there is no hiding it. After you've let out your apron, your dress fits nicely again. +<<elseif $PC.preg >= 16>> + Your dress tightly clings to your early pregnancy, though it, your apron, and your previous experience hide it well. +<<elseif $PC.preg >= 12>> + Your apron holds your dress tightly to your bloated middle. +<<elseif $PC.preg >= 8>> + Your dress and apron feel tight around your middle. +<</if>> +<<if $PC.ballsImplant > 2>> + Your dress and apron bulges with your enormous balls. +<<elseif $PC.ballsImplant == 2>> + Your dress hides your huge balls, but it does nothing to hide your altered gait. +<<elseif $PC.ballsImplant == 1>> + Your dress hides your big balls. +<</if>> +<<if $PC.butt > 2>> + <<if $PC.buttImplant == 1>> + You had to get your dress let out to contain your enormous rear. It can't hide how big and fake it is though. + <<else>> + You had to get your dress let out to contain your enormous rear. + <</if>> +<<elseif $PC.butt == 2>> + Your dress is starting to feel tight around your huge rear. +<<elseif $PC.butt == 1>> + Your dress is filled out by your big butt. +<</if>> +<<elseif $PC.career == "escort">> +<<if $PC.boobs == 1 && $PC.boobsBonus > 0>> + <<if $PC.boobsBonus > 2>> + You top strains as it struggles to cover your nipples, letting your huge bust bulge lewdly around it. + <<elseif $PC.boobsBonus == 2>> + Your top can barely contain your big breasts, leaving you looking sluttier than ever. + <<elseif $PC.boobsBonus == 1>> + Your breasts spill over your slutty top. + <</if>> +<</if>> +<<if $PC.preg >= 42>> + You can barely pull yourself and your overdue child out of bed; every action is a chore, you keep bumping things, and your child just won't calm down.<<if $PC.pregMood == 1>> However, thanks to all your tenderness, your slaves are more than happy to do everything they can for you.<<elseif $PC.pregMood == 2>> Your dicked slaves are terrified of being seen by you, knowing full well that they will be bearing the full weight of your body as you satisfy your desires.<</if>> +<<elseif $PC.preg >= 40>> + You don't even bother to try to be slutty anymore, your full-term globe of a belly just steals all the attention away from your other assets. Every action you take is exhausting; though your slaves are more than capable of serving your every whim.<<if $PC.pregMood == 1>> Even in the final stages of pregnancy, you make sure the slaves attending you are treated as if the were your favorite clients.<<elseif $PC.pregMood == 2>> Your hormones practically rule you, leading you to demand your slaves to be prepared to pleasure you at a moments notice. Your needy cunt hungers for dick and you don't care what it is attached to right now.<</if>> +<<elseif $PC.preg >= 36>> + Your huge pregnant belly hides your crotch and every kick from your eager child threatens to dislodge your breasts from your struggling top.<<if $PC.pregMood == 1>> While you may be demanding and needy, you do everything you can to treat them as if they were a virgin client.<<elseif $PC.pregMood == 2>> You know it's unbecoming for an arcology owner, but you need a dick in you even more than usual.<</if>> +<<elseif $PC.preg >= 32>> + Your huge pregnant belly is tiring to carry around and is beginning to draw attention away from your other features.<<if $PC.pregMood == 1>> You can't help but enjoy having a slave, or client, suckle from you while you relax with them in your lap.<<elseif $PC.pregMood == 2>> You don't let your pregnancy get in the way when it comes to sex; you make sure your slaves, and clients, learn just how much you know about sex.<</if>> +<<elseif $PC.preg >= 28>> + You've switched to even skimpier clothing to show off your pregnant belly.<<if $PC.pregMood == 1>> You catch yourself playfully teasing your slaves from time to time.<<elseif $PC.pregMood == 2>>Your sex drive has become unquenchable as of late.<</if>> +<<elseif $PC.preg >= 24>> + Your outfit is only enhanced by your baby-filled belly; mostly because it adds to your slutty appearance. Though it definitly is impacting your business. +<<elseif $PC.preg >= 22>> + Something startling happened this week; while enjoying a slave, your belly button popped out! +<<elseif $PC.preg >= 20>> + Your slutty pants are begining to get hidden by your rounded middle. +<<elseif $PC.preg >= 16>> + Your exposed midriff bulges out enough to give away your growing pregnancy. +<<elseif $PC.preg >= 12>> + Your exposed midriff is noticeably bloated. +<<elseif $PC.preg >= 8>> + When you look down, you can't help but notice your belly sticking out a little. +<</if>> +<<if $PC.ballsImplant > 2>> + You've swapped up to a larger pair of slutty pants, specially designed with extra sack room. They draw the eye right to your bulge<<if $PC.preg >= 28>>; you can do without people thinking you are giving birth into your pants, though<</if>>. +<<elseif $PC.ballsImplant == 2>> + Your slutty pants are really tight around the groin, but they hold your huge balls in place quite nicely. +<<elseif $PC.ballsImplant == 1>> + Your slutty pants bulge more than ever with your big balls. +<</if>> +<<if $PC.dick == 1>> + <<if $PC.butt > 2>> + <<if $PC.buttImplant == 1>> + You had to get your slutty pants let out to contain your enormous rear. It still feels really tight, however, thanks to the implants. + <<else>> + You had to get your slutty pants let out to contain your enormous rear. It still overflows scandalously, however. + <</if>> + <<elseif $PC.butt == 2>> + Your huge rear spills out from the top of your slutty pants. + <<elseif $PC.butt == 1>> + Your slutty pants are strained by your big butt. + <</if>> +<<else>> + <<if $PC.butt > 2>> + <<if $PC.buttImplant == 1>> + Your ass has completely devoured your slutty shorts. You look like you are wearing a thong leaving your overly round cheeks to hang free. + <<else>> + Your ass has completely devoured your slutty shorts. You look like you are wearing a thong leaving your cheeks to jiggle freely. + <</if>> + <<elseif $PC.butt == 2>> + Your slutty shorts are filled to bursting by your rear. Roughly half of your ass is actually in your bottoms, the rest is bulging out scandalously. + <<elseif $PC.butt == 1>> + Your slutty shorts are strained by your big butt. It spills out every gap it can. + <</if>> +<</if>> +<<else>> +<<if $PC.boobs == 1 && $PC.boobsBonus > 0>> + <<if $PC.boobsBonus > 2>> + You've gotten your top retailored to fit your huge bust. + <<elseif $PC.boobsBonus == 2>> + Your top strains against your big breasts. + <<elseif $PC.boobsBonus == 1>> + Your top feels tight around your breasts. + <</if>> +<</if>> +<<if $PC.preg >= 42>> + You can barely pull yourself and your overdue child out of bed; every action is a chore, you keep bumping things, and your child just won't calm down.<<if $PC.pregMood == 1>> However, thanks to all your mothering, your slaves are more than happy to do everything they can for you.<<elseif $PC.pregMood == 2>> Your dicked slaves are terrified of being seen by you, knowing full well that they will be bearing the full weight of your body as you satisfy your desires.<</if>> +<<elseif $PC.preg >= 40>> + You don't even bother to try to cover your full-term pregnancy, opting to just let it hang out of your old clothing. Every action you take is exhausting; though your slaves are more than capable of serving your every desire.<<if $PC.pregMood == 1>> Even in the final stages of pregnancy, you make sure the slaves attending you are treated as if the were your children.<<elseif $PC.pregMood == 2>> Your hormones practically rule you, leading you to demand your slaves to be prepared to pleasure you at a moments notice. Your needy cunt hungers for dick and you don't care what it is attached to right now.<</if>> +<<elseif $PC.preg >= 36>> + Your huge pregnant belly strains the buttons on your maternity suit. Every kick from your eager child threatens to send your buttons flying.<<if $PC.pregMood == 1>> While you may be demanding and needy, you do everything you can to treat them as if they were your own children.<<elseif $PC.pregMood == 2>> You know it's unbecoming for an arcology owner, but you need a dick in you and you don't care from where.<</if>> +<<elseif $PC.preg >= 32>> + Your huge pregnant belly is tiring to carry around and is beginning to stretch out your new clothes.<<if $PC.pregMood == 1>> You can't help but enjoy having a slave suckle from you while you relax with her in your lap.<<elseif $PC.pregMood == 2>> You don't let your pregnancy get in the way when it comes to sex; you make sure your slaves learn new positions to accommodate your bulk.<</if>> +<<elseif $PC.preg >= 28>> + You've switched to using what can only be called formal maternity wear to cover your pregnant belly.<<if $PC.pregMood == 1>> You catch yourself babying your slaves from time to time.<<elseif $PC.pregMood == 2>>Your sex drive has become unquenchable as of late.<</if>> +<<elseif $PC.preg >= 24>> + You can barely cover your baby filled belly; not only is it obvious, but it is getting in the way of your business. +<<elseif $PC.preg >= 22>> + Something startling happened this week; while enjoying a slave, your belly button popped out! +<<elseif $PC.preg >= 20>> + Your belly is now large enough that there is no hiding it. Your top strains to cover it. +<<elseif $PC.preg >= 16>> + Your top tightly clings to your early pregnancy, though you manage to conceal it well enough. +<<elseif $PC.preg >= 12>> + Your top tightly clings to your bloated middle. +<<elseif $PC.preg >= 8>> + Your top feels oddly tight around your middle. +<</if>> +<<if $PC.ballsImplant > 2>> + You've had to get your suit pants retailored again to fit your enormous balls. It is obvious that the bulge in your pants is not your penis<<if $PC.preg >= 28>>; you've had several people rush to your aid under the mistaken belief that your child was crowing into your pants<</if>>. +<<elseif $PC.ballsImplant == 2>> + You've had to get your suit pants retailored to fit your huge balls. It gives you a strinking figure, though. +<<elseif $PC.ballsImplant == 1>> + Your suit pants bulge more than ever with your big balls. +<</if>> +<<if $PC.dick == 1>> + <<if $PC.butt > 2>> + <<if $PC.buttImplant == 1>> + You had to get your suit pants let out to contain your enormous rear. It does nothing to hide how big and round your asscheeks are, though. + <<else>> + You had to get your suit pants let out to contain your enormous rear. It can clearly be seen jiggling within them. + <</if>> + <<elseif $PC.butt == 2>> + Your huge rear threatens to tear apart your suit pants. You'll need to get them let out soon. + <<elseif $PC.butt == 1>> + Your suit pants are strained by your big butt. + <</if>> +<<else>> + <<if $PC.butt > 2>> + <<if $PC.buttImplant == 1>> + Your skirt covers your enormous butt but does nothing to hide its size and shape; you're beginning to show too much leg again, it might be time for a longer skirt. + <<else>> + Your skirt covers your enormous butt but does nothing to hide its size and fluidity; your rear is soft enough to fill out your skirt but not lift it up too far, it also translates every motion to the fabric, however. + <</if>> + <<elseif $PC.butt == 2>> + Your skirt covers your huge butt but does nothing to hide its size; in fact, you've had to start wearing a longer one to make up for the extra surface area. + <<elseif $PC.butt == 1>> + Your skirt covers your big butt but does nothing to hide its size. + <</if>> +<</if>> +<</if>> +<<if $PC.boobs == 1 && $PC.boobsImplants == 0>> + <<if $PC.preg == 31>> + <<if $PC.boobsBonus == 0>> + <<if random(1,100) > 75>> + Your breasts have @@.lime;grown larger@@ to feed your coming child. Quick measurements show you've gone up a cup size over the course of your pregnancy. + <<set $PC.boobsBonus++>> + <</if>> + <<elseif $PC.boobsBonus == -1>> + <<if random(1,100) > 80>> + Your breasts have been really @@.lime;swollen@@ lately with your new pregnancy. Quick measurements show you've gone up nearly two cup sizes. You may want to consider getting a breast reduction. + <<set $PC.boobsBonus++>> + <</if>> + <<elseif $PC.boobsBonus == 1>> + <<if random(1,100) > 75>> + Your already large breasts have @@.lime;grown even larger@@ with your new pregnancy. Quick measurements show you've gone up another cup size or so over the course of your pregnancy. + <<set $PC.boobsBonus++>> + <</if>> + <<elseif $PC.boobsBonus == 2>> + <<if random(1,100) > 90>> + Your already huge breasts have @@.lime;grown even more enormous@@ with your new pregnancy. Quick measurements show you've gone up yet another a cup size over the course of your pregnancy. + <<set $PC.boobsBonus++>> + <</if>> + <</if>> + <</if>> +<</if>> \ No newline at end of file diff --git a/src/uncategorized/reCitizenHookup.tw b/src/uncategorized/reCitizenHookup.tw index 88c345d7ab41e29a814cd9fcf4c96ce602cbdd22..b5c99ebf5232b7c7a42b680a09be7ce74b7e916b 100644 --- a/src/uncategorized/reCitizenHookup.tw +++ b/src/uncategorized/reCitizenHookup.tw @@ -176,7 +176,7 @@ She's yours for the taking, if you want her, and if her praise and proximity wer <<default>> flirt with you quite hard without crossing any lines between a citizen and an arcology owner. <</switch>> -She's clearly attracted to you; even the most consummate actress would have difficulty fooling you, and her breath is a little quick, her pupils are a bit dilated, and she's blushing cutely. But she's no fool, either. A casual liasion with <<PCTitle>>$PCTitle would be a tremendous social boost for her. +She's clearly attracted to you; even the most consummate actress would have difficulty fooling you, and her breath is a little quick, her pupils are a bit dilated, and she's blushing cutely. But she's no fool, either. A casual liaison with <<PCTitle>>$PCTitle would be a tremendous social boost for her. <br><br> <span id="result"> diff --git a/src/uncategorized/reShelterInspection.tw b/src/uncategorized/reShelterInspection.tw index e8ceb8d7725236fc7817c5fc756f90467254e21c..340e29145b51f305993f0b4a3f6b05185969119e 100644 --- a/src/uncategorized/reShelterInspection.tw +++ b/src/uncategorized/reShelterInspection.tw @@ -126,7 +126,7 @@ Not waiting to be greeted, the inspector looks up at the nearest camera and dema <<set $shelterAbuse += 5>> <</if>> <<elseif $subSlave.origin == "You got her at the Slave Shelter. She has never communicated anything about her background, since she arrived at the shelter with a broken mind." and $subSlave.fetish != "mindbroken">> - The inspector asks some cursory questions and is shocked when she responds. "S-she came back?" she mutters, "You restored her mind, I can't beleive it. This is incredible." She carries on while writing notes on her tablet, "You're more than welcome to adopt slaves from our shelter." You swear she seems in much better spirits as she leaves your penthouse. + The inspector asks some cursory questions and is shocked when she responds. "S-she came back?" she mutters, "You restored her mind, I can't believe it. This is incredible." She carries on while writing notes on her tablet, "You're more than welcome to adopt slaves from our shelter." You swear she seems in much better spirits as she leaves your penthouse. <<set $shelterAbuse -= 5>> <<elseif $subSlave.trust < -20>> She is sufficiently afraid of you that she tells the inspector whatever she thinks you'd want her to say. The inspector, experienced at this, is not amused. She offers you a few choice words, makes notes on her tablet, and storms out. diff --git a/src/uncategorized/remoteSurgery.tw b/src/uncategorized/remoteSurgery.tw index fa9841933223d247dbbf4454fe200f58dd97505a..999f9f57e6f2c0c4308d471e2ab365b472f5318b 100644 --- a/src/uncategorized/remoteSurgery.tw +++ b/src/uncategorized/remoteSurgery.tw @@ -853,6 +853,29 @@ The fabricator has completed $possessive $activeOrgan.type. <br> ERROR: this slave lacks the penis necessary to accept testicles. <<link "Discard">><<for $i to 0; $i < $organs.length; $i++>><<if $activeSlave.ID == $organs[$i].ID>><<set $dump to $organs.pluck([$i], [$i])>><<break>><</if>><</for>><<goto "Remote Surgery">><</link>> + <br>You can forgo standard procedure and implant testicles directly into $possessive abdomen. + <<link "Implant">> + <<set $cash -= $surgeryCost>> + <<for $i to 0; $i < $organs.length; $i++>><<if $activeSlave.ID == $organs[$i].ID>><<set $dump to $organs.pluck([$i], [$i])>><<break>><</if>><</for>> + <<if $activeSlave.prostate > 1>><<set $activeSlave.prostate = 1>><</if>> + <<set $activeSlave.balls to 2>> + <<set $activeSlave.ballType = "human">> + <<set $activeSlave.health -= 20>> + <<if $organFarmUpgrade == 2>> + <<set $activeSlave.chem += 20>> + <</if>> + <<if $activeSlave.pubertyXY == 0>> + <<if $precociousPuberty == 1>> + <<set $activeSlave.pubertyAgeXY = ($activeSlave.physicalAge+1)>> + <<else>> + <<if $activeSlave.physicalAge >= $potencyAge>> + <<set $activeSlave.pubertyXY = 1>> + <</if>> + <</if>> + <</if>> + <<set $surgeryType = "addTesticles">> + <<goto "Surgery Degradation">> + <</link>> <<else>> <br> <<link "Implant">> diff --git a/src/uncategorized/reputation.tw b/src/uncategorized/reputation.tw new file mode 100644 index 0000000000000000000000000000000000000000..7320149d0ca0394cebfb9e77075ef6ac8d0f93e1 --- /dev/null +++ b/src/uncategorized/reputation.tw @@ -0,0 +1,574 @@ +:: Reputation [nobr] + +__Reputation__ +<br> + +<<PCTitle>> + +On formal occasions, you are announced as $PCTitle. + +<<if $arcologies[0].FSChattelReligionist != "unset">> +<<if $arcologies[0].FSChattelReligionistCreed == 1>> + $arcologies[0].name keeps the creed of the $nicaeaName. The faithful + <<if $nicaeaAchievement == "slaves">> + <<if $slaves.length > 50>> + @@.green;strongly approve@@ of the large + <<FSChange "ChattelReligionist" 5>> + <<elseif $slaves.length > 20>> + @@.green;approve@@ of the good + <<FSChange "ChattelReligionist" 2>> + <<elseif $slaves.length > 20>> + are not impressed by the + <</if>> + number of people you're giving the honor of sexual servitude. + <<elseif $nicaeaAchievement == "devotion">> + <<if $averageDevotion > 80>> + @@.green;strongly approve@@ of the worshipfulness + <<FSChange "ChattelReligionist" 5>> + <<elseif $averageDevotion > 50>> + @@.green;approve@@ of the devotion + <<FSChange "ChattelReligionist" 2>> + <<elseif $slaves.length > 20>> + are not impressed by the devotion + <</if>> + of your slaves. + <<else>> + <<if $averageTrust > 50>> + @@.green;strongly approve@@ of the great trust your slaves place in you. + <<FSChange "ChattelReligionist" 5>> + <<elseif $averageTrust > 20>> + @@.green;approve@@ of the trust your slaves place in you. + <<FSChange "ChattelReligionist" 2>> + <<elseif $slaves.length > 20>> + are not impressed by fear many of your slaves feel towards you. + <</if>> + <</if>> +<</if>> +<</if>> + +<<set $repDecay = 0.2>> +<<if $arcologies[0].FSChattelReligionistLaw == 1>> + <<set $repLoss = 0>> + Since you are the Prophet, your reputation no longer degrades at all. +<<elseif $arcologies[0].FSRestartDecoration == 100>> + <<set $repLoss = 0>> + Since you are an established member of the Societal Elite, your public reputation no longer decays. +<<elseif $rep > $enduringRep>> + <<if $arcologies[0].FSMaturityPreferentialistLaw == 1>> + <<if $PC.actualAge >= 65>> + Since you're getting on in years and have an impressive list of accomplishments, and $arcologies[0].name's society respects age, your reputation degrades quite slowly. + <<set $repLoss = Math.trunc(($rep-$enduringRep)*($repDecay-0.025))>> + <<elseif $PC.actualAge >= 50>> + Since you're well into middle age and have an impressive list of accomplishments, and $arcologies[0].name's society respects age, your reputation degrades quite slowly. + <<set $repLoss = Math.trunc(($rep-$enduringRep)*($repDecay-0.025))>> + <<elseif $PC.actualAge < 35>> + Since you're unusually young for an arcology owner, and $arcologies[0].name's society respects age, your reputation degrades quite quickly. + <<set $repLoss = Math.trunc(($rep-$enduringRep)*($repDecay+0.025))>> + <<else>> + Since you're only entering middle age, and $arcologies[0].name's society respects age, your reputation degrades fairly quickly. + <<set $repLoss = Math.trunc(($rep-$enduringRep)*($repDecay))>> + <</if>> + <<elseif $arcologies[0].FSYouthPreferentialistLaw == 1>> + <<if $PC.actualAge >= 65>> + Since you're getting on in years and have an impressive list of accomplishments, but $arcologies[0].name's society is coming to prefer youth to experience, so your reputation degrades fairly quickly. + <<set $repLoss = Math.trunc(($rep-$enduringRep)*($repDecay-0.025))>> + <<elseif $PC.actualAge >= 50>> + You're well into middle age and have an impressive list of accomplishments, but $arcologies[0].name's society is coming to prefer youth to experience, so your reputation degrades fairly quickly. + <<set $repLoss = Math.trunc(($rep-$enduringRep)*($repDecay+0.025))>> + <<elseif $PC.actualAge < 35>> + You're unusually young for an arcology owner, but $arcologies[0].name's society doesn't mind. + <<set $repLoss = Math.trunc(($rep-$enduringRep)*($repDecay))>> + <<else>> + Since you're entering middle age, and $arcologies[0].name's society respects youth, your reputation degrades fairly quickly. + <<set $repLoss = Math.trunc(($rep-$enduringRep)*($repDecay+0.025))>> + <</if>> + <<else>> + <<if $PC.actualAge >= 65>> + Since you're getting on in years and have an impressive list of accomplishments, and $arcologies[0].name's society respects age, your reputation degrades quite slowly. + <<set $repLoss = Math.trunc(($rep-$enduringRep)*($repDecay-0.025))>> + <<elseif $PC.actualAge >= 50>> + Since you're well into middle age and have an impressive list of accomplishments, your reputation degrades fairly slowly. + <<set $repLoss = Math.trunc(($rep-$enduringRep)*($repDecay-0.025))>> + <<elseif $PC.actualAge < 35>> + Since you're unusually young for an arcology owner, your reputation degrades fairly quickly. + <<set $repLoss = Math.trunc(($rep-$enduringRep)*($repDecay+0.025))>> + <<else>> + <<set $repLoss = Math.trunc(($rep-$enduringRep)*($repDecay))>> + <</if>> + <</if>> + <<if $enduringRep > 8000>> + However, you have been a figure of renown for so long that much of your reputation has become permanent. + <<elseif $enduringRep > 5000>> + However, you have been a figure of repute for enough time that part of your reputation has become permanent. + <<elseif $enduringRep > 2000>> + However, you have been a figure of regard for long enough that some of your reputation has become permanent. + <</if>> + <<set $enduringRep += Math.trunc($repLoss*0.025)>> +<<else>> + <<set $repLoss = 0>> + <<if $enduringRep > 8000>> + You have been a figure of renown for so long that your reputation does not decay past its present level. + <<elseif $enduringRep > 5000>> + You have been a figure of repute for enough time that your reputation does not decay past its present level. + <<elseif $enduringRep > 2000>> + You have been a figure of regard for long enough that your reputation does not decay past its present level. + <</if>> +<</if>> + +<<if ($weatherAwareness == 0) && ($weatherCladding == 2)>> + The public @@.green;is awestruck@@ of the beautiful weather hardening you have applied to the arcology's exterior, though they do not understand why you would waste so much money first ruining your arcology's appearance before doing this. + <<set $rep += 10>> +<<elseif ($weatherAwareness == 0) && ($weatherCladding == 1)>> + The public @@.red;disapproves@@ of the ugly weather hardening you have applied to the arcology's exterior, not understanding what you're worried about. + <<set $rep -= 100>> +<</if>> + +<<if $arcologies[0].FSRestartDecoration == 100>> + As a member of the societal elite, your appearance has no bearing on your reputation. +<<else>> +<<if ($PC.dick == 0) && ($PC.boobs == 1)>> + <<if $rep > 18000>> + Your reputation is so well-established that society has accepted your notoriously feminine appearance despite how unusual it is for a prominent slaveowner to look like you do. + <<if $arcologies[0].FSGenderRadicalist > 30>> + Indeed, society sees you as entirely male, since you are powerful, and @@.green;strongly approves@@ of your nonconformity; this advances the redefinition of gender around power. + <<FSChange "GenderRadicalist" 5>> + <<elseif $arcologies[0].FSGenderFundamentalist > 30>> + Indeed, society has been reconciled to female leadership, preferring to see you as a mother figure. + <</if>> + <<elseif $arcologies[0].FSGenderRadicalist > 40>> + Society accepts you as an arcology owner, since it has become open-minded about power and gender. + <<if $arcologies[0].FSGenderRadicalist > 50>> + Indeed, society sees you as fundamentally male, since you are powerful, and @@.green;strongly approves@@ of your audacity; this advances the redefinition of gender around power. + <<FSChange "GenderRadicalist" 5>> + <</if>> + <<else>> + Most prominent slaveowners are male, and your obviously feminine appearance makes it @@.red;harder for you to maintain your reputation.@@ + <<set $repLoss += Math.trunc($rep*0.05)>> + <<if $arcologies[0].FSGenderFundamentalist > 10>> + Society @@.red;strongly resents@@ your being an arcology owner; this damages the idea that women should not be in positions of responsibility. + <<FSChange "GenderFundamentalist" -5>> + <</if>> + <</if>> +<<elseif ($PC.boobs == 1)>> + <<if $rep > 15000>> + Your reputation is so strong that society has accepted your feminine appearance despite how unusual it is for a prominent slaveowner to look like you do. + <<if $arcologies[0].FSGenderRadicalist > 30>> + Indeed, society sees you as entirely male, since you are powerful, and @@.green;strongly approves@@ of your nonconformity; this advances the redefinition of gender around power. + <<FSChange "GenderRadicalist" 5>> + <<elseif $arcologies[0].FSGenderFundamentalist > 30>> + Indeed, society has been reconciled to your feminine appearance, seeing you as a person apart. + <</if>> + <<elseif $arcologies[0].FSGenderRadicalist > 20>> + Society accepts you as an arcology owner, since it has become open-minded anyone who has a cock and fucks. + <<if $arcologies[0].FSGenderRadicalist > 30>> + Indeed, society sees you as dominant, since you fuck bitches, and @@.green;strongly approves@@ of your nonconformity; this advances the redefinition of gender around power. + <<FSChange "GenderRadicalist" 5>> + <</if>> + <<else>> + Most prominent slaveowners are very masculine, and your feminine appearance makes it @@.red;harder for you to maintain your reputation.@@ + <<set $repLoss += Math.trunc($rep*0.03)>> + <<if $arcologies[0].FSGenderFundamentalist > 30>> + Society @@.red;strongly resents@@ your being an arcology owner; this damages the idea that feminine people should not be in positions of responsibility. + <<FSChange "GenderFundamentalist" -5>> + <</if>> + <</if>> +<<elseif ($PC.dick == 0) || ($PC.vagina == 1)>> + <<if $rep > 15000>> + Your reputation is so strong that society has accepted your unorthodox arrangement downstairs, for an arcology owner. + <<if $arcologies[0].FSGenderRadicalist > 30>> + Indeed, society sees you as entirely male, since you are powerful, and @@.green;strongly approves@@ of your nonconformity; this advances the redefinition of gender around power. + <<FSChange "GenderRadicalist" 5>> + <<elseif $arcologies[0].FSGenderFundamentalist > 30>> + Indeed, society has been reconciled to your strangeness, seeing you as a person apart. + <</if>> + <<elseif $arcologies[0].FSGenderRadicalist > 20>> + Society accepts you as an arcology owner, since it has become open-minded about the exact genital layout of powerful people. + <<if $arcologies[0].FSGenderRadicalist > 30>> + Indeed, society sees you as dominant, since you are powerful, and @@.green;strongly approves@@ of your nonconformity; this advances the redefinition of gender around power. + <<FSChange "GenderRadicalist" 5>> + <</if>> + <<else>> + Most prominent slaveowners are very masculine, and though your unorthodox arrangement downstairs isn't obvious when you're clothed, the rumors are unavoidable and it's @@.red;harder for you to maintain your reputation.@@ + <<set $repLoss += Math.trunc($rep*0.03)>> + <<if $arcologies[0].FSGenderFundamentalist > 30>> + Society @@.red;strongly resents@@ your being an arcology owner; this damages the idea that people who are not men should not be in positions of responsibility. + <<FSChange "GenderFundamentalist" -5>> + <</if>> + <</if>> +<</if>> +<</if>> + +<<if $arcologies[0].FSSupremacist != "unset">> + <<if ($PC.race == $arcologies[0].FSSupremacistRace)>> + Since you are a member of the $PC.race, society @@.green;strongly approves@@ of your ownership of the arcology. + <<FSChange "Supremacist" 5>> + <</if>> +<<elseif $arcologies[0].FSSubjugationist != "unset">> + <<if ($PC.race == $arcologies[0].FSSubjugationistRace)>> + <<if $rep > 15000>> + Your reputation is so strong that society has accepted your <<print $PC.race>>ness despite you being an inferior race. + <<else>> + Society @@.red;loathes;@@ being lead by an inferior $PC.race, believeing that any other race would make a far better leader than you. + <<set $rep -= 200*($arcologies[0].FSSubjugationist/$FSLockinLevel)>> + <</if>> + <</if>> +<</if>> + +<<if $arcologies[0].FSAssetExpansionist != "unset">> + <<if $PC.boobsBonus == 3>> + Society loves enormous breasts and you are no exception; your <<if $PC.boobsImplant == 1>>chest balloons<<else>>cow tits<</if>> @@.green;improve@@ your public image. + <<set $rep += 10>> + <</if>> + <<if $PC.butt == 3>> + Society loves big butts and you are no exception; your <<if $PC.buttImplant == 1>>inflated ass<<else>>fat ass<</if>> @@.green;improves@@ your public image. + <<set $rep += 10>> + <</if>> + <<if $PC.ballsImplant > 1>> + Society loves big things and the bulge in your crotch is no exception; your swollen balls @@.green;improve@@ your public image. + <<set $rep += (5*$PC.ballsImplant)>> + <</if>> +<<elseif $arcologies[0].FSSlimnessEnthusiast != "unset">> + <<if $PC.boobsBonus > 1>> + Society finds big breasts unsightly and you are no exception; your <<if $PC.boobsImplant == 1>>chest balloons<<else>>fat tits<</if>> @@.red;harm@@ your public image. + <<set $rep -= (10*$PC.boobsBonus)>> + <</if>> + <<if $PC.butt == 3>> + Society finds big butts unsightly and you are no exception; your <<if $PC.buttImplant == 1>>inflated ass<<else>>fat ass<</if>> @@.red;harms@@ your public image. + <<set $rep -= (10*$PC.butt)>> + <</if>> +<</if>> + +<<if $arcologies[0].FSTransformationFetishist != "unset">> + <<if $PC.boobsImplant == 1>> + Society loves fake breasts and yours are no exception; your breast implants @@.green;improve@@ your public image. + <<set $rep += (7*$PC.boobsBonus)>> + <</if>> + <<if $PC.buttImplant == 1>> + Society loves fake butts and yours are no exception; your ass implants @@.green;improve@@ your public image. + <<set $rep += (7*$PC.butt)>> + <</if>> + <<if $PC.ballsImplant > 1>> + Society loves everything augmented and the bulge in your crotch is no exception; your swollen balls @@.green;improve@@ your public image. + <<set $rep += (5*$PC.ballsImplant)>> + <</if>> +<<elseif $arcologies[0].FSBodyPurist != "unset">> + <<if $PC.boobsImplant == 1>> + Society finds fake breasts repuslive and yours are no exception; your balloon-like breasts @@.red;harm@@ your public image. + <<set $rep -= (10*$PC.boobsBonus)>> + <</if>> + <<if $PC.butt == 3>> + Society finds fake butts unsightly and yours is no exception; your inflated ass @@.red;harms@@ your public image. + <<set $rep -= (10*$PC.butt)>> + <</if>> + <<if $PC.ballsImplant > 1>> + Society finds everything unnatural disgusting and the grotesque bulge in your crotch is no exception; your gel filled balls @@.red;harm@@ your public image. + <<set $rep -= (10*$PC.ballsImplant)>> + <</if>> +<</if>> + +<<if ($PC.preg >= 20) || ($PC.career == "escort" && $PC.preg >= 16)>> + <<if $arcologies[0].FSRestart != "unset">> + <<if $arcologies[0].FSRestartDecoration == 100>> + <<if $PC.pregSource != -1>> + Most prominent female owners avoid being penetrated on principle; your fecund figure exposes not only your willingness to be penetrated, but your breach of eugenics. Your citizens are @@.red;livid@@ over your actions and are calling for your removal. + <<set $rep -= 500>> + <<set $failedElite += 100>> + <<else>> + Since it is public knowledge that you are carrying a child in the name of eugenics; society views you as a bearer of the future and @@.green;celebrates@@ your contributions to society. + <<set $rep += 200>> + <<set $failedElite -= 10>> + <</if>> + <<else>> + Most prominent female owners avoid being penetrated on principle; your fecund figure exposes not only your willingness to be penetrated, but your breach of the eugenics you are pushing for. Your citizens are @@.red;disgusted@@ by both your body and your lack of commitment. + <<set $rep -= 500>> + <<set $failedElite += 50>> + <</if>> + <<elseif $arcologies[0].FSRepopulationFocus >= 60>> + Most prominent female owners avoid being penetrated on principle, but your arcology values motherhood so much that it is more @@.green;pleased@@ with your dedication than it is disappointed in your penetration. + <<set $rep += 10>> + <<else>> + Most prominent female owners avoid being penetrated on principle; your fecund figure exposes your willingness to be penetrated, making it @@.red;harder for you to maintain your reputation.@@ + <<set $rep -= 200>> + <</if>> +<</if>> + +<<if $PC.career == "escort" && $rep < 16000>> + Society @@.red;frowns@@ over being run by an ex-whore. The presence of porn of you on the net doesn't aid your reputation either. + <<set $rep -= ($rep*0.1)>> +<<elseif $PC.career == "escort">> + Your reputation is so strong that society has accepted your previous endeavors despite how unusual it is for a prominent slaveowner to have once nearly been a slave. +<</if>> +<<if $PC.career == "servant" && $rep < 12000>> + Society @@.red;frowns@@ over being run by an ex-<<if $PC.title == 1>>butler<<else>>maid<</if>>, despite how prominent their previous owner was. + <<set $rep -= ($rep*0.1)>> +<<elseif $PC.career == "servant">> + Your reputation is so strong that society has accepted your previous vocation despite how unusual it is for a prominent slaveowner to have once been nothing more than a lowly servant. +<</if>> +<<if $PC.career == "gang" && $rep < 15000>> + Society @@.red;frowns@@ over being run by an ex-gang leader, no matter how strong they might have been. + <<set $rep -= ($rep*0.1)>> +<<elseif $PC.career == "gang">> + Your reputation is strong enough that society has come to accept your background as part of your image. +<</if>> + +<<if $arcologies[0].FSRomanRevivalist != "unset">> + <<if $mercenaries > 0>> + Society @@.green;approves@@ of how you are providing for the defense of the state, as should all citizens of the new Rome. + <<FSChange "RomanRevivalist" $mercenaries>> + <</if>> + <<if ($slaves.length > 20) && ($cash > 50000)>> + Society @@.green;strongly approves@@ of your wealth and prosperity, fit goals for the <<if def $PC.customTitle>>$PC.customTitle<<elseif $PC.title == 1>>new Roman man<<else>>rising Roman lady<</if>>. + <<FSChange "RomanRevivalist" 5>> + <</if>> + <<if $language != "Latin">> + Continuing to use $language as the lingua franca of $arcologies[0].name rather than the storied Latin @@.red;disappoints@@ society and causes doubt about your revivalist project. + <<FSChange "RomanRevivalist" -2>> + <</if>> +<<elseif $arcologies[0].FSEgyptianRevivalist != "unset">> + <<if $racialVarieties.length > 4>> + Society @@.green;strongly approves@@ of how you own a cornucopia of different races, which advances the ancient Egyptian ideal of cosmopolitan sex slavery. + <<FSChange "EgyptianRevivalist" 5>> + <</if>> + <<if $language != "Ancient Egyptian">> + Continuing to use $language as the lingua franca of $arcologies[0].name rather than revived Ancient Egyptian @@.red;disappoints@@ society and causes doubt about your revivalist project. + <<FSChange "EgyptianRevivalist" -2>> + <</if>> +<<elseif $arcologies[0].FSEdoRevivalist != "unset">> + <<set $seed = Math.trunc($rep/5000)>> + <<if $publicServants < $seed>> + Society @@.red;disapproves@@ of your failure to provide for cultural development by offering public servants or club slaves in a number that befits your reputation. + <<FSChange "EdoRevivalist" -2>> + <<elseif $publicServants > $seed>> + Society @@.green;approves@@ of your provision for cultural development by offering public servants and club slaves in a number that befits your reputation. + <<FSChange "EdoRevivalist" 2>> + <</if>> + <<if $language != "Japanese">> + Continuing to use $language as the lingua franca of $arcologies[0].name rather than pure Japanese @@.red;disappoints@@ society and causes doubt about your revivalist project. + <<FSChange "EdoRevivalist" -2>> + <</if>> +<<elseif $arcologies[0].FSArabianRevivalist != "unset">> + <<if $fuckSlaves < $rep/3500>> + Society @@.red;disapproves@@ of the small size of your harem, feeling that you do not have enough fucktoys or slaves in your master suite for your reputation. + <<FSChange "ArabianRevivalist" -2>> + <<else>> + Society @@.green;approves@@ of the size of your harem, feeling that you have a good number of fucktoys and slaves in your master suite for your reputation. + <<FSChange "ArabianRevivalist" 2>> + <</if>> + <<if $language != "Arabic">> + Continuing to use $language as the lingua franca of $arcologies[0].name rather than the Arabic in which the word of God was passed to Muhammad @@.red;disappoints@@ society and causes doubt about your revivalist project. + <<FSChange "ArabianRevivalist" -2>> + <</if>> +<<elseif $arcologies[0].FSChineseRevivalist != "unset">> + <<if $HeadGirl == 0>> + Society @@.red;disapproves@@ of your failure to rely on a Head Girl, as proper imperial administration requires, + <<FSChange "ChineseRevivalist" -2>> + <<else>> + Society @@.green;approves@@ of your reliance on a Head Girl, as proper imperial administration requires, + <<FSChange "ChineseRevivalist" 2>> + <</if>> + <<if $Recruiter == 0>> + @@.red;disapproves@@ of your failure to maintain a Recruiter to expand the Middle Kingdom, + <<FSChange "ChineseRevivalist" -2>> + <<else>> + @@.green;approves@@ of your maintaining a Recruiter to expand the Middle Kingdom, + <<FSChange "ChineseRevivalist" 2>> + <</if>> + <<if $Bodyguard == 0>> + and @@.red;disapproves@@ of your failure to keep a Bodyguard as befits a proper imperial palace. + <<FSChange "ChineseRevivalist" -2>> + <<else>> + and @@.green;approves@@ of your keeping a Bodyguard, as befits a proper imperial palace. + <<FSChange "ChineseRevivalist" 2>> + <</if>> + <<if $language != "Chinese">> + Continuing to use $language as the lingua franca of $arcologies[0].name rather than the Chinese of the Middle Kingdom @@.red;disappoints@@ society and causes doubt about your revivalist project. + <<FSChange "ChineseRevivalist" -2>> + <</if>> +<</if>> + +<<if ($arcologies[0].FSRepopulationFocus != "unset")>> + <<if $IntelligenceEugenicsSMR == 1 || $HeightEugenicsSMR == 1 || $FaceEugenicsSMR == 1>> + Society @@.red;disapproves@@ of your policies sterilizing potential mothers. Your insistence on eugenics hinders adoption of your new society. + <<set _noEugenics = -1*($IntelligenceEugenicsSMR+$HeightEugenicsSMR+$FaceEugenicsSMR)>> + <<FSChange "Repopulationist" _noEugenics>> + <</if>> +<<elseif ($arcologies[0].FSRestart != "unset")>> + <<if ($IntelligenceEugenicsSMR == 1 || $HeightEugenicsSMR == 1 || $FaceEugenicsSMR == 1) && $arcologies[0].FSRestartSMR != 1>> + Society @@.green; approves@@ of your slave eugenics policies, easing them into more thorough eugenics. + <<set _yesEugenics = ($IntelligenceEugenicsSMR+$HeightEugenicsSMR+$FaceEugenicsSMR)>> + <<FSChange "Eugenics" _yesEugenics>> + <<set $failedElite -= 1*($IntelligenceEugenicsSMR+$HeightEugenicsSMR+$FaceEugenicsSMR)>> + <<elseif $arcologies[0].FSRestartSMR == 1>> + <<set $failedElite -= 2*($IntelligenceEugenicsSMR+$HeightEugenicsSMR+$FaceEugenicsSMR)>> + <</if>> +<</if>> + +<<if ($arcologies[0].FSRepopulationFocus != "unset") && ($birthsTotal > 0)>> + The number of children you've bought into the world @@.green;pleases@@ your citizens. + <<if $birthsTotal < 1000>> + <<set $rep += $birthsTotal>> + <<else>> + <<set $rep += 1000>> + <</if>> +<</if>> + +<<if $shelterAbuse > 5>> + <<if $arcologies[0].FSPaternalist != "unset">> + You are on the Slave Shelter's public list of abusive slaveowners. Society @@.red;disapproves@@ of your falling foul of such a well regarded charity. + <<FSChange "Paternalist" -2>> + <<elseif $arcologies[0].FSDegradationist != "unset">> + You are on the Slave Shelter's public list of abusive slaveowners. Your citizens find this hilarious, and @@.green;approve@@ of your taking advantage of a pack of idiots. + <<FSChange "Degradationist" 2>> + <</if>> +<</if>> + +<<if $Cash4Babies == 1>> + <<if $arcologies[0].FSDegradationist != "unset">> + Society @@.green;approves@@ of your poor treatment of slave infants. + <<set $rep += 5*$FSSingleSlaveRep*($arcologies[0].FSDegradationist/$FSLockinLevel)>> + <<elseif $arcologies[0].FSRestart != "unset">> + <<elseif $arcologies[0].FSPaternalist != "unset">> + Society @@.red;greatly despises@@ your poor treatment of slave infants. + <<set $rep -= (25*$FSSingleSlaveRep*($arcologies[0].FSPaternalist/$FSLockinLevel))+($rep/20)>> + <<elseif $arcologies[0].FSRepopulationFocus != "unset">> + Society @@.red;disapproves@@ of your poor treatment of your future population, holding back acceptance of your new society. + <<set $arcologies[0].FSRepopulationFocus -= 0.05*$FSSingleSlaveRep>> + <<set $rep -= (5*$FSSingleSlaveRep*($arcologies[0].FSRepopulationFocus/$FSLockinLevel))+($rep/20)>> + <<else>> + Your citizens @@.red;disapprove@@ of your poor treatment of slave children. + <<set $rep -= ($rep/20)>> + <</if>> +<</if>> + +<<if $MixedMarriage == 1>> + Your citizens + <<if $arcologies[0].FSPaternalist >= 80>> + are so paternalistic that they @@.green;approve@@ of + <<FSChange "Paternalist" 2>> + <<elseif $arcologies[0].FSPaternalist >= 40>> + are paternalistic enough to tolerate + <<else>> + @@.red;disapprove@@ of + <<set $rep -= 50>> + <</if>> + your support for marriage between citizens and slaves. +<</if>> + +<<if $arcologies[0].FSNull != "unset">> + Your cultural openness @@.green;helps your reputation,@@ since few citizens have disputes with your permissive approach. + <<set $rep += 50*$FSSingleSlaveRep*($arcologies[0].FSNull/$FSLockinLevel)>> +<</if>> + +<<if $arcologies[0].FSRestartLaw == 1>> + Your laws requiring the non-elite to pay additional taxes or be sterilized @@.red;agitates@@ some of your citizens, but they don't matter. Only your @@.green;pleased@@ elite do. + <<set $rep -= 100>> + <<set $failedElite -= 1>> +<</if>> + +<<if $FrigiditySMR == 1>> + Your market regulations regarding slave sex drives @@.red;outrages@@ your citizens seeking sex slaves, since only slaves disinterested in sex are available. + <<set $rep -= 250>> +<</if>> + +<<if $PC.degeneracy > 0>> + <<if $PC.degeneracy > 100>> + There are @@.red;severe and devastating rumors@@ about you spreading across the arcology. + <<set $rep -= 100*$PC.degeneracy>> + <<elseif $PC.degeneracy > 75>> + There are @@.red;severe rumors@@ about you spreading across the arcology. + <<set $rep -= 10*($PC.degeneracy*2)>> + <<elseif $PC.degeneracy > 50>> + There are @@.red;bad rumors@@ about you spreading across the arcology. + <<set $rep -= 10*$PC.degeneracy>> + <<elseif $PC.degeneracy > 25>> + There are @@.red;rumors@@ about you spreading across the arcology. + <<set $rep -= 5*$PC.degeneracy>> + <<elseif $PC.degeneracy > 10>> + There are @@.red;minor rumors@@ about you spreading across the arcology. + <<set $rep -= $PC.degeneracy*2>> + <<else>> + The occasional rumor about you can be heard throughout the arcology. + <<set $rep -= $PC.degeneracy>> + <</if>> +<</if>> + +<<set $rep -= $repLoss>> +<<set $rep += $repGain>> + +<<if $repGain > $repLoss>> + @@.green;Your reputation increased this week.@@ +<<elseif $repGain < $repLoss>> + @@.red;Your reputation decreased this week.@@ +<</if>> + +<<if $rep > 19000>> + Your reputation is capped. + <<set $rep = 20000>> +<<elseif $rep-$enduringRep > 7500>> + Your base rate of reputation decay is very high. +<<elseif $rep-$enduringRep > 5000>> + Your base rate of reputation decay is high. +<<elseif $rep-$enduringRep > 2500>> + Your base rate of reputation decay is moderate. +<<elseif $rep-$enduringRep > 0>> + Your base rate of reputation decay is low. +<</if>> +<<if $enduringRep >= 10000>> + Your legend is perfected, reducing reputation decay to its lowest possible level. + <<set $enduringRep = 10000>> +<</if>> + +<<if $alwaysSubsidizeRep == 1>> +<<if $rep <= 19900>> + <<set $rep += 100>> + Reputation subsidized as planned. +<<else>> + <<set $cash += 1000>> + Reputation subsidy reclaimed this week since your reputation is capped. +<</if>> +<</if>> + +<<if $failedElite > 1>> + <<set $failedElite -= 1>> +<</if>> +<<if $PC.degeneracy > 0>> + <<set $PC.degeneracy -= 1>> +<</if>> + +<<if $arcologies[0].FSRestartDecoration == 100>> + <<if $failedElite > 300>> + The Societal Elite @@.red;are plotting your demise@@. + <<set $ui = "start">> + <<set $gameover to "you failed">><<goto "Gameover">> + <<elseif $failedElite > 250>> + The Societal Elite @@.red;are openly discussing about your failures@@. It would be in your best interests to appease them. + <<elseif $failedElite > 200>> + The Societal Elite @@.red;are avoiding you@@. Getting back on their good side is a good idea, lest you want to disappear. + <<elseif $failedElite > 150>> + The Societal Elite @@.red;stop their conversations around you@@. You may want to consider your actions more. + <<elseif $failedElite > 50>> + The Societal Elite @@.red;mutter about you@@. + <</if>> +<<elseif $arcologies[0].FSRestart != "unset">> + <<if $failedElite > 300>> + The Societal Elite @@.red;have left@@. + <<set $arcologies[0].FSRestart = "unset">> + <<set $arcologies[0].FSRestartDecoration = 20>> + <<set $arcologies[0].FSRestartLaw = 0>> + <<set $FSCredits += 1>> + <<set $failedElite = 0>> + <<set $rep -= 10000>> + <<set $ACitizens -= random(30,100)>> + <<if $arcologies[0].prosperity > 50>> + <<set $arcologies[0].prosperity -= random(20,40)>> + <</if>> + <<elseif $failedElite > 250>> + The Societal Elite @@.red;are openly discussing leaving@@. It would be in your best interests to appease them. + <<elseif $failedElite > 200>> + The Societal Elite @@.red;are avoiding you@@. Getting back on their good side is a good idea, lest you want to disappear. + <<elseif $failedElite > 150>> + The Societal Elite @@.red;stop their conversations around you@@. You may want to consider your actions more. + <<elseif $failedElite > 50>> + The Societal Elite @@.red;mutter about you@@. + <</if>> +<</if>> diff --git a/src/uncategorized/rulesAssistant.tw b/src/uncategorized/rulesAssistant.tw index 9e939ebf346177a915a0d90a9e48a7aadd3894b5..55deccf8a14a6171779fdf652bccf8e31ccaed84 100644 --- a/src/uncategorized/rulesAssistant.tw +++ b/src/uncategorized/rulesAssistant.tw @@ -145,68 +145,71 @@ <<else>> __Rule $r Automatic Activation__ -<span id ="activation"> -</span> +<span id="activation"></span> + +<<if isSimpleCondition($currentRule.condition, ["devotion", "trust", "health", "energy", "weight", "age"])>> + <<timed 50ms>> -<<RAChangeActivation>> + <<RAChangeActivation>> <</timed>> <br> <<link "None">> - <<set $currentRule.activation = "none">> + <<set $currentRule.condition = {id: "false"}>> <<RAChangeActivation>> <<RAChangeSave>> <<RAChangeApply>> <</link>> | <<link "Always">> - <<set $currentRule.activation = "always">> + <<set $currentRule.condition = {id: "true"}>> <<RAChangeActivation>> <<RAChangeSave>> <<RAChangeApply>> <</link>> | <<link "Devotion">> - <<set $currentRule.activation = "devotion">> + <<set $currentRule.condition = changeVariable($currentRule.condition, "devotion")>> <<RAChangeActivation>> <<RAChangeSave>> <<RAChangeApply>> <</link>> | <<link "Trust">> - <<set $currentRule.activation = "trust">> + <<set $currentRule.condition = changeVariable($currentRule.condition, "trust")>> <<RAChangeActivation>> <<RAChangeSave>> <<RAChangeApply>> <</link>> | <<link "Health">> - <<set $currentRule.activation = "health">> + <<set $currentRule.condition = changeVariable($currentRule.condition, "health")>> <<RAChangeActivation>> <<RAChangeSave>> <<RAChangeApply>> <</link>> | <<link "Sex drive">> - <<set $currentRule.activation = "sex drive">> + <<set $currentRule.condition = changeVariable($currentRule.condition, "energy")>> <<RAChangeActivation>> <<RAChangeSave>> <<RAChangeApply>> <</link>> | <<link "Weight">> - <<set $currentRule.activation = "weight">> + <<set $currentRule.condition = changeVariable($currentRule.condition, "weight")>> <<RAChangeActivation>> <<RAChangeSave>> <<RAChangeApply>> <</link>> | <<link "Age">> - <<set $currentRule.activation = "age">> + <<set $currentRule.condition = changeVariable($currentRule.condition, "age")>> <<RAChangeActivation>> <<RAChangeSave>> <<RAChangeApply>> -<</link>> +<</link>> +/* | <<link "Lactation">> <<set $currentRule.activation = "lactation">> @@ -229,7 +232,7 @@ __Rule $r Automatic Activation__ <<RAChangeApply>> <</link>> <<if $bellyImplants == 1 >> -| +| <<link "Belly implant">> <<set $currentRule.activation = "belly implant volume">> <<RAChangeActivation>> @@ -237,14 +240,35 @@ __Rule $r Automatic Activation__ <<RAChangeApply>> <</link>> <</if>> +*/ | <<link "Custom">> - <<set $currentRule.activation = "custom">> - <<RAChangeActivation>> + <<set _customCondition = unparseExpr($currentRule.condition)>> + <<replace "#activation">> + (custom): <br> + <<textinput "_customCondition" _customCondition>> + <<RAChangeSave>> + <<RAChangeApply>> + <</textinput>> + <</replace>> <<RAChangeSave>> <<RAChangeApply>> <</link>> +<<else>> + <<set _customCondition = unparseExpr($currentRule.condition)>> + <<timed 50ms>> + <<replace "#activation">> + (custom): <br> + //Sir, I'm afraid the condition you have given me is too complex to display in the usual interface.// + <<textinput "_customCondition" _customCondition>> + <<RAChangeSave>> + <<RAChangeApply>> + <</textinput>> + <</replace>> + <</timed>> +<</if>> + <br><br> <span id = "applyassignment"> @@ -350,189 +374,190 @@ __Rule $r Default Appearance:__ <br> Clothes: <span id = "clothes"> -<<if $currentRule.choosesOwnClothes == 1>> +<<if ($currentRule.clothes == "choosing her own clothes")>> ''slave's choice.'' - <<set $currentRule.clothes = "choosing her own clothes">> <<else>> ''$currentRule.clothes.'' <</if>> </span> <br>(Good clothes)<br> <<link "No default clothes setting">> - <<set $currentRule.clothes = "no default setting", $currentRule.choosesOwnClothes = 0>> + <<set $currentRule.clothes = "no default setting">> <<RAChangeClothes>> <<RAChangeSave>> <<RAChangeApply>> <</link>> | <<link "Nice lingerie">> - <<set $currentRule.clothes = "attractive lingerie", $currentRule.choosesOwnClothes = 0>> + <<set $currentRule.clothes = "attractive lingerie">> <<RAChangeClothes>> <<RAChangeSave>> <<RAChangeApply>> <</link>> | <<link "String bikini">> - <<set $currentRule.clothes = "a string bikini", $currentRule.choosesOwnClothes = 0>> + <<set $currentRule.clothes = "a string bikini">> <<RAChangeClothes>> <<RAChangeSave>> <<RAChangeApply>> <</link>> | <<link "Clubslut netting">> - <<set $currentRule.clothes = "clubslut netting", $currentRule.choosesOwnClothes = 0>> + <<set $currentRule.clothes = "clubslut netting">> <<RAChangeClothes>> <<RAChangeSave>> <<RAChangeApply>> <</link>> | <<link "Cheerleader outfit">> - <<set $currentRule.clothes = "a cheerleader outfit", $currentRule.choosesOwnClothes = 0>> + <<set $currentRule.clothes = "a cheerleader outfit">> <<RAChangeClothes>> <<RAChangeSave>> <<RAChangeApply>> <</link>> | <<link "Cutoffs and a t-shirt">> - <<set $currentRule.clothes = "cutoffs and a t-shirt", $currentRule.choosesOwnClothes = 0>> + <<set $currentRule.clothes = "cutoffs and a t-shirt">> <<RAChangeClothes>> <<RAChangeSave>> <<RAChangeApply>> <</link>> | <<link "Slave gown">> - <<set $currentRule.clothes = "a slave gown", $currentRule.choosesOwnClothes = 0>> + <<set $currentRule.clothes = "a slave gown">> <<RAChangeClothes>> <<RAChangeSave>> <<RAChangeApply>> <</link>> | <<link "Ball gown">> - <<set $currentRule.clothes = "a ball gown", $currentRule.choosesOwnClothes = 0>> + <<set $currentRule.clothes = "a ball gown">> <<RAChangeClothes>> <<RAChangeSave>> <<RAChangeApply>> <</link>> | <<link "Halter top">> - <<set $currentRule.clothes = "a halter top dress", $currentRule.choosesOwnClothes = 0>> + <<set $currentRule.clothes = "a halter top dress">> <<RAChangeClothes>> <<RAChangeSave>> <<RAChangeApply>> <</link>> | <<link "Mini dress">> - <<set $currentRule.clothes = "a mini dress", $currentRule.choosesOwnClothes = 0>> + <<set $currentRule.clothes = "a mini dress">> <<RAChangeClothes>> <<RAChangeSave>> <<RAChangeApply>> <</link>> | <<link "Slutty suit">> - <<set $currentRule.clothes = "slutty business attire", $currentRule.choosesOwnClothes = 0>> + <<set $currentRule.clothes = "slutty business attire">> <<RAChangeClothes>> <<RAChangeSave>> <<RAChangeApply>> <</link>> | <<link "Nice suit">> - <<set $currentRule.clothes = "nice business attire", $currentRule.choosesOwnClothes = 0>> + <<set $currentRule.clothes = "nice business attire">> <<RAChangeClothes>> <<RAChangeSave>> <<RAChangeApply>> <</link>> | <<link "Slutty nurse">> - <<set $currentRule.clothes = "a slutty nurse outfit", $currentRule.choosesOwnClothes = 0>> + <<set $currentRule.clothes = "a slutty nurse outfit">> <<RAChangeClothes>> <<RAChangeSave>> <<RAChangeApply>> <</link>> | <<link "Nice nurse">> - <<set $currentRule.clothes = "a nice nurse outfit", $currentRule.choosesOwnClothes = 0>> + <<set $currentRule.clothes = "a nice nurse outfit">> <<RAChangeClothes>> <<RAChangeSave>> <<RAChangeApply>> <</link>> | <<link "Schoolgirl">> - <<set $currentRule.clothes = "a schoolgirl outfit", $currentRule.choosesOwnClothes = 0>> + <<set $currentRule.clothes = "a schoolgirl outfit">> <<RAChangeClothes>> <<RAChangeSave>> <<RAChangeApply>> <</link>> | <<link "Bodysuit">> - <<set $currentRule.clothes = "a comfortable bodysuit", $currentRule.choosesOwnClothes = 0>> + <<set $currentRule.clothes = "a comfortable bodysuit">> <<RAChangeClothes>> <<RAChangeSave>> <<RAChangeApply>> <</link>> | <<link "Latex catsuit">> - <<set $currentRule.clothes = "a latex catsuit", $currentRule.choosesOwnClothes = 0>> + <<set $currentRule.clothes = "a latex catsuit">> <<RAChangeClothes>> <<RAChangeSave>> <<RAChangeApply>> <</link>> | <<link "Leotard">> - <<set $currentRule.clothes = "a leotard", $currentRule.choosesOwnClothes = 0>> + <<set $currentRule.clothes = "a leotard">> <<RAChangeClothes>> <<RAChangeSave>> <<RAChangeApply>> <</link>> | <<link "Military uniform">> - <<set $currentRule.clothes = "a military uniform", $currentRule.choosesOwnClothes = 0>> + <<set $currentRule.clothes = "a military uniform">> <<RAChangeClothes>> <<RAChangeSave>> <<RAChangeApply>> <</link>> | <<link "Skimpy battledress">> - <<set $currentRule.clothes = "battledress", $currentRule.choosesOwnClothes = 0>> + <<set $currentRule.clothes = "battledress">> <<RAChangeClothes>> <<RAChangeSave>> <<RAChangeApply>> <</link>> | <<link "Slutty maid">> - <<set $currentRule.clothes = "a slutty maid outfit", $currentRule.choosesOwnClothes = 0>> + <<set $currentRule.clothes = "a slutty maid outfit">> <<RAChangeClothes>> <<RAChangeSave>> <<RAChangeApply>> <</link>> | <<link "Nice maid">> - <<set $currentRule.clothes = "a nice maid outfit", $currentRule.choosesOwnClothes = 0>> + <<set $currentRule.clothes = "a nice maid outfit">> <<RAChangeClothes>> <<RAChangeSave>> <<RAChangeApply>> <</link>> | <<link "Fallen nun">> - <<set $currentRule.clothes = "a fallen nuns habit", $currentRule.choosesOwnClothes = 0>> + <<set $currentRule.clothes = "a fallen nuns habit">> <<RAChangeClothes>> <<RAChangeSave>> <<RAChangeApply>> <</link>> | <<link "Hijab and abaya">> - <<set $currentRule.clothes = "a hijab and abaya", $currentRule.choosesOwnClothes = 0>> + <<set $currentRule.clothes = "a hijab and abaya">> <<RAChangeClothes>> + <<RAChangeSave>> + <<RAChangeApply>> <</link>> | <<link "Bangles">> - <<set $currentRule.clothes = "slutty jewelry", $currentRule.choosesOwnClothes = 0>> + <<set $currentRule.clothes = "slutty jewelry">> <<RAChangeClothes>> <<RAChangeSave>> <<RAChangeApply>> <</link>> | <<link "Succubus costume">> - <<set $currentRule.clothes = "a succubus outfit", $currentRule.choosesOwnClothes = 0>> + <<set $currentRule.clothes = "a succubus outfit">> <<RAChangeClothes>> <<RAChangeSave>> <<RAChangeApply>> @@ -541,7 +566,7 @@ Clothes: <<if ($arcologies[0].FSGenderFundamentalist != "unset") || ($cheatMode == 1) || ($clothesBoughtBunny == 1)>> //FS// <<link "Bunny outfit">> - <<set $currentRule.clothes = "a bunny outfit", $currentRule.choosesOwnClothes = 0>> + <<set $currentRule.clothes = "a bunny outfit">> <<RAChangeClothes>> <<RAChangeSave>> <<RAChangeApply>> @@ -550,7 +575,7 @@ Clothes: <<if ($arcologies[0].FSPaternalist != "unset") || ($cheatMode == 1) || ($clothesBoughtConservative == 1)>> //FS// <<link "Conservative clothing">> - <<set $currentRule.clothes = "conservative clothing", $currentRule.choosesOwnClothes = 0>> + <<set $currentRule.clothes = "conservative clothing">> <<RAChangeClothes>> <<RAChangeSave>> <<RAChangeApply>> @@ -559,7 +584,7 @@ Clothes: <<if ($arcologies[0].FSDegradationist != "unset") || ($cheatMode == 1) || ($clothesBoughtChains == 1)>> //FS// <<link "Chains">> - <<set $currentRule.clothes = "chains", $currentRule.choosesOwnClothes = 0>> + <<set $currentRule.clothes = "chains">> <<RAChangeClothes>> <<RAChangeSave>> <<RAChangeApply>> @@ -568,16 +593,16 @@ Clothes: <<if ($arcologies[0].FSPastoralist != "unset") || ($cheatMode == 1) || ($clothesBoughtWestern == 1)>> //FS// <<link "Western clothing">> - <<set $currentRule.clothes = "Western clothing", $currentRule.choosesOwnClothes = 0>> + <<set $currentRule.clothes = "Western clothing">> <<RAChangeClothes>> <<RAChangeSave>> <<RAChangeApply>> <</link>> | <</if>> -<<if ($arcologies[0].FSPhysicalIdealist != "unset") || ($cheatMode == 1) || ($cheatMode == 1) || ($clothesBoughtOil == 1)>> +<<if ($arcologies[0].FSPhysicalIdealist != "unset") || ($cheatMode == 1) || ($clothesBoughtOil == 1)>> //FS// <<link "Body oil">> - <<set $currentRule.clothes = "body oil", $currentRule.choosesOwnClothes = 0>> + <<set $currentRule.clothes = "body oil">> <<RAChangeClothes>> <<RAChangeSave>> <<RAChangeApply>> @@ -586,7 +611,7 @@ Clothes: <<if ($arcologies[0].FSChattelReligionist != "unset") || ($cheatMode == 1) || ($clothesBoughtHabit == 1)>> //FS// <<link "Chattel habit">> - <<set $currentRule.clothes = "a chattel habit", $currentRule.choosesOwnClothes = 0>> + <<set $currentRule.clothes = "a chattel habit">> <<RAChangeClothes>> <<RAChangeSave>> <<RAChangeApply>> @@ -595,7 +620,7 @@ Clothes: <<if ($arcologies[0].FSRomanRevivalist != "unset") || ($cheatMode == 1) || ($clothesBoughtToga == 1)>> //FS// <<link "Toga">> - <<set $currentRule.clothes = "a toga", $currentRule.choosesOwnClothes = 0>> + <<set $currentRule.clothes = "a toga">> <<RAChangeClothes>> <<RAChangeSave>> <<RAChangeApply>> @@ -604,7 +629,7 @@ Clothes: <<if ($arcologies[0].FSEdoRevivalist != "unset") || ($cheatMode == 1) || ($clothesBoughtKimono == 1)>> //FS// <<link "Kimono">> - <<set $currentRule.clothes = "a kimono", $currentRule.choosesOwnClothes = 0>> + <<set $currentRule.clothes = "a kimono">> <<RAChangeClothes>> <<RAChangeSave>> <<RAChangeApply>> @@ -612,7 +637,7 @@ Clothes: <<elseif ($arcologies[0].FSArabianRevivalist != "unset") || ($cheatMode == 1) || ($clothesBoughtHarem == 1)>> //FS// <<link "Harem gauze">> - <<set $currentRule.clothes = "harem gauze", $currentRule.choosesOwnClothes = 0>> + <<set $currentRule.clothes = "harem gauze">> <<RAChangeClothes>> <<RAChangeSave>> <<RAChangeApply>> @@ -621,7 +646,7 @@ Clothes: <<if ($arcologies[0].FSChineseRevivalist != "unset") || ($cheatMode == 1) || ($clothesBoughtQipao == 1)>> //FS// <<link "Qipao">> - <<set $currentRule.clothes = "a slutty qipao", $currentRule.choosesOwnClothes = 0>> + <<set $currentRule.clothes = "a slutty qipao">> <<RAChangeClothes>> <<RAChangeSave>> <<RAChangeApply>> @@ -630,7 +655,7 @@ Clothes: <<if ($arcologies[0].FSRepopulationFocus != "unset") || ($cheatMode == 1) || ($clothesBoughtMaternityDress == 1)>> //FS// <<link "Maternity dress">> - <<set $currentRule.clothes = "a maternity dress", $currentRule.choosesOwnClothes = 0>> + <<set $currentRule.clothes = "a maternity dress">> <<RAChangeClothes>> <<RAChangeSave>> <<RAChangeApply>> @@ -639,49 +664,49 @@ Clothes: <<if ($arcologies[0].FSRepopulationFocus != "unset") || ($cheatMode == 1) || ($clothesBoughtMaternityLingerie == 1)>> //FS// <<link "Maternity lingerie">> - <<set $currentRule.clothes = "attractive lingerie for a pregnant woman", $currentRule.choosesOwnClothes = 0>> + <<set $currentRule.clothes = "attractive lingerie for a pregnant woman">> <<RAChangeClothes>> <<RAChangeSave>> <<RAChangeApply>> <</link>> | <</if>> <<link "Select her own outfit">> - <<set $currentRule.clothes = "choosing her own clothes", $currentRule.choosesOwnClothes = 1>> + <<set $currentRule.clothes = "choosing her own clothes">> <<RAChangeClothes>> <<RAChangeSave>> <<RAChangeApply>> <</link>> <br>(Bad clothes)<br> <<link "Nude">> - <<set $currentRule.clothes = "no clothing", $currentRule.choosesOwnClothes = 0>> + <<set $currentRule.clothes = "no clothing">> <<RAChangeClothes>> <<RAChangeSave>> <<RAChangeApply>> <</link>> | <<link "Uncomfortable straps">> - <<set $currentRule.clothes = "uncomfortable straps", $currentRule.choosesOwnClothes = 0>> + <<set $currentRule.clothes = "uncomfortable straps">> <<RAChangeClothes>> <<RAChangeSave>> <<RAChangeApply>> <</link>> | <<link "Shibari ropes">> - <<set $currentRule.clothes = "shibari ropes", $currentRule.choosesOwnClothes = 0>> + <<set $currentRule.clothes = "shibari ropes">> <<RAChangeClothes>> <<RAChangeSave>> <<RAChangeApply>> <</link>> | <<link "Restrictive latex">> - <<set $currentRule.clothes = "restrictive latex", $currentRule.choosesOwnClothes = 0>> + <<set $currentRule.clothes = "restrictive latex">> <<RAChangeClothes>> <<RAChangeSave>> <<RAChangeApply>> <</link>> | <<link "Penitent nun">> - <<set $currentRule.clothes = "a penitent nuns habit", $currentRule.choosesOwnClothes = 0>> + <<set $currentRule.clothes = "a penitent nuns habit">> <<RAChangeClothes>> <<RAChangeSave>> <<RAChangeApply>> @@ -2562,13 +2587,8 @@ Relationship rules: ''$currentRule.relationshipRules.'' <<if ($currentRule.ID == 1)>> <<set $currentRule.name = "Obedient Slaves">> - <<set $currentRule.activation = "devotion">> - <<set $currentRule.thresholdLower = 20>> - <<set $currentRule.eqLower = true>> - <<set $currentRule.thresholdUpper = "none">> - <<set $currentRule.eqUpper = true>> + <<set $currentRule.condition = {id: ">=", first: {id: "(name)", name: "devotion"}, second: {id: "(number)", value: 20}}>> <<set $currentRule.clothes = "slutty jewelry">> - <<set $currentRule.choosesOwnClothes = 0>> <<set $currentRule.collar = "pretty jewelry">> <<set $currentRule.shoes = "heels">> <<set $currentRule.vaginalAccessory = "none">> @@ -2616,7 +2636,6 @@ Relationship rules: ''$currentRule.relationshipRules.'' <<set $currentRule.relationshipRules = "permissive">> <<set $currentRule.livingRules = "luxurious">> <<set $currentRule.growth = "unlimited">> - <<set $currentRule.lactation = "no default setting">> <<set $currentRule.autoBrand = 1>> <<set $currentRule.assignment = []>> <<set $currentRule.excludeAssignment = []>> @@ -2644,15 +2663,11 @@ Relationship rules: ''$currentRule.relationshipRules.'' <<set $currentRule.surgery.lips = 0>> <<set $currentRule.surgery.holes = 0>> <<set $defaultRules[_t] = $currentRule>> + <<elseif ($currentRule.ID == 2)>> <<set $currentRule.name = "Disobedient Slaves">> - <<set $currentRule.activation = "devotion">> - <<set $currentRule.thresholdLower = "none">> - <<set $currentRule.eqLower = true>> - <<set $currentRule.thresholdUpper = 20>> - <<set $currentRule.eqUpper = false>> + <<set $currentRule.condition = {id: "<", first: {id: "(name)", name: "devotion"}, second: {id: "(number)", value: 20}}>> <<set $currentRule.clothes = "uncomfortable straps">> - <<set $currentRule.choosesOwnClothes = 0>> <<set $currentRule.collar = "uncomfortable leather">> <<set $currentRule.shoes = "heels">> <<set $currentRule.vaginalAccessory = "no default setting">> @@ -2700,7 +2715,6 @@ Relationship rules: ''$currentRule.relationshipRules.'' <<set $currentRule.livingRules = "spare">> <<set $currentRule.autoSurgery = 0>> <<set $currentRule.growth = "unlimited">> - <<set $currentRule.lactation = "no default setting">> <<set $currentRule.autoBrand = 1>> <<set $currentRule.assignment = []>> <<set $currentRule.excludeAssignment = []>> @@ -2726,15 +2740,11 @@ Relationship rules: ''$currentRule.relationshipRules.'' <<set $currentRule.surgery.lips = "no default setting">> <<set $currentRule.surgery.holes = 0>> <<set $defaultRules[_t] = $currentRule>> - <<else>> + + <<elseif ($currentRule.ID == 3)>> <<set $currentRule.name = "Unhealthy Slaves">> - <<set $currentRule.activation = "health">> - <<set $currentRule.thresholdLower = "none">> - <<set $currentRule.eqLower = true>> - <<set $currentRule.thresholdUpper = -2>> - <<set $currentRule.eqUpper = false>> + <<set $currentRule.condition = {id: "<", first: {id: "(name)", name: "health"}, second: {id: "(number)", value: -2}}>> <<set $currentRule.clothes = "no default setting">> - <<set $currentRule.choosesOwnClothes = 0>> <<set $currentRule.collar = "no default setting">> <<set $currentRule.shoes = "no default setting">> <<set $currentRule.vaginalAccessory = "no default setting">> @@ -2781,7 +2791,6 @@ Relationship rules: ''$currentRule.relationshipRules.'' <<set $currentRule.relationshipRules = "no default setting">> <<set $currentRule.livingRules = "no default setting">> <<set $currentRule.growth = "no default setting">> - <<set $currentRule.lactation = "no default setting">> <<set $currentRule.autoBrand = "no default setting">> <<set $currentRule.assignment = []>> <<set $currentRule.excludeAssignment = []>> @@ -2838,7 +2847,7 @@ Relationship rules: ''$currentRule.relationshipRules.'' <<link "Add a new rule">> - <<set _activeRule = {aphrodisiacs: "no default setting", activation: "none", thresholdLower: 4, thresholdUpper: "none", eqLower: true, eqUpper: true, releaseRules: "no default setting", clitSetting: "no default setting", clitSettingXY: "no default setting", clitSettingXX: "no default setting", clitSettingEnergy: "no default setting", speechRules: "no default setting", clothes: "no default setting", fuckdoll: 0, choosesOwnClothes: 0, collar: "no default setting", shoes: "no default setting", virginAccessory: "no default setting", aVirginAccessory: "no default setting", vaginalAccessory: "no default setting", aVirginDickAccessory: "no default setting", dickAccessory: "no default setting", cSec: 0, bellyAccessory: "no default setting", aVirginButtplug: "no default setting", buttplug: "no default setting", markings: "none", eyeColor: "no default setting", makeup: "no default setting", nails: "no default setting", hColor: "no default setting", hLength: "no default setting", hStyle: "no default setting", pubicHColor: "no default setting", pubicHStyle: "no default setting", nipplesPiercing: "no default setting", areolaePiercing: "no default setting", clitPiercing: "no default setting", vaginaLube: "no default setting", vaginaPiercing: "no default setting", analArea: 1, dickPiercing: "no default setting", anusPiercing: "no default setting", lipsPiercing: "no default setting", tonguePiercing: "no default setting", earPiercing: "no default setting", nosePiercing: "no default setting", eyebrowPiercing: "no default setting", navelPiercing: "no default setting", corsetPiercing: "no default setting", boobsTat: "no default setting", buttTat: "no default setting", vaginaTat: "no default setting", dickTat: "no default setting", lipsTat: "no default setting", anusTat: "no default setting", shouldersTat: "no default setting", armsTat: "no default setting", legsTat: "no default setting", backTat: "no default setting", stampTat: "no default setting", curatives: "no default setting", livingRules: "no default setting", relationshipRules: "no default setting", standardPunishment: "no default setting", standardReward: "no default setting", useRulesAssistant: 1, diet: "no default setting", dietCum: "no default setting", dietMilk: "no default setting", muscles: "no default setting", XY: "no default setting", XX: "no default setting", gelding: "no default setting", preg: "no default setting", growth: "no default setting", autoSurgery: 0, choosesOwnAssignment: 0, lactation: 0, autoBrand: 0, pornFameSpending: "no default setting", dietGrowthSupport: 0, eyewear: "no default setting", assignment: [], excludeAssignment: [], setAssignment: "none", facility: [], excludeFacility: [], assignFacility: "none", excludeSpecialSlaves: true, facilityRemove: false, removalAssignment: "rest", selectedSlaves: [], excludedSlaves: [], surgery: {lactation: "no default setting", cosmetic: 0, accent: "no default setting", shoulders: "no default setting", shouldersImplant: "no default setting", boobs: "no default setting", hips: "no default setting", hipsImplant: "no default setting", butt: "no default setting", faceShape: "no default setting", lips: "no default setting", holes: 0}, underArmHColor: "no default setting", underArmHStyle: "no default setting" }>> + <<set _activeRule = {aphrodisiacs: "no default setting", condition: {id: "false"}, releaseRules: "no default setting", clitSetting: "no default setting", clitSettingXY: "no default setting", clitSettingXX: "no default setting", clitSettingEnergy: "no default setting", speechRules: "no default setting", clothes: "no default setting", collar: "no default setting", shoes: "no default setting", virginAccessory: "no default setting", aVirginAccessory: "no default setting", vaginalAccessory: "no default setting", aVirginDickAccessory: "no default setting", dickAccessory: "no default setting", bellyAccessory: "no default setting", aVirginButtplug: "no default setting", buttplug: "no default setting", eyeColor: "no default setting", makeup: "no default setting", nails: "no default setting", hColor: "no default setting", hLength: "no default setting", hStyle: "no default setting", pubicHColor: "no default setting", pubicHStyle: "no default setting", nipplesPiercing: "no default setting", areolaePiercing: "no default setting", clitPiercing: "no default setting", vaginaLube: "no default setting", vaginaPiercing: "no default setting", dickPiercing: "no default setting", anusPiercing: "no default setting", lipsPiercing: "no default setting", tonguePiercing: "no default setting", earPiercing: "no default setting", nosePiercing: "no default setting", eyebrowPiercing: "no default setting", navelPiercing: "no default setting", corsetPiercing: "no default setting", boobsTat: "no default setting", buttTat: "no default setting", vaginaTat: "no default setting", dickTat: "no default setting", lipsTat: "no default setting", anusTat: "no default setting", shouldersTat: "no default setting", armsTat: "no default setting", legsTat: "no default setting", backTat: "no default setting", stampTat: "no default setting", curatives: "no default setting", livingRules: "no default setting", relationshipRules: "no default setting", standardPunishment: "no default setting", standardReward: "no default setting", diet: "no default setting", dietCum: "no default setting", dietMilk: "no default setting", muscles: "no default setting", XY: "no default setting", XX: "no default setting", gelding: "no default setting", preg: "no default setting", growth: "no default setting", autoSurgery: 0, autoBrand: 0, pornFameSpending: "no default setting", dietGrowthSupport: 0, eyewear: "no default setting", assignment: [], excludeAssignment: [], setAssignment: "none", facility: [], excludeFacility: [], assignFacility: "none", excludeSpecialSlaves: true, facilityRemove: false, removalAssignment: "rest", selectedSlaves: [], excludedSlaves: [], surgery: {lactation: "no default setting", cosmetic: 0, accent: "no default setting", shoulders: "no default setting", shouldersImplant: "no default setting", boobs: "no default setting", hips: "no default setting", hipsImplant: "no default setting", butt: "no default setting", faceShape: "no default setting", lips: "no default setting", holes: 0}, underArmHColor: "no default setting", underArmHStyle: "no default setting" }>> <<set _activeRule.name = "Rule " + (_length+1)>> <<set $defaultRules.push(_activeRule)>> diff --git a/src/uncategorized/saChoosesOwnClothes.tw b/src/uncategorized/saChoosesOwnClothes.tw index ee146152cf7840a254f89ad1bdde613b1e3e63e3..ab783646d8fbcb58763b31278c0ed9d5c62f7e2f 100644 --- a/src/uncategorized/saChoosesOwnClothes.tw +++ b/src/uncategorized/saChoosesOwnClothes.tw @@ -276,9 +276,6 @@ <<elseif ($slaves[$i].assignment == "get milked") || ($slaves[$i].assignment == "work in the dairy")>> and wears sturdy lingerie to offer the best support to her sore, milk-filled udders. <<set $slaves[$i].clothes = "attractive lingerie">> -<<elseif ($slaves[$i].assignment == "get cockmilked") || ($slaves[$i].assignment == "work in the collection facility")>> - and wears a slutty maid outfit to let her sore private parts breathe a little. - <<set $slaves[$i].clothes = "a slutty maid outfit">> <<elseif ($slaves[$i].assignment == "be a servant") || ($slaves[$i].assignment == "work as a servant")>> and wears a sturdy maid outfit, since anything else might be damaged by her hard work around the penthouse. <<set $slaves[$i].clothes = "a nice maid outfit">> diff --git a/src/uncategorized/saLongTermEffects.tw b/src/uncategorized/saLongTermEffects.tw index 0fd31c6c04e594f3cc6883fa006153859a40c550..61f1c32008dc0dd1b2689332f08c3566414b2cec 100644 --- a/src/uncategorized/saLongTermEffects.tw +++ b/src/uncategorized/saLongTermEffects.tw @@ -3451,7 +3451,7 @@ <<else>> <<if $slaves[$i].pregType == 0>> <<if ($slaves[$i].drugs == "super fertility drugs")>> - <<if (($masterSuitePregnancyFertilitySupplements == 1) && (($slaves[$i].assignment == "serve in the master suite") || ($slaves[_i].assignment == "be your Concubine")))>> + <<if (($masterSuitePregnancyFertilitySupplements == 1) && (($slaves[$i].assignment == "serve in the master suite") || ($slaves[$i].assignment == "be your Concubine")))>> <<if ($slaves[$i].hormones == 2)>> <<set $slaves[$i].pregType = random(20,29)>> <<else>> @@ -3465,7 +3465,7 @@ <</if>> <</if>> <<elseif ($slaves[$i].drugs == "fertility drugs")>> - <<if (($masterSuitePregnancyFertilitySupplements == 1) && (($slaves[$i].assignment == "serve in the master suite") || ($slaves[_i].assignment == "be your Concubine")))>> + <<if (($masterSuitePregnancyFertilitySupplements == 1) && (($slaves[$i].assignment == "serve in the master suite") || ($slaves[$i].assignment == "be your Concubine")))>> <<if ($slaves[$i].hormones == 2)>> <<set $slaves[$i].pregType = random(4,5)>> <<else>> @@ -3733,7 +3733,7 @@ <</if>> <<elseif $slaves[$i].preg > 0 && $slaves[$i].pregType == 0>> <<if ($slaves[$i].drugs == "super fertility drugs")>> - <<if (($masterSuitePregnancyFertilitySupplements == 1) && (($slaves[$i].assignment == "serve in the master suite") || ($slaves[_i].assignment == "be your Concubine")))>> + <<if (($masterSuitePregnancyFertilitySupplements == 1) && (($slaves[$i].assignment == "serve in the master suite") || ($slaves[$i].assignment == "be your Concubine")))>> <<if ($slaves[$i].hormones == 2)>> <<set $slaves[$i].pregType = random(20,29)>> <<else>> @@ -3747,7 +3747,7 @@ <</if>> <</if>> <<elseif ($slaves[$i].drugs == "fertility drugs")>> - <<if (($masterSuitePregnancyFertilitySupplements == 1) && (($slaves[$i].assignment == "serve in the master suite") || ($slaves[_i].assignment == "be your Concubine")))>> + <<if (($masterSuitePregnancyFertilitySupplements == 1) && (($slaves[$i].assignment == "serve in the master suite") || ($slaves[$i].assignment == "be your Concubine")))>> <<if ($slaves[$i].hormones == 2)>> <<set $slaves[$i].pregType = random(4,5)>> <<else>> diff --git a/src/uncategorized/saRelationships.tw b/src/uncategorized/saRelationships.tw index 608934a3f6785187b4ab865f4728c14232fd14a7..cbe0d91cef458b25616c66fed383688be34bb556 100644 --- a/src/uncategorized/saRelationships.tw +++ b/src/uncategorized/saRelationships.tw @@ -445,7 +445,7 @@ <<elseif _SlaveI.behavioralQuirk is "sinful">> is torn between sinful delight and deep disgust that she's carrying on an incestuous relationship with her own _PCrelative. <<elseif _SlaveI.devotion > 75>> - is so devoted to you that she accepts carrying on an incestuous relationship with her own mother. + is so devoted to you that she accepts carrying on an incestuous relationship with her own _PCrelative <<elseif _SlaveI.devotion > 50>> is somewhat @@.mediumorchid;disturbed@@ that she's carrying on an incestuous relationship with her own _PCrelative. <<set _SlaveI.devotion -= 2>> diff --git a/src/uncategorized/slaveAssignmentsReport.tw b/src/uncategorized/slaveAssignmentsReport.tw index 4cbd3fedd08764a68b3a67387871e94ce45aaeb1..92e1e798e3adee298f18af7b1da581483d8bff85 100644 --- a/src/uncategorized/slaveAssignmentsReport.tw +++ b/src/uncategorized/slaveAssignmentsReport.tw @@ -60,9 +60,6 @@ <</if>> <<if $HeadGirl != 0>> <<set $HGEnergy++>> - <<if $HeadGirl.balls > 0>> - <<set $HGBalls = 1>> - <</if>> <<if $arcologies[0].FSChineseRevivalistLaw == 1>> <<set $HGEnergy++>> <</if>> diff --git a/src/uncategorized/slaveMarkets.tw b/src/uncategorized/slaveMarkets.tw index c1ef40e52af80468fa85f533b124d950e408569a..898fc3597454de81a2a1ffc2ab60982f5b6b3d63 100644 --- a/src/uncategorized/slaveMarkets.tw +++ b/src/uncategorized/slaveMarkets.tw @@ -208,6 +208,7 @@ You're in the area of the slave market owned by your corporation. The corporatio Advanced surgical techniques are applied to turn the corporation's slaves into futanari. <<if ($activeSlave.dick == 0)>><<set $activeSlave.dick = 2>><</if>> <<if ($activeSlave.balls == 0)>><<set $activeSlave.balls = 2>><</if>> + <<if ($activeSlave.prostate == 0)>><<set $activeSlave.prostate = 1>><</if>> <<if ($activeSlave.vagina == 0)>><<set $activeSlave.vagina = 1>><</if>> <<set $activeSlave.ovaries = 1>> <<elseif $surgicalUpgradeGenitalia == "gelded">> diff --git a/src/uncategorized/storyCaption.tw b/src/uncategorized/storyCaption.tw index e29373582ca7bfff367fa3de7ae0319bcf5611f7..17944f100857a3ab70e69e1647832266a90c1830 100644 --- a/src/uncategorized/storyCaption.tw +++ b/src/uncategorized/storyCaption.tw @@ -116,6 +116,7 @@ [[Musculature|Encyclopedia][$encyclopedia = "Musculature"]] [[Nipples|Encyclopedia][$encyclopedia = "Nipples"]] [[Nurse|Encyclopedia][$encyclopedia = "Nurse"]] +[[Oceanic Terrain|Encyclopedia][$encyclopedia = "Oceanic Terrain"]] [[Odd|Encyclopedia][$encyclopedia = "Odd"]] [[Oral Skill|Encyclopedia][$encyclopedia = "Oral Skill"]] [[Ovaries|Encyclopedia][$encyclopedia = "Ovaries"]] diff --git a/src/uncategorized/surgeryDegradation.tw b/src/uncategorized/surgeryDegradation.tw index c6a41abf5c5a1de088b0bf24c475125ddba58db6..234e3efaeb4e558a863da3722f3d8aa33583a495 100644 --- a/src/uncategorized/surgeryDegradation.tw +++ b/src/uncategorized/surgeryDegradation.tw @@ -858,7 +858,7 @@ As the remote surgery's long recovery cycle completes, <<if $activeSlave.dick == 0>> Of course, she already realized while exiting that something very dear to her has been taken away. <<if ($activeSlave.devotion > 50) && ($activeSlave.sexualFlaw == "self hating")>> - Strong emotions play out on her face as she experiences a watershed in her life of sexual slavery, perhaps the most radical one she'll ever experience. She loves you with all her being, and truly hates herself. She finds herself in an emotional place where she's willing to accept having her womanhood torn out. She knows she's a worthless piece of trash, and realizes that if you feel like removing the parts of her body that can feel sexual pleasure, that's your perogative. In moments, she's confirmed in @@.hotpink;total, final, fanatical submission to your will.@@ It's almost frightening. + Strong emotions play out on her face as she experiences a watershed in her life of sexual slavery, perhaps the most radical one she'll ever experience. She loves you with all her being, and truly hates herself. She finds herself in an emotional place where she's willing to accept having her womanhood torn out. She knows she's a worthless piece of trash, and realizes that if you feel like removing the parts of her body that can feel sexual pleasure, that's your prerogative. In moments, she's confirmed in @@.hotpink;total, final, fanatical submission to your will.@@ It's almost frightening. <<set $activeSlave.devotion += 50>> <<elseif ($activeSlave.devotion > 20) && ($activeSlave.fetishknown == 1) && ($activeSlave.fetishStrength > 95) && ($activeSlave.fetish == "buttslut")>> She's such a complete buttslut, though, that she finds she doesn't really care. She never really paid much attention to her front hole; it got wet when she got buttfucked, but that was mostly useful to provide a little lube for phalli that fucked it before switching to her ass. If anything, she's @@.aquamarine;reassured@@ by the implication that her asshole is all that matters about her, and of course is forced even further into @@.hotpink;submission to your will.@@ @@ -1289,6 +1289,17 @@ As the remote surgery's long recovery cycle completes, <<set $activeSlave.devotion -= 5>> <</if>> +<<case "addTesticles">> + <<if ($activeSlave.devotion > 50)>> + She lies back in the surgical chair<<if canSee($activeSlave)>>, gazing at herself in the ceiling mirror<</if>> as the fog of anaesthetics lifts and feeling returns to her lower half. As a devoted slave, she knew the essentials of the surgery before it was performed, so she's excited to <<if canSee($activeSlave)>>see<<else>>feel<</if>> the results. She is @@.mediumaquamarine;tremendously impressed@@ that you would devote such immense resources to altering her body, and is more willing than ever to @@.hotpink;submit to your plans@@ for her future. + <<set $activeSlave.trust += 5, $activeSlave.devotion += 5>> + <<elseif ($activeSlave.devotion >= -20)>> + It's not immediately apparent to her what kind of surgery she received, since all she's left with is a nonspecific ache in her abdomen. As with all surgery @@.red;her health has been slightly affected.@@ + <<else>> + It's not immediately apparent to her what kind of surgery she received, since all she's left with is a nonspecific ache in her abdomen. As with all surgery @@.red;her health has been slightly affected.@@ She doesn't have to know exactly what you did, though, to be @@.gold;mortified@@ and @@.mediumorchid;infuriated@@ by your messing around inside her body. She hasn't yet learned to accept that you control her completely, down to the arrangement and even presence of her internal organs. + <<set $activeSlave.trust -= 10, $activeSlave.devotion -= 10>> + <</if>> + <<case "addProstate">> It's not immediately apparent to her what kind of surgery she received, since all she's left with is a terrible nonspecific ache in her lower parts. As with all surgery @@.red;her health has been slightly affected.@@ <<if ($activeSlave.devotion > 50)>> @@ -1302,7 +1313,7 @@ As the remote surgery's long recovery cycle completes, She was already an anal slut, but she can now experience anal pleasure along an entirely new dimension. She's @@.hotpink;extremely grateful,@@ and @@.lightsalmon;a more eager buttslut than ever.@@ <<set $activeSlave.devotion += 5, $activeSlave.fetishStrength = Math.clamp($activeSlave.fetishStrength+20,0,100)>> <<else>> - As a sex slave, she has of course heard of the pleasure of prostate stimulation,<<if $activeSlave.dick != 0>> not to mention having once had one herself,<</if>> and she's @@.hotpink;duly grateful@@ that you've altered her in a way that will make sexual duties more enjoyable. + As a sex slave, she has of course heard of the pleasure of prostate stimulation,<<if $activeSlave.genes == "XY">> not to mention having once had one herself,<</if>> and she's @@.hotpink;duly grateful@@ that you've altered her in a way that will make sexual duties more enjoyable. <</if>> <<set $activeSlave.devotion += 5>> <<elseif ($activeSlave.devotion > 20)>> diff --git a/src/utility/assayWidgets.tw b/src/utility/assayWidgets.tw index 44317fe571da28493d88c9250dc6f3134caab77e..d32ab013260e6c617d3d7d323c4f2f266346e6d1 100644 --- a/src/utility/assayWidgets.tw +++ b/src/utility/assayWidgets.tw @@ -1146,9 +1146,9 @@ <<set $release = 1>> <<elseif ($args[0].assignment == "work in the dairy") && (($args[0].fetish == "boobs") || ($args[0].energy > 95))>> <<set $release = 1>> -<<elseif ($args[0].assignment == "get cockmilked")>> +<<elseif ($args[0].assignment == "get milked") && $args[0].balls > 0>> <<set $release = 1>> -<<elseif ($args[0].assignment == "work in the collection facility")>> +<<elseif ($args[0].assignment == "work in the dairy") && $args[0].balls > 0>> <<set $release = 1>> <<elseif ($args[0].assignment == "be your Head Girl") && ($HGRelease == 1)>> <<set $release = 1>> diff --git a/src/utility/descriptionWidgets.tw b/src/utility/descriptionWidgets.tw index 29942f41ed6c2bcd36ba7b1bc91c0715633407b1..44d3996d71c3cc46f388be152aa60f310f4e21f7 100644 --- a/src/utility/descriptionWidgets.tw +++ b/src/utility/descriptionWidgets.tw @@ -3943,7 +3943,7 @@ $pronounCap's got a <</if>> <<if $activeSlave.prostate != 0>> <<if $activeSlave.dick == 0>> - In stark contrast, however, $pronoun's been given a functional prostate gland. It's attached to $possessive urethra, of course, so despite $possessive dryness, $pronoun squirts fluid when $pronoun orgasms. + In stark contrast, however, $pronoun's been given a functional prostate gland. It's attached to $possessive urethra, of course, so despite $possessive dryness, $pronoun squirts <<if $activeSlave.balls > 0>>semen<<else>>fluid<</if>> when $pronoun orgasms. <<if $activeSlave.prostateImplant == 1>> With the implant imbedded in it, that squirt is more like a blast; $pronoun will soak <<print $object>>self and anyone near $object. <</if>> @@ -3987,7 +3987,7 @@ $pronounCap's got a <</if>> <<if $activeSlave.prostate != 0>> <<if $activeSlave.dick == 0>> - Bizarrely, $pronoun's been given a functional prostate gland. It's attached to $possessive urethra, of course, so $pronoun squirts copiously when $pronoun orgasms. + Bizarrely, $pronoun's been given a functional prostate gland. It's attached to $possessive urethra, of course, <<if $activeSlave.balls > 0>>which in combination with her testicles make $possessive squirt copious amounts of fluids and semen with each orgasm<<else>>so $pronoun squirts copiously when $pronoun orgasms<</if>>. <<if $activeSlave.prostateImplant == 1>> With the implant imbedded in it; that qush is more like a flood. Changes of clothes are a must with $object, as $pronoun can and will soak both you, <<print $object>>self and what $pronoun is getting fucked over. <</if>> @@ -4037,7 +4037,7 @@ $pronounCap's got a <</if>> <<if $activeSlave.prostate != 0>> <<if $activeSlave.dick == 0>> - Bizarrely, $pronoun's been given a functional prostate gland. It's attached to $possessive urethra, of course, meaning that when $pronoun orgasms, $pronoun squirts an unreasonable volume of fluid. + Bizarrely, $pronoun's been given a functional prostate gland. It's attached to $possessive urethra, of course, <<if $activeSlave.balls > 0>>which in combination with her testicles make $possessive squirt unreasonable volume of fluids and semen with each orgasm<<else>>meaning that when $pronoun orgasms, $pronoun squirts an unreasonable volume of fluid<</if>>. <<if $activeSlave.prostateImplant == 1>> With the implant imbedded in it; that gush is insane. Everything around $object is at risk of being splashed. Changes of clothes are a must with $object, as are supplies to mop up afterwards. <</if>> diff --git a/src/utility/raWidgets.tw b/src/utility/raWidgets.tw index 4d1325f511defa674c3424524f490826313b0f2e..4015fb8d068dd36187a9e6a875768a21a60e4a9e 100644 --- a/src/utility/raWidgets.tw +++ b/src/utility/raWidgets.tw @@ -1,148 +1,143 @@ :: RA widgets [widget nobr] /% - Call as <<RAChangeActivation>> -%/ + % Call as <<RAChangeActivation>> + %/ <<widget "RAChangeActivation">> - <<replace #activation>> - <<print "($currentRule.activation):">> - <br> - <<if $currentRule.activation == "custom" >> - <<textarea "$currentRule.customActivationText" $currentRule.customActivationText>> - <<link "Test custom rule">> - <<set State.variables._parseFailed = true>> - <<replace #customsave>> - <<script>> - try { - parseAndEvaluate(State.variables.currentRule.customActivationText, State.variables.slaves[0]); - State.variables._parseFailed = false; - } catch (e) { throwError("Failed to parse custom rule. Please check syntax and try again."); } - <</script>> - <<if State.variables._parseFailed == false>> - //Rule parsed successfully. Remember to save your changes using Save rule or Apply rules.// - <<RAChangeSave>> - <<RAChangeApply>> - <</if>> - <</replace>> - <</link>> - <span id="customsave"></span> - <<elseif ($currentRule.activation != "none") && ($currentRule.activation != "always")>> - <span id="lower"> - <<if ($currentRule.thresholdLower == "none")>> - (no lower limit) - <<else>> - <<if $currentRule.eqLower>> - When ''$currentRule.activation'' is - <<textbox "$currentRule.thresholdLower" $currentRule.thresholdLower>> ''or more'' - <<else>> - When ''$currentRule.activation'' is ''more than'' - <<textbox "$currentRule.thresholdLower" $currentRule.thresholdLower>> - <</if>> - <</if>> - </span> - - <<link ">">> - <<set $currentRule.eqLower = false>> - <<replace "#lower">> - When ''$currentRule.activation'' is ''more than'' - <<textbox "$currentRule.thresholdLower" $currentRule.thresholdLower>> - <</replace>> - <</link>> - | - <<link ">=">> - <<set $currentRule.eqLower = true>> - <<replace "#lower">> - When ''$currentRule.activation'' is - <<textbox "$currentRule.thresholdLower" $currentRule.thresholdLower>> ''or more'' - <</replace>> - <</link>> - | - <<link "No lower limit">> - <<set $currentRule.thresholdLower = "none">> - <<replace "#lower">> - (no lower limit) - <</replace>> - <</link>> - - <br>and<br> - - <span id="upper"> - <<if ($currentRule.thresholdUpper == "none")>> - (no upper limit) - <<else>> - <<if $currentRule.eqUpper>> - When ''$currentRule.activation'' is - <<textbox "$currentRule.thresholdUpper" $currentRule.thresholdUpper>> ''or less'' - <<else>> - When ''$currentRule.activation'' is ''less than'' - <<textbox "$currentRule.thresholdUpper" $currentRule.thresholdUpper>> - <</if>> - <</if>> - </span> - - <<link "<">> - <<set $currentRule.eqUpper = false>> - <<replace "#upper">> - When ''$currentRule.activation'' is ''less than'' - <<textbox "$currentRule.thresholdUpper" $currentRule.thresholdUpper>> - <</replace>> - <</link>> - | - <<link "<=">> - <<set $currentRule.eqUpper = true>> - <<replace "#upper">> - When ''$currentRule.activation'' is - <<textbox "$currentRule.thresholdUpper" $currentRule.thresholdUpper>> ''or less'' - <</replace>> - <</link>> - | - <<link "No upper limit">> - <<set $currentRule.thresholdUpper = "none">> - <<replace "#upper">> - (no upper limit) - <</replace>> - <</link>> - <<if ($currentRule.thresholdLower == "none") && ($currentRule.thresholdUpper == "none")>> - <<set $currentRule.activation = "always">> - <<elseif ($currentRule.thresholdLower != "none") && ($currentRule.thresholdUpper != "none")>> - <<if (def $currentRule.thresholdLower) && ($currentRule.thresholdLower > $currentRule.thresholdUpper)>> - <<set $currentRule.thresholdLower = $currentRule.thresholdUpper>> - <</if>> - <<if (def $currentRule.thresholdUpper) && ($currentRule.thresholdUpper < $currentRule.thresholdLower)>> - <<set $currentRule.thresholdUpper = $currentRule.thresholdLower>> - <</if>> - <</if>> - <</if>> - <<switch $currentRule.activation>> - <<case "none">> - ''None.'' - <<case "always">> - ''Always.'' - <<case "devotion">> - <br>@@.darkviolet;Very hateful@@: under -95, @@.darkviolet;Hateful@@: -95 to under -50, @@.mediumorchid;Resistant@@: -50 to under -20, - <br>@@.yellow;Ambivalent@@: -20 to 20, @@.hotpink;Accepting@@: over 20 to 50, @@.deeppink;Devoted@@: over 50 to 95, @@.magenta;Worshipful@@: over 95 - <<case "trust">> - <br>@@.goldenrod;Extremely terrified@@: under -95, @@.goldenrod;Terrified@@: -95 to under -50, @@.gold;Frightened@@: -50 to under -20, - <br>@@.yellow;Fearful@@: -20 to 20, @@.mediumaquamarine;Careful@@: over 40 to 50, @@.mediumseagreen;Trusting@@: 50 to 95, @@.seagreen;Total trust@@: over 95 - <<case "health">> - <br>@@.red;Death@@: under -100, @@.red;Near death@@: -100 to less than -90, @@.red;Extremely unhealthy@@: -90 to less than -50, @@.red;Unhealthy@@: -50 to less than -20 @@.green;Healthy@@: -20 to 20, @@.green;Very healthy@@: 20 to 50, @@.green;Extremely healthy@@: over 50 to 90, @@.green;Unnaturally healthy@@: over 90 - <<case "sex drive">> - <br>@@.red;Frigid@@: 20 or under, @@.red;Poor@@: 21 to 40, @@.yellow;Average@@: 41 to 60, @@.green;Powerful@@: 61 to 80, @@.green;Sex addict@@: 81 to 99, @@.green;Nympho@@: 100 - <<case "weight">> - <br>@@.red;Emaciated@@: under -95, @@.red;Skinny@@: -95 to less than -30, Thin: -30 to less than -10 Average weight: -10 to 10, Plush: over 10 to 30, @@.red;Fat@@: over 30 to 95, @@.red;Overweight@@: over 95 - <<case "lactation">> - <br>// 0 - none, 1 - natural, 2 - lactation implant. // + <<if ($currentRule.condition.id === "true")>> + (always): <br> ''always.'' + + <<elseif ($currentRule.condition.id === "false")>> + (never): <br> ''never'' + + <<else>> + <<set _activation = getVariable($currentRule.condition)>> + + (_activation): <br> + + <<switch $currentRule.condition.id>> + <<case "<">> + When ''_activation'' is ''less than'' + <<textbox "$currentRule.condition.second.value" $currentRule.condition.second.value>> + <<case "<=">> + When ''_activation'' is + <<textbox "$currentRule.condition.second.value" $currentRule.condition.second.value>> ''or less'' + + <<case ">" ">=">> + (no upper limit) + + <<case "&&" "||">> + <<if $currentRule.condition.first.id == "<">> + When ''_activation'' is ''less than'' + <<textbox "$currentRule.condition.first.second.value" $currentRule.condition.first.second.value>> + <<else>> + When ''_activation'' is + <<textbox "$currentRule.condition.first.second.value" $currentRule.condition.first.second.value>> ''or less'' + <</if>> + <</switch>> + + <<link "<">> + <<set $currentRule.condition = changeComparison($currentRule.condition, "<")>> + <<RAChangeActivation>> + <</link>> + | + <<link "≤">> + <<set $currentRule.condition = changeComparison($currentRule.condition, "<=")>> + <<RAChangeActivation>> + <</link>> + | + <<link "no upper limit">> + <<set $currentRule.condition = removeComparison($currentRule.condition, "upper")>> + <<RAChangeActivation>> + <</link>> + + <br> + <<switch $currentRule.condition.id>> + <<case "<" "<=" ">" ">=">> + and + <<case "&&">> + ''and'' + | + <<link "or">> + <<set $currentRule.condition = changeConnective($currentRule.condition, "||")>> + <<RAChangeActivation>> + <</link>> + <<case "||">> + <<link "and">> + <<set $currentRule.condition = changeConnective($currentRule.condition, "&&")>> + <<RAChangeActivation>> + <</link>> + | + ''or'' + <</switch>> + <br> + + <<switch $currentRule.condition.id>> + <<case "<" "<=">> + (no lower limit) + + <<case ">">> + When ''_activation'' is ''more than'' + <<textbox "$currentRule.condition.second.value" $currentRule.condition.second.value>> + <<case ">=">> + When ''_activation'' is + <<textbox "$currentRule.condition.second.value" $currentRule.condition.second.value>> ''or more'' + + <<case "&&" "||">> + <<if ($currentRule.condition.second.id == ">")>> + When ''_activation'' is ''more than'' + <<textbox "$currentRule.condition.second.second.value" $currentRule.condition.second.second.value>> + <<else>> + When ''_activation'' is + <<textbox "$currentRule.condition.second.second.value" $currentRule.condition.second.second.value>> ''or more'' + <</if>> + <</switch>> + + <<link ">">> + <<set $currentRule.condition = changeComparison($currentRule.condition, ">")>> + <<RAChangeActivation>> + <</link>> + | + <<link "≥">> + <<set $currentRule.condition = changeComparison($currentRule.condition, ">=")>> + <<RAChangeActivation>> + <</link>> + | + <<link "no lower limit">> + <<set $currentRule.condition = removeComparison($currentRule.condition, "lower")>> + <<RAChangeActivation>> + <</link>> + + <<switch _activation>> + <<case "devotion">> + <br>@@.darkviolet;Very hateful@@: under -95, @@.darkviolet;Hateful@@: -95 to under -50, @@.mediumorchid;Resistant@@: -50 to under -20, + <br>@@.yellow;Ambivalent@@: -20 to 20, @@.hotpink;Accepting@@: over 20 to 50, @@.deeppink;Devoted@@: over 50 to 95, @@.magenta;Worshipful@@: over 95 + <<case "trust">> + <br>@@.goldenrod;Extremely terrified@@: under -95, @@.goldenrod;Terrified@@: -95 to under -50, @@.gold;Frightened@@: -50 to under -20, + <br>@@.yellow;Fearful@@: -20 to 20, @@.mediumaquamarine;Careful@@: over 40 to 50, @@.mediumseagreen;Trusting@@: 50 to 95, @@.seagreen;Total trust@@: over 95 + <<case "health">> + <br>@@.red;Death@@: under -100, @@.red;Near death@@: -100 to less than -90, @@.red;Extremely unhealthy@@: -90 to less than -50, @@.red;Unhealthy@@: -50 to less than -20 + <br>@@.green;Healthy@@: -20 to 20, @@.green;Very healthy@@: 20 to 50, @@.green;Extremely healthy@@: over 50 to 90, @@.green;Unnaturally healthy@@: over 90 + <<case "sex drive">> + <br>@@.red;Frigid@@: 20 or under, @@.red;Poor@@: 21 to 40, @@.yellow;Average@@: 41 to 60, @@.green;Powerful@@: 61 to 80, @@.green;Sex addict@@: 81 to 99, @@.green;Nympho@@: 100 + <<case "weight">> + <br>@@.red;Emaciated@@: under -95, @@.red;Skinny@@: -95 to less than -30, + <br>Thin: -30 to less than -10 Average weight: -10 to 10, Plush: over 10 to 30, + <br>@@.red;Fat@@: over 30 to 95, @@.red;Overweight@@: over 95 + <<case "lactation">> + <br>// 0 - none, 1 - natural, 2 - lactation implant. // <<case "pregnancy week">> - <br>// >1 - pregnancy week(s), 0 - not pregnant, -1 - on contraceptives, -2 - barren. // + <br>// >1 - pregnancy week(s), 0 - not pregnant, -1 - on contraceptives, -2 - barren. // <<case "pregnancy foetuses">> - <br>// Fetus count, rule can be applied only after week 10 of pregnancy. // + <br>// Fetus count, rule can be applied only after week 10 of pregnancy. // <<case "belly implant volume">> - <br>// Volume of belly implant in ccs. 0 - none. // + <br>// Volume of belly implant in ccs. 0 - none. // <<case "custom">> - <br>// Enter custom condition. // - <</switch>> + <br>// Enter custom condition. // + <</switch>> + <</if>> <</replace>> <</widget>> @@ -1508,6 +1503,20 @@ <<else>> ''Gloryhole'' <</if>> +| +<<if ($currentRule.setAssignment != "choose her own job")>> + <<link "Let her choose herself">> + <<set $currentRule.setAssignment = "choose her own job">> + <<set $currentRule.assignFacility = "none">> + <<set $currentRule.facilityRemove = false>> + <<RAChangeSetAssignment>> + <<RAChangeAssignFacility>> + <<RAChangeSave>> + <<RAChangeApply>> + <</link>> +<<else>> + ''Let her choose herself'' +<</if>> <</replace>> <</widget>> @@ -1879,9 +1888,8 @@ Assignment on removal: $currentRule.removalAssignment | %/ <<widget "RAChangeClothes">> <<replace #clothes>> -<<if $currentRule.choosesOwnClothes == 1>> +<<if ($currentRule.clothes == "choosing her own clothes")>> ''slave's choice.'' - <<set $currentRule.clothes = "choosing her own clothes">> <<else>> ''$currentRule.clothes.'' <</if>> @@ -2250,30 +2258,6 @@ Assistant-applied implants: <</replace>> <</widget>> -/% - Call as <<RAChangeAssignment>> -%/ -<<widget "RAChangeAssignment">> -<<replace #chooseassignment>> -Assignments: - -<<if $currentRule.choosesOwnAssignment == 0>> - ''selected by the player.'' - -<<link "Slave's choice">> - <<set $currentRule.choosesOwnAssignment = 1>> - <<RAChangeAssignment>> -<</link>> -<<else>> - ''selected by the slave.'' -<<link "Player control">> - <<set $currentRule.choosesOwnAssignment = 0>> - <<RAChangeAssignment>> -<</link>> -<</if>> -<</replace>> -<</widget>> - /% Call as <<RAChangeLiving>> %/ @@ -2428,90 +2412,76 @@ Relationship rules: ''$currentRule.relationshipRules.'' <</replace>> <</widget>> + /% - Call as <<RAChangeSave>> -%/ + % Call as <<RASaveRule ruleID>> + %/ +<<widget "RASaveRule">> +<<replace #saveresult>> + <br><br> + <<for _t = 0; _t < $defaultRules.length; _t++>> + <<if ($args[0] == $defaultRules[_t].ID)>> + <<if (def _customCondition)>> + <<set _parsedCondition = parseCondition(_customCondition)>> + <<if (_parsedCondition.error)>> + //There seems to be something wrong with the condition that you have given me sir, + <br> <<print printError(_customCondition, _parsedCondition.error)>> + <br> _parsedCondition.error.message// + <br> + <<break>> + <<else>> + <<set $currentRule.condition = _parsedCondition.expr>> + <</if>> + <</if>> + + <<set $defaultRules[_t] = $currentRule>> + //Rule $r saved// + <<break>> + <</if>> + <</for>> +<</replace>> +<</widget>> + + +/% + % Call as <<RAChangeSave>> + %/ <<widget "RAChangeSave">> <<replace #saveresult>> - <br><br> - <<link _text>> - <<replace "#saveresult">> - <br><br> - <<set State.variables._parseFailed = false>> - <<if $currentRule.activation == "custom">> - <<script>> - try { parseAndEvaluate(State.variables.currentRule.customActivationText, State.variables.slaves[0]); - } catch (e) { State.variables._parseFailed = true; throwError("Failed to parse custom rule. Please check syntax and try again."); } - <</script>> - <</if>> - <<if State.variables._parseFailed == false>> - <<for _t = 0; _t < $defaultRules.length; _t++>> - <<if $currentRule.ID == $defaultRules[_t].ID>> - <<if $currentRule.thresholdLower != "none">> - <<set $currentRule.thresholdLower = Number($currentRule.thresholdLower)>> - <</if>> - <<if $currentRule.thresholdUpper != "none">> - <<set $currentRule.thresholdUpper = Number($currentRule.thresholdUpper)>> - <</if>> - <<set $defaultRules[_t] = $currentRule>> - //Rule $r saved// - <<break>> - <</if>> - <</for>> - <</if>> - <</replace>> - <</link>> + <br><br> + <<link _text>> + <<RASaveRule $currentRule.ID>> + <</link>> <</replace>> <</widget>> + + /% - Call as <<RAChangeApply>> -%/ + % Call as <<RAChangeApply>> + %/ <<widget "RAChangeApply">> -<<replace #apply>> - <span id="applyresult"> - <<link "Apply rules">> - <<set State.variables._parseFailed = false>> - <<replace "#saveresult">> - <br><br> - <<if $currentRule.activation == "custom">> - <<script>> - try { parseAndEvaluate(State.variables.currentRule.customActivationText, State.variables.slaves[0]); - } catch (e) { State.variables._parseFailed = true; throwError("Failed to parse custom rule. Please check syntax and try again."); } - <</script>> - <</if>> - <<if State.variables._parseFailed == false>> - <<for _t = 0; _t < $defaultRules.length; _t++>> - <<if $currentRule.ID == $defaultRules[_t].ID>> - <<if $currentRule.thresholdLower != "none">> - <<set $currentRule.thresholdLower = Number($currentRule.thresholdLower)>> - <</if>> - <<if $currentRule.thresholdUpper != "none">> - <<set $currentRule.thresholdUpper = Number($currentRule.thresholdUpper)>> - <</if>> - <<set $defaultRules[_t] = $currentRule>> - //Rule $r saved// - <<break>> - <</if>> - <</for>> - <</if>> - <</replace>> - <<if State.variables._parseFailed == false>> - <<replace "#applied">> - <<for $i = 0; $i < $slaves.length; $i++>> - <<if $slaves[$i].useRulesAssistant == 1>> /* skip RA-exempt slaves */ - <<set $activeSlave = $slaves[$i]>> - <<CheckAutoRulesActivate $activeSlave>> /* does not use or modify $currentRule */ - <<DefaultRules $activeSlave>> /* does not use or modify $currentRule */ - <</if>> - <</for>> - <</replace>> - <<replace "#applyresult">> - //Rules applied.//<br> - <</replace>> - <</if>> - <</link>> - </span> - <span id="applied"></span> +<<replace "#apply">> + <span id="applyresult"> + <<link "Apply rules">> + <<RASaveRule $currentRule.ID>> + <<replace "#applied">> + <<for $i = 0; $i < $slaves.length; $i++>> + <<if (!$slaves[$i].useRulesAssistant)>> /* skip RA-exempt slaves */ + <<continue>> + <</if>> + + <<set $activeSlave = $slaves[$i]>> + <<CheckAutoRulesActivate $activeSlave>> /* does not use or modify $currentRule */ + <<DefaultRules $activeSlave>> /* does not use or modify $currentRule */ + <</for>> + <</replace>> + + <<replace "#applyresult">> + //Rules applied.//<br> + <</replace>> + <</link>> + </span> + <span id="applied"></span> <</replace>> <</widget>> @@ -3244,49 +3214,250 @@ Your brand design is ''$brandDesign.'' <</widget>> /% - Call as <<DefaultRules SlaveObject>> - Does not use or modify $currentRule -%/ + % Call as <<DefaultRules SlaveObject>> + % Does not use or modify $currentRule + %/ <<widget "DefaultRules">> +<<set _combinedRule = {}>> <<for _r = 0; _r < $defaultRules.length; _r++>> -<<set _currentRule = $defaultRules[_r]>> -<<if !ruleApplied($args[0], _currentRule.ID)>><<continue>><</if>> + <<if !ruleApplied($args[0], $defaultRules[_r].ID)>> + <<continue>> + <</if>> + + <<set _combinedRule = mergeRules([_combinedRule, $defaultRules[_r]])>> + + <<set _exclude = false>> + <<if $args[0].assignment.includes("agent")>> + <<set _exclude = true>> + <<elseif _currentRule.excludeSpecialSlaves>> + <<if (($HeadGirl != 0) && ($HeadGirl.ID == $args[0].ID)) || (($Bodyguard != 0) && ($Bodyguard.ID == $args[0].ID)) || (($Recruiter != 0) && ($Recruiter.ID == $args[0].ID)) || (($Concubine != 0) && ($Concubine.ID == $args[0].ID)) || (($Nurse != 0) && ($Nurse.ID == $args[0].ID)) || (($Attendant != 0) && ($Attendant.ID == $args[0].ID)) || (($Madam != 0) || ($Madam.ID == $args[0].ID)) || (($DJ != 0) && ($DJ.ID == $args[0].ID)) || (($Milkmaid != 0) && ($Milkmaid.ID == $args[0].ID)) || (($Stewardess != 0 ) && ($Stewardess.ID == $args[0].ID)) || (($Schoolteacher != 0) && ($Schoolteacher.ID == $args[0].ID)) || (($Wardeness != 0) && ($Wardeness.ID == $args[0].ID))>> + <<set _exclude = true>> + <</if>> + <</if>> + + <<if _exclude>> + /% nothing more left to do %/ + <<continue>> + <</if>> + + <<switch _currentRule.assignFacility>> + <<case "hgsuite">> + <<if ($HGSuiteSlaves == 0) && ($args[0].indentureRestrictions <= 0) && ($args[0].assignment != "live with your Head Girl")>> + <br>$args[0].slaveName has been automatically assigned to live in your Head Girl's private suite. + <<if ($personalAttention == $args[0].ID)>> + $args[0].slaveName no longer has your personal attention; you plan to focus on business. + <</if>> + <<assignJob $args[0] _currentRule.assignFacility>> + <</if>> + + <<case "arcade">> + <<if ($arcade > $arcadeSlaves) && ($args[0].indentureRestrictions <= 0) && ($args[0].assignment != "be confined in the arcade") && $args[0].breedingMark != 1>> + <br>$args[0].slaveName has been automatically assigned to be confined in $arcadeName. + <<if ($personalAttention == $args[0].ID)>> + $args[0].slaveName no longer has your personal attention; you plan to focus on business. + <</if>> + <<assignJob $args[0] _currentRule.assignFacility>> + <</if>> + + <<case "mastersuite">> + <<if ($masterSuite > $masterSuiteSlaves) && ($args[0].devotion > 20) || (($args[0].devotion >= -50) && ($args[0].trust < -20)) || ($args[0].trust < -50)>> + <<if ($args[0].assignment != "serve in the master suite")>> + <br>$args[0].slaveName has been automatically assigned to $masterSuiteName. + <<if ($personalAttention == $args[0].ID)>> + $args[0].slaveName no longer has your personal attention; you plan to focus on business. + <</if>> + <<assignJob $args[0] _currentRule.assignFacility>> + <</if>> + <<else>> + <<if ($args[0].assignment == "serve in the master suite")>> + <<include "Rules Facility Remove">> + <</if>> + <</if>> + + <<case "clinic">> + <<if ($clinic > $clinicSlaves) && ($args[0].health < 20) || (($Nurse != 0) && ($args[0].chem > 15) && ($clinicUpgradeFilters == 1)) || (($args[0].bellyImplant > 100) && ($bellyImplants == 1)) || $args[0].preg > 1>> + <<if ($args[0].assignment != "get treatment in the clinic")>> + <br>$args[0].slaveName has been automatically assigned to get treatment in $clinicName. + <<if ($personalAttention == $args[0].ID)>> + $args[0].slaveName no longer has your personal attention; you plan to focus on business. + <</if>> + <<assignJob $args[0] _currentRule.assignFacility>> + <</if>> + <<else>> + <<if ($args[0].assignment == "get treatment in the clinic")>> + <<include "Rules Facility Remove">> + <</if>> + <</if>> + + <<case "spa">> + <<if ($spa > $spaSlaves) && ($args[0].health < 20) || ($args[0].trust < 60) || ($args[0].devotion <= 60) || ($args[0].fetish == "mindbroken") && ($args[0].devotion >= -20)>> + <<if ($args[0].assignment != "rest in the spa")>> + <br>$args[0].slaveName has been automatically assigned to rest in $spaName. + <<if ($personalAttention == $args[0].ID)>> + $args[0].slaveName no longer has your personal attention; you plan to focus on business. + <</if>> + <<assignJob $args[0] _currentRule.assignFacility>> + <</if>> + <<else>> + <<if ($args[0].assignment == "rest in the spa")>> + <<include "Rules Facility Remove">> + <</if>> + <</if>> + + <<case "brothel">> + <<if ($brothel > $brothelSlaves) && ($args[0].devotion > 50) || (($args[0].devotion >= -50) && ($args[0].trust < -20)) || ($args[0].trust < -50) || ($args[0].trust > 50) && $args[0].breedingMark != 1>> + <<if ($args[0].assignment != "work in the brothel")>> + <br>$args[0].slaveName has been automatically assigned to work in $brothelName. + <<if ($personalAttention == $args[0].ID)>> + $args[0].slaveName no longer has your personal attention; you plan to focus on business. + <</if>> + <<assignJob $args[0] _currentRule.assignFacility>> + <</if>> + <<else>> + <<if ($args[0].assignment == "work in the brothel")>> + <<include "Rules Facility Remove">> + <</if>> + <</if>> + + <<case "club">> + <<if ($club > $clubSlaves) && ($args[0].devotion > 50) || (($args[0].devotion >= -50) && ($args[0].trust < -20)) || ($args[0].trust < -50) || ($args[0].trust > 50) && $args[0].breedingMark != 1>> + <<if ($args[0].assignment != "serve in the club")>> + <br>$args[0].slaveName has been automatically assigned to serve in $clubName. + <<if ($personalAttention == $args[0].ID)>> + $args[0].slaveName no longer has your personal attention; you plan to focus on business. + <</if>> + <<assignJob $args[0] _currentRule.assignFacility>> + <</if>> + <<else>> + <<if ($args[0].assignment == "serve in the club")>> + <<include "Rules Facility Remove">> + <</if>> + <</if>> + + <<case "dairy">> + <<if ($dairy > $dairySlaves+$bioreactorsXY+$bioreactorsXX+$bioreactorsHerm+$bioreactorsBarren)>> + <<if ($args[0].indentureRestrictions > 0) && ($dairyRestraintsSetting > 1)>> + <<elseif (($args[0].indentureRestrictions > 1) && ($dairyRestraintsSetting > 0)) || ($args[0].breedingMark == 1 && $dairyRestriantsSettings > 0) || (($dairyPregSetting > 0) && ((_Slave.bellyImplant != 0) || (_Slave.pregType >= 50)))>> + <<else>> + <<if ($args[0].lactation > 0) || ($args[0].balls > 0) || (($dairyFeedersUpgrade == 1) && ($dairyFeedersSetting > 0))>> + <<if ($args[0].devotion > 20) || (($args[0].devotion >= -50) && ($args[0].trust < -20)) || ($args[0].trust < -50) || ($args[0].amp == 1) || ($dairyRestraintsUpgrade == 1)>> + <<if ($dairyStimulatorsSetting < 2) || ($args[0].anus > 2) || ($dairyPrepUpgrade == 1)>> + <<if ($dairyPregSetting < 2) || ($args[0].vagina > 2) || ($args[0].ovaries == 0) || ($dairyPrepUpgrade == 1)>> + <<if ($args[0].assignment != "work in the dairy")>> + <br>$args[0].slaveName has been automatically assigned to be milked in $dairyName. + <<if ($personalAttention == $args[0].ID)>> + $args[0].slaveName no longer has your personal attention; you plan to focus on business. + <</if>> + <<assignJob $args[0] _currentRule.assignFacility>> + <</if>> + <<else>> + <<if ($args[0].assignment == "work in the dairy")>> + <<include "Rules Facility Remove">> + <</if>> + <</if>> + <<else>> + <<if ($args[0].assignment == "work in the dairy")>> + <<include "Rules Facility Remove">> + <</if>> + <</if>> + <<else>> + <<if ($args[0].assignment == "work in the dairy")>> + <<include "Rules Facility Remove">> + <</if>> + <</if>> + <<else>> + <<if ($args[0].assignment == "work in the dairy")>> + <<include "Rules Facility Remove">> + <</if>> + <</if>> + <</if>> + <</if>> + + <<case "servantsquarters">> + <<if ($servantsQuarters > $servantsQuartersSlaves) && ($args[0].devotion >= -20) || (($args[0].devotion >= -50) && ($args[0].trust <= 20)) || ($args[0].trust < -20) && canSee($args[0]) && canWalk($args[0])>> + <<if ($args[0].assignment != "work as a servant")>> + <br>$args[0].slaveName has been automatically assigned to work in $servantsQuartersName. + <<if ($personalAttention == $args[0].ID)>> + $args[0].slaveName no longer has your personal attention; you plan to focus on business. + <</if>> + <<assignJob $args[0] _currentRule.assignFacility>> + <</if>> + <<else>> + <<if ($args[0].assignment == "work as a servant")>> + <<include "Rules Facility Remove">> + <</if>> + <</if>> + + <<case "schoolroom">> + <<if ($schoolroom > $schoolroomSlaves) && ($args[0].fetish != "mindbroken") && ($args[0].devotion >= -20 || ($args[0].devotion >= -50 && $args[0].trust < -20) || $args[0].trust < -50)>> + <<if ($args[0].intelligenceImplant < 1) || ($args[0].voice != 0 && $args[0].accent+$schoolroomUpgradeLanguage > 2) || ($args[0].oralSkill <= 10+$schoolroomUpgradeSkills*20) || ($args[0].whoreSkill <= 10+$schoolroomUpgradeSkills*20) || ($args[0].entertainSkill <= 10+$schoolroomUpgradeSkills*20) || ($args[0].analSkill < 10+$schoolroomUpgradeSkills*20) || (($args[0].vagina >= 0) && ($args[0].vaginalSkill < 10+$schoolroomUpgradeSkills*20))>> + <<if ($args[0].assignment != "learn in the schoolroom")>> + <br>$args[0].slaveName has been automatically assigned to study in $schoolroomName. + <<if ($personalAttention == $args[0].ID)>> + $args[0].slaveName no longer has your personal attention; you plan to focus on business. + <</if>> + <<assignJob $args[0] _currentRule.assignFacility>> + <</if>> + <<else>> + <<if ($args[0].assignment == "learn in the schoolroom")>> + <<include "Rules Facility Remove">> + <</if>> + <</if>> + <<else>> + <<if ($args[0].assignment == "learn in the schoolroom")>> + <<include "Rules Facility Remove">> + <</if>> + <</if>> + + <<case "cellblock">> + <<if ($cellblock > $cellblockSlaves ) && (($args[0].devotion < -20) && ($args[0].trust >= -20)) || (($args[0].devotion < -50) && ($args[0].trust >= -50))>> + <<if ($args[0].assignment != "be confined in the cellblock")>> + <br>$args[0].slaveName has been automatically assigned to be confined in $cellblockName. + <<if ($personalAttention == $args[0].ID)>> + $args[0].slaveName no longer has your personal attention; you plan to focus on business. + <</if>> + <<assignJob $args[0] _currentRule.assignFacility>> + <</if>> + <<else>> + <<if ($args[0].assignment == "be confined in the cellblock")>> + <<include "Rules Facility Remove">> + <</if>> + <</if>> + <</switch>> + + <<if (_currentRule.setAssignment !== "none")>> + <<if (_currentRule.setAssignment == "choose her own job")>> + <<if ($args[0].choosesOwnAssignment == 0)>> + <<assignJob $args[0] _currentRule.setAssignment>> + <br>$args[0].slaveName is now allowed to select her own assignments. + <</if>> + <<elseif ($args[0].assignment !== _currentRule.setAssignment)>> + <<assignJob $args[0] _currentRule.setAssignment>> + <br>$args[0].slaveName has been automatically assigned to _currentRule.setAssignment. + <</if>> + <</if>> -<<if $args[0].fuckdoll == 0>> +<</for>> -<<if (_currentRule.choosesOwnAssignment == 1)>> -<<if ($args[0].choosesOwnAssignment == 0)>> -<<if ($args[0].assignmentVisible == 1)>> -<<if ($args[0].assignment != "recruit girls")>> -<<if ($args[0].assignment != "be your Head Girl")>> -<<if ($args[0].assignment != "guard you")>> - <br>$args[0].slaveName is now allowed to select her own assignments. - <<set $args[0].choosesOwnAssignment = 1>> - <<set $args[0].assignment = "choose her own job">> -<</if>> -<</if>> -<</if>> -<</if>> -<</if>> -<</if>> +<<if $args[0].fuckdoll == 0>> -<<if (_currentRule.clothes !== "no default setting")>> -<<if (_currentRule.choosesOwnClothes == 1)>> - <<if ($args[0].choosesOwnClothes == 0)>> - <br>$args[0].slaveName is now allowed to choose her own clothes. - <<set $args[0].choosesOwnClothes = 1>> +<<if (_combinedRule.clothes !== "no default setting")>> +<<if (_combinedRule.clothes == "choosing her own clothes")>> +<<if ($args[0].choosesOwnClothes == 0)>> <<set $args[0].clothes = "choosing her own clothes">> - <</if>> -<<elseif ($args[0].clothes !== _currentRule.clothes)>> - <<set $args[0].clothes = _currentRule.clothes>> - <br>$args[0].slaveName is now wearing $args[0].clothes. + <<set $args[0].choosesOwnClothes = 1>> + <br>$args[0].slaveName is now allowed to choose her own clothes. +<</if>> +<<elseif ($args[0].clothes !== _combinedRule.clothes)>> + <<set $args[0].clothes = _combinedRule.clothes>> <<set $args[0].choosesOwnClothes = 0>> + <br>$args[0].slaveName is now wearing $args[0].clothes. <</if>> <</if>> -<<if (_currentRule.collar !== "no default setting")>> -<<if ($args[0].collar !== _currentRule.collar)>> - <<set $args[0].collar = _currentRule.collar>> +<<if (_combinedRule.collar !== "no default setting")>> +<<if ($args[0].collar !== _combinedRule.collar)>> + <<set $args[0].collar = _combinedRule.collar>> <<if ($args[0].collar == "none")>> <br>$args[0].slaveName has been given no collar. <<else>> @@ -3295,88 +3466,91 @@ Your brand design is ''$brandDesign.'' <</if>> <</if>> -<<set _tmp = lastEyeWearRule($args[0], $defaultRules)>> -<<if (_tmp != null) && (_tmp.ID == _currentRule.ID)>> -<<if (_currentRule.eyewear !== "no default setting")>> - <<if _currentRule.eyewear == "correct with glasses">> - <<if $args[0].eyes <= -1>> - <<if $args[0].eyewear != "corrective glasses">> - <<set $args[0].eyewear = "corrective glasses">> - <<set $cash -= $modCost>> - <br>$args[0].slaveName has been given corrective glasses. - <</if>> - <<else>> - <<if $args[0].eyewear != "none">> - <<set $args[0].eyewear = "none">> - <br>$args[0].slaveName's eyewear has been removed. - <</if>> - <</if>> - <<elseif _currentRule.eyewear == "correct with contacts">> - <<if $args[0].eyes <= -1>> - <<if $args[0].eyewear != "corrective contacts">> - <<set $args[0].eyewear = "corrective contacts">> - <<set $cash -= $modCost>> - <br>$args[0].slaveName has been given corrective contacts. - <</if>> - <<else>> - <<if $args[0].eyewear != "none">> - <<set $args[0].eyewear = "none">> - <br>$args[0].slaveName's eyewear has been removed. - <</if>> - <</if>> - <<elseif _currentRule.eyewear == "blur with glasses">> - <<if $args[0].eyes > -1>> - <<if $args[0].eyewear != "blurring glasses">> - <<set $args[0].eyewear = "blurring glasses">> - <<set $cash -= $modCost>> - <br>$args[0].slaveName has been given blurring glasses. - <</if>> - <<else>> - <<if $args[0].eyewear != "none">> - <<set $args[0].eyewear = "none">> - <br>$args[0].slaveName's eyewear has been removed. - <</if>> - <</if>> - <<elseif _currentRule.eyewear == "blur with contacts">> - <<if $args[0].eyes > -1>> - <<if $args[0].eyewear != "blurring contacts">> - <<set $args[0].eyewear = "blurring contacts">> - <<set $cash -= $modCost>> - <br>$args[0].slaveName has been given blurring contacts. - <</if>> - <<else>> - <<if $args[0].eyewear != "none">> - <<set $args[0].eyewear = "none">> - <br>Since $args[0].slaveName's eyewear has been removed. - <</if>> - <</if>> - <<elseif _currentRule.eyewear == "universal glasses">> - <<if $args[0].eyes <= -1>> - <<if $args[0].eyewear != "corrective glasses">> - <<set $args[0].eyewear = "corrective glasses">> - <<set $cash -= $modCost>> - <br>$args[0].slaveName has been given corrective glasses. - <</if>> - <<else>> - <<if $args[0].eyewear != "glasses">> - <<set $args[0].eyewear = "glasses">> - <<set $cash -= $modCost>> - <br>$args[0].slaveName has been given decorative glasses. - <</if>> - <</if>> - <<else>> - <<if $args[0].eyewear != "none">> - <<set $args[0].eyewear = "none">> - <br>$args[0].slaveName's eyewear has been removed. - <</if>> - <</if>> -<</if>> +<<if (_combinedRule.eyewear !== "no default setting")>> + <<switch _combinedRule.eyewear>> + <<case "correct with glasses">> + <<if $args[0].eyes <= -1>> + <<if $args[0].eyewear != "corrective glasses">> + <<set $args[0].eyewear = "corrective glasses">> + <<set $cash -= $modCost>> + <br>$args[0].slaveName has been given corrective glasses. + <</if>> + <<else>> + <<if $args[0].eyewear != "none">> + <<set $args[0].eyewear = "none">> + <br>$args[0].slaveName's eyewear has been removed. + <</if>> + <</if>> + + <<case "correct with contacts">> + <<if $args[0].eyes <= -1>> + <<if $args[0].eyewear != "corrective contacts">> + <<set $args[0].eyewear = "corrective contacts">> + <<set $cash -= $modCost>> + <br>$args[0].slaveName has been given corrective contacts. + <</if>> + <<else>> + <<if $args[0].eyewear != "none">> + <<set $args[0].eyewear = "none">> + <br>$args[0].slaveName's eyewear has been removed. + <</if>> + <</if>> + + <<case "blur with glasses">> + <<if $args[0].eyes > -1>> + <<if $args[0].eyewear != "blurring glasses">> + <<set $args[0].eyewear = "blurring glasses">> + <<set $cash -= $modCost>> + <br>$args[0].slaveName has been given blurring glasses. + <</if>> + <<else>> + <<if $args[0].eyewear != "none">> + <<set $args[0].eyewear = "none">> + <br>$args[0].slaveName's eyewear has been removed. + <</if>> + <</if>> + + <<case "blur with contacts">> + <<if $args[0].eyes > -1>> + <<if $args[0].eyewear != "blurring contacts">> + <<set $args[0].eyewear = "blurring contacts">> + <<set $cash -= $modCost>> + <br>$args[0].slaveName has been given blurring contacts. + <</if>> + <<else>> + <<if $args[0].eyewear != "none">> + <<set $args[0].eyewear = "none">> + <br>Since $args[0].slaveName's eyewear has been removed. + <</if>> + <</if>> + + <<case "universal glasses">> + <<if $args[0].eyes <= -1>> + <<if $args[0].eyewear != "corrective glasses">> + <<set $args[0].eyewear = "corrective glasses">> + <<set $cash -= $modCost>> + <br>$args[0].slaveName has been given corrective glasses. + <</if>> + <<else>> + <<if $args[0].eyewear != "glasses">> + <<set $args[0].eyewear = "glasses">> + <<set $cash -= $modCost>> + <br>$args[0].slaveName has been given decorative glasses. + <</if>> + <</if>> + + <<default>> + <<if $args[0].eyewear != "none">> + <<set $args[0].eyewear = "none">> + <br>$args[0].slaveName's eyewear has been removed. + <</if>> + <</switch>> <</if>> <<if $args[0].vagina == 0>> -<<if _currentRule.virginAccessory !== "no default setting">> -<<if $args[0].vaginalAccessory !== _currentRule.virginAccessory>> - <<set $args[0].vaginalAccessory = _currentRule.virginAccessory>> +<<if _combinedRule.virginAccessory !== "no default setting">> +<<if $args[0].vaginalAccessory !== _combinedRule.virginAccessory>> + <<set $args[0].vaginalAccessory = _combinedRule.virginAccessory>> <<if $args[0].vaginalAccessory == "huge dildo">> <br>$args[0].slaveName has been given a <<if $args[0].vagina >= 3>> @@ -3393,9 +3567,9 @@ Your brand design is ''$brandDesign.'' <</if>> <</if>> <<elseif ($args[0].vagina > 0) && ($args[0].anus == 0)>> -<<if _currentRule.aVirginAccessory !== "no default setting">> -<<if $args[0].vaginalAccessory !== _currentRule.aVirginAccessory>> - <<set $args[0].vaginalAccessory = _currentRule.aVirginAccessory>> +<<if _combinedRule.aVirginAccessory !== "no default setting">> +<<if $args[0].vaginalAccessory !== _combinedRule.aVirginAccessory>> + <<set $args[0].vaginalAccessory = _combinedRule.aVirginAccessory>> <<if $args[0].vaginalAccessory == "huge dildo">> <br>$args[0].slaveName has been given a <<if $args[0].vagina >= 3>> @@ -3412,9 +3586,9 @@ Your brand design is ''$brandDesign.'' <</if>> <</if>> <<elseif $args[0].vagina > 0>> -<<if _currentRule.vaginalAccessory !== "no default setting">> -<<if $args[0].vaginalAccessory !== _currentRule.vaginalAccessory>> - <<set $args[0].vaginalAccessory = _currentRule.vaginalAccessory>> +<<if _combinedRule.vaginalAccessory !== "no default setting">> +<<if $args[0].vaginalAccessory !== _combinedRule.vaginalAccessory>> + <<set $args[0].vaginalAccessory = _combinedRule.vaginalAccessory>> <<if $args[0].vaginalAccessory == "huge dildo">> <br>$args[0].slaveName has been given a <<if $args[0].vagina >= 3>> @@ -3434,9 +3608,9 @@ Your brand design is ''$brandDesign.'' <<if ($args[0].dick > 0)>> <<if $args[0].anus == 0>> -<<if (_currentRule.aVirginDickAccessory !== "no default setting")>> -<<if ($args[0].dickAccessory !== _currentRule.aVirginDickAccessory)>> - <<set $args[0].dickAccessory = _currentRule.aVirginDickAccessory>> +<<if (_combinedRule.aVirginDickAccessory !== "no default setting")>> +<<if ($args[0].dickAccessory !== _combinedRule.aVirginDickAccessory)>> + <<set $args[0].dickAccessory = _combinedRule.aVirginDickAccessory>> <<if $args[0].dickAccessory == "none">> <br>$args[0].slaveName's dick accessory has been changed to be nothing. <<else>> @@ -3445,9 +3619,9 @@ Your brand design is ''$brandDesign.'' <</if>> <</if>> <<else>> -<<if (_currentRule.dickAccessory !== "no default setting")>> -<<if ($args[0].dickAccessory !== _currentRule.dickAccessory)>> - <<set $args[0].dickAccessory = _currentRule.dickAccessory>> +<<if (_combinedRule.dickAccessory !== "no default setting")>> +<<if ($args[0].dickAccessory !== _combinedRule.dickAccessory)>> + <<set $args[0].dickAccessory = _combinedRule.dickAccessory>> <<if $args[0].dickAccessory == "none">> <br>$args[0].slaveName's dick accessory has been changed to be nothing. <<else>> @@ -3460,9 +3634,9 @@ Your brand design is ''$brandDesign.'' <<if ($args[0].vaginalAccessory !== "anal chastity") && ($args[0].vaginalAccessory !== "combined chastity") && ($args[0].dickAccessory !== "anal chastity") && ($args[0].dickAccessory !== "combined chastity")>> <<if $args[0].anus == 0>> -<<if (_currentRule.aVirginButtplug !== "no default setting")>> -<<if ($args[0].buttplug !== _currentRule.aVirginButtplug)>> - <<set $args[0].buttplug = _currentRule.aVirginButtplug>> +<<if (_combinedRule.aVirginButtplug !== "no default setting")>> +<<if ($args[0].buttplug !== _combinedRule.aVirginButtplug)>> + <<set $args[0].buttplug = _combinedRule.aVirginButtplug>> <<if ($args[0].buttplug == "huge plug")>> <br>$args[0].slaveName has been given a <<if ($args[0].anus >= 3)>> @@ -3479,9 +3653,9 @@ Your brand design is ''$brandDesign.'' <</if>> <</if>> <<else>> -<<if (_currentRule.buttplug !== "no default setting")>> -<<if ($args[0].buttplug !== _currentRule.buttplug)>> - <<set $args[0].buttplug = _currentRule.buttplug>> +<<if (_combinedRule.buttplug !== "no default setting")>> +<<if ($args[0].buttplug !== _combinedRule.buttplug)>> + <<set $args[0].buttplug = _combinedRule.buttplug>> <<if ($args[0].buttplug == "huge plug")>> <br>$args[0].slaveName has been given a <<if ($args[0].anus >= 3)>> @@ -3500,21 +3674,21 @@ Your brand design is ''$brandDesign.'' <</if>> <</if>> -<<if (_currentRule.shoes !== "no default setting")>> -<<if ($args[0].shoes !== _currentRule.shoes)>> +<<if (_combinedRule.shoes !== "no default setting")>> +<<if ($args[0].shoes !== _combinedRule.shoes)>> <<if ($args[0].amp != 1)>> - <<set $args[0].shoes = _currentRule.shoes>> + <<set $args[0].shoes = _combinedRule.shoes>> <br>$args[0].slaveName's shoes have been set to $args[0].shoes. <</if>> <</if>> <</if>> -<<if (_currentRule.bellyAccessory !== "no default setting")>> -<<if ($args[0].bellyAccessory !== _currentRule.bellyAccessory)>> - <<if visibleBelly($args[0]) && $fakeBellies.contains(_currentRule.bellyAccessory)>> +<<if (_combinedRule.bellyAccessory !== "no default setting")>> +<<if ($args[0].bellyAccessory !== _combinedRule.bellyAccessory)>> + <<if visibleBelly($args[0]) && $fakeBellies.contains(_combinedRule.bellyAccessory)>> <br>$args[0].slaveName's natural belly is too big to properly wear an empathy belly. <<else>> - <<set $args[0].bellyAccessory = _currentRule.bellyAccessory>> + <<set $args[0].bellyAccessory = _combinedRule.bellyAccessory>> <<if $args[0].bellyAccessory == "none">> <br>$args[0].slaveName's belly accessory has been removed. <<else>> @@ -3526,9 +3700,9 @@ Your brand design is ''$brandDesign.'' <</if>> /* CLOSES FUCKDOLL CHECK */ -<<if (_currentRule.growth !== "no default setting")>> +<<if (_combinedRule.growth !== "no default setting")>> <<if ($args[0].indentureRestrictions < 2)>> -<<if (_currentRule.growth == "girlish")>> +<<if (_combinedRule.growth == "girlish")>> <<if ($args[0].butt < 2)>> <<set $args[0].drugs = "butt injections">> <br>$args[0].slaveName's butt is tiny, so she's been put on buttock growth drugs. @@ -3542,7 +3716,7 @@ Your brand design is ''$brandDesign.'' <<set $args[0].drugs = "no drugs">> <br>$args[0].slaveName has reached growth targets and has been taken off growth injections. <</if>> -<<elseif (_currentRule.growth == "stacked")>> +<<elseif (_combinedRule.growth == "stacked")>> <<if ($args[0].butt < 2)>> <<set $args[0].drugs = "butt injections">> <br>$args[0].slaveName's butt is tiny, so she's been put on buttock growth drugs. @@ -3593,10 +3767,10 @@ Your brand design is ''$brandDesign.'' <<elseif ($args[0].boobs <= 9000)>> <<set $args[0].drugs = "breast injections">> <br>$args[0].slaveName could handle bigger tits, so she's been put on breast injections. - <<elseif ($args[0].dick > 0) && ($args[0].dick < 10) && (_currentRule.growth == "unlimited")>> + <<elseif ($args[0].dick > 0) && ($args[0].dick < 10) && (_combinedRule.growth == "unlimited")>> <<set $args[0].drugs = "penis enhancement">> <br>$args[0].slaveName's dick could be bigger, so she's been put on penis enhancement. - <<elseif ($args[0].boobs < 24000) && (_currentRule.growth == "unlimited")>> + <<elseif ($args[0].boobs < 24000) && (_combinedRule.growth == "unlimited")>> <<set $args[0].drugs = "breast injections">> <br>$args[0].slaveName's boobs could be bigger, so she's been put on breast injections. <<elseif $args[0].drugs != "no drugs">> @@ -3607,35 +3781,35 @@ Your brand design is ''$brandDesign.'' <</if>> <</if>> -<<if (_currentRule.curatives != "no default setting")>> -<<if $args[0].curatives != _currentRule.curatives>> - <<if _currentRule.curatives == 2>> +<<if (_combinedRule.curatives != "no default setting")>> +<<if $args[0].curatives != _combinedRule.curatives>> + <<if _combinedRule.curatives == 2>> <<if $args[0].health > 100>> <br>$args[0].slaveName has been put on preventatives, since curatives cannot improve her health further. <<set $args[0].curatives = 1>> <<else>> <br>$args[0].slaveName has been put on curatives. - <<set $args[0].curatives = _currentRule.curatives>> + <<set $args[0].curatives = _combinedRule.curatives>> <</if>> <<else>> - <br>$args[0].slaveName has been <<if _currentRule.aphrodisiacs > 0>>put on preventatives<<else>>taken off health drugs<</if>>. - <<set $args[0].curatives = _currentRule.curatives>> + <br>$args[0].slaveName has been <<if _combinedRule.aphrodisiacs > 0>>put on preventatives<<else>>taken off health drugs<</if>>. + <<set $args[0].curatives = _combinedRule.curatives>> <</if>> <</if>> <</if>> -<<if (_currentRule.aphrodisiacs != "no default setting")>> -<<if $args[0].aphrodisiacs != _currentRule.aphrodisiacs>> - <br>$args[0].slaveName has been <<if _currentRule.aphrodisiacs > 0>>put on the proper<<else>>taken off<</if>> aphrodisiacs. - <<set $args[0].aphrodisiacs = _currentRule.aphrodisiacs>> +<<if (_combinedRule.aphrodisiacs != "no default setting")>> +<<if $args[0].aphrodisiacs != _combinedRule.aphrodisiacs>> + <br>$args[0].slaveName has been <<if _combinedRule.aphrodisiacs > 0>>put on the proper<<else>>taken off<</if>> aphrodisiacs. + <<set $args[0].aphrodisiacs = _combinedRule.aphrodisiacs>> <</if>> <</if>> <<if ($args[0].dick > 0)>> <<if ($args[0].balls == 0)>> -<<if (_currentRule.gelding !== "no default setting")>> -<<if ($args[0].hormones !== _currentRule.gelding)>> - <<set $args[0].hormones = _currentRule.gelding>> +<<if (_combinedRule.gelding !== "no default setting")>> +<<if ($args[0].hormones !== _combinedRule.gelding)>> + <<set $args[0].hormones = _combinedRule.gelding>> <<if $args[0].indentureRestrictions >= 2>> <<set $args[0].hormones = Math.clamp($args[0].hormones, -1, 1)>> <</if>> @@ -3643,13 +3817,13 @@ Your brand design is ''$brandDesign.'' <</if>> <</if>> <<elseif ($args[0].balls > 0)>> -<<if (_currentRule.XY !== "no default setting")>> -<<if ($args[0].hormones !== _currentRule.XY)>> +<<if (_combinedRule.XY !== "no default setting")>> +<<if ($args[0].hormones !== _combinedRule.XY)>> <<if ($args[0].assignment != "recruit girls")>> <<if ($args[0].assignment != "be the Wardeness")>> <<if ($args[0].assignment != "be the Madam")>> <<if ($args[0].assignment != "be the Collectrix")>> - <<set $args[0].hormones = _currentRule.XY>> + <<set $args[0].hormones = _combinedRule.XY>> <<if $args[0].indentureRestrictions >= 2>> <<set $args[0].hormones = Math.clamp($args[0].hormones, -1, 1)>> <</if>> @@ -3665,9 +3839,9 @@ Your brand design is ''$brandDesign.'' <<if ($args[0].vagina > -1)>> <<if ($args[0].dick == 0)>> -<<if (_currentRule.XX !== "no default setting")>> -<<if ($args[0].hormones !== _currentRule.XX)>> - <<set $args[0].hormones = _currentRule.XX>> +<<if (_combinedRule.XX !== "no default setting")>> +<<if ($args[0].hormones !== _combinedRule.XX)>> + <<set $args[0].hormones = _combinedRule.XX>> <<if $args[0].indentureRestrictions >= 2>> <<set $args[0].hormones = Math.clamp($args[0].hormones, -1, 1)>> <</if>> @@ -3676,8 +3850,8 @@ Your brand design is ''$brandDesign.'' <</if>> <</if>> <<if canGetPregnant($args[0])>> -<<if (_currentRule.preg !== "no default setting")>> -<<if (_currentRule.preg == -1)>> +<<if (_combinedRule.preg !== "no default setting")>> +<<if (_combinedRule.preg == -1)>> <<if $args[0].preg !== -1>> <br>$args[0].slaveName is a fertile female, so she has been put on the appropriate contraceptive regime. <<set $args[0].preg = -1>> @@ -3685,7 +3859,7 @@ Your brand design is ''$brandDesign.'' <<if $args[0].drugs == "fertility drugs" || $args[0].drugs == "super fertility drugs">> <<set $args[0].drugs = "no drugs">> <</if>> -<<elseif (_currentRule.preg == 0)>> +<<elseif (_combinedRule.preg == 0)>> <<if $args[0].preg !== 0>> <br>$args[0].slaveName is a fertile female, so she has been taken off contraceptives. <<set $args[0].preg = 0>> @@ -3693,28 +3867,28 @@ Your brand design is ''$brandDesign.'' <<if $args[0].drugs == "fertility drugs" || $args[0].drugs == "super fertility drugs">> <<set $args[0].drugs = "no drugs">> <</if>> -<<elseif (_currentRule.preg == 1)>> +<<elseif (_combinedRule.preg == 1)>> <<if $args[0].preg !== 0 || $args[0].drugs !== "fertility drugs" || $args[0].hormones !== 0>> <<set $args[0].preg = 0>> <<set $args[0].drugs = "fertility drugs">> <<set $args[0].hormones = 0>> <br>$args[0].slaveName is a fertile female, so she has been put on the appropriate fertility regime. <</if>> -<<elseif (_currentRule.preg == 2)>> +<<elseif (_combinedRule.preg == 2)>> <<if $args[0].preg !== 0 || $args[0].drugs !== "fertility drugs" || $args[0].hormones !== 2>> <<set $args[0].preg = 0>> <<set $args[0].drugs = "fertility drugs">> <<set $args[0].hormones = 2>> <br>$args[0].slaveName is a fertile female, so she has been put on the appropriate fertility regime. <</if>> -<<elseif (_currentRule.preg == 3) and $args[0].indentureRestrictions < 1>> +<<elseif (_combinedRule.preg == 3) and $args[0].indentureRestrictions < 1>> <<if $args[0].preg !== 0 || $args[0].drugs !== "super fertility drugs" || $args[0].hormones !== 0>> <<set $args[0].preg = 0>> <<set $args[0].drugs = "super fertility drugs">> <<set $args[0].hormones = 0>> <br>$args[0].slaveName is a fertile female, so she has been put on the appropriate fertility regime. <</if>> -<<elseif (_currentRule.preg == 4) and $args[0].indentureRestrictions < 1>> +<<elseif (_combinedRule.preg == 4) and $args[0].indentureRestrictions < 1>> <<if $args[0].preg !== 0 || $args[0].drugs !== "super fertility drugs" || $args[0].hormones !== 2>> <<set $args[0].preg = 0>> <<set $args[0].drugs = "super fertility drugs">> @@ -3728,52 +3902,52 @@ Your brand design is ''$brandDesign.'' <<if $args[0].fuckdoll == 0>> -<<if (_currentRule.livingRules !== "no default setting")>> +<<if (_combinedRule.livingRules !== "no default setting")>> <<if ($args[0].fetish == "mindbroken")>> <<if ($args[0].livingRules !== "spare")>> <<set $args[0].livingRules = "spare">> <br>Since $args[0].slaveName is mindbroken her living standard has been set to spare. <</if>> -<<elseif $args[0].livingRules !== _currentRule.livingRules>> - <<if _currentRule.livingRules !== "luxurious">> +<<elseif $args[0].livingRules !== _combinedRule.livingRules>> + <<if _combinedRule.livingRules !== "luxurious">> <<if $roomsPopulation <= $rooms-0.5>> - <<set $args[0].livingRules = _currentRule.livingRules>> - <br>$args[0].slaveName's living standard has been set to _currentRule.livingRules. + <<set $args[0].livingRules = _combinedRule.livingRules>> + <br>$args[0].slaveName's living standard has been set to _combinedRule.livingRules. <<if $args[0].relationship >= 4>><<set $roomsPopulation += 0.5>><<else>><<set $roomsPopulation += 1>><</if>> <<else>> <<set $args[0].livingRules = "normal">> <br>$args[0].slaveName's living standard has been set to normal, since there is no room for her to occupy. <</if>> <<else>> - <<set $args[0].livingRules = _currentRule.livingRules>> - <br>$args[0].slaveName's living standard has been set to _currentRule.livingRules. + <<set $args[0].livingRules = _combinedRule.livingRules>> + <br>$args[0].slaveName's living standard has been set to _combinedRule.livingRules. <</if>> <</if>> <</if>> -<<if (_currentRule.speechRules !== "no default setting")>> +<<if (_combinedRule.speechRules !== "no default setting")>> <<if ($args[0].fetish == "mindbroken")>> <<if ($args[0].speechRules !== "restrictive")>> <<set $args[0].speechRules = "restrictive">> <br>Since $args[0].slaveName is mindbroken her speech rules have been set to restrictive. <</if>> -<<elseif ($args[0].speechRules !== _currentRule.speechRules)>> - <<set $args[0].speechRules = _currentRule.speechRules>> - <br>$args[0].slaveName's speech rules have been set to _currentRule.speechRules. +<<elseif ($args[0].speechRules !== _combinedRule.speechRules)>> + <<set $args[0].speechRules = _combinedRule.speechRules>> + <br>$args[0].slaveName's speech rules have been set to _combinedRule.speechRules. <</if>> <</if>> <<if ($args[0].fetish !== "mindbroken")>> - <<if (_currentRule.relationshipRules !== "no default setting")>> - <<if ($args[0].relationshipRules !== _currentRule.relationshipRules )>> - <<set $args[0].relationshipRules = _currentRule.relationshipRules >> - <br>$args[0].slaveName's relationship rules have been set to _currentRule.relationshipRules. + <<if (_combinedRule.relationshipRules !== "no default setting")>> + <<if ($args[0].relationshipRules !== _combinedRule.relationshipRules )>> + <<set $args[0].relationshipRules = _combinedRule.relationshipRules >> + <br>$args[0].slaveName's relationship rules have been set to _combinedRule.relationshipRules. <</if>> <</if>> <</if>> -<<if (_currentRule.releaseRules !== "no default setting")>> - <<if (_currentRule.releaseRules == "restrictive")>> +<<if (_combinedRule.releaseRules !== "no default setting")>> + <<if (_combinedRule.releaseRules == "restrictive")>> <<SexualRelease $args[0]>> <<else>> <<set $release = 1>> @@ -3781,44 +3955,44 @@ Your brand design is ''$brandDesign.'' <<if ($args[0].fetish == "mindbroken") && ($args[0].releaseRules !== "permissive")>> <<set $args[0].releaseRules = "permissive">> <br>Since $args[0].slaveName is mindbroken her masturbation rules have been set to permissive. - <<elseif ($release != 0) && ($args[0].releaseRules !== _currentRule.releaseRules)>> - <<set $args[0].releaseRules = _currentRule.releaseRules>> - <br>$args[0].slaveName's masturbation rules have been set to _currentRule.releaseRules. + <<elseif ($release != 0) && ($args[0].releaseRules !== _combinedRule.releaseRules)>> + <<set $args[0].releaseRules = _combinedRule.releaseRules>> + <br>$args[0].slaveName's masturbation rules have been set to _combinedRule.releaseRules. <</if>> <</if>> -<<if (_currentRule.standardPunishment !== "no default setting")>> - <<if ($args[0].standardPunishment !== _currentRule.standardPunishment)>> - <<set $args[0].standardPunishment = _currentRule.standardPunishment >> - <br>$args[0].slaveName's typical punishment has been updated to _currentRule.standardPunishment. +<<if (_combinedRule.standardPunishment !== "no default setting")>> + <<if ($args[0].standardPunishment !== _combinedRule.standardPunishment)>> + <<set $args[0].standardPunishment = _combinedRule.standardPunishment >> + <br>$args[0].slaveName's typical punishment has been updated to _combinedRule.standardPunishment. <</if>> <</if>> -<<if (_currentRule.standardReward !== "no default setting")>> - <<if ($args[0].standardReward !== _currentRule.standardReward)>> - <<set $args[0].standardReward = _currentRule.standardReward >> - <br>$args[0].slaveName's typical reward has been updated to _currentRule.standardReward. +<<if (_combinedRule.standardReward !== "no default setting")>> + <<if ($args[0].standardReward !== _combinedRule.standardReward)>> + <<set $args[0].standardReward = _combinedRule.standardReward >> + <br>$args[0].slaveName's typical reward has been updated to _combinedRule.standardReward. <</if>> <</if>> <</if>> /* CLOSES FUCKDOLL CHECK */ -<<if (_currentRule.diet !== "no default setting")>> - <<if ($args[0].boobs >= 1600) && ($args[0].muscles <= 5) && ($args[0].amp != 1) && ((_currentRule.muscles == "no default setting") || (_currentRule.muscles == 0))>> +<<if (_combinedRule.diet !== "no default setting")>> + <<if ($args[0].boobs >= 1600) && ($args[0].muscles <= 5) && ($args[0].amp != 1) && ((_combinedRule.muscles == "no default setting") || (_combinedRule.muscles == 0))>> <<if ($args[0].diet !== "muscle building")>> <<set $args[0].diet = "muscle building">> <br>$args[0].slaveName has big tits and no back muscles, so she's been assigned to gain some. <</if>> - <<elseif ($args[0].boobs >= 1600) && ($args[0].muscles > 5) && ($args[0].diet == "muscle building") && ((_currentRule.muscles == "no default setting") || (_currentRule.muscles == 0))>> + <<elseif ($args[0].boobs >= 1600) && ($args[0].muscles > 5) && ($args[0].diet == "muscle building") && ((_combinedRule.muscles == "no default setting") || (_combinedRule.muscles == 0))>> <<set $args[0].diet = "healthy">> <br>$args[0].slaveName has huge boobs, but she already has the back muscles to bear them, so she's been assigned to stop working out so hard. - <<elseif (_currentRule.dietGrowthSupport == 1) && (($args[0].drugs == "breast injections") || ($args[0].drugs == "butt injections")) && ($args[0].weight <= 95)>> + <<elseif (_combinedRule.dietGrowthSupport == 1) && (($args[0].drugs == "breast injections") || ($args[0].drugs == "butt injections")) && ($args[0].weight <= 95)>> <<if $args[0].diet !== "fattening">> <<set $args[0].diet = "fattening">> <br>$args[0].slaveName is on drugs designed to expand major body parts, so she's been put on a fattening diet to provide her body as much fuel for growth as possible. <</if>> <<else>> - <<if (_currentRule.diet == 0)>> + <<if (_combinedRule.diet == 0)>> <<if ($args[0].weight > 10)>> <<if ($args[0].diet !== "restricted")>> <<set $args[0].diet = "restricted">> @@ -3837,13 +4011,13 @@ Your brand design is ''$brandDesign.'' <<set $args[0].drugs = "none">> <br>$args[0].slaveName is too skinny so she will no longer be given weight loss pills. <</if>> - <<elseif (_currentRule.muscles !== "no default setting") && ($args[0].amp != 1)>> - <<if ($args[0].muscles >= _currentRule.muscles+5)>> + <<elseif (_combinedRule.muscles !== "no default setting") && ($args[0].amp != 1)>> + <<if ($args[0].muscles >= _combinedRule.muscles+5)>> <<if ($args[0].diet !== "slimming")>> <<set $args[0].diet = "slimming">> <br>$args[0].slaveName has been put on a slimming exercise regime. <</if>> - <<elseif ($args[0].muscles <= _currentRule.muscles-5)>> + <<elseif ($args[0].muscles <= _combinedRule.muscles-5)>> <<if ($args[0].diet !== "muscle building")>> <<set $args[0].diet = "muscle building">> <br>$args[0].slaveName has been put on a muscle building exercise regime. @@ -3860,7 +4034,7 @@ Your brand design is ''$brandDesign.'' <br>$args[0].slaveName is at the target weight, so her diet has been normalized. <</if>> <</if>> - <<elseif (_currentRule.diet == 30)>> + <<elseif (_combinedRule.diet == 30)>> <<if ($args[0].weight > 30)>> <<if ($args[0].diet !== "restricted")>> <<set $args[0].diet = "restricted">> @@ -3879,13 +4053,13 @@ Your brand design is ''$brandDesign.'' <<set $args[0].drugs = "none">> <br>$args[0].slaveName is too skinny so she will no longer be given weight loss pills. <</if>> - <<elseif (_currentRule.muscles !== "no default setting") && ($args[0].amp != 1)>> - <<if ($args[0].muscles >= _currentRule.muscles+5)>> + <<elseif (_combinedRule.muscles !== "no default setting") && ($args[0].amp != 1)>> + <<if ($args[0].muscles >= _combinedRule.muscles+5)>> <<if ($args[0].diet !== "slimming")>> <<set $args[0].diet = "slimming">> <br>$args[0].slaveName has been put on a slimming exercise regime. <</if>> - <<elseif ($args[0].muscles <= _currentRule.muscles-5)>> + <<elseif ($args[0].muscles <= _combinedRule.muscles-5)>> <<if ($args[0].diet !== "muscle building")>> <<set $args[0].diet = "muscle building">> <br>$args[0].slaveName has been put on a muscle building exercise regime. @@ -3910,7 +4084,7 @@ Your brand design is ''$brandDesign.'' <br>$args[0].slaveName is at the target weight, so she will no longer be given weight loss pills. <</if>> <</if>> - <<elseif (_currentRule.diet == -30)>> + <<elseif (_combinedRule.diet == -30)>> <<if ($args[0].weight > -15)>> <<if ($args[0].diet !== "restricted")>> <<set $args[0].diet = "restricted">> @@ -3929,13 +4103,13 @@ Your brand design is ''$brandDesign.'' <<set $args[0].drugs = "none">> <br>$args[0].slaveName is too skinny so she will no longer be given weight loss pills. <</if>> - <<elseif (_currentRule.muscles !== "no default setting") && ($args[0].amp != 1)>> - <<if ($args[0].muscles >= _currentRule.muscles+5)>> + <<elseif (_combinedRule.muscles !== "no default setting") && ($args[0].amp != 1)>> + <<if ($args[0].muscles >= _combinedRule.muscles+5)>> <<if ($args[0].diet !== "slimming")>> <<set $args[0].diet = "slimming">> <br>$args[0].slaveName has been put on a slimming exercise regime. <</if>> - <<elseif ($args[0].muscles <= _currentRule.muscles-5)>> + <<elseif ($args[0].muscles <= _combinedRule.muscles-5)>> <<if ($args[0].diet !== "muscle building")>> <<set $args[0].diet = "muscle building">> <br>$args[0].slaveName has been put on a muscle building exercise regime. @@ -3960,7 +4134,7 @@ Your brand design is ''$brandDesign.'' <br>$args[0].slaveName is at the target weight, so she will no longer be given weight loss pills. <</if>> <</if>> - <<elseif (_currentRule.diet == "attractive")>> + <<elseif (_combinedRule.diet == "attractive")>> <<if (($args[0].weight > 95) || (($args[0].weight > 30) && ($args[0].hips < 2)))>> <<if ($args[0].diet !== "restricted")>> <<set $args[0].diet = "restricted">> @@ -3979,13 +4153,13 @@ Your brand design is ''$brandDesign.'' <<set $args[0].drugs = "none">> <br>$args[0].slaveName is too skinny so she will no longer be given weight loss pills. <</if>> - <<elseif (_currentRule.muscles !== "no default setting") && ($args[0].amp != 1)>> - <<if ($args[0].muscles >= _currentRule.muscles+5)>> + <<elseif (_combinedRule.muscles !== "no default setting") && ($args[0].amp != 1)>> + <<if ($args[0].muscles >= _combinedRule.muscles+5)>> <<if ($args[0].diet !== "slimming")>> <<set $args[0].diet = "slimming">> <br>$args[0].slaveName has been put on a slimming exercise regime. <</if>> - <<elseif ($args[0].muscles <= _currentRule.muscles-5)>> + <<elseif ($args[0].muscles <= _combinedRule.muscles-5)>> <<if ($args[0].diet !== "muscle building")>> <<set $args[0].diet = "muscle building">> <br>$args[0].slaveName has been put on a muscle building exercise regime. @@ -4010,17 +4184,17 @@ Your brand design is ''$brandDesign.'' <br>$args[0].slaveName is at the target weight, so she will no longer be given weight loss pills. <</if>> <</if>> - <<elseif (_currentRule.diet == "XX")>> + <<elseif (_combinedRule.diet == "XX")>> <<if ($args[0].diet !== "XX")>> <<set $args[0].diet = "XX">> <br>$args[0].slaveName has been put on a diet that favors feminine development. <</if>> - <<elseif (_currentRule.diet == "XY")>> + <<elseif (_combinedRule.diet == "XY")>> <<if ($args[0].diet !== "XY")>> <<set $args[0].diet = "XY">> <br>$args[0].slaveName has been put on a diet that favors masculine development. <</if>> - <<elseif (_currentRule.diet == "XXY")>> + <<elseif (_combinedRule.diet == "XXY")>> <<if ($args[0].diet !== "XXY")>> <<set $args[0].diet = "XXY">> <br>$args[0].slaveName has been put on a diet that enhances a herm's unique sexuality. @@ -4029,9 +4203,9 @@ Your brand design is ''$brandDesign.'' <</if>> <</if>> -<<if (_currentRule.dietCum !== "no default setting")>> - <<if $args[0].dietCum != _currentRule.dietCum>> - <<set $args[0].dietCum = _currentRule.dietCum>> +<<if (_combinedRule.dietCum !== "no default setting")>> + <<if $args[0].dietCum != _combinedRule.dietCum>> + <<set $args[0].dietCum = _combinedRule.dietCum>> <<if $args[0].dietCum == 2>> <br>$args[0].slaveName has been put on a diet based on cum. <<set $args[0].dietMilk = 0>> @@ -4043,9 +4217,9 @@ Your brand design is ''$brandDesign.'' <</if>> <</if>> -<<if (_currentRule.dietMilk !== "no default setting")>> - <<if $args[0].dietMilk != _currentRule.dietMilk>> - <<set $args[0].dietMilk = _currentRule.dietMilk>> +<<if (_combinedRule.dietMilk !== "no default setting")>> + <<if $args[0].dietMilk != _combinedRule.dietMilk>> + <<set $args[0].dietMilk = _combinedRule.dietMilk>> <<if $args[0].dietMilk == 2>> <br>$args[0].slaveName has been put on a diet based on human milk. <<set $args[0].dietCum = 0>> @@ -4057,8 +4231,8 @@ Your brand design is ''$brandDesign.'' <</if>> <</if>> -<<if (_currentRule.teeth !== "no default setting")>> - <<if (_currentRule.teeth == "universal")>> +<<if (_combinedRule.teeth !== "no default setting")>> + <<if (_combinedRule.teeth == "universal")>> <<if ($args[0].teeth == "crooked")>> <<set $args[0].teeth = "straightening braces">> <<set $cash -= $surgeryCost>> @@ -4068,7 +4242,7 @@ Your brand design is ''$brandDesign.'' <<set $cash -= $surgeryCost>> <br>$args[0].slaveName has been given cosmetic braces. <</if>> - <<elseif (_currentRule.teeth == "straighten")>> + <<elseif (_combinedRule.teeth == "straighten")>> <<if ($args[0].teeth == "crooked")>> <<set $args[0].teeth = "straightening braces">> <<set $cash -= $surgeryCost>> @@ -4077,7 +4251,7 @@ Your brand design is ''$brandDesign.'' <<set $args[0].teeth = "normal">> <br>$args[0].slaveName has gotten her braces off, since her teeth are straight. <</if>> - <<elseif (_currentRule.teeth == "none")>> + <<elseif (_combinedRule.teeth == "none")>> <<if ($args[0].teeth == "straightening braces")>> <<set $args[0].teeth = "crooked">> <br>$args[0].slaveName has gotten her braces off. @@ -4088,581 +4262,426 @@ Your brand design is ''$brandDesign.'' <</if>> <</if>> -<<set _tmp = lastEyeColorRule($args[0], $defaultRules)>> -<<if (_tmp != null) && (_tmp.ID == _currentRule.ID)>> -<<if (_currentRule.eyeColor !== "no default setting")>> -<<if ($args[0].eyeColor !== _currentRule.eyeColor)>> - <<set $args[0].eyeColor = _currentRule.eyeColor>> - <<set $cash -= $modCost>> - <br>$args[0].slaveName has been given $args[0].eyeColor contact lenses. -<</if>> +<<if (_combinedRule.eyeColor !== "no default setting")>> +<<if ($args[0].eyeColor !== _combinedRule.eyeColor)>> + <<set $args[0].eyeColor = _combinedRule.eyeColor>> + <<set $cash -= $modCost>> + <br>$args[0].slaveName has been given $args[0].eyeColor contact lenses. <</if>> <</if>> -<<set _tmp = lastMakeupRule($args[0], $defaultRules)>> -<<if (_tmp != null) && (_tmp.ID == _currentRule.ID)>> -<<if (_currentRule.makeup !== "no default setting")>> -<<if ($args[0].makeup !== _currentRule.makeup)>> - <<set $args[0].makeup = _currentRule.makeup>> - <<set $cash -= $modCost>> - <br>$args[0].slaveName has been assigned the standard makeup. -<</if>> +<<if (_combinedRule.makeup !== "no default setting")>> +<<if ($args[0].makeup !== _combinedRule.makeup)>> + <<set $args[0].makeup = _combinedRule.makeup>> + <<set $cash -= $modCost>> + <br>$args[0].slaveName has been assigned the standard makeup. <</if>> <</if>> -<<set _tmp = lastNailsRule($args[0], $defaultRules)>> -<<if (_tmp != null) && (_tmp.ID == _currentRule.ID)>> <<if ($args[0].amp != 1)>> -<<if (_currentRule.nails !== "no default setting")>> -<<if ($args[0].nails !== _currentRule.nails)>> - <<set $args[0].nails = _currentRule.nails>> - <<set $cash -= $modCost>> - <br>$args[0].slaveName has been assigned the standard nails. -<</if>> +<<if (_combinedRule.nails !== "no default setting")>> +<<if ($args[0].nails !== _combinedRule.nails)>> + <<set $args[0].nails = _combinedRule.nails>> + <<set $cash -= $modCost>> + <br>$args[0].slaveName has been assigned the standard nails. <</if>> <</if>> <</if>> -<<set _tmp = lastHColorRule($args[0], $defaultRules)>> -<<if (_tmp != null) && (_tmp.ID == _currentRule.ID)>> -<<if (_currentRule.hColor !== "no default setting")>> -<<if ($args[0].hColor !== _currentRule.hColor)>> - <<set $args[0].hColor = _currentRule.hColor>> - <<set $cash -= $modCost>> - <br>$args[0].slaveName's hair has been dyed _currentRule.hColor. -<</if>> +<<if (_combinedRule.hColor !== "no default setting")>> +<<if ($args[0].hColor !== _combinedRule.hColor)>> + <<set $args[0].hColor = _combinedRule.hColor>> + <<set $cash -= $modCost>> + <br>$args[0].slaveName's hair has been dyed _combinedRule.hColor. <</if>> <</if>> -<<set _tmp = lastHStyleRule($args[0], $defaultRules)>> -<<if (_tmp != null) && (_tmp.ID == _currentRule.ID)>> -<<if (_currentRule.hStyle !== "no default setting")>> -<<if ($args[0].hStyle !== _currentRule.hStyle)>> -<br>$args[0].slaveName's hair has been -<<if (_currentRule.hStyle == "shaved")>> - <<set $args[0].hLength = 0>> - shaved. -<<else>> - restyled. -<</if>> -<<set $args[0].hStyle = _currentRule.hStyle>> -<<set $cash -= $modCost>> -<</if>> +<<if (_combinedRule.hStyle !== "no default setting")>> +<<if ($args[0].hStyle !== _combinedRule.hStyle)>> + <<set $args[0].hStyle = _combinedRule.hStyle>> + <<set $cash -= $modCost>> + <<if (_combinedRule.hStyle == "shaved")>> + <<set $args[0].hLength = 0>> + <br>$args[0].slaveName's hair has been shaved. + <<else>> + <br>$args[0].slaveName's hair has been restyled. + <</if>> <</if>> <</if>> -<<set _tmp = lastHLengthRule($args[0], $defaultRules)>> -<<if (_tmp != null) && (_tmp.ID == _currentRule.ID)>> -<<if (_currentRule.hLength !== "no default setting")>> -<<if ($args[0].hLength !== _currentRule.hLength)>> -<<if ($args[0].hLength > _currentRule.hLength)>> +<<if (_combinedRule.hLength !== "no default setting")>> +<<if ($args[0].hLength !== _combinedRule.hLength)>> +<<if ($args[0].hLength > _combinedRule.hLength)>> <<set $cash -= $modCost>> <br>$args[0].slaveName's hair has been cut; it <<else>> - <<set $cash -= $modCost*Math.trunc((_currentRule.hLength-$args[0].hLength)/10)>> + <<set $cash -= $modCost*Math.trunc((_combinedRule.hLength-$args[0].hLength)/10)>> <br>$args[0].slaveName has been given extensions; her hair <</if>> -is now _currentRule.hLength cm long. -<<set $args[0].hLength = _currentRule.hLength>> -<</if>> +is now _combinedRule.hLength cm long. +<<set $args[0].hLength = _combinedRule.hLength>> <</if>> <</if>> -<<set _tmp = lastPubicHColorRule($args[0], $defaultRules)>> -<<if (_tmp != null) && (_tmp.ID == _currentRule.ID)>> -<<if (_currentRule.pubicHColor !== "no default setting")>> -<<if ($args[0].pubicHColor !== _currentRule.pubicHColor)>> - <<set $args[0].pubicHColor = _currentRule.pubicHColor>> - <<set $cash -= $modCost>> - <br>$args[0].slaveName's pubic hair, if present, has been dyed _currentRule.pubicHColor. -<</if>> +<<if (_combinedRule.pubicHColor !== "no default setting")>> +<<if ($args[0].pubicHColor !== _combinedRule.pubicHColor)>> + <<set $args[0].pubicHColor = _combinedRule.pubicHColor>> + <<set $cash -= $modCost>> + <br>$args[0].slaveName's pubic hair, if present, has been dyed _combinedRule.pubicHColor. <</if>> <</if>> -<<set _tmp = lastPubicHStyleRule($args[0], $defaultRules)>> -<<if (_tmp != null) && (_tmp.ID == _currentRule.ID)>> -<<if (_currentRule.pubicHStyle !== "no default setting")>> -<<if ($args[0].pubicHStyle !== _currentRule.pubicHStyle)>> - <<set $args[0].pubicHStyle = _currentRule.pubicHStyle>> - <<set $cash -= $modCost>> - <br>$args[0].slaveName's pubic hair has been restyled; it is now _currentRule.pubicHStyle. -<</if>> +<<if (_combinedRule.pubicHStyle !== "no default setting")>> +<<if ($args[0].pubicHStyle !== _combinedRule.pubicHStyle)>> + <<set $args[0].pubicHStyle = _combinedRule.pubicHStyle>> + <<set $cash -= $modCost>> + <br>$args[0].slaveName's pubic hair has been restyled; it is now _combinedRule.pubicHStyle. <</if>> <</if>> -<<set _tmp = lastUnderArmHColorRule($args[0], $defaultRules)>> -<<if (_tmp != null) && (_tmp.ID == _currentRule.ID)>> -<<if (_currentRule.underArmHColor !== "no default setting")>> -<<if ($args[0].underArmHColor !== _currentRule.underArmHColor)>> - <<set $args[0].underArmHColor = _currentRule.underArmHColor>> +<<if (_combinedRule.underArmHColor !== "no default setting")>> +<<if ($args[0].underArmHColor !== _combinedRule.underArmHColor)>> + <<set $args[0].underArmHColor = _combinedRule.underArmHColor>> <<set $cash -= $modCost>> - <br>$args[0].slaveName's underarm hair, if present, has been dyed _currentRule.underArmHColor. -<</if>> + <br>$args[0].slaveName's underarm hair, if present, has been dyed _combinedRule.underArmHColor. <</if>> <</if>> -<<set _tmp = lastUnderArmHStyleRule($args[0], $defaultRules)>> -<<if (_tmp != null) && (_tmp.ID == _currentRule.ID)>> -<<if (_currentRule.underArmHStyle !== "no default setting")>> -<<if ($args[0].underArmHStyle !== _currentRule.underArmHStyle)>> - <<set $args[0].underArmHStyle = _currentRule.underArmHStyle>> +<<if (_combinedRule.underArmHStyle !== "no default setting")>> +<<if ($args[0].underArmHStyle !== _combinedRule.underArmHStyle)>> + <<set $args[0].underArmHStyle = _combinedRule.underArmHStyle>> <<set $cash -= $modCost>> - <br>$args[0].slaveName's underarm hair has been restyled; it is now _currentRule.underArmHStyle. -<</if>> -<</if>> -<</if>> - -<<if (_currentRule.nipplesPiercing == 0)>> -<<if $args[0].nipplesPiercing != 0>> - <<set $args[0].nipplesPiercing = 0>> - <br>$args[0].slaveName's nipple piercings have been removed. -<</if>> -<</if>> -<<if (_currentRule.areolaePiercing == 0)>> -<<if $args[0].areolaePiercing != 0>> - <<set $args[0].areolaePiercing = 0>> - <br>$args[0].slaveName's areolae piercings have been removed. -<</if>> -<</if>> -<<if (_currentRule.clitPiercing == 0)>> -<<if $args[0].clitPiercing != 0>> - <<set $args[0].clitPiercing = 0>> - <<if $args[0].dick > 0>> - <br>$args[0].slaveName's frenulum piercing has been removed. - <<else>> - <br>$args[0].slaveName's clit piercing has been removed. + <br>$args[0].slaveName's underarm hair has been restyled; it is now _combinedRule.underArmHStyle. +<</if>> +<</if>> + +<<if (_combinedRule.nipplesPiercing !== "no default setting")>> +<<if ($args[0].nipplesPiercing !== _combinedRule.nipplesPiercing)>> + <<if (_combinedRule.nipplesPiercing == 0)>> + <<set $args[0].nipplesPiercing = 0>> + <br>$args[0].slaveName's nipple piercings have been removed. + <<else>> + <<set $args[0].nipplesPiercing = _combinedRule.nipplesPiercing>> + <<set $cash -= $modCost>> + <br>$args[0].slaveName's nipples have been pierced. + <</if>> +<</if>> +<</if>> + +<<if (_combinedRule.areolaePiercing !== "no default setting")>> +<<if ($args[0].areolaePiercing !== _combinedRule.areolaePiercing)>> + <<if (_combinedRule.areolaePiercing == 0)>> + <<set $args[0].areolaePiercing = 0>> + <br>$args[0].slaveName's areolae piercings have been removed. + <<else>> + <<set $args[0].areolaePiercing = _combinedRule.areolaePiercing>> + <<set $cash -= $modCost>> + <br>$args[0].slaveName's areolae have been given stud piercings. + <</if>> +<</if>> +<</if>> + +<<if (_combinedRule.clitPiercing !== "no default setting")>> +<<if ($args[0].clitPiercing !== _combinedRule.clitPiercing)>> + <<if (_combinedRule.clitPiercing == 0)>> + <<set $args[0].clitPiercing = 0>> + <<if $args[0].dick > 0>> + <br>$args[0].slaveName's frenulum piercing has been removed. + <<else>> + <br>$args[0].slaveName's clit piercing has been removed. + <</if>> + + <<elseif ($args[0].vagina != -1) || ($args[0].dick != 0)>> + <<set $args[0].clitPiercing = _combinedRule.clitPiercing>> + <<if $args[0].dick > 0>> + <br>$args[0].slaveName's frenulum has been pierced. + <<else>> + <br>$args[0].slaveName's clit has been pierced. <</if>> -<</if>> -<</if>> -<<if (_currentRule.vaginaPiercing == 0)>> -<<if $args[0].vaginaPiercing != 0>> - <<set $args[0].vaginaPiercing = 0>> - <br>$args[0].slaveName's labia piercings have been removed. -<</if>> -<</if>> -<<if (_currentRule.dickPiercing == 0)>> -<<if $args[0].dickPiercing != 0>> - <<set $args[0].dickPiercing = 0>> - <br>$args[0].slaveName's shaft piercings have been removed. -<</if>> -<</if>> -<<if (_currentRule.anusPiercing == 0)>> -<<if $args[0].anusPiercing != 0>> - <<set $args[0].anusPiercing = 0>> - <br>$args[0].slaveName's asshole piercings have been removed. -<</if>> -<</if>> -<<if (_currentRule.lipsPiercing == 0)>> -<<if $args[0].lipsPiercing != 0>> - <<set $args[0].lipsPiercing = 0>> - <br>$args[0].slaveName's lip piercings have been removed. -<</if>> -<</if>> -<<if (_currentRule.tonguePiercing == 0)>> -<<if $args[0].tonguePiercing != 0>> - <<set $args[0].tonguePiercing = 0>> - <br>$args[0].slaveName's tongue piercings have been removed. -<</if>> -<</if>> -<<if (_currentRule.earPiercing == 0)>> -<<if $args[0].earPiercing != 0>> - <<set $args[0].earPiercing = 0>> - <br>$args[0].slaveName's ear piercings have been removed. -<</if>> -<</if>> -<<if (_currentRule.nosePiercing == 0)>> -<<if $args[0].nosePiercing != 0>> - <<set $args[0].nosePiercing = 0>> - <br>$args[0].slaveName's nose piercing has been removed. -<</if>> -<</if>> -<<if (_currentRule.eyebrowPiercing == 0)>> -<<if $args[0].eyebrowPiercing != 0>> - <<set $args[0].eyebrowPiercing = 0>> - <br>$args[0].slaveName's eyebrow piercings have been removed. -<</if>> -<</if>> -<<if (_currentRule.navelPiercing == 0)>> -<<if $args[0].navelPiercing != 0>> - <<set $args[0].navelPiercing = 0>> - <br>$args[0].slaveName's navel piercing have been removed. -<</if>> -<</if>> -<<if (_currentRule.corsetPiercing == 0)>> -<<if $args[0].corsetPiercing != 0>> - <<set $args[0].corsetPiercing = 0>> - <br>$args[0].slaveName's corset piercings have been removed. -<</if>> -<</if>> - -<<set _tmp = lastNipplesPiercingRule($args[0], $defaultRules)>> -<<if (_tmp != null) && (_tmp.ID == _currentRule.ID)>> -<<if (_currentRule.nipplesPiercing !== "no default setting")>> -<<if (_currentRule.nipplesPiercing != 0)>> -<<if $args[0].nipplesPiercing !== _currentRule.nipplesPiercing>> - <<set $args[0].nipplesPiercing = _currentRule.nipplesPiercing>> - <<set $cash -= $modCost>> - <br>$args[0].slaveName's nipples have been pierced. -<</if>> -<</if>> -<</if>> -<</if>> - -<<set _tmp = lastAreolaePiercingRule($args[0], $defaultRules)>> -<<if (_tmp != null) && (_tmp.ID == _currentRule.ID)>> -<<if (_currentRule.areolaePiercing !== "no default setting")>> -<<if (_currentRule.areolaePiercing != 0)>> -<<if $args[0].areolaePiercing !== _currentRule.areolaePiercing>> - <<set $args[0].areolaePiercing = _currentRule.areolaePiercing>> - <<set $cash -= $modCost>> - <br>$args[0].slaveName's areolae have been given stud piercings. -<</if>> -<</if>> -<</if>> -<</if>> - -<<set _tmp = lastClitPiercingRule($args[0], $defaultRules)>> -<<if (_tmp != null) && (_tmp.ID == _currentRule.ID)>> -<<if (_currentRule.clitPiercing !== "no default setting")>> -<<if ($args[0].clitPiercing != 3)>> -<<if ($args[0].vagina != -1) || ($args[0].dick != 0)>> -<<if (_currentRule.clitPiercing != 0)>> -<<if $args[0].clitPiercing !== _currentRule.clitPiercing>> - <<set $args[0].clitPiercing = _currentRule.clitPiercing>> - <<if $args[0].dick > 0>> - <br>$args[0].slaveName's frenulum has been pierced. - <<else>> - <br>$args[0].slaveName's clit has been pierced. - <</if>> - <<if _currentRule.clitPiercing == 3>> - <<set $cash -= 1000>> - <<else>> - <<set $cash -= $modCost>> - <</if>> -<</if>> -<</if>> -<</if>> -<</if>> + <<if _combinedRule.clitPiercing == 3>> + <<set $cash -= 1000>> + <<else>> + <<set $cash -= $modCost>> + <</if>> + <</if>> <</if>> <</if>> <<if ($args[0].clitPiercing == 3)>> <<set _used = 0>> - <<set _tmp = lastClitSettingRule($args[0], $defaultRules)>> - <<if (_tmp != null) && (_tmp.ID == _currentRule.ID)>> - <<if (_currentRule.clitSetting !== "no default setting")>> - <<if $args[0].clitSetting !== _currentRule.clitSetting>> - <<set $args[0].clitSetting = _currentRule.clitSetting, _used = 1>> + <<if (_combinedRule.clitSetting !== "no default setting")>> + <<if $args[0].clitSetting !== _combinedRule.clitSetting>> + <<set $args[0].clitSetting = _combinedRule.clitSetting, _used = 1>> <br>$args[0].slaveName's smart piercing has been set to $args[0].clitSetting. <<else>> <<if $args[0].fetishStrength < 100>><<set _used = 1>><</if>> <</if>> <</if>> - <</if>> <<if _used == 0>> - <<set _tmp = lastClitSettingXYRule($args[0], $defaultRules)>> - <<if (_tmp != null) && (_tmp.ID == _currentRule.ID)>> - <<if _currentRule.clitSettingXY !== "no default setting">> - <<if $args[0].attrXY < _currentRule.clitSettingXY && $args[0].clitSetting !== "men">> + <<if _combinedRule.clitSettingXY !== "no default setting">> + <<if $args[0].attrXY < _combinedRule.clitSettingXY && $args[0].clitSetting !== "men">> <<set $args[0].clitSetting = "men", _used = 1>> <br>$args[0].slaveName's smart piercing has been set to encourage attraction to men. - <<elseif $args[0].attrXY >= _currentRule.clitSettingXY + 10 && $args[0].clitSetting !== "anti-men">> + <<elseif $args[0].attrXY >= _combinedRule.clitSettingXY + 10 && $args[0].clitSetting !== "anti-men">> <<set $args[0].clitSetting = "anti-men", _used = 1>> <br>$args[0].slaveName's smart piercing has been set to discourage attraction to men. <</if>> <</if>> - <</if>> <</if>> <<if _used == 0>> - <<set _tmp = lastClitSettingXXRule($args[0], $defaultRules)>> - <<if (_tmp != null) && (_tmp.ID == _currentRule.ID)>> - <<if _currentRule.clitSettingXX !== "no default setting">> - <<if $args[0].attrXX < _currentRule.clitSettingXX && $args[0].clitSetting !== "women">> + <<if _combinedRule.clitSettingXX !== "no default setting">> + <<if $args[0].attrXX < _combinedRule.clitSettingXX && $args[0].clitSetting !== "women">> <<set $args[0].clitSetting = "women", _used = 1>> <br>$args[0].slaveName's smart piercing has been set to encourage attraction to women. - <<elseif $args[0].attrXX >= _currentRule.clitSettingXX + 10 && $args[0].clitSetting !== "anti-women">> + <<elseif $args[0].attrXX >= _combinedRule.clitSettingXX + 10 && $args[0].clitSetting !== "anti-women">> <<set $args[0].clitSetting = "anti-women", _used = 1>> <br>$args[0].slaveName's smart piercing has been set to discourage attraction to women. <</if>> <</if>> - <</if>> <</if>> <<if _used == 0>> - <<set _tmp = lastClitSettingEnergyRule($args[0], $defaultRules)>> - <<if (_tmp != null) && (_tmp.ID == _currentRule.ID)>> - <<if _currentRule.clitSettingEnergy !== "no default setting">> - <<if $args[0].energy < _currentRule.clitSettingEnergy && $args[0].clitSetting !== "all">> + <<if _combinedRule.clitSettingEnergy !== "no default setting">> + <<if $args[0].energy < _combinedRule.clitSettingEnergy && $args[0].clitSetting !== "all">> <<set $args[0].clitSetting = "all", _used = 1>> <br>$args[0].slaveName's smart piercing has been set to enhance libido. - <<elseif $args[0].energy >= _currentRule.clitSettingEnergy + 10 && $args[0].clitSetting !== "none">> + <<elseif $args[0].energy >= _combinedRule.clitSettingEnergy + 10 && $args[0].clitSetting !== "none">> <<set $args[0].clitSetting = "none", _used = 1>> <br>$args[0].slaveName's smart piercing has been set to suppress libido. <</if>> <</if>> - <</if>> <</if>> <</if>> -<<set _tmp = lastVaginaPiercingRule($args[0], $defaultRules)>> -<<if (_tmp != null) && (_tmp.ID == _currentRule.ID)>> -<<if $args[0].vagina != -1>> -<<if (_currentRule.vaginaPiercing !== "no default setting")>> -<<if (_currentRule.vaginaPiercing != 0)>> -<<if $args[0].vaginaPiercing !== _currentRule.vaginaPiercing>> - <<set $args[0].vaginaPiercing = _currentRule.vaginaPiercing>> - <<set $cash -= $modCost>> - <br>$args[0].slaveName's pussylips have been pierced. -<</if>> -<</if>> +<<if ($args[0].vagina != -1)>> +<<if (_combinedRule.vaginaPiercing !== "no default setting")>> +<<if ($args[0].vaginaPiercing !== _combinedRule.vaginaPiercing)>> + <<if (_combinedRule.vaginaPiercing == 0)>> + <<set $args[0].vaginaPiercing = 0>> + <br>$args[0].slaveName's labia piercings have been removed. + <<else>> + <<set $args[0].vaginaPiercing = _combinedRule.vaginaPiercing>> + <<set $cash -= $modCost>> + <br>$args[0].slaveName's pussylips have been pierced. + <</if>> <</if>> <</if>> <</if>> -<<set _tmp = lastDickPiercingRule($args[0], $defaultRules)>> -<<if (_tmp != null) && (_tmp.ID == _currentRule.ID)>> -<<if $args[0].dick > 0>> -<<if (_currentRule.dickPiercing !== "no default setting")>> -<<if (_currentRule.dickPiercing != 0)>> -<<if $args[0].dickPiercing !== _currentRule.dickPiercing>> - <<set $args[0].dickPiercing = _currentRule.dickPiercing>> - <<set $cash -= $modCost>> - <br>$args[0].slaveName's shaft has been pierced. -<</if>> -<</if>> -<</if>> -<</if>> +<<if ($args[0].dick > 0)>> +<<if (_combinedRule.dickPiercing !== "no default setting")>> +<<if ($args[0].dickPiercing !== _combinedRule.dickPiercing)>> + <<if (_combinedRule.dickPiercing == 0)>> + <<set $args[0].dickPiercing = 0>> + <br>$args[0].slaveName's shaft piercings have been removed. + <<else>> + <<set $args[0].dickPiercing = _combinedRule.dickPiercing>> + <<set $cash -= $modCost>> + <br>$args[0].slaveName's shaft has been pierced. + <</if>> +<</if>> +<</if>> +<</if>> + +<<if (_combinedRule.anusPiercing !== "no default setting")>> +<<if ($args[0].anusPiercing !== _combinedRule.anusPiercing)>> + <<if (_combinedRule.anusPiercing == 0)>> + <<set $args[0].anusPiercing = 0>> + <br>$args[0].slaveName's asshole piercings have been removed. + <<else>> + <<set $args[0].anusPiercing = _combinedRule.anusPiercing>> + <<set $cash -= $modCost>> + <br>$args[0].slaveName's asshole has been pierced. + <</if>> +<</if>> <</if>> -<<set _tmp = lastAnusPiercingRule($args[0], $defaultRules)>> -<<if (_tmp != null) && (_tmp.ID == _currentRule.ID)>> -<<if (_currentRule.anusPiercing !== "no default setting")>> -<<if (_currentRule.anusPiercing != 0)>> -<<if $args[0].anusPiercing !== _currentRule.anusPiercing>> - <<set $args[0].anusPiercing = _currentRule.anusPiercing>> - <<set $cash -= $modCost>> - <br>$args[0].slaveName's asshole has been pierced. -<</if>> -<</if>> +<<if (_combinedRule.lipsPiercing !== "no default setting")>> +<<if ($args[0].lipsPiercing !== _combinedRule.lipsPiercing)>> + <<if (_combinedRule.lipsPiercing == 0)>> + <<set $args[0].lipsPiercing = 0>> + <br>$args[0].slaveName's lip piercings have been removed. + <<else>> + <<set $args[0].lipsPiercing = _combinedRule.lipsPiercing>> + <<set $cash -= $modCost>> + <br>$args[0].slaveName's lips have been pierced. + <</if>> <</if>> <</if>> -<<set _tmp = lastLipsPiercingRule($args[0], $defaultRules)>> -<<if (_tmp != null) && (_tmp.ID == _currentRule.ID)>> -<<if (_currentRule.lipsPiercing !== "no default setting")>> -<<if (_currentRule.lipsPiercing != 0)>> -<<if $args[0].lipsPiercing !== _currentRule.lipsPiercing>> - <<set $args[0].lipsPiercing = _currentRule.lipsPiercing>> - <<set $cash -= $modCost>> - <br>$args[0].slaveName's lips have been pierced. -<</if>> -<</if>> +<<if (_combinedRule.tonguePiercing !== "no default setting")>> +<<if ($args[0].tonguePiercing !== _combinedRule.tonguePiercing)>> + <<if (_combinedRule.tonguePiercing == 0)>> + <<set $args[0].tonguePiercing = 0>> + <br>$args[0].slaveName's tongue piercings have been removed. + <<else>> + <<set $args[0].tonguePiercing = _combinedRule.tonguePiercing>> + <<set $cash -= $modCost>> + <br>$args[0].slaveName's tongue has been pierced. + <</if>> <</if>> <</if>> -<<set _tmp = lastTonguePiercingRule($args[0], $defaultRules)>> -<<if (_tmp != null) && (_tmp.ID == _currentRule.ID)>> -<<if (_currentRule.tonguePiercing !== "no default setting")>> -<<if (_currentRule.tonguePiercing != 0)>> -<<if $args[0].tonguePiercing !== _currentRule.tonguePiercing>> - <<set $args[0].tonguePiercing = _currentRule.tonguePiercing>> - <<set $cash -= $modCost>> - <br>$args[0].slaveName's tongue has been pierced. -<</if>> -<</if>> -<</if>> -<</if>> - -<<set _tmp = lastEarPiercingRule($args[0], $defaultRules)>> -<<if (_tmp != null) && (_tmp.ID == _currentRule.ID)>> -<<if (_currentRule.earPiercing !== "no default setting")>> -<<if (_currentRule.earPiercing != 0)>> -<<if $args[0].earPiercing !== _currentRule.earPiercing>> - <<set $args[0].earPiercing = _currentRule.earPiercing>> - <<set $cash -= $modCost>> - <br>$args[0].slaveName's ears have been pierced. -<</if>> -<</if>> +<<if (_combinedRule.earPiercing !== "no default setting")>> +<<if ($args[0].earPiercing !== _combinedRule.earPiercing)>> + <<if (_combinedRule.earPiercing == 0)>> + <<set $args[0].earPiercing = 0>> + <br>$args[0].slaveName's ear piercings have been removed. + <<else>> + <<set $args[0].earPiercing = _combinedRule.earPiercing>> + <<set $cash -= $modCost>> + <br>$args[0].slaveName's ears have been pierced. + <</if>> <</if>> <</if>> -<<set _tmp = lastNosePiercingRule($args[0], $defaultRules)>> -<<if (_tmp != null) && (_tmp.ID == _currentRule.ID)>> -<<if (_currentRule.nosePiercing !== "no default setting")>> -<<if (_currentRule.nosePiercing != 0)>> -<<if $args[0].nosePiercing !== _currentRule.nosePiercing>> - <<set $args[0].nosePiercing = _currentRule.nosePiercing>> - <<set $cash -= $modCost>> - <br>$args[0].slaveName's nose has been pierced. -<</if>> -<</if>> +<<if (_combinedRule.nosePiercing !== "no default setting")>> +<<if ($args[0].nosePiercing !== _combinedRule.nosePiercing)>> + <<if (_combinedRule.nosePiercing == 0)>> + <<set $args[0].nosePiercing = 0>> + <br>$args[0].slaveName's nose piercing has been removed. + <<else>> + <<set $args[0].nosePiercing = _combinedRule.nosePiercing>> + <<set $cash -= $modCost>> + <br>$args[0].slaveName's nose has been pierced. + <</if>> <</if>> <</if>> -<<set _tmp = lastEyebrowPiercingRule($args[0], $defaultRules)>> -<<if (_tmp != null) && (_tmp.ID == _currentRule.ID)>> -<<if (_currentRule.eyebrowPiercing !== "no default setting")>> -<<if (_currentRule.eyebrowPiercing != 0)>> -<<if $args[0].eyebrowPiercing !== _currentRule.eyebrowPiercing>> - <<set $args[0].eyebrowPiercing = _currentRule.eyebrowPiercing>> - <<set $cash -= $modCost>> - <br>$args[0].slaveName's eyebrows have been pierced. -<</if>> -<</if>> +<<if (_combinedRule.eyebrowPiercing !== "no default setting")>> +<<if ($args[0].eyebrowPiercing !== _combinedRule.eyebrowPiercing)>> + <<if (_combinedRule.eyebrowPiercing == 0)>> + <<set $args[0].eyebrowPiercing = 0>> + <br>$args[0].slaveName's eyebrow piercings have been removed. + <<else>> + <<set $args[0].eyebrowPiercing = _combinedRule.eyebrowPiercing>> + <<set $cash -= $modCost>> + <br>$args[0].slaveName's eyebrows have been pierced. + <</if>> <</if>> <</if>> -<<set _tmp = lastNavelPiercingRule($args[0], $defaultRules)>> -<<if (_tmp != null) && (_tmp.ID == _currentRule.ID)>> -<<if (_currentRule.navelPiercing !== "no default setting")>> -<<if (_currentRule.navelPiercing != 0)>> -<<if $args[0].navelPiercing !== _currentRule.navelPiercing>> - <<set $args[0].navelPiercing = _currentRule.navelPiercing>> - <<set $cash -= $modCost>> - <br>$args[0].slaveName's navel has been pierced. -<</if>> -<</if>> +<<if (_combinedRule.navelPiercing !== "no default setting")>> +<<if ($args[0].navelPiercing !== _combinedRule.navelPiercing)>> + <<if (_combinedRule.navelPiercing == 0)>> + <<set $args[0].navelPiercing = 0>> + <br>$args[0].slaveName's navel piercing have been removed. + <<else>> + <<set $args[0].navelPiercing = _combinedRule.navelPiercing>> + <<set $cash -= $modCost>> + <br>$args[0].slaveName's navel has been pierced. + <</if>> <</if>> <</if>> -<<set _tmp = lastCorsetPiercingRule($args[0], $defaultRules)>> -<<if (_tmp != null) && (_tmp.ID == _currentRule.ID)>> -<<if (_currentRule.corsetPiercing !== "no default setting")>> -<<if (_currentRule.corsetPiercing != 0)>> -<<if $args[0].corsetPiercing !== _currentRule.corsetPiercing>> - <<set $args[0].corsetPiercing = _currentRule.corsetPiercing>> - <<set $cash -= $modCost>> - <br>$args[0].slaveName has been given a set of corset piercings. -<</if>> -<</if>> +<<if (_combinedRule.corsetPiercing !== "no default setting")>> +<<if ($args[0].corsetPiercing !== _combinedRule.corsetPiercing)>> + <<if (_combinedRule.corsetPiercing == 0)>> + <<set $args[0].corsetPiercing = 0>> + <br>$args[0].slaveName's corset piercings have been removed. + <<else>> + <<set $args[0].corsetPiercing = _combinedRule.corsetPiercing>> + <<set $cash -= $modCost>> + <br>$args[0].slaveName has been given a set of corset piercings. + <</if>> <</if>> <</if>> -<<set _tmp = lastBoobsTatRule($args[0], $defaultRules)>> -<<if (_tmp != null) && (_tmp.ID == _currentRule.ID)>> -<<if (_currentRule.boobsTat !== "no default setting")>> -<<if ($args[0].boobsTat !== _currentRule.boobsTat)>> - <<set $args[0].boobsTat = _currentRule.boobsTat>> - <<set $cash -= $modCost>> - <br>$args[0].slaveName's chest has been tattooed. -<</if>> +<<if (_combinedRule.boobsTat !== "no default setting")>> +<<if ($args[0].boobsTat !== _combinedRule.boobsTat)>> + <<set $args[0].boobsTat = _combinedRule.boobsTat>> + <<set $cash -= $modCost>> + <br>$args[0].slaveName's chest has been tattooed. <</if>> <</if>> -<<set _tmp = lastButtTatRule($args[0], $defaultRules)>> -<<if (_tmp != null) && (_tmp.ID == _currentRule.ID)>> -<<if (_currentRule.buttTat !== "no default setting")>> -<<if ($args[0].buttTat !== _currentRule.buttTat)>> - <<set $args[0].buttTat = _currentRule.buttTat>> - <<set $cash -= $modCost>> - <br>$args[0].slaveName's butt has been tattooed. -<</if>> +<<if (_combinedRule.buttTat !== "no default setting")>> +<<if ($args[0].buttTat !== _combinedRule.buttTat)>> + <<set $args[0].buttTat = _combinedRule.buttTat>> + <<set $cash -= $modCost>> + <br>$args[0].slaveName's butt has been tattooed. <</if>> <</if>> -<<set _tmp = lastVaginaTatRule($args[0], $defaultRules)>> -<<if (_tmp != null) && (_tmp.ID == _currentRule.ID)>> -<<if (_currentRule.vaginaTat !== "no default setting")>> -<<if ($args[0].vaginaTat !== _currentRule.vaginaTat)>> - <<set $args[0].vaginaTat = _currentRule.vaginaTat>> - <<set $cash -= $modCost>> - <br>$args[0].slaveName's abdomen has been tattooed. -<</if>> +<<if (_combinedRule.vaginaTat !== "no default setting")>> +<<if ($args[0].vaginaTat !== _combinedRule.vaginaTat)>> + <<set $args[0].vaginaTat = _combinedRule.vaginaTat>> + <<set $cash -= $modCost>> + <br>$args[0].slaveName's abdomen has been tattooed. <</if>> <</if>> -<<set _tmp = lastDickTatRule($args[0], $defaultRules)>> -<<if (_tmp != null) && (_tmp.ID == _currentRule.ID)>> <<if ($args[0].dick > 0)>> -<<if (_currentRule.dickTat !== "no default setting")>> -<<if ($args[0].dickTat !== _currentRule.dickTat)>> - <<set $args[0].dickTat = _currentRule.dickTat>> - <<set $cash -= $modCost>> - <br>$args[0].slaveName's dick has been tattooed. -<</if>> +<<if (_combinedRule.dickTat !== "no default setting")>> +<<if ($args[0].dickTat !== _combinedRule.dickTat)>> + <<set $args[0].dickTat = _combinedRule.dickTat>> + <<set $cash -= $modCost>> + <br>$args[0].slaveName's dick has been tattooed. <</if>> <</if>> <</if>> -<<set _tmp = lastLipsTatRule($args[0], $defaultRules)>> -<<if (_tmp != null) && (_tmp.ID == _currentRule.ID)>> -<<if (_currentRule.lipsTat !== "no default setting")>> -<<if ($args[0].lipsTat !== _currentRule.lipsTat)>> - <<set $args[0].lipsTat = _currentRule.lipsTat>> - <<set $cash -= $modCost>> - <br>$args[0].slaveName's face has been tattooed. -<</if>> +<<if (_combinedRule.lipsTat !== "no default setting")>> +<<if ($args[0].lipsTat !== _combinedRule.lipsTat)>> + <<set $args[0].lipsTat = _combinedRule.lipsTat>> + <<set $cash -= $modCost>> + <br>$args[0].slaveName's face has been tattooed. <</if>> <</if>> -<<set _tmp = lastAnusTatRule($args[0], $defaultRules)>> -<<if (_tmp != null) && (_tmp.ID == _currentRule.ID)>> -<<if (_currentRule.anusTat !== "no default setting")>> -<<if ($args[0].anusTat !== _currentRule.anusTat)>> - <<set $args[0].anusTat = _currentRule.anusTat>> - <<set $cash -= $modCost>> - <br>$args[0].slaveName's asshole has been modded. -<</if>> +<<if (_combinedRule.anusTat !== "no default setting")>> +<<if ($args[0].anusTat !== _combinedRule.anusTat)>> + <<set $args[0].anusTat = _combinedRule.anusTat>> + <<set $cash -= $modCost>> + <br>$args[0].slaveName's asshole has been modded. <</if>> <</if>> -<<set _tmp = lastShouldersTatRule($args[0], $defaultRules)>> -<<if (_tmp != null) && (_tmp.ID == _currentRule.ID)>> -<<if (_currentRule.shouldersTat !== "no default setting")>> -<<if ($args[0].shouldersTat !== _currentRule.shouldersTat)>> - <<set $args[0].shouldersTat = _currentRule.shouldersTat>> - <<set $cash -= $modCost>> - <br>$args[0].slaveName's shoulders have been tattooed. -<</if>> +<<if (_combinedRule.shouldersTat !== "no default setting")>> +<<if ($args[0].shouldersTat !== _combinedRule.shouldersTat)>> + <<set $args[0].shouldersTat = _combinedRule.shouldersTat>> + <<set $cash -= $modCost>> + <br>$args[0].slaveName's shoulders have been tattooed. <</if>> <</if>> -<<set _tmp = lastArmsTatRule($args[0], $defaultRules)>> -<<if (_tmp != null) && (_tmp.ID == _currentRule.ID)>> -<<if (_currentRule.armsTat !== "no default setting")>> -<<if ($args[0].armsTat !== _currentRule.armsTat)>> - <<set $args[0].armsTat = _currentRule.armsTat>> - <<set $cash -= $modCost>> - <br>$args[0].slaveName's arms have been tattooed. -<</if>> +<<if (_combinedRule.armsTat !== "no default setting")>> +<<if ($args[0].armsTat !== _combinedRule.armsTat)>> + <<set $args[0].armsTat = _combinedRule.armsTat>> + <<set $cash -= $modCost>> + <br>$args[0].slaveName's arms have been tattooed. <</if>> <</if>> -<<set _tmp = lastLegsTatRule($args[0], $defaultRules)>> -<<if (_tmp != null) && (_tmp.ID == _currentRule.ID)>> -<<if (_currentRule.legsTat !== "no default setting")>> -<<if ($args[0].legsTat !== _currentRule.legsTat)>> - <<set $args[0].legsTat = _currentRule.legsTat>> - <<set $cash -= $modCost>> - <br>$args[0].slaveName's legs have been tattooed. -<</if>> +<<if (_combinedRule.legsTat !== "no default setting")>> +<<if ($args[0].legsTat !== _combinedRule.legsTat)>> + <<set $args[0].legsTat = _combinedRule.legsTat>> + <<set $cash -= $modCost>> + <br>$args[0].slaveName's legs have been tattooed. <</if>> <</if>> -<<set _tmp = lastStampTatRule($args[0], $defaultRules)>> -<<if (_tmp != null) && (_tmp.ID == _currentRule.ID)>> -<<if (_currentRule.stampTat !== "no default setting")>> -<<if ($args[0].stampTat !== _currentRule.stampTat)>> - <<set $args[0].stampTat = _currentRule.stampTat>> - <<set $cash -= $modCost>> - <br>$args[0].slaveName's lower back has been tattooed. -<</if>> +<<if (_combinedRule.stampTat !== "no default setting")>> +<<if ($args[0].stampTat !== _combinedRule.stampTat)>> + <<set $args[0].stampTat = _combinedRule.stampTat>> + <<set $cash -= $modCost>> + <br>$args[0].slaveName's lower back has been tattooed. <</if>> <</if>> -<<if (_currentRule.pornFameSpending !== "no default setting")>> +<<if (_combinedRule.pornFameSpending !== "no default setting")>> <<if ($args[0].devotion > 95)>> <<if ($args[0].trust > 95)>> <<if ($args[0].prestige < 3)>> -<<if ($args[0].pornFameSpending !== _currentRule.pornFameSpending)>> - <<set $args[0].pornFameSpending = _currentRule.pornFameSpending>> - <br>$args[0].slaveName's porn publicity has been corrected. +<<if ($args[0].pornFameSpending !== _combinedRule.pornFameSpending)>> + <<set $args[0].pornFameSpending = _combinedRule.pornFameSpending>> + <br>$args[0].slaveName's porn publicity has been corrected. <</if>> <</if>> <</if>> <</if>> <</if>> -<<if (_currentRule.autoBrand == 1)>> +<<if (_combinedRule.autoBrand == 1)>> <<if ($args[0].brand == 0)>> <<if ($args[0].health > -20)>> <<set $args[0].brand = $brandDesign>> @@ -4670,278 +4689,26 @@ is now _currentRule.hLength cm long. <<if ($args[0].devotion < 18)>><<set $args[0].devotion -= 5>><</if>> <<set $args[0].trust -= 5>> <<set $args[0].health -= 10>> - <br>$args[0].slaveName has been branded, with @@.gold;fear@@<<if ($args[0].devotion < 18)>>, @@.mediumorchid;regard@@,<</if>> and @@.red;health@@ -consequences. -<</if>> -<</if>> -<</if>> - -<<set _exclude = false>> -<<if $args[0].assignment.includes("agent")>> - <<set _exclude = true>> -<<elseif _currentRule.excludeSpecialSlaves>> - <<if (($HeadGirl != 0) && ($HeadGirl.ID == $args[0].ID)) || (($Bodyguard != 0) && ($Bodyguard.ID == $args[0].ID)) || (($Recruiter != 0) && ($Recruiter.ID == $args[0].ID)) || (($Concubine != 0) && ($Concubine.ID == $args[0].ID)) || (($Nurse != 0) && ($Nurse.ID == $args[0].ID)) || (($Attendant != 0) && ($Attendant.ID == $args[0].ID)) || (($Madam != 0) || ($Madam.ID == $args[0].ID)) || (($DJ != 0) && ($DJ.ID == $args[0].ID)) || (($Milkmaid != 0) && ($Milkmaid.ID == $args[0].ID)) || (($Stewardess != 0 ) && ($Stewardess.ID == $args[0].ID)) || (($Schoolteacher != 0) && ($Schoolteacher.ID == $args[0].ID)) || (($Wardeness != 0) && ($Wardeness.ID == $args[0].ID))>> - <<set _exclude = true>> - <</if>> -<</if>> - -<<if !_exclude>> -<<switch _currentRule.assignFacility>> -<<case "hgsuite">> - <<if ($HGSuiteSlaves == 0) && ($args[0].indentureRestrictions <= 0) && ($args[0].assignment != "live with your Head Girl")>> - <br>$args[0].slaveName has been automatically assigned to live in your Head Girl's private suite. - <<if ($personalAttention == $args[0].ID)>> - $args[0].slaveName no longer has your personal attention; you plan to focus on business. - <</if>> - <<assignJob $args[0] _currentRule.assignFacility>> - <</if>> -<<case "arcade">> - <<if ($arcade > $arcadeSlaves) && ($args[0].indentureRestrictions <= 0) && ($args[0].assignment != "be confined in the arcade") && $args[0].breedingMark != 1>> - <br>$args[0].slaveName has been automatically assigned to be confined in $arcadeName. - <<if ($personalAttention == $args[0].ID)>> - $args[0].slaveName no longer has your personal attention; you plan to focus on business. - <</if>> - <<assignJob $args[0] _currentRule.assignFacility>> - <</if>> -<<case "mastersuite">> - <<if ($masterSuite > $masterSuiteSlaves) && ($args[0].devotion > 20) || (($args[0].devotion >= -50) && ($args[0].trust < -20)) || ($args[0].trust < -50)>> - <<if ($args[0].assignment != "serve in the master suite")>> - <br>$args[0].slaveName has been automatically assigned to $masterSuiteName. - <<if ($personalAttention == $args[0].ID)>> - $args[0].slaveName no longer has your personal attention; you plan to focus on business. - <</if>> - <<assignJob $args[0] _currentRule.assignFacility>> - <</if>> - <<else>> - <<if ($args[0].assignment == "serve in the master suite")>> - <<include "Rules Facility Remove">> - <</if>> - <</if>> -<<case "clinic">> - <<if ($clinic > $clinicSlaves) && ($args[0].health < 20) || (($Nurse != 0) && ($args[0].chem > 15) && ($clinicUpgradeFilters == 1)) || (($args[0].bellyImplant > 100) && ($bellyImplants == 1)) || $args[0].preg > 1>> - <<if ($args[0].assignment != "get treatment in the clinic")>> - <br>$args[0].slaveName has been automatically assigned to get treatment in $clinicName. - <<if ($personalAttention == $args[0].ID)>> - $args[0].slaveName no longer has your personal attention; you plan to focus on business. - <</if>> - <<assignJob $args[0] _currentRule.assignFacility>> - <</if>> - <<else>> - <<if ($args[0].assignment == "get treatment in the clinic")>> - <<include "Rules Facility Remove">> - <</if>> - <</if>> -<<case "spa">> - <<if ($spa > $spaSlaves) && ($args[0].health < 20) || ($args[0].trust < 60) || ($args[0].devotion <= 60) || ($args[0].fetish == "mindbroken") && ($args[0].devotion >= -20)>> - <<if ($args[0].assignment != "rest in the spa")>> - <br>$args[0].slaveName has been automatically assigned to rest in $spaName. - <<if ($personalAttention == $args[0].ID)>> - $args[0].slaveName no longer has your personal attention; you plan to focus on business. - <</if>> - <<assignJob $args[0] _currentRule.assignFacility>> - <</if>> - <<else>> - <<if ($args[0].assignment == "rest in the spa")>> - <<include "Rules Facility Remove">> - <</if>> - <</if>> -<<case "brothel">> - <<if ($brothel > $brothelSlaves) && ($args[0].devotion > 50) || (($args[0].devotion >= -50) && ($args[0].trust < -20)) || ($args[0].trust < -50) || ($args[0].trust > 50) && $args[0].breedingMark != 1>> - <<if ($args[0].assignment != "work in the brothel")>> - <br>$args[0].slaveName has been automatically assigned to work in $brothelName. - <<if ($personalAttention == $args[0].ID)>> - $args[0].slaveName no longer has your personal attention; you plan to focus on business. - <</if>> - <<assignJob $args[0] _currentRule.assignFacility>> - <</if>> - <<else>> - <<if ($args[0].assignment == "work in the brothel")>> - <<include "Rules Facility Remove">> - <</if>> - <</if>> -<<case "club">> - <<if ($club > $clubSlaves) && ($args[0].devotion > 50) || (($args[0].devotion >= -50) && ($args[0].trust < -20)) || ($args[0].trust < -50) || ($args[0].trust > 50) && $args[0].breedingMark != 1>> - <<if ($args[0].assignment != "serve in the club")>> - <br>$args[0].slaveName has been automatically assigned to serve in $clubName. - <<if ($personalAttention == $args[0].ID)>> - $args[0].slaveName no longer has your personal attention; you plan to focus on business. - <</if>> - <<assignJob $args[0] _currentRule.assignFacility>> - <</if>> - <<else>> - <<if ($args[0].assignment == "serve in the club")>> - <<include "Rules Facility Remove">> - <</if>> - <</if>> -<<case "dairy">> - <<if ($dairy > $dairySlaves+$bioreactorsXY+$bioreactorsXX+$bioreactorsHerm+$bioreactorsBarren)>> - <<if ($args[0].indentureRestrictions > 0) && ($dairyRestraintsSetting > 1)>> - <<elseif (($args[0].indentureRestrictions > 1) && ($dairyRestraintsSetting > 0)) || ($args[0].breedingMark == 1 && $dairyRestriantsSettings > 0) || (($dairyPregSetting > 0) && ((_Slave.bellyImplant != 0) || (_Slave.pregType >= 50)))>> - <<else>> - <<if ($args[0].lactation > 0) || ($args[0].balls > 0) || (($dairyFeedersUpgrade == 1) && ($dairyFeedersSetting > 0))>> - <<if ($args[0].devotion > 20) || (($args[0].devotion >= -50) && ($args[0].trust < -20)) || ($args[0].trust < -50) || ($args[0].amp == 1) || ($dairyRestraintsUpgrade == 1)>> - <<if ($dairyStimulatorsSetting < 2) || ($args[0].anus > 2) || ($dairyPrepUpgrade == 1)>> - <<if ($dairyPregSetting < 2) || ($args[0].vagina > 2) || ($args[0].ovaries == 0) || ($dairyPrepUpgrade == 1)>> - <<if ($args[0].assignment != "work in the dairy")>> - <br>$args[0].slaveName has been automatically assigned to be milked in $dairyName. - <<if ($personalAttention == $args[0].ID)>> - $args[0].slaveName no longer has your personal attention; you plan to focus on business. - <</if>> - <<assignJob $args[0] _currentRule.assignFacility>> - <</if>> - <<else>> - <<if ($args[0].assignment == "work in the dairy")>> - <<include "Rules Facility Remove">> - <</if>> - <</if>> - <<else>> - <<if ($args[0].assignment == "work in the dairy")>> - <<include "Rules Facility Remove">> - <</if>> - <</if>> - <<else>> - <<if ($args[0].assignment == "work in the dairy")>> - <<include "Rules Facility Remove">> - <</if>> - <</if>> - <<else>> - <<if ($args[0].assignment == "work in the dairy")>> - <<include "Rules Facility Remove">> - <</if>> - <</if>> - <</if>> - <</if>> -<<case "servantsquarters">> - <<if ($servantsQuarters > $servantsQuartersSlaves) && ($args[0].devotion >= -20) || (($args[0].devotion >= -50) && ($args[0].trust <= 20)) || ($args[0].trust < -20)>> - <<if ($args[0].assignment != "work as a servant")>> - <br>$args[0].slaveName has been automatically assigned to work in $servantsQuartersName. - <<if ($personalAttention == $args[0].ID)>> - $args[0].slaveName no longer has your personal attention; you plan to focus on business. - <</if>> - <<assignJob $args[0] _currentRule.assignFacility>> - <</if>> - <<else>> - <<if ($args[0].assignment == "work as a servant")>> - <<include "Rules Facility Remove">> - <</if>> - <</if>> -<<case "schoolroom">> - <<if ($schoolroom > $schoolroomSlaves) && ($args[0].fetish != "mindbroken") && ($args[0].devotion >= -20 || ($args[0].devotion >= -50 && $args[0].trust < -20) || $args[0].trust < -50)>> - <<if ($args[0].intelligenceImplant < 1) || ($args[0].voice != 0 && $args[0].accent+$schoolroomUpgradeLanguage > 2) || ($args[0].oralSkill <= 10+$schoolroomUpgradeSkills*20) || ($args[0].whoreSkill <= 10+$schoolroomUpgradeSkills*20) || ($args[0].entertainSkill <= 10+$schoolroomUpgradeSkills*20) || ($args[0].analSkill < 10+$schoolroomUpgradeSkills*20) || (($args[0].vagina >= 0) && ($args[0].vaginalSkill < 10+$schoolroomUpgradeSkills*20))>> - <<if ($args[0].assignment != "learn in the schoolroom")>> - <br>$args[0].slaveName has been automatically assigned to study in $schoolroomName. - <<if ($personalAttention == $args[0].ID)>> - $args[0].slaveName no longer has your personal attention; you plan to focus on business. - <</if>> - <<assignJob $args[0] _currentRule.assignFacility>> - <</if>> - <<else>> - <<if ($args[0].assignment == "learn in the schoolroom")>> - <<include "Rules Facility Remove">> - <</if>> - <</if>> - <<else>> - <<if ($args[0].assignment == "learn in the schoolroom")>> - <<include "Rules Facility Remove">> - <</if>> - <</if>> -<<case "cellblock">> - <<if ($cellblock > $cellblockSlaves ) && (($args[0].devotion < -20) && ($args[0].trust >= -20)) || (($args[0].devotion < -50) && ($args[0].trust >= -50))>> - <<if ($args[0].assignment != "be confined in the cellblock")>> - <br>$args[0].slaveName has been automatically assigned to be confined in $cellblockName. - <<if ($personalAttention == $args[0].ID)>> - $args[0].slaveName no longer has your personal attention; you plan to focus on business. - <</if>> - <<assignJob $args[0] _currentRule.assignFacility>> - <</if>> - <<else>> - <<if ($args[0].assignment == "be confined in the cellblock")>> - <<include "Rules Facility Remove">> - <</if>> - <</if>> -<</switch>> + <br>$args[0].slaveName has been branded, with @@.gold;fear@@<<if ($args[0].devotion < 18)>>, @@.mediumorchid;regard@@,<</if>> and @@.red;health@@ consequences. <</if>> - -<<if !_exclude>> -<<if _currentRule.setAssignment !== "none">> - <<if ($args[0].assignment !== _currentRule.setAssignment)>> - <br>$args[0].slaveName has been automatically assigned to _currentRule.setAssignment. - <<assignJob $args[0] _currentRule.setAssignment>> - <</if>> <</if>> <</if>> -<</for>> <</widget>> /% - Call as <<CheckAutoRulesActivate SlaveObject>> - Does not use or modify $currentRule -%/ + % Call as <<CheckAutoRulesActivate SlaveObject>> + % Does not use or modify $currentRule + %/ <<widget "CheckAutoRulesActivate">> <<if (ndef $args[0].currentRules) || ($args[0].currentRules.length < 1)>> <<set $args[0].currentRules = []>> <</if>> <<for _r = 0; _r < $defaultRules.length; _r++>> - <<set _currentRule = $defaultRules[_r], _rule = _r+1, _ruleAppliesToThisSlave = true>> /* starting assumption, to be tested below */ - - <<switch _currentRule.activation>> /* check activation conditions */ + <<set _currentRule = $defaultRules[_r], _rule = _r+1>> /* starting assumption, to be tested below */ - <<case "custom">> /* for betterRA */ - <<set State.variables._parseFailed = _currentRule.customActivationText>> - <<script>> - try { if (parseAndEvaluate(State.variables._parseFailed, State.variables.args[0])) { State.variables._parseFailed = -1; } - } catch (e) { throwError("Failed to parse a custom rule. Check your custom rules in the Rules Assistant options."); } - <</script>> - <<if State.variables._parseFailed != -1>> - <<set _ruleAppliesToThisSlave = false>> - <</if>> - <<case "always">> - /* _ruleAppliesToThisSlave remains true, but still need to pass inclusion/exclusion checks below */ - <<case "none">> - <<set _ruleAppliesToThisSlave = false>> - <<case "devotion">> - <<if !checkThresholds($args[0].devotion, _currentRule)>> - <<set _ruleAppliesToThisSlave = false>> - <</if>> - <<case "trust">> - <<if !checkThresholds($args[0].trust, _currentRule)>> - <<set _ruleAppliesToThisSlave = false>> - <</if>> - <<case "health">> - <<if !checkThresholds($args[0].health, _currentRule)>> - <<set _ruleAppliesToThisSlave = false>> - <</if>> - <<case "sex drive">> /* rule can only be applied if slave's sexuality is known */ - <<if ($args[0].attrKnown == 0) || !checkThresholds($args[0].energy, _currentRule)>> - <<set _ruleAppliesToThisSlave = false>> - <</if>> - <<case "age">> - <<if !checkThresholds($args[0].physicalAge, _currentRule)>> - <<set _ruleAppliesToThisSlave = false>> - <</if>> - <<case "weight">> - <<if !checkThresholds($args[0].weight, _currentRule)>> - <<set _ruleAppliesToThisSlave = false>> - <</if>> - <<case "lactation">> - <<if !checkThresholds($args[0].lactation, _currentRule)>> - <<set _ruleAppliesToThisSlave = false>> - <</if>> - <<case "pregnancy week">> - <<if !checkThresholds($args[0].preg, _currentRule)>> - <<set _ruleAppliesToThisSlave = false>> - <</if>> - <<case "pregnancy foetuses">> /* pregnancy only becomes visible after tenth week */ - <<if $args[0].preg <= 10 || !checkThresholds($args[0].pregType, _currentRule)>> - <<set _ruleAppliesToThisSlave = false>> - <</if>> - <<case "belly implant volume">> - <<if !checkThresholds($args[0].bellyImplant, _currentRule)>> - <<set _ruleAppliesToThisSlave = false>> - <</if>> - <</switch>> /* closes activation condition checks */ + <<set _ruleAppliesToThisSlave = evalExpr(_currentRule.condition, $args[0])>> <<if _ruleAppliesToThisSlave == true>> /* passed activation conditions check - next check inclusion/exclusion rules */ <<if (def _currentRule.excludedSlaves && _currentRule.excludedSlaves.length > 0 && ruleSlaveExcluded($args[0], _currentRule))