diff --git a/src/cheats/PCCheatMenu.tw b/src/cheats/PCCheatMenu.tw index 24e82d46702834b6d043c40d5b21da6bd3e9e063..1e21631262049e458e26260e4eee262755f41951 100644 --- a/src/cheats/PCCheatMenu.tw +++ b/src/cheats/PCCheatMenu.tw @@ -3,7 +3,7 @@ <<set $showEncyclopedia = 0, $nextButton = "Apply", $nextLink = "PCCheatMenuCheatDatatypeCleanup">> <<set $tempSlave = clone($PC)>> -''Cheat Editing Player Character'' [[ [Cancel] |"Manage Personal Affairs"][$tempSlave = "unset"]] +''Cheat Editing Player Character'' <<link "[Cancel]" "Manage Personal Affairs">><<unset $tempSlave, $customEvalCode>><</link>> <br><br> @@ -316,4 +316,8 @@ Title: ''<<if $tempSlave.title == 0>>Master<<else>>Mistress<</if>>'' <br>Your mother ID: <<textbox "$tempSlave.mother" $tempSlave.mother>> <br>Your father ID: -<<textbox "$tempSlave.father" $tempSlave.father>> \ No newline at end of file +<<textbox "$tempSlave.father" $tempSlave.father>> + +<br><br>Custom Cheat: +<br><<textarea "$customEvalCode" "">> +<br>//Any JavaScript function will be automatically run using the PC as an argument when "Apply" is clicked. For example, entering "(PC) => PC.name = 'Fancy Name' " will change your name to "Fancy Name".// diff --git a/src/cheats/PCCheatMenuCheatDatatypeCleanup.tw b/src/cheats/PCCheatMenuCheatDatatypeCleanup.tw index 54dd215a0cc10e1767f719079496ce61ce48573a..1881612dd7dbfb34a0bf3bffb7997ceb8c1ff055 100644 --- a/src/cheats/PCCheatMenuCheatDatatypeCleanup.tw +++ b/src/cheats/PCCheatMenuCheatDatatypeCleanup.tw @@ -7,6 +7,11 @@ <<goto "Manage Personal Affairs">> <</if>> +<<if typeof eval($customEvalCode) === "function">> + <<run eval($customEvalCode)($tempSlave)>> +<</if>> +<<unset $customEvalCode>> + <<set $tempSlave.preg = Number($tempSlave.preg) || 0>> <<set $tempSlave.pregSource = Number($tempSlave.pregSource) || 0>> <<set $tempSlave.pregType = Number($tempSlave.pregType) || 0>> diff --git a/src/cheats/mod_EditArcologyCheat.tw b/src/cheats/mod_EditArcologyCheat.tw index e46711ae0c16242dbd3b10f34876088c549e623b..ea0ec5f24a0ceb0b1806d43fce3778e1d41f6935 100644 --- a/src/cheats/mod_EditArcologyCheat.tw +++ b/src/cheats/mod_EditArcologyCheat.tw @@ -162,8 +162,8 @@ International slave variety is [[Enable non-erotic events|MOD_Edit Arcology Cheat][$plot = 1]] <</if>> -<br><br> -/*<<nobr>> +/*<br><br> +<<nobr>> <<if $normalizedEvents == 1>> Random events distribution: ''normalized''. Random events will happen with equal frequency. [[Realistic|MOD_Edit Arcology Cheat][$normalizedEvents = 0]] @@ -329,3 +329,7 @@ International slave variety is <br>You own: ''$arcologies[0].ownership%'' of the arcology <<textbox "$arcologies[0].ownership" $arcologies[0].ownership>> <br>Other minority ownership: ''$arcologies[0].minority%'' <<textbox "$arcologies[0].minority" $arcologies[0].minority>> <br>$arcologies[0].name's GSP is @@.yellowgreen;<<print cashFormat(Math.trunc(0.1*$arcologies[0].prosperity))>>m@@. + +<br><br>''Custom Cheat'' +<br><<textarea "$customEvalCode" "">> +<br>//Any JavaScript function will be automatically run using your arcology as an argument when "Continue" is clicked. For example, entering "(arcology) => arcology.name = 'Fancy Name' " will change your arcology name to "Fancy Name".// diff --git a/src/cheats/mod_EditArcologyCheatDatatypeCleanup.tw b/src/cheats/mod_EditArcologyCheatDatatypeCleanup.tw index 875fb01ef488c2ee7a58aecea9ec1c157ab3465c..44d10da7e6bed946c1fbf3e971a3c9ae32b2ea9d 100644 --- a/src/cheats/mod_EditArcologyCheatDatatypeCleanup.tw +++ b/src/cheats/mod_EditArcologyCheatDatatypeCleanup.tw @@ -2,6 +2,11 @@ <<set $nextButton = "Continue", $nextLink = "Manage Arcology">> +<<if typeof eval($customEvalCode) === "function">> + <<run eval($customEvalCode)($arcologies[0])>> +<</if>> +<<unset $customEvalCode>> + <<set $ACitizens = Number($ACitizens) || 0>> <<set $ACitizenLimit = Number($ACitizenLimit) || 0>> <<set $ASlaves = Number($ASlaves) || 0>> diff --git a/src/cheats/mod_EditSlaveCheatDatatypeCleanupNew.tw b/src/cheats/mod_EditSlaveCheatDatatypeCleanupNew.tw index 5cccbfff938c18ef3c977969a2964c68e299686c..516a3b61fe99a70f1e146922694e61d49a4b1495 100644 --- a/src/cheats/mod_EditSlaveCheatDatatypeCleanupNew.tw +++ b/src/cheats/mod_EditSlaveCheatDatatypeCleanupNew.tw @@ -6,6 +6,12 @@ <<unset $tempSlave>> <<goto "Slave Interact">> <</if>> + +<<if typeof eval($customEvalCode) === "function">> + <<run eval($customEvalCode)($tempSlave)>> +<</if>> +<<unset $customEvalCode>> + <<set $rep = Number($rep) || 0>> <<set $cash = Number($cash) || 0>> <<set $week = Number($week) || 1>> diff --git a/src/cheats/mod_editSlaveCheatNew.tw b/src/cheats/mod_editSlaveCheatNew.tw index 9e35f9edcfe2392192141573b2f76af21f4baa1a..73fea77593a65731e886362068b2e6b4a89baad7 100644 --- a/src/cheats/mod_editSlaveCheatNew.tw +++ b/src/cheats/mod_editSlaveCheatNew.tw @@ -3646,7 +3646,7 @@ <br> <</widget>> -''Cheat Edit Slave '' [[ [Cancel] |"Slave Interact"][$tempSlave = "unset"]] +''Cheat Edit Slave '' <<link "[Cancel]" "Slave Interact">><<unset $tempSlave, $customEvalCode>><</link>> <br> <br><br> /*-------------------------------------------------------------------------------------------------------------------------------*/ @@ -4123,6 +4123,14 @@ <</if>> <</link>> /*-------------------------------------------------------------------------------------------------------------------------------*/ +<br> +<<link "Custom Cheat">> + <<replace "#spot">> + <br><<textarea "$customEvalCode" "">> + <br>//Any JavaScript function will be automatically run using this slave as an argument when "Continue" is clicked. For example, entering "(slave) => slave.slaveName = 'Fancy Name' " will change your slave's name to "Fancy Name".// + <</replace>> +<</link>> +/*-------------------------------------------------------------------------------------------------------------------------------*/ <br><<print "@@.yellow;Refresh through selecting a new or the same passage again for Changes to be seen@@" >><br> <span id="spot"></span><br> /* ------------------------------------------------------------------------- Used Variables: ------------------------------------------------------------------------------------------------*/