Code style fix, interface rename, custom item getter

This commit is contained in:
paulevsGitch 2021-07-20 00:10:00 +03:00
parent 179ada3296
commit c6afa74529
134 changed files with 3404 additions and 1244 deletions

View file

@ -16,11 +16,11 @@ import net.minecraft.world.level.block.Block;
import net.minecraft.world.level.block.state.BlockState;
import org.jetbrains.annotations.Nullable;
import ru.bclib.blocks.BaseAnvilBlock;
import ru.bclib.client.models.ItemModelProvider;
import ru.bclib.interfaces.ItemModelGetter;
import java.util.List;
public class BaseAnvilItem extends BlockItem implements ItemModelProvider {
public class BaseAnvilItem extends BlockItem implements ItemModelGetter {
public final static String DESTRUCTION = "destruction";
@ -54,6 +54,6 @@ public class BaseAnvilItem extends BlockItem implements ItemModelProvider {
public BlockModel getItemModel(ResourceLocation resourceLocation) {
Block anvilBlock = getBlock();
ResourceLocation blockId = Registry.BLOCK.getKey(anvilBlock);
return ((ItemModelProvider) anvilBlock).getItemModel(blockId);
return ((ItemModelGetter) anvilBlock).getItemModel(blockId);
}
}

View file

@ -8,13 +8,18 @@ import net.minecraft.world.entity.ai.attributes.AttributeModifier;
import net.minecraft.world.entity.ai.attributes.Attributes;
import net.minecraft.world.item.ArmorItem;
import net.minecraft.world.item.ArmorMaterial;
import ru.bclib.client.models.ItemModelProvider;
import ru.bclib.interfaces.ItemModelGetter;
import java.util.UUID;
public class BaseArmorItem extends ArmorItem implements ItemModelProvider {
public class BaseArmorItem extends ArmorItem implements ItemModelGetter {
protected static final UUID[] ARMOR_MODIFIER_UUID_PER_SLOT = new UUID[] {UUID.fromString("845DB27C-C624-495F-8C9F-6020A9A58B6B"), UUID.fromString("D8499B04-0E66-4726-AB29-64469D734E0D"), UUID.fromString("9F3D476D-C118-4544-8365-64846904B48E"), UUID.fromString("2AD3F246-FEE1-4E67-B886-69FD380BB150")};
protected static final UUID[] ARMOR_MODIFIER_UUID_PER_SLOT = new UUID[] {
UUID.fromString("845DB27C-C624-495F-8C9F-6020A9A58B6B"),
UUID.fromString("D8499B04-0E66-4726-AB29-64469D734E0D"),
UUID.fromString("9F3D476D-C118-4544-8365-64846904B48E"),
UUID.fromString("2AD3F246-FEE1-4E67-B886-69FD380BB150")
};
protected final Multimap<Attribute, AttributeModifier> defaultModifiers;
@ -22,10 +27,23 @@ public class BaseArmorItem extends ArmorItem implements ItemModelProvider {
super(material, equipmentSlot, settings);
this.defaultModifiers = HashMultimap.create();
UUID uuid = ARMOR_MODIFIER_UUID_PER_SLOT[equipmentSlot.getIndex()];
addAttributeModifier(Attributes.ARMOR, new AttributeModifier(uuid, "Armor modifier", getDefense(), AttributeModifier.Operation.ADDITION));
addAttributeModifier(Attributes.ARMOR_TOUGHNESS, new AttributeModifier(uuid, "Armor toughness", getToughness(), AttributeModifier.Operation.ADDITION));
addAttributeModifier(
Attributes.ARMOR,
new AttributeModifier(uuid, "Armor modifier", getDefense(), AttributeModifier.Operation.ADDITION)
);
addAttributeModifier(
Attributes.ARMOR_TOUGHNESS,
new AttributeModifier(uuid, "Armor toughness", getToughness(), AttributeModifier.Operation.ADDITION)
);
if (knockbackResistance > 0.0F) {
addAttributeModifier(Attributes.KNOCKBACK_RESISTANCE, new AttributeModifier(uuid, "Armor knockback resistance", knockbackResistance, AttributeModifier.Operation.ADDITION));
addAttributeModifier(
Attributes.KNOCKBACK_RESISTANCE,
new AttributeModifier(uuid,
"Armor knockback resistance",
knockbackResistance,
AttributeModifier.Operation.ADDITION
)
);
}
}

View file

@ -5,9 +5,9 @@ import net.minecraft.sounds.SoundEvents;
import net.minecraft.world.entity.EntityType;
import net.minecraft.world.item.MobBucketItem;
import net.minecraft.world.level.material.Fluids;
import ru.bclib.client.models.ItemModelProvider;
import ru.bclib.interfaces.ItemModelGetter;
public class BaseBucketItem extends MobBucketItem implements ItemModelProvider {
public class BaseBucketItem extends MobBucketItem implements ItemModelGetter {
public BaseBucketItem(EntityType<?> type, FabricItemSettings settings) {
super(type, Fluids.WATER, SoundEvents.BUCKET_EMPTY_FISH, settings.stacksTo(1));
}

View file

@ -2,9 +2,9 @@ package ru.bclib.items;
import net.minecraft.sounds.SoundEvent;
import net.minecraft.world.item.RecordItem;
import ru.bclib.client.models.ItemModelProvider;
import ru.bclib.interfaces.ItemModelGetter;
public class BaseDiscItem extends RecordItem implements ItemModelProvider {
public class BaseDiscItem extends RecordItem implements ItemModelGetter {
public BaseDiscItem(int comparatorOutput, SoundEvent sound, Properties settings) {
super(comparatorOutput, sound, settings);
}

View file

@ -8,13 +8,13 @@ import net.minecraft.world.entity.EntityType;
import net.minecraft.world.entity.Mob;
import net.minecraft.world.item.SpawnEggItem;
import ru.bclib.client.models.BasePatterns;
import ru.bclib.client.models.ItemModelProvider;
import ru.bclib.client.models.ModelsHelper;
import ru.bclib.client.models.PatternsHelper;
import ru.bclib.interfaces.ItemModelGetter;
import java.util.Optional;
public class BaseSpawnEggItem extends SpawnEggItem implements ItemModelProvider {
public class BaseSpawnEggItem extends SpawnEggItem implements ItemModelGetter {
public BaseSpawnEggItem(EntityType<? extends Mob> type, int primaryColor, int secondaryColor, Properties settings) {
super(type, primaryColor, secondaryColor, settings);
}

View file

@ -5,10 +5,10 @@ import net.fabricmc.api.Environment;
import net.minecraft.client.renderer.block.model.BlockModel;
import net.minecraft.resources.ResourceLocation;
import net.minecraft.world.item.Item;
import ru.bclib.client.models.ItemModelProvider;
import ru.bclib.client.models.ModelsHelper;
import ru.bclib.interfaces.ItemModelGetter;
public class ModelProviderItem extends Item implements ItemModelProvider {
public class ModelProviderItem extends Item implements ItemModelGetter {
public ModelProviderItem(Properties settings) {
super(settings);
}

View file

@ -13,10 +13,10 @@ import net.minecraft.world.item.Item;
import net.minecraft.world.item.ItemStack;
import net.minecraft.world.item.Tier;
import net.minecraft.world.level.block.state.BlockState;
import ru.bclib.client.models.ItemModelProvider;
import ru.bclib.client.models.ModelsHelper;
import ru.bclib.interfaces.ItemModelGetter;
public class BaseAxeItem extends AxeItem implements DynamicAttributeTool, ItemModelProvider {
public class BaseAxeItem extends AxeItem implements DynamicAttributeTool, ItemModelGetter {
public BaseAxeItem(Tier material, float attackDamage, float attackSpeed, Properties settings) {
super(material, attackDamage, attackSpeed, settings);
}

View file

@ -6,10 +6,10 @@ import net.minecraft.client.renderer.block.model.BlockModel;
import net.minecraft.resources.ResourceLocation;
import net.minecraft.world.item.HoeItem;
import net.minecraft.world.item.Tier;
import ru.bclib.client.models.ItemModelProvider;
import ru.bclib.client.models.ModelsHelper;
import ru.bclib.interfaces.ItemModelGetter;
public class BaseHoeItem extends HoeItem implements ItemModelProvider {
public class BaseHoeItem extends HoeItem implements ItemModelGetter {
public BaseHoeItem(Tier material, int attackDamage, float attackSpeed, Properties settings) {
super(material, attackDamage, attackSpeed, settings);
}

View file

@ -15,10 +15,10 @@ import net.minecraft.world.item.ItemStack;
import net.minecraft.world.item.PickaxeItem;
import net.minecraft.world.item.Tier;
import net.minecraft.world.level.block.state.BlockState;
import ru.bclib.client.models.ItemModelProvider;
import ru.bclib.client.models.ModelsHelper;
import ru.bclib.interfaces.ItemModelGetter;
public class BasePickaxeItem extends PickaxeItem implements DynamicAttributeTool, ItemModelProvider {
public class BasePickaxeItem extends PickaxeItem implements DynamicAttributeTool, ItemModelGetter {
public BasePickaxeItem(Tier material, int attackDamage, float attackSpeed, Properties settings) {
super(material, attackDamage, attackSpeed, settings);
}
@ -34,7 +34,10 @@ public class BasePickaxeItem extends PickaxeItem implements DynamicAttributeTool
@Override
public float getDestroySpeed(ItemStack stack, BlockState state) {
Entry entry = ToolManagerImpl.entryNullable(state.getBlock());
return (entry != null && entry.getMiningLevel(FabricToolTags.PICKAXES) >= 0) ? speed : super.getDestroySpeed(stack, state);
return (entry != null && entry.getMiningLevel(FabricToolTags.PICKAXES) >= 0) ? speed : super.getDestroySpeed(
stack,
state
);
}
@Override

View file

@ -15,10 +15,10 @@ import net.minecraft.world.item.ItemStack;
import net.minecraft.world.item.ShovelItem;
import net.minecraft.world.item.Tier;
import net.minecraft.world.level.block.state.BlockState;
import ru.bclib.client.models.ItemModelProvider;
import ru.bclib.client.models.ModelsHelper;
import ru.bclib.interfaces.ItemModelGetter;
public class BaseShovelItem extends ShovelItem implements DynamicAttributeTool, ItemModelProvider {
public class BaseShovelItem extends ShovelItem implements DynamicAttributeTool, ItemModelGetter {
public BaseShovelItem(Tier material, float attackDamage, float attackSpeed, Properties settings) {
super(material, attackDamage, attackSpeed, settings);
}
@ -34,7 +34,10 @@ public class BaseShovelItem extends ShovelItem implements DynamicAttributeTool,
@Override
public float getDestroySpeed(ItemStack stack, BlockState state) {
Entry entry = ToolManagerImpl.entryNullable(state.getBlock());
return (entry != null && entry.getMiningLevel(FabricToolTags.SHOVELS) >= 0) ? speed : super.getDestroySpeed(stack, state);
return (entry != null && entry.getMiningLevel(FabricToolTags.SHOVELS) >= 0) ? speed : super.getDestroySpeed(
stack,
state
);
}
@Override

View file

@ -7,10 +7,10 @@ import net.minecraft.client.renderer.block.model.BlockModel;
import net.minecraft.resources.ResourceLocation;
import net.minecraft.world.item.SwordItem;
import net.minecraft.world.item.Tier;
import ru.bclib.client.models.ItemModelProvider;
import ru.bclib.client.models.ModelsHelper;
import ru.bclib.interfaces.ItemModelGetter;
public class BaseSwordItem extends SwordItem implements DynamicAttributeTool, ItemModelProvider {
public class BaseSwordItem extends SwordItem implements DynamicAttributeTool, ItemModelGetter {
public BaseSwordItem(Tier material, int attackDamage, float attackSpeed, Properties settings) {
super(material, attackDamage, attackSpeed, settings);
}