From 1269d562059d2129a22023489c08c351bb8f8708 Mon Sep 17 00:00:00 2001 From: Vasileios Pasialiokis <whiterocket@outlook.com> Date: Mon, 16 Jul 2018 15:16:44 +0300 Subject: [PATCH] add custom label support to RA --- src/js/DefaultRules.tw | 8 ++++++++ src/js/rulesAssistant.tw | 1 + src/js/rulesAssistantOptions.tw | 19 +++++++++++++++++++ src/uncategorized/BackwardsCompatibility.tw | 6 +++--- 4 files changed, 31 insertions(+), 3 deletions(-) diff --git a/src/js/DefaultRules.tw b/src/js/DefaultRules.tw index 2b7898375cc..a456dac92a1 100644 --- a/src/js/DefaultRules.tw +++ b/src/js/DefaultRules.tw @@ -53,6 +53,7 @@ window.DefaultRules = (function() { ProcessSmartPiercings(slave, rule); ProcessTattoos(slave, rule); ProcessPorn(slave, rule); + ProcessLabel(slave, rule); return r; } @@ -2183,6 +2184,13 @@ window.DefaultRules = (function() { } } } + + function ProcessLabel(slave, rule) { + if (rule.label !== "no default setting" && slave.customLabel !== rule.label) { + slave.customLabel = rule.label; + r += `<br>${slave.slaveName}'s label has been set to ${rule.label}`; + } + } return DefaultRules; })(); diff --git a/src/js/rulesAssistant.tw b/src/js/rulesAssistant.tw index 8ade85b9a42..2116d3a4d48 100644 --- a/src/js/rulesAssistant.tw +++ b/src/js/rulesAssistant.tw @@ -289,6 +289,7 @@ window.emptyDefaultRule = function emptyDefaultRule() { pregSpeed: "no default setting", bellyImplantVol: -1, teeth: "no default setting", + label: "no default setting", } }; return rule; diff --git a/src/js/rulesAssistantOptions.tw b/src/js/rulesAssistantOptions.tw index dd4a98aa105..e42f161bc1d 100644 --- a/src/js/rulesAssistantOptions.tw +++ b/src/js/rulesAssistantOptions.tw @@ -890,6 +890,7 @@ window.rulesAssistantOptions = (function() { this.appendChild(new AutosurgerySection()); this.appendChild(new RegimenSection()); this.appendChild(new BehaviourSection()); + this.appendChild(new OtherSection()); } render() { @@ -960,6 +961,13 @@ window.rulesAssistantOptions = (function() { this.appendChild(new PornList()); } } + + class OtherSection extends Section { + constructor() { + super("Other Settings"); + this.appendChild(new LabelList()); + } + } class CosmeticSection extends Section { constructor() { @@ -3132,5 +3140,16 @@ window.rulesAssistantOptions = (function() { } } + class LabelList extends List { + constructor() { + const items = [ + ["no default setting"], + ]; + super("Custom label", items, true); + this.setValue(current_rule.set.label); + this.onchange = (value) => current_rule.set.label = value; + } + } + return rulesAssistantOptions; })(); diff --git a/src/uncategorized/BackwardsCompatibility.tw b/src/uncategorized/BackwardsCompatibility.tw index 87c736cf6b9..22778d4a108 100644 --- a/src/uncategorized/BackwardsCompatibility.tw +++ b/src/uncategorized/BackwardsCompatibility.tw @@ -2946,6 +2946,6 @@ Done! else x.set.preg = false; })>> -<<run $defaultRules.filter(x => !([1, 0, "no default setting"].includes(x.set.haircuts))).forEach(x => { - x.set.haircuts = "no default setting"; -})>> +<<run $defaultRules.filter(x => x.set.haircuts === undefined).forEach(x => { x.set.haircuts = "no default setting"; })>> + +<<run $defaultRules.filter(x => x.set.label === undefined).forEach(x => { x.set.label = "no default setting"; }>> -- GitLab