Clean repo for open source release
Remove build artifacts, dev tool configs, unused dependencies, and third-party source dumps. Add proper README, update .gitignore, clean up Makefile.
This commit is contained in:
68
src/main/java/com/tiedup/remake/items/GenericBind.java
Normal file
68
src/main/java/com/tiedup/remake/items/GenericBind.java
Normal file
@@ -0,0 +1,68 @@
|
||||
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();
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user