Applied-Energistics-2-tiler.../src/main/java/com/jadarstudios/developercapes/cape/StaticCape.java

61 lines
1.6 KiB
Java

/**
* DeveloperCapes by Jadar
* License: MIT License
* (https://raw.github.com/jadar/DeveloperCapes/master/LICENSE)
* version 4.0.0.x
*/
package com.jadarstudios.developercapes.cape;
import java.net.URL;
import com.jadarstudios.developercapes.HDImageBuffer;
import com.mojang.authlib.minecraft.MinecraftProfileTexture;
import net.minecraft.client.Minecraft;
import net.minecraft.client.entity.AbstractClientPlayer;
import net.minecraft.client.renderer.ThreadDownloadImageData;
import net.minecraft.util.ResourceLocation;
/**
* Default Cape implementation
*
* @author jadar
*/
public class StaticCape extends AbstractCape {
public StaticCape(String name, URL url) {
this.setName(name);
this.setURL(url);
}
public StaticCape(String name) {
this(name, null);
}
@Override
public void loadTexture(AbstractClientPlayer player) {
ResourceLocation location = this.getLocation();
player.func_152121_a(MinecraftProfileTexture.Type.CAPE, location);
Minecraft.getMinecraft().renderEngine.loadTexture(location, this.getTexture());
}
@Override
public boolean isTextureLoaded(AbstractClientPlayer player) {
ResourceLocation cape = player.getLocationCape();
return cape != null;
}
public void setURL(URL url) {
if (url == null) {
this.texture = null;
return;
}
this.texture = new ThreadDownloadImageData(
null, url.toString(), null, new HDImageBuffer()
);
}
public void setName(String name) {
this.name = name;
this.location = new ResourceLocation("DevCapes/" + name);
}
}