diff --git a/BondageClub/Assets/Female3DCG/Female3DCG.csv b/BondageClub/Assets/Female3DCG/Female3DCG.csv index d4f8ef4e6d5e8971a1eb99e2032c7fc42fcc2554..d9592fe9a07f543556ec01113ca08058676be2e7 100644 --- a/BondageClub/Assets/Female3DCG/Female3DCG.csv +++ b/BondageClub/Assets/Female3DCG/Female3DCG.csv @@ -737,6 +737,7 @@ ItemNipples,NippleWeightClamps,Nipple Weight Clamps ItemNipples,BellClamps,Nipple Bell Clamps ItemNipples,LactationPump,Lactation Pump ItemNipples,ShockClamps,Shock Clamps +ItemNipples,PlateClamps, Plate Clamps ItemNipplesPiercings,,Nipples ItemNipplesPiercings,StraightPiercing,Straight Piercings ItemNipplesPiercings,RoundPiercing,Round Piercings diff --git a/BondageClub/Assets/Female3DCG/Female3DCG.js b/BondageClub/Assets/Female3DCG/Female3DCG.js index e91542f792077286c8c7fb7a8f7fa19b26fd0849..4987584c91fac9a46c3a25a8021e840c0dd3cd05 100644 --- a/BondageClub/Assets/Female3DCG/Female3DCG.js +++ b/BondageClub/Assets/Female3DCG/Female3DCG.js @@ -1904,6 +1904,7 @@ var AssetFemale3DCG = [ { Name: "BellClamps", Fetish: ["Metal", "Masochism"], Value: 20, Time: 10, Prerequisite: "AccessBreast", Audio: "BellSmall", ExpressionTrigger: [{ Name: "Closed", Group: "Eyes", Timer: 5 }, { Name: "Angry", Group: "Eyebrows", Timer: 10 }] }, { Name: "LactationPump", Fetish: ["Pet"], Value: 130, Top: 0, Priority: 38, Left: 0, Time: 10, Prerequisite: ["AccessBreast", "CannotBeSuited"], AllowPose: ["Kneel", "Hogtied", "SuspensionHogtied", "KneelingSpread"], Block: ["ItemNipplesPiercings", "ItemBreast"], Hide: ["ItemNipplesPiercings"], AllowType: ["LowSuction", "MediumSuction", "HighSuction", "MaximumSuction"], ExpressionTrigger: [{ Name: "Closed", Group: "Eyes", Timer: 5 }, { Name: "Angry", Group: "Eyebrows", Timer: 5 }], Extended: true, AlwaysExtend: true, HasType: false }, { Name: "ShockClamps", Fetish: ["Metal", "Masochism"], Value: 60, Time: 10, Extended: true, AlwaysExtend: true, Prerequisite: "AccessBreast", ExpressionTrigger: [{ Name: "Closed", Group: "Eyes", Timer: 5 }, { Name: "Angry", Group: "Eyebrows", Timer: 10 }], Activity: "ShockItem" }, + {Name: "PlateClamps", Fetish: ["Metal", "Masochism"], Value: 20, Time: 15, Extended: true, Prerequisite: "AccessBreast", ExpressionTrigger: [{ Name: "Closed", Group: "Eyes", Timer: 5 }, { Name: "Angry", Group: "Eyebrows", Timer: 10 }], AllowType: ["Tight"]}, AssetSpankingToys ], Color: ["Default", "#202020", "#808080", "#bbbbbb", "#aa8080", "#80aa80", "#8080aa", "#aaaa80", "#80aaaa", "#aa80aa", "#cc3333", "#33cc33", "#3333cc", "#cccc33", "#33cccc", "#cc33cc"] diff --git a/BondageClub/Assets/Female3DCG/ItemNipples/PlateClamps_Large.png b/BondageClub/Assets/Female3DCG/ItemNipples/PlateClamps_Large.png new file mode 100644 index 0000000000000000000000000000000000000000..51d1bf6dbb82c6eb89f2f41d30d9f150178f59c2 Binary files /dev/null and b/BondageClub/Assets/Female3DCG/ItemNipples/PlateClamps_Large.png differ diff --git a/BondageClub/Assets/Female3DCG/ItemNipples/PlateClamps_LargeTight.png b/BondageClub/Assets/Female3DCG/ItemNipples/PlateClamps_LargeTight.png new file mode 100644 index 0000000000000000000000000000000000000000..47e9098616aadef8982f454fafb091bd42315156 Binary files /dev/null and b/BondageClub/Assets/Female3DCG/ItemNipples/PlateClamps_LargeTight.png differ diff --git a/BondageClub/Assets/Female3DCG/ItemNipples/PlateClamps_Normal.png b/BondageClub/Assets/Female3DCG/ItemNipples/PlateClamps_Normal.png new file mode 100644 index 0000000000000000000000000000000000000000..6fd132cd4995d30e792d623086e48db7a3b0b62e Binary files /dev/null and b/BondageClub/Assets/Female3DCG/ItemNipples/PlateClamps_Normal.png differ diff --git a/BondageClub/Assets/Female3DCG/ItemNipples/PlateClamps_NormalTight.png b/BondageClub/Assets/Female3DCG/ItemNipples/PlateClamps_NormalTight.png new file mode 100644 index 0000000000000000000000000000000000000000..12af3df1ee041e6a6dcf32655ea2f9de5d3aa33a Binary files /dev/null and b/BondageClub/Assets/Female3DCG/ItemNipples/PlateClamps_NormalTight.png differ diff --git a/BondageClub/Assets/Female3DCG/ItemNipples/PlateClamps_Small.png b/BondageClub/Assets/Female3DCG/ItemNipples/PlateClamps_Small.png new file mode 100644 index 0000000000000000000000000000000000000000..6626676833dab850d32519e2603c1ef053b9e0af Binary files /dev/null and b/BondageClub/Assets/Female3DCG/ItemNipples/PlateClamps_Small.png differ diff --git a/BondageClub/Assets/Female3DCG/ItemNipples/PlateClamps_SmallTight.png b/BondageClub/Assets/Female3DCG/ItemNipples/PlateClamps_SmallTight.png new file mode 100644 index 0000000000000000000000000000000000000000..a628a9ff07db584994eb03518edf371f2adef5a2 Binary files /dev/null and b/BondageClub/Assets/Female3DCG/ItemNipples/PlateClamps_SmallTight.png differ diff --git a/BondageClub/Assets/Female3DCG/ItemNipples/PlateClamps_XLarge.png b/BondageClub/Assets/Female3DCG/ItemNipples/PlateClamps_XLarge.png new file mode 100644 index 0000000000000000000000000000000000000000..425af290bde28094ace747a927f686cc665e01e6 Binary files /dev/null and b/BondageClub/Assets/Female3DCG/ItemNipples/PlateClamps_XLarge.png differ diff --git a/BondageClub/Assets/Female3DCG/ItemNipples/PlateClamps_XLargeTight.png b/BondageClub/Assets/Female3DCG/ItemNipples/PlateClamps_XLargeTight.png new file mode 100644 index 0000000000000000000000000000000000000000..f35b1745eeeb44e283cc5f4212f18e13ab88c4a1 Binary files /dev/null and b/BondageClub/Assets/Female3DCG/ItemNipples/PlateClamps_XLargeTight.png differ diff --git a/BondageClub/Assets/Female3DCG/ItemNipples/Preview/PlateClamps.png b/BondageClub/Assets/Female3DCG/ItemNipples/Preview/PlateClamps.png new file mode 100644 index 0000000000000000000000000000000000000000..6faa38f979c27f8af0d5d95a49384031e3fbaef2 Binary files /dev/null and b/BondageClub/Assets/Female3DCG/ItemNipples/Preview/PlateClamps.png differ diff --git a/BondageClub/Screens/Character/Player/Dialog_Player.csv b/BondageClub/Screens/Character/Player/Dialog_Player.csv index e4695bb8bd5f938ab99016acafb9b42523085b84..7c75b1dda6f3b20430a3ba2453fa9017509406a7 100644 --- a/BondageClub/Screens/Character/Player/Dialog_Player.csv +++ b/BondageClub/Screens/Character/Player/Dialog_Player.csv @@ -1948,6 +1948,11 @@ NotificationTitleDisconnect,,,Disconnected,, NotificationTitleTest,,,Test Notification,, NotificationTitleFromRoom,,, from ChatRoomName,, NotificationTitleLarp,,,LARP - Your turn,, +ItemNipplesPlateClampsTightnessLevelLoose,,,Loose,, +ItemNipplesPlateClampsTightnessLevelTight,,,Tight,, +ItemNipplesPlateClampsSelectTightness,,,Select Tightness,, +ItemNipplesPlateClampsLoose,,,SourceCharacter loosens DestinationCharacter clamps.,, +ItemNipplesPlateClampsTight,,,SourceCharacter tigthens DestinationCharacter clamps.,, SelectBunnyCuffsStyle,,,Select a style.,, BunnyCuffsTypeBoth,,,Both,, BunnyCuffsTypeCollar,,,Collar Only,, @@ -1956,4 +1961,4 @@ CombinationPadlockControlsBlind,,,Your blindfold prevents you from seeing the di CombinationPadlockControlsClumsy,,,Your restraints prevent you from accurately manipulating the lock's dial,, SelectCushionStyle,,,Choose an action.,, CushionTypeHold,,,Hold cushion,, -CushionTypeKneel,,,Kneel on cushion,, \ No newline at end of file +CushionTypeKneel,,,Kneel on cushion,, diff --git a/BondageClub/Screens/Inventory/ItemNipples/PlateClamps/PlateClamps.js b/BondageClub/Screens/Inventory/ItemNipples/PlateClamps/PlateClamps.js new file mode 100644 index 0000000000000000000000000000000000000000..e65dfd4fd1e32593035ff28f70dbcb3563ef03c5 --- /dev/null +++ b/BondageClub/Screens/Inventory/ItemNipples/PlateClamps/PlateClamps.js @@ -0,0 +1,68 @@ +"use strict"; + +var InventoryItemNipplesPlateClampsOptions = [ + { + Name: "Loose", + Property: { + Type: null + }, + }, + { + Name: "Tight", + Property: { + Type: "Tight" + }, + } +] + +/** + * Loads the item extension properties + * @returns {void} - Nothing + */ + function InventoryItemNipplesPlateClampsLoad() { + ExtendedItemLoad(InventoryItemNipplesPlateClampsOptions, "ItemNipplesPlateClampsSelectTightness"); +} + +/** + * Draw the item extension screen + * @returns {void} - Nothing + */ +function InventoryItemNipplesPlateClampsDraw() { + ExtendedItemDraw(InventoryItemNipplesPlateClampsOptions, "ItemNipplesPlateClampsTightnessLevel", InventoryItemNipplesPlateClampsOptions.length, false); +} +/** + * Catches the item extension clicks + * @returns {void} - Nothing + */ +function InventoryItemNipplesPlateClampsClick() { + ExtendedItemClick(InventoryItemNipplesPlateClampsOptions, false, InventoryItemNipplesPlateClampsOptions.length, false); +} + +/** + * Publishes the message to the chat + * @param {Character} C - The target character + * @param {Option} Option - The currently selected Option + * @param {Option} PreviousOption - The previously selected Option + * @returns {void} - Nothing + */ +function InventoryItemNipplesPlateClampsPublishAction(C, Option, PreviousOption) { + var msg = "ItemNipplesPlateClamps" + Option.Name; + var Dictionary = [ + { Tag: "SourceCharacter", Text: Player.Name, MemberNumber: Player.MemberNumber }, + { Tag: "DestinationCharacter", Text: C.Name, MemberNumber: C.MemberNumber }, + ]; + ChatRoomPublishCustomAction(msg, true, Dictionary); +} + +/** + * The NPC dialog is for what the NPC says to you when you make a change to their restraints - the dialog lookup is on a + * per-NPC basis. You basically put the "AssetName" + OptionName in there to allow individual NPCs to override their default + * "GroupName" dialog if for example we ever wanted an NPC to react specifically to having the restraint put on them. + * That could be done by adding an "AssetName" entry (or entries) to that NPC's dialog CSV + * @param {Character} C - The NPC to whom the restraint is applied + * @param {Option} Option - The chosen option for this extended item + * @returns {void} - Nothing + */ +function InventoryItemNipplesPlateClampsNpcDialog(C, Option) { + C.CurrentDialog = DialogFind(C, "InventoryItemNipplesPlateClampsNPCReaction" + Option.Name, "ItemNipples"); +} diff --git a/BondageClub/index.html b/BondageClub/index.html index e76b38871de5fc77f06f018fabf277d1aa0e0df0..19b29cc5953c3179ef03903c87948e4159f3b96c 100644 --- a/BondageClub/index.html +++ b/BondageClub/index.html @@ -346,6 +346,7 @@ <script src="Screens/MiniGame/KinkyDungeon/KinkyDungeonInventory.js"></script> <script src="Screens/Inventory/Glasses/EyePatch1/EyePatch1.js"></script> <script src="Screens/Inventory/ItemFeet/SpreaderMetal/SpreaderMetal.js"></script> +<script src="Screens/Inventory/ItemNipples/PlateClamps/PlateClamps.js"></script> <script src="Screens/Inventory/ClothAccessory/BunnyCollarCuffs/BunnyCollarCuffs.js"></script> <script src="Screens/Inventory/ItemDevices/Cushion/Cushion.js"></script> <script>