ForgePatch/patches/minecraft/net/minecraft/world/dimension/Dimension.java.patch

111 lines
3.2 KiB
Diff

--- a/net/minecraft/world/dimension/Dimension.java
+++ b/net/minecraft/world/dimension/Dimension.java
@@ -13,7 +13,7 @@
import net.minecraftforge.api.distmarker.Dist;
import net.minecraftforge.api.distmarker.OnlyIn;
-public abstract class Dimension {
+public abstract class Dimension implements net.minecraftforge.common.extensions.IForgeDimension {
public static final float[] field_111203_a = new float[]{1.0F, 0.75F, 0.5F, 0.25F, 0.0F, 0.25F, 0.5F, 0.75F};
protected World field_76579_a;
protected boolean field_76575_d;
@@ -64,7 +64,7 @@
@OnlyIn(Dist.CLIENT)
public float func_76571_f() {
- return 128.0F;
+ return this.getWorld().func_72912_H().func_76067_t().getCloudHeight();
}
@OnlyIn(Dist.CLIENT)
@@ -79,7 +79,7 @@
@OnlyIn(Dist.CLIENT)
public double func_76565_k() {
- return this.field_76579_a.func_72912_H().func_76067_t() == WorldType.field_77138_c ? 1.0D : 0.03125D;
+ return this.field_76579_a.func_72912_H().func_76067_t().voidFadeMagnitude();
}
public boolean func_177500_n() {
@@ -120,6 +120,7 @@
protected abstract void func_76572_b();
+ @Deprecated //Forge: Use WorldType.createChunkGenerator
public abstract IChunkGenerator<?> func_186060_c();
@Nullable
@@ -141,4 +142,72 @@
public abstract boolean func_76568_b(int p_76568_1_, int p_76568_2_);
public abstract DimensionType func_186058_p();
+
+ /*======================================= Forge Start =========================================*/
+ private net.minecraftforge.client.IRenderHandler skyRenderer = null;
+ private net.minecraftforge.client.IRenderHandler cloudRenderer = null;
+ private net.minecraftforge.client.IRenderHandler weatherRenderer = null;
+ private int dimensionId;
+
+ @Override
+ public void setId(int id) {
+ this.dimensionId = id;
+ }
+
+ @Override
+ public int getId() {
+ return this.dimensionId;
+ }
+
+ @Nullable
+ @OnlyIn(Dist.CLIENT)
+ @Override
+ public net.minecraftforge.client.IRenderHandler getSkyRenderer() {
+ return this.skyRenderer;
+ }
+
+ @OnlyIn(Dist.CLIENT)
+ @Override
+ public void setSkyRenderer(net.minecraftforge.client.IRenderHandler skyRenderer) {
+ this.skyRenderer = skyRenderer;
+ }
+
+ @Nullable
+ @OnlyIn(Dist.CLIENT)
+ @Override
+ public net.minecraftforge.client.IRenderHandler getCloudRenderer() {
+ return cloudRenderer;
+ }
+
+ @OnlyIn(Dist.CLIENT)
+ @Override
+ public void setCloudRenderer(net.minecraftforge.client.IRenderHandler renderer) {
+ cloudRenderer = renderer;
+ }
+
+ @Nullable
+ @OnlyIn(Dist.CLIENT)
+ @Override
+ public net.minecraftforge.client.IRenderHandler getWeatherRenderer() {
+ return weatherRenderer;
+ }
+
+ @OnlyIn(Dist.CLIENT)
+ @Override
+ public void setWeatherRenderer(net.minecraftforge.client.IRenderHandler renderer) {
+ weatherRenderer = renderer;
+ }
+
+ @Override
+ public void resetRainAndThunder() {
+ field_76579_a.func_72912_H().func_76080_g(0);
+ field_76579_a.func_72912_H().func_76084_b(false);
+ field_76579_a.func_72912_H().func_76090_f(0);
+ field_76579_a.func_72912_H().func_76069_a(false);
+ }
+
+ @Override
+ public World getWorld() {
+ return this.field_76579_a;
+ }
}