From 9a98b35197e02abbc3f6d0aa31755d0a7609d0c6 Mon Sep 17 00:00:00 2001
From: lowercasedonkey <lowercasedonkey@gmail.com>
Date: Fri, 25 Dec 2020 09:55:53 -0500
Subject: [PATCH] create plug data

---
 js/003-data/slaveWearData.js | 105 ++++++++++++++++++++++++-----------
 1 file changed, 74 insertions(+), 31 deletions(-)

diff --git a/js/003-data/slaveWearData.js b/js/003-data/slaveWearData.js
index b9681730add..d08af84c883 100644
--- a/js/003-data/slaveWearData.js
+++ b/js/003-data/slaveWearData.js
@@ -1063,37 +1063,6 @@ App.Data.slaveWear = {
 		]
 	]),
 
-	buttplugs: new Map([
-		["none", {name: "None"}],
-		["plug", {name: "Standard plug"}],
-		["long plug",
-			{
-				name: "Long plug",
-				get requirements() {
-					return V.boughtItem.toys.buttPlugs === 1;
-				}
-			}
-		],
-		["large plug", {name: "Large plug"}],
-		["long, large plug",
-			{
-				name: "Long, large plug",
-				get requirements() {
-					return V.boughtItem.toys.buttPlugs === 1;
-				}
-			}
-		],
-		["huge plug", {name: "Huge plug"}],
-		["long, huge plug",
-			{
-				name: "Long, huge plug",
-				get requirements() {
-					return V.boughtItem.toys.buttPlugs === 1;
-				}
-			}
-		]
-	]),
-
 	buttplugAttachments: new Map([
 		["none", {name: "None"}],
 		["tail",
@@ -1221,6 +1190,80 @@ App.Data.shoes = new Map([ // TODO: add lift property
 	],
 ]);
 
+/**
+ * @typedef {object} slaveButtplugs
+ * @property {string} name
+ * @property {FC.FutureSociety} [fs] Automatically unlocked with this FS.
+ * @property {boolean} [requirements]
+ * @property {boolean} [harsh]
+ * @property {0|1|2|3} width height in cm.  Adds to heel height.
+ * @property {0|1|2} length height in cm.  Over 4cm they may totter.  21cm and over (8 inch heels) will be painful/extreme
+ */
+
+/**
+ * @type {Map<string, slaveButtplugs>} slaveShoesCategory
+ */
+App.Data.buttplugs = new Map([
+	["none",
+		{
+			name: "None",
+			width: 0,
+			length: 0
+		}
+	],
+	["plug",
+		{
+			name: "Standard plug",
+			width: 1,
+			length: 1
+		}
+	],
+	["long plug",
+		{
+			name: "Long plug",
+			get requirements() {
+				return V.boughtItem.toys.buttPlugs === 1;
+			},
+			width: 1,
+			length: 2
+		}
+	],
+	["large plug",
+		{
+			name: "Large plug",
+			width: 2,
+			length: 1
+		}
+	],
+	["long, large plug",
+		{
+			name: "Long, large plug",
+			get requirements() {
+				return V.boughtItem.toys.buttPlugs === 1;
+			},
+			width: 2,
+			length: 2
+		}
+	],
+	["huge plug",
+		{
+			name: "Huge plug",
+			width: 3,
+			length: 2
+		}
+	],
+	["long, huge plug",
+		{
+			name: "Long, huge plug",
+			get requirements() {
+				return V.boughtItem.toys.buttPlugs === 1;
+			},
+			width: 3,
+			length: 2
+		}
+	]
+]);
+
 /**
  * @typedef {object} slaveWearChastity
  * @property {string} name
-- 
GitLab