package com.tiedup.remake.entities.skins;

import java.util.List;

/**
 * Central registry of all SkinManagerCore instances.
 * Provides reloadAll() for SkinReloadListener.
 */
public final class SkinManagers {

    private SkinManagers() {}

    private static final List<SkinManagerCore<?>> ALL_CORES = List.of(
        DamselSkinManager.CORE,
        ShinyDamselSkinManager.CORE,
        KidnapperSkinManager.CORE,
        EliteKidnapperSkinManager.CORE,
        ArcherKidnapperSkinManager.CORE,
        MerchantKidnapperSkinManager.CORE,
        MasterSkinManager.CORE,
        MaidSkinManager.CORE,
        TraderSkinManager.CORE,
        LaborGuardSkinManager.CORE
    );

    /**
     * Reload all skin managers. Called by SkinReloadListener.
     */
    public static void reloadAll() {
        for (SkinManagerCore<?> core : ALL_CORES) {
            core.registerDefaults();
        }
    }

    /**
     * Get all registered cores for iteration.
     */
    public static List<SkinManagerCore<?>> getAllCores() {
        return ALL_CORES;
    }
}
