 +import static org.lwjgl.opengl.GL11.glEnd;
 +import static org.lwjgl.opengl.GL11.glVertex2d;
 +
- import java.awt.Color;
- import java.util.ArrayList;
- import java.util.Collection;
- import java.util.Iterator;
- import java.util.Random;
-+
- import net.minecraft.block.material.Material;
- import net.minecraft.client.Minecraft;
- import net.minecraft.client.renderer.GlStateManager;
++import java.awt.Color;
++import java.util.ArrayList;
++import java.util.Collection;
++import java.util.Iterator;
++import java.util.Random;
++
++import net.minecraft.block.material.Material;
++import net.minecraft.client.Minecraft;
++import net.minecraft.client.renderer.GlStateManager;
 +import net.minecraft.client.renderer.OpenGlHelper;
- import net.minecraft.client.renderer.RenderHelper;
- import net.minecraft.client.renderer.Tessellator;
- import net.minecraft.client.renderer.WorldRenderer;
-@@ -43,11 +55,26 @@ import net.minecraft.util.ResourceLocation;
- import net.minecraft.util.StringUtils;
- import net.minecraft.world.border.WorldBorder;
- 
++import net.minecraft.client.renderer.RenderHelper;
++import net.minecraft.client.renderer.Tessellator;
++import net.minecraft.client.renderer.WorldRenderer;
++import net.minecraft.client.renderer.entity.RenderItem;
++import net.minecraft.client.renderer.texture.TextureAtlasSprite;
++import net.minecraft.client.renderer.texture.TextureMap;
++import net.minecraft.client.resources.I18n;
++import net.minecraft.entity.Entity;
++import net.minecraft.entity.EntityLivingBase;
++import net.minecraft.entity.SharedMonsterAttributes;
++import net.minecraft.entity.ai.attributes.IAttributeInstance;
++import net.minecraft.entity.boss.BossStatus;
++import net.minecraft.entity.player.EntityPlayer;
++import net.minecraft.init.Blocks;
++import net.minecraft.inventory.IInventory;
++import net.minecraft.item.Item;
++import net.minecraft.item.ItemStack;
++import net.minecraft.potion.Potion;
++import net.minecraft.scoreboard.Score;
++import net.minecraft.scoreboard.ScoreObjective;
++import net.minecraft.scoreboard.ScorePlayerTeam;
++import net.minecraft.scoreboard.Scoreboard;
++import net.minecraft.util.BlockPos;
++import net.minecraft.util.EnumChatFormatting;
++import net.minecraft.util.FoodStats;
++import net.minecraft.util.IChatComponent;
++import net.minecraft.util.MathHelper;
++import net.minecraft.util.MovingObjectPosition;
++import net.minecraft.util.ResourceLocation;
++import net.minecraft.util.StringUtils;
++import net.minecraft.world.border.WorldBorder;
++
 +import org.darkstorm.minecraft.gui.util.RenderUtil;
 +import org.lwjgl.opengl.GL11;
 +
 +import tk.wurst_client.Client;
++import tk.wurst_client.event.EventManager;
++import tk.wurst_client.event.events.GUIRenderEvent;
 +import tk.wurst_client.font.Fonts;
 +import tk.wurst_client.gui.UIRenderer;
 +import tk.wurst_client.module.Module;

+import com.google.common.collect.Iterables;
+import com.google.common.collect.Lists;
+
 public class GuiIngame extends Gui
 {
     private static final ResourceLocation vignetteTexPath = new ResourceLocation("textures/misc/vignette.png");
     private static final ResourceLocation widgetsTexPath = new ResourceLocation("textures/gui/widgets.png");
     private static final ResourceLocation pumpkinBlurTexPath = new ResourceLocation("textures/misc/pumpkinblur.png");
+    //TODO: Client
+    private static final ResourceLocation wurstTextures = new ResourceLocation("wurst/wurst_128.png");
     private final Random rand = new Random();
     private final Minecraft mc;
     private final RenderItem itemRenderer;
@@ -211,7 +238,7 @@ public class GuiIngame extends Gui
         {
             this.func_175182_a(var2);
         }
-        else if (this.mc.thePlayer.func_175149_v())
+        else if (this.mc.thePlayer.isSpectator())
         {
             this.field_175197_u.func_175263_a(var2);
         }
@@ -288,11 +315,11 @@ public class GuiIngame extends Gui
                 GlStateManager.pushMatrix();
                 GlStateManager.scale(4.0F, 4.0F, 4.0F);
                 var9 = var8 << 24 & -16777216;
-                this.func_175179_f().func_175065_a(this.field_175201_x, (float)(-this.func_175179_f().getStringWidth(this.field_175201_x) / 2), -10.0F, 16777215 | var9, true);
+                this.func_175179_f().drawString(this.field_175201_x, (float)(-this.func_175179_f().getStringWidth(this.field_175201_x) / 2), -10.0F, 16777215 | var9, true);
                 GlStateManager.popMatrix();
                 GlStateManager.pushMatrix();
                 GlStateManager.scale(2.0F, 2.0F, 2.0F);
-                this.func_175179_f().func_175065_a(this.field_175200_y, (float)(-this.func_175179_f().getStringWidth(this.field_175200_y) / 2), 5.0F, 16777215 | var9, true);
+                this.func_175179_f().drawString(this.field_175200_y, (float)(-this.func_175179_f().getStringWidth(this.field_175200_y) / 2), 5.0F, 16777215 | var9, true);
                 GlStateManager.popMatrix();
                 GlStateManager.disableBlend();
                 GlStateManager.popMatrix();
@@ -320,6 +347,64 @@ public class GuiIngame extends Gui
         if (var16 != null)
         {
             this.func_180475_a(var16, var2);
+            //TODO: Client
+        }else
+        {

 .../minecraft/world/gen/ChunkProviderServer.java   |    3 +
 src/net/minecraft/world/gen/layer/GenLayer.java    |    1 +
 .../world/gen/structure/MapGenStructure.java       |    2 +
 202 files changed, 10392 insertions(+), 8745 deletions(-)

diff --git a/src/net/minecraft/block/Block.java b/src/net/minecraft/block/Block.java
index 5c07aa4..c8adf19 100644
