Added setAlpha to skin overlays

This commit is contained in:
Luis C.M committed 2022-05-16 22:14:11 -05:00
1 parent 6f9358c1ca
commit 83fbccdf55
5 files changed
+19 -7

No files matched your search

@@ -80,8 +80,9 @@ public class NoppesUtil {
int tagID = skinOverlayList.getCompoundTagAt(i).getInteger("SkinOverlayID");
String tagString = skinOverlayList.getCompoundTagAt(i).getString("SkinOverlayTexture");
boolean glow = skinOverlayList.getCompoundTagAt(i).getBoolean("SkinOverlayGlow");
float alpha = skinOverlayList.getCompoundTagAt(i).getFloat("SkinOverlayAlpha");
skinOverlays.put(tagID,new SkinOverlayData(new ResourceLocation(tagString),glow));
skinOverlays.put(tagID,new SkinOverlayData(new ResourceLocation(tagString),glow,alpha));
}
Client.skinOverlays.put(player.getUniqueID(), skinOverlays);
}
@@ -15,7 +15,7 @@ public class RenderCNPCPlayer extends RenderPlayer {
public RenderCNPCPlayer() {
}
private boolean preRenderOverlay(EntityPlayer player, ResourceLocation overlayLocation, boolean glow) {
private boolean preRenderOverlay(EntityPlayer player, ResourceLocation overlayLocation, boolean glow, float alpha) {
try {
this.bindTexture(overlayLocation);
} catch (Exception exception) {
@@ -30,6 +30,8 @@ public class RenderCNPCPlayer extends RenderPlayer {
Minecraft.getMinecraft().entityRenderer.disableLightmap((double)0);
}
GL11.glColor4f(1.0F, 1.0F, 1.0F, alpha);
GL11.glDepthMask(!player.isInvisible());
GL11.glPushMatrix();
@@ -50,7 +52,6 @@ public class RenderCNPCPlayer extends RenderPlayer {
GL11.glLoadIdentity();
GL11.glMatrixMode(GL11.GL_MODELVIEW);
GL11.glEnable(GL11.GL_LIGHTING);
GL11.glColor4f(1.0F, 1.0F, 1.0F, 1.0F);
GL11.glDepthFunc(GL11.GL_LEQUAL);
@@ -69,7 +70,7 @@ public class RenderCNPCPlayer extends RenderPlayer {
if (Client.skinOverlays.containsKey(player.getUniqueID())) {
for (SkinOverlayData overlayData : Client.skinOverlays.get(player.getUniqueID()).values()) {
if (!preRenderOverlay(player, overlayData.location, overlayData.glow))
if (!preRenderOverlay(player, overlayData.location, overlayData.glow, overlayData.alpha))
return;
this.mainModel.render(p_77036_1_, p_77036_2_, p_77036_3_, p_77036_4_, p_77036_5_, p_77036_6_, p_77036_7_);
postRenderOverlay(player);
@@ -108,9 +109,8 @@ public class RenderCNPCPlayer extends RenderPlayer {
if (Client.skinOverlays.containsKey(player.getUniqueID())) {
for (SkinOverlayData overlayData : Client.skinOverlays.get(player.getUniqueID()).values()) {
if (!preRenderOverlay(player, overlayData.location, overlayData.glow))
if (!preRenderOverlay(player, overlayData.location, overlayData.glow, overlayData.alpha))
return;
GL11.glColor3f(1.0F, 1.0F, 1.0F);
this.modelBipedMain.onGround = 0.0F;
this.modelBipedMain.setRotationAngles(0.0F, 0.0F, 0.0F, 0.0F, 0.0F, 0.0625F, player);
this.modelBipedMain.bipedRightArm.render(0.0625F);
@@ -5,9 +5,11 @@ import net.minecraft.util.ResourceLocation;
public class SkinOverlayData {
public ResourceLocation location;
public boolean glow;
public float alpha = 1.0F;
public SkinOverlayData(ResourceLocation location, boolean glow) {
public SkinOverlayData(ResourceLocation location, boolean glow, float alpha) {
this.location = location;
this.glow = glow;
this.alpha = alpha;
}
}
@@ -5,6 +5,7 @@ import noppes.npcs.scripted.interfaces.ISkinOverlay;
public class ScriptSkinOverlay implements ISkinOverlay {
public String texture;
public boolean glow;
public float alpha = 1.0F;
public ScriptSkinOverlay(String texture) {
this.texture = texture;
@@ -23,4 +24,11 @@ public class ScriptSkinOverlay implements ISkinOverlay {
public boolean getGlow() {
return glow;
}
public void setAlpha(float alpha) {
this.alpha = alpha;
}
public float getAlpha() {
return alpha;
}
}
@@ -535,6 +535,7 @@ public class ScriptPlayer<T extends EntityPlayerMP> extends ScriptLivingBase<T>
compound.setInteger("SkinOverlayID", id);
compound.setString("SkinOverlayTexture", overlay.getTexture());
compound.setBoolean("SkinOverlayGlow", overlay.getGlow());
compound.setFloat("SkinOverlayAlpha", overlay.getAlpha());
if (!player.getEntityData().hasKey("SkinOverlayData")) {
NBTTagList tagList = new NBTTagList();