MineLittlePony/src/main/java/com/minelittlepony/client/hdskins/MineLPHDSkins.java

39 lines
1.2 KiB
Java
Raw Normal View History

package com.minelittlepony.client.hdskins;
2019-05-28 12:41:06 +02:00
import com.minelittlepony.client.MineLittlePony;
import com.minelittlepony.client.SkinsProxy;
import com.minelittlepony.common.event.ClientReadyCallback;
import com.minelittlepony.hdskins.SkinCacheClearCallback;
2019-11-26 22:55:39 +01:00
import com.minelittlepony.mson.api.Mson;
2019-11-23 18:28:42 +01:00
2019-05-28 12:41:06 +02:00
import net.minecraft.client.MinecraftClient;
import com.minelittlepony.client.pony.PonyManager;
2019-05-28 12:41:06 +02:00
import com.minelittlepony.hdskins.HDSkins;
/**
* All the interactions with HD Skins.
*/
class MineLPHDSkins {
2019-05-28 12:41:06 +02:00
MineLPHDSkins() {
SkinsProxy.instance = new HDSkinsProxy();
ClientReadyCallback.EVENT.register(this::postInit);
2019-05-28 12:41:06 +02:00
// Preview on the select skin gui
Mson.getInstance().getEntityRendererRegistry().registerEntityRenderer(DummyPony.TYPE, DummyPonyRenderer::new);
}
private void postInit(MinecraftClient minecraft) {
2019-05-28 12:41:06 +02:00
HDSkins manager = HDSkins.getInstance();
// Clear ponies when skins are cleared
PonyManager ponyManager = (PonyManager) MineLittlePony.getInstance().getManager();
SkinCacheClearCallback.EVENT.register(ponyManager::onSkinCacheCleared);
2019-05-28 12:41:06 +02:00
// Ponify the skins GUI.
manager.getSkinServerList().setSkinsGui(GuiSkinsMineLP::new);
2019-05-28 12:41:06 +02:00
}
}