soiz1's picture
Upload folder using huggingface_hub
d46f4a3 verified
package net.minecraft.util;
import net.minecraft.world.phys.Vec3;
import org.joml.Vector3f;
public class ARGB {
public static int alpha(int p_362339_) {
return p_362339_ >>> 24;
}
public static int red(int p_363530_) {
return p_363530_ >> 16 & 0xFF;
}
public static int green(int p_362707_) {
return p_362707_ >> 8 & 0xFF;
}
public static int blue(int p_367010_) {
return p_367010_ & 0xFF;
}
public static int color(int p_365053_, int p_365624_, int p_367179_, int p_364375_) {
return p_365053_ << 24 | p_365624_ << 16 | p_367179_ << 8 | p_364375_;
}
public static int color(int p_368038_, int p_364189_, int p_366166_) {
return color(255, p_368038_, p_364189_, p_366166_);
}
public static int color(Vec3 p_368690_) {
return color(as8BitChannel((float)p_368690_.x()), as8BitChannel((float)p_368690_.y()), as8BitChannel((float)p_368690_.z()));
}
public static int multiply(int p_368908_, int p_362670_) {
if (p_368908_ == -1) {
return p_362670_;
} else {
return p_362670_ == -1
? p_368908_
: color(
alpha(p_368908_) * alpha(p_362670_) / 255,
red(p_368908_) * red(p_362670_) / 255,
green(p_368908_) * green(p_362670_) / 255,
blue(p_368908_) * blue(p_362670_) / 255
);
}
}
public static int scaleRGB(int p_364590_, float p_365829_) {
return scaleRGB(p_364590_, p_365829_, p_365829_, p_365829_);
}
public static int scaleRGB(int p_368386_, float p_366859_, float p_367328_, float p_364459_) {
return color(
alpha(p_368386_),
Math.clamp((long)((int)((float)red(p_368386_) * p_366859_)), 0, 255),
Math.clamp((long)((int)((float)green(p_368386_) * p_367328_)), 0, 255),
Math.clamp((long)((int)((float)blue(p_368386_) * p_364459_)), 0, 255)
);
}
public static int scaleRGB(int p_366038_, int p_368003_) {
return color(
alpha(p_366038_),
Math.clamp((long)red(p_366038_) * (long)p_368003_ / 255L, 0, 255),
Math.clamp((long)green(p_366038_) * (long)p_368003_ / 255L, 0, 255),
Math.clamp((long)blue(p_366038_) * (long)p_368003_ / 255L, 0, 255)
);
}
public static int greyscale(int p_362330_) {
int i = (int)((float)red(p_362330_) * 0.3F + (float)green(p_362330_) * 0.59F + (float)blue(p_362330_) * 0.11F);
return color(i, i, i);
}
public static int lerp(float p_368280_, int p_363975_, int p_368594_) {
int i = Mth.lerpInt(p_368280_, alpha(p_363975_), alpha(p_368594_));
int j = Mth.lerpInt(p_368280_, red(p_363975_), red(p_368594_));
int k = Mth.lerpInt(p_368280_, green(p_363975_), green(p_368594_));
int l = Mth.lerpInt(p_368280_, blue(p_363975_), blue(p_368594_));
return color(i, j, k, l);
}
public static int opaque(int p_363480_) {
return p_363480_ | 0xFF000000;
}
public static int transparent(int p_366691_) {
return p_366691_ & 16777215;
}
public static int color(int p_362407_, int p_368043_) {
return p_362407_ << 24 | p_368043_ & 16777215;
}
public static int white(float p_361606_) {
return as8BitChannel(p_361606_) << 24 | 16777215;
}
public static int colorFromFloat(float p_365014_, float p_365331_, float p_361446_, float p_367224_) {
return color(as8BitChannel(p_365014_), as8BitChannel(p_365331_), as8BitChannel(p_361446_), as8BitChannel(p_367224_));
}
public static Vector3f vector3fFromRGB24(int p_368966_) {
float f = (float)red(p_368966_) / 255.0F;
float f1 = (float)green(p_368966_) / 255.0F;
float f2 = (float)blue(p_368966_) / 255.0F;
return new Vector3f(f, f1, f2);
}
public static int average(int p_368446_, int p_366831_) {
return color(
(alpha(p_368446_) + alpha(p_366831_)) / 2,
(red(p_368446_) + red(p_366831_)) / 2,
(green(p_368446_) + green(p_366831_)) / 2,
(blue(p_368446_) + blue(p_366831_)) / 2
);
}
public static int as8BitChannel(float p_367233_) {
return Mth.floor(p_367233_ * 255.0F);
}
public static float alphaFloat(int p_376586_) {
return from8BitChannel(alpha(p_376586_));
}
public static float redFloat(int p_375781_) {
return from8BitChannel(red(p_375781_));
}
public static float greenFloat(int p_375888_) {
return from8BitChannel(green(p_375888_));
}
public static float blueFloat(int p_377428_) {
return from8BitChannel(blue(p_377428_));
}
private static float from8BitChannel(int p_370155_) {
return (float)p_370155_ / 255.0F;
}
public static int toABGR(int p_368147_) {
return p_368147_ & -16711936 | (p_368147_ & 0xFF0000) >> 16 | (p_368147_ & 0xFF) << 16;
}
public static int fromABGR(int p_369336_) {
return toABGR(p_369336_);
}
}