diff --git a/devTools/FC.d.ts b/devTools/FC.d.ts index 57cfd50b8e97ffcaeda1de83772e646325255930..fe3cc903d631966127416c4d0829d5df7d3d888f 100644 --- a/devTools/FC.d.ts +++ b/devTools/FC.d.ts @@ -77,6 +77,8 @@ declare namespace App { vasectomy: boolean; bellyImplant: string; tummy: number; + earShape: number; + horn: number; } class RuleGrowthSetters { @@ -195,6 +197,7 @@ declare namespace App { inflationType: string; brandTarget: string; brandDesign: string; + hornColor: string; } class Rule { diff --git a/devTools/PreCompile.sh b/devTools/PreCompile.sh index f359b36269fa495617837b45b93d10cbbd9f38d2..00c65c70264e08b5ec35d89303e86f26a2d50ee6 100755 --- a/devTools/PreCompile.sh +++ b/devTools/PreCompile.sh @@ -1,12 +1,12 @@ -#!/bin/sh -mega-login $1 $2;echo 'New clone? 0:y 1:n 2:na';read Opt #U=$1 P=$2 rDir=$3 lDir=$4 repo=$5 Reqs:MEGAcmd,git -while true;do cd $4;gen=0 - if [[ $Opt == 0 ]];then - mkdir -p $4&&git clone -q --depth 1 $5 $4&&cd $4 - if [[ ! `mega-ls $3|cut -c29-32|paste -sd,` =~ `git log|head -1|cut -c8-11` ]];then gen=1;fi #stackoverflow.com/a/15394738 - elif [[ $Opt > 0||$gen < 1 ]];then - git fetch -q - if [ `git rev-list ..origin|wc -l` -gt 0 ];then gen=1&&git pull -q;fi #stackoverflow.com/a/17192101 +#!/bin/ksh +mega-login $1 $2 #U=$1 P=$2 rDir=$3 lDir=$4 repo=$5 Reqs:MEGAcmd,git +while true;do gen=0;cd $4; + if [[ `echo $?` -gt 0 ]];then mkdir -p $4&&git clone -q --depth 1 $5 $4&&cd $4 + if [[ ! `mega-ls $3|cut -c21-24|paste -sd,` =~ `git log|head -1|cut -c8-11` ]];then gen=1;fi #stackoverflow.com/a/15394738 fi - if [[ $Opt > 1||$gen > 0 ]];then rm bin/*;./compile.sh -q&&cd bin/&&mv *.h* FC-`git log -1 --format=%cd --date=format:%m-%d-%Y-%H-%M`-`git log|head -1|cut -c8-11`.html&&mega-put -c *.h* $3&&mega-rm $3`mega-ls GitFC/|head -n 1`;fi -Opt=-1;clear;sleep 15m;done \ No newline at end of file + git fetch -q && if [ `git rev-list ...origin|wc -l` -gt 0 ];then git pull -q&&gen=1;fi #stackoverflow.com/a/17192101 + if [[ $gen > 0 ]];then rm bin/*;./compile.sh -q&&cd bin/ + mv *.h* FC-`git log -1 --format=%cd --date=format:%m-%d-%Y-%H-%M`-`git log|head -1|cut -c8-11`.html + mega-put -c *.h* $3&&mega-rm $3`mega-ls GitFC/|head -n 1` + fi +clear;sleep 15m;done \ No newline at end of file diff --git a/src/SecExp/secExpOptions.tw b/src/SecExp/secExpOptions.tw deleted file mode 100644 index 6f2e3cf1cda1e05803a6cdff82ba01392da828f9..0000000000000000000000000000000000000000 --- a/src/SecExp/secExpOptions.tw +++ /dev/null @@ -1,544 +0,0 @@ -:: secExpOptions [nobr] - -<<set $showEncyclopedia = 1, $encyclopedia = "Security Expansion", $nextButton = "Back to Options", $nextLink = "Options">> - -__Battles__: -<<if $terrain != "oceanic">> - <br><<if $battlesEnabled == 0>> - Battles are @@.red;DISABLED.@@ - <<link "Enable battles" "secExpOptions">> - <<set $battlesEnabled = 1>> - <</link>> - <<else>> - Battles are @@.cyan;ENABLED.@@ - <<link "Disable battles" "secExpOptions">> - <<set $battlesEnabled = 0>> - <</link>> - <</if>> - <br> //Enable/disable battles.// - <<if $battlesEnabled == 1>> - <br> - <<if $majorBattlesEnabled == 0>> - Major battles are @@.red;DISABLED.@@ - <<link "Enable major battles" "secExpOptions">> - <<set $majorBattlesEnabled = 1>> - <<set $battlesEnabled = 1>> - <</link>> - <<else>> - Major battles are @@.cyan;ENABLED.@@ - <<link "Disable major battles" "secExpOptions">> - <<set $majorBattlesEnabled = 0>> - <</link>> - <</if>> - <br> //Enable/disable late game large scale battles.// - <br> - <<if $majorBattleGameOver == 0>> - Major battles @@.red;CAN NOT@@ cause gameovers. - <<link "Activate game loss in case of major battle defeat" "secExpOptions">> - <<set $majorBattleGameOver = 1>> - <</link>> - <<else>> - Major battles @@.cyan;CAN@@ cause gameovers. - <<link "Deactivate game loss in case of major battle defeat" "secExpOptions">> - <<set $majorBattleGameOver = 0>> - <</link>> - <</if>> - <br> //By default a total defeat in a major battle will cause a gameover.// - <br> - <<if $forceBattle == 0>> - Battle guaranteed this week is @@.red;FALSE.@@ - <<link "Force engagement every week" "secExpOptions">> - <<set $forceBattle = 1>> - <</link>> - - <<else>> - Battle guaranteed this week is @@.cyan;TRUE.@@ - <<link "Do not force engagement every week" "secExpOptions">> - <<set $forceBattle = 0>> - <<set $forceMajorBattle = 0>> - <</link>> - <</if>> - <br> //Will force battles to happen every week.// - <br> - <<if $forceMajorBattle == 0>> - Major battle guaranteed this week is @@.red;FALSE.@@ - <<link "Force major engagement every week" "secExpOptions">> - <<set $forceMajorBattle = 1>> - <<set $forceBattle = 1>> - <</link>> - <<else>> - Major battle guaranteed this week is @@.cyan;TRUE.@@ - <<link "Do not force major engagement every week" "secExpOptions">> - <<set $forceMajorBattle = 0>> - <</link>> - <</if>> - <br> //Will force major battles to happen every week. // - <</if>> -<<else>> - <br>Oceanic arcologies are not by default subject to external attacks. You can however allow them to happen anyway. If you choose to do so please keep in mind that descriptions and mechanics are not intended for naval combat but land combat. - <br> - <<if $battlesEnabled == 0>> - Battles are @@.red;DISABLED.@@ - <<link "Enable battles" "secExpOptions">> - <<set $battlesEnabled = 1>> - <</link>> - <<else>> - Battles are @@.cyan;ENABLED.@@ - <<link "Disable battles" "secExpOptions">> - <<set $battlesEnabled = 0>> - <</link>> - <</if>> - <br> //Enable/disable battles.// - <<if $battlesEnabled == 1>> - <br> - <<if $majorBattlesEnabled == 0>> - Major battles are @@.red;DISABLED.@@ - <<link "Enable major battles" "secExpOptions">> - <<set $majorBattlesEnabled = 1>> - <<set $battlesEnabled = 1>> - <</link>> - <<else>> - Major battles are @@.cyan;ENABLED.@@ - <<link "Disable major battles" "secExpOptions">> - <<set $majorBattlesEnabled = 0>> - <</link>> - <</if>> - <br> //Enable/disable late game large scale battles.// - <br> - <<if $majorBattleGameOver == 0>> - Major battles can cause gameover is @@.red;FALSE.@@ - <<link "Activate game loss in case of major battle defeat" "secExpOptions">> - <<set $majorBattleGameOver = 1>> - <</link>> - <<else>> - Major battles can cause gameover is @@.cyan;TRUE.@@ - <<link "Deactivate game loss in case of major battle defeat" "secExpOptions">> - <<set $majorBattleGameOver = 0>> - <</link>> - <</if>> - <br> //By default a total defeat in a major battle will cause a gameover.// - <br> - <<if $forceBattle == 0>> - Battle guaranteed this week is @@.red;FALSE.@@ - <<link "Force engagement every week" "secExpOptions">> - <<set $forceBattle = 1>> - <</link>> - <<else>> - Battle guaranteed this week is @@.cyan;TRUE.@@ - <<link "Do not force engagement every week" "secExpOptions">> - <<set $forceBattle = 0>> - <</link>> - <</if>> - <br> //Will force battles to happen every week.// - <br> - <<if $forceMajorBattle == 0>> - Major battle guaranteed this week is @@.red;FALSE.@@ - <<link "Force major engagement every week" "secExpOptions">> - <<set $forceMajorBattle = 1>> - <<set $forceBattle = 1>> - <</link>> - <<else>> - Major battle guaranteed this week is @@.cyan;TRUE.@@ - <<link "Do not force major engagement every week" "secExpOptions">> - <<set $forceMajorBattle = 0>> - <</link>> - <</if>> - <br> //Will force major battles to happen every week. // - <</if>> -<</if>> -<br> -<br> -__Rebellions__: - <br> - <<if $rebellionsEnabled == 0>> - Rebellions are @@.red;DISABLED.@@ - <<link "Enable rebellions" "secExpOptions">> - <<set $rebellionsEnabled = 1>> - <</link>> - <<else>> - Rebellions are @@.cyan;ENABLED.@@ - <<link "Disable rebellions" "secExpOptions">> - <<set $rebellionsEnabled = 0>> - <</link>> - <</if>> - <br> //Enable/disable rebellions.// - <br> - <<if $rebellionsEnabled == 1>> - <<if $rebellionGameOver == 0>> - Rebellions can cause gameover is @@.red;FALSE.@@ - <<link "Activate game loss in case of rebellions succeeding" "secExpOptions">> - <<set $rebellionGameOver = 1>> - <</link>> - <<elseif $rebellionGameOver == 1>> - Rebellions can cause gameover is @@.cyan;TRUE.@@ - <<link "Deactivate game loss in case of rebellions succeeding" "secExpOptions">> - <<set $rebellionGameOver = 0>> - <</link>> - <</if>> - <br> //Determines whether a total defeat in a rebellion will cause a gameover.// - <br> - <<if $forceRebellion == 0>> - Rebellions guaranteed this week is @@.red;FALSE.@@ - <<link "Force engagement every week" "secExpOptions">> - <<set $forceRebellion = 1>> - <</link>> - <<else>> - Rebellions guaranteed this week is @@.cyan;TRUE.@@ - <<link "Do not force engagement every week" "secExpOptions">> - <<set $forceRebellion = 0>> - <</link>> - <</if>> - <br> //Will force rebellions to happen every week. Rebellions will take precedence over battles.// - <</if>> - -<<if $showBattleStatistics == 0 &&($battlesEnabled == 1 || $rebellionsEnabled == 1)>> - <br> - <br> - Detailed battle statistics are @@.red;HIDDEN.@@ - <<link "Enable detailed battle statistics" "secExpOptions">> - <<set $showBattleStatistics = 1>> - <</link>> - <br> //Will show detailed statistics and battle turns.// - <br><br> -<<elseif ($battlesEnabled == 1 || $rebellionsEnabled == 1)>> - <br> - <br> - Detailed battle statistics are @@.cyan;SHOWN.@@ - <<link "Disable detailed battle statistics" "secExpOptions">> - <<set $showBattleStatistics = 0>> - <</link>> - <br> //Will show detailed statistics and battle turns.// -<</if>> - -<<if $allowPrestigeFromBattles == 0 && $battlesEnabled == 1>> - <br> - <br> - Battles can give prestige to slaves is @@.red;DISABLED.@@ - <<link "enable prestige from battles for slaves" "secExpOptions">> - <<set $allowPrestigeFromBattles = 1>> - <</link>> - <br> //If enabled, slaves will gain a rank of prestige for every 10 victories scored under their command.// - <br><br> -<<elseif $battlesEnabled == 1>> - <br> - <br> - Battles can give prestige to slaves is @@.cyan;ENABLED.@@ - <<link "Disable prestige from battles for slaves" "secExpOptions">> - <<set $allowPrestigeFromBattles = 0>> - <</link>> - <br> //If enabled, slaves will gain a rank of prestige for every 10 victories scored under their command.// -<</if>> - -<br> -<br> - -__Battles/Rebellions Difficulty__: -<br>Difficulty is set to:<span id="difficulty"> -<<if $difficulty == 0.5>> - @@.green;Very easy@@ -<<elseif $difficulty == 0.75>> - @@.limegreen;Easy@@ -<<elseif $difficulty == 1>> - @@.yellow;Normal@@ -<<elseif $difficulty == 1.25>> - @@.red;Hard@@ -<<else>> - @@.darkred;Very hard@@ -<</if>> -</span> -<br> -<<link "Very easy">> - <<set $difficulty = 0.5>> - <<replace "#difficulty">> - @@.green;Very easy@@ - <</replace>> -<</link>> -| <<link "Easy">> - <<set $difficulty = 0.75>> - <<replace "#difficulty">> - @@.limegreen;Easy@@ - <</replace>> -<</link>> -| <<link "Normal">> - <<set $difficulty = 1>> - <<replace "#difficulty">> - @@.yellow;Normal@@ - <</replace>> -<</link>> -| <<link "Hard">> - <<set $difficulty = 1.25>> - <<replace "#difficulty">> - @@.red;Hard@@ - <</replace>> -<</link>> -| <<link "Very hard">> - <<set $difficulty = 1.5>> - <<replace "#difficulty">> - @@.darkred;Very hard@@ - <</replace>> -<</link>> -<br> -<br> -__Battles frequency__: -<br>Battle frequency is set to:<span id="battleFrequency"> -<<if $battleFrequency == 0.5>> - @@.green;Very infrequent@@ -<<elseif $battleFrequency == 0.75>> - @@.limegreen;Infrequent@@ -<<elseif $battleFrequency == 1>> - @@.yellow;Normal@@ -<<elseif $battleFrequency == 1.25>> - @@.red;Frequent@@ -<<else>> - @@.darkred;Very frequent@@ -<</if>> -</span> -<br> -<<link "Very infrequent">> - <<set $battleFrequency = 0.5>> - <<replace "#battleFrequency">> - @@.green;Very infrequent@@ - <</replace>> -<</link>> -| <<link "Infrequent">> - <<set $battleFrequency = 0.75>> - <<replace "#battleFrequency">> - @@.limegreen;Infrequent@@ - <</replace>> -<</link>> -| <<link "Normal">> - <<set $battleFrequency = 1>> - <<replace "#battleFrequency">> - @@.yellow;Normal@@ - <</replace>> -<</link>> -| <<link "Frequent">> - <<set $battleFrequency = 1.25>> - <<replace "#battleFrequency">> - @@.red;Frequent@@ - <</replace>> -<</link>> -| <<link "Very frequent">> - <<set $battleFrequency = 1.5>> - <<replace "#battleFrequency">> - @@.darkred;Very frequent@@ - <</replace>> -<</link>> -<br> -<br> -__Major battle multiplier__: -<br>Major battle multiplier is set to:<span id="majorBattleMult"> -<<if $majorBattleMult == 0.5>> - @@.green;Very low@@ -<<elseif $majorBattleMult == 0.75>> - @@.limegreen;Low@@ -<<elseif $majorBattleMult == 1>> - @@.yellow;Normal@@ -<<elseif $majorBattleMult == 1.25>> - @@.red;high@@ -<<else>> - @@.darkred;Very high@@ -<</if>> -</span> -<br> -<<link "Very low">> - <<set $majorBattleMult = 0.5>> - <<replace "#majorBattleMult">> - @@.green;Very low@@ - <</replace>> -<</link>> -| <<link "Low">> - <<set $majorBattleMult = 0.75>> - <<replace "#majorBattleMult">> - @@.limegreen;Low@@ - <</replace>> -<</link>> -| <<link "Normal">> - <<set $majorBattleMult = 1>> - <<replace "#majorBattleMult">> - @@.yellow;Normal@@ - <</replace>> -<</link>> -| <<link "High">> - <<set $majorBattleMult = 1.25>> - <<replace "#majorBattleMult">> - @@.red;High@@ - <</replace>> -<</link>> -| <<link "Very high">> - <<set $majorBattleMult = 1.5>> - <<replace "#majorBattleMult">> - @@.darkred;Very high@@ - <</replace>> -<</link>> -<br> -<br> -__Rebellions buildup speed__: -<br>Rebellion speed is set to:<span id="rebellionSpeed"> -<<if $rebellionSpeed == 0.5>> - @@.green;Very slow@@ -<<elseif $rebellionSpeed == 0.75>> - @@.limegreen;Slow@@ -<<elseif $rebellionSpeed == 1>> - @@.yellow;Normal@@ -<<elseif $rebellionSpeed == 1.25>> - @@.red;Fast@@ -<<else>> - @@.darkred;Very fast@@ -<</if>> -</span> -<br> -<<link "Very slow">> - <<set $rebellionSpeed = 0.5>> - <<replace "#rebellionSpeed">> - @@.green;Very slow@@ - <</replace>> -<</link>> -| <<link "Slow">> - <<set $rebellionSpeed = 0.75>> - <<replace "#rebellionSpeed">> - @@.limegreen;Slow@@ - <</replace>> -<</link>> -| <<link "Normal">> - <<set $rebellionSpeed = 1>> - <<replace "#rebellionSpeed">> - @@.yellow;Normal@@ - <</replace>> -<</link>> -| <<link "Fast">> - <<set $rebellionSpeed = 1.25>> - <<replace "#rebellionSpeed">> - @@.red;Fast@@ - <</replace>> -<</link>> -| <<link "Very fast">> - <<set $rebellionSpeed = 1.5>> - <<replace "#rebellionSpeed">> - @@.darkred;Very fast@@ - <</replace>> -<</link>> - - -<br> -<br> - -__Debug/cheats:__ -<<run MenialPopCap()>> -<br> -<<link "Set loyalty high" "secExpOptions">> - <<for _i = 0; _i < $militiaUnits.length; _i++>> - <<set $militiaUnits[_i].loyalty = random(80,100)>> - <</for>> - - <<for _i = 0; _i < $slaveUnits.length; _i++>> - <<set $slaveUnits[_i].loyalty = random(80,100)>> - <</for>> - - <<for _i = 0; _i < $mercUnits.length; _i++>> - <<set $mercUnits[_i].loyalty = random(80,100)>> - <</for>> -<</link>> -| <<link "Set loyalty average" "secExpOptions">> - <<for _i = 0; _i < $militiaUnits.length; _i++>> - <<set $militiaUnits[_i].loyalty = random(40,60)>> - <</for>> - - <<for _i = 0; _i < $slaveUnits.length; _i++>> - <<set $slaveUnits[_i].loyalty = random(40,60)>> - <</for>> - - <<for _i = 0; _i < $mercUnits.length; _i++>> - <<set $mercUnits[_i].loyalty = random(40,60)>> - <</for>> -<</link>> -| <<link "Set loyalty low" "secExpOptions">> - <<for _i = 0; _i < $militiaUnits.length; _i++>> - <<set $militiaUnits[_i].loyalty = random(20)>> - <</for>> - - <<for _i = 0; _i < $slaveUnits.length; _i++>> - <<set $slaveUnits[_i].loyalty = random(20)>> - <</for>> - - <<for _i = 0; _i < $mercUnits.length; _i++>> - <<set $mercUnits[_i].loyalty = random(20)>> - <</for>> -<</link>> -| <<link "Randomize loyalty" "secExpOptions">> - <<for _i = 0; _i < $militiaUnits.length; _i++>> - <<set $militiaUnits[_i].loyalty = random(100)>> - <</for>> - - <<for _i = 0; _i < $slaveUnits.length; _i++>> - <<set $slaveUnits[_i].loyalty = random(100)>> - <</for>> - - <<for _i = 0; _i < $mercUnits.length; _i++>> - <<set $mercUnits[_i].loyalty = random(100)>> - <</for>> -<</link>> -<br><<link "Give Authority" "secExpOptions">> - <<set $authority = Math.clamp($authority + 1000, 0, 20000)>> -<</link>> -| <<link "Remove Authority" "secExpOptions">> - <<set $authority = Math.clamp($authority - 1000, 0, 20000)>> -<</link>> -<br><<link "Raise security" "secExpOptions">> - <<set $security = Math.clamp($security + 5, 0, 100)>> -<</link>> -| <<link "Lower security" "secExpOptions">> - <<set $security = Math.clamp($security - 5, 0, 100)>> -<</link>> -<br><<link "Raise crime" "secExpOptions">> - <<set $crime = Math.clamp($crime + 5, 0, 100)>> -<</link>> -| <<link "Lower crime" "secExpOptions">> - <<set $crime = Math.clamp($crime - 5, 0, 100)>> -<</link>> -<br><<link "Give menial slaves" "secExpOptions">> - <<set $menials = Math.clamp($menials + 30, 0, $PopCap)>> -<</link>> -| <<link "Remove menial slaves" "secExpOptions">> - <<set $menials = Math.clamp($menials - 30, 0, $PopCap)>> -<</link>> -<br><<link "Give militia manpower" "secExpOptions">> - <<set $militiaFreeManpower += 30>> - <<recalcManpower>> -<</link>> -| <<link "Remove militia manpower" "secExpOptions">> - <<set $militiaFreeManpower = Math.clamp($militiaFreeManpower - 30, 0, $militiaFreeManpower)>> - <<recalcManpower>> -<</link>> -<br><<link "Give mercs manpower" "secExpOptions">> - <<set $mercFreeManpower += 30>> - <<recalcManpower>> -<</link>> -| <<link "Remove mercs manpower" "secExpOptions">> - <<set $mercFreeManpower = Math.clamp($mercFreeManpower - 30, 0, $mercFreeManpower)>> - <<recalcManpower>> -<</link>> -<br><<link "Add citizens" "secExpOptions">> /*Will no longer work as intended due to population changes*/ - <<set $lowerClass += 200>> -<</link>> -| <<link "Remove citizens" "secExpOptions">> /*also no longer properly functional*/ - <<set $lowerClass -= 200>> - <<if $lowerClass < 0>> - <<set $lowerClass = 0>> - <</if>> -<</link>> -<br><<link "Add slaves" "secExpOptions">> /*Will work to a limited degree, minimums and maximums for slaves are set through population*/ - <<set $NPCSlaves += 200>> -<</link>> -| <<link "Remove slaves" "secExpOptions">> /*Will work to a limited degree*/ - <<set $NPCSlaves -= 200>> - <<if $NPCSlaves < 0>> - <<set $NPCSlaves = 0>> - <</if>> -<</link>> -<br><<link "Raise prosperity" "secExpOptions">> - <<set $arcologies[0].prosperity = Math.clamp($arcologies[0].prosperity + 10, 0, 1000)>> -<</link>> -| <<link "Lower prosperity" "secExpOptions">> - <<set $arcologies[0].prosperity = Math.clamp($arcologies[0].prosperity - 10, 0, 1000)>> -<</link>> diff --git a/src/endWeek/saWhore.js b/src/endWeek/saWhore.js index b6adeb7c28b83df5f014888d62021fb95757702b..b68143949e3fd27625b646698e491de3569034e6 100644 --- a/src/endWeek/saWhore.js +++ b/src/endWeek/saWhore.js @@ -1236,7 +1236,7 @@ window.saWhore = (function saWhore() { break; case "painal queen": if (canDoAnal(slave)) { - r += ` {He}'s a favorite among customers who like to assrape a struggling whore.`; + r += ` ${He}'s a favorite among customers who like to assrape a struggling whore.`; } break; case "strugglefuck queen": diff --git a/src/events/intro/introSummary.tw b/src/events/intro/introSummary.tw index 1189556739d53aafe5293f7caba0144f3124b80f..fa265d3fd044ef02d2161dcbe192bbb4dc88527b 100644 --- a/src/events/intro/introSummary.tw +++ b/src/events/intro/introSummary.tw @@ -592,8 +592,8 @@ __''Player Character''__ <br> <<options $PC.title>> You are a $PCCreationSex. Change to: - <<option 1 "masculine Master" "$PC.genes = 'XY', $PCCreationSex = \"masculine ''Master''\"">> - <<option 0 "feminine Mistress" "$PC.genes = 'XX', $PCCreationSex = \"feminine ''Mistress''\"">> + <<option 1 "Masculine Master" "$PC.genes = 'XY', $PCCreationSex = \"masculine ''Master''\"">> + <<option 0 "Feminine Mistress" "$PC.genes = 'XX', $PCCreationSex = \"feminine ''Mistress''\"">> <</options>> <br> diff --git a/src/gui/Encyclopedia/encyclopedia.tw b/src/gui/Encyclopedia/encyclopedia.tw index 9d5436bc54b168962bd021faa7755bb9fb729ded..47781b5c246d7d9f0bc3111659d747fb817b3b6e 100644 --- a/src/gui/Encyclopedia/encyclopedia.tw +++ b/src/gui/Encyclopedia/encyclopedia.tw @@ -2591,7 +2591,7 @@ LORE: INTERVIEWS <br>''hexall90'' for height growth drugs, incubator organ farm support and detailing, the dispensary cleanup, the joint Eugenics bad end rework with ''SFanon (blank)'', the Hippolyta Academy, and the Security Expansion Mod. <br>''sensei'' for coding in support for commas and an excellent family tree rework. <br>''laziestman'' for sexy spats. - <br>''SFanon (blank)'' for SF related work, passive player skill gain, fulfillment order, player into summary rewrite, general fixes, storyCaption overhauling, updating and re-organizing the in-game wiki in addition to the joint Eugenics bad end rework with ''hexall90''. + <br>''SFanon (blank)'' for SF related work, passive player skill gain, fulfillment order, player into summary and options rewriting, general fixes, storyCaption overhauling, updating and re-organizing the in-game wiki in addition to the joint Eugenics bad end rework with ''hexall90''. <br>''anon'' for extending FCGudder's economy reports to the other facilities. <br>''MilkAnon'' for his contributions to FCTV and the FC world in general. <br>''valen102938'' for dealing with vector art, both creating new art and utilizing unused art. diff --git a/src/interaction/main/toychest.js b/src/interaction/main/toychest.js index 39bea55ccc500dd2e696763f1bab9e2d0c2e4cd6..8a4bd6f1d66d70d5b95539b044082f47f6c23dc2 100644 --- a/src/interaction/main/toychest.js +++ b/src/interaction/main/toychest.js @@ -132,11 +132,11 @@ App.Interact.ToyChest = function(slave) { break; case "a succubus outfit": r += `${He}'s dressed to look like a succubus. There is a demon`; - if ($PC.title === 0) { + if (V.PC.title === 0) { r += `ess`; } r += `in this office, and ${he} serves `; - if ($PC.title === 0) { + if (V.PC.title === 0) { r += `her.`; } else { r += `him.`; diff --git a/src/interaction/prostheticConfig.tw b/src/interaction/prostheticConfig.tw index 1746a445073ee2dc91e19698ce03cc2f5a660f96..2d6632cb32df046c2e8c72e4cac975701fc5ffee 100644 --- a/src/interaction/prostheticConfig.tw +++ b/src/interaction/prostheticConfig.tw @@ -421,7 +421,7 @@ Fit prosthetics to $him: <<case "detachTail">> <<set $prostheticsConfig = "main", $nextButton = "Continue", $nextLink = "Prosthetics Config">> - <<set $activeSlave.tail = "none", $activeSlave.tailShape = "none", set $activeSlave.tailColor = "none">> + <<set $activeSlave.tail = "none", $activeSlave.tailShape = "none", $activeSlave.tailColor = "none">> You send the release signal and the mechanical lock disengages allowing the artificial tail to pop right off. <<case "attachTail">> diff --git a/src/js/DefaultRules.js b/src/js/DefaultRules.js index 5dad52d61c921aac7c0b88d154a9921157ec8bcd..b369d152008afe6fee4c7b8b5d4973cc78ab644b 100644 --- a/src/js/DefaultRules.js +++ b/src/js/DefaultRules.js @@ -2312,6 +2312,16 @@ window.DefaultRules = (function() { } } } + + if (rule.hornColor !== undefined && (rule.hornColor !== null)) { + if (slave.horn !== "none") { + if ((slave.hornColor !== rule.hornColor)) { + slave.hornColor = rule.hornColor; + cashX(forceNeg(V.modCost), "slaveMod", slave); + r += `<br>${slave.slaveName}'s horns has been dyed ${rule.hornColor}.`; + } + } + } if (rule.hStyle !== undefined && (rule.hStyle !== null)) { if (slave.bald !== 1) { diff --git a/src/js/generateGenetics.js b/src/js/generateGenetics.js index 52e7adc72c2bb6a81f6b006ee3ca23bc33e76011..4055b7aefad9a8f48a54932ddc33567773352827 100644 --- a/src/js/generateGenetics.js +++ b/src/js/generateGenetics.js @@ -1757,6 +1757,11 @@ window.generateChild = function(mother, ova, destination) { } child.premature = 1; } + if (child.geneticQuirks.dwarfism === 2 && child.geneticQuirks.gigantism !== 2) { + child.height = Height.random(child, {limitMult: [-4, -1], spread: 0.15}); + } else if (child.geneticQuirks.gigantism === 2 && child.geneticQuirks.dwarfism !== 2) { + child.height = Height.random(child, {limitMult: [3, 10], spread: 0.15}); + } child.face = genes.face; child.underArmHStyle = genes.underArmHStyle; child.pubicHStyle = genes.pubicHStyle; diff --git a/src/js/rulesAssistant.js b/src/js/rulesAssistant.js index cbdb8a46604a12517629269ac2d4be9bf85c0380..f9f5f011fa08abb4baed98c8cad7eda885df3e42 100644 --- a/src/js/rulesAssistant.js +++ b/src/js/rulesAssistant.js @@ -296,6 +296,7 @@ App.RA.newRule = function() { makeup: null, nails: null, hColor: null, + hornColor: null, hLength: null, haircuts: null, hStyle: null, diff --git a/src/js/rulesAssistantOptions.js b/src/js/rulesAssistantOptions.js index 488f7d63042db226e989c7e02309fcb2144f3f48..475c176bab55f9c31f1acc557767473e25b72a5a 100644 --- a/src/js/rulesAssistantOptions.js +++ b/src/js/rulesAssistantOptions.js @@ -1594,6 +1594,7 @@ window.rulesAssistantOptions = (function() { this.appendChild(new ArmpitHairStyleList()); this.appendChild(new SkinColorList()); this.appendChild(new MarkingsList()); + this.appendChild(new HornColorList()); } } @@ -3012,6 +3013,40 @@ window.rulesAssistantOptions = (function() { } } + class HornColorList extends ListSelector { + constructor() { + const pairs = [ + ["golden"], + ["copper"], + ["red"], + ["deep red"], + ["green"], + ["pink"], + ["dark brown"], + ["brown"], + ["burgundy"], + ["jet black"], + ["black"], + ["grey"], + ["silver"], + ["white"], + ["blue-violet"], + ["purple"], + ["dark orchid"], + ["sea green"], + ["green-yellow"], + ["dark blue"], + ["blazing red"], + ["neon green"], + ["neon blue"], + ["neon pink"] + ]; + super("Horn color", pairs); + this.setValue(current_rule.set.hornColor); + this.onchange = (value) => current_rule.set.hornColor = value; + } + } + class HairStyleList extends ListSelector { constructor() { const pairs = [ @@ -3906,7 +3941,6 @@ window.rulesAssistantOptions = (function() { } } - class BodyHairSurgeryList extends RadioSelector { constructor() { const items = [ @@ -3930,7 +3964,7 @@ window.rulesAssistantOptions = (function() { this.onchange = (value) => current_rule.set.surgery.hair = value; } } - + class EarShapeSurgeryList extends RadioSelector { constructor() { const items = [ diff --git a/src/uncategorized/neighborsDevelopment.tw b/src/uncategorized/neighborsDevelopment.tw index bd0ad5553f0e0cb84aea022b6f31c1874a189be9..77fd15f84f3163a2fb0cf3055f7cf101f5e0ea61 100644 --- a/src/uncategorized/neighborsDevelopment.tw +++ b/src/uncategorized/neighborsDevelopment.tw @@ -523,14 +523,14 @@ has an estimated GSP of @@.yellowgreen;<<print cashFormat(_prosperity)>><<if $sh <</if>> <<set _weekModifier = Math.max(1, (100-($week*2)))>> <<set $arcologies[$i].prosperity -= $arcologies[0].CyberEconomic*2, _WarSpoils = Math.ceil(10+Math.max(((100/_weekModifier)*$arcologies[$i].prosperity*$arcologies[0].CyberEconomic),0))>> - <<set $arcologies[$i].prosperity = Math.clamp($arcologies[$i].prosperity, 1, 300)>> + <<set $arcologies[$i].prosperity = Math.clamp($arcologies[$i].prosperity, 1, $AProsperityCap)>> <<if random(0,100) >= _Catchchance-(10*$arcologies[0].CyberEconomic)>> <<set $arcologies[0].prosperity -= $arcologies[0].CyberEconomic*3, _redHanded = 1>> <<run repX(forceNeg(random(100,200)), "war")>> <<if $secExp == 1>> <<set $authority -= random(100,500)*$arcologies[0].CyberEconomic, $crime += random(10,25)>> <</if>> - <<set $arcologies[0].prosperity = Math.clamp($arcologies[0].prosperity, 1, 300)>> + <<set $arcologies[0].prosperity = Math.clamp($arcologies[0].prosperity, 1, $AProsperityCap)>> <</if>> You target $arcologies[$i].name for @@.yellow;digital economic warfare,@@ successfully raiding its coffers for @@.yellowgreen;<<print cashFormat(_WarSpoils)>>@@ this week. <<run cashX(_WarSpoils, "war")>> diff --git a/src/uncategorized/options.tw b/src/uncategorized/options.tw index 1327ac46d4f46262682a8b2b7a2d454a8e7efd15..f1411eb51ffc8586177334c12f01948525dc12ee 100644 --- a/src/uncategorized/options.tw +++ b/src/uncategorized/options.tw @@ -1,5 +1,33 @@ :: Options [nobr] +<style> +.active { + background-color: grey; +} +.subHeading { + width: 85%; + text-align: center +} +.rebellionOption { + margin-top: -30px; + width: 75%; + text-align: right +} +.rebellionOption2 { + margin-top: -30px; + width: 63.2%; + text-align: right +} +.scLink { + width: 85%; + text-align: center +} +.scLink2 { + width: 73%; + text-align: center +} +</style> + <<if lastVisited("Slave Interact") === 1>> <<set $storedLink = "Slave Interact">> <<else>> @@ -8,7 +36,13 @@ <<set $showEncyclopedia = 0>> <<set $nextButton = "Back", $nextLink = $storedLink>> -''SAVES'' + +<<options $autosave>> + End of week autosaving is currently + <<option 1 "Enabled">> + <<option 0 "Disabled">> +<</options>> + <br> This save was created using FC version $ver build $releaseID. <br> [[Apply Backwards Compatibility Update|Backwards Compatibility]] @@ -22,12 +56,14 @@ This save was created using FC version $ver build $releaseID. <<goto "Options">> <</link>> <</if>> - -<br> -<<if ($autosave == 0)>> - End of week autosaving is currently @@.red;DISABLED.@@ [[Enable|Options][$autosave = 1]] -<<else>> - End of week autosaving is currently @@.cyan;ENABLED.@@ [[Disable|Options][$autosave = 0]] +<<if $familyTesting == 1>> + <br><<link "Reset extended family mode controllers">><<goto "family panic">><</link>> //Clears and rebuilds .sister and .daughter tracking.// +<</if>> +<<if isNaN($rep)>> + <br>[[Reset Reputation|Options][$rep = 0]] +<</if>> +<<if isNaN($cash)>> + <br>[[Reset Money|Options][$cash = 500]] <</if>> <<if ($releaseID >= 1000) || $ver.startsWith("0.9") || $ver.startsWith("0.8") || $ver.startsWith("0.7") || $ver.startsWith("0.6")>> @@ -41,644 +77,869 @@ This save was created using FC version $ver build $releaseID. <<else>> //New Game Plus is not available because this game was not started with a compatible version.// <</if>> - <br> -<<if $familyTesting == 1>> - <br><<link "Reset extended family mode controllers">><<goto "family panic">><</link>> //Clears and rebuilds .sister and .daughter tracking.// -<</if>> - -<<if isNaN($rep)>> - <br>[[Reset Reputation|Options][$rep = 0]] -<</if>> -<<if isNaN($cash)>> - <br>[[Reset Money|Options][$cash = 500]] -<</if>> - -<br> -''COLOR CONTROL'' -<br> -<<link "flip lighting">><<run flipColors(setup.lightColorMap)>><<goto "Options">><</link>> +<<run App.UI.tabbar.handlePreSelectedTab($tabChoice.Options)>> + +<br> +<button class="tablinks" onclick="App.UI.tabbar.openTab(event, 'Display')" id="tab Display">Display</button> +<button class="tablinks" onclick="App.UI.tabbar.openTab(event, 'CONTENT&FLAVOR')" id="tab CONTENT&FLAVOR">Content & flavour</button> +<button class="tablinks" onclick="App.UI.tabbar.openTab(event, 'MODS')" id="tab MODS">Mods</button> +<button class="tablinks" onclick="App.UI.tabbar.openTab(event, 'DEBUG/CHEATING')" id="tab DEBUG/CHEATING">Debug/cheating</button> +<br> + +<div id="Display" class="tabcontent"> + <div class="content"> + <div class="subHeading"> + ''Reports'' + </div> + + <<options $showEWD>> + End week report descriptive details are + <<option 1 "Enabled">> + <<option 0 "Disabled">> + <</options>> + + <<options $showEWM>> + End week report performance modifier descriptions are + <<option 1 "Enabled">> + <<option 0 "Disabled">> + <</options>> + + <<options $verboseDescriptions>> + Master Suite report details such as slave changes are + <<option 1 "Enabled">> + <<option 0 "Disabled">> + <</options>> + + <<options $useAccordion>> + Accordion effects on weekly reports are + <<option 1 "Enabled">> + <<option 0 "Disabled">> + <</options>> + + <<options $useTabs>> + Economic Tabs on weekly reports are + <<option 1 "Enabled">> + <<option 0 "Disabled">> + <</options>> + + <<options $showEconomicDetails>> + Economic detail sheets for facilities are + <<option 1 "Enabled">> + <<option 0 "Disabled">> + <</options>> + + <<options $showNeighborDetails>> + Economic report neighbor details such as trade impacts on culture are + <<option 1 "Enabled">> + <<option 0 "Disabled">> + <</options>> + + <<options $formatNumbers>> + Numeric formatting is currently + <<option 1 "Enabled">> + <<option 0 "Disabled">> + <<comment>> + This will comma-format numbers in some areas. + <</options>> + + <div class="subHeading"> + ''General'' + </div> + + <div class="scLink"> + ''COLOR CONTROL'' + <<link "Flip lighting">><<run flipColors(setup.lightColorMap)>><<goto "Options">><</link>> + </div> + + <<options $positionMainLinks>> + Main menu leadership controls displayed + <<option 1 "Above">> + <<option 0 "Above and below">> + <<option -1 "Below">> + <</options>> + + <<options $newModelUI>> + New Model UI + <<option 1 "Enabled">> + <<option 0 "Disabled">> + <</options>> + + <<options $seeArcology>> + Main menu arcology description + <<option 1 "Enabled">> + <<option 0 "Disabled">> + <</options>> + + <<options $seeDesk>> + Main menu desk description + <<option 1 "Enabled">> + <<option 0 "Disabled">> + <</options>> + + <<options $seeFCNN>> + Main menu newsfeed + <<option 1 "Enabled">> + <<option 0 "Disabled">> + <</options>> + + <<options $showTipsFromEncy>> + Tips from the Encyclopedia are + <<option true "Enabled">> + <<option false "Disabled">> + <</options>> + + <<options $useSummaryCache>> + Slave summary caching is + <<option true "Enabled">> + <<option false "Disabled">> + <</options>> + + <<options $useSlaveSummaryTabs>> + Main menu slave tabs are + <<option 1 "Enabled">> + <<option 0 "Disabled">> + <</options>> + + <<options $useSlaveListInPageJSNavigation>> + The slave Quick list in-page scroll-to is + <<option 1 "Enabled">> + <<option 0 "Disabled">> + <</options>> + + <<if $useSlaveSummaryTabs > 0>> + <br> + <<options $useSlaveSummaryOverviewTab>> + Condense special slaves into an overview tab + <<option 1 "Enabled">> + <<option 0 "Disabled">> + <</options>> + <</if>> -<br><br> -''IMAGES'' -<br> -Image display -<<if $seeImages == 1>> - @@.cyan;ENABLED.@@ [[Disable|Options][$seeImages = 0]] - <br> - <<if $imageChoice == 1>> - @@.yellow;Vector art by NoX/Deepmurk@@ is selected. [[Switch to rendered imagepack|Options][$imageChoice = 0]] | [[Switch to non-embedded vector art|Options][$imageChoice = 2]] | [[Switch to revamped embedded vector art|Options][$imageChoice = 3]] - <br> - Face artwork is - <<if $seeFaces > 0>> - @@.cyan;ENABLED.@@ [[Disable|Options][$seeFaces = 0]] - <<else>> - @@.red;DISABLED.@@ [[Enable|Options][$seeFaces = 1]] - <</if>><br> - Highlights on shiny clothing - <<if $seeVectorArtHighlights == 1>> - @@.cyan;ENABLED.@@ [[Disable|Options][$seeVectorArtHighlights = 0]] - <<else>> - @@.red;DISABLED.@@ [[Enable|Options][$seeVectorArtHighlights = 1]] - <</if>><br> - Height scaling - <<if $seeHeight == 1>> - @@.yellow;ENABLED@@ on small images. [[Disable|Options][$seeHeight = 0]] | [[Enable for all images|Options][$seeHeight = 2]] - <<elseif $seeHeight == 2>> - @@.cyan;ENABLED@@ on all images. [[Disable|Options][$seeHeight = 0]] | [[Enable only for small images|Options][$seeHeight = 1]] - <<else>> - @@.red;DISABLED.@@ [[Enable only for small images|Options][$seeHeight = 1]] | [[Enable for all images|Options][$seeHeight = 2]] - <</if>><br> - Clothing erection bulges - <<if $showClothingErection>> - @@.cyan;ENABLED.@@ [[Disable|Options][$showClothingErection = 0]] - <<else>> - @@.red;DISABLED.@@ [[Enable|Options][$showClothingErection = 1]] + <div class="subHeading"> + ''Sidebar'' + </div> + + <<options $sideBarOptions.Cash>> + Cash is + <<option 1 "Shown">> + <<option 0 "Hidden">> + <</options>> + + <<options $sideBarOptions.Upkeep>> + Upkeep is + <<option 1 "Shown">> + <<option 0 "Hidden">> + <</options>> + + <<options $sideBarOptions.SexSlaveCount>> + Sex slave count is + <<option 1 "Shown">> + <<option 0 "Hidden">> + <</options>> + + <<options $sideBarOptions.roomPop>> + Room population is + <<option 1 "Shown">> + <<option 0 "Hidden">> + <</options>> + + <<options $sideBarOptions.GSP>> + GSP is + <<option 1 "Shown">> + <<option 0 "Hidden">> + <</options>> + + <<options $sideBarOptions.Rep>> + Rep is + <<option 1 "Shown">> + <<option 0 "Hidden">> + <</options>> + + <<if $secExp > 0>> + <<options $sideBarOptions.Authority>> + Authority is + <<option 1 "Shown">> + <<option 0 "Hidden">> + <</options>> + + <<options $sideBarOptions.Security>> + Security is + <<option 1 "Shown">> + <<option 0 "Hidden">> + <</options>> + + <<options $sideBarOptions.Crime>> + Crime is + <<option 1 "Shown">> + <<option 0 "Hidden">> + <</options>> <</if>> - <br>@@.red;Git compiled only, no exceptions.@@ - <<elseif $imageChoice == 2>> - @@.yellow;Vector art by NoX/Deepmurk - non-embed version@@ is selected. [[Switch to rendered imagepack|Options][$imageChoice = 0]] | [[Switch to embedded vector art|Options][$imageChoice = 1]] | [[Switch to revamped embedded vector art|Options][$imageChoice = 3]] - <<elseif $imageChoice == 3>> - @@.yellow;Vector art revamp@@ is selected. [[Switch to rendered imagepack|Options][$imageChoice = 0]] | [[Switch to embedded vector art|Options][$imageChoice = 1]] | [[Switch to non-embedded vector art|Options][$imageChoice = 2]] - <br> - Highlights on shiny clothing - <<if $seeVectorArtHighlights == 1>> - @@.cyan;ENABLED.@@ [[Disable|Options][$seeVectorArtHighlights = 0]] - <<else>> - @@.red;DISABLED.@@ [[Enable|Options][$seeVectorArtHighlights = 1]] + + <br><br> + <<options $seeImages>> + Images are + <<option 1 "Enabled">> + <<option 0 "Disabled">> + <</options>> + + <<if $seeImages > 0>> + <div style="position:relative;width:200px;height:200px;margin:0 auto;"> + <<= SlaveArt(BaseSlave(), 0, 0)>> + </div> + + <<options $imageChoice>> + <<option 3 "Revamped embedded vector art">> + <<option 2 "Non-embedded vector art">> + <<option 1 "NoX/Deepmurk's vector art">> + <<option 0 "Shokushu's rendered imagepack">> + <</options>> + + <<if $seeImages === 1>> + <<options $seeFaces>> + Face artwork is + <<option 1 "Enabled">> + <<option 0 "Disabled">> + <</options>> + + <<options $seeVectorArtHighlights>> + Highlights on shiny clothing + <<option 1 "Enabled">> + <<option 0 "Disabled">> + <</options>> + + <<options $seeHeight>> + Height scaling + <<option 2 "All images">> + <<option 1 "Small images">> + <<option 0 "Disabled">> + <</options>> + + <<options $showClothingErection>> + Clothing erection bulges + <<option 1 "Enabled">> + <<option 0 "Disabled">> + <</options>> + <<elseif $seeImages === 0>> + <<options $seeMainFetishes>> + Slave summary fetish images + <<option 1 "Enabled">> + <<option 0 "Disabled">> + <</options>> + <<elseif $seeImages === 3>> + <<options $showClothingErection>> + Clothing erection bulges + <<option 1 "Enabled">> + <<option 0 "Disabled">> + <<comment>> + @@.red;Git compiled only, no exceptions.@@ + <</options>> + <</if>> + + <<options $seeAvatar>> + PA avatar art is + <<option 1 "Enabled">> + <<option 0 "Disabled">> + <</options>> + + <<options $seeSummaryImages>> + Slave images in lists are + <<option 1 "Enabled">> + <<option 0 "Disabled">> + <</options>> + + <<options $seeReportImages>> + Slave images in the weekly report are + <<option 1 "Enabled">> + <<option 0 "Disabled">> + <</options>> <</if>> - <br>@@.red;Git compiled only, no exceptions.@@ - <<elseif $imageChoice == 0>> - @@.yellow;Rendered imagepack by Shokushu@@ is selected. [[Switch to vector art|Options][$imageChoice = 1]] + </div> +</div> + +<div id="CONTENT&FLAVOR" class="tabcontent"> + <div class="content"> + <div class="subHeading"> + ''Content'' + </div> + <<options $seeExtreme>> + Extreme content like amputation is currently + <<option 1 "Enabled">> + <<option 0 "Disabled">> + <<comment>> + Will not affect extreme surgeries already applied in-game. + <</options>> + <div align="center"> + //More granular control of what appears is in// [[Description Options]]. + </div> <br> - Slave summary fetish images - <<if $seeMainFetishes == 1>> - @@.cyan;ENABLED.@@ [[Disable|Options][$seeMainFetishes = 0]] - <<else>> - @@.red;DISABLED.@@ [[Enable|Options][$seeMainFetishes = 1]] + <<options $seeBestiality>> + Bestiality related content is currently + <<option 1 "Enabled">> + <<option 0 "Disabled">> + <</options>> + + <<options $seePee>> + Watersports related content is currently + <<option 1 "Enabled">> + <<option 0 "Disabled">> + <</options>> + + <<options $seePreg>> + Pregnancy related content is currently + <<option 1 "Enabled">> + <<option 0 "Disabled">> + <<comment>> + Will not affect existing pregnancies already in-game. + <</options>> + + <<options $seeDicksAffectsPregnancy>> + Child gender to be generated based off dick content settings + <<option 1 "Enabled">> + <<comment>> + Currently <<print $seeDicks>>% of children will be born male. + <<option 0 "Disabled">> + <<comment>> + Will not affect existing pregnancies already in-game. + <</options>> + + <<if $seeDicksAffectsPregnancy == 0>> + <<options $seePreg>> + XX slaves can have sons + <<option 1 "Enabled">> + <<option 0 "Disabled">> + <<comment>> + Will not affect existing pregnancies already in-game. + <</options>> <</if>> - <</if>> - <br> - PA avatar art is - <<if $seeAvatar == 1>> - @@.cyan;ENABLED.@@ [[Disable|Options][$seeAvatar = 0]] - <<else>> - @@.red;DISABLED.@@ [[Enable|Options][$seeAvatar = 1]] - <</if>> - <br> - Slave images in lists are - <<if $seeSummaryImages == 1>> - @@.cyan;ENABLED.@@ [[Disable|Options][$seeSummaryImages = 0]] - <<else>> - @@.red;DISABLED.@@ [[Enable|Options][$seeSummaryImages = 1]] - <</if>> - <br> - Slave images in the weekly report are - <<if $seeReportImages == 1>> - @@.cyan;ENABLED.@@ [[Disable|Options][$seeReportImages = 0]] - <<else>> - @@.red;DISABLED.@@ [[Enable|Options][$seeReportImages = 1]] - <</if>> -<<else>> - @@.red;DISABLED.@@ [[Enable|Options][$seeImages = 1]] -<</if>> - -<br><br> -''MAIN ARCOLOGY SCREEN OPTIONS'' -<br> -<<if $newModelUI != 0>> - New Model UI @@.cyan;ENABLED.@@ [[Disable|Options][$newModelUI = 0]] -<<else>> - New Model UI @@.red;DISABLED.@@ [[Enable|Options][$newModelUI = 1]] -<</if>> - -<br> - -<<if $seeArcology == 1>> - Main menu arcology description @@.cyan;ENABLED.@@ [[Disable|Options][$seeArcology = 0]] -<<else>> - Main menu arcology description @@.red;DISABLED.@@ [[Enable|Options][$seeArcology = 1]] -<</if>> - -<br> - -<<if ($seeDesk == 0)>> - Main menu desk description @@.red;DISABLED.@@ [[Enable|Options][$seeDesk = 1]] -<<else>> - Main menu desk description @@.cyan;ENABLED.@@ [[Disable|Options][$seeDesk = 0]] -<</if>> - -<br> - -<<if ($seeFCNN == 0)>> - Main menu newsfeed @@.red;DISABLED.@@ [[Enable|Options][$seeFCNN = 1]] -<<else>> - Main menu newsfeed @@.cyan;ENABLED.@@ [[Disable|Options][$seeFCNN = 0]] -<</if>> - -<br> - -Main menu leadership controls displayed -<<if ($positionMainLinks == 1)>> - @@.cyan;ABOVE@@ slave list. - [[Below|Options][$positionMainLinks = -1]] | - [[Both|Options][$positionMainLinks = 0]] -<<elseif ($positionMainLinks == -1)>> - @@.cyan;BELOW@@ slave list. - [[Above|Options][$positionMainLinks = 1]] | - [[Both|Options][$positionMainLinks = 0]] -<<else>> - @@.cyan;ABOVE AND BELOW@@ slave list. - [[Above|Options][$positionMainLinks = 1]] | - [[Below|Options][$positionMainLinks = -1]] -<</if>> - -<br> - -Main menu slave tabs are -<<if $useSlaveSummaryTabs != 1>> - @@.red;DISABLED.@@ [[Enable|Options][$useSlaveSummaryTabs = 1]] -<<else>> - @@.cyan;ENABLED.@@ [[Disable|Options][$useSlaveSummaryTabs = 0, $useSlaveSummaryOverviewTab = 0]] -<</if>> - - -<<if $useSlaveSummaryTabs == 1>> - <br> - - Condense special slaves into an overview tab - <<if $useSlaveSummaryOverviewTab != 1>> - @@.red;DISABLED.@@ [[Enable|Options][$useSlaveSummaryOverviewTab = 1]] - <<else>> - @@.cyan;ENABLED.@@ [[Disable|Options][$useSlaveSummaryOverviewTab = 0]] - <</if>> -<</if>> - -<br> - -The slave Quick list in-page scroll-to is -<<if $useSlaveListInPageJSNavigation != 1>> - @@.red;DISABLED.@@ [[Enable|Options][$useSlaveListInPageJSNavigation = 1]] -<<else>> - @@.cyan;ENABLED.@@ [[Disable|Options][$useSlaveListInPageJSNavigation = 0]] -<</if>> - -<br> -Slave summary caching is <<if $useSummaryCache>>@@.cyan;ENABLED.@@ [[Disable|Options][$useSummaryCache = false]]<<else>>@@.red;DISABLED.@@ [[Enable|Options][$useSummaryCache = true]]<</if>> - -<br> -Tips from the Encyclopedia are -<<if ($showTipsFromEncy == 0)>> - @@.red;DISABLED.@@ [[Enable|Options][$showTipsFromEncy = 1]] -<<else>> - @@.cyan;ENABLED.@@ [[Disable|Options][$showTipsFromEncy = 0]] -<</if>> - -<br><br> -''REPORTS'' -<br> -End week report descriptive details are -<<if ($showEWD == 0)>> - @@.red;DISABLED.@@ [[Enable|Options][$showEWD = 1]] -<<else>> - @@.cyan;ENABLED.@@ [[Disable|Options][$showEWD = 0]] -<</if>> - -<br> - -End week report performance modifier descriptions are -<<if ($showEWM == 0)>> - @@.red;DISABLED.@@ [[Enable|Options][$showEWM = 1]] -<<else>> - @@.cyan;ENABLED.@@ [[Disable|Options][$showEWM = 0]] -<</if>> - -<br> - -Economic report neighbor details such as trade impacts on culture are -<<if ($showNeighborDetails != 0)>> - @@.cyan;ENABLED.@@ [[Disable|Options][$showNeighborDetails = 0]] -<<else>> - @@.red;DISABLED.@@ [[Enable|Options][$showNeighborDetails = 1]] -<</if>> - -<br> - -Master Suite report details such as slave changes are -<<if ($verboseDescriptions == 1)>> - @@.cyan;ENABLED.@@ [[Disable|Options][$verboseDescriptions = 0]] -<<else>> - @@.red;DISABLED.@@ [[Enable|Options][$verboseDescriptions = 1]] -<</if>> - -/* Accordion 000-250-006 */ -<br> - Accordion effects on weekly reports are -<<if ($useAccordion != 1)>> - @@.red;DISABLED.@@ [[Enable|Options][$useAccordion = 1]] -<<else>> - @@.cyan;ENABLED.@@ [[Disable|Options][$useAccordion = 0]] -<</if>> -/* Accordion 000-250-006 */ - -<br> - -Economic Tabs on weekly reports are -<<if $useTabs == 0>> - @@.red;DISABLED.@@ [[Enable|Options][$useTabs = 1]] -<<else>> - @@.cyan;ENABLED.@@ [[Disable|Options][$useTabs = 0]] -<</if>> - -<br> - -Economic detail sheets for facilities are -<<if ($showEconomicDetails != 0)>> - @@.cyan;ENABLED.@@ [[Disable|Options][$showEconomicDetails = 0]] -<<else>> - @@.red;DISABLED.@@ [[Enable|Options][$showEconomicDetails = 1]] -<</if>> - -<br> - -<<if ($formatNumbers == 1)>> - Numeric formatting is currently @@.cyan;ENABLED.@@ [[Disable|Options][$formatNumbers = 0]] -<<else>> - Numeric formatting is currently @@.red;DISABLED.@@ [[Enable|Options][$formatNumbers = 1]] - //This will comma-format numbers in some areas.// -<</if>> - -<br><br> -''FLAVOR SCENES'' -<br> -Slave reactions to facility assignments are -<<if ($showAssignToScenes == 0)>> - @@.red;DISABLED.@@ [[Enable|Options][$showAssignToScenes = 1]] -<<else>> - @@.cyan;ENABLED.@@ [[Disable|Options][$showAssignToScenes = 0]] -<</if>> - -<br> -Post sex clean up -<<if $postSexCleanUp < 1>> - @@.cyan;is not@@ displayed. [[Display|Options][$postSexCleanUp = 1]] -<<else>> - @@.cyan;is @@ displayed. [[Do not display|Options][$postSexCleanUp = 0]] -<</if>> - -<br> -Appraisal miniscenes on slave sale are -<<if ($showAppraisal == 0)>> - @@.red;DISABLED.@@ [[Enable|Options][$showAppraisal = 1]] -<<else>> - @@.cyan;ENABLED.@@ [[Disable|Options][$showAppraisal = 0]] -<</if>> - -<br> - -Assignment performance vignettes on the end week report are -<<if ($showVignettes == 0)>> - @@.red;DISABLED.@@ [[Enable|Options][$showVignettes = 1]] -<<else>> - @@.cyan;ENABLED.@@ [[Disable|Options][$showVignettes = 0]] -<</if>> - -<br> -<<if $newDescriptions == 1>> - Slaves @@.cyan;will@@ have alternate titles. - [[Disable|Options][$newDescriptions = 0]] -<<else>> - Slaves @@.cyan;will not@@ have alternate titles. - [[Enable|Options][$newDescriptions = 1]] -<</if>> - -<br> - -<<if $familyTesting == 1>> - <<if $allowFamilyTitles == 1>> - Your relatives @@.cyan;will@@ use family titles. - [[Disable family titles|Options][$allowFamilyTitles = 0]] - <<else>> - Your relatives @@.cyan;will not@@ use family titles. - [[Enable family titles|Options][$allowFamilyTitles = 1]] - <</if>> -<</if>> - -<br> - -<<if $familyTesting == 1>> - <<if (def $showDistantRelatives) && $showDistantRelatives == 1>> - Distant relatives such as aunts, nieces and cousins ''are'' shown - [[Hide distant relatives|Options][$showDistantRelatives = 0]] - <<else>> - Distant relatives such as aunts, nieces and cousins ''are not'' shown - [[Show distant relatives|Options][$showDistantRelatives = 1]] - <</if>> -<</if>> - -<br><br> -''CONTENT'' -<br> -<<if ($seeExtreme == 0)>> - Extreme content like amputation is currently @@.red;DISABLED.@@ [[Enable|Options][$seeExtreme = 1]] -<<else>> - Extreme content like amputation is currently @@.cyan;ENABLED.@@ [[Disable|Options][$seeExtreme = 0]] -<</if>> -<br> //Will not affect extreme surgeries already applied already in-game. -<br> More granular control of what appears is in// [[Description Options]]. - -<br> -<<if ($seeBestiality == 0)>> - Bestiality related content is currently @@.red;DISABLED.@@ [[Enable|Options][$seeBestiality = 1]] -<<else>> - Bestiality related content is currently @@.cyan;ENABLED.@@ [[Disable|Options][$seeBestiality = 0]] //Will not remove existing facilities, but will block content from appearing.// -<</if>> - -<br> -<<if ($seePee == 0)>> - Watersports related content is currently @@.red;DISABLED.@@ [[Enable|Options][$seePee = 1]] -<<else>> - Watersports related content is currently @@.cyan;ENABLED.@@ [[Disable|Options][$seePee = 0]] -<</if>> - -<br> -<<if ($seePreg == 0)>> - Pregnancy related content is currently @@.red;DISABLED.@@ [[Enable|Options][$seePreg = 1]] -<<else>> - Pregnancy related content is currently @@.cyan;ENABLED.@@ [[Disable|Options][$seePreg = 0]] -<</if>> //Will not affect existing pregnancies already in-game.// - -<br> -<<if ($seeDicksAffectsPregnancy == 1)>> - Child gender ''will'' be generated based off dick content settings. Currently <<print $seeDicks>>% of children will be born male. [[Disable|Options][$seeDicksAffectsPregnancy = 0]] -<<else>> - Child gender ''will not'' be generated based off dick content settings. [[Enable|Options][$seeDicksAffectsPregnancy = 1]] -<</if>> - -<<if $seeDicksAffectsPregnancy == 0>> - <br> - <<if $adamPrinciple == 1>> - XX slaves ''cannot'' have sons. [[Disable Adam Principle|Options][$adamPrinciple = 0]] - <<else>> - XX slaves ''can'' have sons. [[Enable Adam Principle|Options][$adamPrinciple = 1]] - <</if>> //Will not affect existing pregnancies already in-game.// -<</if>> - -<br> -<<if ($seeHyperPreg == 0)>> - Extreme pregnancy content like broodmothers is currently @@.red;DISABLED.@@ [[Enable|Options][$seeHyperPreg = 1]] -<<else>> - Extreme pregnancy content like broodmothers is currently @@.cyan;ENABLED.@@ [[Disable|Options][$seeHyperPreg = 0]] -<</if>> -//Will not affect existing hyperpregnancies already in-game.// - -<br> -<<if ($dangerousPregnancy == 0)>> - Pregnancy complications due to multiples and body size are currently @@.red;DISABLED.@@ [[Enable|Options][$dangerousPregnancy = 1]] -<<else>> - Pregnancy complications due to multiples and body size are currently @@.cyan;ENABLED.@@ [[Disable|Options][$dangerousPregnancy = 0]] -<</if>> - -<br> -<<if $precociousPuberty == 0>> - Girls ''will not'' experience precocious puberty. (Not able to become pregnant younger than normal age - $fertilityAge). - [[Enable precocious puberty|Options][$precociousPuberty = 1]] -<<else>> - Girls ''will'' experience precocious puberty. (In certain conditions they will can become pregnant younger then normal age - $fertilityAge). - [[Disable precocious puberty|Options][$precociousPuberty = 0]] -<</if>> //Will not affect existing precocious puberty cases already in-game.// - -<br> - -/% Begin mod section: toggle whether slaves lisp. %/ - -<<if $disableLisping>> - Lisping: ''slaves will not lisp''. - [[Enable Lisping|Options][$disableLisping = 0]] -<<else>> - Lisping: ''slaves with fat lips or heavy oral piercings will lisp''. - [[Disable Lisping|Options][$disableLisping = 1]] -<</if>> - -/% End mod section: toggle whether slaves lisp. %/ - -<br> -<<if ($diversePronouns == 1)>> - Experimental male pronouns are currently @@.cyan;ENABLED.@@ [[Disable|Options][$diversePronouns = 0]] -<<else>> - Experimental male pronouns are currently @@.red;DISABLED.@@ [[Enable|Options][$diversePronouns = 1]] -<</if>> -<br> //Apply Backwards Compatibility after changing to update slave's pronouns. Not all scenes support male pronouns and this is not yet incorporated into the lore or mechanics.// - -<br> -<<if $allowMaleSlaveNames>> - Male slave names are currently @@.cyan;PERMITTED.@@ [[Deny|Options][$allowMaleSlaveNames = false]] -<<else>> - Male slave names are currently @@.red;FORBIDDEN.@@ [[Allow|Options][$allowMaleSlaveNames = true]] -<</if>> -//This only affects slave generation and not your ability to name your slaves.// - -<br> -<<if $showMissingSlaves>> - Missing slave names are currently @@.cyan;SHOWN.@@ [[Hide|Options][$showMissingSlaves = 0]] -<<else>> - Missing slave names are currently @@.red;HIDDEN.@@ [[Show|Options][$showMissingSlaves = 1]] -<</if>> - -<br><br> -''INTERSECTING MECHANICS'' -<br> -<<if ($weightAffectsAssets != 0)>> - Slave assets affected by weight is @@.cyan;ENABLED.@@ [[Disable|Options][$weightAffectsAssets = 0]] -<<else>> - Slave assets affected by weight is @@.red;DISABLED.@@ [[Enable|Options][$weightAffectsAssets = 1]] -<</if>> //Diet will still affect asset size.// - -<br> -<<if ($curativeSideEffects != 0)>> - Curative side effects are @@.cyan;ENABLED.@@ [[Disable|Options][$curativeSideEffects = 0]] -<<else>> - Curative side effects are @@.red;DISABLED.@@ [[Enable|Options][$curativeSideEffects = 1]] -<</if>> //If enabled, curatives have a chance to give slaves harmful side effects.// - -<br><br> -''MODS'' -<br>The Special Force Mod is currently -<<if ($SF.Toggle === 0)>> - @@.red;DISABLED.@@ [[Enable|Options][$SF.Toggle = 1]] -<<else>> - @@.cyan;ENABLED.@@ [[Disable|Options][$SF.Toggle = 0]] - /*<br> The support facility is - <<if ($SF.Facility.Toggle === 0)>> - @@.red;DISABLED.@@ [[Enable|Options][$SF.Facility.Toggle = 1]] - <<else>> - @@.cyan;ENABLED.@@ [[Disable|Options][$SF.Facility.Toggle = 0]] - <</if>> //Prep for future content.*/ -<</if>> //Will not affect mod content that has already been encountered.// + <<options $seeHyperPreg>> + Extreme pregnancy content like broodmothers is currently + <<option 1 "Enabled">> + <<option 0 "Disabled">> + <<comment>> + Will not affect existing hyperpregnancies already in-game. + <</options>> + + <<options $dangerousPregnancy>> + Pregnancy complications due to multiples and body size are currently + <<option 1 "Enabled">> + <<option 0 "Disabled">> + <</options>> + + <<options $precociousPuberty>> + Girls can experience precocious puberty. + <<option 1 "Enabled">> + <<option 0 "Disabled">> + <<comment>> + Will not affect existing precocious puberty cases already in-game. + <</options>> + <div align="center"> + <<if $precociousPuberty == 1>> + //(In certain conditions they will can become pregnant younger then normal age - $fertilityAge).// + <<elseif $precociousPuberty == 0>> + //(Not able to become pregnant younger than normal age - $fertilityAge).// + <</if>> + </div> + + <br><br> + <<options $disableLisping>> + Slaves with fat lips or heavy oral piercings can lisp + <<option 1 "Enabled">> + <<option 0 "Disabled">> + <</options>> + + <<options $diversePronouns>> + Experimental male pronouns are currently + <<option 1 "Enabled">> + <<option 0 "Disabled">> + <</options>> + <div align="center"> + //Apply Backwards Compatibility after changing to update slave's pronouns. Not all scenes support male pronouns and this is not yet incorporated into the lore or mechanics.// + </div> + <br> + <<options $allowMaleSlaveNames>> + Male slave names are currently + <<option true "Enabled">> + <<option false "Disabled">> + <<comment>> + This only affects slave generation and not your ability to name your slaves. + <</options>> + -<br> + <br> + <<options $showMissingSlaves>> + Missing slave names are currently + <<option 1 "Enabled">> + <<option 0 "Disabled">> + <</options>> -<<if $secExp == 0>> - The Security Expansion mod is @@.red;DISABLED.@@ - <<link "Enable">> - <<set $secExp = 1>> - <<include "SecExpBackwardCompatibility">> - <<if $wasToggledBefore == 0>> - <<set $wasToggledBefore = 1>> + <br> + <div class="subHeading"> + ''Intersecting mechanics'' + </div> + + <<options $weightAffectsAssets>> + Slave assets affected by weight is + <<option 1 "Enabled">> + <<option 0 "Disabled">> + <<comment>> + Diet will still affect asset size. + <</options>> + + <<options $curativeSideEffects>> + Curative side effects are + <<option 1 "Enabled">> + <<option 0 "Disabled">> + <<comment>> + If enabled, curatives have a chance to give slaves harmful side effects. + <</options>> + + <div class="subHeading"> + ''Flavour'' + </div> + + <<options $showAssignToScenes>> + Slave reactions to facility assignments are + <<option 1 "Enabled">> + <<option 0 "Disabled">> + <</options>> + + <<options $postSexCleanUp>> + Post sex clean up + <<option 1 "Enabled">> + <<option 0 "Disabled">> + <</options>> + + <<options $showAppraisal>> + Appraisal miniscenes on slave sale are + <<option 1 "Enabled">> + <<option 0 "Disabled">> + <</options>> + + <<options $showVignettes>> + Assignment performance vignettes on the end week report are + <<option 1 "Enabled">> + <<option 0 "Disabled">> + <</options>> + + <<options $newDescriptions>> + Slaves can have alternate titles + <<option 1 "Enabled">> + <<option 0 "Disabled">> + <</options>> + + <<if $familyTesting > 0>> + <<options $allowFamilyTitles>> + Relatives use family titles. + <<option 1 "Enabled">> + <<option 0 "Disabled">> + <</options>> + + <<options $showDistantRelatives>> + Distant relatives such as aunts, nieces and cousins are + <<option 1 "Shown">> + <<option 0 "Hidden">> + <</options>> <</if>> - <<goto "Options">> - <</link>> -<<elseif ndef $secExp>> - <<set $secExp = 0>> - The Security Expansion mod is @@.red;DISABLED.@@ - <<link "Enable">> - <<set $secExp = 1>> - <<include "SecExpBackwardCompatibility">> - <<if $wasToggledBefore == 0>> - <<set $wasToggledBefore = 1>> + </div> +</div> + +<div id="MODS" class="tabcontent"> + <div class="content"> + <<options $SF.Toggle>> + The Special Force Mod is currently + <<option 1 "Enabled">> + <<option 0 "Disabled">> + <</options>> + /* + <<if $SF.Toggle > 0>> + <<options $SF.Facility.Toggle>> + <br> The support facility is + <<option 1 "Enabled">> + <<option 0 "Disabled">> + <</options>> + <</if>> //Prep for future content.// + */ + + <<options $secExp>> + The Security Expansion mod is + <<option 1 "Enabled">> + <<option 0 "Disabled">> + <<comment>> + The mod can be activated in any moment, but it may result in unbalanced gameplay if activated very late in the game. + <</options>> + + <<if $secExp > 0>> + <div class="subHeading"> + ''Security Expansion mod options'' + </div> + + <<if $terrain === "oceanic">> + <br>Oceanic arcologies are not by default subject to external attacks. You can however allow them to happen anyway. If you choose to do so please keep in mind that descriptions and mechanics are not intended for naval combat but land combat. + <</if>> + + <<if $battlesEnabled > 0 || $rebellionsEnabled > 0>> + <<options $showBattleStatistics>> + Detailed battle statistics are + <<option 1 "Shown">> + <<option 0 "Hidden">> + <<comment>> + Visability of detailed statistics and battle turns. + <</options>> + + <<options $difficulty>> + Difficulty is + <<option 1.5 "Very hard">> + <<option 1.25 "Hard">> + <<option 0.75 "Easy">> + <<option 0.5 "Very easy">> + <</options>> + <br><br> + <</if>> + + <<options $battlesEnabled>> + Battles are + <<option 1 "Enabled">> + <<option 0 "Disabled">> + <</options>> + + <<options $rebellionsEnabled>> + Rebellions are + <<option 1 "Enabled">> + <<option 0 "Disabled">> + <</options>> + + <<if $battlesEnabled > 0>> + <<options $allowPrestigeFromBattles>> + For every 10 victories a slave commander + <<option 1 "Gains">> + <<option 0 "Does not gain">> + <</options>> + a prestige rank. + <</if>> + + <<if $battlesEnabled > 0>> + <<options $battleFrequency>> + Frequency + <<option 1.5 "Very high">> + <<option 1.25 "High">> + <<option 1 "Normal">> + <<option 0.75 "Low">> + <<option 0.5 "Very low">> + <</options>> + <</if>> + + <<if $rebellionsEnabled > 0>> + <<options $rebellionSpeed>> + Buildup + <<option 1.5 "Very fast">> + <<option 1.25 "Fast">> + <<option 1 "Normal">> + <<option 0.75 "Slow">> + <<option 0.5 "Very slow">> + <</options>> + <</if>> + + <br><br> + <div class="subHeading"> + //Force the chosen option to happen every week. <<if $rebellionsEnabled > 0>> Rebellions will take precedence over battles.<</if>>// + </div> + + <<if $battlesEnabled > 0>> + <<options $forceBattle>> + Force battles + <<option 1 "Yes">> + <<option 0 "No">> + <</options>> + <</if>> + <br> + <<if $rebellionsEnabled > 0>> + <<options $forceRebellion>> + Force rebellions + <<option 1 "Yes">> + <<option 0 "No">> + <</options>> + <</if>> + + <<if $battlesEnabled > 0>> + <br><br> + <<options $majorBattlesEnabled>> + Major battles are + <<option 1 "Enabled">> + <<option 0 "Disabled">> + <<comment>> + Enable/disable late game large scale battles. + <</options>> + <</if>> + + <<if $battlesEnabled > 0 && $majorBattlesEnabled > 0>> + <<options $majorBattleMult>> + Multiplier is + <<option 1.5 "Very high">> + <<option 1.25 "High">> + <<option 1 "Normal">> + <<option 0.75 "Low">> + <<option 0.5 "Very low">> + <</options>> + + <<options $forceMajorBattle>> + A major battle is + <<option 1 "Guaranteed">> + <<option 0 "Not guaranteed">> + <</options>> + this week. + <</if>> + + <<if $battlesEnabled > 0 && $majorBattlesEnabled > 0>> + <<options $majorBattleGameOver>> + Gameover on battle loss + <<option 1 "Yes">> + <<option 0 "No">> + <</options>> + <</if>> + + <<if $rebellionsEnabled > 0>> + <<options $rebellionGameOver>> + Gameover on rebellion loss + <<option 1 "Yes">> + <<option 0 "No">> + <</options>> + <</if>> + + <br> + <div class="subHeading"> + ''Debug/cheat'' + </div> + <<run MenialPopCap()>> + + <style> + table.invisible { + table-layout: fixed; + border-collapse: separate; + border-spacing: 5px; + margin:1em auto; + } + </style> + + <table class="invisible"> + <tr style="text-align:center"><td colspan="2" > + <<link "Set loyalty high" "Options">> + <<for _i = 0; _i < $militiaUnits.length; _i++>> + <<set $militiaUnits[_i].loyalty = random(80,100)>> + <</for>> + + <<for _i = 0; _i < $slaveUnits.length; _i++>> + <<set $slaveUnits[_i].loyalty = random(80,100)>> + <</for>> + + <<for _i = 0; _i < $mercUnits.length; _i++>> + <<set $mercUnits[_i].loyalty = random(80,100)>> + <</for>> + <</link>> + | <<link "Set loyalty average" "Options">> + <<for _i = 0; _i < $militiaUnits.length; _i++>> + <<set $militiaUnits[_i].loyalty = random(40,60)>> + <</for>> + + <<for _i = 0; _i < $slaveUnits.length; _i++>> + <<set $slaveUnits[_i].loyalty = random(40,60)>> + <</for>> + + <<for _i = 0; _i < $mercUnits.length; _i++>> + <<set $mercUnits[_i].loyalty = random(40,60)>> + <</for>> + <</link>> + | <<link "Set loyalty low" "Options">> + <<for _i = 0; _i < $militiaUnits.length; _i++>> + <<set $militiaUnits[_i].loyalty = random(20)>> + <</for>> + + <<for _i = 0; _i < $slaveUnits.length; _i++>> + <<set $slaveUnits[_i].loyalty = random(20)>> + <</for>> + + <<for _i = 0; _i < $mercUnits.length; _i++>> + <<set $mercUnits[_i].loyalty = random(20)>> + <</for>> + <</link>> + | <<link "Randomize loyalty" "Options">> + <<for _i = 0; _i < $militiaUnits.length; _i++>> + <<set $militiaUnits[_i].loyalty = random(100)>> + <</for>> + + <<for _i = 0; _i < $slaveUnits.length; _i++>> + <<set $slaveUnits[_i].loyalty = random(100)>> + <</for>> + + <<for _i = 0; _i < $mercUnits.length; _i++>> + <<set $mercUnits[_i].loyalty = random(100)>> + <</for>> + <</link>> + </td></tr> + + <tr style="text-align:center"> + <td colspan="2"> + <<link "Give Authority" "Options">> + <<set $authority = Math.clamp($authority + 1000, 0, 20000)>> + <</link>> + | <<link "Remove Authority" "Options">> + <<set $authority = Math.clamp($authority - 1000, 0, 20000)>> + <</link>> + </td> + </tr> + + <tr> + <td style="text-align:right"> + <<link "Raise security" "Options">> + <<set $security = Math.clamp($security + 5, 0, 100)>> + <</link>> + | <<link "Lower security" "Options">> + <<set $security = Math.clamp($security - 5, 0, 100)>> + <</link>> + </td> + + <td style="text-align:left"> + <<link "Raise crime" "Options">> + <<set $crime = Math.clamp($crime + 5, 0, 100)>> + <</link>> + | <<link "Lower crime" "Options">> + <<set $crime = Math.clamp($crime - 5, 0, 100)>> + <</link>> + </td> + </tr> + + <tr> + <td style="text-align:right"> + <<link "Give menial slaves" "Options">> + <<set $menials = Math.clamp($menials + 30, 0, $PopCap)>> + <</link>> + | <<link "Remove menial slaves" "Options">> + <<set $menials = Math.clamp($menials - 30, 0, $PopCap)>> + <</link>> + </td> + + <td style="text-align:left"> + <<link "Add slaves" "Options">> /*Will work to a limited degree, minimums and maximums for slaves are set through population*/ + <<set $NPCSlaves += 200>> + <</link>> + | <<link "Remove slaves" "Options">> /*Will work to a limited degree*/ + <<set $NPCSlaves -= 200>> + <<if $NPCSlaves < 0>> + <<set $NPCSlaves = 0>> + <</if>> + <</link>> + </td> + </tr> + + <tr> + <td style="text-align:right"> + <<link "Give militia manpower" "Options">> + <<set $militiaFreeManpower += 30>> + <<recalcManpower>> + <</link>> + | <<link "Remove militia manpower" "Options">> + <<set $militiaFreeManpower = Math.clamp($militiaFreeManpower - 30, 0, $militiaFreeManpower)>> + <<recalcManpower>> + <</link>> + </td> + + <td style="text-align:left"> + <<link "Give mercs manpower" "Options">> + <<set $mercFreeManpower += 30>> + <<recalcManpower>> + <</link>> + | <<link "Remove mercs manpower" "Options">> + <<set $mercFreeManpower = Math.clamp($mercFreeManpower - 30, 0, $mercFreeManpower)>> + <<recalcManpower>> + <</link>> + </td> + </tr> + + <tr> + <td style="text-align:right"> + <<link "Add citizens" "Options">> /*Will no longer work as intended due to population changes*/ + <<set $lowerClass += 200>> + <</link>> + | <<link "Remove citizens" "Options">> /*also no longer properly functional*/ + <<set $lowerClass -= 200>> + <<if $lowerClass < 0>> + <<set $lowerClass = 0>> + <</if>> + <</link>> + </td> + + <td style="text-align:left"> + <<link "Raise prosperity" "Options">> + <<set $arcologies[0].prosperity = Math.clamp($arcologies[0].prosperity + 10, 0, 1000)>> + <</link>> + | <<link "Lower prosperity" "Options">> + <<set $arcologies[0].prosperity = Math.clamp($arcologies[0].prosperity - 10, 0, 1000)>> + <</link>> + </td> + </tr> + </table> + <</if>> /* closes SecExp check*/ + </div> +</div> + +<div id="DEBUG/CHEATING" class="tabcontent"> + <div class="content"> + <div class="subHeading"> + ''Debug'' + </div> + <<options $debugMode>> + DebugMode is + <<option 1 "Enabled">> + <<option 0 "Disabled">> + <<comment>> + This will add a Display Variables and Bug Report passage to the sidebar. + <</options>> + + <<if $debugMode > 0>> + <<if ndef $debugModeCustomFunction>> <<set $debugModeCustomFunction = 0>> <</if>> + <<options $debugModeCustomFunction>> + The custom function part of debug mode is currently + <<option 1 "Enabled">> + <<option 0 "Disabled">> + <</options>> <</if>> - <<goto "Options">> - <</link>> -<<else>> - The Security Expansion Mod is currently @@.cyan;ENABLED.@@ [[Disable|Options][$secExp = 0]] -<</if>> -//The mod can be activated in any moment, but it may result in unbalanced gameplay if activated very late in the game.// -<<if def $secExp>> - <<if $secExp == 1>> - <br> [[Security Expansion Options|secExpOptions]] - <</if>> -<</if>> - -<br><br> -''CHEATING OPTIONS'' -<br> -<<if ($cheatMode == 1)>> - Cheatmode is currently @@.cyan;ENABLED.@@ [[Disable|Options][$cheatMode = 0]] - <br> - <<if ($cheatModeM == 1)>> - Sidebar Cheats are currently @@.cyan;SHOWN.@@ [[Disable|Options][$cheatModeM = 0]] - <<else>> - Sidebar Cheats are currently @@.red;HIDDEN.@@ [[Enable|Options][$cheatModeM = 1]] - <</if>> -<<else>> - Cheatmode is currently @@.red;DISABLED.@@ [[Enable|Options][$cheatMode = 1]] - //This will allow manual selection of events and unlock some options that would usually be restricted by progress// -<</if>> -<br> -<<if ($cheatMode == 1)>> - [[Add 100000 money|Options][$cheater = 1, cashX(100000, "cheating")]] | [[Add 10000 rep|Options][$cheater = 1, repX(10000, "cheating")]] //Cheating will be flagged in your save// - <br> -<</if>> - -<<if ($cheatMode == 1)>> - <<if $seeAge == 1>> - Slaves will ''age'' - [[Disable aging|Options][$seeAge = 0]] | - [[Semi aging|Options][$seeAge = 2]] - <<elseif $seeAge == 2>> - Slaves ''will'' celebrate birthdays, but ''not age.'' - [[Enable aging fully|Options][$seeAge = 1]] | - [[Disable aging|Options][$seeAge = 0]] - <<else>> - Slaves will ''not age'' - [[Enable aging|Options][$seeAge = 1]] | - [[Semi aging|Options][$seeAge = 2]] - <</if>> - <br> -<</if>> -<br> -''DEVELOPER OPTIONS'' -<br> -<<if ($debugMode == 1)>> - Debug Mode is currently @@.cyan;ENABLED.@@ [[Disable|Options][$debugMode = 0]] - <<if ndef $debugModeCustomFunction>> <<set $debugModeCustomFunction = 0>> <</if>> - <br>The custom function part of debug mode is currently - <<if $debugModeCustomFunction > 0>> - @@.cyan;ENABLED.@@ [[Disable|Options][$debugModeCustomFunction = 0]] - <<else>> - @@.red;DISABLED.@@ [[Enable|Options][$debugModeCustomFunction = 1]] - <</if>> - <br> -<<else>> - Debug Mode is currently @@.red;DISABLED.@@ [[Enable|Options][$debugMode = 1]] - //This will add a Display Variables and Bug Report passage to the sidebar.// -<</if>> - -<br> -Genetics array test: -<<link "Run Test">><<goto "test genetics">><</link>><<if $cheatMode == 1>> | [[Edit Genetics]]<<else>> | @@.gray;Edit Genetics@@ (Enable cheat mode)<</if>> -<br><<link "Reset RA Rules">><<include "Init Rules">><<goto "Rules Assistant">><</link>> - -<br><br> -''SIDE BAR'' -<br>Cash is -<<if $sideBarOptions.Cash < 1>> - @@.red;HIDDEN.@@ //[[Show|Options][$sideBarOptions.Cash = 1]]// -<<else>> - @@.cyan;SHOWN.@@ //[[Hide|Options][$sideBarOptions.Cash = 0]]// -<</if>> - -<br>Upkeep is -<<if $sideBarOptions.Upkeep < 1>> - @@.red;HIDDEN.@@ //[[Show|Options][$sideBarOptions.Upkeep = 1]]// -<<else>> - @@.cyan;SHOWN.@@ //[[Hide|Options][$sideBarOptions.Upkeep = 0]]// -<</if>> - -<br>Sex slave count is -<<if $sideBarOptions.SexSlaveCount < 1>> - @@.red;HIDDEN.@@ //[[Show|Options][$sideBarOptions.SexSlaveCount = 1]]// -<<else>> - @@.cyan;SHOWN.@@ //[[Hide|Options][$sideBarOptions.SexSlaveCount = 0]]// -<</if>> - -<br>Room population is -<<if $sideBarOptions.roomPop < 1>> - @@.red;HIDDEN.@@ //[[Show|Options][$sideBarOptions.roomPop = 1]]// -<<else>> - @@.cyan;SHOWN.@@ //[[Hide|Options][$sideBarOptions.roomPop = 0]]// -<</if>> - -<br>Rep is -<<if $sideBarOptions.Rep < 1>> - @@.red;HIDDEN.@@ //[[Show|Options][$sideBarOptions.Rep = 1]]// -<<else>> - @@.cyan;SHOWN.@@ //[[Hide|Options][$sideBarOptions.Rep = 0]]// -<</if>> - -<br>GSP is -<<if $sideBarOptions.GSP < 1>> - @@.red;HIDDEN.@@ //[[Show|Options][$sideBarOptions.GSP = 1]]// -<<else>> - @@.cyan;SHOWN.@@ //[[Hide|Options][$sideBarOptions.GSP = 0]]// -<</if>> - -<<if $secExp == 1>> - <br>Authority is - <<if $sideBarOptions.Authority < 1>> - @@.red;HIDDEN.@@ //[[Show|Options][$sideBarOptions.Authority = 1]]// - <<else>> - @@.cyan;SHOWN.@@ //[[Hide|Options][$sideBarOptions.Authority = 0]]// - <</if>> - - <br>Security is - <<if $sideBarOptions.Security < 1>> - @@.red;HIDDEN.@@ //[[Show|Options][$sideBarOptions.Security = 1]]// - <<else>> - @@.cyan;SHOWN.@@ //[[Hide|Options][$sideBarOptions.Security = 0]]// - <</if>> - - <br>Crime is - <<if $sideBarOptions.Crime < 1>> - @@.red;HIDDEN.@@ //[[Show|Options][$sideBarOptions.Crime = 1]]// - <<else>> - @@.cyan;SHOWN.@@ //[[Hide|Options][$sideBarOptions.Crime = 0]]// - <</if>> -<</if>> -/* -<br><br> -[[Enable backwards compatibility|Backwards Compatibility]] -<br> //Select this option to make saves older than 0.9 compatible. If you see a lot of red error messages after loading a save file, using this option may make it possible to continue. Untested for saves earlier than 0.6.// -*/ + <br> + <div class="scLink2"> + Genetics array test: + <<link "Run Test">><<goto "test genetics">><</link>><<if $cheatMode == 1>> | [[Edit Genetics]]<<else>> | @@.gray;Edit Genetics@@ (Enable cheat mode)<</if>> + <br><<link "Reset RA Rules">><<include "Init Rules">><<goto "Rules Assistant">><</link>> + </div> + + <div class="subHeading"> + ''Cheating'' + </div> + + <<options $cheatMode>> + CheatMode is + <<option 1 "Enabled">> + <<option 0 "Disabled">> + <<comment>> + This will allow manual selection of events and unlock some options that would usually be restricted by progress + <</options>> + + <<if $cheatMode > 0>> + <br> + <<options $cheatModeM>> + Sidebar Cheats are currently + <<option 1 "Shown">> + <<option 0 "Hidden">> + <</options>> + <br> + <div class="scLink2"> + [[Add 100000 money|Options][$cheater = 1, cashX(100000, "cheating")]] | [[Add 10000 rep|Options][$cheater = 1, repX(10000, "cheating")]] //Cheating will be flagged in your save// + </div> + <<options $seeAge>> + <<option 2 "Slaves will celebrate birthdays, but not age.">> + <<option 1 "Enable slave aging">> + <<option 0 "Disable slave aging">> + <</options>> + <</if>> + </div> +</div> diff --git a/src/uncategorized/reRecruit.tw b/src/uncategorized/reRecruit.tw index 209119e76823d2e50acb5f713230f99ad58d2c46..683a7485f16c7383cc90b3058a7c207ce1a87bad 100644 --- a/src/uncategorized/reRecruit.tw +++ b/src/uncategorized/reRecruit.tw @@ -1768,6 +1768,7 @@ <<if $activeSlave.vagina < 1>> <<set $activeSlave.vagina = 1>> <</if>> +<<set $activeSlave.pubertyXX = 1>> <<set $activeSlave.preg = 20>> <<set $activeSlave.pregWeek = 20>> <<set $activeSlave.pregKnown = 1>> @@ -1843,6 +1844,7 @@ <<set $activeSlave.trueVirgin = 1>> <<set $activeSlave.vaginaLube = 2>> <<set $activeSlave.ovaries = 1>> +<<set $activeSlave.pubertyXX = 1>> <<set $activeSlave.preg = 40>> <<set $activeSlave.pregWeek = 40>> <<set $activeSlave.pregType = 1>> @@ -1880,6 +1882,7 @@ <<set $activeSlave.vagina = 10>> <<set $activeSlave.vaginaLube = 2>> <<set $activeSlave.ovaries = 1>> +<<set $activeSlave.pubertyXX = 1>> <<set $activeSlave.preg = 43>> <<set $activeSlave.pregWeek = 40>> <<set $activeSlave.pregType = 50>> @@ -1992,6 +1995,7 @@ <<set $activeSlave.shoulders = random(-2,0)>> <<set $activeSlave.boobs += 100>> <<set $activeSlave.canRecruit = 0>> +<<set $activeSlave.pubertyXX = 1>> <<set $activeSlave.preg = 20>> <<set $activeSlave.pregWeek = 20>> <<set $activeSlave.pregType = 1>> diff --git a/src/uncategorized/recETS.tw b/src/uncategorized/recETS.tw index 2aa660cffe71814af654414394b96939395e2e8e..c5212358b6f45777bb4e26e7cc7eb0c7dcb37412 100644 --- a/src/uncategorized/recETS.tw +++ b/src/uncategorized/recETS.tw @@ -1412,7 +1412,7 @@ A matronly $woman comes to your penthouse in tears. It seems $he is a tenant of <br><br> -//Enslaving $him will cost <<print cashFormat($contractCost)>>. Alternatively, you could sell your rights to $him. Less costs, this will bring in <<print cashFormat($slaveCost)>>. As a third option, for <<print cashFormat(($contractCost*2))>> you could manipulate $him to bind both mother and daughter, but you wouldn't be able to examine the daughter first.// +//Enslaving $him will cost <<print cashFormat($contractCost)>>. Alternatively, you could sell your rights to $him. Including costs, this will bring in <<print cashFormat($slaveCost - $contractCost)>>. As a third option, for <<print cashFormat(($contractCost*2))>> you could manipulate $him to bind both mother and daughter, but you wouldn't be able to examine the daughter first.// <<case "posh mother daughter">> @@ -1420,7 +1420,7 @@ An older $woman comes to see you representing $his family business. $He's pretty <br><br> -//Enslaving the mother will cost <<print cashFormat($contractCost)>>. Alternatively, you could sell your rights to $him. Less costs, this will bring in <<print cashFormat($slaveCost)>>. As a third option, for <<print cashFormat(($contractCost*2))>> you could enslave both mother and daughter, but you wouldn't be able to examine the daughter first.// +//Enslaving the mother will cost <<print cashFormat($contractCost)>>. Alternatively, you could sell your rights to $him. Including costs, this will bring in <<print cashFormat($slaveCost - $contractCost)>>. As a third option, for <<print cashFormat(($contractCost*2))>> you could enslave both mother and daughter, but you wouldn't be able to examine the daughter first.// <<case "incest mother son">> @@ -1526,7 +1526,7 @@ You bring up a video feed of the one-room apartment they share. A man, clearly a <br><br> -//Enslaving the younger, sissy sister will cost <<print cashFormat($contractCost)>>. Alternatively, you could sell your rights to $him. Less costs, this will bring in <<print cashFormat($slaveCost)>>. As a third option, for <<print cashFormat(($contractCost*2))>> you could enslave both sisters, but you wouldn't be able to examine the older one first. _He2'll likely be very rebellious and sexually unskilled.// +//Enslaving the younger, sissy sister will cost <<print cashFormat($contractCost)>>. Alternatively, you could sell your rights to $him. Including costs, this will bring in <<print cashFormat($slaveCost - $contractCost)>>. As a third option, for <<print cashFormat(($contractCost*2))>> you could enslave both sisters, but you wouldn't be able to examine the older one first. _He2'll likely be very rebellious and sexually unskilled.// <<case "matched pair">> @@ -1670,11 +1670,11 @@ This call is coming from a public kiosk, which is usually an indication that the <<switch $RecETSevent>> <<case "addict mother daughter" "mismatched pair" "posh mother daughter">> <br><<link "Sell $him immediately">> - <<run cashX($contractCost, "slaveTransfer", $activeSlave)>> + <<run cashX(($slaveCost - $contractCost), "slaveTransfer", $activeSlave)>> <<replace "#result">> $activeSlave.slaveName accepts being resold without much fuss. $He's merely exchanged one unknown owner for another. For all $he knows $his new buyer will be less abusive than you would have been. $He would be less complacent if $he knew who $his buyers are; $he'll be immured in an arcade within the hour. <</replace>> -<</link>> //This will bring in <<print cashFormat($contractCost)>>// +<</link>> //This will bring in <<print cashFormat($slaveCost - $contractCost)>>// <<case "desperate broodmother" "identical herm pair" "identical pair" "incest brother brother" "incest brother sister" "incest father daughter" "incest father son" "incest mother daughter" "incest mother son" "incest sister sister" "incest twin brother" "incest twin sister" "incest twins mixed" "matched pair">> <<default>> diff --git a/src/uncategorized/storyCaption.tw b/src/uncategorized/storyCaption.tw index c18436642d6c0fe33e3cc92e8edfa5d04dd13615..a5e87324fa280f881671dd4d0fc32a55f676ad0c 100644 --- a/src/uncategorized/storyCaption.tw +++ b/src/uncategorized/storyCaption.tw @@ -49,12 +49,12 @@ <<link [[($nextButton)|($nextLink)]]>><</link>> <</if>> </strong></span> - <<if _Pass === "Encyclopedia">> to Free Cities.<</if>> @@.cyan;[Space]@@<br><br> + <<if _Pass === "Encyclopedia">> to Free Cities.<</if>> @@.cyan;[Space]@@<br> <</if>> <</if>> <</if>> -<<if _Pass == "Encyclopedia">> +<<if _Pass == "Encyclopedia">> <br> /* Intro, new players, PC/Gameplay focused */ [[Playing Free Cities|Encyclopedia][$encyclopedia = "Playing Free Cities"]] <br>[[Design your master|Encyclopedia][$encyclopedia = "Design Your Master"]]