EliteItemSkins

public class EliteItemSkins

Centralizes all custom item skin/model logic for EliteMobs items. Determines which visual appearance to apply based on item level and material type.

This class handles:

  • Level-based skin tier selection
  • Item model IDs for 3D appearance (inventory/hand/worn helmets)
  • Equipment model IDs for worn armor textures
  • Application of both models to ItemStacks

Adding New Skin Tiers

To add a new skin tier:

  1. Add a new entry to SkinTier enum
  2. Register it in the static block with registerTier(minLevel, SkinTier.YOUR_TIER)
  3. Add corresponding resource pack assets:
    • Item models: assets/elitemobs/models/gear/[tier]_[itemtype].json
    • Item definitions: assets/elitemobs/items/gear/[tier]_[itemtype].json
    • Equipment definition: assets/elitemobs/equipment/[tier].json
    • Worn textures: assets/elitemobs/textures/entity/equipment/humanoid/[tier].png

Constructors

Link copied to clipboard
public void EliteItemSkins()

Types

Link copied to clipboard
public enum ItemType
Supported item types that can have custom skins.
Link copied to clipboard
public enum SkinTier
Available skin tiers.

Functions

Link copied to clipboard
public static void applyAttributeScaling(ItemStack itemStack, int level)
Applies attribute scaling to an item based on its level.
Link copied to clipboard
public static void applyLevelBasedSkin(ItemStack itemStack, int level)
Applies level-based custom skins to an ItemStack.
Link copied to clipboard
public static void applySkinTier(ItemStack itemStack, EliteItemSkins.SkinTier tier)
Applies a specific skin tier to an ItemStack, ignoring level.
Link copied to clipboard
public static String getEquipmentModelId(Material material, int level)
Gets the equipment model ID for armor items (worn appearance).
Link copied to clipboard
public static String getItemModelId(Material material, int level)
Gets the item model ID for the given material and level.
Link copied to clipboard
public static EliteItemSkins.SkinTier getSkinTier(int level)
Determines the skin tier based on item level.
Link copied to clipboard
public static String getTierDisplayName(int level)
Gets the skin tier name for display purposes.
Link copied to clipboard
public static int getTierMinLevel(EliteItemSkins.SkinTier tier)
Gets the minimum level required for a specific tier.
Link copied to clipboard
public static boolean isSupportedMaterial(Material material)
Checks if a material can have custom skins applied.
Link copied to clipboard
public static boolean wouldApplySkin(Material material, int level)
Checks if an item at the given level would receive a custom skin.