Remove build artifacts, dev tool configs, unused dependencies, and third-party source dumps. Add proper README, update .gitignore, clean up Makefile.
69 lines
1.8 KiB
Java
69 lines
1.8 KiB
Java
package com.tiedup.remake.items;
|
|
|
|
import com.tiedup.remake.items.base.BindVariant;
|
|
import com.tiedup.remake.items.base.ItemBind;
|
|
import com.tiedup.remake.items.base.PoseType;
|
|
import net.minecraft.world.item.Item;
|
|
|
|
/**
|
|
* Generic bind item created from BindVariant enum.
|
|
* Replaces individual bind classes (ItemRopes, ItemChain, ItemStraitjacket, etc.)
|
|
*
|
|
* Factory pattern: All bind variants are created using this single class.
|
|
*/
|
|
public class GenericBind extends ItemBind {
|
|
|
|
private final BindVariant variant;
|
|
|
|
public GenericBind(BindVariant variant) {
|
|
super(new Item.Properties().stacksTo(16));
|
|
this.variant = variant;
|
|
}
|
|
|
|
@Override
|
|
public String getItemName() {
|
|
return variant.getItemName();
|
|
}
|
|
|
|
@Override
|
|
public PoseType getPoseType() {
|
|
return variant.getPoseType();
|
|
}
|
|
|
|
/**
|
|
* Get the variant this bind was created from.
|
|
*/
|
|
public BindVariant getVariant() {
|
|
return variant;
|
|
}
|
|
|
|
/**
|
|
* Get the default resistance value for this bind variant.
|
|
* Note: Actual resistance is managed by GameRules, this is just the configured default.
|
|
*/
|
|
public int getDefaultResistance() {
|
|
return variant.getResistance();
|
|
}
|
|
|
|
/**
|
|
* Check if this bind can have a padlock attached via anvil.
|
|
* Adhesive (tape) and organic (slime, vine, web) binds cannot have padlocks.
|
|
*/
|
|
@Override
|
|
public boolean canAttachPadlock() {
|
|
return switch (variant) {
|
|
case DUCT_TAPE, SLIME, VINE_SEED, WEB_BIND -> false;
|
|
default -> true;
|
|
};
|
|
}
|
|
|
|
/**
|
|
* Get the texture subfolder for this bind variant.
|
|
* Issue #12 fix: Eliminates string checks in renderers.
|
|
*/
|
|
@Override
|
|
public String getTextureSubfolder() {
|
|
return variant.getTextureSubfolder();
|
|
}
|
|
}
|