      public int getMoonPhase()
      {
 +		// TODO: Client
-+		if(WurstClient.INSTANCE.mods.noWeatherMod.isActive()
-+			&& WurstClient.INSTANCE.mods.noWeatherMod.changeMoonPhase
-+				.isChecked())
-+			return WurstClient.INSTANCE.mods.noWeatherMod.moonPhase.getValueI();
++		if(WurstClient.INSTANCE.mods.noWeatherMod.isMoonPhaseChanged())
++			return WurstClient.INSTANCE.mods.noWeatherMod.getChangedMoonPhase();
 +		
  		return this.provider.getMoonPhase(this.worldInfo.getWorldTime());
      }
  
-@@ -3592,6 +3613,11 @@ public abstract class World implements IBlockAccess
+@@ -3592,6 +3605,10 @@ public abstract class World implements IBlockAccess
       */
      public float getRainStrength(float delta)
      {
 +		// TODO: Client
-+		if(WurstClient.INSTANCE.mods.noWeatherMod.isActive()
-+			&& WurstClient.INSTANCE.mods.noWeatherMod.disableRain.isChecked())
++		if(WurstClient.INSTANCE.mods.noWeatherMod.isRainDisabled())
 +			return 0;
 +		
          return this.prevRainingStrength + (this.rainingStrength - this.prevRainingStrength) * delta;

     public List<AxisAlignedBB> func_184144_a(Entity p_184144_1_, AxisAlignedBB p_184144_2_)
     {
         List<AxisAlignedBB> list = Lists.<AxisAlignedBB>newArrayList();
@@ -1550,11 +1558,24 @@ public abstract class World implements IBlockAccess
      */
     public float getCelestialAngle(float partialTicks)
     {
+		// TODO: Client
+		if(WurstClient.INSTANCE.mods.noWeatherMod.isActive()
+			&& WurstClient.INSTANCE.mods.noWeatherMod.changeTime.isChecked())
+			return provider.calculateCelestialAngle(
+				(long)WurstClient.INSTANCE.mods.noWeatherMod.time.getValueI(),
+				partialTicks);
+		
 		return this.provider.calculateCelestialAngle(this.worldInfo.getWorldTime(), partialTicks);

 net/minecraft/util/math/Vec3d.java                 |   6 +
 net/minecraft/util/text/ITextComponent.java        |  12 ++
 net/minecraft/util/text/Style.java                 |   6 +
 net/minecraft/world/World.java                     |  41 ++--
 101 files changed, 1562 insertions(+), 546 deletions(-)

diff --git a/Start.java b/Start.java
index ae0025f..078afa5 100644
