9
0
mirror of https://github.com/Xiao-MoMi/Custom-Fishing.git synced 2026-01-06 15:51:50 +00:00

checkpoint - 32

This commit is contained in:
XiaoMoMi
2024-07-10 00:06:20 +08:00
parent 12782164c8
commit 395616446d
16 changed files with 383 additions and 19 deletions

View File

@@ -47,6 +47,17 @@ public class AbstractItem<R, I> implements Item<I> {
return factory.damage(item);
}
@Override
public Item<I> maxDamage(Integer data) {
factory.maxDamage(item, data);
return this;
}
@Override
public Optional<Integer> maxDamage() {
return factory.maxDamage(item);
}
@Override
public Item<I> customModelData(Integer data) {
factory.customModelData(item, data);
@@ -74,6 +85,17 @@ public class AbstractItem<R, I> implements Item<I> {
return factory.lore(item);
}
@Override
public Item<I> unbreakable(boolean unbreakable) {
factory.unbreakable(item, unbreakable);
return this;
}
@Override
public boolean unbreakable() {
return factory.unbreakable(item);
}
@Override
public Item<I> displayName(String displayName) {
factory.displayName(item, displayName);

View File

@@ -25,11 +25,8 @@ public class ComponentKeys {
public static final String CUSTOM_NAME = Key.key("minecraft", "custom_name").asString();
public static final String LORE = Key.key("minecraft", "lore").asString();
public static final String DAMAGE = Key.key("minecraft", "damage").asString();
public static final String MAX_DAMAGE = Key.key("minecraft", "max_damage").asString();
public static final String ENCHANTMENT_GLINT_OVERRIDE = Key.key("minecraft", "enchantment_glint_override").asString();
public static final String ENCHANTMENTS = Key.key("minecraft", "enchantments").asString();
public static final String STORED_ENCHANTMENTS = Key.key("minecraft", "stored_enchantments").asString();
public static final String HIDE_TOOLTIP = Key.key("minecraft", "hide_tooltip").asString();
public static final String MAX_STACK_SIZE = Key.key("minecraft", "max_stack_size").asString();
public static final String PROFILE = Key.key("minecraft", "profile").asString();
public static final String UNBREAKABLE = Key.key("minecraft", "unbreakable").asString();
}

View File

@@ -33,6 +33,10 @@ public interface Item<I> {
Optional<Integer> damage();
Item<I> maxDamage(Integer data);
Optional<Integer> maxDamage();
Item<I> displayName(String displayName);
Optional<String> displayName();
@@ -41,6 +45,10 @@ public interface Item<I> {
Optional<List<String>> lore();
Item<I> unbreakable(boolean unbreakable);
boolean unbreakable();
Item<I> skull(String data);
Item<I> enchantments(Map<Key, Short> enchantments);

View File

@@ -80,6 +80,10 @@ public abstract class ItemFactory<P extends CustomFishingPlugin, R, I> {
protected abstract void damage(R item, Integer damage);
protected abstract Optional<Integer> maxDamage(R item);
protected abstract void maxDamage(R item, Integer damage);
protected abstract void enchantments(R item, Map<Key, Short> enchantments);
protected abstract void storedEnchantments(R item, Map<Key, Short> enchantments);