diff --git a/src/main/java/com/portingdeadmods/modjam/api/client/model/MJArmorModel.java b/src/main/java/com/portingdeadmods/modjam/api/client/model/MJArmorModel.java index 83e5abdc..2a7e741f 100644 --- a/src/main/java/com/portingdeadmods/modjam/api/client/model/MJArmorModel.java +++ b/src/main/java/com/portingdeadmods/modjam/api/client/model/MJArmorModel.java @@ -54,55 +54,56 @@ public void renderToBuffer(PoseStack poseStack, VertexConsumer buffer, int packe protected void setPartVisibility(EquipmentSlot slot) { setAllVisible(false); switch (slot) { - case HEAD: + case HEAD -> { head.visible = true; hat.visible = true; - break; - case CHEST: + } + case CHEST -> { body.visible = true; rightArm.visible = true; leftArm.visible = true; - break; - case LEGS: + } + case LEGS -> { body.visible = true; rightLeg.visible = true; leftLeg.visible = true; - break; - case FEET: + } + case FEET -> { rightLeg.visible = true; leftLeg.visible = true; + } } } public record PartsDefinition(PartDefinition root) { public PartDefinition getHat() { - return root().addOrReplaceChild("hat", CubeListBuilder.create(), PartPose.ZERO); - } + return root().addOrReplaceChild("hat", CubeListBuilder.create(), PartPose.ZERO); + } public PartDefinition getHead() { - return root().addOrReplaceChild("head", CubeListBuilder.create(), PartPose.ZERO); - } + return root().addOrReplaceChild("head", CubeListBuilder.create(), PartPose.ZERO); + } - public PartDefinition getBody() { - return root().addOrReplaceChild("body", CubeListBuilder.create(), PartPose.ZERO); - } + public PartDefinition getBody() { + return root().addOrReplaceChild("body", CubeListBuilder.create(), PartPose.ZERO); + } - public PartDefinition getLeftArm() { - return root().addOrReplaceChild("left_arm", CubeListBuilder.create(), PartPose.ZERO); - } + public PartDefinition getLeftArm() { + return root().addOrReplaceChild("left_arm", CubeListBuilder.create(), PartPose.ZERO); + } public PartDefinition getRightArm() { - return root().addOrReplaceChild("right_arm", CubeListBuilder.create(), PartPose.ZERO); - } + return root().addOrReplaceChild("right_arm", CubeListBuilder.create(), PartPose.ZERO); + } - public PartDefinition getLeftLeg() { - return root().addOrReplaceChild("left_leg", CubeListBuilder.create(), PartPose.ZERO); - } + public PartDefinition getLeftLeg() { + return root().addOrReplaceChild("left_leg", CubeListBuilder.create(), PartPose.ZERO); + } public PartDefinition getRightLeg() { - return root().addOrReplaceChild("right_leg", CubeListBuilder.create(), PartPose.ZERO); - } - + return root().addOrReplaceChild("right_leg", CubeListBuilder.create(), PartPose.ZERO); } + + } } diff --git a/src/main/java/com/portingdeadmods/modjam/api/client/renderer/items/PrismarineCrystalItemRenderer.java b/src/main/java/com/portingdeadmods/modjam/api/client/renderer/items/PrismarineCrystalItemRenderer.java index 1f125348..fe4f3672 100644 --- a/src/main/java/com/portingdeadmods/modjam/api/client/renderer/items/PrismarineCrystalItemRenderer.java +++ b/src/main/java/com/portingdeadmods/modjam/api/client/renderer/items/PrismarineCrystalItemRenderer.java @@ -2,7 +2,7 @@ import com.mojang.blaze3d.vertex.PoseStack; import com.mojang.blaze3d.vertex.VertexConsumer; -import com.portingdeadmods.modjam.client.model.PrismarineCrystalModel; +import com.portingdeadmods.modjam.client.model.block.PrismarineCrystalModel; import net.minecraft.client.Minecraft; import net.minecraft.client.model.geom.EntityModelSet; import net.minecraft.client.renderer.BlockEntityWithoutLevelRenderer; diff --git a/src/main/java/com/portingdeadmods/modjam/client/model/armor/DivingArmorModel.java b/src/main/java/com/portingdeadmods/modjam/client/model/armor/DivingArmorModel.java new file mode 100644 index 00000000..bc800d60 --- /dev/null +++ b/src/main/java/com/portingdeadmods/modjam/client/model/armor/DivingArmorModel.java @@ -0,0 +1,16 @@ +package com.portingdeadmods.modjam.client.model.armor; + +import com.portingdeadmods.modjam.api.client.model.MJArmorModel; +import net.minecraft.client.model.geom.PartPose; +import net.minecraft.client.model.geom.builders.*; + +public class DivingArmorModel { + public static LayerDefinition createBodyLayer() { + return MJArmorModel.createLayer(1, 1, parts -> { + parts.getHead().addOrReplaceChild("bb_main", CubeListBuilder.create().texOffs(-21, -14).addBox(-8.0F, -2.0F, -8.0F, 16.0F, 2.0F, 16.0F, new CubeDeformation(0.0F)) + .texOffs(-12, -8).addBox(-5.0F, -4.0F, -5.0F, 10.0F, 2.0F, 10.0F, new CubeDeformation(0.0F)) + .texOffs(-18, -12).addBox(-7.0F, -16.0F, -7.0F, 14.0F, 12.0F, 14.0F, new CubeDeformation(0.0F)), PartPose.offset(0.0F, 24.0F, 0.0F)); + }); + } + +} diff --git a/src/main/java/com/portingdeadmods/modjam/client/model/DrainTopModel.java b/src/main/java/com/portingdeadmods/modjam/client/model/block/DrainTopModel.java similarity index 98% rename from src/main/java/com/portingdeadmods/modjam/client/model/DrainTopModel.java rename to src/main/java/com/portingdeadmods/modjam/client/model/block/DrainTopModel.java index 1d954d5f..d3c427ab 100644 --- a/src/main/java/com/portingdeadmods/modjam/client/model/DrainTopModel.java +++ b/src/main/java/com/portingdeadmods/modjam/client/model/block/DrainTopModel.java @@ -1,4 +1,4 @@ -package com.portingdeadmods.modjam.client.model; +package com.portingdeadmods.modjam.client.model.block; import com.mojang.blaze3d.vertex.PoseStack; import com.mojang.blaze3d.vertex.VertexConsumer; diff --git a/src/main/java/com/portingdeadmods/modjam/client/model/PrismarineCrystalModel.java b/src/main/java/com/portingdeadmods/modjam/client/model/block/PrismarineCrystalModel.java similarity index 98% rename from src/main/java/com/portingdeadmods/modjam/client/model/PrismarineCrystalModel.java rename to src/main/java/com/portingdeadmods/modjam/client/model/block/PrismarineCrystalModel.java index d2348355..f3ca16d1 100644 --- a/src/main/java/com/portingdeadmods/modjam/client/model/PrismarineCrystalModel.java +++ b/src/main/java/com/portingdeadmods/modjam/client/model/block/PrismarineCrystalModel.java @@ -1,4 +1,4 @@ -package com.portingdeadmods.modjam.client.model; +package com.portingdeadmods.modjam.client.model.block; import com.mojang.blaze3d.vertex.PoseStack; import com.mojang.blaze3d.vertex.VertexConsumer; diff --git a/src/main/java/com/portingdeadmods/modjam/client/model/WhiskModel.java b/src/main/java/com/portingdeadmods/modjam/client/model/block/WhiskModel.java similarity index 98% rename from src/main/java/com/portingdeadmods/modjam/client/model/WhiskModel.java rename to src/main/java/com/portingdeadmods/modjam/client/model/block/WhiskModel.java index 1bdc6772..8a48dc85 100644 --- a/src/main/java/com/portingdeadmods/modjam/client/model/WhiskModel.java +++ b/src/main/java/com/portingdeadmods/modjam/client/model/block/WhiskModel.java @@ -1,4 +1,4 @@ -package com.portingdeadmods.modjam.client.model; +package com.portingdeadmods.modjam.client.model.block; import com.mojang.blaze3d.vertex.PoseStack; import com.mojang.blaze3d.vertex.VertexConsumer; diff --git a/src/main/java/com/portingdeadmods/modjam/client/renderer/blockentities/DrainBERenderer.java b/src/main/java/com/portingdeadmods/modjam/client/renderer/blockentities/DrainBERenderer.java index 84953655..457b85c9 100644 --- a/src/main/java/com/portingdeadmods/modjam/client/renderer/blockentities/DrainBERenderer.java +++ b/src/main/java/com/portingdeadmods/modjam/client/renderer/blockentities/DrainBERenderer.java @@ -4,7 +4,7 @@ import com.mojang.blaze3d.vertex.VertexConsumer; import com.mojang.math.Axis; import com.portingdeadmods.modjam.api.multiblocks.Multiblock; -import com.portingdeadmods.modjam.client.model.DrainTopModel; +import com.portingdeadmods.modjam.client.model.block.DrainTopModel; import com.portingdeadmods.modjam.content.blockentities.multiblock.controller.DrainBlockEntity; import net.minecraft.client.renderer.LightTexture; import net.minecraft.client.renderer.MultiBufferSource; diff --git a/src/main/java/com/portingdeadmods/modjam/client/renderer/blockentities/MixerBERenderer.java b/src/main/java/com/portingdeadmods/modjam/client/renderer/blockentities/MixerBERenderer.java index a282e099..70993f3a 100644 --- a/src/main/java/com/portingdeadmods/modjam/client/renderer/blockentities/MixerBERenderer.java +++ b/src/main/java/com/portingdeadmods/modjam/client/renderer/blockentities/MixerBERenderer.java @@ -5,7 +5,7 @@ import com.mojang.math.Axis; import com.portingdeadmods.modjam.api.client.renderer.blockentities.LaserBlockEntityRenderer; import com.portingdeadmods.modjam.api.utils.HorizontalDirection; -import com.portingdeadmods.modjam.client.model.WhiskModel; +import com.portingdeadmods.modjam.client.model.block.WhiskModel; import com.portingdeadmods.modjam.content.blockentities.MixerBlockEntity; import com.portingdeadmods.modjam.content.blocks.MixerBlock; import net.minecraft.client.Minecraft; diff --git a/src/main/java/com/portingdeadmods/modjam/client/renderer/blockentities/PrismarineCrystalBERenderer.java b/src/main/java/com/portingdeadmods/modjam/client/renderer/blockentities/PrismarineCrystalBERenderer.java index 2b3c63b7..8c965b31 100644 --- a/src/main/java/com/portingdeadmods/modjam/client/renderer/blockentities/PrismarineCrystalBERenderer.java +++ b/src/main/java/com/portingdeadmods/modjam/client/renderer/blockentities/PrismarineCrystalBERenderer.java @@ -3,7 +3,7 @@ import com.mojang.blaze3d.vertex.PoseStack; import com.mojang.blaze3d.vertex.VertexConsumer; import com.portingdeadmods.modjam.api.client.renderer.blockentities.LaserBlockEntityRenderer; -import com.portingdeadmods.modjam.client.model.PrismarineCrystalModel; +import com.portingdeadmods.modjam.client.model.block.PrismarineCrystalModel; import com.portingdeadmods.modjam.content.blockentities.PrismarineCrystalBlockEntity; import net.minecraft.client.renderer.LightTexture; import net.minecraft.client.renderer.MultiBufferSource; diff --git a/src/main/java/com/portingdeadmods/modjam/content/items/NeptunesTridentItem.java b/src/main/java/com/portingdeadmods/modjam/content/items/NeptunesTridentItem.java new file mode 100644 index 00000000..faee8c0e --- /dev/null +++ b/src/main/java/com/portingdeadmods/modjam/content/items/NeptunesTridentItem.java @@ -0,0 +1,82 @@ +package com.portingdeadmods.modjam.content.items; + +import net.minecraft.core.BlockPos; +import net.minecraft.world.InteractionHand; +import net.minecraft.world.InteractionResultHolder; +import net.minecraft.world.entity.EquipmentSlot; +import net.minecraft.world.entity.EquipmentSlotGroup; +import net.minecraft.world.entity.LivingEntity; +import net.minecraft.world.entity.ai.attributes.AttributeModifier; +import net.minecraft.world.entity.ai.attributes.Attributes; +import net.minecraft.world.entity.player.Player; +import net.minecraft.world.item.*; +import net.minecraft.world.item.component.ItemAttributeModifiers; +import net.minecraft.world.item.component.Tool; +import net.minecraft.world.item.enchantment.EnchantmentHelper; +import net.minecraft.world.level.Level; +import net.minecraft.world.level.block.state.BlockState; + +import java.util.List; + +public class NeptunesTridentItem extends Item { + public NeptunesTridentItem(Properties properties) { + super(properties); + } + + public static ItemAttributeModifiers createAttributes() { + return ItemAttributeModifiers.builder() + .add( + Attributes.ATTACK_DAMAGE, new AttributeModifier(BASE_ATTACK_DAMAGE_ID, 15, AttributeModifier.Operation.ADD_VALUE), EquipmentSlotGroup.MAINHAND + ) + .add( + Attributes.ATTACK_SPEED, new AttributeModifier(BASE_ATTACK_SPEED_ID, -2.8F, AttributeModifier.Operation.ADD_VALUE), EquipmentSlotGroup.MAINHAND + ) + .build(); + } + + public static Tool createToolProperties() { + return new Tool(List.of(), 1.0F, 2); + } + + @Override + public InteractionResultHolder use(Level level, Player player, InteractionHand hand) { + ItemStack itemstack = player.getItemInHand(hand); + player.startUsingItem(hand); + return InteractionResultHolder.consume(itemstack); + } + + @Override + public boolean canAttackBlock(BlockState state, Level level, BlockPos pos, Player player) { + return !player.isCreative(); + } + + @Override + public UseAnim getUseAnimation(ItemStack stack) { + return UseAnim.SPEAR; + } + + @Override + public int getUseDuration(ItemStack stack, LivingEntity entity) { + return 72000; + } + + @Override + public boolean canPerformAction(ItemStack stack, net.neoforged.neoforge.common.ItemAbility itemAbility) { + return net.neoforged.neoforge.common.ItemAbilities.DEFAULT_TRIDENT_ACTIONS.contains(itemAbility); + } + + @Override + public boolean hurtEnemy(ItemStack stack, LivingEntity target, LivingEntity attacker) { + return true; + } + + @Override + public void postHurtEnemy(ItemStack stack, LivingEntity target, LivingEntity attacker) { + stack.hurtAndBreak(1, attacker, EquipmentSlot.MAINHAND); + } + + @Override + public int getEnchantmentValue() { + return 1; + } +} diff --git a/src/main/java/com/portingdeadmods/modjam/events/MJClientEvents.java b/src/main/java/com/portingdeadmods/modjam/events/MJClientEvents.java index ef680a66..a2bac24a 100644 --- a/src/main/java/com/portingdeadmods/modjam/events/MJClientEvents.java +++ b/src/main/java/com/portingdeadmods/modjam/events/MJClientEvents.java @@ -8,9 +8,9 @@ import com.portingdeadmods.modjam.api.client.renderer.items.PrismarineCrystalItemRenderer; import com.portingdeadmods.modjam.api.fluids.BaseFluidType; import com.portingdeadmods.modjam.client.hud.PrismMonocleOverlay; -import com.portingdeadmods.modjam.client.model.DrainTopModel; -import com.portingdeadmods.modjam.client.model.PrismarineCrystalModel; -import com.portingdeadmods.modjam.client.model.WhiskModel; +import com.portingdeadmods.modjam.client.model.block.DrainTopModel; +import com.portingdeadmods.modjam.client.model.block.PrismarineCrystalModel; +import com.portingdeadmods.modjam.client.model.block.WhiskModel; import com.portingdeadmods.modjam.client.renderer.blockentities.DrainBERenderer; import com.portingdeadmods.modjam.client.renderer.blockentities.MixerBERenderer; import com.portingdeadmods.modjam.client.renderer.blockentities.PrismarineCrystalBERenderer; diff --git a/src/main/java/com/portingdeadmods/modjam/exampleCustom3DArmor/ExampleClientEvents.java b/src/main/java/com/portingdeadmods/modjam/exampleCustom3DArmor/ExampleClientEvents.java index 775abc8a..29c8a6f9 100644 --- a/src/main/java/com/portingdeadmods/modjam/exampleCustom3DArmor/ExampleClientEvents.java +++ b/src/main/java/com/portingdeadmods/modjam/exampleCustom3DArmor/ExampleClientEvents.java @@ -1,6 +1,7 @@ package com.portingdeadmods.modjam.exampleCustom3DArmor; import com.portingdeadmods.modjam.ModJam; +import com.portingdeadmods.modjam.registries.MJItems; import com.portingdeadmods.modjam.utils.ArmorModelsHandler; import net.minecraft.client.model.HumanoidModel; import net.minecraft.world.entity.EquipmentSlot; @@ -11,6 +12,7 @@ import net.neoforged.fml.common.EventBusSubscriber; import net.neoforged.neoforge.client.extensions.common.IClientItemExtensions; import net.neoforged.neoforge.client.extensions.common.RegisterClientExtensionsEvent; +import org.jetbrains.annotations.NotNull; @EventBusSubscriber(modid = ModJam.MODID,value = Dist.CLIENT,bus = EventBusSubscriber.Bus.MOD) public class ExampleClientEvents { @@ -18,21 +20,20 @@ public class ExampleClientEvents { @SubscribeEvent public static void registerClientExtensions(RegisterClientExtensionsEvent event) { event.registerItem(new IClientItemExtensions() { - @Override - public HumanoidModel getHumanoidArmorModel(LivingEntity livingEntity, ItemStack + public @NotNull HumanoidModel getHumanoidArmorModel(LivingEntity livingEntity, ItemStack itemStack, EquipmentSlot equipmentSlot, HumanoidModel original) { return ArmorModelsHandler.armorModel(ArmorModelsHandler.test, equipmentSlot); } - }, ExampleItems.TEST); + }, ExampleItems.TEST, ExampleItems.TEST_CHEST); event.registerItem(new IClientItemExtensions() { - @Override - public HumanoidModel getHumanoidArmorModel(LivingEntity livingEntity, ItemStack + public @NotNull HumanoidModel getHumanoidArmorModel(LivingEntity livingEntity, ItemStack itemStack, EquipmentSlot equipmentSlot, HumanoidModel original) { - return ArmorModelsHandler.armorModel(ArmorModelsHandler.test, equipmentSlot); + return ArmorModelsHandler.armorModel(ArmorModelsHandler.divingSuit, equipmentSlot); } - }, ExampleItems.TEST_CHEST); + }, MJItems.DIVING_HELMET, MJItems.DIVING_CHESTPLATE); } + } diff --git a/src/main/java/com/portingdeadmods/modjam/registries/MJItems.java b/src/main/java/com/portingdeadmods/modjam/registries/MJItems.java index 667ae705..7db0862d 100644 --- a/src/main/java/com/portingdeadmods/modjam/registries/MJItems.java +++ b/src/main/java/com/portingdeadmods/modjam/registries/MJItems.java @@ -3,8 +3,10 @@ import com.portingdeadmods.modjam.ModJam; import com.portingdeadmods.modjam.content.items.AquarineWrenchItem; import com.portingdeadmods.modjam.content.items.DivingSuitArmorItem; +import com.portingdeadmods.modjam.content.items.NeptunesTridentItem; import com.portingdeadmods.modjam.content.items.PrismMonocleItem; import com.portingdeadmods.modjam.data.MJDataComponents; +import net.minecraft.core.component.DataComponents; import net.minecraft.world.item.*; import net.minecraft.world.level.ItemLike; import net.neoforged.neoforge.registries.DeferredItem; @@ -61,8 +63,10 @@ public final class MJItems { public static final DeferredItem DIVING_BOOTS = registerItem("diving_boots",() -> new DivingSuitArmorItem(ArmorMaterials.LEATHER, ArmorItem.Type.BOOTS, new Item.Properties())); // TOOLS 'N WEAPONS - public static final DeferredItem NEPTUNES_TRIDENT = registerItem("neptunes_trident", - Item::new, new Item.Properties()); + public static final DeferredItem NEPTUNES_TRIDENT = registerItem("neptunes_trident", + NeptunesTridentItem::new, new Item.Properties() + .attributes(NeptunesTridentItem.createAttributes()) + .component(DataComponents.TOOL, NeptunesTridentItem.createToolProperties())); // BUCKETS public static final DeferredItem SALT_WATER_BUCKET = registerItemBucket("salt_water_bucket", diff --git a/src/main/java/com/portingdeadmods/modjam/utils/ArmorModelsHandler.java b/src/main/java/com/portingdeadmods/modjam/utils/ArmorModelsHandler.java index b6bbccf9..3ea8ddeb 100644 --- a/src/main/java/com/portingdeadmods/modjam/utils/ArmorModelsHandler.java +++ b/src/main/java/com/portingdeadmods/modjam/utils/ArmorModelsHandler.java @@ -1,7 +1,14 @@ +/* + * 3d armor rendering is mostly from quark + * Thank you to Vazkii, VioletMoon and all + * contributors of quark <3 + */ + package com.portingdeadmods.modjam.utils; import com.portingdeadmods.modjam.ModJam; import com.portingdeadmods.modjam.api.client.model.MJArmorModel; +import com.portingdeadmods.modjam.client.model.armor.DivingArmorModel; import com.portingdeadmods.modjam.exampleCustom3DArmor.TestArmorModel; import net.minecraft.client.Minecraft; import net.minecraft.client.model.geom.ModelLayerLocation; @@ -19,57 +26,57 @@ public class ArmorModelsHandler { - private static final Map layers = new HashMap<>(); - private static final Map, MJArmorModel> cachedArmors = new HashMap<>(); - - public static ModelLayerLocation test; - - private static boolean modelsInitted = false; + private static final Map LAYERS = new HashMap<>(); + private static final Map, MJArmorModel> CACHED_ARMORS = new HashMap<>(); - private static void initModels() { - if(modelsInitted) - return; + public static ModelLayerLocation test; + public static ModelLayerLocation divingSuit; - test = addArmorModel("test", TestArmorModel::createLayerDefinition); + private static boolean modelsInitted = false; - modelsInitted = true; - } + private static void initModels() { + if (modelsInitted) + return; + test = addArmorModel("test", TestArmorModel::createLayerDefinition); + divingSuit = addArmorModel("diving_suit", DivingArmorModel::createBodyLayer); - private static ModelLayerLocation addArmorModel(String name, Supplier supplier) { - return addLayer(name, new Layer(supplier, MJArmorModel::new)); - } + modelsInitted = true; + } - private static ModelLayerLocation addLayer(String name, Layer layer) { - ModelLayerLocation loc = new ModelLayerLocation(ResourceLocation.fromNamespaceAndPath(ModJam.MODID,name), "main"); - layers.put(loc, layer); - return loc; - } + private static ModelLayerLocation addArmorModel(String name, Supplier supplier) { + return addLayer(name, new Layer(supplier, MJArmorModel::new)); + } - public static void registerLayers(EntityRenderersEvent.RegisterLayerDefinitions event){ - initModels(); - layers.forEach((loc,layer)->event.registerLayerDefinition(loc,layer.definition)); - } + private static ModelLayerLocation addLayer(String name, Layer layer) { + ModelLayerLocation loc = new ModelLayerLocation(ResourceLocation.fromNamespaceAndPath(ModJam.MODID, name), "main"); + LAYERS.put(loc, layer); + return loc; + } - public static MJArmorModel armorModel(ModelLayerLocation location, EquipmentSlot slot) { - Pair key = Pair.of(location, slot); - if(cachedArmors.containsKey(key)) - return cachedArmors.get(key); + public static void registerLayers(EntityRenderersEvent.RegisterLayerDefinitions event) { + initModels(); + LAYERS.forEach((loc, layer) -> event.registerLayerDefinition(loc, layer.definition)); + } - initModels(); + public static MJArmorModel armorModel(ModelLayerLocation location, EquipmentSlot slot) { + Pair key = Pair.of(location, slot); + if (CACHED_ARMORS.containsKey(key)) + return CACHED_ARMORS.get(key); - Layer layer = layers.get(location); - Minecraft mc = Minecraft.getInstance(); - MJArmorModel model = layer.armorModelConstructor.apply(mc.getEntityModels().bakeLayer(location), slot); - cachedArmors.put(key, model); + initModels(); - return model; - } + Layer layer = LAYERS.get(location); + Minecraft mc = Minecraft.getInstance(); + MJArmorModel model = layer.armorModelConstructor.apply(mc.getEntityModels().bakeLayer(location), slot); + CACHED_ARMORS.put(key, model); - private record Layer(Supplier definition, - BiFunction armorModelConstructor) { + return model; + } - } + private record Layer(Supplier definition, + BiFunction armorModelConstructor) { + } } diff --git a/src/main/resources/assets/modjam/textures/item/diving_boots.png b/src/main/resources/assets/modjam/textures/item/diving_boots.png index ebffdcec..61a494cc 100644 Binary files a/src/main/resources/assets/modjam/textures/item/diving_boots.png and b/src/main/resources/assets/modjam/textures/item/diving_boots.png differ diff --git a/src/main/resources/assets/modjam/textures/item/diving_leggings.png b/src/main/resources/assets/modjam/textures/item/diving_leggings.png index eecac8da..e621a537 100644 Binary files a/src/main/resources/assets/modjam/textures/item/diving_leggings.png and b/src/main/resources/assets/modjam/textures/item/diving_leggings.png differ