* Controlled with the switch_off_control and switch_on_control elements
* Control does not propagate
* Requires noConduct.js
* States exist as two separate elements
This commit is contained in:
Laetitia (O-01-67) 2023-01-30 09:20:42 -05:00 committed by GitHub
parent a173c62563
commit 039290138a
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 47 additions and 0 deletions

47
mods/switches.js Normal file
View File

@ -0,0 +1,47 @@
var modName = "mods/switches.js";
var noConductMod = "mods/noConduct.js";
if(enabledMods.includes(noConductMod)) {
elements.switch_off = {
name: "switch (off)",
color: "#7F3333",
behavior: behaviors.WALL,
noConduct: ["switch_on_control","switch_off_control"],
};
elements.switch_on = {
name: "switch (on)",
color: "#33CC33",
behavior: behaviors.WALL,
conduct: 1,
noConduct: ["switch_on_control","switch_off_control"],
};
elements.switch_off_control = {
color: "#FF3333",
behavior: behaviors.WALL,
behaviorOn: [
"XX|CH:switch_on>switch_off|XX",
"CH:switch_on>switch_off|XX|CH:switch_on>switch_off",
"XX|CH:switch_on>switch_off|XX"
],
conduct: 1,
noConduct: ["switch_on","switch_off"],
};
elements.switch_on_control = {
color: "#33FF33",
behavior: behaviors.WALL,
behaviorOn: [
"XX|CH:switch_off>switch_on|XX",
"CH:switch_off>switch_on|XX|CH:switch_off>switch_on",
"XX|CH:switch_off>switch_on|XX"
],
conduct: 1,
noConduct: ["switch_on","switch_off"],
};
} else {
enabledMods.splice(enabledMods.indexOf(modName),0,noConductMod)
alert(`The ${noConductMod} mod is required and has been automatically inserted (reload for this to take effect).`)
localStorage.setItem("enabledMods", JSON.stringify(enabledMods));
};