From f61555076b56bbd061edd9a5e6c16646a08ac2b4 Mon Sep 17 00:00:00 2001 From: Vas <whiterocket@outlook.com> Date: Tue, 3 Jul 2018 19:51:10 +0300 Subject: [PATCH] more user-control on drugs, and fix file permissions --- compile | 0 devTools/AutoGitVersionUploadBackground.sh | 0 devTools/AutoGitVersionUploadForground.sh | 0 devTools/BuildAndIPFSify.sh | 0 devTools/check.py | 0 devTools/embed_favicon.py | 0 devTools/tweeGo/tweego_nix64 | Bin devTools/tweeGo/tweego_nix86 | Bin devTools/tweeGo/tweego_osx64 | Bin devTools/tweeGo/tweego_osx86 | Bin src/js/DefaultRules.tw | 176 ++++++++++++++++----- src/js/rulesAssistantOptions.tw | 23 ++- src/uncategorized/main.tw | 2 +- 13 files changed, 159 insertions(+), 42 deletions(-) mode change 100644 => 100755 compile mode change 100644 => 100755 devTools/AutoGitVersionUploadBackground.sh mode change 100644 => 100755 devTools/AutoGitVersionUploadForground.sh mode change 100644 => 100755 devTools/BuildAndIPFSify.sh mode change 100644 => 100755 devTools/check.py mode change 100644 => 100755 devTools/embed_favicon.py mode change 100644 => 100755 devTools/tweeGo/tweego_nix64 mode change 100644 => 100755 devTools/tweeGo/tweego_nix86 mode change 100644 => 100755 devTools/tweeGo/tweego_osx64 mode change 100644 => 100755 devTools/tweeGo/tweego_osx86 diff --git a/compile b/compile old mode 100644 new mode 100755 diff --git a/devTools/AutoGitVersionUploadBackground.sh b/devTools/AutoGitVersionUploadBackground.sh old mode 100644 new mode 100755 diff --git a/devTools/AutoGitVersionUploadForground.sh b/devTools/AutoGitVersionUploadForground.sh old mode 100644 new mode 100755 diff --git a/devTools/BuildAndIPFSify.sh b/devTools/BuildAndIPFSify.sh old mode 100644 new mode 100755 diff --git a/devTools/check.py b/devTools/check.py old mode 100644 new mode 100755 diff --git a/devTools/embed_favicon.py b/devTools/embed_favicon.py old mode 100644 new mode 100755 diff --git a/devTools/tweeGo/tweego_nix64 b/devTools/tweeGo/tweego_nix64 old mode 100644 new mode 100755 diff --git a/devTools/tweeGo/tweego_nix86 b/devTools/tweeGo/tweego_nix86 old mode 100644 new mode 100755 diff --git a/devTools/tweeGo/tweego_osx64 b/devTools/tweeGo/tweego_osx64 old mode 100644 new mode 100755 diff --git a/devTools/tweeGo/tweego_osx86 b/devTools/tweeGo/tweego_osx86 old mode 100644 new mode 100755 diff --git a/src/js/DefaultRules.tw b/src/js/DefaultRules.tw index de4842da3e7..773f3c3076a 100644 --- a/src/js/DefaultRules.tw +++ b/src/js/DefaultRules.tw @@ -58,8 +58,8 @@ window.DefaultRules = (function() { function MergeRules(slave) { // merge all rules applying on a slave into one big rule - const rules = V.defaultRules.filter(x => ruleAppliesP(x.condition, slave)) - slave.currentRules = rules.map(x => x.ID) + const rules = V.defaultRules.filter(x => ruleAppliesP(x.condition, slave)); + slave.currentRules = rules.map(x => x.ID); return mergeRules(rules.map(x => ProcessAssignments(slave, Object.assign({}, x.set)))); } @@ -1098,62 +1098,158 @@ window.DefaultRules = (function() { function ProcessOtherDrugs(slave, rule) { // Other Drugs - if (rule.drug !== "no default setting" && slave.drugs !== rule.drug) { + if (slave.indentureRestrictions < 2 && rule.drug !== "no default setting" && slave.drugs !== rule.drug) { + let flag = true; switch (rule.drug) { case "anti-aging cream": - if (slave.visualAge > 18) { - slave.drugs = rule.drug ; - r += `<br>${slave.slaveName} has been put on ${slave.drugs}.`; - } else { - slave.drugs = "no drugs" ; - r += `<br>${slave.slaveName} cannot benefit from her assigned drug and has been defaulted to ${slave.drugs}.`; - } + if (slave.visualAge < 18) + flag = false; break; case "growth stimulants": - if (slave.height < 274 && slave.height < Math.clamp((Height.mean(slave) * 1.25),0,274)) { - slave.drugs = rule.drug; - r += `<br>${slave.slaveName} has been put on ${slave.drugs}.`; - } else { - slave.drugs = "no drugs"; - r += `<br>${slave.slaveName} cannot benefit from her assigned drug and has been defaulted to ${slave.drugs}.`; - } + if (!(slave.height < 274 && slave.height < Math.clamp((Height.mean(slave) * 1.25),0,274))) + flag = false; break; case "sag-B-gone": - if (slave.boobs > 250 && slave.boobShape != "saggy") { - slave.drugs = rule.drug; - r += `<br>${slave.slaveName} has been put on ${slave.drugs}.`; - } else { - slave.drugs = "no drugs"; - r += `<br>${slave.slaveName} cannot benefit from her assigned drug and has been defaulted to ${slave.drugs}.`; - } + if (!(slave.boobs > 250 && slave.boobShape != "saggy")) + flag = false; break; case "female hormone injections": - if (slave.breedingMark != 1 && (slave.ovaries == 1 || slave.mpreg == 1) && slave.pubertyXX === 0) { - slave.drugs = rule.drug ; - r += `<br>${slave.slaveName} has been put on ${slave.drugs}.`; - } else { - slave.drugs = "no drugs"; - r += `<br>${slave.slaveName} cannot benefit from her assigned drug and has been defaulted to ${slave.drugs}.`; - } + if (!(slave.breedingMark != 1 && (slave.ovaries == 1 || slave.mpreg == 1) && slave.pubertyXX === 0)) + flag = false; break; case "male hormone injections": - if (slave.breedingMark != 1 && slave.balls > 0 && slave.pubertyXY === 0) { - slave.drugs = rule.drug ; - r += `<br>${slave.slaveName} has been put on ${slave.drugs}.`; - } else { - slave.drugs = "no drugs"; - r += `<br>${slave.slaveName} cannot benefit from her assigned drug and has been defaulted to ${slave.drugs}.`; - } + if (!(slave.breedingMark != 1 && slave.balls > 0 && slave.pubertyXY === 0)) + flag = false; break; - + + case "psychosuppressants": + if (!(slave.intelligence > -2 && slave.indentureRestrictions < 1)) + flag = false; + break; + + case "breast injections": + if (!(slave.boobs < 48000)) + flag = false; + break; + + case "hyper breast injections": + if (!(slave.boobs < 25000)) + flag = false; + break; + + case "breast redistributors": + if (!(slave.boobs - slave.boobsImplant > 100)) + flag = false; + break; + + case "butt injections": + if (!(slave.butt < 9)) + flag = false; + break; + + case "hyper butt injections": + if (!(slave.butt < 20)) + flag = false; + break; + + case "hyper butt injections": + if (!(slave.butt < 20)) + flag = false; + break; + + case "nipple atrophiers": + if (!(["huge", "puffy", "cute"].includes(slave.nipples))) + flag = false; + break; + + case "butt redistributors": + if (!(slave.buttImplant > 0)) + flag = false; + break; + + case "lip injections": + if (!(slave.lips <= 95 || (slave.lips <= 85 && V.seeExtreme !== 1))) + flag = false; + break; + + case "lip atrophiers": + if (!(slave.lips - slave.lipsImplant > 0)) + flag = false; + break; + + case "super fertility drugs": + if (!(slave.indentureRestrictions < 1 && slave.breedingMark !== 1)) + flag = false; + break; + + case "penis enhancement": + if (!((slave.dick > 0 && slave.dick < 10) || slave.clit < 5)) + flag = false; + break; + + case "hyper penis enhancement": + if (!((slave.dick > 0 && slave.dick < 31) || slave.clit < 5)) + flag = false; + break; + + case "penis atrophiers": + if (!(slave.dick > 1)) + flag = false; + break; + + case "testicle enhancement": + if (!(slave.balls > 0)) + flag = false; + break; + + case "hyper testicle enhancement": + if (!(slave.balls > 0)) + flag = false; + break; + + case "testicle atrophiers": + if (!(slave.balls > 1)) + flag = false; + break; + + case "clitoris atrophiers": + if (!(slave.clit > 0)) + flag = false; + break; + + case "labia atrophiers": + if (!(slave.labia > 0)) + flag = false; + break; + + case "appetite suppressors": + if (!(slave.weight > -95)) + flag = false; + break; + + case "female hormone injections": + if (!(slave.breedingMark !== 1 && (slave.ovaries === 1 || slave.mpreg === 1) && slave.pubertyXX === 0)) + flag = false; + break; + + case "male hormone injections": + if (!(slave.balls > 0 && slave.pubertyXY === 0)) + flag = false; + break; + default: + break; + } + if (flag) { slave.drugs = rule.drug; r += `<br>${slave.slaveName} has been put on ${slave.drugs}.`; - break; + } else { + slave.drugs = "no drugs"; + r += `<br>${slave.slaveName} cannot benefit from her assigned drug and has been defaulted to ${slave.drugs}`; } } } diff --git a/src/js/rulesAssistantOptions.tw b/src/js/rulesAssistantOptions.tw index ca647c40fe7..7a2eed45734 100644 --- a/src/js/rulesAssistantOptions.tw +++ b/src/js/rulesAssistantOptions.tw @@ -1606,6 +1606,15 @@ window.rulesAssistantOptions = (function() { ["Steroids", "steroids"], ["Natural hormone enhancers", "hormone enhancers"], ["Hormone blockers", "hormone blockers"], + ["breast injections"], + ["intensive breast injections"], + ["butt injections"], + ["intensive butt injections"], + ["lip injections"], + ["penis enhancement"], + ["intensive penis enhancement"], + ["testicle enhancement"], + ["intensive testicle enhancement"], ]; if (V.growthStim === 1) @@ -1616,8 +1625,20 @@ window.rulesAssistantOptions = (function() { } if (V.purchasedSagBGone === 1) drugs.push(["Sag-B-gone (Product)", "sag-B-gone"]); - if (V.arcologies[0].FSSlimnessEnthusiastResearch === 1) + if (V.arcologies[0].FSSlimnessEnthusiastResearch === 1) { drugs.push(["Weight loss pills (FS)", "appetite suppressors"]); + drugs.push(["breast redistributors"]); + drugs.push(["butt redistributors"]); + drugs.push(["lip atrophiers"]); + drugs.push(["penis atrophiers"]); + drugs.push(["testicle atrophiers"]); + } + if (V.arcologies[0].FSAssetExpansionistResearch === 1) { + drugs.push(["hyper breast injections"]); + drugs.push(["hyper butt injections"]); + drugs.push(["hyper penis enhancement"]); + drugs.push(["hyper testicle enhancement"]); + } if (V.arcologies[0].FSYouthPreferentialistResearch === 1) drugs.push(["Anti-aging cream (FS)", "anti-aging cream"]); if (V.seeHyperPreg === 1 && V.superFertilityDrugs === 1) diff --git a/src/uncategorized/main.tw b/src/uncategorized/main.tw index ff8988ca941..9ff5815ced9 100644 --- a/src/uncategorized/main.tw +++ b/src/uncategorized/main.tw @@ -14,7 +14,7 @@ ''@@.red;INCOMPATIBLE SAVE WARNING:@@'' your saved game was created using version $ver and you are using later version which New Game Plus cannot reconcile. Please start a new game. <br><br> <</if>> -<<if $defaultRules.length > 0 && $defaultRules[0].condition == undefined>> +<<if $defaultRules.length > 0 && ($defaultRules[0].condition == undefined || $defaultRules[0].set == undefined)>> ''@@.red;INCOMPATIBILITY WARNING:@@'' the rules assistant format has changed. In the Options Menu, please ''Reset RA Rules'' <</if>> -- GitLab