public class Parts_Renderer<T extends ArmorItem & GeoItem> extends GeoArmorRenderer<T> {
    public AllAutoGlowingGeoLayer glowingLayer = new AllAutoGlowingGeoLayer(this);
    public Parts_Renderer() {
        super(new Parts_Model());
        this.addRenderLayer(glowingLayer);
    }
    public AllAutoGlowingGeoLayer getGlowingLayer() {
        return this.glowingLayer;
    }

    @Override
    public ResourceLocation getTextureLocation(T object) {
        if (object instanceof Parts_Koka ||object instanceof Parts_Koka_Unbreakable
        ||object instanceof Parts_Koka_Slim ||object instanceof Parts_Koka_Unbreakable_Slim){
            Entity entity = this.getCurrentEntity();
            if (entity instanceof AbstractClientPlayer player) {
                return player.getSkinTextureLocation();
            }
            if (entity != null) {
                var renderer = Minecraft.getInstance().getEntityRenderDispatcher().getRenderer(entity);
                return renderer.getTextureLocation(entity);
            }
        }
        return super.getTextureLocation(object);
    }

    public void setEntity(Entity entity) {
        this.currentEntity = entity;
    }

    @Override
    public RenderType getRenderType(T animatable, ResourceLocation texture, @Nullable MultiBufferSource bufferSource, float partialTick) {
        return RenderType.entityTranslucentCull(texture); // 通常の防具描画用
    }
}