本文整理匯總了Java中net.minecraft.world.biome.BiomeGenBase.getSkyColorByTemp方法的典型用法代碼示例。如果您正苦於以下問題:Java BiomeGenBase.getSkyColorByTemp方法的具體用法?Java BiomeGenBase.getSkyColorByTemp怎麽用?Java BiomeGenBase.getSkyColorByTemp使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類net.minecraft.world.biome.BiomeGenBase
的用法示例。
在下文中一共展示了BiomeGenBase.getSkyColorByTemp方法的1個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Java代碼示例。
示例1: getSkyColor
import net.minecraft.world.biome.BiomeGenBase; //導入方法依賴的package包/類
/**
* Calculates the color for the skybox
*/
public Vec3 getSkyColor(Entity entityIn, float partialTicks)
{
float f = this.getCelestialAngle(partialTicks);
float f1 = MathHelper.cos(f * (float)Math.PI * 2.0F) * 2.0F + 0.5F;
f1 = MathHelper.clamp_float(f1, 0.0F, 1.0F);
int i = MathHelper.floor_double(entityIn.posX);
int j = MathHelper.floor_double(entityIn.posY);
int k = MathHelper.floor_double(entityIn.posZ);
BlockPos blockpos = new BlockPos(i, j, k);
BiomeGenBase biomegenbase = this.getBiomeGenForCoords(blockpos);
float f2 = biomegenbase.getFloatTemperature(blockpos);
int l = biomegenbase.getSkyColorByTemp(f2);
float f3 = (float)(l >> 16 & 255) / 255.0F;
float f4 = (float)(l >> 8 & 255) / 255.0F;
float f5 = (float)(l & 255) / 255.0F;
f3 = f3 * f1;
f4 = f4 * f1;
f5 = f5 * f1;
float f6 = this.getRainStrength(partialTicks);
if (f6 > 0.0F)
{
float f7 = (f3 * 0.3F + f4 * 0.59F + f5 * 0.11F) * 0.6F;
float f8 = 1.0F - f6 * 0.75F;
f3 = f3 * f8 + f7 * (1.0F - f8);
f4 = f4 * f8 + f7 * (1.0F - f8);
f5 = f5 * f8 + f7 * (1.0F - f8);
}
float f10 = this.getThunderStrength(partialTicks);
if (f10 > 0.0F)
{
float f11 = (f3 * 0.3F + f4 * 0.59F + f5 * 0.11F) * 0.2F;
float f9 = 1.0F - f10 * 0.75F;
f3 = f3 * f9 + f11 * (1.0F - f9);
f4 = f4 * f9 + f11 * (1.0F - f9);
f5 = f5 * f9 + f11 * (1.0F - f9);
}
if (this.lastLightningBolt > 0)
{
float f12 = (float)this.lastLightningBolt - partialTicks;
if (f12 > 1.0F)
{
f12 = 1.0F;
}
f12 = f12 * 0.45F;
f3 = f3 * (1.0F - f12) + 0.8F * f12;
f4 = f4 * (1.0F - f12) + 0.8F * f12;
f5 = f5 * (1.0F - f12) + 1.0F * f12;
}
return new Vec3((double)f3, (double)f4, (double)f5);
}