feat(D-01/D): V1 cleanup — delete 28 files, ~5400 lines removed

D1: ThreadLocal alert suppression moved from ItemCollar to CollarHelper.
    onCollarRemoved() logic (kidnapper alert) moved to CollarHelper.

D2+D3: Deleted 17 V1 item classes + 4 V1-only interfaces:
  ItemBind, ItemGag, ItemBlindfold, ItemCollar, ItemEarplugs, ItemMittens,
  ItemColor, ItemClassicCollar, ItemShockCollar, ItemShockCollarAuto,
  ItemGpsCollar, ItemChokeCollar, ItemHood, ItemMedicalGag,
  IBondageItem, IHasGaggingEffect, IHasBlindingEffect, IAdjustable

D4: KidnapperTheme/KidnapperItemSelector/DispenserBehaviors migrated
    from variant enums to string-based DataDrivenItemRegistry IDs.

D5: Deleted 11 variant enums + Generic* factories + ItemBallGag3D:
  BindVariant, GagVariant, BlindfoldVariant, EarplugsVariant, MittensVariant,
  GenericBind, GenericGag, GenericBlindfold, GenericEarplugs, GenericMittens

D6: ModItems cleaned — all V1 bondage registrations removed.
D7: ModCreativeTabs rewritten — iterates DataDrivenItemRegistry.
D8+D9: All V2 helpers cleaned (V1 fallbacks removed), orphan imports removed.

Zero V1 bondage code references remain (only Javadoc comments).
All bondage items are now data-driven via 47 JSON definitions.
This commit is contained in:
NotEvil
2026-04-15 01:55:16 +02:00
parent f085fbfec2
commit 2504b7d657
89 changed files with 2647 additions and 5423 deletions

View File

@@ -3,8 +3,8 @@ package com.tiedup.remake.items;
import com.tiedup.remake.core.ModSounds;
import com.tiedup.remake.core.SystemMessageManager;
import com.tiedup.remake.core.TiedUpMod;
import com.tiedup.remake.items.base.ItemCollar;
import com.tiedup.remake.items.base.ItemOwnerTarget;
import com.tiedup.remake.v2.bondage.CollarHelper;
import com.tiedup.remake.state.IRestrainable;
import com.tiedup.remake.util.KidnappedHelper;
import com.tiedup.remake.v2.BodyRegionV2;
@@ -77,12 +77,11 @@ public class ItemShockerController extends ItemOwnerTarget {
BodyRegionV2.NECK
);
if (
collar.getItem() instanceof
ItemCollar collarItem &&
collarItem.hasNickname(collar)
CollarHelper.isCollar(collar) &&
CollarHelper.hasNickname(collar)
) {
displayName =
collarItem.getNickname(collar) +
CollarHelper.getNickname(collar) +
" (" +
displayName +
")";
@@ -330,12 +329,10 @@ public class ItemShockerController extends ItemOwnerTarget {
IRestrainable state = KidnappedHelper.getKidnappedState(entity);
if (state != null && state.hasCollar()) {
ItemStack collarStack = state.getEquipment(BodyRegionV2.NECK);
if (
collarStack.getItem() instanceof ItemShockCollar collarItem
) {
if (CollarHelper.canShock(collarStack)) {
if (
collarItem.getOwners(collarStack).contains(ownerId) ||
collarItem.isPublic(collarStack)
CollarHelper.isOwner(collarStack, ownerId) ||
CollarHelper.isPublicShock(collarStack)
) {
targets.add(entity);
}