diff --git a/src/main/resources/assets/tiedup/tiedup_items/armbinder.json b/src/main/resources/assets/tiedup/tiedup_items/armbinder.json new file mode 100644 index 0000000..0766cea --- /dev/null +++ b/src/main/resources/assets/tiedup/tiedup_items/armbinder.json @@ -0,0 +1,31 @@ +{ + "type": "tiedup:bondage_item", + "display_name": "Armbinder", + "translation_key": "item.tiedup.armbinder", + "model": "tiedup:models/gltf/v2/binds/armbinder.glb", + "regions": [ + "ARMS" + ], + "pose_type": "STANDARD", + "pose_priority": 30, + "escape_difficulty": 100, + "lockable": true, + "can_attach_padlock": true, + "supports_color": false, + "animation_bones": { + "idle": [ + "rightArm", + "leftArm" + ], + "struggle": [ + "rightArm", + "leftArm" + ] + }, + "components": { + "lockable": {}, + "resistance": { + "id": "armbinder" + } + } +} \ No newline at end of file diff --git a/src/main/resources/assets/tiedup/tiedup_items/baguette_gag.json b/src/main/resources/assets/tiedup/tiedup_items/baguette_gag.json new file mode 100644 index 0000000..c9fbaf7 --- /dev/null +++ b/src/main/resources/assets/tiedup/tiedup_items/baguette_gag.json @@ -0,0 +1,29 @@ +{ + "type": "tiedup:bondage_item", + "display_name": "Baguette Gag", + "translation_key": "item.tiedup.baguette_gag", + "model": "tiedup:models/gltf/v2/gags/baguette_gag.glb", + "regions": [ + "MOUTH" + ], + "pose_priority": 10, + "escape_difficulty": 50, + "lockable": true, + "can_attach_padlock": true, + "supports_color": false, + "animation_bones": { + "idle": [ + "head" + ] + }, + "components": { + "lockable": {}, + "resistance": { + "id": "gag" + }, + "gagging": { + "material": "baguette" + }, + "adjustable": {} + } +} \ No newline at end of file diff --git a/src/main/resources/assets/tiedup/tiedup_items/ball_gag.json b/src/main/resources/assets/tiedup/tiedup_items/ball_gag.json new file mode 100644 index 0000000..f440e4c --- /dev/null +++ b/src/main/resources/assets/tiedup/tiedup_items/ball_gag.json @@ -0,0 +1,29 @@ +{ + "type": "tiedup:bondage_item", + "display_name": "Ball Gag", + "translation_key": "item.tiedup.ball_gag", + "model": "tiedup:models/gltf/v2/gags/ball_gag.glb", + "regions": [ + "MOUTH" + ], + "pose_priority": 10, + "escape_difficulty": 50, + "lockable": true, + "can_attach_padlock": true, + "supports_color": true, + "animation_bones": { + "idle": [ + "head" + ] + }, + "components": { + "lockable": {}, + "resistance": { + "id": "gag" + }, + "gagging": { + "material": "ball" + }, + "adjustable": {} + } +} \ No newline at end of file diff --git a/src/main/resources/assets/tiedup/tiedup_items/ball_gag_3d.json b/src/main/resources/assets/tiedup/tiedup_items/ball_gag_3d.json new file mode 100644 index 0000000..9eb3b10 --- /dev/null +++ b/src/main/resources/assets/tiedup/tiedup_items/ball_gag_3d.json @@ -0,0 +1,28 @@ +{ + "type": "tiedup:bondage_item", + "display_name": "Ball Gag 3D", + "translation_key": "item.tiedup.ball_gag_3d", + "model": "tiedup:models/gltf/v2/combos/ball_gag_3d.glb", + "regions": [ + "MOUTH" + ], + "pose_priority": 10, + "escape_difficulty": 50, + "lockable": true, + "supports_color": true, + "animation_bones": { + "idle": [ + "head" + ] + }, + "components": { + "lockable": {}, + "resistance": { + "id": "gag" + }, + "gagging": { + "material": "ball" + }, + "adjustable": {} + } +} \ No newline at end of file diff --git a/src/main/resources/assets/tiedup/tiedup_items/ball_gag_strap.json b/src/main/resources/assets/tiedup/tiedup_items/ball_gag_strap.json new file mode 100644 index 0000000..123fc92 --- /dev/null +++ b/src/main/resources/assets/tiedup/tiedup_items/ball_gag_strap.json @@ -0,0 +1,29 @@ +{ + "type": "tiedup:bondage_item", + "display_name": "Ball Gag Strap", + "translation_key": "item.tiedup.ball_gag_strap", + "model": "tiedup:models/gltf/v2/gags/ball_gag_strap.glb", + "regions": [ + "MOUTH" + ], + "pose_priority": 10, + "escape_difficulty": 50, + "lockable": true, + "can_attach_padlock": true, + "supports_color": true, + "animation_bones": { + "idle": [ + "head" + ] + }, + "components": { + "lockable": {}, + "resistance": { + "id": "gag" + }, + "gagging": { + "material": "ball" + }, + "adjustable": {} + } +} \ No newline at end of file diff --git a/src/main/resources/assets/tiedup/tiedup_items/beam_cuffs.json b/src/main/resources/assets/tiedup/tiedup_items/beam_cuffs.json new file mode 100644 index 0000000..f2a22f4 --- /dev/null +++ b/src/main/resources/assets/tiedup/tiedup_items/beam_cuffs.json @@ -0,0 +1,31 @@ +{ + "type": "tiedup:bondage_item", + "display_name": "Beam Cuffs", + "translation_key": "item.tiedup.beam_cuffs", + "model": "tiedup:models/gltf/v2/binds/beam_cuffs.glb", + "regions": [ + "ARMS" + ], + "pose_type": "STANDARD", + "pose_priority": 30, + "escape_difficulty": 100, + "lockable": true, + "can_attach_padlock": true, + "supports_color": false, + "animation_bones": { + "idle": [ + "rightArm", + "leftArm" + ], + "struggle": [ + "rightArm", + "leftArm" + ] + }, + "components": { + "lockable": {}, + "resistance": { + "id": "chain" + } + } +} \ No newline at end of file diff --git a/src/main/resources/assets/tiedup/tiedup_items/beam_panel_gag.json b/src/main/resources/assets/tiedup/tiedup_items/beam_panel_gag.json new file mode 100644 index 0000000..f6a79ca --- /dev/null +++ b/src/main/resources/assets/tiedup/tiedup_items/beam_panel_gag.json @@ -0,0 +1,29 @@ +{ + "type": "tiedup:bondage_item", + "display_name": "Beam Panel Gag", + "translation_key": "item.tiedup.beam_panel_gag", + "model": "tiedup:models/gltf/v2/gags/beam_panel_gag.glb", + "regions": [ + "MOUTH" + ], + "pose_priority": 10, + "escape_difficulty": 50, + "lockable": true, + "can_attach_padlock": true, + "supports_color": false, + "animation_bones": { + "idle": [ + "head" + ] + }, + "components": { + "lockable": {}, + "resistance": { + "id": "gag" + }, + "gagging": { + "material": "panel" + }, + "adjustable": {} + } +} \ No newline at end of file diff --git a/src/main/resources/assets/tiedup/tiedup_items/bite_gag.json b/src/main/resources/assets/tiedup/tiedup_items/bite_gag.json new file mode 100644 index 0000000..aabe80e --- /dev/null +++ b/src/main/resources/assets/tiedup/tiedup_items/bite_gag.json @@ -0,0 +1,29 @@ +{ + "type": "tiedup:bondage_item", + "display_name": "Bite Gag", + "translation_key": "item.tiedup.bite_gag", + "model": "tiedup:models/gltf/v2/gags/bite_gag.glb", + "regions": [ + "MOUTH" + ], + "pose_priority": 10, + "escape_difficulty": 50, + "lockable": true, + "can_attach_padlock": true, + "supports_color": false, + "animation_bones": { + "idle": [ + "head" + ] + }, + "components": { + "lockable": {}, + "resistance": { + "id": "gag" + }, + "gagging": { + "material": "bite" + }, + "adjustable": {} + } +} \ No newline at end of file diff --git a/src/main/resources/assets/tiedup/tiedup_items/blindfold_mask.json b/src/main/resources/assets/tiedup/tiedup_items/blindfold_mask.json new file mode 100644 index 0000000..fd167aa --- /dev/null +++ b/src/main/resources/assets/tiedup/tiedup_items/blindfold_mask.json @@ -0,0 +1,26 @@ +{ + "type": "tiedup:bondage_item", + "display_name": "Blindfold Mask", + "translation_key": "item.tiedup.blindfold_mask", + "model": "tiedup:models/gltf/v2/blindfolds/blindfold_mask.glb", + "regions": [ + "EYES" + ], + "pose_priority": 5, + "escape_difficulty": 30, + "lockable": true, + "supports_color": true, + "animation_bones": { + "idle": [ + "head" + ] + }, + "components": { + "lockable": {}, + "resistance": { + "id": "blindfold" + }, + "blinding": {}, + "adjustable": {} + } +} \ No newline at end of file diff --git a/src/main/resources/assets/tiedup/tiedup_items/chain.json b/src/main/resources/assets/tiedup/tiedup_items/chain.json new file mode 100644 index 0000000..1b65798 --- /dev/null +++ b/src/main/resources/assets/tiedup/tiedup_items/chain.json @@ -0,0 +1,31 @@ +{ + "type": "tiedup:bondage_item", + "display_name": "Chains", + "translation_key": "item.tiedup.chain", + "model": "tiedup:models/gltf/v2/binds/chain.glb", + "regions": [ + "ARMS" + ], + "pose_type": "STANDARD", + "pose_priority": 30, + "escape_difficulty": 100, + "lockable": true, + "can_attach_padlock": true, + "supports_color": false, + "animation_bones": { + "idle": [ + "rightArm", + "leftArm" + ], + "struggle": [ + "rightArm", + "leftArm" + ] + }, + "components": { + "lockable": {}, + "resistance": { + "id": "chain" + } + } +} \ No newline at end of file diff --git a/src/main/resources/assets/tiedup/tiedup_items/chain_panel_gag.json b/src/main/resources/assets/tiedup/tiedup_items/chain_panel_gag.json new file mode 100644 index 0000000..f31fb74 --- /dev/null +++ b/src/main/resources/assets/tiedup/tiedup_items/chain_panel_gag.json @@ -0,0 +1,29 @@ +{ + "type": "tiedup:bondage_item", + "display_name": "Chain Panel Gag", + "translation_key": "item.tiedup.chain_panel_gag", + "model": "tiedup:models/gltf/v2/gags/chain_panel_gag.glb", + "regions": [ + "MOUTH" + ], + "pose_priority": 10, + "escape_difficulty": 50, + "lockable": true, + "can_attach_padlock": true, + "supports_color": false, + "animation_bones": { + "idle": [ + "head" + ] + }, + "components": { + "lockable": {}, + "resistance": { + "id": "gag" + }, + "gagging": { + "material": "panel" + }, + "adjustable": {} + } +} \ No newline at end of file diff --git a/src/main/resources/assets/tiedup/tiedup_items/choke_collar.json b/src/main/resources/assets/tiedup/tiedup_items/choke_collar.json new file mode 100644 index 0000000..6a9b9a9 --- /dev/null +++ b/src/main/resources/assets/tiedup/tiedup_items/choke_collar.json @@ -0,0 +1,25 @@ +{ + "type": "tiedup:bondage_item", + "regions": [ + "NECK" + ], + "pose_priority": 5, + "escape_difficulty": 80, + "lockable": true, + "animation_bones": { + "idle": [ + "body" + ] + }, + "display_name": "Choke Collar", + "translation_key": "item.tiedup.choke_collar", + "model": "tiedup:models/gltf/v2/collars/choke_collar.glb", + "components": { + "ownership": {}, + "lockable": {}, + "resistance": { + "id": "collar" + }, + "choking": {} + } +} \ No newline at end of file diff --git a/src/main/resources/assets/tiedup/tiedup_items/classic_blindfold.json b/src/main/resources/assets/tiedup/tiedup_items/classic_blindfold.json new file mode 100644 index 0000000..2b79cff --- /dev/null +++ b/src/main/resources/assets/tiedup/tiedup_items/classic_blindfold.json @@ -0,0 +1,26 @@ +{ + "type": "tiedup:bondage_item", + "display_name": "Blindfold", + "translation_key": "item.tiedup.classic_blindfold", + "model": "tiedup:models/gltf/v2/blindfolds/classic_blindfold.glb", + "regions": [ + "EYES" + ], + "pose_priority": 5, + "escape_difficulty": 30, + "lockable": true, + "supports_color": true, + "animation_bones": { + "idle": [ + "head" + ] + }, + "components": { + "lockable": {}, + "resistance": { + "id": "blindfold" + }, + "blinding": {}, + "adjustable": {} + } +} \ No newline at end of file diff --git a/src/main/resources/assets/tiedup/tiedup_items/classic_collar.json b/src/main/resources/assets/tiedup/tiedup_items/classic_collar.json new file mode 100644 index 0000000..fcae2eb --- /dev/null +++ b/src/main/resources/assets/tiedup/tiedup_items/classic_collar.json @@ -0,0 +1,24 @@ +{ + "type": "tiedup:bondage_item", + "regions": [ + "NECK" + ], + "pose_priority": 5, + "escape_difficulty": 80, + "lockable": true, + "animation_bones": { + "idle": [ + "body" + ] + }, + "display_name": "Classic Collar", + "translation_key": "item.tiedup.classic_collar", + "model": "tiedup:models/gltf/v2/collars/classic_collar.glb", + "components": { + "ownership": {}, + "lockable": {}, + "resistance": { + "id": "collar" + } + } +} \ No newline at end of file diff --git a/src/main/resources/assets/tiedup/tiedup_items/classic_earplugs.json b/src/main/resources/assets/tiedup/tiedup_items/classic_earplugs.json new file mode 100644 index 0000000..a9944b7 --- /dev/null +++ b/src/main/resources/assets/tiedup/tiedup_items/classic_earplugs.json @@ -0,0 +1,23 @@ +{ + "type": "tiedup:bondage_item", + "display_name": "Earplugs", + "translation_key": "item.tiedup.classic_earplugs", + "model": "tiedup:models/gltf/v2/earplugs/classic_earplugs.glb", + "regions": [ + "EARS" + ], + "pose_priority": 5, + "escape_difficulty": 20, + "lockable": true, + "animation_bones": { + "idle": [ + "head" + ] + }, + "components": { + "lockable": {}, + "resistance": { + "id": "blindfold" + } + } +} \ No newline at end of file diff --git a/src/main/resources/assets/tiedup/tiedup_items/cleave_gag.json b/src/main/resources/assets/tiedup/tiedup_items/cleave_gag.json new file mode 100644 index 0000000..6032aff --- /dev/null +++ b/src/main/resources/assets/tiedup/tiedup_items/cleave_gag.json @@ -0,0 +1,29 @@ +{ + "type": "tiedup:bondage_item", + "display_name": "Cleave Gag", + "translation_key": "item.tiedup.cleave_gag", + "model": "tiedup:models/gltf/v2/gags/cleave_gag.glb", + "regions": [ + "MOUTH" + ], + "pose_priority": 10, + "escape_difficulty": 50, + "lockable": true, + "can_attach_padlock": true, + "supports_color": true, + "animation_bones": { + "idle": [ + "head" + ] + }, + "components": { + "lockable": {}, + "resistance": { + "id": "gag" + }, + "gagging": { + "material": "cloth" + }, + "adjustable": {} + } +} \ No newline at end of file diff --git a/src/main/resources/assets/tiedup/tiedup_items/cloth_gag.json b/src/main/resources/assets/tiedup/tiedup_items/cloth_gag.json new file mode 100644 index 0000000..dffcab7 --- /dev/null +++ b/src/main/resources/assets/tiedup/tiedup_items/cloth_gag.json @@ -0,0 +1,29 @@ +{ + "type": "tiedup:bondage_item", + "display_name": "Cloth Gag", + "translation_key": "item.tiedup.cloth_gag", + "model": "tiedup:models/gltf/v2/gags/cloth_gag.glb", + "regions": [ + "MOUTH" + ], + "pose_priority": 10, + "escape_difficulty": 50, + "lockable": true, + "can_attach_padlock": true, + "supports_color": true, + "animation_bones": { + "idle": [ + "head" + ] + }, + "components": { + "lockable": {}, + "resistance": { + "id": "gag" + }, + "gagging": { + "material": "cloth" + }, + "adjustable": {} + } +} \ No newline at end of file diff --git a/src/main/resources/assets/tiedup/tiedup_items/dogbinder.json b/src/main/resources/assets/tiedup/tiedup_items/dogbinder.json new file mode 100644 index 0000000..871668f --- /dev/null +++ b/src/main/resources/assets/tiedup/tiedup_items/dogbinder.json @@ -0,0 +1,32 @@ +{ + "type": "tiedup:bondage_item", + "display_name": "Dogbinder", + "translation_key": "item.tiedup.dogbinder", + "model": "tiedup:models/gltf/v2/binds/dogbinder.glb", + "regions": [ + "ARMS" + ], + "pose_type": "DOG", + "pose_priority": 30, + "escape_difficulty": 100, + "lockable": true, + "can_attach_padlock": true, + "supports_color": false, + "animation_bones": { + "idle": [ + "rightArm", + "leftArm" + ], + "struggle": [ + "rightArm", + "leftArm" + ] + }, + "components": { + "lockable": {}, + "resistance": { + "id": "armbinder" + } + }, + "movement_style": "CRAWL" +} \ No newline at end of file diff --git a/src/main/resources/assets/tiedup/tiedup_items/duct_tape.json b/src/main/resources/assets/tiedup/tiedup_items/duct_tape.json new file mode 100644 index 0000000..8d94ea8 --- /dev/null +++ b/src/main/resources/assets/tiedup/tiedup_items/duct_tape.json @@ -0,0 +1,30 @@ +{ + "type": "tiedup:bondage_item", + "display_name": "Duct Tape", + "translation_key": "item.tiedup.duct_tape", + "model": "tiedup:models/gltf/v2/binds/duct_tape.glb", + "regions": [ + "ARMS" + ], + "pose_type": "STANDARD", + "pose_priority": 30, + "escape_difficulty": 100, + "lockable": true, + "can_attach_padlock": false, + "supports_color": true, + "animation_bones": { + "idle": [ + "rightArm", + "leftArm" + ], + "struggle": [ + "rightArm", + "leftArm" + ] + }, + "components": { + "resistance": { + "id": "tape" + } + } +} \ No newline at end of file diff --git a/src/main/resources/assets/tiedup/tiedup_items/gps_collar.json b/src/main/resources/assets/tiedup/tiedup_items/gps_collar.json new file mode 100644 index 0000000..3b72630 --- /dev/null +++ b/src/main/resources/assets/tiedup/tiedup_items/gps_collar.json @@ -0,0 +1,27 @@ +{ + "type": "tiedup:bondage_item", + "regions": [ + "NECK" + ], + "pose_priority": 5, + "escape_difficulty": 80, + "lockable": true, + "animation_bones": { + "idle": [ + "body" + ] + }, + "display_name": "GPS Collar", + "translation_key": "item.tiedup.gps_collar", + "model": "tiedup:models/gltf/v2/collars/gps_collar.glb", + "components": { + "ownership": {}, + "lockable": {}, + "resistance": { + "id": "collar" + }, + "gps": { + "safe_zone_radius": 50 + } + } +} \ No newline at end of file diff --git a/src/main/resources/assets/tiedup/tiedup_items/hood.json b/src/main/resources/assets/tiedup/tiedup_items/hood.json new file mode 100644 index 0000000..5e97f35 --- /dev/null +++ b/src/main/resources/assets/tiedup/tiedup_items/hood.json @@ -0,0 +1,31 @@ +{ + "type": "tiedup:bondage_item", + "display_name": "Hood", + "translation_key": "item.tiedup.hood", + "model": "tiedup:models/gltf/v2/combos/hood.glb", + "regions": [ + "EYES" + ], + "blocked_regions": [ + "EYES", + "EARS" + ], + "pose_priority": 10, + "escape_difficulty": 40, + "lockable": true, + "animation_bones": { + "idle": [ + "head" + ] + }, + "components": { + "lockable": {}, + "resistance": { + "id": "blindfold" + }, + "blinding": {}, + "gagging": { + "material": "stuffed" + } + } +} \ No newline at end of file diff --git a/src/main/resources/assets/tiedup/tiedup_items/latex_gag.json b/src/main/resources/assets/tiedup/tiedup_items/latex_gag.json new file mode 100644 index 0000000..23c58ce --- /dev/null +++ b/src/main/resources/assets/tiedup/tiedup_items/latex_gag.json @@ -0,0 +1,29 @@ +{ + "type": "tiedup:bondage_item", + "display_name": "Latex Gag", + "translation_key": "item.tiedup.latex_gag", + "model": "tiedup:models/gltf/v2/gags/latex_gag.glb", + "regions": [ + "MOUTH" + ], + "pose_priority": 10, + "escape_difficulty": 50, + "lockable": true, + "can_attach_padlock": true, + "supports_color": false, + "animation_bones": { + "idle": [ + "head" + ] + }, + "components": { + "lockable": {}, + "resistance": { + "id": "gag" + }, + "gagging": { + "material": "latex" + }, + "adjustable": {} + } +} \ No newline at end of file diff --git a/src/main/resources/assets/tiedup/tiedup_items/latex_sack.json b/src/main/resources/assets/tiedup/tiedup_items/latex_sack.json new file mode 100644 index 0000000..fe9ed7a --- /dev/null +++ b/src/main/resources/assets/tiedup/tiedup_items/latex_sack.json @@ -0,0 +1,31 @@ +{ + "type": "tiedup:bondage_item", + "display_name": "Latex Sack", + "translation_key": "item.tiedup.latex_sack", + "model": "tiedup:models/gltf/v2/binds/latex_sack.glb", + "regions": [ + "ARMS" + ], + "pose_type": "LATEX_SACK", + "pose_priority": 30, + "escape_difficulty": 100, + "lockable": true, + "can_attach_padlock": true, + "supports_color": false, + "animation_bones": { + "idle": [ + "rightArm", + "leftArm" + ], + "struggle": [ + "rightArm", + "leftArm" + ] + }, + "components": { + "lockable": {}, + "resistance": { + "id": "latex_sack" + } + } +} \ No newline at end of file diff --git a/src/main/resources/assets/tiedup/tiedup_items/leather_mittens.json b/src/main/resources/assets/tiedup/tiedup_items/leather_mittens.json new file mode 100644 index 0000000..c82c6ea --- /dev/null +++ b/src/main/resources/assets/tiedup/tiedup_items/leather_mittens.json @@ -0,0 +1,21 @@ +{ + "type": "tiedup:bondage_item", + "display_name": "Leather Mittens", + "translation_key": "item.tiedup.leather_mittens", + "model": "tiedup:models/gltf/v2/mittens/leather_mittens.glb", + "regions": [ + "HANDS" + ], + "pose_priority": 5, + "escape_difficulty": 20, + "lockable": true, + "animation_bones": { + "idle": [ + "rightArm", + "leftArm" + ] + }, + "components": { + "lockable": {} + } +} \ No newline at end of file diff --git a/src/main/resources/assets/tiedup/tiedup_items/leather_straps.json b/src/main/resources/assets/tiedup/tiedup_items/leather_straps.json new file mode 100644 index 0000000..d1628a0 --- /dev/null +++ b/src/main/resources/assets/tiedup/tiedup_items/leather_straps.json @@ -0,0 +1,31 @@ +{ + "type": "tiedup:bondage_item", + "display_name": "Leather Straps", + "translation_key": "item.tiedup.leather_straps", + "model": "tiedup:models/gltf/v2/binds/leather_straps.glb", + "regions": [ + "ARMS" + ], + "pose_type": "STANDARD", + "pose_priority": 30, + "escape_difficulty": 100, + "lockable": true, + "can_attach_padlock": true, + "supports_color": false, + "animation_bones": { + "idle": [ + "rightArm", + "leftArm" + ], + "struggle": [ + "rightArm", + "leftArm" + ] + }, + "components": { + "lockable": {}, + "resistance": { + "id": "armbinder" + } + } +} \ No newline at end of file diff --git a/src/main/resources/assets/tiedup/tiedup_items/medical_gag.json b/src/main/resources/assets/tiedup/tiedup_items/medical_gag.json new file mode 100644 index 0000000..a1af652 --- /dev/null +++ b/src/main/resources/assets/tiedup/tiedup_items/medical_gag.json @@ -0,0 +1,27 @@ +{ + "type": "tiedup:bondage_item", + "display_name": "Medical Gag", + "translation_key": "item.tiedup.medical_gag", + "model": "tiedup:models/gltf/v2/combos/medical_gag.glb", + "regions": [ + "MOUTH" + ], + "pose_priority": 10, + "escape_difficulty": 50, + "lockable": true, + "animation_bones": { + "idle": [ + "head" + ] + }, + "components": { + "lockable": {}, + "resistance": { + "id": "gag" + }, + "gagging": { + "material": "panel" + }, + "blinding": {} + } +} \ No newline at end of file diff --git a/src/main/resources/assets/tiedup/tiedup_items/medical_straps.json b/src/main/resources/assets/tiedup/tiedup_items/medical_straps.json new file mode 100644 index 0000000..a520ff1 --- /dev/null +++ b/src/main/resources/assets/tiedup/tiedup_items/medical_straps.json @@ -0,0 +1,31 @@ +{ + "type": "tiedup:bondage_item", + "display_name": "Medical Straps", + "translation_key": "item.tiedup.medical_straps", + "model": "tiedup:models/gltf/v2/binds/medical_straps.glb", + "regions": [ + "ARMS" + ], + "pose_type": "STANDARD", + "pose_priority": 30, + "escape_difficulty": 100, + "lockable": true, + "can_attach_padlock": true, + "supports_color": false, + "animation_bones": { + "idle": [ + "rightArm", + "leftArm" + ], + "struggle": [ + "rightArm", + "leftArm" + ] + }, + "components": { + "lockable": {}, + "resistance": { + "id": "armbinder" + } + } +} \ No newline at end of file diff --git a/src/main/resources/assets/tiedup/tiedup_items/panel_gag.json b/src/main/resources/assets/tiedup/tiedup_items/panel_gag.json new file mode 100644 index 0000000..12054f4 --- /dev/null +++ b/src/main/resources/assets/tiedup/tiedup_items/panel_gag.json @@ -0,0 +1,29 @@ +{ + "type": "tiedup:bondage_item", + "display_name": "Panel Gag", + "translation_key": "item.tiedup.panel_gag", + "model": "tiedup:models/gltf/v2/gags/panel_gag.glb", + "regions": [ + "MOUTH" + ], + "pose_priority": 10, + "escape_difficulty": 50, + "lockable": true, + "can_attach_padlock": true, + "supports_color": false, + "animation_bones": { + "idle": [ + "head" + ] + }, + "components": { + "lockable": {}, + "resistance": { + "id": "gag" + }, + "gagging": { + "material": "panel" + }, + "adjustable": {} + } +} \ No newline at end of file diff --git a/src/main/resources/assets/tiedup/tiedup_items/ribbon.json b/src/main/resources/assets/tiedup/tiedup_items/ribbon.json new file mode 100644 index 0000000..c8c0d99 --- /dev/null +++ b/src/main/resources/assets/tiedup/tiedup_items/ribbon.json @@ -0,0 +1,31 @@ +{ + "type": "tiedup:bondage_item", + "display_name": "Ribbon", + "translation_key": "item.tiedup.ribbon", + "model": "tiedup:models/gltf/v2/binds/ribbon.glb", + "regions": [ + "ARMS" + ], + "pose_type": "STANDARD", + "pose_priority": 30, + "escape_difficulty": 100, + "lockable": true, + "can_attach_padlock": true, + "supports_color": false, + "animation_bones": { + "idle": [ + "rightArm", + "leftArm" + ], + "struggle": [ + "rightArm", + "leftArm" + ] + }, + "components": { + "lockable": {}, + "resistance": { + "id": "ribbon" + } + } +} \ No newline at end of file diff --git a/src/main/resources/assets/tiedup/tiedup_items/ribbon_gag.json b/src/main/resources/assets/tiedup/tiedup_items/ribbon_gag.json new file mode 100644 index 0000000..544cc0b --- /dev/null +++ b/src/main/resources/assets/tiedup/tiedup_items/ribbon_gag.json @@ -0,0 +1,29 @@ +{ + "type": "tiedup:bondage_item", + "display_name": "Ribbon Gag", + "translation_key": "item.tiedup.ribbon_gag", + "model": "tiedup:models/gltf/v2/gags/ribbon_gag.glb", + "regions": [ + "MOUTH" + ], + "pose_priority": 10, + "escape_difficulty": 50, + "lockable": true, + "can_attach_padlock": true, + "supports_color": false, + "animation_bones": { + "idle": [ + "head" + ] + }, + "components": { + "lockable": {}, + "resistance": { + "id": "gag" + }, + "gagging": { + "material": "cloth" + }, + "adjustable": {} + } +} \ No newline at end of file diff --git a/src/main/resources/assets/tiedup/tiedup_items/ropes.json b/src/main/resources/assets/tiedup/tiedup_items/ropes.json new file mode 100644 index 0000000..c02a543 --- /dev/null +++ b/src/main/resources/assets/tiedup/tiedup_items/ropes.json @@ -0,0 +1,31 @@ +{ + "type": "tiedup:bondage_item", + "display_name": "Ropes", + "translation_key": "item.tiedup.ropes", + "model": "tiedup:models/gltf/v2/binds/ropes.glb", + "regions": [ + "ARMS" + ], + "pose_type": "STANDARD", + "pose_priority": 30, + "escape_difficulty": 100, + "lockable": true, + "can_attach_padlock": true, + "supports_color": true, + "animation_bones": { + "idle": [ + "rightArm", + "leftArm" + ], + "struggle": [ + "rightArm", + "leftArm" + ] + }, + "components": { + "lockable": {}, + "resistance": { + "id": "rope" + } + } +} \ No newline at end of file diff --git a/src/main/resources/assets/tiedup/tiedup_items/ropes_gag.json b/src/main/resources/assets/tiedup/tiedup_items/ropes_gag.json new file mode 100644 index 0000000..ca3dcc1 --- /dev/null +++ b/src/main/resources/assets/tiedup/tiedup_items/ropes_gag.json @@ -0,0 +1,29 @@ +{ + "type": "tiedup:bondage_item", + "display_name": "Rope Gag", + "translation_key": "item.tiedup.ropes_gag", + "model": "tiedup:models/gltf/v2/gags/ropes_gag.glb", + "regions": [ + "MOUTH" + ], + "pose_priority": 10, + "escape_difficulty": 50, + "lockable": true, + "can_attach_padlock": true, + "supports_color": true, + "animation_bones": { + "idle": [ + "head" + ] + }, + "components": { + "lockable": {}, + "resistance": { + "id": "gag" + }, + "gagging": { + "material": "cloth" + }, + "adjustable": {} + } +} \ No newline at end of file diff --git a/src/main/resources/assets/tiedup/tiedup_items/shibari.json b/src/main/resources/assets/tiedup/tiedup_items/shibari.json new file mode 100644 index 0000000..19a346a --- /dev/null +++ b/src/main/resources/assets/tiedup/tiedup_items/shibari.json @@ -0,0 +1,31 @@ +{ + "type": "tiedup:bondage_item", + "display_name": "Shibari", + "translation_key": "item.tiedup.shibari", + "model": "tiedup:models/gltf/v2/binds/shibari.glb", + "regions": [ + "ARMS" + ], + "pose_type": "STANDARD", + "pose_priority": 30, + "escape_difficulty": 100, + "lockable": true, + "can_attach_padlock": true, + "supports_color": true, + "animation_bones": { + "idle": [ + "rightArm", + "leftArm" + ], + "struggle": [ + "rightArm", + "leftArm" + ] + }, + "components": { + "lockable": {}, + "resistance": { + "id": "rope" + } + } +} \ No newline at end of file diff --git a/src/main/resources/assets/tiedup/tiedup_items/shock_collar.json b/src/main/resources/assets/tiedup/tiedup_items/shock_collar.json new file mode 100644 index 0000000..c5ff161 --- /dev/null +++ b/src/main/resources/assets/tiedup/tiedup_items/shock_collar.json @@ -0,0 +1,27 @@ +{ + "type": "tiedup:bondage_item", + "regions": [ + "NECK" + ], + "pose_priority": 5, + "escape_difficulty": 80, + "lockable": true, + "animation_bones": { + "idle": [ + "body" + ] + }, + "display_name": "Shock Collar", + "translation_key": "item.tiedup.shock_collar", + "model": "tiedup:models/gltf/v2/collars/shock_collar.glb", + "components": { + "ownership": {}, + "lockable": {}, + "resistance": { + "id": "collar" + }, + "shock": { + "damage": 2.0 + } + } +} \ No newline at end of file diff --git a/src/main/resources/assets/tiedup/tiedup_items/shock_collar_auto.json b/src/main/resources/assets/tiedup/tiedup_items/shock_collar_auto.json new file mode 100644 index 0000000..e988804 --- /dev/null +++ b/src/main/resources/assets/tiedup/tiedup_items/shock_collar_auto.json @@ -0,0 +1,28 @@ +{ + "type": "tiedup:bondage_item", + "regions": [ + "NECK" + ], + "pose_priority": 5, + "escape_difficulty": 80, + "lockable": true, + "animation_bones": { + "idle": [ + "body" + ] + }, + "display_name": "Auto Shock Collar", + "translation_key": "item.tiedup.shock_collar_auto", + "model": "tiedup:models/gltf/v2/collars/shock_collar_auto.glb", + "components": { + "ownership": {}, + "lockable": {}, + "resistance": { + "id": "collar" + }, + "shock": { + "damage": 2.0, + "auto_interval": 200 + } + } +} \ No newline at end of file diff --git a/src/main/resources/assets/tiedup/tiedup_items/slime.json b/src/main/resources/assets/tiedup/tiedup_items/slime.json new file mode 100644 index 0000000..9485645 --- /dev/null +++ b/src/main/resources/assets/tiedup/tiedup_items/slime.json @@ -0,0 +1,30 @@ +{ + "type": "tiedup:bondage_item", + "display_name": "Slime Bind", + "translation_key": "item.tiedup.slime", + "model": "tiedup:models/gltf/v2/binds/slime.glb", + "regions": [ + "ARMS" + ], + "pose_type": "STANDARD", + "pose_priority": 30, + "escape_difficulty": 100, + "lockable": true, + "can_attach_padlock": false, + "supports_color": false, + "animation_bones": { + "idle": [ + "rightArm", + "leftArm" + ], + "struggle": [ + "rightArm", + "leftArm" + ] + }, + "components": { + "resistance": { + "id": "slime" + } + } +} \ No newline at end of file diff --git a/src/main/resources/assets/tiedup/tiedup_items/slime_gag.json b/src/main/resources/assets/tiedup/tiedup_items/slime_gag.json new file mode 100644 index 0000000..79d3f1d --- /dev/null +++ b/src/main/resources/assets/tiedup/tiedup_items/slime_gag.json @@ -0,0 +1,28 @@ +{ + "type": "tiedup:bondage_item", + "display_name": "Slime Gag", + "translation_key": "item.tiedup.slime_gag", + "model": "tiedup:models/gltf/v2/gags/slime_gag.glb", + "regions": [ + "MOUTH" + ], + "pose_priority": 10, + "escape_difficulty": 50, + "lockable": true, + "can_attach_padlock": false, + "supports_color": false, + "animation_bones": { + "idle": [ + "head" + ] + }, + "components": { + "resistance": { + "id": "gag" + }, + "gagging": { + "material": "stuffed" + }, + "adjustable": {} + } +} \ No newline at end of file diff --git a/src/main/resources/assets/tiedup/tiedup_items/sponge_gag.json b/src/main/resources/assets/tiedup/tiedup_items/sponge_gag.json new file mode 100644 index 0000000..9e8ffb1 --- /dev/null +++ b/src/main/resources/assets/tiedup/tiedup_items/sponge_gag.json @@ -0,0 +1,29 @@ +{ + "type": "tiedup:bondage_item", + "display_name": "Sponge Gag", + "translation_key": "item.tiedup.sponge_gag", + "model": "tiedup:models/gltf/v2/gags/sponge_gag.glb", + "regions": [ + "MOUTH" + ], + "pose_priority": 10, + "escape_difficulty": 50, + "lockable": true, + "can_attach_padlock": true, + "supports_color": false, + "animation_bones": { + "idle": [ + "head" + ] + }, + "components": { + "lockable": {}, + "resistance": { + "id": "gag" + }, + "gagging": { + "material": "sponge" + }, + "adjustable": {} + } +} \ No newline at end of file diff --git a/src/main/resources/assets/tiedup/tiedup_items/straitjacket.json b/src/main/resources/assets/tiedup/tiedup_items/straitjacket.json new file mode 100644 index 0000000..e790fe5 --- /dev/null +++ b/src/main/resources/assets/tiedup/tiedup_items/straitjacket.json @@ -0,0 +1,31 @@ +{ + "type": "tiedup:bondage_item", + "display_name": "Straitjacket", + "translation_key": "item.tiedup.straitjacket", + "model": "tiedup:models/gltf/v2/binds/straitjacket.glb", + "regions": [ + "ARMS" + ], + "pose_type": "STRAITJACKET", + "pose_priority": 30, + "escape_difficulty": 100, + "lockable": true, + "can_attach_padlock": true, + "supports_color": false, + "animation_bones": { + "idle": [ + "rightArm", + "leftArm" + ], + "struggle": [ + "rightArm", + "leftArm" + ] + }, + "components": { + "lockable": {}, + "resistance": { + "id": "straitjacket" + } + } +} \ No newline at end of file diff --git a/src/main/resources/assets/tiedup/tiedup_items/tape_gag.json b/src/main/resources/assets/tiedup/tiedup_items/tape_gag.json new file mode 100644 index 0000000..a68e176 --- /dev/null +++ b/src/main/resources/assets/tiedup/tiedup_items/tape_gag.json @@ -0,0 +1,28 @@ +{ + "type": "tiedup:bondage_item", + "display_name": "Tape Gag", + "translation_key": "item.tiedup.tape_gag", + "model": "tiedup:models/gltf/v2/gags/tape_gag.glb", + "regions": [ + "MOUTH" + ], + "pose_priority": 10, + "escape_difficulty": 50, + "lockable": true, + "can_attach_padlock": false, + "supports_color": true, + "animation_bones": { + "idle": [ + "head" + ] + }, + "components": { + "resistance": { + "id": "gag" + }, + "gagging": { + "material": "tape" + }, + "adjustable": {} + } +} \ No newline at end of file diff --git a/src/main/resources/assets/tiedup/tiedup_items/test_handcuffs.json b/src/main/resources/assets/tiedup/tiedup_items/test_handcuffs.json deleted file mode 100644 index e9ee163..0000000 --- a/src/main/resources/assets/tiedup/tiedup_items/test_handcuffs.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "type": "tiedup:bondage_item", - "display_name": "Data-Driven Handcuffs", - "creator": "TiedUp! Team", - "model": "tiedup:models/gltf/v2/handcuffs/cuffs_prototype.glb", - "regions": ["ARMS"], - "pose_priority": 30, - "escape_difficulty": 100, - "lockable": true, - "icon": "tiedup:item/beam_cuffs", - "animation_bones": { - "idle": ["rightArm", "leftArm"], - "struggle": ["rightArm", "leftArm"] - } -} diff --git a/src/main/resources/assets/tiedup/tiedup_items/test_leg_cuffs.json b/src/main/resources/assets/tiedup/tiedup_items/test_leg_cuffs.json deleted file mode 100644 index 36605cb..0000000 --- a/src/main/resources/assets/tiedup/tiedup_items/test_leg_cuffs.json +++ /dev/null @@ -1,18 +0,0 @@ -{ - "type": "tiedup:bondage_item", - "display_name": "Prototype Leg Cuffs", - "model": "tiedup:models/gltf/leg_cuffs_proto.glb", - "regions": ["LEGS"], - "pose_priority": 30, - "escape_difficulty": 5, - "lockable": true, - "movement_style": "shuffle", - "supports_color": true, - "tint_channels": { - "tintable_1": "#808080" - }, - "animation_bones": { - "idle": ["rightLeg", "leftLeg"], - "struggle": ["rightLeg", "leftLeg"] - } -} \ No newline at end of file diff --git a/src/main/resources/assets/tiedup/tiedup_items/tube_gag.json b/src/main/resources/assets/tiedup/tiedup_items/tube_gag.json new file mode 100644 index 0000000..07c1c23 --- /dev/null +++ b/src/main/resources/assets/tiedup/tiedup_items/tube_gag.json @@ -0,0 +1,29 @@ +{ + "type": "tiedup:bondage_item", + "display_name": "Tube Gag", + "translation_key": "item.tiedup.tube_gag", + "model": "tiedup:models/gltf/v2/gags/tube_gag.glb", + "regions": [ + "MOUTH" + ], + "pose_priority": 10, + "escape_difficulty": 50, + "lockable": true, + "can_attach_padlock": true, + "supports_color": false, + "animation_bones": { + "idle": [ + "head" + ] + }, + "components": { + "lockable": {}, + "resistance": { + "id": "gag" + }, + "gagging": { + "material": "ring" + }, + "adjustable": {} + } +} \ No newline at end of file diff --git a/src/main/resources/assets/tiedup/tiedup_items/vine_gag.json b/src/main/resources/assets/tiedup/tiedup_items/vine_gag.json new file mode 100644 index 0000000..837da78 --- /dev/null +++ b/src/main/resources/assets/tiedup/tiedup_items/vine_gag.json @@ -0,0 +1,28 @@ +{ + "type": "tiedup:bondage_item", + "display_name": "Vine Gag", + "translation_key": "item.tiedup.vine_gag", + "model": "tiedup:models/gltf/v2/gags/vine_gag.glb", + "regions": [ + "MOUTH" + ], + "pose_priority": 10, + "escape_difficulty": 50, + "lockable": true, + "can_attach_padlock": false, + "supports_color": false, + "animation_bones": { + "idle": [ + "head" + ] + }, + "components": { + "resistance": { + "id": "gag" + }, + "gagging": { + "material": "stuffed" + }, + "adjustable": {} + } +} \ No newline at end of file diff --git a/src/main/resources/assets/tiedup/tiedup_items/vine_seed.json b/src/main/resources/assets/tiedup/tiedup_items/vine_seed.json new file mode 100644 index 0000000..96ce0f9 --- /dev/null +++ b/src/main/resources/assets/tiedup/tiedup_items/vine_seed.json @@ -0,0 +1,30 @@ +{ + "type": "tiedup:bondage_item", + "display_name": "Vine Bind", + "translation_key": "item.tiedup.vine_seed", + "model": "tiedup:models/gltf/v2/binds/vine_seed.glb", + "regions": [ + "ARMS" + ], + "pose_type": "STANDARD", + "pose_priority": 30, + "escape_difficulty": 100, + "lockable": true, + "can_attach_padlock": false, + "supports_color": false, + "animation_bones": { + "idle": [ + "rightArm", + "leftArm" + ], + "struggle": [ + "rightArm", + "leftArm" + ] + }, + "components": { + "resistance": { + "id": "vine" + } + } +} \ No newline at end of file diff --git a/src/main/resources/assets/tiedup/tiedup_items/web_bind.json b/src/main/resources/assets/tiedup/tiedup_items/web_bind.json new file mode 100644 index 0000000..b08ead1 --- /dev/null +++ b/src/main/resources/assets/tiedup/tiedup_items/web_bind.json @@ -0,0 +1,30 @@ +{ + "type": "tiedup:bondage_item", + "display_name": "Web Bind", + "translation_key": "item.tiedup.web_bind", + "model": "tiedup:models/gltf/v2/binds/web_bind.glb", + "regions": [ + "ARMS" + ], + "pose_type": "STANDARD", + "pose_priority": 30, + "escape_difficulty": 100, + "lockable": true, + "can_attach_padlock": false, + "supports_color": false, + "animation_bones": { + "idle": [ + "rightArm", + "leftArm" + ], + "struggle": [ + "rightArm", + "leftArm" + ] + }, + "components": { + "resistance": { + "id": "web" + } + } +} \ No newline at end of file diff --git a/src/main/resources/assets/tiedup/tiedup_items/web_gag.json b/src/main/resources/assets/tiedup/tiedup_items/web_gag.json new file mode 100644 index 0000000..69427e3 --- /dev/null +++ b/src/main/resources/assets/tiedup/tiedup_items/web_gag.json @@ -0,0 +1,28 @@ +{ + "type": "tiedup:bondage_item", + "display_name": "Web Gag", + "translation_key": "item.tiedup.web_gag", + "model": "tiedup:models/gltf/v2/gags/web_gag.glb", + "regions": [ + "MOUTH" + ], + "pose_priority": 10, + "escape_difficulty": 50, + "lockable": true, + "can_attach_padlock": false, + "supports_color": false, + "animation_bones": { + "idle": [ + "head" + ] + }, + "components": { + "resistance": { + "id": "gag" + }, + "gagging": { + "material": "stuffed" + }, + "adjustable": {} + } +} \ No newline at end of file diff --git a/src/main/resources/assets/tiedup/tiedup_items/wrap.json b/src/main/resources/assets/tiedup/tiedup_items/wrap.json new file mode 100644 index 0000000..813f485 --- /dev/null +++ b/src/main/resources/assets/tiedup/tiedup_items/wrap.json @@ -0,0 +1,31 @@ +{ + "type": "tiedup:bondage_item", + "display_name": "Wrap", + "translation_key": "item.tiedup.wrap", + "model": "tiedup:models/gltf/v2/binds/wrap.glb", + "regions": [ + "ARMS" + ], + "pose_type": "WRAP", + "pose_priority": 30, + "escape_difficulty": 100, + "lockable": true, + "can_attach_padlock": true, + "supports_color": false, + "animation_bones": { + "idle": [ + "rightArm", + "leftArm" + ], + "struggle": [ + "rightArm", + "leftArm" + ] + }, + "components": { + "lockable": {}, + "resistance": { + "id": "wrap" + } + } +} \ No newline at end of file diff --git a/src/main/resources/assets/tiedup/tiedup_items/wrap_gag.json b/src/main/resources/assets/tiedup/tiedup_items/wrap_gag.json new file mode 100644 index 0000000..2d188e8 --- /dev/null +++ b/src/main/resources/assets/tiedup/tiedup_items/wrap_gag.json @@ -0,0 +1,29 @@ +{ + "type": "tiedup:bondage_item", + "display_name": "Wrap Gag", + "translation_key": "item.tiedup.wrap_gag", + "model": "tiedup:models/gltf/v2/gags/wrap_gag.glb", + "regions": [ + "MOUTH" + ], + "pose_priority": 10, + "escape_difficulty": 50, + "lockable": true, + "can_attach_padlock": true, + "supports_color": false, + "animation_bones": { + "idle": [ + "head" + ] + }, + "components": { + "lockable": {}, + "resistance": { + "id": "gag" + }, + "gagging": { + "material": "stuffed" + }, + "adjustable": {} + } +} \ No newline at end of file diff --git a/src/main/resources/data/tiedup/tiedup_items/armbinder.json b/src/main/resources/data/tiedup/tiedup_items/armbinder.json new file mode 100644 index 0000000..0766cea --- /dev/null +++ b/src/main/resources/data/tiedup/tiedup_items/armbinder.json @@ -0,0 +1,31 @@ +{ + "type": "tiedup:bondage_item", + "display_name": "Armbinder", + "translation_key": "item.tiedup.armbinder", + "model": "tiedup:models/gltf/v2/binds/armbinder.glb", + "regions": [ + "ARMS" + ], + "pose_type": "STANDARD", + "pose_priority": 30, + "escape_difficulty": 100, + "lockable": true, + "can_attach_padlock": true, + "supports_color": false, + "animation_bones": { + "idle": [ + "rightArm", + "leftArm" + ], + "struggle": [ + "rightArm", + "leftArm" + ] + }, + "components": { + "lockable": {}, + "resistance": { + "id": "armbinder" + } + } +} \ No newline at end of file diff --git a/src/main/resources/data/tiedup/tiedup_items/baguette_gag.json b/src/main/resources/data/tiedup/tiedup_items/baguette_gag.json new file mode 100644 index 0000000..c9fbaf7 --- /dev/null +++ b/src/main/resources/data/tiedup/tiedup_items/baguette_gag.json @@ -0,0 +1,29 @@ +{ + "type": "tiedup:bondage_item", + "display_name": "Baguette Gag", + "translation_key": "item.tiedup.baguette_gag", + "model": "tiedup:models/gltf/v2/gags/baguette_gag.glb", + "regions": [ + "MOUTH" + ], + "pose_priority": 10, + "escape_difficulty": 50, + "lockable": true, + "can_attach_padlock": true, + "supports_color": false, + "animation_bones": { + "idle": [ + "head" + ] + }, + "components": { + "lockable": {}, + "resistance": { + "id": "gag" + }, + "gagging": { + "material": "baguette" + }, + "adjustable": {} + } +} \ No newline at end of file diff --git a/src/main/resources/data/tiedup/tiedup_items/ball_gag.json b/src/main/resources/data/tiedup/tiedup_items/ball_gag.json new file mode 100644 index 0000000..f440e4c --- /dev/null +++ b/src/main/resources/data/tiedup/tiedup_items/ball_gag.json @@ -0,0 +1,29 @@ +{ + "type": "tiedup:bondage_item", + "display_name": "Ball Gag", + "translation_key": "item.tiedup.ball_gag", + "model": "tiedup:models/gltf/v2/gags/ball_gag.glb", + "regions": [ + "MOUTH" + ], + "pose_priority": 10, + "escape_difficulty": 50, + "lockable": true, + "can_attach_padlock": true, + "supports_color": true, + "animation_bones": { + "idle": [ + "head" + ] + }, + "components": { + "lockable": {}, + "resistance": { + "id": "gag" + }, + "gagging": { + "material": "ball" + }, + "adjustable": {} + } +} \ No newline at end of file diff --git a/src/main/resources/data/tiedup/tiedup_items/ball_gag_3d.json b/src/main/resources/data/tiedup/tiedup_items/ball_gag_3d.json new file mode 100644 index 0000000..9eb3b10 --- /dev/null +++ b/src/main/resources/data/tiedup/tiedup_items/ball_gag_3d.json @@ -0,0 +1,28 @@ +{ + "type": "tiedup:bondage_item", + "display_name": "Ball Gag 3D", + "translation_key": "item.tiedup.ball_gag_3d", + "model": "tiedup:models/gltf/v2/combos/ball_gag_3d.glb", + "regions": [ + "MOUTH" + ], + "pose_priority": 10, + "escape_difficulty": 50, + "lockable": true, + "supports_color": true, + "animation_bones": { + "idle": [ + "head" + ] + }, + "components": { + "lockable": {}, + "resistance": { + "id": "gag" + }, + "gagging": { + "material": "ball" + }, + "adjustable": {} + } +} \ No newline at end of file diff --git a/src/main/resources/data/tiedup/tiedup_items/ball_gag_strap.json b/src/main/resources/data/tiedup/tiedup_items/ball_gag_strap.json new file mode 100644 index 0000000..123fc92 --- /dev/null +++ b/src/main/resources/data/tiedup/tiedup_items/ball_gag_strap.json @@ -0,0 +1,29 @@ +{ + "type": "tiedup:bondage_item", + "display_name": "Ball Gag Strap", + "translation_key": "item.tiedup.ball_gag_strap", + "model": "tiedup:models/gltf/v2/gags/ball_gag_strap.glb", + "regions": [ + "MOUTH" + ], + "pose_priority": 10, + "escape_difficulty": 50, + "lockable": true, + "can_attach_padlock": true, + "supports_color": true, + "animation_bones": { + "idle": [ + "head" + ] + }, + "components": { + "lockable": {}, + "resistance": { + "id": "gag" + }, + "gagging": { + "material": "ball" + }, + "adjustable": {} + } +} \ No newline at end of file diff --git a/src/main/resources/data/tiedup/tiedup_items/beam_cuffs.json b/src/main/resources/data/tiedup/tiedup_items/beam_cuffs.json new file mode 100644 index 0000000..f2a22f4 --- /dev/null +++ b/src/main/resources/data/tiedup/tiedup_items/beam_cuffs.json @@ -0,0 +1,31 @@ +{ + "type": "tiedup:bondage_item", + "display_name": "Beam Cuffs", + "translation_key": "item.tiedup.beam_cuffs", + "model": "tiedup:models/gltf/v2/binds/beam_cuffs.glb", + "regions": [ + "ARMS" + ], + "pose_type": "STANDARD", + "pose_priority": 30, + "escape_difficulty": 100, + "lockable": true, + "can_attach_padlock": true, + "supports_color": false, + "animation_bones": { + "idle": [ + "rightArm", + "leftArm" + ], + "struggle": [ + "rightArm", + "leftArm" + ] + }, + "components": { + "lockable": {}, + "resistance": { + "id": "chain" + } + } +} \ No newline at end of file diff --git a/src/main/resources/data/tiedup/tiedup_items/beam_panel_gag.json b/src/main/resources/data/tiedup/tiedup_items/beam_panel_gag.json new file mode 100644 index 0000000..f6a79ca --- /dev/null +++ b/src/main/resources/data/tiedup/tiedup_items/beam_panel_gag.json @@ -0,0 +1,29 @@ +{ + "type": "tiedup:bondage_item", + "display_name": "Beam Panel Gag", + "translation_key": "item.tiedup.beam_panel_gag", + "model": "tiedup:models/gltf/v2/gags/beam_panel_gag.glb", + "regions": [ + "MOUTH" + ], + "pose_priority": 10, + "escape_difficulty": 50, + "lockable": true, + "can_attach_padlock": true, + "supports_color": false, + "animation_bones": { + "idle": [ + "head" + ] + }, + "components": { + "lockable": {}, + "resistance": { + "id": "gag" + }, + "gagging": { + "material": "panel" + }, + "adjustable": {} + } +} \ No newline at end of file diff --git a/src/main/resources/data/tiedup/tiedup_items/bite_gag.json b/src/main/resources/data/tiedup/tiedup_items/bite_gag.json new file mode 100644 index 0000000..aabe80e --- /dev/null +++ b/src/main/resources/data/tiedup/tiedup_items/bite_gag.json @@ -0,0 +1,29 @@ +{ + "type": "tiedup:bondage_item", + "display_name": "Bite Gag", + "translation_key": "item.tiedup.bite_gag", + "model": "tiedup:models/gltf/v2/gags/bite_gag.glb", + "regions": [ + "MOUTH" + ], + "pose_priority": 10, + "escape_difficulty": 50, + "lockable": true, + "can_attach_padlock": true, + "supports_color": false, + "animation_bones": { + "idle": [ + "head" + ] + }, + "components": { + "lockable": {}, + "resistance": { + "id": "gag" + }, + "gagging": { + "material": "bite" + }, + "adjustable": {} + } +} \ No newline at end of file diff --git a/src/main/resources/data/tiedup/tiedup_items/blindfold_mask.json b/src/main/resources/data/tiedup/tiedup_items/blindfold_mask.json new file mode 100644 index 0000000..fd167aa --- /dev/null +++ b/src/main/resources/data/tiedup/tiedup_items/blindfold_mask.json @@ -0,0 +1,26 @@ +{ + "type": "tiedup:bondage_item", + "display_name": "Blindfold Mask", + "translation_key": "item.tiedup.blindfold_mask", + "model": "tiedup:models/gltf/v2/blindfolds/blindfold_mask.glb", + "regions": [ + "EYES" + ], + "pose_priority": 5, + "escape_difficulty": 30, + "lockable": true, + "supports_color": true, + "animation_bones": { + "idle": [ + "head" + ] + }, + "components": { + "lockable": {}, + "resistance": { + "id": "blindfold" + }, + "blinding": {}, + "adjustable": {} + } +} \ No newline at end of file diff --git a/src/main/resources/data/tiedup/tiedup_items/chain.json b/src/main/resources/data/tiedup/tiedup_items/chain.json new file mode 100644 index 0000000..1b65798 --- /dev/null +++ b/src/main/resources/data/tiedup/tiedup_items/chain.json @@ -0,0 +1,31 @@ +{ + "type": "tiedup:bondage_item", + "display_name": "Chains", + "translation_key": "item.tiedup.chain", + "model": "tiedup:models/gltf/v2/binds/chain.glb", + "regions": [ + "ARMS" + ], + "pose_type": "STANDARD", + "pose_priority": 30, + "escape_difficulty": 100, + "lockable": true, + "can_attach_padlock": true, + "supports_color": false, + "animation_bones": { + "idle": [ + "rightArm", + "leftArm" + ], + "struggle": [ + "rightArm", + "leftArm" + ] + }, + "components": { + "lockable": {}, + "resistance": { + "id": "chain" + } + } +} \ No newline at end of file diff --git a/src/main/resources/data/tiedup/tiedup_items/chain_panel_gag.json b/src/main/resources/data/tiedup/tiedup_items/chain_panel_gag.json new file mode 100644 index 0000000..f31fb74 --- /dev/null +++ b/src/main/resources/data/tiedup/tiedup_items/chain_panel_gag.json @@ -0,0 +1,29 @@ +{ + "type": "tiedup:bondage_item", + "display_name": "Chain Panel Gag", + "translation_key": "item.tiedup.chain_panel_gag", + "model": "tiedup:models/gltf/v2/gags/chain_panel_gag.glb", + "regions": [ + "MOUTH" + ], + "pose_priority": 10, + "escape_difficulty": 50, + "lockable": true, + "can_attach_padlock": true, + "supports_color": false, + "animation_bones": { + "idle": [ + "head" + ] + }, + "components": { + "lockable": {}, + "resistance": { + "id": "gag" + }, + "gagging": { + "material": "panel" + }, + "adjustable": {} + } +} \ No newline at end of file diff --git a/src/main/resources/data/tiedup/tiedup_items/choke_collar.json b/src/main/resources/data/tiedup/tiedup_items/choke_collar.json new file mode 100644 index 0000000..6a9b9a9 --- /dev/null +++ b/src/main/resources/data/tiedup/tiedup_items/choke_collar.json @@ -0,0 +1,25 @@ +{ + "type": "tiedup:bondage_item", + "regions": [ + "NECK" + ], + "pose_priority": 5, + "escape_difficulty": 80, + "lockable": true, + "animation_bones": { + "idle": [ + "body" + ] + }, + "display_name": "Choke Collar", + "translation_key": "item.tiedup.choke_collar", + "model": "tiedup:models/gltf/v2/collars/choke_collar.glb", + "components": { + "ownership": {}, + "lockable": {}, + "resistance": { + "id": "collar" + }, + "choking": {} + } +} \ No newline at end of file diff --git a/src/main/resources/data/tiedup/tiedup_items/classic_blindfold.json b/src/main/resources/data/tiedup/tiedup_items/classic_blindfold.json new file mode 100644 index 0000000..2b79cff --- /dev/null +++ b/src/main/resources/data/tiedup/tiedup_items/classic_blindfold.json @@ -0,0 +1,26 @@ +{ + "type": "tiedup:bondage_item", + "display_name": "Blindfold", + "translation_key": "item.tiedup.classic_blindfold", + "model": "tiedup:models/gltf/v2/blindfolds/classic_blindfold.glb", + "regions": [ + "EYES" + ], + "pose_priority": 5, + "escape_difficulty": 30, + "lockable": true, + "supports_color": true, + "animation_bones": { + "idle": [ + "head" + ] + }, + "components": { + "lockable": {}, + "resistance": { + "id": "blindfold" + }, + "blinding": {}, + "adjustable": {} + } +} \ No newline at end of file diff --git a/src/main/resources/data/tiedup/tiedup_items/classic_collar.json b/src/main/resources/data/tiedup/tiedup_items/classic_collar.json new file mode 100644 index 0000000..fcae2eb --- /dev/null +++ b/src/main/resources/data/tiedup/tiedup_items/classic_collar.json @@ -0,0 +1,24 @@ +{ + "type": "tiedup:bondage_item", + "regions": [ + "NECK" + ], + "pose_priority": 5, + "escape_difficulty": 80, + "lockable": true, + "animation_bones": { + "idle": [ + "body" + ] + }, + "display_name": "Classic Collar", + "translation_key": "item.tiedup.classic_collar", + "model": "tiedup:models/gltf/v2/collars/classic_collar.glb", + "components": { + "ownership": {}, + "lockable": {}, + "resistance": { + "id": "collar" + } + } +} \ No newline at end of file diff --git a/src/main/resources/data/tiedup/tiedup_items/classic_earplugs.json b/src/main/resources/data/tiedup/tiedup_items/classic_earplugs.json new file mode 100644 index 0000000..a9944b7 --- /dev/null +++ b/src/main/resources/data/tiedup/tiedup_items/classic_earplugs.json @@ -0,0 +1,23 @@ +{ + "type": "tiedup:bondage_item", + "display_name": "Earplugs", + "translation_key": "item.tiedup.classic_earplugs", + "model": "tiedup:models/gltf/v2/earplugs/classic_earplugs.glb", + "regions": [ + "EARS" + ], + "pose_priority": 5, + "escape_difficulty": 20, + "lockable": true, + "animation_bones": { + "idle": [ + "head" + ] + }, + "components": { + "lockable": {}, + "resistance": { + "id": "blindfold" + } + } +} \ No newline at end of file diff --git a/src/main/resources/data/tiedup/tiedup_items/cleave_gag.json b/src/main/resources/data/tiedup/tiedup_items/cleave_gag.json new file mode 100644 index 0000000..6032aff --- /dev/null +++ b/src/main/resources/data/tiedup/tiedup_items/cleave_gag.json @@ -0,0 +1,29 @@ +{ + "type": "tiedup:bondage_item", + "display_name": "Cleave Gag", + "translation_key": "item.tiedup.cleave_gag", + "model": "tiedup:models/gltf/v2/gags/cleave_gag.glb", + "regions": [ + "MOUTH" + ], + "pose_priority": 10, + "escape_difficulty": 50, + "lockable": true, + "can_attach_padlock": true, + "supports_color": true, + "animation_bones": { + "idle": [ + "head" + ] + }, + "components": { + "lockable": {}, + "resistance": { + "id": "gag" + }, + "gagging": { + "material": "cloth" + }, + "adjustable": {} + } +} \ No newline at end of file diff --git a/src/main/resources/data/tiedup/tiedup_items/cloth_gag.json b/src/main/resources/data/tiedup/tiedup_items/cloth_gag.json new file mode 100644 index 0000000..dffcab7 --- /dev/null +++ b/src/main/resources/data/tiedup/tiedup_items/cloth_gag.json @@ -0,0 +1,29 @@ +{ + "type": "tiedup:bondage_item", + "display_name": "Cloth Gag", + "translation_key": "item.tiedup.cloth_gag", + "model": "tiedup:models/gltf/v2/gags/cloth_gag.glb", + "regions": [ + "MOUTH" + ], + "pose_priority": 10, + "escape_difficulty": 50, + "lockable": true, + "can_attach_padlock": true, + "supports_color": true, + "animation_bones": { + "idle": [ + "head" + ] + }, + "components": { + "lockable": {}, + "resistance": { + "id": "gag" + }, + "gagging": { + "material": "cloth" + }, + "adjustable": {} + } +} \ No newline at end of file diff --git a/src/main/resources/data/tiedup/tiedup_items/dogbinder.json b/src/main/resources/data/tiedup/tiedup_items/dogbinder.json new file mode 100644 index 0000000..871668f --- /dev/null +++ b/src/main/resources/data/tiedup/tiedup_items/dogbinder.json @@ -0,0 +1,32 @@ +{ + "type": "tiedup:bondage_item", + "display_name": "Dogbinder", + "translation_key": "item.tiedup.dogbinder", + "model": "tiedup:models/gltf/v2/binds/dogbinder.glb", + "regions": [ + "ARMS" + ], + "pose_type": "DOG", + "pose_priority": 30, + "escape_difficulty": 100, + "lockable": true, + "can_attach_padlock": true, + "supports_color": false, + "animation_bones": { + "idle": [ + "rightArm", + "leftArm" + ], + "struggle": [ + "rightArm", + "leftArm" + ] + }, + "components": { + "lockable": {}, + "resistance": { + "id": "armbinder" + } + }, + "movement_style": "CRAWL" +} \ No newline at end of file diff --git a/src/main/resources/data/tiedup/tiedup_items/duct_tape.json b/src/main/resources/data/tiedup/tiedup_items/duct_tape.json new file mode 100644 index 0000000..8d94ea8 --- /dev/null +++ b/src/main/resources/data/tiedup/tiedup_items/duct_tape.json @@ -0,0 +1,30 @@ +{ + "type": "tiedup:bondage_item", + "display_name": "Duct Tape", + "translation_key": "item.tiedup.duct_tape", + "model": "tiedup:models/gltf/v2/binds/duct_tape.glb", + "regions": [ + "ARMS" + ], + "pose_type": "STANDARD", + "pose_priority": 30, + "escape_difficulty": 100, + "lockable": true, + "can_attach_padlock": false, + "supports_color": true, + "animation_bones": { + "idle": [ + "rightArm", + "leftArm" + ], + "struggle": [ + "rightArm", + "leftArm" + ] + }, + "components": { + "resistance": { + "id": "tape" + } + } +} \ No newline at end of file diff --git a/src/main/resources/data/tiedup/tiedup_items/gps_collar.json b/src/main/resources/data/tiedup/tiedup_items/gps_collar.json new file mode 100644 index 0000000..3b72630 --- /dev/null +++ b/src/main/resources/data/tiedup/tiedup_items/gps_collar.json @@ -0,0 +1,27 @@ +{ + "type": "tiedup:bondage_item", + "regions": [ + "NECK" + ], + "pose_priority": 5, + "escape_difficulty": 80, + "lockable": true, + "animation_bones": { + "idle": [ + "body" + ] + }, + "display_name": "GPS Collar", + "translation_key": "item.tiedup.gps_collar", + "model": "tiedup:models/gltf/v2/collars/gps_collar.glb", + "components": { + "ownership": {}, + "lockable": {}, + "resistance": { + "id": "collar" + }, + "gps": { + "safe_zone_radius": 50 + } + } +} \ No newline at end of file diff --git a/src/main/resources/data/tiedup/tiedup_items/hood.json b/src/main/resources/data/tiedup/tiedup_items/hood.json new file mode 100644 index 0000000..5e97f35 --- /dev/null +++ b/src/main/resources/data/tiedup/tiedup_items/hood.json @@ -0,0 +1,31 @@ +{ + "type": "tiedup:bondage_item", + "display_name": "Hood", + "translation_key": "item.tiedup.hood", + "model": "tiedup:models/gltf/v2/combos/hood.glb", + "regions": [ + "EYES" + ], + "blocked_regions": [ + "EYES", + "EARS" + ], + "pose_priority": 10, + "escape_difficulty": 40, + "lockable": true, + "animation_bones": { + "idle": [ + "head" + ] + }, + "components": { + "lockable": {}, + "resistance": { + "id": "blindfold" + }, + "blinding": {}, + "gagging": { + "material": "stuffed" + } + } +} \ No newline at end of file diff --git a/src/main/resources/data/tiedup/tiedup_items/latex_gag.json b/src/main/resources/data/tiedup/tiedup_items/latex_gag.json new file mode 100644 index 0000000..23c58ce --- /dev/null +++ b/src/main/resources/data/tiedup/tiedup_items/latex_gag.json @@ -0,0 +1,29 @@ +{ + "type": "tiedup:bondage_item", + "display_name": "Latex Gag", + "translation_key": "item.tiedup.latex_gag", + "model": "tiedup:models/gltf/v2/gags/latex_gag.glb", + "regions": [ + "MOUTH" + ], + "pose_priority": 10, + "escape_difficulty": 50, + "lockable": true, + "can_attach_padlock": true, + "supports_color": false, + "animation_bones": { + "idle": [ + "head" + ] + }, + "components": { + "lockable": {}, + "resistance": { + "id": "gag" + }, + "gagging": { + "material": "latex" + }, + "adjustable": {} + } +} \ No newline at end of file diff --git a/src/main/resources/data/tiedup/tiedup_items/latex_sack.json b/src/main/resources/data/tiedup/tiedup_items/latex_sack.json new file mode 100644 index 0000000..fe9ed7a --- /dev/null +++ b/src/main/resources/data/tiedup/tiedup_items/latex_sack.json @@ -0,0 +1,31 @@ +{ + "type": "tiedup:bondage_item", + "display_name": "Latex Sack", + "translation_key": "item.tiedup.latex_sack", + "model": "tiedup:models/gltf/v2/binds/latex_sack.glb", + "regions": [ + "ARMS" + ], + "pose_type": "LATEX_SACK", + "pose_priority": 30, + "escape_difficulty": 100, + "lockable": true, + "can_attach_padlock": true, + "supports_color": false, + "animation_bones": { + "idle": [ + "rightArm", + "leftArm" + ], + "struggle": [ + "rightArm", + "leftArm" + ] + }, + "components": { + "lockable": {}, + "resistance": { + "id": "latex_sack" + } + } +} \ No newline at end of file diff --git a/src/main/resources/data/tiedup/tiedup_items/leather_mittens.json b/src/main/resources/data/tiedup/tiedup_items/leather_mittens.json new file mode 100644 index 0000000..c82c6ea --- /dev/null +++ b/src/main/resources/data/tiedup/tiedup_items/leather_mittens.json @@ -0,0 +1,21 @@ +{ + "type": "tiedup:bondage_item", + "display_name": "Leather Mittens", + "translation_key": "item.tiedup.leather_mittens", + "model": "tiedup:models/gltf/v2/mittens/leather_mittens.glb", + "regions": [ + "HANDS" + ], + "pose_priority": 5, + "escape_difficulty": 20, + "lockable": true, + "animation_bones": { + "idle": [ + "rightArm", + "leftArm" + ] + }, + "components": { + "lockable": {} + } +} \ No newline at end of file diff --git a/src/main/resources/data/tiedup/tiedup_items/leather_straps.json b/src/main/resources/data/tiedup/tiedup_items/leather_straps.json new file mode 100644 index 0000000..d1628a0 --- /dev/null +++ b/src/main/resources/data/tiedup/tiedup_items/leather_straps.json @@ -0,0 +1,31 @@ +{ + "type": "tiedup:bondage_item", + "display_name": "Leather Straps", + "translation_key": "item.tiedup.leather_straps", + "model": "tiedup:models/gltf/v2/binds/leather_straps.glb", + "regions": [ + "ARMS" + ], + "pose_type": "STANDARD", + "pose_priority": 30, + "escape_difficulty": 100, + "lockable": true, + "can_attach_padlock": true, + "supports_color": false, + "animation_bones": { + "idle": [ + "rightArm", + "leftArm" + ], + "struggle": [ + "rightArm", + "leftArm" + ] + }, + "components": { + "lockable": {}, + "resistance": { + "id": "armbinder" + } + } +} \ No newline at end of file diff --git a/src/main/resources/data/tiedup/tiedup_items/medical_gag.json b/src/main/resources/data/tiedup/tiedup_items/medical_gag.json new file mode 100644 index 0000000..a1af652 --- /dev/null +++ b/src/main/resources/data/tiedup/tiedup_items/medical_gag.json @@ -0,0 +1,27 @@ +{ + "type": "tiedup:bondage_item", + "display_name": "Medical Gag", + "translation_key": "item.tiedup.medical_gag", + "model": "tiedup:models/gltf/v2/combos/medical_gag.glb", + "regions": [ + "MOUTH" + ], + "pose_priority": 10, + "escape_difficulty": 50, + "lockable": true, + "animation_bones": { + "idle": [ + "head" + ] + }, + "components": { + "lockable": {}, + "resistance": { + "id": "gag" + }, + "gagging": { + "material": "panel" + }, + "blinding": {} + } +} \ No newline at end of file diff --git a/src/main/resources/data/tiedup/tiedup_items/medical_straps.json b/src/main/resources/data/tiedup/tiedup_items/medical_straps.json new file mode 100644 index 0000000..a520ff1 --- /dev/null +++ b/src/main/resources/data/tiedup/tiedup_items/medical_straps.json @@ -0,0 +1,31 @@ +{ + "type": "tiedup:bondage_item", + "display_name": "Medical Straps", + "translation_key": "item.tiedup.medical_straps", + "model": "tiedup:models/gltf/v2/binds/medical_straps.glb", + "regions": [ + "ARMS" + ], + "pose_type": "STANDARD", + "pose_priority": 30, + "escape_difficulty": 100, + "lockable": true, + "can_attach_padlock": true, + "supports_color": false, + "animation_bones": { + "idle": [ + "rightArm", + "leftArm" + ], + "struggle": [ + "rightArm", + "leftArm" + ] + }, + "components": { + "lockable": {}, + "resistance": { + "id": "armbinder" + } + } +} \ No newline at end of file diff --git a/src/main/resources/data/tiedup/tiedup_items/panel_gag.json b/src/main/resources/data/tiedup/tiedup_items/panel_gag.json new file mode 100644 index 0000000..12054f4 --- /dev/null +++ b/src/main/resources/data/tiedup/tiedup_items/panel_gag.json @@ -0,0 +1,29 @@ +{ + "type": "tiedup:bondage_item", + "display_name": "Panel Gag", + "translation_key": "item.tiedup.panel_gag", + "model": "tiedup:models/gltf/v2/gags/panel_gag.glb", + "regions": [ + "MOUTH" + ], + "pose_priority": 10, + "escape_difficulty": 50, + "lockable": true, + "can_attach_padlock": true, + "supports_color": false, + "animation_bones": { + "idle": [ + "head" + ] + }, + "components": { + "lockable": {}, + "resistance": { + "id": "gag" + }, + "gagging": { + "material": "panel" + }, + "adjustable": {} + } +} \ No newline at end of file diff --git a/src/main/resources/data/tiedup/tiedup_items/ribbon.json b/src/main/resources/data/tiedup/tiedup_items/ribbon.json new file mode 100644 index 0000000..c8c0d99 --- /dev/null +++ b/src/main/resources/data/tiedup/tiedup_items/ribbon.json @@ -0,0 +1,31 @@ +{ + "type": "tiedup:bondage_item", + "display_name": "Ribbon", + "translation_key": "item.tiedup.ribbon", + "model": "tiedup:models/gltf/v2/binds/ribbon.glb", + "regions": [ + "ARMS" + ], + "pose_type": "STANDARD", + "pose_priority": 30, + "escape_difficulty": 100, + "lockable": true, + "can_attach_padlock": true, + "supports_color": false, + "animation_bones": { + "idle": [ + "rightArm", + "leftArm" + ], + "struggle": [ + "rightArm", + "leftArm" + ] + }, + "components": { + "lockable": {}, + "resistance": { + "id": "ribbon" + } + } +} \ No newline at end of file diff --git a/src/main/resources/data/tiedup/tiedup_items/ribbon_gag.json b/src/main/resources/data/tiedup/tiedup_items/ribbon_gag.json new file mode 100644 index 0000000..544cc0b --- /dev/null +++ b/src/main/resources/data/tiedup/tiedup_items/ribbon_gag.json @@ -0,0 +1,29 @@ +{ + "type": "tiedup:bondage_item", + "display_name": "Ribbon Gag", + "translation_key": "item.tiedup.ribbon_gag", + "model": "tiedup:models/gltf/v2/gags/ribbon_gag.glb", + "regions": [ + "MOUTH" + ], + "pose_priority": 10, + "escape_difficulty": 50, + "lockable": true, + "can_attach_padlock": true, + "supports_color": false, + "animation_bones": { + "idle": [ + "head" + ] + }, + "components": { + "lockable": {}, + "resistance": { + "id": "gag" + }, + "gagging": { + "material": "cloth" + }, + "adjustable": {} + } +} \ No newline at end of file diff --git a/src/main/resources/data/tiedup/tiedup_items/ropes.json b/src/main/resources/data/tiedup/tiedup_items/ropes.json new file mode 100644 index 0000000..c02a543 --- /dev/null +++ b/src/main/resources/data/tiedup/tiedup_items/ropes.json @@ -0,0 +1,31 @@ +{ + "type": "tiedup:bondage_item", + "display_name": "Ropes", + "translation_key": "item.tiedup.ropes", + "model": "tiedup:models/gltf/v2/binds/ropes.glb", + "regions": [ + "ARMS" + ], + "pose_type": "STANDARD", + "pose_priority": 30, + "escape_difficulty": 100, + "lockable": true, + "can_attach_padlock": true, + "supports_color": true, + "animation_bones": { + "idle": [ + "rightArm", + "leftArm" + ], + "struggle": [ + "rightArm", + "leftArm" + ] + }, + "components": { + "lockable": {}, + "resistance": { + "id": "rope" + } + } +} \ No newline at end of file diff --git a/src/main/resources/data/tiedup/tiedup_items/ropes_gag.json b/src/main/resources/data/tiedup/tiedup_items/ropes_gag.json new file mode 100644 index 0000000..ca3dcc1 --- /dev/null +++ b/src/main/resources/data/tiedup/tiedup_items/ropes_gag.json @@ -0,0 +1,29 @@ +{ + "type": "tiedup:bondage_item", + "display_name": "Rope Gag", + "translation_key": "item.tiedup.ropes_gag", + "model": "tiedup:models/gltf/v2/gags/ropes_gag.glb", + "regions": [ + "MOUTH" + ], + "pose_priority": 10, + "escape_difficulty": 50, + "lockable": true, + "can_attach_padlock": true, + "supports_color": true, + "animation_bones": { + "idle": [ + "head" + ] + }, + "components": { + "lockable": {}, + "resistance": { + "id": "gag" + }, + "gagging": { + "material": "cloth" + }, + "adjustable": {} + } +} \ No newline at end of file diff --git a/src/main/resources/data/tiedup/tiedup_items/shibari.json b/src/main/resources/data/tiedup/tiedup_items/shibari.json new file mode 100644 index 0000000..19a346a --- /dev/null +++ b/src/main/resources/data/tiedup/tiedup_items/shibari.json @@ -0,0 +1,31 @@ +{ + "type": "tiedup:bondage_item", + "display_name": "Shibari", + "translation_key": "item.tiedup.shibari", + "model": "tiedup:models/gltf/v2/binds/shibari.glb", + "regions": [ + "ARMS" + ], + "pose_type": "STANDARD", + "pose_priority": 30, + "escape_difficulty": 100, + "lockable": true, + "can_attach_padlock": true, + "supports_color": true, + "animation_bones": { + "idle": [ + "rightArm", + "leftArm" + ], + "struggle": [ + "rightArm", + "leftArm" + ] + }, + "components": { + "lockable": {}, + "resistance": { + "id": "rope" + } + } +} \ No newline at end of file diff --git a/src/main/resources/data/tiedup/tiedup_items/shock_collar.json b/src/main/resources/data/tiedup/tiedup_items/shock_collar.json new file mode 100644 index 0000000..c5ff161 --- /dev/null +++ b/src/main/resources/data/tiedup/tiedup_items/shock_collar.json @@ -0,0 +1,27 @@ +{ + "type": "tiedup:bondage_item", + "regions": [ + "NECK" + ], + "pose_priority": 5, + "escape_difficulty": 80, + "lockable": true, + "animation_bones": { + "idle": [ + "body" + ] + }, + "display_name": "Shock Collar", + "translation_key": "item.tiedup.shock_collar", + "model": "tiedup:models/gltf/v2/collars/shock_collar.glb", + "components": { + "ownership": {}, + "lockable": {}, + "resistance": { + "id": "collar" + }, + "shock": { + "damage": 2.0 + } + } +} \ No newline at end of file diff --git a/src/main/resources/data/tiedup/tiedup_items/shock_collar_auto.json b/src/main/resources/data/tiedup/tiedup_items/shock_collar_auto.json new file mode 100644 index 0000000..e988804 --- /dev/null +++ b/src/main/resources/data/tiedup/tiedup_items/shock_collar_auto.json @@ -0,0 +1,28 @@ +{ + "type": "tiedup:bondage_item", + "regions": [ + "NECK" + ], + "pose_priority": 5, + "escape_difficulty": 80, + "lockable": true, + "animation_bones": { + "idle": [ + "body" + ] + }, + "display_name": "Auto Shock Collar", + "translation_key": "item.tiedup.shock_collar_auto", + "model": "tiedup:models/gltf/v2/collars/shock_collar_auto.glb", + "components": { + "ownership": {}, + "lockable": {}, + "resistance": { + "id": "collar" + }, + "shock": { + "damage": 2.0, + "auto_interval": 200 + } + } +} \ No newline at end of file diff --git a/src/main/resources/data/tiedup/tiedup_items/slime.json b/src/main/resources/data/tiedup/tiedup_items/slime.json new file mode 100644 index 0000000..9485645 --- /dev/null +++ b/src/main/resources/data/tiedup/tiedup_items/slime.json @@ -0,0 +1,30 @@ +{ + "type": "tiedup:bondage_item", + "display_name": "Slime Bind", + "translation_key": "item.tiedup.slime", + "model": "tiedup:models/gltf/v2/binds/slime.glb", + "regions": [ + "ARMS" + ], + "pose_type": "STANDARD", + "pose_priority": 30, + "escape_difficulty": 100, + "lockable": true, + "can_attach_padlock": false, + "supports_color": false, + "animation_bones": { + "idle": [ + "rightArm", + "leftArm" + ], + "struggle": [ + "rightArm", + "leftArm" + ] + }, + "components": { + "resistance": { + "id": "slime" + } + } +} \ No newline at end of file diff --git a/src/main/resources/data/tiedup/tiedup_items/slime_gag.json b/src/main/resources/data/tiedup/tiedup_items/slime_gag.json new file mode 100644 index 0000000..79d3f1d --- /dev/null +++ b/src/main/resources/data/tiedup/tiedup_items/slime_gag.json @@ -0,0 +1,28 @@ +{ + "type": "tiedup:bondage_item", + "display_name": "Slime Gag", + "translation_key": "item.tiedup.slime_gag", + "model": "tiedup:models/gltf/v2/gags/slime_gag.glb", + "regions": [ + "MOUTH" + ], + "pose_priority": 10, + "escape_difficulty": 50, + "lockable": true, + "can_attach_padlock": false, + "supports_color": false, + "animation_bones": { + "idle": [ + "head" + ] + }, + "components": { + "resistance": { + "id": "gag" + }, + "gagging": { + "material": "stuffed" + }, + "adjustable": {} + } +} \ No newline at end of file diff --git a/src/main/resources/data/tiedup/tiedup_items/sponge_gag.json b/src/main/resources/data/tiedup/tiedup_items/sponge_gag.json new file mode 100644 index 0000000..9e8ffb1 --- /dev/null +++ b/src/main/resources/data/tiedup/tiedup_items/sponge_gag.json @@ -0,0 +1,29 @@ +{ + "type": "tiedup:bondage_item", + "display_name": "Sponge Gag", + "translation_key": "item.tiedup.sponge_gag", + "model": "tiedup:models/gltf/v2/gags/sponge_gag.glb", + "regions": [ + "MOUTH" + ], + "pose_priority": 10, + "escape_difficulty": 50, + "lockable": true, + "can_attach_padlock": true, + "supports_color": false, + "animation_bones": { + "idle": [ + "head" + ] + }, + "components": { + "lockable": {}, + "resistance": { + "id": "gag" + }, + "gagging": { + "material": "sponge" + }, + "adjustable": {} + } +} \ No newline at end of file diff --git a/src/main/resources/data/tiedup/tiedup_items/straitjacket.json b/src/main/resources/data/tiedup/tiedup_items/straitjacket.json new file mode 100644 index 0000000..e790fe5 --- /dev/null +++ b/src/main/resources/data/tiedup/tiedup_items/straitjacket.json @@ -0,0 +1,31 @@ +{ + "type": "tiedup:bondage_item", + "display_name": "Straitjacket", + "translation_key": "item.tiedup.straitjacket", + "model": "tiedup:models/gltf/v2/binds/straitjacket.glb", + "regions": [ + "ARMS" + ], + "pose_type": "STRAITJACKET", + "pose_priority": 30, + "escape_difficulty": 100, + "lockable": true, + "can_attach_padlock": true, + "supports_color": false, + "animation_bones": { + "idle": [ + "rightArm", + "leftArm" + ], + "struggle": [ + "rightArm", + "leftArm" + ] + }, + "components": { + "lockable": {}, + "resistance": { + "id": "straitjacket" + } + } +} \ No newline at end of file diff --git a/src/main/resources/data/tiedup/tiedup_items/tape_gag.json b/src/main/resources/data/tiedup/tiedup_items/tape_gag.json new file mode 100644 index 0000000..a68e176 --- /dev/null +++ b/src/main/resources/data/tiedup/tiedup_items/tape_gag.json @@ -0,0 +1,28 @@ +{ + "type": "tiedup:bondage_item", + "display_name": "Tape Gag", + "translation_key": "item.tiedup.tape_gag", + "model": "tiedup:models/gltf/v2/gags/tape_gag.glb", + "regions": [ + "MOUTH" + ], + "pose_priority": 10, + "escape_difficulty": 50, + "lockable": true, + "can_attach_padlock": false, + "supports_color": true, + "animation_bones": { + "idle": [ + "head" + ] + }, + "components": { + "resistance": { + "id": "gag" + }, + "gagging": { + "material": "tape" + }, + "adjustable": {} + } +} \ No newline at end of file diff --git a/src/main/resources/data/tiedup/tiedup_items/test_component_gag.json b/src/main/resources/data/tiedup/tiedup_items/test_component_gag.json deleted file mode 100644 index b7adc12..0000000 --- a/src/main/resources/data/tiedup/tiedup_items/test_component_gag.json +++ /dev/null @@ -1,24 +0,0 @@ -{ - "type": "tiedup:bondage_item", - "display_name": "Component Test Gag", - "model": "tiedup:models/gltf/v2/handcuffs/cuffs_prototype.glb", - "regions": ["MOUTH"], - "pose_priority": 10, - "escape_difficulty": 3, - "lockable": true, - "animation_bones": { - "idle": [] - }, - "components": { - "lockable": { - "lock_resistance": 200 - }, - "resistance": { - "base": 80 - }, - "gagging": { - "comprehension": 0.15, - "range": 8.0 - } - } -} diff --git a/src/main/resources/data/tiedup/tiedup_items/test_handcuffs.json b/src/main/resources/data/tiedup/tiedup_items/test_handcuffs.json deleted file mode 100644 index 97c188c..0000000 --- a/src/main/resources/data/tiedup/tiedup_items/test_handcuffs.json +++ /dev/null @@ -1,14 +0,0 @@ -{ - "type": "tiedup:bondage_item", - "display_name": "Data-Driven Handcuffs", - "model": "tiedup:models/gltf/v2/handcuffs/cuffs_prototype.glb", - "regions": ["ARMS"], - "pose_priority": 30, - "escape_difficulty": 100, - "lockable": true, - "icon": "tiedup:item/beam_cuffs", - "animation_bones": { - "idle": ["rightArm", "leftArm"], - "struggle": ["rightArm", "leftArm"] - } -} diff --git a/src/main/resources/data/tiedup/tiedup_items/tube_gag.json b/src/main/resources/data/tiedup/tiedup_items/tube_gag.json new file mode 100644 index 0000000..07c1c23 --- /dev/null +++ b/src/main/resources/data/tiedup/tiedup_items/tube_gag.json @@ -0,0 +1,29 @@ +{ + "type": "tiedup:bondage_item", + "display_name": "Tube Gag", + "translation_key": "item.tiedup.tube_gag", + "model": "tiedup:models/gltf/v2/gags/tube_gag.glb", + "regions": [ + "MOUTH" + ], + "pose_priority": 10, + "escape_difficulty": 50, + "lockable": true, + "can_attach_padlock": true, + "supports_color": false, + "animation_bones": { + "idle": [ + "head" + ] + }, + "components": { + "lockable": {}, + "resistance": { + "id": "gag" + }, + "gagging": { + "material": "ring" + }, + "adjustable": {} + } +} \ No newline at end of file diff --git a/src/main/resources/data/tiedup/tiedup_items/vine_gag.json b/src/main/resources/data/tiedup/tiedup_items/vine_gag.json new file mode 100644 index 0000000..837da78 --- /dev/null +++ b/src/main/resources/data/tiedup/tiedup_items/vine_gag.json @@ -0,0 +1,28 @@ +{ + "type": "tiedup:bondage_item", + "display_name": "Vine Gag", + "translation_key": "item.tiedup.vine_gag", + "model": "tiedup:models/gltf/v2/gags/vine_gag.glb", + "regions": [ + "MOUTH" + ], + "pose_priority": 10, + "escape_difficulty": 50, + "lockable": true, + "can_attach_padlock": false, + "supports_color": false, + "animation_bones": { + "idle": [ + "head" + ] + }, + "components": { + "resistance": { + "id": "gag" + }, + "gagging": { + "material": "stuffed" + }, + "adjustable": {} + } +} \ No newline at end of file diff --git a/src/main/resources/data/tiedup/tiedup_items/vine_seed.json b/src/main/resources/data/tiedup/tiedup_items/vine_seed.json new file mode 100644 index 0000000..96ce0f9 --- /dev/null +++ b/src/main/resources/data/tiedup/tiedup_items/vine_seed.json @@ -0,0 +1,30 @@ +{ + "type": "tiedup:bondage_item", + "display_name": "Vine Bind", + "translation_key": "item.tiedup.vine_seed", + "model": "tiedup:models/gltf/v2/binds/vine_seed.glb", + "regions": [ + "ARMS" + ], + "pose_type": "STANDARD", + "pose_priority": 30, + "escape_difficulty": 100, + "lockable": true, + "can_attach_padlock": false, + "supports_color": false, + "animation_bones": { + "idle": [ + "rightArm", + "leftArm" + ], + "struggle": [ + "rightArm", + "leftArm" + ] + }, + "components": { + "resistance": { + "id": "vine" + } + } +} \ No newline at end of file diff --git a/src/main/resources/data/tiedup/tiedup_items/web_bind.json b/src/main/resources/data/tiedup/tiedup_items/web_bind.json new file mode 100644 index 0000000..b08ead1 --- /dev/null +++ b/src/main/resources/data/tiedup/tiedup_items/web_bind.json @@ -0,0 +1,30 @@ +{ + "type": "tiedup:bondage_item", + "display_name": "Web Bind", + "translation_key": "item.tiedup.web_bind", + "model": "tiedup:models/gltf/v2/binds/web_bind.glb", + "regions": [ + "ARMS" + ], + "pose_type": "STANDARD", + "pose_priority": 30, + "escape_difficulty": 100, + "lockable": true, + "can_attach_padlock": false, + "supports_color": false, + "animation_bones": { + "idle": [ + "rightArm", + "leftArm" + ], + "struggle": [ + "rightArm", + "leftArm" + ] + }, + "components": { + "resistance": { + "id": "web" + } + } +} \ No newline at end of file diff --git a/src/main/resources/data/tiedup/tiedup_items/web_gag.json b/src/main/resources/data/tiedup/tiedup_items/web_gag.json new file mode 100644 index 0000000..69427e3 --- /dev/null +++ b/src/main/resources/data/tiedup/tiedup_items/web_gag.json @@ -0,0 +1,28 @@ +{ + "type": "tiedup:bondage_item", + "display_name": "Web Gag", + "translation_key": "item.tiedup.web_gag", + "model": "tiedup:models/gltf/v2/gags/web_gag.glb", + "regions": [ + "MOUTH" + ], + "pose_priority": 10, + "escape_difficulty": 50, + "lockable": true, + "can_attach_padlock": false, + "supports_color": false, + "animation_bones": { + "idle": [ + "head" + ] + }, + "components": { + "resistance": { + "id": "gag" + }, + "gagging": { + "material": "stuffed" + }, + "adjustable": {} + } +} \ No newline at end of file diff --git a/src/main/resources/data/tiedup/tiedup_items/wrap.json b/src/main/resources/data/tiedup/tiedup_items/wrap.json new file mode 100644 index 0000000..813f485 --- /dev/null +++ b/src/main/resources/data/tiedup/tiedup_items/wrap.json @@ -0,0 +1,31 @@ +{ + "type": "tiedup:bondage_item", + "display_name": "Wrap", + "translation_key": "item.tiedup.wrap", + "model": "tiedup:models/gltf/v2/binds/wrap.glb", + "regions": [ + "ARMS" + ], + "pose_type": "WRAP", + "pose_priority": 30, + "escape_difficulty": 100, + "lockable": true, + "can_attach_padlock": true, + "supports_color": false, + "animation_bones": { + "idle": [ + "rightArm", + "leftArm" + ], + "struggle": [ + "rightArm", + "leftArm" + ] + }, + "components": { + "lockable": {}, + "resistance": { + "id": "wrap" + } + } +} \ No newline at end of file diff --git a/src/main/resources/data/tiedup/tiedup_items/wrap_gag.json b/src/main/resources/data/tiedup/tiedup_items/wrap_gag.json new file mode 100644 index 0000000..2d188e8 --- /dev/null +++ b/src/main/resources/data/tiedup/tiedup_items/wrap_gag.json @@ -0,0 +1,29 @@ +{ + "type": "tiedup:bondage_item", + "display_name": "Wrap Gag", + "translation_key": "item.tiedup.wrap_gag", + "model": "tiedup:models/gltf/v2/gags/wrap_gag.glb", + "regions": [ + "MOUTH" + ], + "pose_priority": 10, + "escape_difficulty": 50, + "lockable": true, + "can_attach_padlock": true, + "supports_color": false, + "animation_bones": { + "idle": [ + "head" + ] + }, + "components": { + "lockable": {}, + "resistance": { + "id": "gag" + }, + "gagging": { + "material": "stuffed" + }, + "adjustable": {} + } +} \ No newline at end of file