From 68f799e20686f4ffa9134a55036c6c9414ea9f20 Mon Sep 17 00:00:00 2001 From: SammySemicolon <69329424+SammySemicolon@users.noreply.github.com> Date: Sat, 15 Jul 2023 23:00:28 +0200 Subject: [PATCH] Fix up armor skins make em cleaner RUNS on THE SERVER and the CODE doesnt BLOW ASS --- .../cosmetic/ArmorSkinRenderingData.java | 6 ++ .../cosmetic/PrideArmorSkinRenderingData.java | 4 +- .../malum/common/cosmetic/ArmorSkin.java | 11 +- .../malum/common/cosmetic/PrideArmorSkin.java | 12 ++- .../common/cosmetic/UltrakillArmorSkin.java | 21 ++++ .../ancient/AncientClothArmorSkin.java | 22 ++++ .../ancient/AncientMetalArmorSkin.java | 22 ++++ .../risk_of_rain/CommandoArmorSkin.java | 22 ++++ .../risk_of_rain/ExecutionerArmorSkin.java | 22 ++++ .../curiosities/armor/MalumArmorItem.java | 4 +- .../armor/SoulHunterArmorItem.java | 4 +- .../armor/SoulStainedSteelArmorItem.java | 4 +- .../common/item/ArmorSkinRegistry.java | 102 ++---------------- .../cosmetic/{ => risk_of_rain}/commando.png | Bin .../executioner.png} | Bin .../cosmetic/{v1.png => ultrakill_v1.png} | Bin .../cosmetic/{v2.png => ultrakill_v2.png} | Bin 17 files changed, 153 insertions(+), 103 deletions(-) create mode 100644 src/main/java/com/sammy/malum/common/cosmetic/UltrakillArmorSkin.java create mode 100644 src/main/java/com/sammy/malum/common/cosmetic/ancient/AncientClothArmorSkin.java create mode 100644 src/main/java/com/sammy/malum/common/cosmetic/ancient/AncientMetalArmorSkin.java create mode 100644 src/main/java/com/sammy/malum/common/cosmetic/risk_of_rain/CommandoArmorSkin.java create mode 100644 src/main/java/com/sammy/malum/common/cosmetic/risk_of_rain/ExecutionerArmorSkin.java rename src/main/resources/assets/malum/textures/armor/cosmetic/{ => risk_of_rain}/commando.png (100%) rename src/main/resources/assets/malum/textures/armor/cosmetic/{starstorm_executioner.png => risk_of_rain/executioner.png} (100%) rename src/main/resources/assets/malum/textures/armor/cosmetic/{v1.png => ultrakill_v1.png} (100%) rename src/main/resources/assets/malum/textures/armor/cosmetic/{v2.png => ultrakill_v2.png} (100%) diff --git a/src/main/java/com/sammy/malum/client/cosmetic/ArmorSkinRenderingData.java b/src/main/java/com/sammy/malum/client/cosmetic/ArmorSkinRenderingData.java index b4d187ec2..53660c90b 100644 --- a/src/main/java/com/sammy/malum/client/cosmetic/ArmorSkinRenderingData.java +++ b/src/main/java/com/sammy/malum/client/cosmetic/ArmorSkinRenderingData.java @@ -1,12 +1,18 @@ package com.sammy.malum.client.cosmetic; +import com.sammy.malum.common.cosmetic.*; +import net.minecraft.*; import net.minecraft.client.player.*; import net.minecraft.resources.*; import net.minecraft.world.entity.*; import team.lodestar.lodestone.systems.model.*; +import java.util.function.*; + public abstract class ArmorSkinRenderingData { + public static Function RENDERING_DATA = Util.memoize(ArmorSkin::getRenderingData); + public abstract ResourceLocation getTexture(LivingEntity livingEntity, boolean slim); public abstract LodestoneArmorModel getModel(LivingEntity livingEntity, boolean slim); diff --git a/src/main/java/com/sammy/malum/client/cosmetic/PrideArmorSkinRenderingData.java b/src/main/java/com/sammy/malum/client/cosmetic/PrideArmorSkinRenderingData.java index 1a244446c..c924c1b66 100644 --- a/src/main/java/com/sammy/malum/client/cosmetic/PrideArmorSkinRenderingData.java +++ b/src/main/java/com/sammy/malum/client/cosmetic/PrideArmorSkinRenderingData.java @@ -13,8 +13,8 @@ public class PrideArmorSkinRenderingData extends ArmorSkinRenderingData { private final ResourceLocation standardTexture; public PrideArmorSkinRenderingData(String type) { - this.slimTexture = malumPath("textures/armor/cosmetic/pride/" + type + "_slim.png"); - this.standardTexture = malumPath("textures/armor/cosmetic/pride/" + type + ".png"); + this.slimTexture = malumPath("textures/armor/cosmetic/pride/" + type + "_drip_slim.png"); + this.standardTexture = malumPath("textures/armor/cosmetic/pride/" + type + "_drip.png"); } @Override public ResourceLocation getTexture(LivingEntity livingEntity, boolean slim) { diff --git a/src/main/java/com/sammy/malum/common/cosmetic/ArmorSkin.java b/src/main/java/com/sammy/malum/common/cosmetic/ArmorSkin.java index 9ce6054a1..8c81d6488 100644 --- a/src/main/java/com/sammy/malum/common/cosmetic/ArmorSkin.java +++ b/src/main/java/com/sammy/malum/common/cosmetic/ArmorSkin.java @@ -1,24 +1,31 @@ package com.sammy.malum.common.cosmetic; +import com.sammy.malum.client.cosmetic.*; import com.sammy.malum.registry.common.item.*; import net.minecraft.world.item.*; +import net.minecraftforge.api.distmarker.*; import team.lodestar.lodestone.systems.item.*; import java.util.*; -public class ArmorSkin { +public abstract class ArmorSkin { public static final String MALUM_SKIN_TAG = "malum:item_skin"; + public final String id; public final Class validArmorClass; public final Item weaveItem; public final int index; - public ArmorSkin(Class validArmorClass, Item weaveItem) { + public ArmorSkin(String id, Class validArmorClass, Item weaveItem) { + this.id = id; this.validArmorClass = validArmorClass; this.weaveItem = weaveItem; this.index = ArmorSkinRegistry.SKINS.size(); } + @OnlyIn(Dist.CLIENT) + public abstract ArmorSkinRenderingData getRenderingData(); + public static String getApplicableItemSkinTag(ItemStack target, ItemStack weave) { for (Map.Entry entry : ArmorSkinRegistry.SKINS.entrySet()) { if (entry.getValue().validArmorClass.isInstance(target.getItem()) && entry.getValue().weaveItem.equals(weave.getItem())) { diff --git a/src/main/java/com/sammy/malum/common/cosmetic/PrideArmorSkin.java b/src/main/java/com/sammy/malum/common/cosmetic/PrideArmorSkin.java index 87f345228..93bc971e3 100644 --- a/src/main/java/com/sammy/malum/common/cosmetic/PrideArmorSkin.java +++ b/src/main/java/com/sammy/malum/common/cosmetic/PrideArmorSkin.java @@ -1,10 +1,18 @@ package com.sammy.malum.common.cosmetic; +import com.sammy.malum.client.cosmetic.*; import net.minecraft.world.item.*; +import net.minecraftforge.api.distmarker.*; import team.lodestar.lodestone.systems.item.*; public class PrideArmorSkin extends ArmorSkin { - public PrideArmorSkin(Class validArmorClass, Item weaveItem) { - super(validArmorClass, weaveItem); + public PrideArmorSkin(String id, Class validArmorClass, Item weaveItem) { + super(id, validArmorClass, weaveItem); + } + + @OnlyIn(Dist.CLIENT) + @Override + public ArmorSkinRenderingData getRenderingData() { + return new PrideArmorSkinRenderingData(id); } } diff --git a/src/main/java/com/sammy/malum/common/cosmetic/UltrakillArmorSkin.java b/src/main/java/com/sammy/malum/common/cosmetic/UltrakillArmorSkin.java new file mode 100644 index 000000000..b67688576 --- /dev/null +++ b/src/main/java/com/sammy/malum/common/cosmetic/UltrakillArmorSkin.java @@ -0,0 +1,21 @@ +package com.sammy.malum.common.cosmetic; + +import com.sammy.malum.client.cosmetic.*; +import com.sammy.malum.registry.client.*; +import net.minecraft.world.item.*; +import net.minecraftforge.api.distmarker.*; +import team.lodestar.lodestone.systems.item.*; + +import static com.sammy.malum.MalumMod.malumPath; + +public class UltrakillArmorSkin extends ArmorSkin { + public UltrakillArmorSkin(String id, Class validArmorClass, Item weaveItem) { + super(id, validArmorClass, weaveItem); + } + + @OnlyIn(Dist.CLIENT) + @Override + public ArmorSkinRenderingData getRenderingData() { + return new SimpleArmorSkinRenderingData(malumPath("textures/armor/cosmetic/" + id + ".png"), ModelRegistry.ULTRAKILL_MACHINE); + } +} diff --git a/src/main/java/com/sammy/malum/common/cosmetic/ancient/AncientClothArmorSkin.java b/src/main/java/com/sammy/malum/common/cosmetic/ancient/AncientClothArmorSkin.java new file mode 100644 index 000000000..290cc9226 --- /dev/null +++ b/src/main/java/com/sammy/malum/common/cosmetic/ancient/AncientClothArmorSkin.java @@ -0,0 +1,22 @@ +package com.sammy.malum.common.cosmetic.ancient; + +import com.sammy.malum.client.cosmetic.*; +import com.sammy.malum.common.cosmetic.*; +import com.sammy.malum.common.item.curiosities.armor.*; +import com.sammy.malum.registry.client.*; +import net.minecraft.world.item.*; +import net.minecraftforge.api.distmarker.*; + +import static com.sammy.malum.MalumMod.*; + +public class AncientClothArmorSkin extends ArmorSkin { + public AncientClothArmorSkin(String id, Item weaveItem) { + super(id, SoulHunterArmorItem.class, weaveItem); + } + + @OnlyIn(Dist.CLIENT) + @Override + public ArmorSkinRenderingData getRenderingData() { + return new SimpleArmorSkinRenderingData(malumPath("textures/armor/cosmetic/ancient_soul_hunter.png"), ModelRegistry.ANCIENT_SOUL_HUNTER_ARMOR); + } +} diff --git a/src/main/java/com/sammy/malum/common/cosmetic/ancient/AncientMetalArmorSkin.java b/src/main/java/com/sammy/malum/common/cosmetic/ancient/AncientMetalArmorSkin.java new file mode 100644 index 000000000..a667f7474 --- /dev/null +++ b/src/main/java/com/sammy/malum/common/cosmetic/ancient/AncientMetalArmorSkin.java @@ -0,0 +1,22 @@ +package com.sammy.malum.common.cosmetic.ancient; + +import com.sammy.malum.client.cosmetic.*; +import com.sammy.malum.common.cosmetic.*; +import com.sammy.malum.common.item.curiosities.armor.*; +import com.sammy.malum.registry.client.*; +import net.minecraft.world.item.*; +import net.minecraftforge.api.distmarker.*; + +import static com.sammy.malum.MalumMod.*; + +public class AncientMetalArmorSkin extends ArmorSkin { + public AncientMetalArmorSkin(String id, Item weaveItem) { + super(id, SoulStainedSteelArmorItem.class, weaveItem); + } + + @OnlyIn(Dist.CLIENT) + @Override + public ArmorSkinRenderingData getRenderingData() { + return new SimpleArmorSkinRenderingData(malumPath("textures/armor/cosmetic/ancient_soul_stained_steel.png"), ModelRegistry.ANCIENT_SOUL_STAINED_STEEL_ARMOR); + } +} diff --git a/src/main/java/com/sammy/malum/common/cosmetic/risk_of_rain/CommandoArmorSkin.java b/src/main/java/com/sammy/malum/common/cosmetic/risk_of_rain/CommandoArmorSkin.java new file mode 100644 index 000000000..edbe6ca4a --- /dev/null +++ b/src/main/java/com/sammy/malum/common/cosmetic/risk_of_rain/CommandoArmorSkin.java @@ -0,0 +1,22 @@ +package com.sammy.malum.common.cosmetic.risk_of_rain; + +import com.sammy.malum.client.cosmetic.*; +import com.sammy.malum.common.cosmetic.*; +import com.sammy.malum.registry.client.*; +import net.minecraft.world.item.*; +import net.minecraftforge.api.distmarker.*; +import team.lodestar.lodestone.systems.item.*; + +import static com.sammy.malum.MalumMod.*; + +public class CommandoArmorSkin extends ArmorSkin { + public CommandoArmorSkin(String id, Class validArmorClass, Item weaveItem) { + super(id, validArmorClass, weaveItem); + } + + @OnlyIn(Dist.CLIENT) + @Override + public ArmorSkinRenderingData getRenderingData() { + return new SimpleArmorSkinRenderingData(malumPath("textures/armor/cosmetic/risk_of_rain/commando.png"), ModelRegistry.COMMANDO); + } +} diff --git a/src/main/java/com/sammy/malum/common/cosmetic/risk_of_rain/ExecutionerArmorSkin.java b/src/main/java/com/sammy/malum/common/cosmetic/risk_of_rain/ExecutionerArmorSkin.java new file mode 100644 index 000000000..7b9f30d06 --- /dev/null +++ b/src/main/java/com/sammy/malum/common/cosmetic/risk_of_rain/ExecutionerArmorSkin.java @@ -0,0 +1,22 @@ +package com.sammy.malum.common.cosmetic.risk_of_rain; + +import com.sammy.malum.client.cosmetic.*; +import com.sammy.malum.common.cosmetic.*; +import com.sammy.malum.registry.client.*; +import net.minecraft.world.item.*; +import net.minecraftforge.api.distmarker.*; +import team.lodestar.lodestone.systems.item.*; + +import static com.sammy.malum.MalumMod.*; + +public class ExecutionerArmorSkin extends ArmorSkin { + public ExecutionerArmorSkin(String id, Class validArmorClass, Item weaveItem) { + super(id, validArmorClass, weaveItem); + } + + @OnlyIn(Dist.CLIENT) + @Override + public ArmorSkinRenderingData getRenderingData() { + return new SimpleArmorSkinRenderingData(malumPath("textures/armor/cosmetic/risk_of_rain/executioner.png"), ModelRegistry.EXECUTIONER); + } +} diff --git a/src/main/java/com/sammy/malum/common/item/curiosities/armor/MalumArmorItem.java b/src/main/java/com/sammy/malum/common/item/curiosities/armor/MalumArmorItem.java index 081fe43ac..732f2852c 100644 --- a/src/main/java/com/sammy/malum/common/item/curiosities/armor/MalumArmorItem.java +++ b/src/main/java/com/sammy/malum/common/item/curiosities/armor/MalumArmorItem.java @@ -1,7 +1,7 @@ package com.sammy.malum.common.item.curiosities.armor; +import com.sammy.malum.client.cosmetic.*; import com.sammy.malum.common.cosmetic.*; -import com.sammy.malum.registry.common.item.*; import net.minecraft.world.entity.*; import net.minecraft.world.item.*; import team.lodestar.lodestone.systems.item.*; @@ -15,7 +15,7 @@ public MalumArmorItem(ArmorMaterial materialIn, EquipmentSlot slot, Properties b public String getArmorTexture(ItemStack stack, Entity entity, EquipmentSlot slot, String type) { ArmorSkin skin = ArmorSkin.getAppliedItemSkin(stack); if (skin != null && entity instanceof LivingEntity livingEntity) { - return ArmorSkinRegistry.ClientOnly.SKIN_RENDERING_DATA.get(skin).getTexture(livingEntity).toString(); + return ArmorSkinRenderingData.RENDERING_DATA.apply(skin).getTexture(livingEntity).toString(); } return super.getArmorTexture(stack, entity, slot, type); } diff --git a/src/main/java/com/sammy/malum/common/item/curiosities/armor/SoulHunterArmorItem.java b/src/main/java/com/sammy/malum/common/item/curiosities/armor/SoulHunterArmorItem.java index 18c5de5c7..c871a90cb 100644 --- a/src/main/java/com/sammy/malum/common/item/curiosities/armor/SoulHunterArmorItem.java +++ b/src/main/java/com/sammy/malum/common/item/curiosities/armor/SoulHunterArmorItem.java @@ -1,9 +1,9 @@ package com.sammy.malum.common.item.curiosities.armor; import com.google.common.collect.*; +import com.sammy.malum.client.cosmetic.*; import com.sammy.malum.common.cosmetic.*; import com.sammy.malum.registry.client.*; -import com.sammy.malum.registry.common.item.*; import net.minecraft.client.*; import net.minecraft.client.model.*; import net.minecraft.util.*; @@ -56,7 +56,7 @@ public LodestoneArmorModel getArmorModel(LivingEntity entity, ItemStack itemStac ArmorSkin skin = ArmorSkin.getAppliedItemSkin(itemStack); LodestoneArmorModel model = ModelRegistry.SOUL_HUNTER_ARMOR; if (skin != null) { - model = ArmorSkinRegistry.ClientOnly.SKIN_RENDERING_DATA.get(skin).getModel(entity); + model = ArmorSkinRenderingData.RENDERING_DATA.apply(skin).getModel(entity); } model.slot = slot; model.copyFromDefault(_default); diff --git a/src/main/java/com/sammy/malum/common/item/curiosities/armor/SoulStainedSteelArmorItem.java b/src/main/java/com/sammy/malum/common/item/curiosities/armor/SoulStainedSteelArmorItem.java index 06e03943b..43c574be9 100644 --- a/src/main/java/com/sammy/malum/common/item/curiosities/armor/SoulStainedSteelArmorItem.java +++ b/src/main/java/com/sammy/malum/common/item/curiosities/armor/SoulStainedSteelArmorItem.java @@ -1,10 +1,10 @@ package com.sammy.malum.common.item.curiosities.armor; import com.google.common.collect.*; +import com.sammy.malum.client.cosmetic.*; import com.sammy.malum.common.cosmetic.*; import com.sammy.malum.registry.client.*; import com.sammy.malum.registry.common.*; -import com.sammy.malum.registry.common.item.*; import net.minecraft.client.*; import net.minecraft.client.model.*; import net.minecraft.util.*; @@ -56,7 +56,7 @@ public LodestoneArmorModel getArmorModel(LivingEntity entity, ItemStack itemStac ArmorSkin skin = ArmorSkin.getAppliedItemSkin(itemStack); LodestoneArmorModel model = ModelRegistry.SOUL_STAINED_ARMOR; if (skin != null) { - model = ArmorSkinRegistry.ClientOnly.SKIN_RENDERING_DATA.get(skin).getModel(entity); + model = ArmorSkinRenderingData.RENDERING_DATA.apply(skin).getModel(entity); } model.slot = slot; model.copyFromDefault(_default); diff --git a/src/main/java/com/sammy/malum/registry/common/item/ArmorSkinRegistry.java b/src/main/java/com/sammy/malum/registry/common/item/ArmorSkinRegistry.java index 51833dc69..b69754518 100644 --- a/src/main/java/com/sammy/malum/registry/common/item/ArmorSkinRegistry.java +++ b/src/main/java/com/sammy/malum/registry/common/item/ArmorSkinRegistry.java @@ -1,21 +1,18 @@ package com.sammy.malum.registry.common.item; import com.sammy.malum.*; -import com.sammy.malum.client.cosmetic.*; import com.sammy.malum.common.cosmetic.*; +import com.sammy.malum.common.cosmetic.ancient.*; +import com.sammy.malum.common.cosmetic.risk_of_rain.*; import com.sammy.malum.common.item.curiosities.armor.*; -import com.sammy.malum.registry.client.*; import net.minecraft.world.item.*; import net.minecraftforge.data.loading.*; import net.minecraftforge.eventbus.api.*; import net.minecraftforge.fml.common.*; import net.minecraftforge.fml.event.lifecycle.*; -import team.lodestar.lodestone.systems.item.*; import java.util.*; -import static com.sammy.malum.MalumMod.*; - @Mod.EventBusSubscriber(modid = MalumMod.MALUM, bus = Mod.EventBusSubscriber.Bus.MOD) public class ArmorSkinRegistry { @@ -27,11 +24,6 @@ public static void wipeCache(InterModEnqueueEvent event) { SKIN_DATAGEN_DATA = null; } - @SubscribeEvent - public static void registerRenderingData(FMLClientSetupEvent event) { - ClientOnly.addRenderingData(); - } - @SubscribeEvent public static void registerItemSkins(FMLCommonSetupEvent event) { registerPridewear("ace", ItemRegistry.ACE_PRIDEWEAVE.get()); @@ -53,48 +45,42 @@ public static void registerItemSkins(FMLCommonSetupEvent event) { registerPridewear("pride", ItemRegistry.PRIDE_PRIDEWEAVE.get()); registerPridewear("trans", ItemRegistry.TRANS_PRIDEWEAVE.get()); - registerItemSkin("executioner_drip", - new ArmorSkin(LodestoneArmorItem.class, ItemRegistry.DREADED_WEAVE.get()), + registerItemSkin(new ExecutionerArmorSkin("executioner_drip", MalumArmorItem.class, ItemRegistry.DREADED_WEAVE.get()), new ArmorSkin.ArmorSkinDatagenData( "malum:item/cosmetic/armor_icons/executioner_", "malum:models/item/executioner_", "visor", "chestplate", "leggings", "boots" )); - registerItemSkin("commando_drip", - new ArmorSkin(LodestoneArmorItem.class, ItemRegistry.CORNERED_WEAVE.get()), + registerItemSkin(new CommandoArmorSkin("commando_drip", MalumArmorItem.class, ItemRegistry.CORNERED_WEAVE.get()), new ArmorSkin.ArmorSkinDatagenData( "malum:item/cosmetic/armor_icons/commando_", "malum:models/item/commando_", "visor", "chestplate", "leggings", "boots" )); - registerItemSkin("ultrakill_v1", - new ArmorSkin(LodestoneArmorItem.class, ItemRegistry.MECHANICAL_WEAVE_V1.get()), + registerItemSkin(new UltrakillArmorSkin("ultrakill_v1", MalumArmorItem.class, ItemRegistry.MECHANICAL_WEAVE_V1.get()), new ArmorSkin.ArmorSkinDatagenData( "malum:item/cosmetic/armor_icons/v1_", "malum:models/item/v1_", "visor", "chestplate", "leggings", "boots" )); - registerItemSkin("ultrakill_v2", - new ArmorSkin(LodestoneArmorItem.class, ItemRegistry.MECHANICAL_WEAVE_V2.get()), + registerItemSkin(new UltrakillArmorSkin("ultrakill_v2", MalumArmorItem.class, ItemRegistry.MECHANICAL_WEAVE_V2.get()), new ArmorSkin.ArmorSkinDatagenData( "malum:item/cosmetic/armor_icons/v2_", "malum:models/item/v2_", "visor", "chestplate", "leggings", "boots" )); - registerItemSkin("ancient_cloth", - new ArmorSkin(SoulHunterArmorItem.class, ItemRegistry.ANCIENT_WEAVE.get()), + registerItemSkin(new AncientClothArmorSkin("ancient_cloth", ItemRegistry.ANCIENT_WEAVE.get()), new ArmorSkin.ArmorSkinDatagenData( "malum:item/cosmetic/armor_icons/ancient_soul_hunter_", "malum:models/item/ancient_soul_hunter_", "cloak", "robe", "leggings", "boots" )); - registerItemSkin("ancient_metal", - new ArmorSkin(SoulStainedSteelArmorItem.class, ItemRegistry.ANCIENT_WEAVE.get()), + registerItemSkin(new AncientMetalArmorSkin("ancient_metal", ItemRegistry.ANCIENT_WEAVE.get()), new ArmorSkin.ArmorSkinDatagenData( "malum:item/cosmetic/armor_icons/ancient_soul_stained_steel_", "malum:models/item/ancient_soul_stained_steel_", @@ -107,85 +93,19 @@ public static ArmorSkin registerItemSkin(String tag, ArmorSkin skin) { return skin; } - public static ArmorSkin registerItemSkin(String tag, ArmorSkin skin, ArmorSkin.ArmorSkinDatagenData datagenData) { + public static void registerItemSkin(ArmorSkin skin, ArmorSkin.ArmorSkinDatagenData datagenData) { if (DatagenModLoader.isRunningDataGen()) { SKIN_DATAGEN_DATA.put(skin, datagenData); } - return registerItemSkin(tag, skin); + registerItemSkin(skin.id, skin); } public static void registerPridewear(String tag, Item prideweave) { - String drip = tag + "_drip"; - registerItemSkin(drip, - new PrideArmorSkin(LodestoneArmorItem.class, prideweave), + registerItemSkin(new PrideArmorSkin(tag, MalumArmorItem.class, prideweave), new ArmorSkin.ArmorSkinDatagenData( "malum:item/cosmetic/armor_icons/pride/" + tag + "_", "malum:models/item/pridewear" + tag + "_", "beanie", "hoodie", "shorts", "socks" )); } - - public static class ClientOnly { - public static Map SKIN_RENDERING_DATA = new HashMap<>(); - - public static void addRenderingData() { - registerPridewearRenderingData("ace"); - registerPridewearRenderingData("agender"); - registerPridewearRenderingData("aro"); - registerPridewearRenderingData("aroace"); - registerPridewearRenderingData("bi"); - registerPridewearRenderingData("demiboy"); - registerPridewearRenderingData("demigirl"); - registerPridewearRenderingData("enby"); - registerPridewearRenderingData("gay"); - registerPridewearRenderingData("genderfluid"); - registerPridewearRenderingData("genderqueer"); - registerPridewearRenderingData("intersex"); - registerPridewearRenderingData("lesbian"); - registerPridewearRenderingData("pan"); - registerPridewearRenderingData("plural"); - registerPridewearRenderingData("poly"); - registerPridewearRenderingData("pride"); - registerPridewearRenderingData("trans"); - - registerItemSkinRenderingData("executioner_drip", new SimpleArmorSkinRenderingData( - malumPath("textures/armor/cosmetic/starstorm_executioner.png"), - ModelRegistry.EXECUTIONER - )); - - registerItemSkinRenderingData("commando_drip", new SimpleArmorSkinRenderingData( - malumPath("textures/armor/cosmetic/commando.png"), - ModelRegistry.COMMANDO - )); - - registerItemSkinRenderingData("ultrakill_v1", new SimpleArmorSkinRenderingData( - malumPath("textures/armor/cosmetic/v1.png"), - ModelRegistry.ULTRAKILL_MACHINE - )); - - registerItemSkinRenderingData("ultrakill_v2", new SimpleArmorSkinRenderingData( - malumPath("textures/armor/cosmetic/v2.png"), - ModelRegistry.ULTRAKILL_MACHINE - )); - - registerItemSkinRenderingData("ancient_cloth", new SimpleArmorSkinRenderingData( - malumPath("textures/armor/cosmetic/ancient_soul_hunter.png"), - ModelRegistry.ANCIENT_SOUL_HUNTER_ARMOR - )); - - registerItemSkinRenderingData("ancient_metal", new SimpleArmorSkinRenderingData( - malumPath("textures/armor/cosmetic/ancient_soul_stained_steel.png"), - ModelRegistry.ANCIENT_SOUL_STAINED_STEEL_ARMOR - )); - } - - public static void registerPridewearRenderingData(String tag) { - String drip = tag + "_drip"; - registerItemSkinRenderingData(drip, new PrideArmorSkinRenderingData(drip)); - } - - public static void registerItemSkinRenderingData(String tag, ArmorSkinRenderingData data) { - SKIN_RENDERING_DATA.put(SKINS.get(tag), data); - } - } } \ No newline at end of file diff --git a/src/main/resources/assets/malum/textures/armor/cosmetic/commando.png b/src/main/resources/assets/malum/textures/armor/cosmetic/risk_of_rain/commando.png similarity index 100% rename from src/main/resources/assets/malum/textures/armor/cosmetic/commando.png rename to src/main/resources/assets/malum/textures/armor/cosmetic/risk_of_rain/commando.png diff --git a/src/main/resources/assets/malum/textures/armor/cosmetic/starstorm_executioner.png b/src/main/resources/assets/malum/textures/armor/cosmetic/risk_of_rain/executioner.png similarity index 100% rename from src/main/resources/assets/malum/textures/armor/cosmetic/starstorm_executioner.png rename to src/main/resources/assets/malum/textures/armor/cosmetic/risk_of_rain/executioner.png diff --git a/src/main/resources/assets/malum/textures/armor/cosmetic/v1.png b/src/main/resources/assets/malum/textures/armor/cosmetic/ultrakill_v1.png similarity index 100% rename from src/main/resources/assets/malum/textures/armor/cosmetic/v1.png rename to src/main/resources/assets/malum/textures/armor/cosmetic/ultrakill_v1.png diff --git a/src/main/resources/assets/malum/textures/armor/cosmetic/v2.png b/src/main/resources/assets/malum/textures/armor/cosmetic/ultrakill_v2.png similarity index 100% rename from src/main/resources/assets/malum/textures/armor/cosmetic/v2.png rename to src/main/resources/assets/malum/textures/armor/cosmetic/ultrakill_v2.png