package top.r3944realms.lib39;

import net.fabricmc.api.ClientModInitializer;
import net.fabricmc.fabric.api.client.event.lifecycle.v1.ClientLifecycleEvents;
import top.r3944realms.lib39.client.BlockEntityRendererRegistry;
import top.r3944realms.lib39.client.ItemRendererRegistry;
import top.r3944realms.lib39.client.LayerDefinitionRegistry;
import top.r3944realms.lib39.client.ShaderRegistry;
import top.r3944realms.lib39.core.event.FabricCommonEventHandler;
import top.r3944realms.lib39.core.network.FabricNetworkHandler;

/**
 * The type Lib 39 fabric client.
 */
public class Lib39FabricClient implements ClientModInitializer {
    @Override
    public void onInitializeClient() {
        ClientLifecycleEvents.CLIENT_STARTED.register( r -> {
            ShaderRegistry.register();
            LayerDefinitionRegistry.register();
            BlockEntityRendererRegistry.register();
            ItemRendererRegistry.register();
            FabricNetworkHandler.registerClientReceivers();
            FabricCommonEventHandler.initClient();
        });
    }
}
