diff --git a/js/003-data/gameVariableData.js b/js/003-data/gameVariableData.js index 15d295d1db54e7e4953cf219bf72dd1c859cec38..a2781ac42b6a9e7e0029e5c805ac4cce61669259 100644 --- a/js/003-data/gameVariableData.js +++ b/js/003-data/gameVariableData.js @@ -784,8 +784,8 @@ App.Data.resetOnNGPlus = { }, customItem: { /** @type {Map<string, slaveButtplugs>} */ - buttPlugs: new Map([]), - dildos: new Map([]), + buttplug: new Map([]), + vaginalAccessory: new Map([]), }, dairyPiping: 0, milkPipeline: 0, diff --git a/js/003-data/slaveWearData.js b/js/003-data/slaveWearData.js index 8cab5e39f1d0c3014ffd3718bef01027589d2894..2f8b6e4374e123e50e6cec791162894b4f484e77 100644 --- a/js/003-data/slaveWearData.js +++ b/js/003-data/slaveWearData.js @@ -831,9 +831,9 @@ App.Data.clothes = new Map([ * @typedef {Map<string, slaveWear>} slaveWearCategory */ -/** @type {Object.<string, slaveWearCategory>} */ +/** @type {Object.<string, slaveWearCategory>} string should be the slave property being modified.*/ App.Data.slaveWear = { - collars: new Map([ + collar: new Map([ ["stylish leather", {name: "Stylish leather"}], ["satin choker", {name: "Satin choker"}], ["silk ribbon", {name: "Silken ribbon"}], @@ -940,7 +940,7 @@ App.Data.slaveWear = { ], ]), - bellyAccessories: new Map([ + bellyAccessory: new Map([ ["none", {name: "None"}], ["a corset", {name: "Tight corset"}], ["an extreme corset", {name: "Extreme corset"}], @@ -983,7 +983,7 @@ App.Data.slaveWear = { ] ]), - vaginalAttachments: new Map([ + vaginalAttachment: new Map([ ["none", {name: "None"}], ["vibrator", { @@ -1003,7 +1003,7 @@ App.Data.slaveWear = { ] ]), - dickAccessories: new Map([ + dickAccessory: new Map([ ["none", {name: "None"}], ["bullet vibrator", {name: "Bullet vibrator"}], ["smart bullet vibrator", @@ -1016,7 +1016,7 @@ App.Data.slaveWear = { ] ]), - buttplugAttachments: new Map([ + buttplugAttachment: new Map([ ["none", {name: "None"}], ["tail", { @@ -1155,7 +1155,7 @@ App.Data.shoes = new Map([ // TODO: add lift property /** * @type {Map<string, slaveButtplugs>} */ -App.Data.buttplugs = new Map([ +App.Data.buttplug = new Map([ ["none", { name: "None", @@ -1228,7 +1228,7 @@ App.Data.buttplugs = new Map([ /** * @type {Map<string, vaginalAccessories>} */ -App.Data.vaginalAccessories = new Map([ +App.Data.vaginalAccessory = new Map([ ["none", { name: "None", @@ -1318,7 +1318,7 @@ App.Data.vaginalAccessories = new Map([ */ /** @type {Map<string, slaveWearChastity>} */ -App.Data.chastityDevices = new Map([ +App.Data.chastity = new Map([ // '.value' must be a string, so using update slave so I can update multiple values. ["none", { diff --git a/src/002-config/fc-version.js b/src/002-config/fc-version.js index a32907891c993e61ad8840a3e53ca348c209fc0d..3237b6715c38fbe0ccc74c8a364f1738b51b00bd 100644 --- a/src/002-config/fc-version.js +++ b/src/002-config/fc-version.js @@ -2,5 +2,5 @@ App.Version = { base: "0.10.7.1", // The vanilla version the mod is based off of, this should never be changed. pmod: "3.8.4", commitHash: null, - release: 1114 // When getting close to 2000, please remove the check located within the onLoad() function defined at line five of src/js/eventHandlers.js. + release: 1115 // When getting close to 2000, please remove the check located within the onLoad() function defined at line five of src/js/eventHandlers.js. }; diff --git a/src/data/backwardsCompatibility/backwardsCompatibility.js b/src/data/backwardsCompatibility/backwardsCompatibility.js index f1068b1b5f5ef1d444787b376ede0d44b8f8c927..19182f0e0c937bc90b3f445ca0c4705927ffdd14 100644 --- a/src/data/backwardsCompatibility/backwardsCompatibility.js +++ b/src/data/backwardsCompatibility/backwardsCompatibility.js @@ -152,6 +152,14 @@ App.Update.globalVariables = function(node) { if (jQuery.isEmptyObject(V.scarDesign)) { V.scarDesign = {primary: "generic", local: "generic"}; } + if (V.customItem.hasOwnProperty("dildos")) { + V.customItem.vaginalAccessory = V.customItem.dildos; + delete V.customItem.dildos; + } + if (V.customItem.hasOwnProperty("buttPlugs")) { + V.customItem.buttplug = V.customItem.buttPlugs; + delete V.customItem.buttPlugs; + } if (V.releaseID <= 1110) { V.researchLab.tasks = V.researchLab.tasks.filter((t) => (!(t.hasOwnProperty("slaveID")) || Object.keys(V.slaveIndices).includes(t.slaveID))); } diff --git a/src/data/backwardsCompatibility/datatypeCleanup.js b/src/data/backwardsCompatibility/datatypeCleanup.js index 8639ad1068209f28982481cb1735756fce6788e2..393f0435ad68314852c96283f1ab0517801a5cb4 100644 --- a/src/data/backwardsCompatibility/datatypeCleanup.js +++ b/src/data/backwardsCompatibility/datatypeCleanup.js @@ -2106,7 +2106,7 @@ App.Entity.Utils.RARuleDatatypeCleanup = function() { ]); for (const acc of vaginalAccessories) { - if (set[acc] && !(App.Data.vaginalAccessories.get(set[acc]) || V.customItem.dildos.get(set[acc]))) { + if (set[acc] && !(App.Data.vaginalAccessory.get(set[acc]) || V.customItem.dildos.get(set[acc]))) { set[acc] = null; } } @@ -2117,7 +2117,7 @@ App.Entity.Utils.RARuleDatatypeCleanup = function() { ]); for (const acc of dickAccessories) { - if (set[acc] && !(App.Data.slaveWear.dickAccessories.get(set[acc]))) { + if (set[acc] && !(App.Data.slaveWear.dickAccessory.get(set[acc]))) { set[acc] = null; } } diff --git a/src/endWeek/saClothes.js b/src/endWeek/saClothes.js index 3a967c423c10129982072b43fcc85f44079d59ee..14ec49e179aa3c613d946dc00006708a0c5a1a15 100644 --- a/src/endWeek/saClothes.js +++ b/src/endWeek/saClothes.js @@ -920,7 +920,7 @@ App.SlaveAssignment.clothes = (function() { * */ function vaginaAccessories(slave) { - const dildo = App.Data.vaginalAccessories.get(slave.vaginalAccessory) || V.customItem.dildos.get(slave.vaginalAccessory); + const dildo = App.Data.vaginalAccessory.get(slave.vaginalAccessory) || V.customItem.dildos.get(slave.vaginalAccessory); if (slave.vaginalAccessory !== "none") { if (dildo.width === 0) { r.push(`Constantly wearing a ${slave.vaginalAccessory}`); diff --git a/src/endWeek/saLiveWithHG.js b/src/endWeek/saLiveWithHG.js index 0f91df75a3bee70e0a16c8ecce969622a2879f06..c39db29342c40e003bfe14d62e3868799ddbb69e 100644 --- a/src/endWeek/saLiveWithHG.js +++ b/src/endWeek/saLiveWithHG.js @@ -1123,7 +1123,7 @@ App.SlaveAssignment.liveWithHG = (function() { slave.clothes = "slutty business attire"; } else if (HG.fetish === "masochist") { r.push(`${HG.slaveName} keeps ${slave.slaveName}`); - if (isItemAccessible.entry("battledress", "clothing")) { + if (isItemAccessible.entry("battledress", "clothes")) { r.push(`in battledress, since ${he2} likes the fantasy of being raped by a soldier ${girl}.`); slave.clothes = "battledress"; } else { diff --git a/src/events/RESS/lazyEvening.js b/src/events/RESS/lazyEvening.js index 283c49dd12cab7be2ffed19dfae870259cfce0f6..add2da8f962bc980016d7e0e2711bc8f4e0dbcfa 100644 --- a/src/events/RESS/lazyEvening.js +++ b/src/events/RESS/lazyEvening.js @@ -34,7 +34,7 @@ App.Events.RESSLazyEvening = class RESSLazyEvening extends App.Events.BaseEvent } else if (slave.intelligence+slave.intelligenceImplant > 50) { return "a halter top dress"; } else if (slave.muscles > 30) { - if (isItemAccessible.entry("sport shorts", "clothing")) { + if (isItemAccessible.entry("sport shorts", "clothes")) { if (slave.boobs >= 650) { return "sport shorts and a sports bra"; } else { diff --git a/src/facilities/wardrobe/wardrobeShopping.js b/src/facilities/wardrobe/wardrobeShopping.js index c1aa035e680c1476eb3d57537a7c0d7ffcdbdffb..06f4beb7f1f361ca747db9634745aa1aaad9ac70 100644 --- a/src/facilities/wardrobe/wardrobeShopping.js +++ b/src/facilities/wardrobe/wardrobeShopping.js @@ -7,7 +7,7 @@ App.UI.WardrobeShopping = function() { let r = []; r.push(`The room containing all the clothes and accessories you have available to dress your slaves in, as well as the supplies and tools your tailor needs to resize them to better fit your slaves. Several mirrors are set up for a slave to try on outfits should they be allowed to dress themselves. The selection includes`); - const ownItAll = Array.from(App.Data.clothes.keys()).every((key) => isItemAccessible.entry(key, "clothing")); + const ownItAll = Array.from(App.Data.clothes.keys()).every((key) => isItemAccessible.entry(key, "clothes")); if (ownItAll) { r.push(`outfits from all manner of cultures and societies; not a single style eludes you.`); @@ -117,7 +117,7 @@ App.UI.WardrobeShopping = function() { } } } - if (clothing !== "egypt" && !isItemAccessible.entry(model.clothes, "clothing") || + if (clothing !== "egypt" && !isItemAccessible.entry(model.clothes, "clothes") || (clothing === "egypt" && !isItemAccessible.entry("ancient Egyptian", "collar")) // Fuck Egypt ) { if (cost < V.cash) { diff --git a/src/interaction/siWardrobe.js b/src/interaction/siWardrobe.js index ec4100d6ad67a39bf43c266666f08bcf6309dde7..574596fb0df796b287f77c2a61b7fb6f588c562f 100644 --- a/src/interaction/siWardrobe.js +++ b/src/interaction/siWardrobe.js @@ -182,7 +182,7 @@ App.UI.SlaveInteract.wardrobe = function(slave) { const el = new DocumentFragment(); let array = []; - for (const [key, object] of App.Data.slaveWear.collars) { + for (const [key, object] of App.Data.slaveWear.collar) { if (key === "choosing her own clothes") { continue; } @@ -428,7 +428,7 @@ App.UI.SlaveInteract.wardrobe = function(slave) { let optionsArray = []; - for (const [key, object] of App.Data.slaveWear.bellyAccessories) { + for (const [key, object] of App.Data.slaveWear.bellyAccessory) { if (key === "none") { // skip none in set, we set the link elsewhere. continue; @@ -496,7 +496,7 @@ App.UI.SlaveInteract.wardrobe = function(slave) { let normalArray = []; let longArray = []; - for (const [key, object] of App.Data.buttplugs) { + for (const [key, object] of App.Data.buttplug) { if (key === "none") { // skip none in set, we set the link elsewhere. continue; @@ -558,7 +558,7 @@ App.UI.SlaveInteract.wardrobe = function(slave) { let optionsArray = []; - for (const [key, object] of App.Data.slaveWear.buttplugAttachments) { + for (const [key, object] of App.Data.slaveWear.buttplugAttachment) { if (key === "none") { // skip none in set, we set the link elsewhere. continue; @@ -606,7 +606,7 @@ App.UI.SlaveInteract.wardrobe = function(slave) { let normalArray = []; let longArray = []; - for (const [key, object] of App.Data.vaginalAccessories) { + for (const [key, object] of App.Data.vaginalAccessory) { if (key === "none") { // skip none in set, we set the link elsewhere. continue; @@ -658,7 +658,7 @@ App.UI.SlaveInteract.wardrobe = function(slave) { let optionsArray = []; - for (const [key, object] of App.Data.slaveWear.vaginalAttachments) { + for (const [key, object] of App.Data.slaveWear.vaginalAttachment) { if (key === "none") { // skip none in set, we set the link elsewhere. continue; @@ -702,7 +702,7 @@ App.UI.SlaveInteract.wardrobe = function(slave) { let optionsArray = []; - for (const [key, object] of App.Data.slaveWear.dickAccessories) { + for (const [key, object] of App.Data.slaveWear.dickAccessory) { if (key === "none") { // skip none in set, we set the link elsewhere. continue; @@ -777,7 +777,7 @@ App.UI.SlaveInteract.wardrobe = function(slave) { let optionsArray = []; - for (const [key, object] of App.Data.chastityDevices) { + for (const [key, object] of App.Data.chastity) { if (key === "none") { // skip none in set, we set the link elsewhere. continue; diff --git a/src/js/itemAvailability.js b/src/js/itemAvailability.js index 1a70b09f052bc9cbde194c99b878d0eb70d12841..88c30da783e1db0cffa0fa171930d404468a8773 100644 --- a/src/js/itemAvailability.js +++ b/src/js/itemAvailability.js @@ -7,52 +7,15 @@ globalThis.isItemAccessible = (function() { /** * Checks whether an item is accessible * @param {string} string Name of wearable item - * @param {string} [category="clothing"] that item is in clothing, collar, etc + * @param {string} [category="clothes"] that item is in clothing, collar, etc * @param {App.Entity.SlaveState} [slave] * @returns {boolean|string} Returns true if item is accessible, and false if it is not. If the slave param is set, it may sometimes return a string instead of false, explaining why the item can't be used with that slave. */ - function entry(string, category = "clothing", slave) { + function entry(string, category = "clothes", slave) { if (V.cheatMode === 1) { return true; } - let selectedDB; - switch (category) { - case "clothing": - case "clothes": - selectedDB = App.Data.clothes; - break; - case "collar": - selectedDB = App.Data.slaveWear.collars; - break; - case "bellyAccessory": - selectedDB = App.Data.slaveWear.bellyAccessories; - break; - case "buttplug": - selectedDB = App.Data.buttplugs; - break; - case "buttplugAttachment": - selectedDB = App.Data.slaveWear.buttplugAttachments; - break; - case "vaginalAccessory": - selectedDB = App.Data.vaginalAccessories; - break; - case "vaginalAttachment": - selectedDB = App.Data.slaveWear.vaginalAttachments; - break; - case "dickAccessory": - selectedDB = App.Data.slaveWear.dickAccessories; - break; - case "shoes": - selectedDB = App.Data.shoes; - break; - case "chastity": - selectedDB = App.Data.chastityDevices; - break; - default: - // console.log(`made a category for ${category} automatically, may need to define this by hand`); - selectedDB = App.Data.slaveWear[category]; - break; - } + const selectedDB = App.Data.slaveWear[category] || App.Data[category]; const item = selectedDB.get(string); if (!item) { console.log(`${string} is not a registered piece of clothing! Check App.Data.slaveWear.${category}`); @@ -83,11 +46,11 @@ globalThis.isItemAccessible = (function() { /** * @param {object} item - * @param {string} [category="clothing"] that item is in clothing, collar, etc + * @param {string} [category="clothes"] that item is in clothing, collar, etc * @param {App.Entity.SlaveState} [slave] * @returns {boolean|string} Returns true if item is accessible, and false if it is not. If the slave param is set, it may sometimes return a string instead of false, explaining why the item can't be used with that slave. */ - function isAvailable(item, category, slave) { + function isAvailable(item, category = "clothes", slave) { let slaveResults; if (slave) { slaveResults = isAvailableForSlave(item, category, slave); @@ -117,13 +80,12 @@ globalThis.isItemAccessible = (function() { /** * @param {object} item - * @param {string} [category="clothing"] that item is in clothing, collar, etc + * @param {string} [category="clothes"] that item is in clothing, collar, etc * @param {App.Entity.SlaveState} [slave] * @returns {boolean|string} Returns true if item is accessible, and false if it is not. If the slave param is set, it may sometimes return a string instead of false, explaining why the item can't be used with that slave. */ function isAvailableForSlave(item, category, slave) { switch (category) { - case "clothing": case "clothes": break; case "collar": diff --git a/src/js/rulesAssistantOptions.js b/src/js/rulesAssistantOptions.js index 23c59b39e43381f354f08f40a589136c55afc656..78be3d3730f617fe11a0ed7724cf2a022b5ddbb6 100644 --- a/src/js/rulesAssistantOptions.js +++ b/src/js/rulesAssistantOptions.js @@ -1836,11 +1836,11 @@ App.RA.options = (function() { ]; super("Collar", items); - const niceCollars = isItemAccessible.array(App.Data.slaveWear.collars, "harsh", false); + const niceCollars = isItemAccessible.array(App.Data.slaveWear.collar, "harsh", false); niceCollars.sort(function(a, b) { if (a[0] < b[0]) { return -1; } if (a[0] > b[0]) { return 1; } return 0; }); this._nice = new ListSubSection(this, "Nice", niceCollars); - const harshCollars = isItemAccessible.array(App.Data.slaveWear.collars, "harsh", true); + const harshCollars = isItemAccessible.array(App.Data.slaveWear.collar, "harsh", true); harshCollars.sort(function(a, b) { if (a[0] < b[0]) { return -1; } if (a[0] > b[0]) { return 1; } return 0; }); this._harsh = new ListSubSection(this, "Harsh", harshCollars); @@ -1882,7 +1882,7 @@ App.RA.options = (function() { class CorsetList extends ListSelector { constructor() { - super("Corsetage", isItemAccessible.array(App.Data.slaveWear.bellyAccessories)); + super("Corsetage", isItemAccessible.array(App.Data.slaveWear.bellyAccessory)); this.setValue(current_rule.set.bellyAccessory); this.onchange = (value) => current_rule.set.bellyAccessory = value; } @@ -1928,7 +1928,7 @@ App.RA.options = (function() { class VagAccVirginsList extends ListSelector { constructor() { - super("Vaginal accessories for virgins", isItemAccessible.array(App.Data.vaginalAccessories)); + super("Vaginal accessories for virgins", isItemAccessible.array(App.Data.vaginalAccessory)); this.setValue(current_rule.set.virginAccessory); this.onchange = (value) => current_rule.set.virginAccessory = value; } @@ -1936,7 +1936,7 @@ App.RA.options = (function() { class VagAccAVirginsList extends ListSelector { constructor() { - super("Vaginal accessories for anal virgins", isItemAccessible.array(App.Data.vaginalAccessories)); + super("Vaginal accessories for anal virgins", isItemAccessible.array(App.Data.vaginalAccessory)); this.setValue(current_rule.set.aVirginAccessory); this.onchange = (value) => current_rule.set.aVirginAccessory = value; } @@ -1944,7 +1944,7 @@ App.RA.options = (function() { class VagAccOtherList extends ListSelector { constructor() { - super("Vaginal accessories for other slaves", isItemAccessible.array(App.Data.vaginalAccessories)); + super("Vaginal accessories for other slaves", isItemAccessible.array(App.Data.vaginalAccessory)); this.setValue(current_rule.set.vaginalAccessory); this.onchange = (value) => current_rule.set.vaginalAccessory = value; } @@ -1952,7 +1952,7 @@ App.RA.options = (function() { class VaginalAttachmentsList extends ListSelector { constructor() { - super("Vaginal attachments for slaves with vaginal accessories", isItemAccessible.array(App.Data.slaveWear.vaginalAttachments)); + super("Vaginal attachments for slaves with vaginal accessories", isItemAccessible.array(App.Data.slaveWear.vaginalAttachment)); this.setValue(current_rule.set.vaginalAttachment); this.onchange = (value) => current_rule.set.vaginalAttachment = value; } @@ -1972,7 +1972,7 @@ App.RA.options = (function() { class DickAccVirginsList extends ListSelector { constructor() { - super("Dick accessories for anal virgins", isItemAccessible.array(App.Data.slaveWear.dickAccessories)); + super("Dick accessories for anal virgins", isItemAccessible.array(App.Data.slaveWear.dickAccessory)); this.setValue(current_rule.set.aVirginDickAccessory); this.onchange = (value) => current_rule.set.aVirginDickAccessory = value; } @@ -1980,7 +1980,7 @@ App.RA.options = (function() { class DickAccOtherList extends ListSelector { constructor() { - super("Dick accessories for other slaves", isItemAccessible.array(App.Data.slaveWear.dickAccessories)); + super("Dick accessories for other slaves", isItemAccessible.array(App.Data.slaveWear.dickAccessory)); this.setValue(current_rule.set.dickAccessory); this.onchange = (value) => current_rule.set.dickAccessory = value; } @@ -2000,7 +2000,7 @@ App.RA.options = (function() { class ButtplugsVirginsList extends ListSelector { constructor() { - super("Buttplugs for anal virgins", isItemAccessible.array(App.Data.buttplugs)); + super("Buttplugs for anal virgins", isItemAccessible.array(App.Data.buttplug)); this.setValue(current_rule.set.aVirginButtplug); this.onchange = (value) => current_rule.set.aVirginButtplug = value; } @@ -2008,7 +2008,7 @@ App.RA.options = (function() { class ButtplugsOtherList extends ListSelector { constructor() { - super("Buttplugs for other slaves", isItemAccessible.array(App.Data.buttplugs)); + super("Buttplugs for other slaves", isItemAccessible.array(App.Data.buttplug)); this.setValue(current_rule.set.buttplug); this.onchange = (value) => current_rule.set.buttplug = value; } @@ -2016,7 +2016,7 @@ App.RA.options = (function() { class ButtplugAttachmentsList extends ListSelector { constructor() { - super("Buttplug attachments for slaves with buttplugs", isItemAccessible.array(App.Data.slaveWear.buttplugAttachments)); + super("Buttplug attachments for slaves with buttplugs", isItemAccessible.array(App.Data.slaveWear.buttplugAttachment)); this.setValue(current_rule.set.buttplugAttachment); this.onchange = (value) => current_rule.set.buttplugAttachment = value; } diff --git a/src/js/utilsAssessSlave.js b/src/js/utilsAssessSlave.js index 804be4ec9edc2951ae2003b6e1ae607a055a4dc4..08afc9fc5d2bb9b5f5bcec58ebbe6a24181c19cc 100644 --- a/src/js/utilsAssessSlave.js +++ b/src/js/utilsAssessSlave.js @@ -274,7 +274,7 @@ globalThis.shoeHeight = function(slave) { * @returns {0|1|2|3} */ globalThis.plugWidth = function(slave) { - const plug = App.Data.buttplugs.get(slave.buttplug) || V.customItem.buttPlugs.get(slave.buttplug); + const plug = App.Data.buttplug.get(slave.buttplug) || V.customItem.buttPlugs.get(slave.buttplug); return plug.width || 0; }; @@ -283,7 +283,7 @@ globalThis.plugWidth = function(slave) { * @returns {0|1|2|3} */ globalThis.plugLength = function(slave) { - const plug = App.Data.buttplugs.get(slave.buttplug) || V.customItem.buttPlugs.get(slave.buttplug); + const plug = App.Data.buttplug.get(slave.buttplug) || V.customItem.buttPlugs.get(slave.buttplug); return plug.length || 0; }; @@ -292,7 +292,7 @@ globalThis.plugLength = function(slave) { * @returns {0|1|2|3} */ globalThis.dildoWidth = function(slave) { - const dildo = App.Data.vaginalAccessories.get(slave.vaginalAccessory) || V.customItem.dildos.get(slave.vaginalAccessory); + const dildo = App.Data.vaginalAccessory.get(slave.vaginalAccessory) || V.customItem.dildos.get(slave.vaginalAccessory); if (dildo === undefined) { console.log("missing dildo: ", slave.vaginalAccessory) return 0 @@ -305,7 +305,7 @@ globalThis.dildoWidth = function(slave) { * @returns {0|1|2} */ globalThis.dildoLength = function(slave) { - const dildo = App.Data.vaginalAccessories.get(slave.vaginalAccessory) || V.customItem.dildos.get(slave.vaginalAccessory); + const dildo = App.Data.vaginalAccessory.get(slave.vaginalAccessory) || V.customItem.dildos.get(slave.vaginalAccessory); return dildo.length || 0; }; @@ -314,6 +314,6 @@ globalThis.dildoLength = function(slave) { * @returns {number} */ globalThis.dildoVibeLevel = function(slave) { - const dildo = App.Data.vaginalAccessories.get(slave.vaginalAccessory) || V.customItem.dildos.get(slave.vaginalAccessory); + const dildo = App.Data.vaginalAccessory.get(slave.vaginalAccessory) || V.customItem.dildos.get(slave.vaginalAccessory); return dildo.vibrates || 0; }; diff --git a/src/neighbor/neighborInteract.js b/src/neighbor/neighborInteract.js index d97e7bf72689244e2ca69640739276515373f89c..0c33267cb3be5417179b872eec9afc5437aee92d 100644 --- a/src/neighbor/neighborInteract.js +++ b/src/neighbor/neighborInteract.js @@ -292,24 +292,24 @@ App.Neighbor.Interact = (function() { } } - addAcquisitionBlock("FSRomanRevivalist", "a toga", "clothing", "togas", () => { V.boughtItem.clothing.toga = 1; }); - addAcquisitionBlock("FSEdoRevivalist", "a kimono", "clothing", "kimonos", () => { V.boughtItem.clothing.kimono = 1; }); - addAcquisitionBlock("FSArabianRevivalist", "harem gauze", "clothing", "silken harem garb", () => { V.boughtItem.clothing.harem = 1; }); - addAcquisitionBlock("FSAztecRevivalist", "a huipil", "clothing", "huipils", () => { V.boughtItem.clothing.huipil = 1; }); - addAcquisitionBlock("FSChineseRevivalist", "a slutty qipao", "clothing", "skimpy qipaos", () => { V.boughtItem.clothing.qipao = 1; }); + addAcquisitionBlock("FSRomanRevivalist", "a toga", "clothes", "togas", () => { V.boughtItem.clothing.toga = 1; }); + addAcquisitionBlock("FSEdoRevivalist", "a kimono", "clothes", "kimonos", () => { V.boughtItem.clothing.kimono = 1; }); + addAcquisitionBlock("FSArabianRevivalist", "harem gauze", "clothes", "silken harem garb", () => { V.boughtItem.clothing.harem = 1; }); + addAcquisitionBlock("FSAztecRevivalist", "a huipil", "clothes", "huipils", () => { V.boughtItem.clothing.huipil = 1; }); + addAcquisitionBlock("FSChineseRevivalist", "a slutty qipao", "clothes", "skimpy qipaos", () => { V.boughtItem.clothing.qipao = 1; }); addAcquisitionBlock("FSEgyptianRevivalist", "ancient Egyptian", "collar", "Egyptian necklace replicas", () => { V.boughtItem.clothing.egypt = 1; }); - addAcquisitionBlock("FSPaternalist", "conservative clothing", "clothing", "conservative clothing", () => { V.boughtItem.clothing.conservative = 1; }); - addAcquisitionBlock("FSDegradationist", "chains", "clothing", "binding chains", () => { V.boughtItem.clothing.chains = 1; }); - addAcquisitionBlock("FSGenderFundamentalist", "a bunny outfit", "clothing", "bunny suits", () => { V.boughtItem.clothing.bunny = 1; }); - addAcquisitionBlock("FSIntellectualDependency", "a bimbo outfit", "clothing", "bimbo attire", () => { V.boughtItem.clothing.bimbo = 1; }); - addAcquisitionBlock("FSSlaveProfessionalism", "a courtesan dress", "clothing", "courtesan dresses", () => { V.boughtItem.clothing.courtesan = 1; }); - // addAcquisitionBlock("FSPetiteAdmiration", "petite dress", "clothing", "petite-sized dresses", () => { V.boughtItem.clothing.petite = 1; }); - addAcquisitionBlock("FSPhysicalIdealist", "body oil", "clothing", "body oil", () => { V.boughtItem.clothing.oil = 1; }); - addAcquisitionBlock("FSHedonisticDecadence", "stretch pants and a crop-top", "clothing", "stretch pants and crop-tops", () => { V.boughtItem.clothing.lazyClothes = 1; }); - addAcquisitionBlock("FSChattelReligionist", "a chattel habit", "clothing", "chattel religionist habits", () => { V.boughtItem.clothing.habit = 1; }); - addAcquisitionBlock("FSPastoralist", "Western clothing", "clothing", "Western clothing", () => { V.boughtItem.clothing.western = 1; }); - addAcquisitionBlock("FSRepopulationFocus", "a maternity dress", "clothing", "maternity dresses", () => { V.boughtItem.clothing.maternityDress = 1; }); - addAcquisitionBlock("FSRepopulationFocus", "attractive lingerie for a pregnant woman", "clothing", "maternity lingerie", () => { V.boughtItem.clothing.maternityLingerie = 1; }); + addAcquisitionBlock("FSPaternalist", "conservative clothing", "clothes", "conservative clothing", () => { V.boughtItem.clothing.conservative = 1; }); + addAcquisitionBlock("FSDegradationist", "chains", "clothes", "binding chains", () => { V.boughtItem.clothing.chains = 1; }); + addAcquisitionBlock("FSGenderFundamentalist", "a bunny outfit", "clothes", "bunny suits", () => { V.boughtItem.clothing.bunny = 1; }); + addAcquisitionBlock("FSIntellectualDependency", "a bimbo outfit", "clothes", "bimbo attire", () => { V.boughtItem.clothing.bimbo = 1; }); + addAcquisitionBlock("FSSlaveProfessionalism", "a courtesan dress", "clothes", "courtesan dresses", () => { V.boughtItem.clothing.courtesan = 1; }); + // addAcquisitionBlock("FSPetiteAdmiration", "petite dress", "clothes", "petite-sized dresses", () => { V.boughtItem.clothing.petite = 1; }); + addAcquisitionBlock("FSPhysicalIdealist", "body oil", "clothes", "body oil", () => { V.boughtItem.clothing.oil = 1; }); + addAcquisitionBlock("FSHedonisticDecadence", "stretch pants and a crop-top", "clothes", "stretch pants and crop-tops", () => { V.boughtItem.clothing.lazyClothes = 1; }); + addAcquisitionBlock("FSChattelReligionist", "a chattel habit", "clothes", "chattel religionist habits", () => { V.boughtItem.clothing.habit = 1; }); + addAcquisitionBlock("FSPastoralist", "Western clothing", "clothes", "Western clothing", () => { V.boughtItem.clothing.western = 1; }); + addAcquisitionBlock("FSRepopulationFocus", "a maternity dress", "clothes", "maternity dresses", () => { V.boughtItem.clothing.maternityDress = 1; }); + addAcquisitionBlock("FSRepopulationFocus", "attractive lingerie for a pregnant woman", "clothes", "maternity lingerie", () => { V.boughtItem.clothing.maternityLingerie = 1; }); addAcquisitionBlock("FSRepopulationFocus", "a small empathy belly", "bellyAccessory", "empathy bellies", () => { V.boughtItem.clothing.belly = 1; }); addAcquisitionBlock("FSStatuesqueGlorification", "platform heels", "shoes", "platform shoes", () => { V.boughtItem.shoes.heels = 1; }); diff --git a/src/npc/descriptions/butt/buttplug.js b/src/npc/descriptions/butt/buttplug.js index eda8f53815e9c790dc38fef555aca17a43de2340..c1bd70d9b6389b08d6db457a43ae5a44deed93b5 100644 --- a/src/npc/descriptions/butt/buttplug.js +++ b/src/npc/descriptions/butt/buttplug.js @@ -612,7 +612,7 @@ App.Desc.buttplug = function(slave, { market, eventDescription } = {}) { } } } - const buttplug = App.Data.buttplugs.get(slave.buttplug) || V.customItem.buttPlugs.get(slave.buttplug); + const buttplug = App.Data.buttplug.get(slave.buttplug) || V.customItem.buttPlugs.get(slave.buttplug); if (buttplug.width === 1) { if (buttplug.length === 1) { r.push(`It's filled by a standard sized`); diff --git a/src/npc/descriptions/crotch/vaginalAccessory.js b/src/npc/descriptions/crotch/vaginalAccessory.js index 948766998f0f5488617774baff953795c8effd19..dc53ab6f40344284c93944d38a431cc4013a5f38 100644 --- a/src/npc/descriptions/crotch/vaginalAccessory.js +++ b/src/npc/descriptions/crotch/vaginalAccessory.js @@ -18,7 +18,7 @@ App.Desc.vaginalAccessory = function(slave) { } else { held = `held in place by a strap, which ${he} can remove for vaginal intercourse`; } - const dildo = App.Data.vaginalAccessories.get(slave.vaginalAccessory) || V.customItem.dildos.get(slave.vaginalAccessory); + const dildo = App.Data.vaginalAccessory.get(slave.vaginalAccessory) || V.customItem.dildos.get(slave.vaginalAccessory); switch (dildo.width) { case 0: r.push(`A ${slave.vaginalAccessory} is attached on ${his} clit, ${held}.`); // FIXME: not super happy with this diff --git a/src/uncategorized/RESS.tw b/src/uncategorized/RESS.tw index 8278502d9095cc2e92696ae7f4ab7099b4efb91f..c869ff71f4b4ec4b55cfc2dd5ee6f25c998e175d 100644 --- a/src/uncategorized/RESS.tw +++ b/src/uncategorized/RESS.tw @@ -51,7 +51,7 @@ <<set $activeSlave.clothes = "restrictive latex">> <<case "inconvenient labia">> /* "pulling down the compression shorts $he was wearing" */ - <<if isItemAccessible.entry("sport shorts", "clothing")>> + <<if isItemAccessible.entry("sport shorts", "clothes")>> <<if $activeSlave.boobs >= 650>> <<set $activeSlave.clothes = "sport shorts and a sports bra">> <<else>>