Jump to content

Recommended Posts

Posted (edited)

Hello, I am have a massive amount of difficulty reaching the starting point of modding. I've modded before and I do not remember it being so absolutely painful to reach the starting point... Here is the Debug of the error I get every single time despite trying different 'fixes'  I am aware that the FAQ has stated there is a separate sub-forum for modding support, however that link goes to a 404 page.

 

Here is a list of what I have tried from reading other support tickets with this same issue, googling the issue and following tutorials verbatim yet I reach an error they did not.

I've tried to decomplie multiple times, I've cleaned and tried again, I've tried different forge versions, I've set the project folder of my IDE to look at the decompile location, I've set my Java home and path variables, I have JDK 8, I made sure my IDE is set to JDK 8, I've restart my computer and deleted the forge folder in between attempts. I hate to post this issue when other people have already posted it but The things listed are just not working for me. I am not sure what to do at this point besides ask for help.

16:49:10.622 [ERROR] [org.gradle.api.Task] Patching failed: minecraft\net\minecraft\client\util\SearchTree.java
16:49:10.623 [ERROR] [org.gradle.api.Task] Hunk 1 failed! Cannot find hunk target
16:49:10.623 [ERROR] [org.gradle.api.Task]
    private void func_194042_b(T p_194042_1_) {
       (this.field_194047_d.apply(p_194042_1_)).forEach((p_194039_2_) -> {
-         this.field_194045_b.func_194057_a(p_194039_1_, p_194039_2_.toString().toLowerCase(Locale.ROOT));
+         this.field_194045_b.func_194057_a(p_194042_1_, p_194039_2_.toString().toLowerCase(Locale.ROOT));
       });
       (this.field_194046_c.apply(p_194042_1_)).forEach((p_194041_2_) -> {
-         this.field_194044_a.func_194057_a(p_194041_1_, p_194041_2_.toLowerCase(Locale.ROOT));
+         this.field_194044_a.func_194057_a(p_194042_1_, p_194041_2_.toLowerCase(Locale.ROOT));
       });
    }

16:49:10.623 [ERROR] [org.gradle.api.Task] File state
16:49:10.623 [ERROR] [org.gradle.api.Task] package net.minecraft.client.util;

import com.google.common.collect.AbstractIterator;
import com.google.common.collect.Lists;
import it.unimi.dsi.fastutil.objects.Object2IntMap;
import it.unimi.dsi.fastutil.objects.Object2IntOpenHashMap;
import java.util.Iterator;
import java.util.List;
import java.util.Locale;
import java.util.function.Consumer;
import java.util.function.Function;
import net.minecraft.util.ResourceLocation;
import net.minecraftforge.fml.relauncher.Side;
import net.minecraftforge.fml.relauncher.SideOnly;

@SideOnly(Side.CLIENT)
public class SearchTree<T> implements ISearchTree<T> {
   protected SuffixArray<T> field_194044_a = new SuffixArray<T>();
   protected SuffixArray<T> field_194045_b = new SuffixArray<T>();
   private final Function<T, Iterable<String>> field_194046_c;
   private final Function<T, Iterable<ResourceLocation>> field_194047_d;
   private final List<T> field_194048_e = Lists.<T>newArrayList();
   private Object2IntMap<T> field_194049_f = new Object2IntOpenHashMap<T>();

   public SearchTree(Function<T, Iterable<String>> p_i47612_1_, Function<T, Iterable<ResourceLocation>> p_i47612_2_) {
      this.field_194046_c = p_i47612_1_;
      this.field_194047_d = p_i47612_2_;
   }

   public void func_194040_a() {
      this.field_194044_a = new SuffixArray<T>();
      this.field_194045_b = new SuffixArray<T>();

      for(T t : this.field_194048_e) {
         this.func_194042_b(t);
      }

      this.field_194044_a.func_194058_a();
      this.field_194045_b.func_194058_a();
   }

   public void func_194043_a(T p_194043_1_) {
      this.field_194049_f.put(p_194043_1_, this.field_194048_e.size());
      this.field_194048_e.add(p_194043_1_);
      this.func_194042_b(p_194043_1_);
   }

   private void func_194042_b(T p_194042_1_) {
      ((Iterable)this.field_194047_d.apply(p_194042_1_)).forEach((p_194039_2_) -> {
         this.field_194045_b.func_194057_a(p_194039_1_, p_194039_2_.toString().toLowerCase(Locale.ROOT));
      });
      ((Iterable)this.field_194046_c.apply(p_194042_1_)).forEach((p_194041_2_) -> {
         this.field_194044_a.func_194057_a(p_194041_1_, p_194041_2_.toLowerCase(Locale.ROOT));
      });
   }

   public List<T> func_194038_a(String p_194038_1_) {
      List<T> list = this.field_194044_a.func_194055_a(p_194038_1_);
      if (p_194038_1_.indexOf(58) < 0) {
         return list;
      } else {
         List<T> list1 = this.field_194045_b.func_194055_a(p_194038_1_);
         return (List<T>)(list1.isEmpty() ? list : Lists.newArrayList(new SearchTree.MergingIterator(list.iterator(), list1.iterator(), this.field_194049_f)));
      }
   }

   @SideOnly(Side.CLIENT)
   static class MergingIterator<T> extends AbstractIterator<T> {
      private final Iterator<T> field_194033_a;
      private final Iterator<T> field_194034_b;
      private final Object2IntMap<T> field_194035_c;
      private T field_194036_d;
      private T field_194037_e;

      public MergingIterator(Iterator<T> p_i47606_1_, Iterator<T> p_i47606_2_, Object2IntMap<T> p_i47606_3_) {
         this.field_194033_a = p_i47606_1_;
         this.field_194034_b = p_i47606_2_;
         this.field_194035_c = p_i47606_3_;
         this.field_194036_d = (T)(p_i47606_1_.hasNext() ? p_i47606_1_.next() : null);
         this.field_194037_e = (T)(p_i47606_2_.hasNext() ? p_i47606_2_.next() : null);
      }

      protected T computeNext() {
         if (this.field_194036_d == null && this.field_194037_e == null) {
            return (T)this.endOfData();
         } else {
            int i;
            if (this.field_194036_d == this.field_194037_e) {
               i = 0;
            } else if (this.field_194036_d == null) {
               i = 1;
            } else if (this.field_194037_e == null) {
               i = -1;
            } else {
               i = Integer.compare(this.field_194035_c.getInt(this.field_194036_d), this.field_194035_c.getInt(this.field_194037_e));
            }

            T t = (T)(i <= 0 ? this.field_194036_d : this.field_194037_e);
            if (i <= 0) {
               this.field_194036_d = (T)(this.field_194033_a.hasNext() ? this.field_194033_a.next() : null);
            }

            if (i >= 0) {
               this.field_194037_e = (T)(this.field_194034_b.hasNext() ? this.field_194034_b.next() : null);
            }

            return t;
         }
      }
   }
}

16:49:10.624 [DEBUG] [org.gradle.api.Task] Patch succeeded: minecraft\net\minecraft\client\util\SuffixArray.java
16:49:10.624 [DEBUG] [org.gradle.api.Task] Patch succeeded: minecraft\net\minecraft\server\MinecraftServer.java
16:49:10.624 [DEBUG] [org.gradle.api.Task] Patch succeeded: minecraft\net\minecraft\command\CommandBase.java
16:49:10.624 [ERROR] [org.gradle.api.Task] Patching failed: minecraft\net\minecraft\command\EntitySelector.java
16:49:10.624 [ERROR] [org.gradle.api.Task] Hunk 1 failed! Cannot find hunk target
16:49:10.624 [ERROR] [org.gradle.api.Task]                             }
                         }

-                        return Lists.newArrayList(entity);
+                        return Lists.newArrayList((T)entity);
                      }

                      return Collections.<T>emptyList();
16:49:10.624 [ERROR] [org.gradle.api.Task] File state
16:49:10.624 [ERROR] [org.gradle.api.Task] package net.minecraft.command;

import com.google.common.base.Predicate;
import com.google.common.base.Predicates;
import com.google.common.base.Splitter;
import com.google.common.collect.ComparisonChain;
import com.google.common.collect.Lists;
import com.google.common.collect.Maps;
import com.google.common.collect.Sets;
import java.util.Collections;
import java.util.Comparator;
import java.util.Iterator;
import java.util.List;
import java.util.Map;
import java.util.Set;
import java.util.Map.Entry;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
import javax.annotation.Nullable;
import net.minecraft.entity.Entity;
import net.minecraft.entity.EntityList;
import net.minecraft.entity.EntityLivingBase;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.entity.player.EntityPlayerMP;
import net.minecraft.scoreboard.Score;
import net.minecraft.scoreboard.ScoreObjective;
import net.minecraft.scoreboard.Scoreboard;
import net.minecraft.scoreboard.Team;
import net.minecraft.util.EntitySelectors;
import net.minecraft.util.ResourceLocation;
import net.minecraft.util.math.AxisAlignedBB;
import net.minecraft.util.math.BlockPos;
import net.minecraft.util.math.MathHelper;
import net.minecraft.util.math.Vec3d;
import net.minecraft.util.text.ITextComponent;
import net.minecraft.util.text.TextComponentTranslation;
import net.minecraft.util.text.TextFormatting;
import net.minecraft.world.GameType;
import net.minecraft.world.World;

public class EntitySelector {
   private static final Pattern field_82389_a = Pattern.compile("^@([pares])(?:\\[([^ ]*)\\])?$");
   private static final Splitter field_190828_b = Splitter.on(',').omitEmptyStrings();
   private static final Splitter field_190829_c = Splitter.on('=').limit(2);
   private static final Set<String> field_190830_d = Sets.<String>newHashSet();
   private static final String field_190831_e = func_190826_c("r");
   private static final String field_190832_f = func_190826_c("rm");
   private static final String field_190833_g = func_190826_c("l");
   private static final String field_190834_h = func_190826_c("lm");
   private static final String field_190835_i = func_190826_c("x");
   private static final String field_190836_j = func_190826_c("y");
   private static final String field_190837_k = func_190826_c("z");
   private static final String field_190838_l = func_190826_c("dx");
   private static final String field_190839_m = func_190826_c("dy");
   private static final String field_190840_n = func_190826_c("dz");
   private static final String field_190841_o = func_190826_c("rx");
   private static final String field_190842_p = func_190826_c("rxm");
   private static final String field_190843_q = func_190826_c("ry");
   private static final String field_190844_r = func_190826_c("rym");
   private static final String field_190845_s = func_190826_c("c");
   private static final String field_190846_t = func_190826_c("m");
   private static final String field_190847_u = func_190826_c("team");
   private static final String field_190848_v = func_190826_c("name");
   private static final String field_190849_w = func_190826_c("type");
   private static final String field_190850_x = func_190826_c("tag");
   private static final Predicate<String> field_190851_y = new Predicate<String>() {
      public boolean apply(@Nullable String p_apply_1_) {
         return p_apply_1_ != null && (EntitySelector.field_190830_d.contains(p_apply_1_) || p_apply_1_.length() > "score_".length() && p_apply_1_.startsWith("score_"));
      }
   };
   private static final Set<String> field_179666_d = Sets.newHashSet(field_190835_i, field_190836_j, field_190837_k, field_190838_l, field_190839_m, field_190840_n, field_190832_f, field_190831_e);

   public static String func_190826_c(String p_190826_0_) {
      field_190830_d.add(p_190826_0_);
      return p_190826_0_;
   }

   @Nullable
   public static EntityPlayerMP func_82386_a(ICommandSender p_82386_0_, String p_82386_1_) throws CommandException {
      return (EntityPlayerMP)func_179652_a(p_82386_0_, p_82386_1_, EntityPlayerMP.class);
   }

   public static List<EntityPlayerMP> func_193531_b(ICommandSender p_193531_0_, String p_193531_1_) throws CommandException {
      return func_179656_b(p_193531_0_, p_193531_1_, EntityPlayerMP.class);
   }

   @Nullable
   public static <T extends Entity> T func_179652_a(ICommandSender p_179652_0_, String p_179652_1_, Class<? extends T> p_179652_2_) throws CommandException {
      List<T> list = func_179656_b(p_179652_0_, p_179652_1_, p_179652_2_);
      return (T)(list.size() == 1 ? (Entity)list.get(0) : null);
   }

   @Nullable
   public static ITextComponent func_150869_b(ICommandSender p_150869_0_, String p_150869_1_) throws CommandException {
      List<Entity> list = func_179656_b(p_150869_0_, p_150869_1_, Entity.class);
      if (list.isEmpty()) {
         return null;
      } else {
         List<ITextComponent> list1 = Lists.<ITextComponent>newArrayList();

         for(Entity entity : list) {
            list1.add(entity.func_145748_c_());
         }

         return CommandBase.func_180530_a(list1);
      }
   }

   public static <T extends Entity> List<T> func_179656_b(ICommandSender p_179656_0_, String p_179656_1_, Class<? extends T> p_179656_2_) throws CommandException {
      Matcher matcher = field_82389_a.matcher(p_179656_1_);
      if (matcher.matches() && p_179656_0_.func_70003_b(1, "@")) {
         Map<String, String> map = func_82381_h(matcher.group(2));
         if (!func_179655_b(p_179656_0_, map)) {
            return Collections.emptyList();
         } else {
            String s = matcher.group(1);
            BlockPos blockpos = func_179664_b(map, p_179656_0_.func_180425_c());
            Vec3d vec3d = func_189210_b(map, p_179656_0_.func_174791_d());
            List<World> list = func_179654_a(p_179656_0_, map);
            List<T> list1 = Lists.<T>newArrayList();

            for(World world : list) {
               if (world != null) {
                  List<Predicate<Entity>> list2 = Lists.<Predicate<Entity>>newArrayList();
                  list2.addAll(func_179663_a(map, s));
                  list2.addAll(func_179648_b(map));
                  list2.addAll(func_179649_c(map));
                  list2.addAll(func_179659_d(map));
                  list2.addAll(func_184952_c(p_179656_0_, map));
                  list2.addAll(func_179647_f(map));
                  list2.addAll(func_184951_f(map));
                  list2.addAll(func_180698_a(map, vec3d));
                  list2.addAll(func_179662_g(map));
                  if ("s".equalsIgnoreCase(s)) {
                     Entity entity = p_179656_0_.func_174793_f();
                     if (entity != null && p_179656_2_.isAssignableFrom(entity.getClass())) {
                        if (map.containsKey(field_190838_l) || map.containsKey(field_190839_m) || map.containsKey(field_190840_n)) {
                           int i = func_179653_a(map, field_190838_l, 0);
                           int j = func_179653_a(map, field_190839_m, 0);
                           int k = func_179653_a(map, field_190840_n, 0);
                           AxisAlignedBB axisalignedbb = func_179661_a(blockpos, i, j, k);
                           if (!axisalignedbb.func_72326_a(entity.func_174813_aQ())) {
                              return Collections.emptyList();
                           }
                        }

                        for(Predicate<Entity> predicate : list2) {
                           if (!predicate.apply(entity)) {
                              return Collections.emptyList();
                           }
                        }

                        return Lists.newArrayList(entity);
                     }

                     return Collections.emptyList();
                  }

                  list1.addAll(func_179660_a(map, p_179656_2_, list2, s, world, blockpos));
               }
            }

            return func_179658_a(list1, map, p_179656_0_, p_179656_2_, s, vec3d);
         }
      } else {
         return Collections.emptyList();
      }
   }

   private static List<World> func_179654_a(ICommandSender p_179654_0_, Map<String, String> p_179654_1_) {
      List<World> list = Lists.<World>newArrayList();
      if (func_179665_h(p_179654_1_)) {
         list.add(p_179654_0_.func_130014_f_());
      } else {
         Collections.addAll(list, p_179654_0_.func_184102_h().field_71305_c);
      }

      return list;
   }

   private static <T extends Entity> boolean func_179655_b(ICommandSender p_179655_0_, Map<String, String> p_179655_1_) {
      String s = func_179651_b(p_179655_1_, field_190849_w);
      if (s == null) {
         return true;
      } else {
         ResourceLocation resourcelocation = new ResourceLocation(s.startsWith("!") ? s.substring(1) : s);
         if (EntityList.func_180125_b(resourcelocation)) {
            return true;
         } else {
            TextComponentTranslation textcomponenttranslation = new TextComponentTranslation("commands.generic.entity.invalidType", new Object[]{resourcelocation});
            textcomponenttranslation.func_150256_b().func_150238_a(TextFormatting.RED);
            p_179655_0_.func_145747_a(textcomponenttranslation);
            return false;
         }
      }
   }

   private static List<Predicate<Entity>> func_179663_a(Map<String, String> p_179663_0_, String p_179663_1_) {
      String s = func_179651_b(p_179663_0_, field_190849_w);
      if (s == null || !p_179663_1_.equals("e") && !p_179663_1_.equals("r") && !p_179663_1_.equals("s")) {
         return !p_179663_1_.equals("e") && !p_179663_1_.equals("s") ? Collections.singletonList(new Predicate<Entity>() {
            public boolean apply(@Nullable Entity p_apply_1_) {
               return p_apply_1_ instanceof EntityPlayer;
            }
         }) : Collections.emptyList();
      } else {
         final boolean flag = s.startsWith("!");
         final ResourceLocation resourcelocation = new ResourceLocation(flag ? s.substring(1) : s);
         return Collections.singletonList(new Predicate<Entity>() {
            public boolean apply(@Nullable Entity p_apply_1_) {
               return EntityList.func_180123_a(p_apply_1_, resourcelocation) != flag;
            }
         });
      }
   }

   private static List<Predicate<Entity>> func_179648_b(Map<String, String> p_179648_0_) {
      List<Predicate<Entity>> list = Lists.<Predicate<Entity>>newArrayList();
      final int i = func_179653_a(p_179648_0_, field_190834_h, -1);
      final int j = func_179653_a(p_179648_0_, field_190833_g, -1);
      if (i > -1 || j > -1) {
         list.add(new Predicate<Entity>() {
            public boolean apply(@Nullable Entity p_apply_1_) {
               if (!(p_apply_1_ instanceof EntityPlayerMP)) {
                  return false;
               } else {
                  EntityPlayerMP entityplayermp = (EntityPlayerMP)p_apply_1_;
                  return (i <= -1 || entityplayermp.field_71068_ca >= i) && (j <= -1 || entityplayermp.field_71068_ca <= j);
               }
            }
         });
      }

      return list;
   }

   private static List<Predicate<Entity>> func_179649_c(Map<String, String> p_179649_0_) {
      List<Predicate<Entity>> list = Lists.<Predicate<Entity>>newArrayList();
      String s = func_179651_b(p_179649_0_, field_190846_t);
      if (s == null) {
         return list;
      } else {
         final boolean flag = s.startsWith("!");
         if (flag) {
            s = s.substring(1);
         }

         final GameType gametype;
         try {
            int i = Integer.parseInt(s);
            gametype = GameType.func_185329_a(i, GameType.NOT_SET);
         } catch (Throwable var6) {
            gametype = GameType.func_185328_a(s, GameType.NOT_SET);
         }

         list.add(new Predicate<Entity>() {
            public boolean apply(@Nullable Entity p_apply_1_) {
               if (!(p_apply_1_ instanceof EntityPlayerMP)) {
                  return false;
               } else {
                  EntityPlayerMP entityplayermp = (EntityPlayerMP)p_apply_1_;
                  GameType gametype1 = entityplayermp.field_71134_c.func_73081_b();
                  return flag ? gametype1 != gametype : gametype1 == gametype;
               }
            }
         });
         return list;
      }
   }

   private static List<Predicate<Entity>> func_179659_d(Map<String, String> p_179659_0_) {
      List<Predicate<Entity>> list = Lists.<Predicate<Entity>>newArrayList();
      final String s = func_179651_b(p_179659_0_, field_190847_u);
      final boolean flag = s != null && s.startsWith("!");
      if (flag) {
         s = s.substring(1);
      }

      if (s != null) {
         list.add(new Predicate<Entity>() {
            public boolean apply(@Nullable Entity p_apply_1_) {
               if (!(p_apply_1_ instanceof EntityLivingBase)) {
                  return false;
               } else {
                  EntityLivingBase entitylivingbase = (EntityLivingBase)p_apply_1_;
                  Team team = entitylivingbase.func_96124_cp();
                  String s1 = team == null ? "" : team.func_96661_b();
                  return s1.equals(s) != flag;
               }
            }
         });
      }

      return list;
   }

   private static List<Predicate<Entity>> func_184952_c(final ICommandSender p_184952_0_, Map<String, String> p_184952_1_) {
      final Map<String, Integer> map = func_96560_a(p_184952_1_);
      return (List<Predicate<Entity>>)(map.isEmpty() ? Collections.emptyList() : Lists.newArrayList(new Predicate<Entity>() {
         public boolean apply(@Nullable Entity p_apply_1_) {
            if (p_apply_1_ == null) {
               return false;
            } else {
               Scoreboard scoreboard = p_184952_0_.func_184102_h().func_71218_a(0).func_96441_U();

               for(Entry<String, Integer> entry : map.entrySet()) {
                  String s = (String)entry.getKey();
                  boolean flag = false;
                  if (s.endsWith("_min") && s.length() > 4) {
                     flag = true;
                     s = s.substring(0, s.length() - 4);
                  }

                  ScoreObjective scoreobjective = scoreboard.func_96518_b(s);
                  if (scoreobjective == null) {
                     return false;
                  }

                  String s1 = p_apply_1_ instanceof EntityPlayerMP ? p_apply_1_.func_70005_c_() : p_apply_1_.func_189512_bd();
                  if (!scoreboard.func_178819_b(s1, scoreobjective)) {
                     return false;
                  }

                  Score score = scoreboard.func_96529_a(s1, scoreobjective);
                  int i = score.func_96652_c();
                  if (i < ((Integer)entry.getValue()).intValue() && flag) {
                     return false;
                  }

                  if (i > ((Integer)entry.getValue()).intValue() && !flag) {
                     return false;
                  }
               }

               return true;
            }
         }
      }));
   }

   private static List<Predicate<Entity>> func_179647_f(Map<String, String> p_179647_0_) {
      List<Predicate<Entity>> list = Lists.<Predicate<Entity>>newArrayList();
      final String s = func_179651_b(p_179647_0_, field_190848_v);
      final boolean flag = s != null && s.startsWith("!");
      if (flag) {
         s = s.substring(1);
      }

      if (s != null) {
         list.add(new Predicate<Entity>() {
            public boolean apply(@Nullable Entity p_apply_1_) {
               return p_apply_1_ != null && p_apply_1_.func_70005_c_().equals(s) != flag;
            }
         });
      }

      return list;
   }

   private static List<Predicate<Entity>> func_184951_f(Map<String, String> p_184951_0_) {
      List<Predicate<Entity>> list = Lists.<Predicate<Entity>>newArrayList();
      final String s = func_179651_b(p_184951_0_, field_190850_x);
      final boolean flag = s != null && s.startsWith("!");
      if (flag) {
         s = s.substring(1);
      }

      if (s != null) {
         list.add(new Predicate<Entity>() {
            public boolean apply(@Nullable Entity p_apply_1_) {
               if (p_apply_1_ == null) {
                  return false;
               } else if ("".equals(s)) {
                  return p_apply_1_.func_184216_O().isEmpty() != flag;
               } else {
                  return p_apply_1_.func_184216_O().contains(s) != flag;
               }
            }
         });
      }

      return list;
   }

   private static List<Predicate<Entity>> func_180698_a(Map<String, String> p_180698_0_, final Vec3d p_180698_1_) {
      double d0 = (double)func_179653_a(p_180698_0_, field_190832_f, -1);
      double d1 = (double)func_179653_a(p_180698_0_, field_190831_e, -1);
      final boolean flag = d0 < -0.5D;
      final boolean flag1 = d1 < -0.5D;
      if (flag && flag1) {
         return Collections.emptyList();
      } else {
         double d2 = Math.max(d0, 1.0E-4D);
         final double d3 = d2 * d2;
         double d4 = Math.max(d1, 1.0E-4D);
         final double d5 = d4 * d4;
         return Lists.newArrayList(new Predicate<Entity>() {
            public boolean apply(@Nullable Entity p_apply_1_) {
               if (p_apply_1_ == null) {
                  return false;
               } else {
                  double d6 = p_180698_1_.func_186679_c(p_apply_1_.field_70165_t, p_apply_1_.field_70163_u, p_apply_1_.field_70161_v);
                  return (flag || d6 >= d3) && (flag1 || d6 <= d5);
               }
            }
         });
      }
   }

   private static List<Predicate<Entity>> func_179662_g(Map<String, String> p_179662_0_) {
      List<Predicate<Entity>> list = Lists.<Predicate<Entity>>newArrayList();
      if (p_179662_0_.containsKey(field_190844_r) || p_179662_0_.containsKey(field_190843_q)) {
         final int i = MathHelper.func_188209_b(func_179653_a(p_179662_0_, field_190844_r, 0));
         final int j = MathHelper.func_188209_b(func_179653_a(p_179662_0_, field_190843_q, 359));
         list.add(new Predicate<Entity>() {
            public boolean apply(@Nullable Entity p_apply_1_) {
               if (p_apply_1_ == null) {
                  return false;
               } else {
                  int i1 = MathHelper.func_188209_b(MathHelper.func_76141_d(p_apply_1_.field_70177_z));
                  if (i > j) {
                     return i1 >= i || i1 <= j;
                  } else {
                     return i1 >= i && i1 <= j;
                  }
               }
            }
         });
      }

      if (p_179662_0_.containsKey(field_190842_p) || p_179662_0_.containsKey(field_190841_o)) {
         final int k = MathHelper.func_188209_b(func_179653_a(p_179662_0_, field_190842_p, 0));
         final int l = MathHelper.func_188209_b(func_179653_a(p_179662_0_, field_190841_o, 359));
         list.add(new Predicate<Entity>() {
            public boolean apply(@Nullable Entity p_apply_1_) {
               if (p_apply_1_ == null) {
                  return false;
               } else {
                  int i1 = MathHelper.func_188209_b(MathHelper.func_76141_d(p_apply_1_.field_70125_A));
                  if (k > l) {
                     return i1 >= k || i1 <= l;
                  } else {
                     return i1 >= k && i1 <= l;
                  }
               }
            }
         });
      }

      return list;
   }

   private static <T extends Entity> List<T> func_179660_a(Map<String, String> p_179660_0_, Class<? extends T> p_179660_1_, List<Predicate<Entity>> p_179660_2_, String p_179660_3_, World p_179660_4_, BlockPos p_179660_5_) {
      List<T> list = Lists.<T>newArrayList();
      String s = func_179651_b(p_179660_0_, field_190849_w);
      s = s != null && s.startsWith("!") ? s.substring(1) : s;
      boolean flag = !p_179660_3_.equals("e");
      boolean flag1 = p_179660_3_.equals("r") && s != null;
      int i = func_179653_a(p_179660_0_, field_190838_l, 0);
      int j = func_179653_a(p_179660_0_, field_190839_m, 0);
      int k = func_179653_a(p_179660_0_, field_190840_n, 0);
      int l = func_179653_a(p_179660_0_, field_190831_e, -1);
      Predicate<Entity> predicate = Predicates.and(p_179660_2_);
      Predicate<Entity> predicate1 = Predicates.<Entity>and(EntitySelectors.field_94557_a, predicate);
      if (!p_179660_0_.containsKey(field_190838_l) && !p_179660_0_.containsKey(field_190839_m) && !p_179660_0_.containsKey(field_190840_n)) {
         if (l >= 0) {
            AxisAlignedBB axisalignedbb1 = new AxisAlignedBB((double)(p_179660_5_.func_177958_n() - l), (double)(p_179660_5_.func_177956_o() - l), (double)(p_179660_5_.func_177952_p() - l), (double)(p_179660_5_.func_177958_n() + l + 1), (double)(p_179660_5_.func_177956_o() + l + 1), (double)(p_179660_5_.func_177952_p() + l + 1));
            if (flag && !flag1) {
               list.addAll(p_179660_4_.func_175661_b(p_179660_1_, predicate1));
            } else {
               list.addAll(p_179660_4_.func_175647_a(p_179660_1_, axisalignedbb1, predicate1));
            }
         } else if (p_179660_3_.equals("a")) {
            list.addAll(p_179660_4_.func_175661_b(p_179660_1_, predicate));
         } else if (!p_179660_3_.equals("p") && (!p_179660_3_.equals("r") || flag1)) {
            list.addAll(p_179660_4_.func_175644_a(p_179660_1_, predicate1));
         } else {
            list.addAll(p_179660_4_.func_175661_b(p_179660_1_, predicate1));
         }
      } else {
         final AxisAlignedBB axisalignedbb = func_179661_a(p_179660_5_, i, j, k);
         if (flag && !flag1) {
            Predicate<Entity> predicate2 = new Predicate<Entity>() {
               public boolean apply(@Nullable Entity p_apply_1_) {
                  return p_apply_1_ != null && axisalignedbb.func_72326_a(p_apply_1_.func_174813_aQ());
               }
            };
            list.addAll(p_179660_4_.func_175661_b(p_179660_1_, Predicates.and(predicate1, predicate2)));
         } else {
            list.addAll(p_179660_4_.func_175647_a(p_179660_1_, axisalignedbb, predicate1));
         }
      }

      return list;
   }

   private static <T extends Entity> List<T> func_179658_a(List<T> p_179658_0_, Map<String, String> p_179658_1_, ICommandSender p_179658_2_, Class<? extends T> p_179658_3_, String p_179658_4_, final Vec3d p_179658_5_) {
      int i = func_179653_a(p_179658_1_, field_190845_s, !p_179658_4_.equals("a") && !p_179658_4_.equals("e") ? 1 : 0);
      if (!p_179658_4_.equals("p") && !p_179658_4_.equals("a") && !p_179658_4_.equals("e")) {
         if (p_179658_4_.equals("r")) {
            Collections.shuffle(p_179658_0_);
         }
      } else {
         Collections.sort(p_179658_0_, new Comparator<Entity>() {
            public int compare(Entity p_compare_1_, Entity p_compare_2_) {
               return ComparisonChain.start().compare(p_compare_1_.func_70092_e(p_179658_5_.field_72450_a, p_179658_5_.field_72448_b, p_179658_5_.field_72449_c), p_compare_2_.func_70092_e(p_179658_5_.field_72450_a, p_179658_5_.field_72448_b, p_179658_5_.field_72449_c)).result();
            }
         });
      }

      Entity entity = p_179658_2_.func_174793_f();
      if (entity != null && p_179658_3_.isAssignableFrom(entity.getClass()) && i == 1 && p_179658_0_.contains(entity) && !"r".equals(p_179658_4_)) {
         p_179658_0_ = Lists.newArrayList(entity);
      }

      if (i != 0) {
         if (i < 0) {
            Collections.reverse(p_179658_0_);
         }

         p_179658_0_ = p_179658_0_.subList(0, Math.min(Math.abs(i), p_179658_0_.size()));
      }

      return p_179658_0_;
   }

   private static AxisAlignedBB func_179661_a(BlockPos p_179661_0_, int p_179661_1_, int p_179661_2_, int p_179661_3_) {
      boolean flag = p_179661_1_ < 0;
      boolean flag1 = p_179661_2_ < 0;
      boolean flag2 = p_179661_3_ < 0;
      int i = p_179661_0_.func_177958_n() + (flag ? p_179661_1_ : 0);
      int j = p_179661_0_.func_177956_o() + (flag1 ? p_179661_2_ : 0);
      int k = p_179661_0_.func_177952_p() + (flag2 ? p_179661_3_ : 0);
      int l = p_179661_0_.func_177958_n() + (flag ? 0 : p_179661_1_) + 1;
      int i1 = p_179661_0_.func_177956_o() + (flag1 ? 0 : p_179661_2_) + 1;
      int j1 = p_179661_0_.func_177952_p() + (flag2 ? 0 : p_179661_3_) + 1;
      return new AxisAlignedBB((double)i, (double)j, (double)k, (double)l, (double)i1, (double)j1);
   }

   private static BlockPos func_179664_b(Map<String, String> p_179664_0_, BlockPos p_179664_1_) {
      return new BlockPos(func_179653_a(p_179664_0_, field_190835_i, p_179664_1_.func_177958_n()), func_179653_a(p_179664_0_, field_190836_j, p_179664_1_.func_177956_o()), func_179653_a(p_179664_0_, field_190837_k, p_179664_1_.func_177952_p()));
   }

   private static Vec3d func_189210_b(Map<String, String> p_189210_0_, Vec3d p_189210_1_) {
      return new Vec3d(func_189211_a(p_189210_0_, field_190835_i, p_189210_1_.field_72450_a, true), func_189211_a(p_189210_0_, field_190836_j, p_189210_1_.field_72448_b, false), func_189211_a(p_189210_0_, field_190837_k, p_189210_1_.field_72449_c, true));
   }

   private static double func_189211_a(Map<String, String> p_189211_0_, String p_189211_1_, double p_189211_2_, boolean p_189211_4_) {
      return p_189211_0_.containsKey(p_189211_1_) ? (double)MathHelper.func_82715_a((String)p_189211_0_.get(p_189211_1_), MathHelper.func_76128_c(p_189211_2_)) + (p_189211_4_ ? 0.5D : 0.0D) : p_189211_2_;
   }

   private static boolean func_179665_h(Map<String, String> p_179665_0_) {
      for(String s : field_179666_d) {
         if (p_179665_0_.containsKey(s)) {
            return true;
         }
      }

      return false;
   }

   private static int func_179653_a(Map<String, String> p_179653_0_, String p_179653_1_, int p_179653_2_) {
      return p_179653_0_.containsKey(p_179653_1_) ? MathHelper.func_82715_a((String)p_179653_0_.get(p_179653_1_), p_179653_2_) : p_179653_2_;
   }

   @Nullable
   private static String func_179651_b(Map<String, String> p_179651_0_, String p_179651_1_) {
      return (String)p_179651_0_.get(p_179651_1_);
   }

   public static Map<String, Integer> func_96560_a(Map<String, String> p_96560_0_) {
      Map<String, Integer> map = Maps.<String, Integer>newHashMap();

      for(String s : p_96560_0_.keySet()) {
         if (s.startsWith("score_") && s.length() > "score_".length()) {
            map.put(s.substring("score_".length()), Integer.valueOf(MathHelper.func_82715_a((String)p_96560_0_.get(s), 1)));
         }
      }

      return map;
   }

   public static boolean func_82377_a(String p_82377_0_) throws CommandException {
      Matcher matcher = field_82389_a.matcher(p_82377_0_);
      if (!matcher.matches()) {
         return false;
      } else {
         Map<String, String> map = func_82381_h(matcher.group(2));
         String s = matcher.group(1);
         int i = !"a".equals(s) && !"e".equals(s) ? 1 : 0;
         return func_179653_a(map, field_190845_s, i) != 1;
      }
   }

   public static boolean func_82378_b(String p_82378_0_) {
      return field_82389_a.matcher(p_82378_0_).matches();
   }

   private static Map<String, String> func_82381_h(@Nullable String p_82381_0_) throws CommandException {
      Map<String, String> map = Maps.<String, String>newHashMap();
      if (p_82381_0_ == null) {
         return map;
      } else {
         for(String s : field_190828_b.split(p_82381_0_)) {
            Iterator<String> iterator = field_190829_c.split(s).iterator();
            String s1 = (String)iterator.next();
            if (!field_190851_y.apply(s1)) {
               throw new CommandException("commands.generic.selector_argument", new Object[]{s});
            }

            map.put(s1, iterator.hasNext() ? (String)iterator.next() : "");
         }

         return map;
      }
   }
}

16:49:10.629 [DEBUG] [org.gradle.api.Task] Patch succeeded: minecraft\net\minecraft\command\CommandSpreadPlayers.java
16:49:10.629 [ERROR] [org.gradle.api.Task] Patching failed: minecraft\net\minecraft\util\math\Cartesian.java
16:49:10.629 [ERROR] [org.gradle.api.Task] Hunk 2 failed! Cannot find hunk target
16:49:10.629 [ERROR] [org.gradle.api.Task]        }

       public List<T> apply(@Nullable Object[] p_apply_1_) {
-         return Arrays.<T>asList(p_apply_1_);
+         return Arrays.<T>asList((T[])p_apply_1_);
       }
    }

16:49:10.629 [ERROR] [org.gradle.api.Task] File state
16:49:10.629 [ERROR] [org.gradle.api.Task] package net.minecraft.util.math;

import com.google.common.base.Function;
import com.google.common.collect.Iterables;
import com.google.common.collect.Lists;
import com.google.common.collect.UnmodifiableIterator;
import java.lang.reflect.Array;
import java.util.Arrays;
import java.util.Collections;
import java.util.Iterator;
import java.util.List;
import java.util.NoSuchElementException;
import javax.annotation.Nullable;

public class Cartesian {
   public static <T> Iterable<T[]> func_179318_a(Class<T> p_179318_0_, Iterable<? extends Iterable<? extends T>> p_179318_1_) {
      return new Cartesian.Product<T[]>(p_179318_0_, (Iterable[])func_179322_b(Iterable.class, p_179318_1_));
   }

   public static <T> Iterable<List<T>> func_179321_a(Iterable<? extends Iterable<? extends T>> p_179321_0_) {
      return func_179323_b(func_179318_a(Object.class, p_179321_0_));
   }

   private static <T> Iterable<List<T>> func_179323_b(Iterable<Object[]> p_179323_0_) {
      return Iterables.transform(p_179323_0_, new Cartesian.GetList());
   }

   private static <T> T[] func_179322_b(Class<? super T> p_179322_0_, Iterable<? extends T> p_179322_1_) {
      List<T> list = Lists.<T>newArrayList();

      for(T t : p_179322_1_) {
         list.add(t);
      }

      return (T[])(list.toArray(func_179319_b(p_179322_0_, list.size())));
   }

   private static <T> T[] func_179319_b(Class<? super T> p_179319_0_, int p_179319_1_) {
      return (T[])((Object[])Array.newInstance(p_179319_0_, p_179319_1_));
   }

   static class GetList<T> implements Function<Object[], List<T>> {
      private GetList() {
      }

      public List<T> apply(@Nullable Object[] p_apply_1_) {
         return Arrays.asList(p_apply_1_);
      }
   }

   static class Product<T> implements Iterable<T[]> {
      private final Class<T> field_179429_a;
      private final Iterable<? extends T>[] field_179428_b;

      private Product(Class<T> p_i46020_1_, Iterable<? extends T>[] p_i46020_2_) {
         this.field_179429_a = p_i46020_1_;
         this.field_179428_b = p_i46020_2_;
      }

      public Iterator<T[]> iterator() {
         return (Iterator<T[]>)(this.field_179428_b.length <= 0 ? Collections.singletonList(Cartesian.func_179319_b(this.field_179429_a, 0)).iterator() : new Cartesian.Product.ProductIterator(this.field_179429_a, this.field_179428_b));
      }

      static class ProductIterator<T> extends UnmodifiableIterator<T[]> {
         private int field_179426_a;
         private final Iterable<? extends T>[] field_179424_b;
         private final Iterator<? extends T>[] field_179425_c;
         private final T[] field_179423_d;

         private ProductIterator(Class<T> p_i46018_1_, Iterable<? extends T>[] p_i46018_2_) {
            this.field_179426_a = -2;
            this.field_179424_b = p_i46018_2_;
            this.field_179425_c = (Iterator[])Cartesian.func_179319_b(Iterator.class, this.field_179424_b.length);

            for(int i = 0; i < this.field_179424_b.length; ++i) {
               this.field_179425_c[i] = p_i46018_2_[i].iterator();
            }

            this.field_179423_d = (T[])Cartesian.func_179319_b(p_i46018_1_, this.field_179425_c.length);
         }

         private void func_179422_b() {
            this.field_179426_a = -1;
            Arrays.fill(this.field_179425_c, (Object)null);
            Arrays.fill(this.field_179423_d, (Object)null);
         }

         public boolean hasNext() {
            if (this.field_179426_a == -2) {
               this.field_179426_a = 0;

               for(Iterator<? extends T> iterator1 : this.field_179425_c) {
                  if (!iterator1.hasNext()) {
                     this.func_179422_b();
                     break;
                  }
               }

               return true;
            } else {
               if (this.field_179426_a >= this.field_179425_c.length) {
                  for(this.field_179426_a = this.field_179425_c.length - 1; this.field_179426_a >= 0; --this.field_179426_a) {
                     Iterator<? extends T> iterator = this.field_179425_c[this.field_179426_a];
                     if (iterator.hasNext()) {
                        break;
                     }

                     if (this.field_179426_a == 0) {
                        this.func_179422_b();
                        break;
                     }

                     iterator = this.field_179424_b[this.field_179426_a].iterator();
                     this.field_179425_c[this.field_179426_a] = iterator;
                     if (!iterator.hasNext()) {
                        this.func_179422_b();
                        break;
                     }
                  }
               }

               return this.field_179426_a >= 0;
            }
         }

         public T[] next() {
            if (!this.hasNext()) {
               throw new NoSuchElementException();
            } else {
               while(this.field_179426_a < this.field_179425_c.length) {
                  this.field_179423_d[this.field_179426_a] = this.field_179425_c[this.field_179426_a].next();
                  ++this.field_179426_a;
               }

               return (T[])((Object[])this.field_179423_d.clone());
            }
         }
      }
   }
}

16:49:10.630 [DEBUG] [org.gradle.api.Task] Patch succeeded: minecraft\net\minecraft\util\IObjectIntIterable.java
16:49:10.630 [DEBUG] [org.gradle.api.Task] Patch succeeded: minecraft\net\minecraft\util\ObjectIntIdentityMap.java
16:49:10.631 [DEBUG] [org.gradle.api.Task] Patch succeeded: minecraft\net\minecraft\util\NonNullList.java
16:49:10.631 [DEBUG] [org.gradle.api.Task] Patch succeeded: minecraft\net\minecraft\nbt\NBTUtil.java
16:49:10.631 [DEBUG] [org.gradle.api.Task] Patch succeeded: minecraft\net\minecraft\nbt\JsonToNBT.java
16:49:10.631 [DEBUG] [org.gradle.api.Task] Patch succeeded: minecraft\net\minecraft\network\NetworkManager.java
16:49:10.631 [DEBUG] [org.gradle.api.Task] Patch succeeded: minecraft\net\minecraft\network\EnumConnectionState.java
16:49:10.632 [DEBUG] [org.gradle.api.Task] Patch succeeded: minecraft\net\minecraft\util\text\TextComponentKeybind.java
16:49:10.632 [DEBUG] [org.gradle.api.Task] Patch succeeded: minecraft\net\minecraft\network\play\server\SPacketCombatEvent.java
16:49:10.632 [DEBUG] [org.gradle.api.Task] Patch succeeded: minecraft\net\minecraft\network\datasync\EntityDataManager.java
16:49:10.632 [ERROR] [org.gradle.api.Task] Patching failed: minecraft\net\minecraft\advancements\PlayerAdvancements.java
16:49:10.632 [ERROR] [org.gradle.api.Task] Hunk 1 failed! Cannot find hunk target
16:49:10.632 [ERROR] [org.gradle.api.Task]
             Stream<Entry<ResourceLocation, AdvancementProgress>> stream = map.entrySet().stream().sorted(Comparator.comparing(Entry::getValue));

-            for(Entry<ResourceLocation, AdvancementProgress> entry : (List)stream.collect(Collectors.toList())) {
+            for(Entry<ResourceLocation, AdvancementProgress> entry : stream.collect(Collectors.toList())) {
                Advancement advancement = this.field_192756_d.func_191949_aK().func_192778_a(entry.getKey());
                if (advancement == null) {
                   field_192753_a.warn("Ignored advancement '" + entry.getKey() + "' in progress file " + this.field_192757_e + " - it doesn't exist anymore?");
16:49:10.632 [ERROR] [org.gradle.api.Task] File state
16:49:10.632 [ERROR] [org.gradle.api.Task] package net.minecraft.advancements;

import com.google.common.collect.Lists;
import com.google.common.collect.Maps;
import com.google.common.collect.Sets;
import com.google.common.io.Files;
import com.google.gson.Gson;
import com.google.gson.GsonBuilder;
import com.google.gson.JsonParseException;
import com.google.gson.reflect.TypeToken;
import java.io.File;
import java.io.IOException;
import java.nio.charset.StandardCharsets;
import java.util.Comparator;
import java.util.List;
import java.util.Map;
import java.util.Set;
import java.util.Map.Entry;
import java.util.function.Function;
import java.util.stream.Collectors;
import java.util.stream.Stream;
import javax.annotation.Nullable;
import net.minecraft.entity.player.EntityPlayerMP;
import net.minecraft.network.play.server.SPacketAdvancementInfo;
import net.minecraft.network.play.server.SPacketSelectAdvancementsTab;
import net.minecraft.server.MinecraftServer;
import net.minecraft.util.JsonUtils;
import net.minecraft.util.ResourceLocation;
import net.minecraft.util.text.TextComponentTranslation;
import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;

public class PlayerAdvancements {
   private static final Logger field_192753_a = LogManager.getLogger();
   private static final Gson field_192754_b = (new GsonBuilder()).registerTypeAdapter(AdvancementProgress.class, new AdvancementProgress.Serializer()).registerTypeAdapter(ResourceLocation.class, new ResourceLocation.Serializer()).setPrettyPrinting().create();
   private static final TypeToken<Map<ResourceLocation, AdvancementProgress>> field_192755_c = new TypeToken<Map<ResourceLocation, AdvancementProgress>>() {
   };
   private final MinecraftServer field_192756_d;
   private final File field_192757_e;
   private final Map<Advancement, AdvancementProgress> field_192758_f = Maps.<Advancement, AdvancementProgress>newLinkedHashMap();
   private final Set<Advancement> field_192759_g = Sets.<Advancement>newLinkedHashSet();
   private final Set<Advancement> field_192760_h = Sets.<Advancement>newLinkedHashSet();
   private final Set<Advancement> field_192761_i = Sets.<Advancement>newLinkedHashSet();
   private EntityPlayerMP field_192762_j;
   @Nullable
   private Advancement field_194221_k;
   private boolean field_192763_k = true;

   public PlayerAdvancements(MinecraftServer p_i47422_1_, File p_i47422_2_, EntityPlayerMP p_i47422_3_) {
      this.field_192756_d = p_i47422_1_;
      this.field_192757_e = p_i47422_2_;
      this.field_192762_j = p_i47422_3_;
      this.func_192740_f();
   }

   public void func_192739_a(EntityPlayerMP p_192739_1_) {
      this.field_192762_j = p_192739_1_;
   }

   public void func_192745_a() {
      for(ICriterionTrigger<?> icriteriontrigger : CriteriaTriggers.func_192120_a()) {
         icriteriontrigger.func_192167_a(this);
      }

   }

   public void func_193766_b() {
      this.func_192745_a();
      this.field_192758_f.clear();
      this.field_192759_g.clear();
      this.field_192760_h.clear();
      this.field_192761_i.clear();
      this.field_192763_k = true;
      this.field_194221_k = null;
      this.func_192740_f();
   }

   private void func_192751_c() {
      for(Advancement advancement : this.field_192756_d.func_191949_aK().func_192780_b()) {
         this.func_193764_b(advancement);
      }

   }

   private void func_192752_d() {
      List<Advancement> list = Lists.<Advancement>newArrayList();

      for(Entry<Advancement, AdvancementProgress> entry : this.field_192758_f.entrySet()) {
         if (((AdvancementProgress)entry.getValue()).func_192105_a()) {
            list.add(entry.getKey());
            this.field_192761_i.add(entry.getKey());
         }
      }

      for(Advancement advancement : list) {
         this.func_192742_b(advancement);
      }

   }

   private void func_192748_e() {
      for(Advancement advancement : this.field_192756_d.func_191949_aK().func_192780_b()) {
         if (advancement.func_192073_f().isEmpty()) {
            this.func_192750_a(advancement, "");
            advancement.func_192072_d().func_192113_a(this.field_192762_j);
         }
      }

   }

   private void func_192740_f() {
      if (this.field_192757_e.isFile()) {
         try {
            String s = Files.toString(this.field_192757_e, StandardCharsets.UTF_8);
            Map<ResourceLocation, AdvancementProgress> map = (Map)JsonUtils.func_193840_a(field_192754_b, s, field_192755_c.getType());
            if (map == null) {
               throw new JsonParseException("Found null for advancements");
            }

            Stream<Entry<ResourceLocation, AdvancementProgress>> stream = map.entrySet().stream().sorted(Comparator.comparing(Entry::getValue));

            for(Entry<ResourceLocation, AdvancementProgress> entry : (List)stream.collect(Collectors.toList())) {
               Advancement advancement = this.field_192756_d.func_191949_aK().func_192778_a((ResourceLocation)entry.getKey());
               if (advancement == null) {
                  field_192753_a.warn("Ignored advancement '" + entry.getKey() + "' in progress file " + this.field_192757_e + " - it doesn't exist anymore?");
               } else {
                  this.func_192743_a(advancement, (AdvancementProgress)entry.getValue());
               }
            }
         } catch (JsonParseException jsonparseexception) {
            field_192753_a.error("Couldn't parse player advancements in " + this.field_192757_e, jsonparseexception);
         } catch (IOException ioexception) {
            field_192753_a.error("Couldn't access player advancements in " + this.field_192757_e, ioexception);
         }
      }

      this.func_192748_e();
      this.func_192752_d();
      this.func_192751_c();
   }

   public void func_192749_b() {
      Map<ResourceLocation, AdvancementProgress> map = Maps.<ResourceLocation, AdvancementProgress>newHashMap();

      for(Entry<Advancement, AdvancementProgress> entry : this.field_192758_f.entrySet()) {
         AdvancementProgress advancementprogress = (AdvancementProgress)entry.getValue();
         if (advancementprogress.func_192108_b()) {
            map.put(((Advancement)entry.getKey()).func_192067_g(), advancementprogress);
         }
      }

      if (this.field_192757_e.getParentFile() != null) {
         this.field_192757_e.getParentFile().mkdirs();
      }

      try {
         Files.write(field_192754_b.toJson(map), this.field_192757_e, StandardCharsets.UTF_8);
      } catch (IOException ioexception) {
         field_192753_a.error("Couldn't save player advancements to " + this.field_192757_e, ioexception);
      }

   }

   public boolean func_192750_a(Advancement p_192750_1_, String p_192750_2_) {
      boolean flag = false;
      AdvancementProgress advancementprogress = this.func_192747_a(p_192750_1_);
      boolean flag1 = advancementprogress.func_192105_a();
      if (advancementprogress.func_192109_a(p_192750_2_)) {
         this.func_193765_c(p_192750_1_);
         this.field_192761_i.add(p_192750_1_);
         flag = true;
         if (!flag1 && advancementprogress.func_192105_a()) {
            p_192750_1_.func_192072_d().func_192113_a(this.field_192762_j);
            if (p_192750_1_.func_192068_c() != null && p_192750_1_.func_192068_c().func_193220_i() && this.field_192762_j.field_70170_p.func_82736_K().func_82766_b("announceAdvancements")) {
               this.field_192756_d.func_184103_al().func_148539_a(new TextComponentTranslation("chat.type.advancement." + p_192750_1_.func_192068_c().func_192291_d().func_192307_a(), new Object[]{this.field_192762_j.func_145748_c_(), p_192750_1_.func_193123_j()}));
            }
         }
      }

      if (advancementprogress.func_192105_a()) {
         this.func_192742_b(p_192750_1_);
      }

      return flag;
   }

   public boolean func_192744_b(Advancement p_192744_1_, String p_192744_2_) {
      boolean flag = false;
      AdvancementProgress advancementprogress = this.func_192747_a(p_192744_1_);
      if (advancementprogress.func_192101_b(p_192744_2_)) {
         this.func_193764_b(p_192744_1_);
         this.field_192761_i.add(p_192744_1_);
         flag = true;
      }

      if (!advancementprogress.func_192108_b()) {
         this.func_192742_b(p_192744_1_);
      }

      return flag;
   }

   private void func_193764_b(Advancement p_193764_1_) {
      AdvancementProgress advancementprogress = this.func_192747_a(p_193764_1_);
      if (!advancementprogress.func_192105_a()) {
         for(Entry<String, Criterion> entry : p_193764_1_.func_192073_f().entrySet()) {
            CriterionProgress criterionprogress = advancementprogress.func_192106_c((String)entry.getKey());
            if (criterionprogress != null && !criterionprogress.func_192151_a()) {
               ICriterionInstance icriterioninstance = ((Criterion)entry.getValue()).func_192143_a();
               if (icriterioninstance != null) {
                  ICriterionTrigger<ICriterionInstance> icriteriontrigger = CriteriaTriggers.<ICriterionInstance>func_192119_a(icriterioninstance.func_192244_a());
                  if (icriteriontrigger != null) {
                     icriteriontrigger.func_192165_a(this, new ICriterionTrigger.Listener(icriterioninstance, p_193764_1_, (String)entry.getKey()));
                  }
               }
            }
         }

      }
   }

   private void func_193765_c(Advancement p_193765_1_) {
      AdvancementProgress advancementprogress = this.func_192747_a(p_193765_1_);

      for(Entry<String, Criterion> entry : p_193765_1_.func_192073_f().entrySet()) {
         CriterionProgress criterionprogress = advancementprogress.func_192106_c((String)entry.getKey());
         if (criterionprogress != null && (criterionprogress.func_192151_a() || advancementprogress.func_192105_a())) {
            ICriterionInstance icriterioninstance = ((Criterion)entry.getValue()).func_192143_a();
            if (icriterioninstance != null) {
               ICriterionTrigger<ICriterionInstance> icriteriontrigger = CriteriaTriggers.<ICriterionInstance>func_192119_a(icriterioninstance.func_192244_a());
               if (icriteriontrigger != null) {
                  icriteriontrigger.func_192164_b(this, new ICriterionTrigger.Listener(icriterioninstance, p_193765_1_, (String)entry.getKey()));
               }
            }
         }
      }

   }

   public void func_192741_b(EntityPlayerMP p_192741_1_) {
      if (!this.field_192760_h.isEmpty() || !this.field_192761_i.isEmpty()) {
         Map<ResourceLocation, AdvancementProgress> map = Maps.<ResourceLocation, AdvancementProgress>newHashMap();
         Set<Advancement> set = Sets.<Advancement>newLinkedHashSet();
         Set<ResourceLocation> set1 = Sets.<ResourceLocation>newLinkedHashSet();

         for(Advancement advancement : this.field_192761_i) {
            if (this.field_192759_g.contains(advancement)) {
               map.put(advancement.func_192067_g(), this.field_192758_f.get(advancement));
            }
         }

         for(Advancement advancement1 : this.field_192760_h) {
            if (this.field_192759_g.contains(advancement1)) {
               set.add(advancement1);
            } else {
               set1.add(advancement1.func_192067_g());
            }
         }

         if (!map.isEmpty() || !set.isEmpty() || !set1.isEmpty()) {
            p_192741_1_.field_71135_a.func_147359_a(new SPacketAdvancementInfo(this.field_192763_k, set, set1, map));
            this.field_192760_h.clear();
            this.field_192761_i.clear();
         }
      }

      this.field_192763_k = false;
   }

   public void func_194220_a(@Nullable Advancement p_194220_1_) {
      Advancement advancement = this.field_194221_k;
      if (p_194220_1_ != null && p_194220_1_.func_192070_b() == null && p_194220_1_.func_192068_c() != null) {
         this.field_194221_k = p_194220_1_;
      } else {
         this.field_194221_k = null;
      }

      if (advancement != this.field_194221_k) {
         this.field_192762_j.field_71135_a.func_147359_a(new SPacketSelectAdvancementsTab(this.field_194221_k == null ? null : this.field_194221_k.func_192067_g()));
      }

   }

   public AdvancementProgress func_192747_a(Advancement p_192747_1_) {
      AdvancementProgress advancementprogress = (AdvancementProgress)this.field_192758_f.get(p_192747_1_);
      if (advancementprogress == null) {
         advancementprogress = new AdvancementProgress();
         this.func_192743_a(p_192747_1_, advancementprogress);
      }

      return advancementprogress;
   }

   private void func_192743_a(Advancement p_192743_1_, AdvancementProgress p_192743_2_) {
      p_192743_2_.func_192099_a(p_192743_1_.func_192073_f(), p_192743_1_.func_192074_h());
      this.field_192758_f.put(p_192743_1_, p_192743_2_);
   }

   private void func_192742_b(Advancement p_192742_1_) {
      boolean flag = this.func_192738_c(p_192742_1_);
      boolean flag1 = this.field_192759_g.contains(p_192742_1_);
      if (flag && !flag1) {
         this.field_192759_g.add(p_192742_1_);
         this.field_192760_h.add(p_192742_1_);
         if (this.field_192758_f.containsKey(p_192742_1_)) {
            this.field_192761_i.add(p_192742_1_);
         }
      } else if (!flag && flag1) {
         this.field_192759_g.remove(p_192742_1_);
         this.field_192760_h.add(p_192742_1_);
      }

      if (flag != flag1 && p_192742_1_.func_192070_b() != null) {
         this.func_192742_b(p_192742_1_.func_192070_b());
      }

      for(Advancement advancement : p_192742_1_.func_192069_e()) {
         this.func_192742_b(advancement);
      }

   }

   private boolean func_192738_c(Advancement p_192738_1_) {
      for(int i = 0; p_192738_1_ != null && i <= 2; ++i) {
         if (i == 0 && this.func_192746_d(p_192738_1_)) {
            return true;
         }

         if (p_192738_1_.func_192068_c() == null) {
            return false;
         }

         AdvancementProgress advancementprogress = this.func_192747_a(p_192738_1_);
         if (advancementprogress.func_192105_a()) {
            return true;
         }

         if (p_192738_1_.func_192068_c().func_193224_j()) {
            return false;
         }

         p_192738_1_ = p_192738_1_.func_192070_b();
      }

      return false;
   }

   private boolean func_192746_d(Advancement p_192746_1_) {
      AdvancementProgress advancementprogress = this.func_192747_a(p_192746_1_);
      if (advancementprogress.func_192105_a()) {
         return true;
      } else {
         for(Advancement advancement : p_192746_1_.func_192069_e()) {
            if (this.func_192746_d(advancement)) {
               return true;
            }
         }

         return false;
      }
   }
}

16:49:10.636 [DEBUG] [org.gradle.api.Task] Patch succeeded: minecraft\net\minecraft\server\management\UserList.java
16:49:10.636 [DEBUG] [org.gradle.api.Task] Patch succeeded: minecraft\net\minecraft\util\HttpUtil.java
16:49:10.636 [DEBUG] [org.gradle.api.Task] Patch succeeded: minecraft\net\minecraft\util\EnumTypeAdapterFactory.java
16:49:10.636 [DEBUG] [org.gradle.api.Task] Patch succeeded: minecraft\net\minecraft\util\datafix\walkers\Filtered.java
16:49:10.637 [DEBUG] [org.gradle.api.Task] Patch succeeded: minecraft\net\minecraft\entity\EntityAreaEffectCloud.java
16:49:10.637 [DEBUG] [org.gradle.api.Task] Patch succeeded: minecraft\net\minecraft\entity\Entity.java
16:49:10.637 [DEBUG] [org.gradle.api.Task] Patch succeeded: minecraft\net\minecraft\entity\EntityList.java
16:49:10.637 [DEBUG] [org.gradle.api.Task] Patch succeeded: minecraft\net\minecraft\util\EntitySelectors.java
16:49:10.637 [DEBUG] [org.gradle.api.Task] Patch succeeded: minecraft\net\minecraft\entity\ai\EntityAINearestAttackableTarget.java
16:49:10.637 [DEBUG] [org.gradle.api.Task] Patch succeeded: minecraft\net\minecraft\entity\EntityHanging.java
16:49:10.637 [DEBUG] [org.gradle.api.Task] Patch succeeded: minecraft\net\minecraft\entity\monster\EntityEnderman.java
16:49:10.637 [DEBUG] [org.gradle.api.Task] Patch succeeded: minecraft\net\minecraft\entity\player\EntityPlayer.java
16:49:10.637 [DEBUG] [org.gradle.api.Task] Patch succeeded: minecraft\net\minecraft\entity\item\EntityMinecart.java
16:49:10.637 [DEBUG] [org.gradle.api.Task] Patch succeeded: minecraft\net\minecraft\item\ItemHoe.java
16:49:10.637 [DEBUG] [org.gradle.api.Task] Patch succeeded: minecraft\net\minecraft\item\ItemSlab.java
16:49:10.637 [ERROR] [org.gradle.api.Task] Patching failed: minecraft\net\minecraft\world\World.java
16:49:10.638 [ERROR] [org.gradle.api.Task] Hunk 1 failed! Cannot find hunk target
16:49:10.638 [ERROR] [org.gradle.api.Task]              if (this.func_175667_e(blockpos) && this.field_175728_M.func_177746_a(blockpos)) {
                try {
                   this.field_72984_F.func_194340_a(() -> {
-                     return String.valueOf((Object)TileEntity.func_190559_a(p_194305_0_.getClass()));
+                     return String.valueOf((Object)TileEntity.func_190559_a(tileentity.getClass()));
                   });
                   ((ITickable)tileentity).func_73660_a();
                   this.field_72984_F.func_76319_b();
16:49:10.638 [ERROR] [org.gradle.api.Task] File state
16:49:10.638 [ERROR] [org.gradle.api.Task] package net.minecraft.world;

import com.google.common.base.Function;
import com.google.common.base.MoreObjects;
import com.google.common.base.Predicate;
import com.google.common.collect.Lists;
import java.util.Calendar;
import java.util.Collection;
import java.util.Iterator;
import java.util.List;
import java.util.Random;
import java.util.UUID;
import java.util.function.Supplier;
import javax.annotation.Nullable;
import net.minecraft.advancements.AdvancementManager;
import net.minecraft.advancements.FunctionManager;
import net.minecraft.block.Block;
import net.minecraft.block.BlockLiquid;
import net.minecraft.block.BlockObserver;
import net.minecraft.block.material.Material;
import net.minecraft.block.state.IBlockState;
import net.minecraft.crash.CrashReport;
import net.minecraft.crash.CrashReportCategory;
import net.minecraft.crash.ICrashReportDetail;
import net.minecraft.entity.Entity;
import net.minecraft.entity.EntityLiving;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.entity.player.EntityPlayerMP;
import net.minecraft.init.Biomes;
import net.minecraft.init.Blocks;
import net.minecraft.nbt.NBTTagCompound;
import net.minecraft.network.Packet;
import net.minecraft.pathfinding.PathWorldListener;
import net.minecraft.profiler.Profiler;
import net.minecraft.scoreboard.Scoreboard;
import net.minecraft.server.MinecraftServer;
import net.minecraft.tileentity.TileEntity;
import net.minecraft.util.EntitySelectors;
import net.minecraft.util.EnumFacing;
import net.minecraft.util.EnumParticleTypes;
import net.minecraft.util.ITickable;
import net.minecraft.util.IntHashMap;
import net.minecraft.util.ReportedException;
import net.minecraft.util.SoundCategory;
import net.minecraft.util.SoundEvent;
import net.minecraft.util.math.AxisAlignedBB;
import net.minecraft.util.math.BlockPos;
import net.minecraft.util.math.MathHelper;
import net.minecraft.util.math.RayTraceResult;
import net.minecraft.util.math.Vec3d;
import net.minecraft.village.VillageCollection;
import net.minecraft.world.biome.Biome;
import net.minecraft.world.biome.BiomeProvider;
import net.minecraft.world.border.WorldBorder;
import net.minecraft.world.chunk.Chunk;
import net.minecraft.world.chunk.IChunkProvider;
import net.minecraft.world.gen.structure.StructureBoundingBox;
import net.minecraft.world.storage.ISaveHandler;
import net.minecraft.world.storage.MapStorage;
import net.minecraft.world.storage.WorldInfo;
import net.minecraft.world.storage.WorldSavedData;
import net.minecraft.world.storage.loot.LootTableManager;
import net.minecraftforge.fml.relauncher.Side;
import net.minecraftforge.fml.relauncher.SideOnly;

public abstract class World implements IBlockAccess {
   private int field_181546_a = 63;
   protected boolean field_72999_e;
   public final List<Entity> field_72996_f = Lists.<Entity>newArrayList();
   protected final List<Entity> field_72997_g = Lists.<Entity>newArrayList();
   public final List<TileEntity> field_147482_g = Lists.<TileEntity>newArrayList();
   public final List<TileEntity> field_175730_i = Lists.<TileEntity>newArrayList();
   private final List<TileEntity> field_147484_a = Lists.<TileEntity>newArrayList();
   private final List<TileEntity> field_147483_b = Lists.<TileEntity>newArrayList();
   public final List<EntityPlayer> field_73010_i = Lists.<EntityPlayer>newArrayList();
   public final List<Entity> field_73007_j = Lists.<Entity>newArrayList();
   protected final IntHashMap<Entity> field_175729_l = new IntHashMap<Entity>();
   private final long field_73001_c = 16777215L;
   private int field_73008_k;
   protected int field_73005_l = (new Random()).nextInt();
   protected final int field_73006_m = 1013904223;
   public float field_73003_n;
   public float field_73004_o;
   public float field_73018_p;
   public float field_73017_q;
   private int field_73016_r;
   public final Random field_73012_v = new Random();
   public final WorldProvider field_73011_w;
   protected PathWorldListener field_184152_t = new PathWorldListener();
   protected List<IWorldEventListener> field_73021_x;
   protected IChunkProvider field_73020_y;
   protected final ISaveHandler field_73019_z;
   protected WorldInfo field_72986_A;
   protected boolean field_72987_B;
   protected MapStorage field_72988_C;
   public VillageCollection field_72982_D;
   protected LootTableManager field_184151_B;
   protected AdvancementManager field_191951_C;
   protected FunctionManager field_193036_D;
   public final Profiler field_72984_F;
   private final Calendar field_83016_L;
   protected Scoreboard field_96442_D;
   public final boolean field_72995_K;
   protected boolean field_72985_G;
   protected boolean field_72992_H;
   private boolean field_147481_N;
   private final WorldBorder field_175728_M;
   int[] field_72994_J;

   protected World(ISaveHandler p_i45749_1_, WorldInfo p_i45749_2_, WorldProvider p_i45749_3_, Profiler p_i45749_4_, boolean p_i45749_5_) {
      this.field_73021_x = Lists.newArrayList(this.field_184152_t);
      this.field_83016_L = Calendar.getInstance();
      this.field_96442_D = new Scoreboard();
      this.field_72985_G = true;
      this.field_72992_H = true;
      this.field_72994_J = new int['\u8000'];
      this.field_73019_z = p_i45749_1_;
      this.field_72984_F = p_i45749_4_;
      this.field_72986_A = p_i45749_2_;
      this.field_73011_w = p_i45749_3_;
      this.field_72995_K = p_i45749_5_;
      this.field_175728_M = p_i45749_3_.func_177501_r();
   }

   public World func_175643_b() {
      return this;
   }

   public Biome func_180494_b(final BlockPos p_180494_1_) {
      if (this.func_175667_e(p_180494_1_)) {
         Chunk chunk = this.func_175726_f(p_180494_1_);

         try {
            return chunk.func_177411_a(p_180494_1_, this.field_73011_w.func_177499_m());
         } catch (Throwable throwable) {
            CrashReport crashreport = CrashReport.func_85055_a(throwable, "Getting biome");
            CrashReportCategory crashreportcategory = crashreport.func_85058_a("Coordinates of biome request");
            crashreportcategory.func_189529_a("Location", new ICrashReportDetail<String>() {
               public String call() throws Exception {
                  return CrashReportCategory.func_180522_a(p_180494_1_);
               }
            });
            throw new ReportedException(crashreport);
         }
      } else {
         return this.field_73011_w.func_177499_m().func_180300_a(p_180494_1_, Biomes.field_76772_c);
      }
   }

   public BiomeProvider func_72959_q() {
      return this.field_73011_w.func_177499_m();
   }

   protected abstract IChunkProvider func_72970_h();

   public void func_72963_a(WorldSettings p_72963_1_) {
      this.field_72986_A.func_76091_d(true);
   }

   @Nullable
   public MinecraftServer func_73046_m() {
      return null;
   }

   @SideOnly(Side.CLIENT)
   public void func_72974_f() {
      this.func_175652_B(new BlockPos(8, 64, 8));
   }

   public IBlockState func_184141_c(BlockPos p_184141_1_) {
      BlockPos blockpos;
      for(blockpos = new BlockPos(p_184141_1_.func_177958_n(), this.func_181545_F(), p_184141_1_.func_177952_p()); !this.func_175623_d(blockpos.func_177984_a()); blockpos = blockpos.func_177984_a()) {
         ;
      }

      return this.func_180495_p(blockpos);
   }

   public boolean func_175701_a(BlockPos p_175701_1_) {
      return !this.func_189509_E(p_175701_1_) && p_175701_1_.func_177958_n() >= -30000000 && p_175701_1_.func_177952_p() >= -30000000 && p_175701_1_.func_177958_n() < 30000000 && p_175701_1_.func_177952_p() < 30000000;
   }

   public boolean func_189509_E(BlockPos p_189509_1_) {
      return p_189509_1_.func_177956_o() < 0 || p_189509_1_.func_177956_o() >= 256;
   }

   public boolean func_175623_d(BlockPos p_175623_1_) {
      return this.func_180495_p(p_175623_1_).func_185904_a() == Material.field_151579_a;
   }

   public boolean func_175667_e(BlockPos p_175667_1_) {
      return this.func_175668_a(p_175667_1_, true);
   }

   public boolean func_175668_a(BlockPos p_175668_1_, boolean p_175668_2_) {
      return this.func_175680_a(p_175668_1_.func_177958_n() >> 4, p_175668_1_.func_177952_p() >> 4, p_175668_2_);
   }

   public boolean func_175697_a(BlockPos p_175697_1_, int p_175697_2_) {
      return this.func_175648_a(p_175697_1_, p_175697_2_, true);
   }

   public boolean func_175648_a(BlockPos p_175648_1_, int p_175648_2_, boolean p_175648_3_) {
      return this.func_175663_a(p_175648_1_.func_177958_n() - p_175648_2_, p_175648_1_.func_177956_o() - p_175648_2_, p_175648_1_.func_177952_p() - p_175648_2_, p_175648_1_.func_177958_n() + p_175648_2_, p_175648_1_.func_177956_o() + p_175648_2_, p_175648_1_.func_177952_p() + p_175648_2_, p_175648_3_);
   }

   public boolean func_175707_a(BlockPos p_175707_1_, BlockPos p_175707_2_) {
      return this.func_175706_a(p_175707_1_, p_175707_2_, true);
   }

   public boolean func_175706_a(BlockPos p_175706_1_, BlockPos p_175706_2_, boolean p_175706_3_) {
      return this.func_175663_a(p_175706_1_.func_177958_n(), p_175706_1_.func_177956_o(), p_175706_1_.func_177952_p(), p_175706_2_.func_177958_n(), p_175706_2_.func_177956_o(), p_175706_2_.func_177952_p(), p_175706_3_);
   }

   public boolean func_175711_a(StructureBoundingBox p_175711_1_) {
      return this.func_175639_b(p_175711_1_, true);
   }

   public boolean func_175639_b(StructureBoundingBox p_175639_1_, boolean p_175639_2_) {
      return this.func_175663_a(p_175639_1_.field_78897_a, p_175639_1_.field_78895_b, p_175639_1_.field_78896_c, p_175639_1_.field_78893_d, p_175639_1_.field_78894_e, p_175639_1_.field_78892_f, p_175639_2_);
   }

   private boolean func_175663_a(int p_175663_1_, int p_175663_2_, int p_175663_3_, int p_175663_4_, int p_175663_5_, int p_175663_6_, boolean p_175663_7_) {
      if (p_175663_5_ >= 0 && p_175663_2_ < 256) {
         p_175663_1_ = p_175663_1_ >> 4;
         p_175663_3_ = p_175663_3_ >> 4;
         p_175663_4_ = p_175663_4_ >> 4;
         p_175663_6_ = p_175663_6_ >> 4;

         for(int i = p_175663_1_; i <= p_175663_4_; ++i) {
            for(int j = p_175663_3_; j <= p_175663_6_; ++j) {
               if (!this.func_175680_a(i, j, p_175663_7_)) {
                  return false;
               }
            }
         }

         return true;
      } else {
         return false;
      }
   }

   protected abstract boolean func_175680_a(int p_175680_1_, int p_175680_2_, boolean p_175680_3_);

   public Chunk func_175726_f(BlockPos p_175726_1_) {
      return this.func_72964_e(p_175726_1_.func_177958_n() >> 4, p_175726_1_.func_177952_p() >> 4);
   }

   public Chunk func_72964_e(int p_72964_1_, int p_72964_2_) {
      return this.field_73020_y.func_186025_d(p_72964_1_, p_72964_2_);
   }

   public boolean func_190526_b(int p_190526_1_, int p_190526_2_) {
      return this.func_175680_a(p_190526_1_, p_190526_2_, false) ? true : this.field_73020_y.func_191062_e(p_190526_1_, p_190526_2_);
   }

   public boolean func_180501_a(BlockPos p_180501_1_, IBlockState p_180501_2_, int p_180501_3_) {
      if (this.func_189509_E(p_180501_1_)) {
         return false;
      } else if (!this.field_72995_K && this.field_72986_A.func_76067_t() == WorldType.field_180272_g) {
         return false;
      } else {
         Chunk chunk = this.func_175726_f(p_180501_1_);
         Block block = p_180501_2_.func_177230_c();
         IBlockState iblockstate = chunk.func_177436_a(p_180501_1_, p_180501_2_);
         if (iblockstate == null) {
            return false;
         } else {
            if (p_180501_2_.func_185891_c() != iblockstate.func_185891_c() || p_180501_2_.func_185906_d() != iblockstate.func_185906_d()) {
               this.field_72984_F.func_76320_a("checkLight");
               this.func_175664_x(p_180501_1_);
               this.field_72984_F.func_76319_b();
            }

            if ((p_180501_3_ & 2) != 0 && (!this.field_72995_K || (p_180501_3_ & 4) == 0) && chunk.func_150802_k()) {
               this.func_184138_a(p_180501_1_, iblockstate, p_180501_2_, p_180501_3_);
            }

            if (!this.field_72995_K && (p_180501_3_ & 1) != 0) {
               this.func_175722_b(p_180501_1_, iblockstate.func_177230_c(), true);
               if (p_180501_2_.func_185912_n()) {
                  this.func_175666_e(p_180501_1_, block);
               }
            } else if (!this.field_72995_K && (p_180501_3_ & 16) == 0) {
               this.func_190522_c(p_180501_1_, block);
            }

            return true;
         }
      }
   }

   public boolean func_175698_g(BlockPos p_175698_1_) {
      return this.func_180501_a(p_175698_1_, Blocks.field_150350_a.func_176223_P(), 3);
   }

   public boolean func_175655_b(BlockPos p_175655_1_, boolean p_175655_2_) {
      IBlockState iblockstate = this.func_180495_p(p_175655_1_);
      Block block = iblockstate.func_177230_c();
      if (iblockstate.func_185904_a() == Material.field_151579_a) {
         return false;
      } else {
         this.func_175718_b(2001, p_175655_1_, Block.func_176210_f(iblockstate));
         if (p_175655_2_) {
            block.func_176226_b(this, p_175655_1_, iblockstate, 0);
         }

         return this.func_180501_a(p_175655_1_, Blocks.field_150350_a.func_176223_P(), 3);
      }
   }

   public boolean func_175656_a(BlockPos p_175656_1_, IBlockState p_175656_2_) {
      return this.func_180501_a(p_175656_1_, p_175656_2_, 3);
   }

   public void func_184138_a(BlockPos p_184138_1_, IBlockState p_184138_2_, IBlockState p_184138_3_, int p_184138_4_) {
      for(int i = 0; i < this.field_73021_x.size(); ++i) {
         ((IWorldEventListener)this.field_73021_x.get(i)).func_184376_a(this, p_184138_1_, p_184138_2_, p_184138_3_, p_184138_4_);
      }

   }

   public void func_175722_b(BlockPos p_175722_1_, Block p_175722_2_, boolean p_175722_3_) {
      if (this.field_72986_A.func_76067_t() != WorldType.field_180272_g) {
         this.func_175685_c(p_175722_1_, p_175722_2_, p_175722_3_);
      }

   }

   public void func_72975_g(int p_72975_1_, int p_72975_2_, int p_72975_3_, int p_72975_4_) {
      if (p_72975_3_ > p_72975_4_) {
         int i = p_72975_4_;
         p_72975_4_ = p_72975_3_;
         p_72975_3_ = i;
      }

      if (this.field_73011_w.func_191066_m()) {
         for(int j = p_72975_3_; j <= p_72975_4_; ++j) {
            this.func_180500_c(EnumSkyBlock.SKY, new BlockPos(p_72975_1_, j, p_72975_2_));
         }
      }

      this.func_147458_c(p_72975_1_, p_72975_3_, p_72975_2_, p_72975_1_, p_72975_4_, p_72975_2_);
   }

   public void func_175704_b(BlockPos p_175704_1_, BlockPos p_175704_2_) {
      this.func_147458_c(p_175704_1_.func_177958_n(), p_175704_1_.func_177956_o(), p_175704_1_.func_177952_p(), p_175704_2_.func_177958_n(), p_175704_2_.func_177956_o(), p_175704_2_.func_177952_p());
   }

   public void func_147458_c(int p_147458_1_, int p_147458_2_, int p_147458_3_, int p_147458_4_, int p_147458_5_, int p_147458_6_) {
      for(int i = 0; i < this.field_73021_x.size(); ++i) {
         ((IWorldEventListener)this.field_73021_x.get(i)).func_147585_a(p_147458_1_, p_147458_2_, p_147458_3_, p_147458_4_, p_147458_5_, p_147458_6_);
      }

   }

   public void func_190522_c(BlockPos p_190522_1_, Block p_190522_2_) {
      this.func_190529_b(p_190522_1_.func_177976_e(), p_190522_2_, p_190522_1_);
      this.func_190529_b(p_190522_1_.func_177974_f(), p_190522_2_, p_190522_1_);
      this.func_190529_b(p_190522_1_.func_177977_b(), p_190522_2_, p_190522_1_);
      this.func_190529_b(p_190522_1_.func_177984_a(), p_190522_2_, p_190522_1_);
      this.func_190529_b(p_190522_1_.func_177978_c(), p_190522_2_, p_190522_1_);
      this.func_190529_b(p_190522_1_.func_177968_d(), p_190522_2_, p_190522_1_);
   }

   public void func_175685_c(BlockPos p_175685_1_, Block p_175685_2_, boolean p_175685_3_) {
      this.func_190524_a(p_175685_1_.func_177976_e(), p_175685_2_, p_175685_1_);
      this.func_190524_a(p_175685_1_.func_177974_f(), p_175685_2_, p_175685_1_);
      this.func_190524_a(p_175685_1_.func_177977_b(), p_175685_2_, p_175685_1_);
      this.func_190524_a(p_175685_1_.func_177984_a(), p_175685_2_, p_175685_1_);
      this.func_190524_a(p_175685_1_.func_177978_c(), p_175685_2_, p_175685_1_);
      this.func_190524_a(p_175685_1_.func_177968_d(), p_175685_2_, p_175685_1_);
      if (p_175685_3_) {
         this.func_190522_c(p_175685_1_, p_175685_2_);
      }

   }

   public void func_175695_a(BlockPos p_175695_1_, Block p_175695_2_, EnumFacing p_175695_3_) {
      if (p_175695_3_ != EnumFacing.WEST) {
         this.func_190524_a(p_175695_1_.func_177976_e(), p_175695_2_, p_175695_1_);
      }

      if (p_175695_3_ != EnumFacing.EAST) {
         this.func_190524_a(p_175695_1_.func_177974_f(), p_175695_2_, p_175695_1_);
      }

      if (p_175695_3_ != EnumFacing.DOWN) {
         this.func_190524_a(p_175695_1_.func_177977_b(), p_175695_2_, p_175695_1_);
      }

      if (p_175695_3_ != EnumFacing.UP) {
         this.func_190524_a(p_175695_1_.func_177984_a(), p_175695_2_, p_175695_1_);
      }

      if (p_175695_3_ != EnumFacing.NORTH) {
         this.func_190524_a(p_175695_1_.func_177978_c(), p_175695_2_, p_175695_1_);
      }

      if (p_175695_3_ != EnumFacing.SOUTH) {
         this.func_190524_a(p_175695_1_.func_177968_d(), p_175695_2_, p_175695_1_);
      }

   }

   public void func_190524_a(BlockPos p_190524_1_, final Block p_190524_2_, BlockPos p_190524_3_) {
      if (!this.field_72995_K) {
         IBlockState iblockstate = this.func_180495_p(p_190524_1_);

         try {
            iblockstate.func_189546_a(this, p_190524_1_, p_190524_2_, p_190524_3_);
         } catch (Throwable throwable) {
            CrashReport crashreport = CrashReport.func_85055_a(throwable, "Exception while updating neighbours");
            CrashReportCategory crashreportcategory = crashreport.func_85058_a("Block being updated");
            crashreportcategory.func_189529_a("Source block type", new ICrashReportDetail<String>() {
               public String call() throws Exception {
                  try {
                     return String.format("ID #%d (%s // %s)", Block.func_149682_b(p_190524_2_), p_190524_2_.func_149739_a(), p_190524_2_.getClass().getCanonicalName());
                  } catch (Throwable var2) {
                     return "ID #" + Block.func_149682_b(p_190524_2_);
                  }
               }
            });
            CrashReportCategory.func_175750_a(crashreportcategory, p_190524_1_, iblockstate);
            throw new ReportedException(crashreport);
         }
      }
   }

   public void func_190529_b(BlockPos p_190529_1_, final Block p_190529_2_, BlockPos p_190529_3_) {
      if (!this.field_72995_K) {
         IBlockState iblockstate = this.func_180495_p(p_190529_1_);
         if (iblockstate.func_177230_c() == Blocks.field_190976_dk) {
            try {
               ((BlockObserver)iblockstate.func_177230_c()).func_190962_b(iblockstate, this, p_190529_1_, p_190529_2_, p_190529_3_);
            } catch (Throwable throwable) {
               CrashReport crashreport = CrashReport.func_85055_a(throwable, "Exception while updating neighbours");
               CrashReportCategory crashreportcategory = crashreport.func_85058_a("Block being updated");
               crashreportcategory.func_189529_a("Source block type", new ICrashReportDetail<String>() {
                  public String call() throws Exception {
                     try {
                        return String.format("ID #%d (%s // %s)", Block.func_149682_b(p_190529_2_), p_190529_2_.func_149739_a(), p_190529_2_.getClass().getCanonicalName());
                     } catch (Throwable var2) {
                        return "ID #" + Block.func_149682_b(p_190529_2_);
                     }
                  }
               });
               CrashReportCategory.func_175750_a(crashreportcategory, p_190529_1_, iblockstate);
               throw new ReportedException(crashreport);
            }
         }
      }
   }

   public boolean func_175691_a(BlockPos p_175691_1_, Block p_175691_2_) {
      return false;
   }

   public boolean func_175678_i(BlockPos p_175678_1_) {
      return this.func_175726_f(p_175678_1_).func_177444_d(p_175678_1_);
   }

   public boolean func_175710_j(BlockPos p_175710_1_) {
      if (p_175710_1_.func_177956_o() >= this.func_181545_F()) {
         return this.func_175678_i(p_175710_1_);
      } else {
         BlockPos blockpos = new BlockPos(p_175710_1_.func_177958_n(), this.func_181545_F(), p_175710_1_.func_177952_p());
         if (!this.func_175678_i(blockpos)) {
            return false;
         } else {
            for(BlockPos blockpos1 = blockpos.func_177977_b(); blockpos1.func_177956_o() > p_175710_1_.func_177956_o(); blockpos1 = blockpos1.func_177977_b()) {
               IBlockState iblockstate = this.func_180495_p(blockpos1);
               if (iblockstate.func_185891_c() > 0 && !iblockstate.func_185904_a().func_76224_d()) {
                  return false;
               }
            }

            return true;
         }
      }
   }

   public int func_175699_k(BlockPos p_175699_1_) {
      if (p_175699_1_.func_177956_o() < 0) {
         return 0;
      } else {
         if (p_175699_1_.func_177956_o() >= 256) {
            p_175699_1_ = new BlockPos(p_175699_1_.func_177958_n(), 255, p_175699_1_.func_177952_p());
         }

         return this.func_175726_f(p_175699_1_).func_177443_a(p_175699_1_, 0);
      }
   }

   public int func_175671_l(BlockPos p_175671_1_) {
      return this.func_175721_c(p_175671_1_, true);
   }

   public int func_175721_c(BlockPos p_175721_1_, boolean p_175721_2_) {
      if (p_175721_1_.func_177958_n() >= -30000000 && p_175721_1_.func_177952_p() >= -30000000 && p_175721_1_.func_177958_n() < 30000000 && p_175721_1_.func_177952_p() < 30000000) {
         if (p_175721_2_ && this.func_180495_p(p_175721_1_).func_185916_f()) {
            int i1 = this.func_175721_c(p_175721_1_.func_177984_a(), false);
            int i = this.func_175721_c(p_175721_1_.func_177974_f(), false);
            int j = this.func_175721_c(p_175721_1_.func_177976_e(), false);
            int k = this.func_175721_c(p_175721_1_.func_177968_d(), false);
            int l = this.func_175721_c(p_175721_1_.func_177978_c(), false);
            if (i > i1) {
               i1 = i;
            }

            if (j > i1) {
               i1 = j;
            }

            if (k > i1) {
               i1 = k;
            }

            if (l > i1) {
               i1 = l;
            }

            return i1;
         } else if (p_175721_1_.func_177956_o() < 0) {
            return 0;
         } else {
            if (p_175721_1_.func_177956_o() >= 256) {
               p_175721_1_ = new BlockPos(p_175721_1_.func_177958_n(), 255, p_175721_1_.func_177952_p());
            }

            Chunk chunk = this.func_175726_f(p_175721_1_);
            return chunk.func_177443_a(p_175721_1_, this.field_73008_k);
         }
      } else {
         return 15;
      }
   }

   public BlockPos func_175645_m(BlockPos p_175645_1_) {
      return new BlockPos(p_175645_1_.func_177958_n(), this.func_189649_b(p_175645_1_.func_177958_n(), p_175645_1_.func_177952_p()), p_175645_1_.func_177952_p());
   }

   public int func_189649_b(int p_189649_1_, int p_189649_2_) {
      int i;
      if (p_189649_1_ >= -30000000 && p_189649_2_ >= -30000000 && p_189649_1_ < 30000000 && p_189649_2_ < 30000000) {
         if (this.func_175680_a(p_189649_1_ >> 4, p_189649_2_ >> 4, true)) {
            i = this.func_72964_e(p_189649_1_ >> 4, p_189649_2_ >> 4).func_76611_b(p_189649_1_ & 15, p_189649_2_ & 15);
         } else {
            i = 0;
         }
      } else {
         i = this.func_181545_F() + 1;
      }

      return i;
   }

   @Deprecated
   public int func_82734_g(int p_82734_1_, int p_82734_2_) {
      if (p_82734_1_ >= -30000000 && p_82734_2_ >= -30000000 && p_82734_1_ < 30000000 && p_82734_2_ < 30000000) {
         if (!this.func_175680_a(p_82734_1_ >> 4, p_82734_2_ >> 4, true)) {
            return 0;
         } else {
            Chunk chunk = this.func_72964_e(p_82734_1_ >> 4, p_82734_2_ >> 4);
            return chunk.func_177442_v();
         }
      } else {
         return this.func_181545_F() + 1;
      }
   }

   @SideOnly(Side.CLIENT)
   public int func_175705_a(EnumSkyBlock p_175705_1_, BlockPos p_175705_2_) {
      if (!this.field_73011_w.func_191066_m() && p_175705_1_ == EnumSkyBlock.SKY) {
         return 0;
      } else {
         if (p_175705_2_.func_177956_o() < 0) {
            p_175705_2_ = new BlockPos(p_175705_2_.func_177958_n(), 0, p_175705_2_.func_177952_p());
         }

         if (!this.func_175701_a(p_175705_2_)) {
            return p_175705_1_.field_77198_c;
         } else if (!this.func_175667_e(p_175705_2_)) {
            return p_175705_1_.field_77198_c;
         } else if (this.func_180495_p(p_175705_2_).func_185916_f()) {
            int i1 = this.func_175642_b(p_175705_1_, p_175705_2_.func_177984_a());
            int i = this.func_175642_b(p_175705_1_, p_175705_2_.func_177974_f());
            int j = this.func_175642_b(p_175705_1_, p_175705_2_.func_177976_e());
            int k = this.func_175642_b(p_175705_1_, p_175705_2_.func_177968_d());
            int l = this.func_175642_b(p_175705_1_, p_175705_2_.func_177978_c());
            if (i > i1) {
               i1 = i;
            }

            if (j > i1) {
               i1 = j;
            }

            if (k > i1) {
               i1 = k;
            }

            if (l > i1) {
               i1 = l;
            }

            return i1;
         } else {
            Chunk chunk = this.func_175726_f(p_175705_2_);
            return chunk.func_177413_a(p_175705_1_, p_175705_2_);
         }
      }
   }

   public int func_175642_b(EnumSkyBlock p_175642_1_, BlockPos p_175642_2_) {
      if (p_175642_2_.func_177956_o() < 0) {
         p_175642_2_ = new BlockPos(p_175642_2_.func_177958_n(), 0, p_175642_2_.func_177952_p());
      }

      if (!this.func_175701_a(p_175642_2_)) {
         return p_175642_1_.field_77198_c;
      } else if (!this.func_175667_e(p_175642_2_)) {
         return p_175642_1_.field_77198_c;
      } else {
         Chunk chunk = this.func_175726_f(p_175642_2_);
         return chunk.func_177413_a(p_175642_1_, p_175642_2_);
      }
   }

   public void func_175653_a(EnumSkyBlock p_175653_1_, BlockPos p_175653_2_, int p_175653_3_) {
      if (this.func_175701_a(p_175653_2_)) {
         if (this.func_175667_e(p_175653_2_)) {
            Chunk chunk = this.func_175726_f(p_175653_2_);
            chunk.func_177431_a(p_175653_1_, p_175653_2_, p_175653_3_);
            this.func_175679_n(p_175653_2_);
         }
      }
   }

   public void func_175679_n(BlockPos p_175679_1_) {
      for(int i = 0; i < this.field_73021_x.size(); ++i) {
         ((IWorldEventListener)this.field_73021_x.get(i)).func_174959_b(p_175679_1_);
      }

   }

   @SideOnly(Side.CLIENT)
   public int func_175626_b(BlockPos p_175626_1_, int p_175626_2_) {
      int i = this.func_175705_a(EnumSkyBlock.SKY, p_175626_1_);
      int j = this.func_175705_a(EnumSkyBlock.BLOCK, p_175626_1_);
      if (j < p_175626_2_) {
         j = p_175626_2_;
      }

      return i << 20 | j << 4;
   }

   public float func_175724_o(BlockPos p_175724_1_) {
      return this.field_73011_w.func_177497_p()[this.func_175671_l(p_175724_1_)];
   }

   public IBlockState func_180495_p(BlockPos p_180495_1_) {
      if (this.func_189509_E(p_180495_1_)) {
         return Blocks.field_150350_a.func_176223_P();
      } else {
         Chunk chunk = this.func_175726_f(p_180495_1_);
         return chunk.func_177435_g(p_180495_1_);
      }
   }

   public boolean func_72935_r() {
      return this.field_73008_k < 4;
   }

   @Nullable
   public RayTraceResult func_72933_a(Vec3d p_72933_1_, Vec3d p_72933_2_) {
      return this.func_147447_a(p_72933_1_, p_72933_2_, false, false, false);
   }

   @Nullable
   public RayTraceResult func_72901_a(Vec3d p_72901_1_, Vec3d p_72901_2_, boolean p_72901_3_) {
      return this.func_147447_a(p_72901_1_, p_72901_2_, p_72901_3_, false, false);
   }

   @Nullable
   public RayTraceResult func_147447_a(Vec3d p_147447_1_, Vec3d p_147447_2_, boolean p_147447_3_, boolean p_147447_4_, boolean p_147447_5_) {
      if (!Double.isNaN(p_147447_1_.field_72450_a) && !Double.isNaN(p_147447_1_.field_72448_b) && !Double.isNaN(p_147447_1_.field_72449_c)) {
         if (!Double.isNaN(p_147447_2_.field_72450_a) && !Double.isNaN(p_147447_2_.field_72448_b) && !Double.isNaN(p_147447_2_.field_72449_c)) {
            int i = MathHelper.func_76128_c(p_147447_2_.field_72450_a);
            int j = MathHelper.func_76128_c(p_147447_2_.field_72448_b);
            int k = MathHelper.func_76128_c(p_147447_2_.field_72449_c);
            int l = MathHelper.func_76128_c(p_147447_1_.field_72450_a);
            int i1 = MathHelper.func_76128_c(p_147447_1_.field_72448_b);
            int j1 = MathHelper.func_76128_c(p_147447_1_.field_72449_c);
            BlockPos blockpos = new BlockPos(l, i1, j1);
            IBlockState iblockstate = this.func_180495_p(blockpos);
            Block block = iblockstate.func_177230_c();
            if ((!p_147447_4_ || iblockstate.func_185890_d(this, blockpos) != Block.field_185506_k) && block.func_176209_a(iblockstate, p_147447_3_)) {
               RayTraceResult raytraceresult = iblockstate.func_185910_a(this, blockpos, p_147447_1_, p_147447_2_);
               if (raytraceresult != null) {
                  return raytraceresult;
               }
            }

            RayTraceResult raytraceresult2 = null;
            int k1 = 200;

            while(k1-- >= 0) {
               if (Double.isNaN(p_147447_1_.field_72450_a) || Double.isNaN(p_147447_1_.field_72448_b) || Double.isNaN(p_147447_1_.field_72449_c)) {
                  return null;
               }

               if (l == i && i1 == j && j1 == k) {
                  return p_147447_5_ ? raytraceresult2 : null;
               }

               boolean flag2 = true;
               boolean flag = true;
               boolean flag1 = true;
               double d0 = 999.0D;
               double d1 = 999.0D;
               double d2 = 999.0D;
               if (i > l) {
                  d0 = (double)l + 1.0D;
               } else if (i < l) {
                  d0 = (double)l + 0.0D;
               } else {
                  flag2 = false;
               }

               if (j > i1) {
                  d1 = (double)i1 + 1.0D;
               } else if (j < i1) {
                  d1 = (double)i1 + 0.0D;
               } else {
                  flag = false;
               }

               if (k > j1) {
                  d2 = (double)j1 + 1.0D;
               } else if (k < j1) {
                  d2 = (double)j1 + 0.0D;
               } else {
                  flag1 = false;
               }

               double d3 = 999.0D;
               double d4 = 999.0D;
               double d5 = 999.0D;
               double d6 = p_147447_2_.field_72450_a - p_147447_1_.field_72450_a;
               double d7 = p_147447_2_.field_72448_b - p_147447_1_.field_72448_b;
               double d8 = p_147447_2_.field_72449_c - p_147447_1_.field_72449_c;
               if (flag2) {
                  d3 = (d0 - p_147447_1_.field_72450_a) / d6;
               }

               if (flag) {
                  d4 = (d1 - p_147447_1_.field_72448_b) / d7;
               }

               if (flag1) {
                  d5 = (d2 - p_147447_1_.field_72449_c) / d8;
               }

               if (d3 == -0.0D) {
                  d3 = -1.0E-4D;
               }

               if (d4 == -0.0D) {
                  d4 = -1.0E-4D;
               }

               if (d5 == -0.0D) {
                  d5 = -1.0E-4D;
               }

               EnumFacing enumfacing;
               if (d3 < d4 && d3 < d5) {
                  enumfacing = i > l ? EnumFacing.WEST : EnumFacing.EAST;
                  p_147447_1_ = new Vec3d(d0, p_147447_1_.field_72448_b + d7 * d3, p_147447_1_.field_72449_c + d8 * d3);
               } else if (d4 < d5) {
                  enumfacing = j > i1 ? EnumFacing.DOWN : EnumFacing.UP;
                  p_147447_1_ = new Vec3d(p_147447_1_.field_72450_a + d6 * d4, d1, p_147447_1_.field_72449_c + d8 * d4);
               } else {
                  enumfacing = k > j1 ? EnumFacing.NORTH : EnumFacing.SOUTH;
                  p_147447_1_ = new Vec3d(p_147447_1_.field_72450_a + d6 * d5, p_147447_1_.field_72448_b + d7 * d5, d2);
               }

               l = MathHelper.func_76128_c(p_147447_1_.field_72450_a) - (enumfacing == EnumFacing.EAST ? 1 : 0);
               i1 = MathHelper.func_76128_c(p_147447_1_.field_72448_b) - (enumfacing == EnumFacing.UP ? 1 : 0);
               j1 = MathHelper.func_76128_c(p_147447_1_.field_72449_c) - (enumfacing == EnumFacing.SOUTH ? 1 : 0);
               blockpos = new BlockPos(l, i1, j1);
               IBlockState iblockstate1 = this.func_180495_p(blockpos);
               Block block1 = iblockstate1.func_177230_c();
               if (!p_147447_4_ || iblockstate1.func_185904_a() == Material.field_151567_E || iblockstate1.func_185890_d(this, blockpos) != Block.field_185506_k) {
                  if (block1.func_176209_a(iblockstate1, p_147447_3_)) {
                     RayTraceResult raytraceresult1 = iblockstate1.func_185910_a(this, blockpos, p_147447_1_, p_147447_2_);
                     if (raytraceresult1 != null) {
                        return raytraceresult1;
                     }
                  } else {
                     raytraceresult2 = new RayTraceResult(RayTraceResult.Type.MISS, p_147447_1_, enumfacing, blockpos);
                  }
               }
            }

            return p_147447_5_ ? raytraceresult2 : null;
         } else {
            return null;
         }
      } else {
         return null;
      }
   }

   public void func_184133_a(@Nullable EntityPlayer p_184133_1_, BlockPos p_184133_2_, SoundEvent p_184133_3_, SoundCategory p_184133_4_, float p_184133_5_, float p_184133_6_) {
      this.func_184148_a(p_184133_1_, (double)p_184133_2_.func_177958_n() + 0.5D, (double)p_184133_2_.func_177956_o() + 0.5D, (double)p_184133_2_.func_177952_p() + 0.5D, p_184133_3_, p_184133_4_, p_184133_5_, p_184133_6_);
   }

   public void func_184148_a(@Nullable EntityPlayer p_184148_1_, double p_184148_2_, double p_184148_4_, double p_184148_6_, SoundEvent p_184148_8_, SoundCategory p_184148_9_, float p_184148_10_, float p_184148_11_) {
      for(int i = 0; i < this.field_73021_x.size(); ++i) {
         ((IWorldEventListener)this.field_73021_x.get(i)).func_184375_a(p_184148_1_, p_184148_8_, p_184148_9_, p_184148_2_, p_184148_4_, p_184148_6_, p_184148_10_, p_184148_11_);
      }

   }

   public void func_184134_a(double p_184134_1_, double p_184134_3_, double p_184134_5_, SoundEvent p_184134_7_, SoundCategory p_184134_8_, float p_184134_9_, float p_184134_10_, boolean p_184134_11_) {
   }

   public void func_184149_a(BlockPos p_184149_1_, @Nullable SoundEvent p_184149_2_) {
      for(int i = 0; i < this.field_73021_x.size(); ++i) {
         ((IWorldEventListener)this.field_73021_x.get(i)).func_184377_a(p_184149_2_, p_184149_1_);
      }

   }

   public void func_175688_a(EnumParticleTypes p_175688_1_, double p_175688_2_, double p_175688_4_, double p_175688_6_, double p_175688_8_, double p_175688_10_, double p_175688_12_, int... p_175688_14_) {
      this.func_175720_a(p_175688_1_.func_179348_c(), p_175688_1_.func_179344_e(), p_175688_2_, p_175688_4_, p_175688_6_, p_175688_8_, p_175688_10_, p_175688_12_, p_175688_14_);
   }

   public void func_190523_a(int p_190523_1_, double p_190523_2_, double p_190523_4_, double p_190523_6_, double p_190523_8_, double p_190523_10_, double p_190523_12_, int... p_190523_14_) {
      for(int i = 0; i < this.field_73021_x.size(); ++i) {
         ((IWorldEventListener)this.field_73021_x.get(i)).func_190570_a(p_190523_1_, false, true, p_190523_2_, p_190523_4_, p_190523_6_, p_190523_8_, p_190523_10_, p_190523_12_, p_190523_14_);
      }

   }

   @SideOnly(Side.CLIENT)
   public void func_175682_a(EnumParticleTypes p_175682_1_, boolean p_175682_2_, double p_175682_3_, double p_175682_5_, double p_175682_7_, double p_175682_9_, double p_175682_11_, double p_175682_13_, int... p_175682_15_) {
      this.func_175720_a(p_175682_1_.func_179348_c(), p_175682_1_.func_179344_e() || p_175682_2_, p_175682_3_, p_175682_5_, p_175682_7_, p_175682_9_, p_175682_11_, p_175682_13_, p_175682_15_);
   }

   private void func_175720_a(int p_175720_1_, boolean p_175720_2_, double p_175720_3_, double p_175720_5_, double p_175720_7_, double p_175720_9_, double p_175720_11_, double p_175720_13_, int... p_175720_15_) {
      for(int i = 0; i < this.field_73021_x.size(); ++i) {
         ((IWorldEventListener)this.field_73021_x.get(i)).func_180442_a(p_175720_1_, p_175720_2_, p_175720_3_, p_175720_5_, p_175720_7_, p_175720_9_, p_175720_11_, p_175720_13_, p_175720_15_);
      }

   }

   public boolean func_72942_c(Entity p_72942_1_) {
      this.field_73007_j.add(p_72942_1_);
      return true;
   }

   public boolean func_72838_d(Entity p_72838_1_) {
      int i = MathHelper.func_76128_c(p_72838_1_.field_70165_t / 16.0D);
      int j = MathHelper.func_76128_c(p_72838_1_.field_70161_v / 16.0D);
      boolean flag = p_72838_1_.field_98038_p;
      if (p_72838_1_ instanceof EntityPlayer) {
         flag = true;
      }

      if (!flag && !this.func_175680_a(i, j, false)) {
         return false;
      } else {
         if (p_72838_1_ instanceof EntityPlayer) {
            EntityPlayer entityplayer = (EntityPlayer)p_72838_1_;
            this.field_73010_i.add(entityplayer);
            this.func_72854_c();
         }

         this.func_72964_e(i, j).func_76612_a(p_72838_1_);
         this.field_72996_f.add(p_72838_1_);
         this.func_72923_a(p_72838_1_);
         return true;
      }
   }

   public void func_72923_a(Entity p_72923_1_) {
      for(int i = 0; i < this.field_73021_x.size(); ++i) {
         ((IWorldEventListener)this.field_73021_x.get(i)).func_72703_a(p_72923_1_);
      }

   }

   public void func_72847_b(Entity p_72847_1_) {
      for(int i = 0; i < this.field_73021_x.size(); ++i) {
         ((IWorldEventListener)this.field_73021_x.get(i)).func_72709_b(p_72847_1_);
      }

   }

   public void func_72900_e(Entity p_72900_1_) {
      if (p_72900_1_.func_184207_aI()) {
         p_72900_1_.func_184226_ay();
      }

      if (p_72900_1_.func_184218_aH()) {
         p_72900_1_.func_184210_p();
      }

      p_72900_1_.func_70106_y();
      if (p_72900_1_ instanceof EntityPlayer) {
         this.field_73010_i.remove(p_72900_1_);
         this.func_72854_c();
         this.func_72847_b(p_72900_1_);
      }

   }

   public void func_72973_f(Entity p_72973_1_) {
      p_72973_1_.func_184174_b(false);
      p_72973_1_.func_70106_y();
      if (p_72973_1_ instanceof EntityPlayer) {
         this.field_73010_i.remove(p_72973_1_);
         this.func_72854_c();
      }

      int i = p_72973_1_.field_70176_ah;
      int j = p_72973_1_.field_70164_aj;
      if (p_72973_1_.field_70175_ag && this.func_175680_a(i, j, true)) {
         this.func_72964_e(i, j).func_76622_b(p_72973_1_);
      }

      this.field_72996_f.remove(p_72973_1_);
      this.func_72847_b(p_72973_1_);
   }

   public void func_72954_a(IWorldEventListener p_72954_1_) {
      this.field_73021_x.add(p_72954_1_);
   }

   private boolean func_191504_a(@Nullable Entity p_191504_1_, AxisAlignedBB p_191504_2_, boolean p_191504_3_, @Nullable List<AxisAlignedBB> p_191504_4_) {
      int i = MathHelper.func_76128_c(p_191504_2_.field_72340_a) - 1;
      int j = MathHelper.func_76143_f(p_191504_2_.field_72336_d) + 1;
      int k = MathHelper.func_76128_c(p_191504_2_.field_72338_b) - 1;
      int l = MathHelper.func_76143_f(p_191504_2_.field_72337_e) + 1;
      int i1 = MathHelper.func_76128_c(p_191504_2_.field_72339_c) - 1;
      int j1 = MathHelper.func_76143_f(p_191504_2_.field_72334_f) + 1;
      WorldBorder worldborder = this.func_175723_af();
      boolean flag = p_191504_1_ != null && p_191504_1_.func_174832_aS();
      boolean flag1 = p_191504_1_ != null && this.func_191503_g(p_191504_1_);
      IBlockState iblockstate = Blocks.field_150348_b.func_176223_P();
      BlockPos.PooledMutableBlockPos blockpos$pooledmutableblockpos = BlockPos.PooledMutableBlockPos.func_185346_s();

      try {
         for(int k1 = i; k1 < j; ++k1) {
            for(int l1 = i1; l1 < j1; ++l1) {
               boolean flag2 = k1 == i || k1 == j - 1;
               boolean flag3 = l1 == i1 || l1 == j1 - 1;
               if ((!flag2 || !flag3) && this.func_175667_e(blockpos$pooledmutableblockpos.func_181079_c(k1, 64, l1))) {
                  for(int i2 = k; i2 < l; ++i2) {
                     if (!flag2 && !flag3 || i2 != l - 1) {
                        if (p_191504_3_) {
                           if (k1 < -30000000 || k1 >= 30000000 || l1 < -30000000 || l1 >= 30000000) {
                              boolean lvt_21_2_ = true;
                              return lvt_21_2_;
                           }
                        } else if (p_191504_1_ != null && flag == flag1) {
                           p_191504_1_.func_174821_h(!flag1);
                        }

                        blockpos$pooledmutableblockpos.func_181079_c(k1, i2, l1);
                        IBlockState iblockstate1;
                        if (!p_191504_3_ && !worldborder.func_177746_a(blockpos$pooledmutableblockpos) && flag1) {
                           iblockstate1 = iblockstate;
                        } else {
                           iblockstate1 = this.func_180495_p(blockpos$pooledmutableblockpos);
                        }

                        iblockstate1.func_185908_a(this, blockpos$pooledmutableblockpos, p_191504_2_, p_191504_4_, p_191504_1_, false);
                        if (p_191504_3_ && !p_191504_4_.isEmpty()) {
                           boolean flag5 = true;
                           return flag5;
                        }
                     }
                  }
               }
            }
         }
      } finally {
         blockpos$pooledmutableblockpos.func_185344_t();
      }

      return !p_191504_4_.isEmpty();
   }

   public List<AxisAlignedBB> func_184144_a(@Nullable Entity p_184144_1_, AxisAlignedBB p_184144_2_) {
      List<AxisAlignedBB> list = Lists.<AxisAlignedBB>newArrayList();
      this.func_191504_a(p_184144_1_, p_184144_2_, false, list);
      if (p_184144_1_ != null) {
         List<Entity> list1 = this.func_72839_b(p_184144_1_, p_184144_2_.func_186662_g(0.25D));

         for(int i = 0; i < list1.size(); ++i) {
            Entity entity = (Entity)list1.get(i);
            if (!p_184144_1_.func_184223_x(entity)) {
               AxisAlignedBB axisalignedbb = entity.func_70046_E();
               if (axisalignedbb != null && axisalignedbb.func_72326_a(p_184144_2_)) {
                  list.add(axisalignedbb);
               }

               axisalignedbb = p_184144_1_.func_70114_g(entity);
               if (axisalignedbb != null && axisalignedbb.func_72326_a(p_184144_2_)) {
                  list.add(axisalignedbb);
               }
            }
         }
      }

      return list;
   }

   @SideOnly(Side.CLIENT)
   public void func_72848_b(IWorldEventListener p_72848_1_) {
      this.field_73021_x.remove(p_72848_1_);
   }

   public boolean func_191503_g(Entity p_191503_1_) {
      double d0 = this.field_175728_M.func_177726_b();
      double d1 = this.field_175728_M.func_177736_c();
      double d2 = this.field_175728_M.func_177728_d();
      double d3 = this.field_175728_M.func_177733_e();
      if (p_191503_1_.func_174832_aS()) {
         ++d0;
         ++d1;
         --d2;
         --d3;
      } else {
         --d0;
         --d1;
         ++d2;
         ++d3;
      }

      return p_191503_1_.field_70165_t > d0 && p_191503_1_.field_70165_t < d2 && p_191503_1_.field_70161_v > d1 && p_191503_1_.field_70161_v < d3;
   }

   public boolean func_184143_b(AxisAlignedBB p_184143_1_) {
      return this.func_191504_a((Entity)null, p_184143_1_, true, Lists.newArrayList());
   }

   public int func_72967_a(float p_72967_1_) {
      float f = this.func_72826_c(p_72967_1_);
      float f1 = 1.0F - (MathHelper.func_76134_b(f * 6.2831855F) * 2.0F + 0.5F);
      f1 = MathHelper.func_76131_a(f1, 0.0F, 1.0F);
      f1 = 1.0F - f1;
      f1 = (float)((double)f1 * (1.0D - (double)(this.func_72867_j(p_72967_1_) * 5.0F) / 16.0D));
      f1 = (float)((double)f1 * (1.0D - (double)(this.func_72819_i(p_72967_1_) * 5.0F) / 16.0D));
      f1 = 1.0F - f1;
      return (int)(f1 * 11.0F);
   }

   @SideOnly(Side.CLIENT)
   public float func_72971_b(float p_72971_1_) {
      float f = this.func_72826_c(p_72971_1_);
      float f1 = 1.0F - (MathHelper.func_76134_b(f * 6.2831855F) * 2.0F + 0.2F);
      f1 = MathHelper.func_76131_a(f1, 0.0F, 1.0F);
      f1 = 1.0F - f1;
      f1 = (float)((double)f1 * (1.0D - (double)(this.func_72867_j(p_72971_1_) * 5.0F) / 16.0D));
      f1 = (float)((double)f1 * (1.0D - (double)(this.func_72819_i(p_72971_1_) * 5.0F) / 16.0D));
      return f1 * 0.8F + 0.2F;
   }

   @SideOnly(Side.CLIENT)
   public Vec3d func_72833_a(Entity p_72833_1_, float p_72833_2_) {
      float f = this.func_72826_c(p_72833_2_);
      float f1 = MathHelper.func_76134_b(f * 6.2831855F) * 2.0F + 0.5F;
      f1 = MathHelper.func_76131_a(f1, 0.0F, 1.0F);
      int i = MathHelper.func_76128_c(p_72833_1_.field_70165_t);
      int j = MathHelper.func_76128_c(p_72833_1_.field_70163_u);
      int k = MathHelper.func_76128_c(p_72833_1_.field_70161_v);
      BlockPos blockpos = new BlockPos(i, j, k);
      Biome biome = this.func_180494_b(blockpos);
      float f2 = biome.func_180626_a(blockpos);
      int l = biome.func_76731_a(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.func_72867_j(p_72833_2_);
      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.func_72819_i(p_72833_2_);
      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.field_73016_r > 0) {
         float f12 = (float)this.field_73016_r - p_72833_2_;
         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 Vec3d((double)f3, (double)f4, (double)f5);
   }

   public float func_72826_c(float p_72826_1_) {
      return this.field_73011_w.func_76563_a(this.field_72986_A.func_76073_f(), p_72826_1_);
   }

   @SideOnly(Side.CLIENT)
   public int func_72853_d() {
      return this.field_73011_w.func_76559_b(this.field_72986_A.func_76073_f());
   }

   public float func_130001_d() {
      return WorldProvider.field_111203_a[this.field_73011_w.func_76559_b(this.field_72986_A.func_76073_f())];
   }

   public float func_72929_e(float p_72929_1_) {
      float f = this.func_72826_c(p_72929_1_);
      return f * 6.2831855F;
   }

   @SideOnly(Side.CLIENT)
   public Vec3d func_72824_f(float p_72824_1_) {
      float f = this.func_72826_c(p_72824_1_);
      float f1 = MathHelper.func_76134_b(f * 6.2831855F) * 2.0F + 0.5F;
      f1 = MathHelper.func_76131_a(f1, 0.0F, 1.0F);
      float f2 = 1.0F;
      float f3 = 1.0F;
      float f4 = 1.0F;
      float f5 = this.func_72867_j(p_72824_1_);
      if (f5 > 0.0F) {
         float f6 = (f2 * 0.3F + f3 * 0.59F + f4 * 0.11F) * 0.6F;
         float f7 = 1.0F - f5 * 0.95F;
         f2 = f2 * f7 + f6 * (1.0F - f7);
         f3 = f3 * f7 + f6 * (1.0F - f7);
         f4 = f4 * f7 + f6 * (1.0F - f7);
      }

      f2 = f2 * (f1 * 0.9F + 0.1F);
      f3 = f3 * (f1 * 0.9F + 0.1F);
      f4 = f4 * (f1 * 0.85F + 0.15F);
      float f9 = this.func_72819_i(p_72824_1_);
      if (f9 > 0.0F) {
         float f10 = (f2 * 0.3F + f3 * 0.59F + f4 * 0.11F) * 0.2F;
         float f8 = 1.0F - f9 * 0.95F;
         f2 = f2 * f8 + f10 * (1.0F - f8);
         f3 = f3 * f8 + f10 * (1.0F - f8);
         f4 = f4 * f8 + f10 * (1.0F - f8);
      }

      return new Vec3d((double)f2, (double)f3, (double)f4);
   }

   @SideOnly(Side.CLIENT)
   public Vec3d func_72948_g(float p_72948_1_) {
      float f = this.func_72826_c(p_72948_1_);
      return this.field_73011_w.func_76562_b(f, p_72948_1_);
   }

   public BlockPos func_175725_q(BlockPos p_175725_1_) {
      return this.func_175726_f(p_175725_1_).func_177440_h(p_175725_1_);
   }

   public BlockPos func_175672_r(BlockPos p_175672_1_) {
      Chunk chunk = this.func_175726_f(p_175672_1_);

      BlockPos blockpos;
      BlockPos blockpos1;
      for(blockpos = new BlockPos(p_175672_1_.func_177958_n(), chunk.func_76625_h() + 16, p_175672_1_.func_177952_p()); blockpos.func_177956_o() >= 0; blockpos = blockpos1) {
         blockpos1 = blockpos.func_177977_b();
         Material material = chunk.func_177435_g(blockpos1).func_185904_a();
         if (material.func_76230_c() && material != Material.field_151584_j) {
            break;
         }
      }

      return blockpos;
   }

   @SideOnly(Side.CLIENT)
   public float func_72880_h(float p_72880_1_) {
      float f = this.func_72826_c(p_72880_1_);
      float f1 = 1.0F - (MathHelper.func_76134_b(f * 6.2831855F) * 2.0F + 0.25F);
      f1 = MathHelper.func_76131_a(f1, 0.0F, 1.0F);
      return f1 * f1 * 0.5F;
   }

   public boolean func_184145_b(BlockPos p_184145_1_, Block p_184145_2_) {
      return true;
   }

   public void func_175684_a(BlockPos p_175684_1_, Block p_175684_2_, int p_175684_3_) {
   }

   public void func_175654_a(BlockPos p_175654_1_, Block p_175654_2_, int p_175654_3_, int p_175654_4_) {
   }

   public void func_180497_b(BlockPos p_180497_1_, Block p_180497_2_, int p_180497_3_, int p_180497_4_) {
   }

   public void func_72939_s() {
      this.field_72984_F.func_76320_a("entities");
      this.field_72984_F.func_76320_a("global");

      for(int i = 0; i < this.field_73007_j.size(); ++i) {
         Entity entity = (Entity)this.field_73007_j.get(i);

         try {
            ++entity.field_70173_aa;
            entity.func_70071_h_();
         } catch (Throwable throwable2) {
            CrashReport crashreport = CrashReport.func_85055_a(throwable2, "Ticking entity");
            CrashReportCategory crashreportcategory = crashreport.func_85058_a("Entity being ticked");
            if (entity == null) {
               crashreportcategory.func_71507_a("Entity", "~~NULL~~");
            } else {
               entity.func_85029_a(crashreportcategory);
            }

            throw new ReportedException(crashreport);
         }

         if (entity.field_70128_L) {
            this.field_73007_j.remove(i--);
         }
      }

      this.field_72984_F.func_76318_c("remove");
      this.field_72996_f.removeAll(this.field_72997_g);

      for(int k = 0; k < this.field_72997_g.size(); ++k) {
         Entity entity1 = (Entity)this.field_72997_g.get(k);
         int j = entity1.field_70176_ah;
         int k1 = entity1.field_70164_aj;
         if (entity1.field_70175_ag && this.func_175680_a(j, k1, true)) {
            this.func_72964_e(j, k1).func_76622_b(entity1);
         }
      }

      for(int l = 0; l < this.field_72997_g.size(); ++l) {
         this.func_72847_b((Entity)this.field_72997_g.get(l));
      }

      this.field_72997_g.clear();
      this.func_184147_l();
      this.field_72984_F.func_76318_c("regular");

      for(int i1 = 0; i1 < this.field_72996_f.size(); ++i1) {
         Entity entity2 = (Entity)this.field_72996_f.get(i1);
         Entity entity3 = entity2.func_184187_bx();
         if (entity3 != null) {
            if (!entity3.field_70128_L && entity3.func_184196_w(entity2)) {
               continue;
            }

            entity2.func_184210_p();
         }

         this.field_72984_F.func_76320_a("tick");
         if (!entity2.field_70128_L && !(entity2 instanceof EntityPlayerMP)) {
            try {
               this.func_72870_g(entity2);
            } catch (Throwable throwable1) {
               CrashReport crashreport1 = CrashReport.func_85055_a(throwable1, "Ticking entity");
               CrashReportCategory crashreportcategory1 = crashreport1.func_85058_a("Entity being ticked");
               entity2.func_85029_a(crashreportcategory1);
               throw new ReportedException(crashreport1);
            }
         }

         this.field_72984_F.func_76319_b();
         this.field_72984_F.func_76320_a("remove");
         if (entity2.field_70128_L) {
            int l1 = entity2.field_70176_ah;
            int i2 = entity2.field_70164_aj;
            if (entity2.field_70175_ag && this.func_175680_a(l1, i2, true)) {
               this.func_72964_e(l1, i2).func_76622_b(entity2);
            }

            this.field_72996_f.remove(i1--);
            this.func_72847_b(entity2);
         }

         this.field_72984_F.func_76319_b();
      }

      this.field_72984_F.func_76318_c("blockEntities");
      this.field_147481_N = true;
      Iterator<TileEntity> iterator = this.field_175730_i.iterator();

      while(iterator.hasNext()) {
         TileEntity tileentity = (TileEntity)iterator.next();
         if (!tileentity.func_145837_r() && tileentity.func_145830_o()) {
            BlockPos blockpos = tileentity.func_174877_v();
            if (this.func_175667_e(blockpos) && this.field_175728_M.func_177746_a(blockpos)) {
               try {
                  this.field_72984_F.func_194340_a(() -> {
                     return String.valueOf(TileEntity.func_190559_a(p_194305_0_.getClass()));
                  });
                  ((ITickable)tileentity).func_73660_a();
                  this.field_72984_F.func_76319_b();
               } catch (Throwable throwable) {
                  CrashReport crashreport2 = CrashReport.func_85055_a(throwable, "Ticking block entity");
                  CrashReportCategory crashreportcategory2 = crashreport2.func_85058_a("Block entity being ticked");
                  tileentity.func_145828_a(crashreportcategory2);
                  throw new ReportedException(crashreport2);
               }
            }
         }

         if (tileentity.func_145837_r()) {
            iterator.remove();
            this.field_147482_g.remove(tileentity);
            if (this.func_175667_e(tileentity.func_174877_v())) {
               this.func_175726_f(tileentity.func_174877_v()).func_177425_e(tileentity.func_174877_v());
            }
         }
      }

      this.field_147481_N = false;
      if (!this.field_147483_b.isEmpty()) {
         this.field_175730_i.removeAll(this.field_147483_b);
         this.field_147482_g.removeAll(this.field_147483_b);
         this.field_147483_b.clear();
      }

      this.field_72984_F.func_76318_c("pendingBlockEntities");
      if (!this.field_147484_a.isEmpty()) {
         for(int j1 = 0; j1 < this.field_147484_a.size(); ++j1) {
            TileEntity tileentity1 = (TileEntity)this.field_147484_a.get(j1);
            if (!tileentity1.func_145837_r()) {
               if (!this.field_147482_g.contains(tileentity1)) {
                  this.func_175700_a(tileentity1);
               }

               if (this.func_175667_e(tileentity1.func_174877_v())) {
                  Chunk chunk = this.func_175726_f(tileentity1.func_174877_v());
                  IBlockState iblockstate = chunk.func_177435_g(tileentity1.func_174877_v());
                  chunk.func_177426_a(tileentity1.func_174877_v(), tileentity1);
                  this.func_184138_a(tileentity1.func_174877_v(), iblockstate, iblockstate, 3);
               }
            }
         }

         this.field_147484_a.clear();
      }

      this.field_72984_F.func_76319_b();
      this.field_72984_F.func_76319_b();
   }

   protected void func_184147_l() {
   }

   public boolean func_175700_a(TileEntity p_175700_1_) {
      boolean flag = this.field_147482_g.add(p_175700_1_);
      if (flag && p_175700_1_ instanceof ITickable) {
         this.field_175730_i.add(p_175700_1_);
      }

      if (this.field_72995_K) {
         BlockPos blockpos1 = p_175700_1_.func_174877_v();
         IBlockState iblockstate1 = this.func_180495_p(blockpos1);
         this.func_184138_a(blockpos1, iblockstate1, iblockstate1, 2);
      }

      return flag;
   }

   public void func_147448_a(Collection<TileEntity> p_147448_1_) {
      if (this.field_147481_N) {
         this.field_147484_a.addAll(p_147448_1_);
      } else {
         for(TileEntity tileentity2 : p_147448_1_) {
            this.func_175700_a(tileentity2);
         }
      }

   }

   public void func_72870_g(Entity p_72870_1_) {
      this.func_72866_a(p_72870_1_, true);
   }

   public void func_72866_a(Entity p_72866_1_, boolean p_72866_2_) {
      if (!(p_72866_1_ instanceof EntityPlayer)) {
         int j2 = MathHelper.func_76128_c(p_72866_1_.field_70165_t);
         int k2 = MathHelper.func_76128_c(p_72866_1_.field_70161_v);
         int l2 = 32;
         if (p_72866_2_ && !this.func_175663_a(j2 - 32, 0, k2 - 32, j2 + 32, 0, k2 + 32, true)) {
            return;
         }
      }

      p_72866_1_.field_70142_S = p_72866_1_.field_70165_t;
      p_72866_1_.field_70137_T = p_72866_1_.field_70163_u;
      p_72866_1_.field_70136_U = p_72866_1_.field_70161_v;
      p_72866_1_.field_70126_B = p_72866_1_.field_70177_z;
      p_72866_1_.field_70127_C = p_72866_1_.field_70125_A;
      if (p_72866_2_ && p_72866_1_.field_70175_ag) {
         ++p_72866_1_.field_70173_aa;
         if (p_72866_1_.func_184218_aH()) {
            p_72866_1_.func_70098_U();
         } else {
            p_72866_1_.func_70071_h_();
         }
      }

      this.field_72984_F.func_76320_a("chunkCheck");
      if (Double.isNaN(p_72866_1_.field_70165_t) || Double.isInfinite(p_72866_1_.field_70165_t)) {
         p_72866_1_.field_70165_t = p_72866_1_.field_70142_S;
      }

      if (Double.isNaN(p_72866_1_.field_70163_u) || Double.isInfinite(p_72866_1_.field_70163_u)) {
         p_72866_1_.field_70163_u = p_72866_1_.field_70137_T;
      }

      if (Double.isNaN(p_72866_1_.field_70161_v) || Double.isInfinite(p_72866_1_.field_70161_v)) {
         p_72866_1_.field_70161_v = p_72866_1_.field_70136_U;
      }

      if (Double.isNaN((double)p_72866_1_.field_70125_A) || Double.isInfinite((double)p_72866_1_.field_70125_A)) {
         p_72866_1_.field_70125_A = p_72866_1_.field_70127_C;
      }

      if (Double.isNaN((double)p_72866_1_.field_70177_z) || Double.isInfinite((double)p_72866_1_.field_70177_z)) {
         p_72866_1_.field_70177_z = p_72866_1_.field_70126_B;
      }

      int i3 = MathHelper.func_76128_c(p_72866_1_.field_70165_t / 16.0D);
      int j3 = MathHelper.func_76128_c(p_72866_1_.field_70163_u / 16.0D);
      int k3 = MathHelper.func_76128_c(p_72866_1_.field_70161_v / 16.0D);
      if (!p_72866_1_.field_70175_ag || p_72866_1_.field_70176_ah != i3 || p_72866_1_.field_70162_ai != j3 || p_72866_1_.field_70164_aj != k3) {
         if (p_72866_1_.field_70175_ag && this.func_175680_a(p_72866_1_.field_70176_ah, p_72866_1_.field_70164_aj, true)) {
            this.func_72964_e(p_72866_1_.field_70176_ah, p_72866_1_.field_70164_aj).func_76608_a(p_72866_1_, p_72866_1_.field_70162_ai);
         }

         if (!p_72866_1_.func_184189_br() && !this.func_175680_a(i3, k3, true)) {
            p_72866_1_.field_70175_ag = false;
         } else {
            this.func_72964_e(i3, k3).func_76612_a(p_72866_1_);
         }
      }

      this.field_72984_F.func_76319_b();
      if (p_72866_2_ && p_72866_1_.field_70175_ag) {
         for(Entity entity4 : p_72866_1_.func_184188_bt()) {
            if (!entity4.field_70128_L && entity4.func_184187_bx() == p_72866_1_) {
               this.func_72870_g(entity4);
            } else {
               entity4.func_184210_p();
            }
         }
      }

   }

   public boolean func_72855_b(AxisAlignedBB p_72855_1_) {
      return this.func_72917_a(p_72855_1_, (Entity)null);
   }

   public boolean func_72917_a(AxisAlignedBB p_72917_1_, @Nullable Entity p_72917_2_) {
      List<Entity> list = this.func_72839_b((Entity)null, p_72917_1_);

      for(int j2 = 0; j2 < list.size(); ++j2) {
         Entity entity4 = (Entity)list.get(j2);
         if (!entity4.field_70128_L && entity4.field_70156_m && entity4 != p_72917_2_ && (p_72917_2_ == null || entity4.func_184223_x(p_72917_2_))) {
            return false;
         }
      }

      return true;
   }

   public boolean func_72829_c(AxisAlignedBB p_72829_1_) {
      int j2 = MathHelper.func_76128_c(p_72829_1_.field_72340_a);
      int k2 = MathHelper.func_76143_f(p_72829_1_.field_72336_d);
      int l2 = MathHelper.func_76128_c(p_72829_1_.field_72338_b);
      int i3 = MathHelper.func_76143_f(p_72829_1_.field_72337_e);
      int j3 = MathHelper.func_76128_c(p_72829_1_.field_72339_c);
      int k3 = MathHelper.func_76143_f(p_72829_1_.field_72334_f);
      BlockPos.PooledMutableBlockPos blockpos$pooledmutableblockpos = BlockPos.PooledMutableBlockPos.func_185346_s();

      for(int l3 = j2; l3 < k2; ++l3) {
         for(int i4 = l2; i4 < i3; ++i4) {
            for(int j4 = j3; j4 < k3; ++j4) {
               IBlockState iblockstate1 = this.func_180495_p(blockpos$pooledmutableblockpos.func_181079_c(l3, i4, j4));
               if (iblockstate1.func_185904_a() != Material.field_151579_a) {
                  blockpos$pooledmutableblockpos.func_185344_t();
                  return true;
               }
            }
         }
      }

      blockpos$pooledmutableblockpos.func_185344_t();
      return false;
   }

   public boolean func_72953_d(AxisAlignedBB p_72953_1_) {
      int j2 = MathHelper.func_76128_c(p_72953_1_.field_72340_a);
      int k2 = MathHelper.func_76143_f(p_72953_1_.field_72336_d);
      int l2 = MathHelper.func_76128_c(p_72953_1_.field_72338_b);
      int i3 = MathHelper.func_76143_f(p_72953_1_.field_72337_e);
      int j3 = MathHelper.func_76128_c(p_72953_1_.field_72339_c);
      int k3 = MathHelper.func_76143_f(p_72953_1_.field_72334_f);
      BlockPos.PooledMutableBlockPos blockpos$pooledmutableblockpos = BlockPos.PooledMutableBlockPos.func_185346_s();

      for(int l3 = j2; l3 < k2; ++l3) {
         for(int i4 = l2; i4 < i3; ++i4) {
            for(int j4 = j3; j4 < k3; ++j4) {
               IBlockState iblockstate1 = this.func_180495_p(blockpos$pooledmutableblockpos.func_181079_c(l3, i4, j4));
               if (iblockstate1.func_185904_a().func_76224_d()) {
                  blockpos$pooledmutableblockpos.func_185344_t();
                  return true;
               }
            }
         }
      }

      blockpos$pooledmutableblockpos.func_185344_t();
      return false;
   }

   public boolean func_147470_e(AxisAlignedBB p_147470_1_) {
      int j2 = MathHelper.func_76128_c(p_147470_1_.field_72340_a);
      int k2 = MathHelper.func_76143_f(p_147470_1_.field_72336_d);
      int l2 = MathHelper.func_76128_c(p_147470_1_.field_72338_b);
      int i3 = MathHelper.func_76143_f(p_147470_1_.field_72337_e);
      int j3 = MathHelper.func_76128_c(p_147470_1_.field_72339_c);
      int k3 = MathHelper.func_76143_f(p_147470_1_.field_72334_f);
      if (this.func_175663_a(j2, l2, j3, k2, i3, k3, true)) {
         BlockPos.PooledMutableBlockPos blockpos$pooledmutableblockpos = BlockPos.PooledMutableBlockPos.func_185346_s();

         for(int l3 = j2; l3 < k2; ++l3) {
            for(int i4 = l2; i4 < i3; ++i4) {
               for(int j4 = j3; j4 < k3; ++j4) {
                  Block block = this.func_180495_p(blockpos$pooledmutableblockpos.func_181079_c(l3, i4, j4)).func_177230_c();
                  if (block == Blocks.field_150480_ab || block == Blocks.field_150356_k || block == Blocks.field_150353_l) {
                     blockpos$pooledmutableblockpos.func_185344_t();
                     return true;
                  }
               }
            }
         }

         blockpos$pooledmutableblockpos.func_185344_t();
      }

      return false;
   }

   public boolean func_72918_a(AxisAlignedBB p_72918_1_, Material p_72918_2_, Entity p_72918_3_) {
      int j2 = MathHelper.func_76128_c(p_72918_1_.field_72340_a);
      int k2 = MathHelper.func_76143_f(p_72918_1_.field_72336_d);
      int l2 = MathHelper.func_76128_c(p_72918_1_.field_72338_b);
      int i3 = MathHelper.func_76143_f(p_72918_1_.field_72337_e);
      int j3 = MathHelper.func_76128_c(p_72918_1_.field_72339_c);
      int k3 = MathHelper.func_76143_f(p_72918_1_.field_72334_f);
      if (!this.func_175663_a(j2, l2, j3, k2, i3, k3, true)) {
         return false;
      } else {
         boolean flag = false;
         Vec3d vec3d = Vec3d.field_186680_a;
         BlockPos.PooledMutableBlockPos blockpos$pooledmutableblockpos = BlockPos.PooledMutableBlockPos.func_185346_s();

         for(int l3 = j2; l3 < k2; ++l3) {
            for(int i4 = l2; i4 < i3; ++i4) {
               for(int j4 = j3; j4 < k3; ++j4) {
                  blockpos$pooledmutableblockpos.func_181079_c(l3, i4, j4);
                  IBlockState iblockstate1 = this.func_180495_p(blockpos$pooledmutableblockpos);
                  Block block = iblockstate1.func_177230_c();
                  if (iblockstate1.func_185904_a() == p_72918_2_) {
                     double d0 = (double)((float)(i4 + 1) - BlockLiquid.func_149801_b(((Integer)iblockstate1.func_177229_b(BlockLiquid.field_176367_b)).intValue()));
                     if ((double)i3 >= d0) {
                        flag = true;
                        vec3d = block.func_176197_a(this, blockpos$pooledmutableblockpos, p_72918_3_, vec3d);
                     }
                  }
               }
            }
         }

         blockpos$pooledmutableblockpos.func_185344_t();
         if (vec3d.func_72433_c() > 0.0D && p_72918_3_.func_96092_aw()) {
            vec3d = vec3d.func_72432_b();
            double d1 = 0.014D;
            p_72918_3_.field_70159_w += vec3d.field_72450_a * 0.014D;
            p_72918_3_.field_70181_x += vec3d.field_72448_b * 0.014D;
            p_72918_3_.field_70179_y += vec3d.field_72449_c * 0.014D;
         }

         return flag;
      }
   }

   public boolean func_72875_a(AxisAlignedBB p_72875_1_, Material p_72875_2_) {
      int j2 = MathHelper.func_76128_c(p_72875_1_.field_72340_a);
      int k2 = MathHelper.func_76143_f(p_72875_1_.field_72336_d);
      int l2 = MathHelper.func_76128_c(p_72875_1_.field_72338_b);
      int i3 = MathHelper.func_76143_f(p_72875_1_.field_72337_e);
      int j3 = MathHelper.func_76128_c(p_72875_1_.field_72339_c);
      int k3 = MathHelper.func_76143_f(p_72875_1_.field_72334_f);
      BlockPos.PooledMutableBlockPos blockpos$pooledmutableblockpos = BlockPos.PooledMutableBlockPos.func_185346_s();

      for(int l3 = j2; l3 < k2; ++l3) {
         for(int i4 = l2; i4 < i3; ++i4) {
            for(int j4 = j3; j4 < k3; ++j4) {
               if (this.func_180495_p(blockpos$pooledmutableblockpos.func_181079_c(l3, i4, j4)).func_185904_a() == p_72875_2_) {
                  blockpos$pooledmutableblockpos.func_185344_t();
                  return true;
               }
            }
         }
      }

      blockpos$pooledmutableblockpos.func_185344_t();
      return false;
   }

   public Explosion func_72876_a(@Nullable Entity p_72876_1_, double p_72876_2_, double p_72876_4_, double p_72876_6_, float p_72876_8_, boolean p_72876_9_) {
      return this.func_72885_a(p_72876_1_, p_72876_2_, p_72876_4_, p_72876_6_, p_72876_8_, false, p_72876_9_);
   }

   public Explosion func_72885_a(@Nullable Entity p_72885_1_, double p_72885_2_, double p_72885_4_, double p_72885_6_, float p_72885_8_, boolean p_72885_9_, boolean p_72885_10_) {
      Explosion explosion = new Explosion(this, p_72885_1_, p_72885_2_, p_72885_4_, p_72885_6_, p_72885_8_, p_72885_9_, p_72885_10_);
      explosion.func_77278_a();
      explosion.func_77279_a(true);
      return explosion;
   }

   public float func_72842_a(Vec3d p_72842_1_, AxisAlignedBB p_72842_2_) {
      double d0 = 1.0D / ((p_72842_2_.field_72336_d - p_72842_2_.field_72340_a) * 2.0D + 1.0D);
      double d1 = 1.0D / ((p_72842_2_.field_72337_e - p_72842_2_.field_72338_b) * 2.0D + 1.0D);
      double d2 = 1.0D / ((p_72842_2_.field_72334_f - p_72842_2_.field_72339_c) * 2.0D + 1.0D);
      double d3 = (1.0D - Math.floor(1.0D / d0) * d0) / 2.0D;
      double d4 = (1.0D - Math.floor(1.0D / d2) * d2) / 2.0D;
      if (d0 >= 0.0D && d1 >= 0.0D && d2 >= 0.0D) {
         int j2 = 0;
         int k2 = 0;

         for(float f = 0.0F; f <= 1.0F; f = (float)((double)f + d0)) {
            for(float f1 = 0.0F; f1 <= 1.0F; f1 = (float)((double)f1 + d1)) {
               for(float f2 = 0.0F; f2 <= 1.0F; f2 = (float)((double)f2 + d2)) {
                  double d5 = p_72842_2_.field_72340_a + (p_72842_2_.field_72336_d - p_72842_2_.field_72340_a) * (double)f;
                  double d6 = p_72842_2_.field_72338_b + (p_72842_2_.field_72337_e - p_72842_2_.field_72338_b) * (double)f1;
                  double d7 = p_72842_2_.field_72339_c + (p_72842_2_.field_72334_f - p_72842_2_.field_72339_c) * (double)f2;
                  if (this.func_72933_a(new Vec3d(d5 + d3, d6, d7 + d4), p_72842_1_) == null) {
                     ++j2;
                  }

                  ++k2;
               }
            }
         }

         return (float)j2 / (float)k2;
      } else {
         return 0.0F;
      }
   }

   public boolean func_175719_a(@Nullable EntityPlayer p_175719_1_, BlockPos p_175719_2_, EnumFacing p_175719_3_) {
      p_175719_2_ = p_175719_2_.func_177972_a(p_175719_3_);
      if (this.func_180495_p(p_175719_2_).func_177230_c() == Blocks.field_150480_ab) {
         this.func_180498_a(p_175719_1_, 1009, p_175719_2_, 0);
         this.func_175698_g(p_175719_2_);
         return true;
      } else {
         return false;
      }
   }

   @SideOnly(Side.CLIENT)
   public String func_72981_t() {
      return "All: " + this.field_72996_f.size();
   }

   @SideOnly(Side.CLIENT)
   public String func_72827_u() {
      return this.field_73020_y.func_73148_d();
   }

   @Nullable
   public TileEntity func_175625_s(BlockPos p_175625_1_) {
      if (this.func_189509_E(p_175625_1_)) {
         return null;
      } else {
         TileEntity tileentity2 = null;
         if (this.field_147481_N) {
            tileentity2 = this.func_189508_F(p_175625_1_);
         }

         if (tileentity2 == null) {
            tileentity2 = this.func_175726_f(p_175625_1_).func_177424_a(p_175625_1_, Chunk.EnumCreateEntityType.IMMEDIATE);
         }

         if (tileentity2 == null) {
            tileentity2 = this.func_189508_F(p_175625_1_);
         }

         return tileentity2;
      }
   }

   @Nullable
   private TileEntity func_189508_F(BlockPos p_189508_1_) {
      for(int j2 = 0; j2 < this.field_147484_a.size(); ++j2) {
         TileEntity tileentity2 = (TileEntity)this.field_147484_a.get(j2);
         if (!tileentity2.func_145837_r() && tileentity2.func_174877_v().equals(p_189508_1_)) {
            return tileentity2;
         }
      }

      return null;
   }

   public void func_175690_a(BlockPos p_175690_1_, @Nullable TileEntity p_175690_2_) {
      if (!this.func_189509_E(p_175690_1_)) {
         if (p_175690_2_ != null && !p_175690_2_.func_145837_r()) {
            if (this.field_147481_N) {
               p_175690_2_.func_174878_a(p_175690_1_);
               Iterator<TileEntity> iterator1 = this.field_147484_a.iterator();

               while(iterator1.hasNext()) {
                  TileEntity tileentity2 = (TileEntity)iterator1.next();
                  if (tileentity2.func_174877_v().equals(p_175690_1_)) {
                     tileentity2.func_145843_s();
                     iterator1.remove();
                  }
               }

               this.field_147484_a.add(p_175690_2_);
            } else {
               this.func_175726_f(p_175690_1_).func_177426_a(p_175690_1_, p_175690_2_);
               this.func_175700_a(p_175690_2_);
            }
         }

      }
   }

   public void func_175713_t(BlockPos p_175713_1_) {
      TileEntity tileentity2 = this.func_175625_s(p_175713_1_);
      if (tileentity2 != null && this.field_147481_N) {
         tileentity2.func_145843_s();
         this.field_147484_a.remove(tileentity2);
      } else {
         if (tileentity2 != null) {
            this.field_147484_a.remove(tileentity2);
            this.field_147482_g.remove(tileentity2);
            this.field_175730_i.remove(tileentity2);
         }

         this.func_175726_f(p_175713_1_).func_177425_e(p_175713_1_);
      }

   }

   public void func_147457_a(TileEntity p_147457_1_) {
      this.field_147483_b.add(p_147457_1_);
   }

   public boolean func_175665_u(BlockPos p_175665_1_) {
      AxisAlignedBB axisalignedbb = this.func_180495_p(p_175665_1_).func_185890_d(this, p_175665_1_);
      return axisalignedbb != Block.field_185506_k && axisalignedbb.func_72320_b() >= 1.0D;
   }

   public boolean func_175677_d(BlockPos p_175677_1_, boolean p_175677_2_) {
      if (this.func_189509_E(p_175677_1_)) {
         return false;
      } else {
         Chunk chunk1 = this.field_73020_y.func_186026_b(p_175677_1_.func_177958_n() >> 4, p_175677_1_.func_177952_p() >> 4);
         if (chunk1 != null && !chunk1.func_76621_g()) {
            IBlockState iblockstate1 = this.func_180495_p(p_175677_1_);
            return iblockstate1.func_185904_a().func_76218_k() && iblockstate1.func_185917_h();
         } else {
            return p_175677_2_;
         }
      }
   }

   public void func_72966_v() {
      int j2 = this.func_72967_a(1.0F);
      if (j2 != this.field_73008_k) {
         this.field_73008_k = j2;
      }

   }

   public void func_72891_a(boolean p_72891_1_, boolean p_72891_2_) {
      this.field_72985_G = p_72891_1_;
      this.field_72992_H = p_72891_2_;
   }

   public void func_72835_b() {
      this.func_72979_l();
   }

   protected void func_72947_a() {
      if (this.field_72986_A.func_76059_o()) {
         this.field_73004_o = 1.0F;
         if (this.field_72986_A.func_76061_m()) {
            this.field_73017_q = 1.0F;
         }
      }

   }

   protected void func_72979_l() {
      if (this.field_73011_w.func_191066_m()) {
         if (!this.field_72995_K) {
            boolean flag = this.func_82736_K().func_82766_b("doWeatherCycle");
            if (flag) {
               int j2 = this.field_72986_A.func_176133_A();
               if (j2 > 0) {
                  --j2;
                  this.field_72986_A.func_176142_i(j2);
                  this.field_72986_A.func_76090_f(this.field_72986_A.func_76061_m() ? 1 : 2);
                  this.field_72986_A.func_76080_g(this.field_72986_A.func_76059_o() ? 1 : 2);
               }

               int k2 = this.field_72986_A.func_76071_n();
               if (k2 <= 0) {
                  if (this.field_72986_A.func_76061_m()) {
                     this.field_72986_A.func_76090_f(this.field_73012_v.nextInt(12000) + 3600);
                  } else {
                     this.field_72986_A.func_76090_f(this.field_73012_v.nextInt(168000) + 12000);
                  }
               } else {
                  --k2;
                  this.field_72986_A.func_76090_f(k2);
                  if (k2 <= 0) {
                     this.field_72986_A.func_76069_a(!this.field_72986_A.func_76061_m());
                  }
               }

               int l2 = this.field_72986_A.func_76083_p();
               if (l2 <= 0) {
                  if (this.field_72986_A.func_76059_o()) {
                     this.field_72986_A.func_76080_g(this.field_73012_v.nextInt(12000) + 12000);
                  } else {
                     this.field_72986_A.func_76080_g(this.field_73012_v.nextInt(168000) + 12000);
                  }
               } else {
                  --l2;
                  this.field_72986_A.func_76080_g(l2);
                  if (l2 <= 0) {
                     this.field_72986_A.func_76084_b(!this.field_72986_A.func_76059_o());
                  }
               }
            }

            this.field_73018_p = this.field_73017_q;
            if (this.field_72986_A.func_76061_m()) {
               this.field_73017_q = (float)((double)this.field_73017_q + 0.01D);
            } else {
               this.field_73017_q = (float)((double)this.field_73017_q - 0.01D);
            }

            this.field_73017_q = MathHelper.func_76131_a(this.field_73017_q, 0.0F, 1.0F);
            this.field_73003_n = this.field_73004_o;
            if (this.field_72986_A.func_76059_o()) {
               this.field_73004_o = (float)((double)this.field_73004_o + 0.01D);
            } else {
               this.field_73004_o = (float)((double)this.field_73004_o - 0.01D);
            }

            this.field_73004_o = MathHelper.func_76131_a(this.field_73004_o, 0.0F, 1.0F);
         }
      }
   }

   @SideOnly(Side.CLIENT)
   protected void func_147467_a(int p_147467_1_, int p_147467_2_, Chunk p_147467_3_) {
      p_147467_3_.func_76594_o();
   }

   protected void func_147456_g() {
   }

   public void func_189507_a(BlockPos p_189507_1_, IBlockState p_189507_2_, Random p_189507_3_) {
      this.field_72999_e = true;
      p_189507_2_.func_177230_c().func_180650_b(this, p_189507_1_, p_189507_2_, p_189507_3_);
      this.field_72999_e = false;
   }

   public boolean func_175675_v(BlockPos p_175675_1_) {
      return this.func_175670_e(p_175675_1_, false);
   }

   public boolean func_175662_w(BlockPos p_175662_1_) {
      return this.func_175670_e(p_175662_1_, true);
   }

   public boolean func_175670_e(BlockPos p_175670_1_, boolean p_175670_2_) {
      Biome biome = this.func_180494_b(p_175670_1_);
      float f = biome.func_180626_a(p_175670_1_);
      if (f >= 0.15F) {
         return false;
      } else {
         if (p_175670_1_.func_177956_o() >= 0 && p_175670_1_.func_177956_o() < 256 && this.func_175642_b(EnumSkyBlock.BLOCK, p_175670_1_) < 10) {
            IBlockState iblockstate1 = this.func_180495_p(p_175670_1_);
            Block block = iblockstate1.func_177230_c();
            if ((block == Blocks.field_150355_j || block == Blocks.field_150358_i) && ((Integer)iblockstate1.func_177229_b(BlockLiquid.field_176367_b)).intValue() == 0) {
               if (!p_175670_2_) {
                  return true;
               }

               boolean flag = this.func_175696_F(p_175670_1_.func_177976_e()) && this.func_175696_F(p_175670_1_.func_177974_f()) && this.func_175696_F(p_175670_1_.func_177978_c()) && this.func_175696_F(p_175670_1_.func_177968_d());
               if (!flag) {
                  return true;
               }
            }
         }

         return false;
      }
   }

   private boolean func_175696_F(BlockPos p_175696_1_) {
      return this.func_180495_p(p_175696_1_).func_185904_a() == Material.field_151586_h;
   }

   public boolean func_175708_f(BlockPos p_175708_1_, boolean p_175708_2_) {
      Biome biome = this.func_180494_b(p_175708_1_);
      float f = biome.func_180626_a(p_175708_1_);
      if (f >= 0.15F) {
         return false;
      } else if (!p_175708_2_) {
         return true;
      } else {
         if (p_175708_1_.func_177956_o() >= 0 && p_175708_1_.func_177956_o() < 256 && this.func_175642_b(EnumSkyBlock.BLOCK, p_175708_1_) < 10) {
            IBlockState iblockstate1 = this.func_180495_p(p_175708_1_);
            if (iblockstate1.func_185904_a() == Material.field_151579_a && Blocks.field_150431_aC.func_176196_c(this, p_175708_1_)) {
               return true;
            }
         }

         return false;
      }
   }

   public boolean func_175664_x(BlockPos p_175664_1_) {
      boolean flag = false;
      if (this.field_73011_w.func_191066_m()) {
         flag |= this.func_180500_c(EnumSkyBlock.SKY, p_175664_1_);
      }

      flag = flag | this.func_180500_c(EnumSkyBlock.BLOCK, p_175664_1_);
      return flag;
   }

   private int func_175638_a(BlockPos p_175638_1_, EnumSkyBlock p_175638_2_) {
      if (p_175638_2_ == EnumSkyBlock.SKY && this.func_175678_i(p_175638_1_)) {
         return 15;
      } else {
         IBlockState iblockstate1 = this.func_180495_p(p_175638_1_);
         int j2 = p_175638_2_ == EnumSkyBlock.SKY ? 0 : iblockstate1.func_185906_d();
         int k2 = iblockstate1.func_185891_c();
         if (k2 >= 15 && iblockstate1.func_185906_d() > 0) {
            k2 = 1;
         }

         if (k2 < 1) {
            k2 = 1;
         }

         if (k2 >= 15) {
            return 0;
         } else if (j2 >= 14) {
            return j2;
         } else {
            BlockPos.PooledMutableBlockPos blockpos$pooledmutableblockpos = BlockPos.PooledMutableBlockPos.func_185346_s();

            try {
               for(EnumFacing enumfacing : EnumFacing.values()) {
                  blockpos$pooledmutableblockpos.func_189533_g(p_175638_1_).func_189536_c(enumfacing);
                  int l2 = this.func_175642_b(p_175638_2_, blockpos$pooledmutableblockpos) - k2;
                  if (l2 > j2) {
                     j2 = l2;
                  }

                  if (j2 >= 14) {
                     int i3 = j2;
                     return i3;
                  }
               }

               return j2;
            } finally {
               blockpos$pooledmutableblockpos.func_185344_t();
            }
         }
      }
   }

   public boolean func_180500_c(EnumSkyBlock p_180500_1_, BlockPos p_180500_2_) {
      if (!this.func_175648_a(p_180500_2_, 17, false)) {
         return false;
      } else {
         int j2 = 0;
         int k2 = 0;
         this.field_72984_F.func_76320_a("getBrightness");
         int l2 = this.func_175642_b(p_180500_1_, p_180500_2_);
         int i3 = this.func_175638_a(p_180500_2_, p_180500_1_);
         int j3 = p_180500_2_.func_177958_n();
         int k3 = p_180500_2_.func_177956_o();
         int l3 = p_180500_2_.func_177952_p();
         if (i3 > l2) {
            this.field_72994_J[k2++] = 133152;
         } else if (i3 < l2) {
            this.field_72994_J[k2++] = 133152 | l2 << 18;

            while(j2 < k2) {
               int i4 = this.field_72994_J[j2++];
               int j4 = (i4 & 63) - 32 + j3;
               int k4 = (i4 >> 6 & 63) - 32 + k3;
               int l4 = (i4 >> 12 & 63) - 32 + l3;
               int i5 = i4 >> 18 & 15;
               BlockPos blockpos1 = new BlockPos(j4, k4, l4);
               int j5 = this.func_175642_b(p_180500_1_, blockpos1);
               if (j5 == i5) {
                  this.func_175653_a(p_180500_1_, blockpos1, 0);
                  if (i5 > 0) {
                     int k5 = MathHelper.func_76130_a(j4 - j3);
                     int l5 = MathHelper.func_76130_a(k4 - k3);
                     int i6 = MathHelper.func_76130_a(l4 - l3);
                     if (k5 + l5 + i6 < 17) {
                        BlockPos.PooledMutableBlockPos blockpos$pooledmutableblockpos = BlockPos.PooledMutableBlockPos.func_185346_s();

                        for(EnumFacing enumfacing : EnumFacing.values()) {
                           int j6 = j4 + enumfacing.func_82601_c();
                           int k6 = k4 + enumfacing.func_96559_d();
                           int l6 = l4 + enumfacing.func_82599_e();
                           blockpos$pooledmutableblockpos.func_181079_c(j6, k6, l6);
                           int i7 = Math.max(1, this.func_180495_p(blockpos$pooledmutableblockpos).func_185891_c());
                           j5 = this.func_175642_b(p_180500_1_, blockpos$pooledmutableblockpos);
                           if (j5 == i5 - i7 && k2 < this.field_72994_J.length) {
                              this.field_72994_J[k2++] = j6 - j3 + 32 | k6 - k3 + 32 << 6 | l6 - l3 + 32 << 12 | i5 - i7 << 18;
                           }
                        }

                        blockpos$pooledmutableblockpos.func_185344_t();
                     }
                  }
               }
            }

            j2 = 0;
         }

         this.field_72984_F.func_76319_b();
         this.field_72984_F.func_76320_a("checkedPosition < toCheckCount");

         while(j2 < k2) {
            int j7 = this.field_72994_J[j2++];
            int k7 = (j7 & 63) - 32 + j3;
            int l7 = (j7 >> 6 & 63) - 32 + k3;
            int i8 = (j7 >> 12 & 63) - 32 + l3;
            BlockPos blockpos2 = new BlockPos(k7, l7, i8);
            int j8 = this.func_175642_b(p_180500_1_, blockpos2);
            int k8 = this.func_175638_a(blockpos2, p_180500_1_);
            if (k8 != j8) {
               this.func_175653_a(p_180500_1_, blockpos2, k8);
               if (k8 > j8) {
                  int l8 = Math.abs(k7 - j3);
                  int i9 = Math.abs(l7 - k3);
                  int j9 = Math.abs(i8 - l3);
                  boolean flag = k2 < this.field_72994_J.length - 6;
                  if (l8 + i9 + j9 < 17 && flag) {
                     if (this.func_175642_b(p_180500_1_, blockpos2.func_177976_e()) < k8) {
                        this.field_72994_J[k2++] = k7 - 1 - j3 + 32 + (l7 - k3 + 32 << 6) + (i8 - l3 + 32 << 12);
                     }

                     if (this.func_175642_b(p_180500_1_, blockpos2.func_177974_f()) < k8) {
                        this.field_72994_J[k2++] = k7 + 1 - j3 + 32 + (l7 - k3 + 32 << 6) + (i8 - l3 + 32 << 12);
                     }

                     if (this.func_175642_b(p_180500_1_, blockpos2.func_177977_b()) < k8) {
                        this.field_72994_J[k2++] = k7 - j3 + 32 + (l7 - 1 - k3 + 32 << 6) + (i8 - l3 + 32 << 12);
                     }

                     if (this.func_175642_b(p_180500_1_, blockpos2.func_177984_a()) < k8) {
                        this.field_72994_J[k2++] = k7 - j3 + 32 + (l7 + 1 - k3 + 32 << 6) + (i8 - l3 + 32 << 12);
                     }

                     if (this.func_175642_b(p_180500_1_, blockpos2.func_177978_c()) < k8) {
                        this.field_72994_J[k2++] = k7 - j3 + 32 + (l7 - k3 + 32 << 6) + (i8 - 1 - l3 + 32 << 12);
                     }

                     if (this.func_175642_b(p_180500_1_, blockpos2.func_177968_d()) < k8) {
                        this.field_72994_J[k2++] = k7 - j3 + 32 + (l7 - k3 + 32 << 6) + (i8 + 1 - l3 + 32 << 12);
                     }
                  }
               }
            }
         }

         this.field_72984_F.func_76319_b();
         return true;
      }
   }

   public boolean func_72955_a(boolean p_72955_1_) {
      return false;
   }

   @Nullable
   public List<NextTickListEntry> func_72920_a(Chunk p_72920_1_, boolean p_72920_2_) {
      return null;
   }

   @Nullable
   public List<NextTickListEntry> func_175712_a(StructureBoundingBox p_175712_1_, boolean p_175712_2_) {
      return null;
   }

   public List<Entity> func_72839_b(@Nullable Entity p_72839_1_, AxisAlignedBB p_72839_2_) {
      return this.func_175674_a(p_72839_1_, p_72839_2_, EntitySelectors.field_180132_d);
   }

   public List<Entity> func_175674_a(@Nullable Entity p_175674_1_, AxisAlignedBB p_175674_2_, @Nullable Predicate<? super Entity> p_175674_3_) {
      List<Entity> list = Lists.<Entity>newArrayList();
      int j2 = MathHelper.func_76128_c((p_175674_2_.field_72340_a - 2.0D) / 16.0D);
      int k2 = MathHelper.func_76128_c((p_175674_2_.field_72336_d + 2.0D) / 16.0D);
      int l2 = MathHelper.func_76128_c((p_175674_2_.field_72339_c - 2.0D) / 16.0D);
      int i3 = MathHelper.func_76128_c((p_175674_2_.field_72334_f + 2.0D) / 16.0D);

      for(int j3 = j2; j3 <= k2; ++j3) {
         for(int k3 = l2; k3 <= i3; ++k3) {
            if (this.func_175680_a(j3, k3, true)) {
               this.func_72964_e(j3, k3).func_177414_a(p_175674_1_, p_175674_2_, list, p_175674_3_);
            }
         }
      }

      return list;
   }

   public <T extends Entity> List<T> func_175644_a(Class<? extends T> p_175644_1_, Predicate<? super T> p_175644_2_) {
      List<T> list = Lists.<T>newArrayList();

      for(Entity entity4 : this.field_72996_f) {
         if (p_175644_1_.isAssignableFrom(entity4.getClass()) && p_175644_2_.apply(entity4)) {
            list.add(entity4);
         }
      }

      return list;
   }

   public <T extends Entity> List<T> func_175661_b(Class<? extends T> p_175661_1_, Predicate<? super T> p_175661_2_) {
      List<T> list = Lists.<T>newArrayList();

      for(Entity entity4 : this.field_73010_i) {
         if (p_175661_1_.isAssignableFrom(entity4.getClass()) && p_175661_2_.apply(entity4)) {
            list.add(entity4);
         }
      }

      return list;
   }

   public <T extends Entity> List<T> func_72872_a(Class<? extends T> p_72872_1_, AxisAlignedBB p_72872_2_) {
      return this.<T>func_175647_a(p_72872_1_, p_72872_2_, EntitySelectors.field_180132_d);
   }

   public <T extends Entity> List<T> func_175647_a(Class<? extends T> p_175647_1_, AxisAlignedBB p_175647_2_, @Nullable Predicate<? super T> p_175647_3_) {
      int j2 = MathHelper.func_76128_c((p_175647_2_.field_72340_a - 2.0D) / 16.0D);
      int k2 = MathHelper.func_76143_f((p_175647_2_.field_72336_d + 2.0D) / 16.0D);
      int l2 = MathHelper.func_76128_c((p_175647_2_.field_72339_c - 2.0D) / 16.0D);
      int i3 = MathHelper.func_76143_f((p_175647_2_.field_72334_f + 2.0D) / 16.0D);
      List<T> list = Lists.<T>newArrayList();

      for(int j3 = j2; j3 < k2; ++j3) {
         for(int k3 = l2; k3 < i3; ++k3) {
            if (this.func_175680_a(j3, k3, true)) {
               this.func_72964_e(j3, k3).func_177430_a(p_175647_1_, p_175647_2_, list, p_175647_3_);
            }
         }
      }

      return list;
   }

   @Nullable
   public <T extends Entity> T func_72857_a(Class<? extends T> p_72857_1_, AxisAlignedBB p_72857_2_, T p_72857_3_) {
      List<T> list = this.<T>func_72872_a(p_72857_1_, p_72857_2_);
      T t = null;
      double d0 = Double.MAX_VALUE;

      for(int j2 = 0; j2 < list.size(); ++j2) {
         T t1 = list.get(j2);
         if (t1 != p_72857_3_ && EntitySelectors.field_180132_d.apply(t1)) {
            double d1 = p_72857_3_.func_70068_e(t1);
            if (d1 <= d0) {
               t = t1;
               d0 = d1;
            }
         }
      }

      return t;
   }

   @Nullable
   public Entity func_73045_a(int p_73045_1_) {
      return this.field_175729_l.func_76041_a(p_73045_1_);
   }

   @SideOnly(Side.CLIENT)
   public List<Entity> func_72910_y() {
      return this.field_72996_f;
   }

   public void func_175646_b(BlockPos p_175646_1_, TileEntity p_175646_2_) {
      if (this.func_175667_e(p_175646_1_)) {
         this.func_175726_f(p_175646_1_).func_76630_e();
      }

   }

   public int func_72907_a(Class<?> p_72907_1_) {
      int j2 = 0;

      for(Entity entity4 : this.field_72996_f) {
         if ((!(entity4 instanceof EntityLiving) || !((EntityLiving)entity4).func_104002_bU()) && p_72907_1_.isAssignableFrom(entity4.getClass())) {
            ++j2;
         }
      }

      return j2;
   }

   public void func_175650_b(Collection<Entity> p_175650_1_) {
      this.field_72996_f.addAll(p_175650_1_);

      for(Entity entity4 : p_175650_1_) {
         this.func_72923_a(entity4);
      }

   }

   public void func_175681_c(Collection<Entity> p_175681_1_) {
      this.field_72997_g.addAll(p_175681_1_);
   }

   public boolean func_190527_a(Block p_190527_1_, BlockPos p_190527_2_, boolean p_190527_3_, EnumFacing p_190527_4_, @Nullable Entity p_190527_5_) {
      IBlockState iblockstate1 = this.func_180495_p(p_190527_2_);
      AxisAlignedBB axisalignedbb = p_190527_3_ ? null : p_190527_1_.func_176223_P().func_185890_d(this, p_190527_2_);
      if (axisalignedbb != Block.field_185506_k && !this.func_72917_a(axisalignedbb.func_186670_a(p_190527_2_), p_190527_5_)) {
         return false;
      } else if (iblockstate1.func_185904_a() == Material.field_151594_q && p_190527_1_ == Blocks.field_150467_bQ) {
         return true;
      } else {
         return iblockstate1.func_185904_a().func_76222_j() && p_190527_1_.func_176198_a(this, p_190527_2_, p_190527_4_);
      }
   }

   public int func_181545_F() {
      return this.field_181546_a;
   }

   public void func_181544_b(int p_181544_1_) {
      this.field_181546_a = p_181544_1_;
   }

   public int func_175627_a(BlockPos p_175627_1_, EnumFacing p_175627_2_) {
      return this.func_180495_p(p_175627_1_).func_185893_b(this, p_175627_1_, p_175627_2_);
   }

   public WorldType func_175624_G() {
      return this.field_72986_A.func_76067_t();
   }

   public int func_175676_y(BlockPos p_175676_1_) {
      int j2 = 0;
      j2 = Math.max(j2, this.func_175627_a(p_175676_1_.func_177977_b(), EnumFacing.DOWN));
      if (j2 >= 15) {
         return j2;
      } else {
         j2 = Math.max(j2, this.func_175627_a(p_175676_1_.func_177984_a(), EnumFacing.UP));
         if (j2 >= 15) {
            return j2;
         } else {
            j2 = Math.max(j2, this.func_175627_a(p_175676_1_.func_177978_c(), EnumFacing.NORTH));
            if (j2 >= 15) {
               return j2;
            } else {
               j2 = Math.max(j2, this.func_175627_a(p_175676_1_.func_177968_d(), EnumFacing.SOUTH));
               if (j2 >= 15) {
                  return j2;
               } else {
                  j2 = Math.max(j2, this.func_175627_a(p_175676_1_.func_177976_e(), EnumFacing.WEST));
                  if (j2 >= 15) {
                     return j2;
                  } else {
                     j2 = Math.max(j2, this.func_175627_a(p_175676_1_.func_177974_f(), EnumFacing.EAST));
                     return j2 >= 15 ? j2 : j2;
                  }
               }
            }
         }
      }
   }

   public boolean func_175709_b(BlockPos p_175709_1_, EnumFacing p_175709_2_) {
      return this.func_175651_c(p_175709_1_, p_175709_2_) > 0;
   }

   public int func_175651_c(BlockPos p_175651_1_, EnumFacing p_175651_2_) {
      IBlockState iblockstate1 = this.func_180495_p(p_175651_1_);
      return iblockstate1.func_185915_l() ? this.func_175676_y(p_175651_1_) : iblockstate1.func_185911_a(this, p_175651_1_, p_175651_2_);
   }

   public boolean func_175640_z(BlockPos p_175640_1_) {
      if (this.func_175651_c(p_175640_1_.func_177977_b(), EnumFacing.DOWN) > 0) {
         return true;
      } else if (this.func_175651_c(p_175640_1_.func_177984_a(), EnumFacing.UP) > 0) {
         return true;
      } else if (this.func_175651_c(p_175640_1_.func_177978_c(), EnumFacing.NORTH) > 0) {
         return true;
      } else if (this.func_175651_c(p_175640_1_.func_177968_d(), EnumFacing.SOUTH) > 0) {
         return true;
      } else if (this.func_175651_c(p_175640_1_.func_177976_e(), EnumFacing.WEST) > 0) {
         return true;
      } else {
         return this.func_175651_c(p_175640_1_.func_177974_f(), EnumFacing.EAST) > 0;
      }
   }

   public int func_175687_A(BlockPos p_175687_1_) {
      int j2 = 0;

      for(EnumFacing enumfacing : EnumFacing.values()) {
         int k2 = this.func_175651_c(p_175687_1_.func_177972_a(enumfacing), enumfacing);
         if (k2 >= 15) {
            return 15;
         }

         if (k2 > j2) {
            j2 = k2;
         }
      }

      return j2;
   }

   @Nullable
   public EntityPlayer func_72890_a(Entity p_72890_1_, double p_72890_2_) {
      return this.func_184137_a(p_72890_1_.field_70165_t, p_72890_1_.field_70163_u, p_72890_1_.field_70161_v, p_72890_2_, false);
   }

   @Nullable
   public EntityPlayer func_184136_b(Entity p_184136_1_, double p_184136_2_) {
      return this.func_184137_a(p_184136_1_.field_70165_t, p_184136_1_.field_70163_u, p_184136_1_.field_70161_v, p_184136_2_, true);
   }

   @Nullable
   public EntityPlayer func_184137_a(double p_184137_1_, double p_184137_3_, double p_184137_5_, double p_184137_7_, boolean p_184137_9_) {
      Predicate<Entity> predicate = p_184137_9_ ? EntitySelectors.field_188444_d : EntitySelectors.field_180132_d;
      return this.func_190525_a(p_184137_1_, p_184137_3_, p_184137_5_, p_184137_7_, predicate);
   }

   @Nullable
   public EntityPlayer func_190525_a(double p_190525_1_, double p_190525_3_, double p_190525_5_, double p_190525_7_, Predicate<Entity> p_190525_9_) {
      double d0 = -1.0D;
      EntityPlayer entityplayer = null;

      for(int j2 = 0; j2 < this.field_73010_i.size(); ++j2) {
         EntityPlayer entityplayer1 = (EntityPlayer)this.field_73010_i.get(j2);
         if (p_190525_9_.apply(entityplayer1)) {
            double d1 = entityplayer1.func_70092_e(p_190525_1_, p_190525_3_, p_190525_5_);
            if ((p_190525_7_ < 0.0D || d1 < p_190525_7_ * p_190525_7_) && (d0 == -1.0D || d1 < d0)) {
               d0 = d1;
               entityplayer = entityplayer1;
            }
         }
      }

      return entityplayer;
   }

   public boolean func_175636_b(double p_175636_1_, double p_175636_3_, double p_175636_5_, double p_175636_7_) {
      for(int j2 = 0; j2 < this.field_73010_i.size(); ++j2) {
         EntityPlayer entityplayer = (EntityPlayer)this.field_73010_i.get(j2);
         if (EntitySelectors.field_180132_d.apply(entityplayer)) {
            double d0 = entityplayer.func_70092_e(p_175636_1_, p_175636_3_, p_175636_5_);
            if (p_175636_7_ < 0.0D || d0 < p_175636_7_ * p_175636_7_) {
               return true;
            }
         }
      }

      return false;
   }

   @Nullable
   public EntityPlayer func_184142_a(Entity p_184142_1_, double p_184142_2_, double p_184142_4_) {
      return this.func_184150_a(p_184142_1_.field_70165_t, p_184142_1_.field_70163_u, p_184142_1_.field_70161_v, p_184142_2_, p_184142_4_, (Function)null, (Predicate)null);
   }

   @Nullable
   public EntityPlayer func_184139_a(BlockPos p_184139_1_, double p_184139_2_, double p_184139_4_) {
      return this.func_184150_a((double)((float)p_184139_1_.func_177958_n() + 0.5F), (double)((float)p_184139_1_.func_177956_o() + 0.5F), (double)((float)p_184139_1_.func_177952_p() + 0.5F), p_184139_2_, p_184139_4_, (Function)null, (Predicate)null);
   }

   @Nullable
   public EntityPlayer func_184150_a(double p_184150_1_, double p_184150_3_, double p_184150_5_, double p_184150_7_, double p_184150_9_, @Nullable Function<EntityPlayer, Double> p_184150_11_, @Nullable Predicate<EntityPlayer> p_184150_12_) {
      double d0 = -1.0D;
      EntityPlayer entityplayer = null;

      for(int j2 = 0; j2 < this.field_73010_i.size(); ++j2) {
         EntityPlayer entityplayer1 = (EntityPlayer)this.field_73010_i.get(j2);
         if (!entityplayer1.field_71075_bZ.field_75102_a && entityplayer1.func_70089_S() && !entityplayer1.func_175149_v() && (p_184150_12_ == null || p_184150_12_.apply(entityplayer1))) {
            double d1 = entityplayer1.func_70092_e(p_184150_1_, entityplayer1.field_70163_u, p_184150_5_);
            double d2 = p_184150_7_;
            if (entityplayer1.func_70093_af()) {
               d2 = p_184150_7_ * 0.800000011920929D;
            }

            if (entityplayer1.func_82150_aj()) {
               float f = entityplayer1.func_82243_bO();
               if (f < 0.1F) {
                  f = 0.1F;
               }

               d2 *= (double)(0.7F * f);
            }

            if (p_184150_11_ != null) {
               d2 *= ((Double)MoreObjects.firstNonNull(p_184150_11_.apply(entityplayer1), Double.valueOf(1.0D))).doubleValue();
            }

            if ((p_184150_9_ < 0.0D || Math.abs(entityplayer1.field_70163_u - p_184150_3_) < p_184150_9_ * p_184150_9_) && (p_184150_7_ < 0.0D || d1 < d2 * d2) && (d0 == -1.0D || d1 < d0)) {
               d0 = d1;
               entityplayer = entityplayer1;
            }
         }
      }

      return entityplayer;
   }

   @Nullable
   public EntityPlayer func_72924_a(String p_72924_1_) {
      for(int j2 = 0; j2 < this.field_73010_i.size(); ++j2) {
         EntityPlayer entityplayer = (EntityPlayer)this.field_73010_i.get(j2);
         if (p_72924_1_.equals(entityplayer.func_70005_c_())) {
            return entityplayer;
         }
      }

      return null;
   }

   @Nullable
   public EntityPlayer func_152378_a(UUID p_152378_1_) {
      for(int j2 = 0; j2 < this.field_73010_i.size(); ++j2) {
         EntityPlayer entityplayer = (EntityPlayer)this.field_73010_i.get(j2);
         if (p_152378_1_.equals(entityplayer.func_110124_au())) {
            return entityplayer;
         }
      }

      return null;
   }

   @SideOnly(Side.CLIENT)
   public void func_72882_A() {
   }

   public void func_72906_B() throws MinecraftException {
      this.field_73019_z.func_75762_c();
   }

   @SideOnly(Side.CLIENT)
   public void func_82738_a(long p_82738_1_) {
      this.field_72986_A.func_82572_b(p_82738_1_);
   }

   public long func_72905_C() {
      return this.field_72986_A.func_76063_b();
   }

   public long func_82737_E() {
      return this.field_72986_A.func_82573_f();
   }

   public long func_72820_D() {
      return this.field_72986_A.func_76073_f();
   }

   public void func_72877_b(long p_72877_1_) {
      this.field_72986_A.func_76068_b(p_72877_1_);
   }

   public BlockPos func_175694_M() {
      BlockPos blockpos1 = new BlockPos(this.field_72986_A.func_76079_c(), this.field_72986_A.func_76075_d(), this.field_72986_A.func_76074_e());
      if (!this.func_175723_af().func_177746_a(blockpos1)) {
         blockpos1 = this.func_175645_m(new BlockPos(this.func_175723_af().func_177731_f(), 0.0D, this.func_175723_af().func_177721_g()));
      }

      return blockpos1;
   }

   public void func_175652_B(BlockPos p_175652_1_) {
      this.field_72986_A.func_176143_a(p_175652_1_);
   }

   @SideOnly(Side.CLIENT)
   public void func_72897_h(Entity p_72897_1_) {
      int j2 = MathHelper.func_76128_c(p_72897_1_.field_70165_t / 16.0D);
      int k2 = MathHelper.func_76128_c(p_72897_1_.field_70161_v / 16.0D);
      int l2 = 2;

      for(int i3 = -2; i3 <= 2; ++i3) {
         for(int j3 = -2; j3 <= 2; ++j3) {
            this.func_72964_e(j2 + i3, k2 + j3);
         }
      }

      if (!this.field_72996_f.contains(p_72897_1_)) {
         this.field_72996_f.add(p_72897_1_);
      }

   }

   public boolean func_175660_a(EntityPlayer p_175660_1_, BlockPos p_175660_2_) {
      return true;
   }

   public void func_72960_a(Entity p_72960_1_, byte p_72960_2_) {
   }

   public IChunkProvider func_72863_F() {
      return this.field_73020_y;
   }

   public void func_175641_c(BlockPos p_175641_1_, Block p_175641_2_, int p_175641_3_, int p_175641_4_) {
      this.func_180495_p(p_175641_1_).func_189547_a(this, p_175641_1_, p_175641_3_, p_175641_4_);
   }

   public ISaveHandler func_72860_G() {
      return this.field_73019_z;
   }

   public WorldInfo func_72912_H() {
      return this.field_72986_A;
   }

   public GameRules func_82736_K() {
      return this.field_72986_A.func_82574_x();
   }

   public void func_72854_c() {
   }

   public float func_72819_i(float p_72819_1_) {
      return (this.field_73018_p + (this.field_73017_q - this.field_73018_p) * p_72819_1_) * this.func_72867_j(p_72819_1_);
   }

   @SideOnly(Side.CLIENT)
   public void func_147442_i(float p_147442_1_) {
      this.field_73018_p = p_147442_1_;
      this.field_73017_q = p_147442_1_;
   }

   public float func_72867_j(float p_72867_1_) {
      return this.field_73003_n + (this.field_73004_o - this.field_73003_n) * p_72867_1_;
   }

   @SideOnly(Side.CLIENT)
   public void func_72894_k(float p_72894_1_) {
      this.field_73003_n = p_72894_1_;
      this.field_73004_o = p_72894_1_;
   }

   public boolean func_72911_I() {
      return (double)this.func_72819_i(1.0F) > 0.9D;
   }

   public boolean func_72896_J() {
      return (double)this.func_72867_j(1.0F) > 0.2D;
   }

   public boolean func_175727_C(BlockPos p_175727_1_) {
      if (!this.func_72896_J()) {
         return false;
      } else if (!this.func_175678_i(p_175727_1_)) {
         return false;
      } else if (this.func_175725_q(p_175727_1_).func_177956_o() > p_175727_1_.func_177956_o()) {
         return false;
      } else {
         Biome biome = this.func_180494_b(p_175727_1_);
         if (biome.func_76746_c()) {
            return false;
         } else {
            return this.func_175708_f(p_175727_1_, false) ? false : biome.func_76738_d();
         }
      }
   }

   public boolean func_180502_D(BlockPos p_180502_1_) {
      Biome biome = this.func_180494_b(p_180502_1_);
      return biome.func_76736_e();
   }

   @Nullable
   public MapStorage func_175693_T() {
      return this.field_72988_C;
   }

   public void func_72823_a(String p_72823_1_, WorldSavedData p_72823_2_) {
      this.field_72988_C.func_75745_a(p_72823_1_, p_72823_2_);
   }

   @Nullable
   public WorldSavedData func_72943_a(Class<? extends WorldSavedData> p_72943_1_, String p_72943_2_) {
      return this.field_72988_C.func_75742_a(p_72943_1_, p_72943_2_);
   }

   public int func_72841_b(String p_72841_1_) {
      return this.field_72988_C.func_75743_a(p_72841_1_);
   }

   public void func_175669_a(int p_175669_1_, BlockPos p_175669_2_, int p_175669_3_) {
      for(int j2 = 0; j2 < this.field_73021_x.size(); ++j2) {
         ((IWorldEventListener)this.field_73021_x.get(j2)).func_180440_a(p_175669_1_, p_175669_2_, p_175669_3_);
      }

   }

   public void func_175718_b(int p_175718_1_, BlockPos p_175718_2_, int p_175718_3_) {
      this.func_180498_a((EntityPlayer)null, p_175718_1_, p_175718_2_, p_175718_3_);
   }

   public void func_180498_a(@Nullable EntityPlayer p_180498_1_, int p_180498_2_, BlockPos p_180498_3_, int p_180498_4_) {
      try {
         for(int j2 = 0; j2 < this.field_73021_x.size(); ++j2) {
            ((IWorldEventListener)this.field_73021_x.get(j2)).func_180439_a(p_180498_1_, p_180498_2_, p_180498_3_, p_180498_4_);
         }

      } catch (Throwable throwable3) {
         CrashReport crashreport3 = CrashReport.func_85055_a(throwable3, "Playing level event");
         CrashReportCategory crashreportcategory3 = crashreport3.func_85058_a("Level event being played");
         crashreportcategory3.func_71507_a("Block coordinates", CrashReportCategory.func_180522_a(p_180498_3_));
         crashreportcategory3.func_71507_a("Event source", p_180498_1_);
         crashreportcategory3.func_71507_a("Event type", Integer.valueOf(p_180498_2_));
         crashreportcategory3.func_71507_a("Event data", Integer.valueOf(p_180498_4_));
         throw new ReportedException(crashreport3);
      }
   }

   public int func_72800_K() {
      return 256;
   }

   public int func_72940_L() {
      return this.field_73011_w.func_177495_o() ? 128 : 256;
   }

   public Random func_72843_D(int p_72843_1_, int p_72843_2_, int p_72843_3_) {
      long j2 = (long)p_72843_1_ * 341873128712L + (long)p_72843_2_ * 132897987541L + this.func_72912_H().func_76063_b() + (long)p_72843_3_;
      this.field_73012_v.setSeed(j2);
      return this.field_73012_v;
   }

   public CrashReportCategory func_72914_a(CrashReport p_72914_1_) {
      CrashReportCategory crashreportcategory3 = p_72914_1_.func_85057_a("Affected level", 1);
      crashreportcategory3.func_71507_a("Level name", this.field_72986_A == null ? "????" : this.field_72986_A.func_76065_j());
      crashreportcategory3.func_189529_a("All players", new ICrashReportDetail<String>() {
         public String call() {
            return World.this.field_73010_i.size() + " total; " + World.this.field_73010_i;
         }
      });
      crashreportcategory3.func_189529_a("Chunk stats", new ICrashReportDetail<String>() {
         public String call() {
            return World.this.field_73020_y.func_73148_d();
         }
      });

      try {
         this.field_72986_A.func_85118_a(crashreportcategory3);
      } catch (Throwable throwable3) {
         crashreportcategory3.func_71499_a("Level Data Unobtainable", throwable3);
      }

      return crashreportcategory3;
   }

   @SideOnly(Side.CLIENT)
   public double func_72919_O() {
      return this.field_72986_A.func_76067_t() == WorldType.field_77138_c ? 0.0D : 63.0D;
   }

   public void func_175715_c(int p_175715_1_, BlockPos p_175715_2_, int p_175715_3_) {
      for(int j2 = 0; j2 < this.field_73021_x.size(); ++j2) {
         IWorldEventListener iworldeventlistener = (IWorldEventListener)this.field_73021_x.get(j2);
         iworldeventlistener.func_180441_b(p_175715_1_, p_175715_2_, p_175715_3_);
      }

   }

   public Calendar func_83015_S() {
      if (this.func_82737_E() % 600L == 0L) {
         this.field_83016_L.setTimeInMillis(MinecraftServer.func_130071_aq());
      }

      return this.field_83016_L;
   }

   @SideOnly(Side.CLIENT)
   public void func_92088_a(double p_92088_1_, double p_92088_3_, double p_92088_5_, double p_92088_7_, double p_92088_9_, double p_92088_11_, @Nullable NBTTagCompound p_92088_13_) {
   }

   public Scoreboard func_96441_U() {
      return this.field_96442_D;
   }

   public void func_175666_e(BlockPos p_175666_1_, Block p_175666_2_) {
      for(EnumFacing enumfacing : EnumFacing.Plane.HORIZONTAL) {
         BlockPos blockpos1 = p_175666_1_.func_177972_a(enumfacing);
         if (this.func_175667_e(blockpos1)) {
            IBlockState iblockstate1 = this.func_180495_p(blockpos1);
            if (Blocks.field_150441_bU.func_185547_C(iblockstate1)) {
               iblockstate1.func_189546_a(this, blockpos1, p_175666_2_, p_175666_1_);
            } else if (iblockstate1.func_185915_l()) {
               blockpos1 = blockpos1.func_177972_a(enumfacing);
               iblockstate1 = this.func_180495_p(blockpos1);
               if (Blocks.field_150441_bU.func_185547_C(iblockstate1)) {
                  iblockstate1.func_189546_a(this, blockpos1, p_175666_2_, p_175666_1_);
               }
            }
         }
      }

   }

   public DifficultyInstance func_175649_E(BlockPos p_175649_1_) {
      long j2 = 0L;
      float f = 0.0F;
      if (this.func_175667_e(p_175649_1_)) {
         f = this.func_130001_d();
         j2 = this.func_175726_f(p_175649_1_).func_177416_w();
      }

      return new DifficultyInstance(this.func_175659_aa(), this.func_72820_D(), j2, f);
   }

   public EnumDifficulty func_175659_aa() {
      return this.func_72912_H().func_176130_y();
   }

   public int func_175657_ab() {
      return this.field_73008_k;
   }

   public void func_175692_b(int p_175692_1_) {
      this.field_73008_k = p_175692_1_;
   }

   @SideOnly(Side.CLIENT)
   public int func_175658_ac() {
      return this.field_73016_r;
   }

   public void func_175702_c(int p_175702_1_) {
      this.field_73016_r = p_175702_1_;
   }

   public VillageCollection func_175714_ae() {
      return this.field_72982_D;
   }

   public WorldBorder func_175723_af() {
      return this.field_175728_M;
   }

   public boolean func_72916_c(int p_72916_1_, int p_72916_2_) {
      BlockPos blockpos1 = this.func_175694_M();
      int j2 = p_72916_1_ * 16 + 8 - blockpos1.func_177958_n();
      int k2 = p_72916_2_ * 16 + 8 - blockpos1.func_177952_p();
      int l2 = 128;
      return j2 >= -128 && j2 <= 128 && k2 >= -128 && k2 <= 128;
   }

   public void func_184135_a(Packet<?> p_184135_1_) {
      throw new UnsupportedOperationException("Can't send packets to server unless you're on the client.");
   }

   public LootTableManager func_184146_ak() {
      return this.field_184151_B;
   }

   @Nullable
   public BlockPos func_190528_a(String p_190528_1_, BlockPos p_190528_2_, boolean p_190528_3_) {
      return null;
   }
}

16:49:10.663 [DEBUG] [org.gradle.api.Task] Patch succeeded: minecraft\net\minecraft\block\BlockRailDetector.java
16:49:10.663 [DEBUG] [org.gradle.api.Task] Patch succeeded: minecraft\net\minecraft\block\BlockFurnace.java
16:49:10.663 [DEBUG] [org.gradle.api.Task] Patch succeeded: minecraft\net\minecraft\block\BlockHugeMushroom.java
16:49:10.663 [DEBUG] [org.gradle.api.Task] Patch succeeded: minecraft\net\minecraft\block\BlockNewLog.java
16:49:10.663 [DEBUG] [org.gradle.api.Task] Patch succeeded: minecraft\net\minecraft\block\BlockOldLog.java
16:49:10.663 [DEBUG] [org.gradle.api.Task] Patch succeeded: minecraft\net\minecraft\block\BlockRailPowered.java
16:49:10.663 [DEBUG] [org.gradle.api.Task] Patch succeeded: minecraft\net\minecraft\block\BlockRail.java
16:49:10.663 [DEBUG] [org.gradle.api.Task] Patch succeeded: minecraft\net\minecraft\block\BlockStairs.java
16:49:10.664 [DEBUG] [org.gradle.api.Task] Patch succeeded: minecraft\net\minecraft\tileentity\TileEntityChest.java
16:49:10.664 [DEBUG] [org.gradle.api.Task] Patch succeeded: minecraft\net\minecraft\tileentity\TileEntityPiston.java
16:49:10.664 [DEBUG] [org.gradle.api.Task] Patch succeeded: minecraft\net\minecraft\block\state\BlockStateBase.java
16:49:10.664 [DEBUG] [org.gradle.api.Task] Patch succeeded: minecraft\net\minecraft\block\state\BlockStateContainer.java
16:49:10.664 [DEBUG] [org.gradle.api.Task] Patch succeeded: minecraft\net\minecraft\block\state\pattern\FactoryBlockPattern.java
16:49:10.664 [ERROR] [org.gradle.api.Task] Patching failed: minecraft\net\minecraft\block\state\pattern\BlockStateMatcher.java
16:49:10.664 [ERROR] [org.gradle.api.Task] Hunk 1 failed! Cannot find hunk target
16:49:10.664 [ERROR] [org.gradle.api.Task]              return true;
          } else {
             for(Entry<IProperty<?>, Predicate<?>> entry : this.field_177640_b.entrySet()) {
-               if (!this.func_185927_a(p_apply_1_, entry.getKey(), entry.getValue())) {
+               if (!this.func_185927_a(p_apply_1_, (IProperty)entry.getKey(), (Predicate)entry.getValue())) {
                   return false;
                }
             }
16:49:10.664 [ERROR] [org.gradle.api.Task] File state
16:49:10.664 [ERROR] [org.gradle.api.Task] package net.minecraft.block.state.pattern;

import com.google.common.base.Predicate;
import com.google.common.collect.Maps;
import java.util.Map;
import java.util.Map.Entry;
import javax.annotation.Nullable;
import net.minecraft.block.Block;
import net.minecraft.block.properties.IProperty;
import net.minecraft.block.state.BlockStateContainer;
import net.minecraft.block.state.IBlockState;

public class BlockStateMatcher implements Predicate<IBlockState> {
   public static final Predicate<IBlockState> field_185928_a = new Predicate<IBlockState>() {
      public boolean apply(@Nullable IBlockState p_apply_1_) {
         return true;
      }
   };
   private final BlockStateContainer field_177641_a;
   private final Map<IProperty<?>, Predicate<?>> field_177640_b = Maps.<IProperty<?>, Predicate<?>>newHashMap();

   private BlockStateMatcher(BlockStateContainer p_i45653_1_) {
      this.field_177641_a = p_i45653_1_;
   }

   public static BlockStateMatcher func_177638_a(Block p_177638_0_) {
      return new BlockStateMatcher(p_177638_0_.func_176194_O());
   }

   public boolean apply(@Nullable IBlockState p_apply_1_) {
      if (p_apply_1_ != null && p_apply_1_.func_177230_c().equals(this.field_177641_a.func_177622_c())) {
         if (this.field_177640_b.isEmpty()) {
            return true;
         } else {
            for(Entry<IProperty<?>, Predicate<?>> entry : this.field_177640_b.entrySet()) {
               if (!this.func_185927_a(p_apply_1_, (IProperty)entry.getKey(), (Predicate)entry.getValue())) {
                  return false;
               }
            }

            return true;
         }
      } else {
         return false;
      }
   }

   protected <T extends Comparable<T>> boolean func_185927_a(IBlockState p_185927_1_, IProperty<T> p_185927_2_, Predicate<?> p_185927_3_) {
      return p_185927_3_.apply(p_185927_1_.func_177229_b(p_185927_2_));
   }

   public <V extends Comparable<V>> BlockStateMatcher func_177637_a(IProperty<V> p_177637_1_, Predicate<? extends V> p_177637_2_) {
      if (!this.field_177641_a.func_177623_d().contains(p_177637_1_)) {
         throw new IllegalArgumentException(this.field_177641_a + " cannot support property " + p_177637_1_);
      } else {
         this.field_177640_b.put(p_177637_1_, p_177637_2_);
         return this;
      }
   }
}

16:49:10.665 [DEBUG] [org.gradle.api.Task] Patch succeeded: minecraft\net\minecraft\world\chunk\storage\AnvilChunkLoader.java
16:49:10.665 [DEBUG] [org.gradle.api.Task] Patch succeeded: minecraft\net\minecraft\world\gen\structure\StructureMineshaftPieces.java
16:49:10.665 [DEBUG] [org.gradle.api.Task] Patch succeeded: minecraft\net\minecraft\world\gen\structure\StructureNetherBridgePieces.java
16:49:10.665 [DEBUG] [org.gradle.api.Task] Patch succeeded: minecraft\net\minecraft\world\gen\structure\StructureStrongholdPieces.java
16:49:10.666 [DEBUG] [org.gradle.api.Task] Patch succeeded: minecraft\net\minecraft\world\storage\loot\functions\LootFunctionManager.java
16:49:10.666 [DEBUG] [org.gradle.api.Task] Patch succeeded: minecraft\net\minecraft\world\storage\loot\conditions\LootConditionManager.java
16:49:10.666 [DEBUG] [org.gradle.api.Task] Patch succeeded: minecraft\net\minecraft\world\storage\loot\properties\EntityPropertyManager.java
16:49:10.666 [ERROR] [org.gradle.api.Task] Patching failed: minecraft\net\minecraft\client\settings\KeyBinding.java
16:49:10.666 [ERROR] [org.gradle.api.Task] Hunk 1 failed! Cannot find hunk target
16:49:10.667 [ERROR] [org.gradle.api.Task]     public static Supplier<String> func_193626_b(String p_193626_0_) {
       KeyBinding keybinding = field_74516_a.get(p_193626_0_);
       return keybinding == null ? () -> {
-         return p_193624_0_;
+         return p_193626_0_;
       } : () -> {
-         return GameSettings.func_74298_c(p_193625_0_.func_151463_i());
+         return GameSettings.func_74298_c(keybinding.func_151463_i());
       };
    }

16:49:10.667 [ERROR] [org.gradle.api.Task] File state
16:49:10.667 [ERROR] [org.gradle.api.Task] package net.minecraft.client.settings;

import com.google.common.collect.Maps;
import com.google.common.collect.Sets;
import java.util.Map;
import java.util.Set;
import java.util.function.Supplier;
import net.minecraft.client.resources.I18n;
import net.minecraft.util.IntHashMap;
import net.minecraftforge.fml.relauncher.Side;
import net.minecraftforge.fml.relauncher.SideOnly;
import org.lwjgl.input.Keyboard;

@SideOnly(Side.CLIENT)
public class KeyBinding implements Comparable<KeyBinding> {
   private static final Map<String, KeyBinding> field_74516_a = Maps.<String, KeyBinding>newHashMap();
   private static final IntHashMap<KeyBinding> field_74514_b = new IntHashMap<KeyBinding>();
   private static final Set<String> field_151473_c = Sets.<String>newHashSet();
   private static final Map<String, Integer> field_193627_d = Maps.<String, Integer>newHashMap();
   private final String field_74515_c;
   private final int field_151472_e;
   private final String field_151471_f;
   private int field_74512_d;
   private boolean field_74513_e;
   private int field_151474_i;

   public static void func_74507_a(int p_74507_0_) {
      if (p_74507_0_ != 0) {
         KeyBinding keybinding = field_74514_b.func_76041_a(p_74507_0_);
         if (keybinding != null) {
            ++keybinding.field_151474_i;
         }

      }
   }

   public static void func_74510_a(int p_74510_0_, boolean p_74510_1_) {
      if (p_74510_0_ != 0) {
         KeyBinding keybinding = field_74514_b.func_76041_a(p_74510_0_);
         if (keybinding != null) {
            keybinding.field_74513_e = p_74510_1_;
         }

      }
   }

   public static void func_186704_a() {
      for(KeyBinding keybinding : field_74516_a.values()) {
         try {
            func_74510_a(keybinding.field_74512_d, keybinding.field_74512_d < 256 && Keyboard.isKeyDown(keybinding.field_74512_d));
         } catch (IndexOutOfBoundsException var3) {
            ;
         }
      }

   }

   public static void func_74506_a() {
      for(KeyBinding keybinding : field_74516_a.values()) {
         keybinding.func_74505_d();
      }

   }

   public static void func_74508_b() {
      field_74514_b.func_76046_c();

      for(KeyBinding keybinding : field_74516_a.values()) {
         field_74514_b.func_76038_a(keybinding.field_74512_d, keybinding);
      }

   }

   public static Set<String> func_151467_c() {
      return field_151473_c;
   }

   public KeyBinding(String p_i45001_1_, int p_i45001_2_, String p_i45001_3_) {
      this.field_74515_c = p_i45001_1_;
      this.field_74512_d = p_i45001_2_;
      this.field_151472_e = p_i45001_2_;
      this.field_151471_f = p_i45001_3_;
      field_74516_a.put(p_i45001_1_, this);
      field_74514_b.func_76038_a(p_i45001_2_, this);
      field_151473_c.add(p_i45001_3_);
   }

   public boolean func_151470_d() {
      return this.field_74513_e;
   }

   public String func_151466_e() {
      return this.field_151471_f;
   }

   public boolean func_151468_f() {
      if (this.field_151474_i == 0) {
         return false;
      } else {
         --this.field_151474_i;
         return true;
      }
   }

   private void func_74505_d() {
      this.field_151474_i = 0;
      this.field_74513_e = false;
   }

   public String func_151464_g() {
      return this.field_74515_c;
   }

   public int func_151469_h() {
      return this.field_151472_e;
   }

   public int func_151463_i() {
      return this.field_74512_d;
   }

   public void func_151462_b(int p_151462_1_) {
      this.field_74512_d = p_151462_1_;
   }

   public int compareTo(KeyBinding p_compareTo_1_) {
      return this.field_151471_f.equals(p_compareTo_1_.field_151471_f) ? I18n.func_135052_a(this.field_74515_c).compareTo(I18n.func_135052_a(p_compareTo_1_.field_74515_c)) : ((Integer)field_193627_d.get(this.field_151471_f)).compareTo((Integer)field_193627_d.get(p_compareTo_1_.field_151471_f));
   }

   public static Supplier<String> func_193626_b(String p_193626_0_) {
      KeyBinding keybinding = (KeyBinding)field_74516_a.get(p_193626_0_);
      return keybinding == null ? () -> {
         return p_193624_0_;
      } : () -> {
         return GameSettings.func_74298_c(p_193625_0_.func_151463_i());
      };
   }

   static {
      field_193627_d.put("key.categories.movement", Integer.valueOf(1));
      field_193627_d.put("key.categories.gameplay", Integer.valueOf(2));
      field_193627_d.put("key.categories.inventory", Integer.valueOf(3));
      field_193627_d.put("key.categories.creative", Integer.valueOf(4));
      field_193627_d.put("key.categories.multiplayer", Integer.valueOf(5));
      field_193627_d.put("key.categories.ui", Integer.valueOf(6));
      field_193627_d.put("key.categories.misc", Integer.valueOf(7));
   }
}

16:49:10.669 [DEBUG] [org.gradle.api.Task] Patch succeeded: minecraft\net\minecraft\client\Minecraft.java
16:49:10.669 [DEBUG] [org.gradle.api.Task] Patch succeeded: minecraft\net\minecraft\client\gui\GuiOverlayDebug.java
16:49:10.669 [ERROR] [org.gradle.api.Task] Patching failed: minecraft\net\minecraft\client\gui\GuiSnooper.java
16:49:10.669 [ERROR] [org.gradle.api.Task] Hunk 1 failed! Cannot find hunk target
16:49:10.669 [ERROR] [org.gradle.api.Task]        this.field_146292_n.add(new GuiButton(2, this.field_146294_l / 2 + 2, this.field_146295_m - 30, 150, 20, I18n.func_135052_a("gui.done")));
       boolean flag = this.field_146297_k.func_71401_C() != null && this.field_146297_k.func_71401_C().func_80003_ah() != null;

-      for(Entry<String, String> entry : (new TreeMap(this.field_146297_k.func_71378_E().func_76465_c())).entrySet()) {
+      for(Entry<String, String> entry : (new TreeMap<String, String>(this.field_146297_k.func_71378_E().func_76465_c())).entrySet()) {
          this.field_146604_g.add((flag ? "C " : "") + (String)entry.getKey());
          this.field_146609_h.add(this.field_146289_q.func_78269_a(entry.getValue(), this.field_146294_l - 220));
       }

       if (flag) {
-         for(Entry<String, String> entry1 : (new TreeMap(this.field_146297_k.func_71401_C().func_80003_ah().func_76465_c())).entrySet()) {
+         for(Entry<String, String> entry1 : (new TreeMap<String, String>(this.field_146297_k.func_71401_C().func_80003_ah().func_76465_c())).entrySet()) {
             this.field_146604_g.add("S " + (String)entry1.getKey());
             this.field_146609_h.add(this.field_146289_q.func_78269_a(entry1.getValue(), this.field_146294_l - 220));
          }
16:49:10.669 [ERROR] [org.gradle.api.Task] File state
16:49:10.669 [ERROR] [org.gradle.api.Task] package net.minecraft.client.gui;

import com.google.common.collect.Lists;
import java.io.IOException;
import java.util.TreeMap;
import java.util.Map.Entry;
import net.minecraft.client.resources.I18n;
import net.minecraft.client.settings.GameSettings;
import net.minecraftforge.fml.relauncher.Side;
import net.minecraftforge.fml.relauncher.SideOnly;

@SideOnly(Side.CLIENT)
public class GuiSnooper extends GuiScreen {
   private final GuiScreen field_146608_a;
   private final GameSettings field_146603_f;
   private final java.util.List<String> field_146604_g = Lists.<String>newArrayList();
   private final java.util.List<String> field_146609_h = Lists.<String>newArrayList();
   private String field_146610_i;
   private String[] field_146607_r;
   private GuiSnooper.List field_146606_s;
   private GuiButton field_146605_t;

   public GuiSnooper(GuiScreen p_i1061_1_, GameSettings p_i1061_2_) {
      this.field_146608_a = p_i1061_1_;
      this.field_146603_f = p_i1061_2_;
   }

   public void func_73866_w_() {
      this.field_146610_i = I18n.func_135052_a("options.snooper.title");
      String s = I18n.func_135052_a("options.snooper.desc");
      java.util.List<String> list = Lists.<String>newArrayList();

      for(String s1 : this.field_146289_q.func_78271_c(s, this.field_146294_l - 30)) {
         list.add(s1);
      }

      this.field_146607_r = (String[])list.toArray(new String[list.size()]);
      this.field_146604_g.clear();
      this.field_146609_h.clear();
      this.field_146605_t = this.func_189646_b(new GuiButton(1, this.field_146294_l / 2 - 152, this.field_146295_m - 30, 150, 20, this.field_146603_f.func_74297_c(GameSettings.Options.SNOOPER_ENABLED)));
      this.field_146292_n.add(new GuiButton(2, this.field_146294_l / 2 + 2, this.field_146295_m - 30, 150, 20, I18n.func_135052_a("gui.done")));
      boolean flag = this.field_146297_k.func_71401_C() != null && this.field_146297_k.func_71401_C().func_80003_ah() != null;

      for(Entry<String, String> entry : (new TreeMap(this.field_146297_k.func_71378_E().func_76465_c())).entrySet()) {
         this.field_146604_g.add((flag ? "C " : "") + (String)entry.getKey());
         this.field_146609_h.add(this.field_146289_q.func_78269_a((String)entry.getValue(), this.field_146294_l - 220));
      }

      if (flag) {
         for(Entry<String, String> entry1 : (new TreeMap(this.field_146297_k.func_71401_C().func_80003_ah().func_76465_c())).entrySet()) {
            this.field_146604_g.add("S " + (String)entry1.getKey());
            this.field_146609_h.add(this.field_146289_q.func_78269_a((String)entry1.getValue(), this.field_146294_l - 220));
         }
      }

      this.field_146606_s = new GuiSnooper.List();
   }

   public void func_146274_d() throws IOException {
      super.func_146274_d();
      this.field_146606_s.func_178039_p();
   }

   protected void func_146284_a(GuiButton p_146284_1_) throws IOException {
      if (p_146284_1_.field_146124_l) {
         if (p_146284_1_.field_146127_k == 2) {
            this.field_146603_f.func_74303_b();
            this.field_146603_f.func_74303_b();
            this.field_146297_k.func_147108_a(this.field_146608_a);
         }

         if (p_146284_1_.field_146127_k == 1) {
            this.field_146603_f.func_74306_a(GameSettings.Options.SNOOPER_ENABLED, 1);
            this.field_146605_t.field_146126_j = this.field_146603_f.func_74297_c(GameSettings.Options.SNOOPER_ENABLED);
         }

      }
   }

   public void func_73863_a(int p_73863_1_, int p_73863_2_, float p_73863_3_) {
      this.func_146276_q_();
      this.field_146606_s.func_148128_a(p_73863_1_, p_73863_2_, p_73863_3_);
      this.func_73732_a(this.field_146289_q, this.field_146610_i, this.field_146294_l / 2, 8, 16777215);
      int i = 22;

      for(String s : this.field_146607_r) {
         this.func_73732_a(this.field_146289_q, s, this.field_146294_l / 2, i, 8421504);
         i += this.field_146289_q.field_78288_b;
      }

      super.func_73863_a(p_73863_1_, p_73863_2_, p_73863_3_);
   }

   @SideOnly(Side.CLIENT)
   class List extends GuiSlot {
      public List() {
         super(GuiSnooper.this.field_146297_k, GuiSnooper.this.field_146294_l, GuiSnooper.this.field_146295_m, 80, GuiSnooper.this.field_146295_m - 40, GuiSnooper.this.field_146289_q.field_78288_b + 1);
      }

      protected int func_148127_b() {
         return GuiSnooper.this.field_146604_g.size();
      }

      protected void func_148144_a(int p_148144_1_, boolean p_148144_2_, int p_148144_3_, int p_148144_4_) {
      }

      protected boolean func_148131_a(int p_148131_1_) {
         return false;
      }

      protected void func_148123_a() {
      }

      protected void func_192637_a(int p_192637_1_, int p_192637_2_, int p_192637_3_, int p_192637_4_, int p_192637_5_, int p_192637_6_, float p_192637_7_) {
         GuiSnooper.this.field_146289_q.func_78276_b((String)GuiSnooper.this.field_146604_g.get(p_192637_1_), 10, p_192637_3_, 16777215);
         GuiSnooper.this.field_146289_q.func_78276_b((String)GuiSnooper.this.field_146609_h.get(p_192637_1_), 230, p_192637_3_, 16777215);
      }

      protected int func_148137_d() {
         return this.field_148155_a - 10;
      }
   }
}

16:49:10.671 [DEBUG] [org.gradle.api.Task] Patch succeeded: minecraft\net\minecraft\client\gui\recipebook\GuiRecipeBook.java
16:49:10.671 [DEBUG] [org.gradle.api.Task] Patch succeeded: minecraft\net\minecraft\client\model\ModelBiped.java
16:49:10.671 [DEBUG] [org.gradle.api.Task] Patch succeeded: minecraft\net\minecraft\client\network\NetHandlerPlayClient.java
16:49:10.671 [DEBUG] [org.gradle.api.Task] Patch succeeded: minecraft\net\minecraft\client\particle\ParticleManager.java
16:49:10.671 [DEBUG] [org.gradle.api.Task] Patch succeeded: minecraft\net\minecraft\client\renderer\EntityRenderer.java
16:49:10.671 [DEBUG] [org.gradle.api.Task] Patch succeeded: minecraft\net\minecraft\client\renderer\ItemRenderer.java
16:49:10.672 [DEBUG] [org.gradle.api.Task] Patch succeeded: minecraft\net\minecraft\client\renderer\RenderGlobal.java
16:49:10.672 [DEBUG] [org.gradle.api.Task] Patch succeeded: minecraft\net\minecraft\client\renderer\BlockRendererDispatcher.java
16:49:10.672 [DEBUG] [org.gradle.api.Task] Patch succeeded: minecraft\net\minecraft\client\renderer\block\model\Variant.java
16:49:10.672 [DEBUG] [org.gradle.api.Task] Patch succeeded: minecraft\net\minecraft\client\renderer\block\statemap\StateMapperBase.java
16:49:10.672 [ERROR] [org.gradle.api.Task] Patching failed: minecraft\net\minecraft\client\renderer\block\statemap\StateMap.java
16:49:10.672 [ERROR] [org.gradle.api.Task] Hunk 1 failed! Cannot find hunk target
16:49:10.672 [ERROR] [org.gradle.api.Task]     }

    private <T extends Comparable<T>> String func_187490_a(IProperty<T> p_187490_1_, Map<IProperty<?>, Comparable<?>> p_187490_2_) {
-      return p_187490_1_.func_177702_a(p_187490_2_.remove(this.field_178142_a));
+      return p_187490_1_.func_177702_a((T)p_187490_2_.remove(this.field_178142_a));
    }

    @SideOnly(Side.CLIENT)
16:49:10.673 [ERROR] [org.gradle.api.Task] File state
16:49:10.673 [ERROR] [org.gradle.api.Task] package net.minecraft.client.renderer.block.statemap;

import com.google.common.collect.Lists;
import com.google.common.collect.Maps;
import java.util.Collections;
import java.util.List;
import java.util.Map;
import javax.annotation.Nullable;
import net.minecraft.block.Block;
import net.minecraft.block.properties.IProperty;
import net.minecraft.block.state.IBlockState;
import net.minecraft.client.renderer.block.model.ModelResourceLocation;
import net.minecraft.util.ResourceLocation;
import net.minecraftforge.fml.relauncher.Side;
import net.minecraftforge.fml.relauncher.SideOnly;

@SideOnly(Side.CLIENT)
public class StateMap extends StateMapperBase {
   private final IProperty<?> field_178142_a;
   private final String field_178141_c;
   private final List<IProperty<?>> field_178140_d;

   private StateMap(@Nullable IProperty<?> p_i46210_1_, @Nullable String p_i46210_2_, List<IProperty<?>> p_i46210_3_) {
      this.field_178142_a = p_i46210_1_;
      this.field_178141_c = p_i46210_2_;
      this.field_178140_d = p_i46210_3_;
   }

   protected ModelResourceLocation func_178132_a(IBlockState p_178132_1_) {
      Map<IProperty<?>, Comparable<?>> map = Maps.<IProperty<?>, Comparable<?>>newLinkedHashMap(p_178132_1_.func_177228_b());
      String s;
      if (this.field_178142_a == null) {
         s = ((ResourceLocation)Block.field_149771_c.func_177774_c(p_178132_1_.func_177230_c())).toString();
      } else {
         s = this.func_187490_a(this.field_178142_a, map);
      }

      if (this.field_178141_c != null) {
         s = s + this.field_178141_c;
      }

      for(IProperty<?> iproperty : this.field_178140_d) {
         map.remove(iproperty);
      }

      return new ModelResourceLocation(s, this.func_178131_a(map));
   }

   private <T extends Comparable<T>> String func_187490_a(IProperty<T> p_187490_1_, Map<IProperty<?>, Comparable<?>> p_187490_2_) {
      return p_187490_1_.func_177702_a((Comparable)p_187490_2_.remove(this.field_178142_a));
   }

   @SideOnly(Side.CLIENT)
   public static class Builder {
      private IProperty<?> field_178445_a;
      private String field_178443_b;
      private final List<IProperty<?>> field_178444_c = Lists.<IProperty<?>>newArrayList();

      public StateMap.Builder func_178440_a(IProperty<?> p_178440_1_) {
         this.field_178445_a = p_178440_1_;
         return this;
      }

      public StateMap.Builder func_178439_a(String p_178439_1_) {
         this.field_178443_b = p_178439_1_;
         return this;
      }

      public StateMap.Builder func_178442_a(IProperty<?>... p_178442_1_) {
         Collections.addAll(this.field_178444_c, p_178442_1_);
         return this;
      }

      public StateMap func_178441_a() {
         return new StateMap(this.field_178445_a, this.field_178443_b, this.field_178444_c);
      }
   }
}

16:49:10.674 [DEBUG] [org.gradle.api.Task] Patch succeeded: minecraft\net\minecraft\client\renderer\tileentity\TileEntityRendererDispatcher.java
16:49:10.674 [DEBUG] [org.gradle.api.Task] Patch succeeded: minecraft\net\minecraft\client\renderer\chunk\ChunkRenderWorker.java
16:49:10.674 [DEBUG] [org.gradle.api.Task] Patch succeeded: minecraft\net\minecraft\client\renderer\entity\RenderArmorStand.java
16:49:10.674 [ERROR] [org.gradle.api.Task] Patching failed: minecraft\net\minecraft\client\renderer\entity\RenderManager.java
16:49:10.674 [ERROR] [org.gradle.api.Task] Hunk 2 failed! Cannot find hunk target
16:49:10.674 [ERROR] [org.gradle.api.Task]        if (p_78713_1_ instanceof AbstractClientPlayer) {
          String s = ((AbstractClientPlayer)p_78713_1_).func_175154_l();
          RenderPlayer renderplayer = this.field_178636_l.get(s);
-         return renderplayer != null ? renderplayer : this.field_178637_m;
+         return (Render<T>)(renderplayer != null ? renderplayer : this.field_178637_m);
       } else {
          return this.<T>func_78715_a(p_78713_1_.getClass());
       }
16:49:10.674 [ERROR] [org.gradle.api.Task] File state
16:49:10.674 [ERROR] [org.gradle.api.Task] package net.minecraft.client.renderer.entity;

import com.google.common.collect.Maps;
import java.util.Map;
import javax.annotation.Nullable;
import net.minecraft.block.Block;
import net.minecraft.block.BlockBed;
import net.minecraft.block.state.IBlockState;
import net.minecraft.client.Minecraft;
import net.minecraft.client.entity.AbstractClientPlayer;
import net.minecraft.client.gui.FontRenderer;
import net.minecraft.client.renderer.BufferBuilder;
import net.minecraft.client.renderer.GlStateManager;
import net.minecraft.client.renderer.OpenGlHelper;
import net.minecraft.client.renderer.RenderGlobal;
import net.minecraft.client.renderer.RenderItem;
import net.minecraft.client.renderer.Tessellator;
import net.minecraft.client.renderer.culling.ICamera;
import net.minecraft.client.renderer.texture.TextureManager;
import net.minecraft.client.renderer.vertex.DefaultVertexFormats;
import net.minecraft.client.settings.GameSettings;
import net.minecraft.crash.CrashReport;
import net.minecraft.crash.CrashReportCategory;
import net.minecraft.entity.Entity;
import net.minecraft.entity.EntityAreaEffectCloud;
import net.minecraft.entity.EntityLeashKnot;
import net.minecraft.entity.EntityLivingBase;
import net.minecraft.entity.boss.EntityDragon;
import net.minecraft.entity.boss.EntityWither;
import net.minecraft.entity.effect.EntityLightningBolt;
import net.minecraft.entity.item.EntityArmorStand;
import net.minecraft.entity.item.EntityBoat;
import net.minecraft.entity.item.EntityEnderCrystal;
import net.minecraft.entity.item.EntityEnderEye;
import net.minecraft.entity.item.EntityEnderPearl;
import net.minecraft.entity.item.EntityExpBottle;
import net.minecraft.entity.item.EntityFallingBlock;
import net.minecraft.entity.item.EntityFireworkRocket;
import net.minecraft.entity.item.EntityItem;
import net.minecraft.entity.item.EntityItemFrame;
import net.minecraft.entity.item.EntityMinecart;
import net.minecraft.entity.item.EntityMinecartMobSpawner;
import net.minecraft.entity.item.EntityMinecartTNT;
import net.minecraft.entity.item.EntityPainting;
import net.minecraft.entity.item.EntityTNTPrimed;
import net.minecraft.entity.item.EntityXPOrb;
import net.minecraft.entity.monster.EntityBlaze;
import net.minecraft.entity.monster.EntityCaveSpider;
import net.minecraft.entity.monster.EntityCreeper;
import net.minecraft.entity.monster.EntityElderGuardian;
import net.minecraft.entity.monster.EntityEnderman;
import net.minecraft.entity.monster.EntityEndermite;
import net.minecraft.entity.monster.EntityEvoker;
import net.minecraft.entity.monster.EntityGhast;
import net.minecraft.entity.monster.EntityGiantZombie;
import net.minecraft.entity.monster.EntityGuardian;
import net.minecraft.entity.monster.EntityHusk;
import net.minecraft.entity.monster.EntityIllusionIllager;
import net.minecraft.entity.monster.EntityIronGolem;
import net.minecraft.entity.monster.EntityMagmaCube;
import net.minecraft.entity.monster.EntityPigZombie;
import net.minecraft.entity.monster.EntityPolarBear;
import net.minecraft.entity.monster.EntityShulker;
import net.minecraft.entity.monster.EntitySilverfish;
import net.minecraft.entity.monster.EntitySkeleton;
import net.minecraft.entity.monster.EntitySlime;
import net.minecraft.entity.monster.EntitySnowman;
import net.minecraft.entity.monster.EntitySpider;
import net.minecraft.entity.monster.EntityStray;
import net.minecraft.entity.monster.EntityVex;
import net.minecraft.entity.monster.EntityVindicator;
import net.minecraft.entity.monster.EntityWitch;
import net.minecraft.entity.monster.EntityWitherSkeleton;
import net.minecraft.entity.monster.EntityZombie;
import net.minecraft.entity.monster.EntityZombieVillager;
import net.minecraft.entity.passive.EntityBat;
import net.minecraft.entity.passive.EntityChicken;
import net.minecraft.entity.passive.EntityCow;
import net.minecraft.entity.passive.EntityDonkey;
import net.minecraft.entity.passive.EntityHorse;
import net.minecraft.entity.passive.EntityLlama;
import net.minecraft.entity.passive.EntityMooshroom;
import net.minecraft.entity.passive.EntityMule;
import net.minecraft.entity.passive.EntityOcelot;
import net.minecraft.entity.passive.EntityParrot;
import net.minecraft.entity.passive.EntityPig;
import net.minecraft.entity.passive.EntityRabbit;
import net.minecraft.entity.passive.EntitySheep;
import net.minecraft.entity.passive.EntitySkeletonHorse;
import net.minecraft.entity.passive.EntitySquid;
import net.minecraft.entity.passive.EntityVillager;
import net.minecraft.entity.passive.EntityWolf;
import net.minecraft.entity.passive.EntityZombieHorse;
import net.minecraft.entity.projectile.EntityDragonFireball;
import net.minecraft.entity.projectile.EntityEgg;
import net.minecraft.entity.projectile.EntityEvokerFangs;
import net.minecraft.entity.projectile.EntityFishHook;
import net.minecraft.entity.projectile.EntityLargeFireball;
import net.minecraft.entity.projectile.EntityLlamaSpit;
import net.minecraft.entity.projectile.EntityPotion;
import net.minecraft.entity.projectile.EntityShulkerBullet;
import net.minecraft.entity.projectile.EntitySmallFireball;
import net.minecraft.entity.projectile.EntitySnowball;
import net.minecraft.entity.projectile.EntitySpectralArrow;
import net.minecraft.entity.projectile.EntityTippedArrow;
import net.minecraft.entity.projectile.EntityWitherSkull;
import net.minecraft.init.Blocks;
import net.minecraft.init.Items;
import net.minecraft.util.EnumFacing;
import net.minecraft.util.ReportedException;
import net.minecraft.util.math.AxisAlignedBB;
import net.minecraft.util.math.BlockPos;
import net.minecraft.util.math.Vec3d;
import net.minecraft.world.World;
import net.minecraftforge.fml.relauncher.Side;
import net.minecraftforge.fml.relauncher.SideOnly;

@SideOnly(Side.CLIENT)
public class RenderManager {
   public final Map<Class<? extends Entity>, Render<? extends Entity>> field_78729_o = Maps.<Class<? extends Entity>, Render<? extends Entity>>newHashMap();
   private final Map<String, RenderPlayer> field_178636_l = Maps.<String, RenderPlayer>newHashMap();
   private final RenderPlayer field_178637_m;
   private FontRenderer field_78736_p;
   private double field_78725_b;
   private double field_78726_c;
   private double field_78723_d;
   public TextureManager field_78724_e;
   public World field_78722_g;
   public Entity field_78734_h;
   public Entity field_147941_i;
   public float field_78735_i;
   public float field_78732_j;
   public GameSettings field_78733_k;
   public double field_78730_l;
   public double field_78731_m;
   public double field_78728_n;
   private boolean field_178639_r;
   private boolean field_178638_s = true;
   private boolean field_85095_o;

   public RenderManager(TextureManager p_i46180_1_, RenderItem p_i46180_2_) {
      this.field_78724_e = p_i46180_1_;
      this.field_78729_o.put(EntityCaveSpider.class, new RenderCaveSpider(this));
      this.field_78729_o.put(EntitySpider.class, new RenderSpider(this));
      this.field_78729_o.put(EntityPig.class, new RenderPig(this));
      this.field_78729_o.put(EntitySheep.class, new RenderSheep(this));
      this.field_78729_o.put(EntityCow.class, new RenderCow(this));
      this.field_78729_o.put(EntityMooshroom.class, new RenderMooshroom(this));
      this.field_78729_o.put(EntityWolf.class, new RenderWolf(this));
      this.field_78729_o.put(EntityChicken.class, new RenderChicken(this));
      this.field_78729_o.put(EntityOcelot.class, new RenderOcelot(this));
      this.field_78729_o.put(EntityRabbit.class, new RenderRabbit(this));
      this.field_78729_o.put(EntityParrot.class, new RenderParrot(this));
      this.field_78729_o.put(EntitySilverfish.class, new RenderSilverfish(this));
      this.field_78729_o.put(EntityEndermite.class, new RenderEndermite(this));
      this.field_78729_o.put(EntityCreeper.class, new RenderCreeper(this));
      this.field_78729_o.put(EntityEnderman.class, new RenderEnderman(this));
      this.field_78729_o.put(EntitySnowman.class, new RenderSnowMan(this));
      this.field_78729_o.put(EntitySkeleton.class, new RenderSkeleton(this));
      this.field_78729_o.put(EntityWitherSkeleton.class, new RenderWitherSkeleton(this));
      this.field_78729_o.put(EntityStray.class, new RenderStray(this));
      this.field_78729_o.put(EntityWitch.class, new RenderWitch(this));
      this.field_78729_o.put(EntityBlaze.class, new RenderBlaze(this));
      this.field_78729_o.put(EntityPigZombie.class, new RenderPigZombie(this));
      this.field_78729_o.put(EntityZombie.class, new RenderZombie(this));
      this.field_78729_o.put(EntityZombieVillager.class, new RenderZombieVillager(this));
      this.field_78729_o.put(EntityHusk.class, new RenderHusk(this));
      this.field_78729_o.put(EntitySlime.class, new RenderSlime(this));
      this.field_78729_o.put(EntityMagmaCube.class, new RenderMagmaCube(this));
      this.field_78729_o.put(EntityGiantZombie.class, new RenderGiantZombie(this, 6.0F));
      this.field_78729_o.put(EntityGhast.class, new RenderGhast(this));
      this.field_78729_o.put(EntitySquid.class, new RenderSquid(this));
      this.field_78729_o.put(EntityVillager.class, new RenderVillager(this));
      this.field_78729_o.put(EntityIronGolem.class, new RenderIronGolem(this));
      this.field_78729_o.put(EntityBat.class, new RenderBat(this));
      this.field_78729_o.put(EntityGuardian.class, new RenderGuardian(this));
      this.field_78729_o.put(EntityElderGuardian.class, new RenderElderGuardian(this));
      this.field_78729_o.put(EntityShulker.class, new RenderShulker(this));
      this.field_78729_o.put(EntityPolarBear.class, new RenderPolarBear(this));
      this.field_78729_o.put(EntityEvoker.class, new RenderEvoker(this));
      this.field_78729_o.put(EntityVindicator.class, new RenderVindicator(this));
      this.field_78729_o.put(EntityVex.class, new RenderVex(this));
      this.field_78729_o.put(EntityIllusionIllager.class, new RenderIllusionIllager(this));
      this.field_78729_o.put(EntityDragon.class, new RenderDragon(this));
      this.field_78729_o.put(EntityEnderCrystal.class, new RenderEnderCrystal(this));
      this.field_78729_o.put(EntityWither.class, new RenderWither(this));
      this.field_78729_o.put(Entity.class, new RenderEntity(this));
      this.field_78729_o.put(EntityPainting.class, new RenderPainting(this));
      this.field_78729_o.put(EntityItemFrame.class, new RenderItemFrame(this, p_i46180_2_));
      this.field_78729_o.put(EntityLeashKnot.class, new RenderLeashKnot(this));
      this.field_78729_o.put(EntityTippedArrow.class, new RenderTippedArrow(this));
      this.field_78729_o.put(EntitySpectralArrow.class, new RenderSpectralArrow(this));
      this.field_78729_o.put(EntitySnowball.class, new RenderSnowball(this, Items.field_151126_ay, p_i46180_2_));
      this.field_78729_o.put(EntityEnderPearl.class, new RenderSnowball(this, Items.field_151079_bi, p_i46180_2_));
      this.field_78729_o.put(EntityEnderEye.class, new RenderSnowball(this, Items.field_151061_bv, p_i46180_2_));
      this.field_78729_o.put(EntityEgg.class, new RenderSnowball(this, Items.field_151110_aK, p_i46180_2_));
      this.field_78729_o.put(EntityPotion.class, new RenderPotion(this, p_i46180_2_));
      this.field_78729_o.put(EntityExpBottle.class, new RenderSnowball(this, Items.field_151062_by, p_i46180_2_));
      this.field_78729_o.put(EntityFireworkRocket.class, new RenderSnowball(this, Items.field_151152_bP, p_i46180_2_));
      this.field_78729_o.put(EntityLargeFireball.class, new RenderFireball(this, 2.0F));
      this.field_78729_o.put(EntitySmallFireball.class, new RenderFireball(this, 0.5F));
      this.field_78729_o.put(EntityDragonFireball.class, new RenderDragonFireball(this));
      this.field_78729_o.put(EntityWitherSkull.class, new RenderWitherSkull(this));
      this.field_78729_o.put(EntityShulkerBullet.class, new RenderShulkerBullet(this));
      this.field_78729_o.put(EntityItem.class, new RenderEntityItem(this, p_i46180_2_));
      this.field_78729_o.put(EntityXPOrb.class, new RenderXPOrb(this));
      this.field_78729_o.put(EntityTNTPrimed.class, new RenderTNTPrimed(this));
      this.field_78729_o.put(EntityFallingBlock.class, new RenderFallingBlock(this));
      this.field_78729_o.put(EntityArmorStand.class, new RenderArmorStand(this));
      this.field_78729_o.put(EntityEvokerFangs.class, new RenderEvokerFangs(this));
      this.field_78729_o.put(EntityMinecartTNT.class, new RenderTntMinecart(this));
      this.field_78729_o.put(EntityMinecartMobSpawner.class, new RenderMinecartMobSpawner(this));
      this.field_78729_o.put(EntityMinecart.class, new RenderMinecart(this));
      this.field_78729_o.put(EntityBoat.class, new RenderBoat(this));
      this.field_78729_o.put(EntityFishHook.class, new RenderFish(this));
      this.field_78729_o.put(EntityAreaEffectCloud.class, new RenderAreaEffectCloud(this));
      this.field_78729_o.put(EntityHorse.class, new RenderHorse(this));
      this.field_78729_o.put(EntitySkeletonHorse.class, new RenderAbstractHorse(this));
      this.field_78729_o.put(EntityZombieHorse.class, new RenderAbstractHorse(this));
      this.field_78729_o.put(EntityMule.class, new RenderAbstractHorse(this, 0.92F));
      this.field_78729_o.put(EntityDonkey.class, new RenderAbstractHorse(this, 0.87F));
      this.field_78729_o.put(EntityLlama.class, new RenderLlama(this));
      this.field_78729_o.put(EntityLlamaSpit.class, new RenderLlamaSpit(this));
      this.field_78729_o.put(EntityLightningBolt.class, new RenderLightningBolt(this));
      this.field_178637_m = new RenderPlayer(this);
      this.field_178636_l.put("default", this.field_178637_m);
      this.field_178636_l.put("slim", new RenderPlayer(this, true));
   }

   public void func_178628_a(double p_178628_1_, double p_178628_3_, double p_178628_5_) {
      this.field_78725_b = p_178628_1_;
      this.field_78726_c = p_178628_3_;
      this.field_78723_d = p_178628_5_;
   }

   public <T extends Entity> Render<T> func_78715_a(Class<? extends Entity> p_78715_1_) {
      Render<? extends Entity> render = (Render)this.field_78729_o.get(p_78715_1_);
      if (render == null && p_78715_1_ != Entity.class) {
         render = this.<Entity>func_78715_a(p_78715_1_.getSuperclass());
         this.field_78729_o.put(p_78715_1_, render);
      }

      return render;
   }

   @Nullable
   public <T extends Entity> Render<T> func_78713_a(Entity p_78713_1_) {
      if (p_78713_1_ instanceof AbstractClientPlayer) {
         String s = ((AbstractClientPlayer)p_78713_1_).func_175154_l();
         RenderPlayer renderplayer = (RenderPlayer)this.field_178636_l.get(s);
         return renderplayer != null ? renderplayer : this.field_178637_m;
      } else {
         return this.<T>func_78715_a(p_78713_1_.getClass());
      }
   }

   public void func_180597_a(World p_180597_1_, FontRenderer p_180597_2_, Entity p_180597_3_, Entity p_180597_4_, GameSettings p_180597_5_, float p_180597_6_) {
      this.field_78722_g = p_180597_1_;
      this.field_78733_k = p_180597_5_;
      this.field_78734_h = p_180597_3_;
      this.field_147941_i = p_180597_4_;
      this.field_78736_p = p_180597_2_;
      if (p_180597_3_ instanceof EntityLivingBase && ((EntityLivingBase)p_180597_3_).func_70608_bn()) {
         IBlockState iblockstate = p_180597_1_.func_180495_p(new BlockPos(p_180597_3_));
         Block block = iblockstate.func_177230_c();
         if (block == Blocks.field_150324_C) {
            int i = ((EnumFacing)iblockstate.func_177229_b(BlockBed.field_185512_D)).func_176736_b();
            this.field_78735_i = (float)(i * 90 + 180);
            this.field_78732_j = 0.0F;
         }
      } else {
         this.field_78735_i = p_180597_3_.field_70126_B + (p_180597_3_.field_70177_z - p_180597_3_.field_70126_B) * p_180597_6_;
         this.field_78732_j = p_180597_3_.field_70127_C + (p_180597_3_.field_70125_A - p_180597_3_.field_70127_C) * p_180597_6_;
      }

      if (p_180597_5_.field_74320_O == 2) {
         this.field_78735_i += 180.0F;
      }

      this.field_78730_l = p_180597_3_.field_70142_S + (p_180597_3_.field_70165_t - p_180597_3_.field_70142_S) * (double)p_180597_6_;
      this.field_78731_m = p_180597_3_.field_70137_T + (p_180597_3_.field_70163_u - p_180597_3_.field_70137_T) * (double)p_180597_6_;
      this.field_78728_n = p_180597_3_.field_70136_U + (p_180597_3_.field_70161_v - p_180597_3_.field_70136_U) * (double)p_180597_6_;
   }

   public void func_178631_a(float p_178631_1_) {
      this.field_78735_i = p_178631_1_;
   }

   public boolean func_178627_a() {
      return this.field_178638_s;
   }

   public void func_178633_a(boolean p_178633_1_) {
      this.field_178638_s = p_178633_1_;
   }

   public void func_178629_b(boolean p_178629_1_) {
      this.field_85095_o = p_178629_1_;
   }

   public boolean func_178634_b() {
      return this.field_85095_o;
   }

   public boolean func_188390_b(Entity p_188390_1_) {
      return this.func_78713_a(p_188390_1_).func_188295_H_();
   }

   public boolean func_178635_a(Entity p_178635_1_, ICamera p_178635_2_, double p_178635_3_, double p_178635_5_, double p_178635_7_) {
      Render<Entity> render = this.<Entity>func_78713_a(p_178635_1_);
      return render != null && render.func_177071_a(p_178635_1_, p_178635_2_, p_178635_3_, p_178635_5_, p_178635_7_);
   }

   public void func_188388_a(Entity p_188388_1_, float p_188388_2_, boolean p_188388_3_) {
      if (p_188388_1_.field_70173_aa == 0) {
         p_188388_1_.field_70142_S = p_188388_1_.field_70165_t;
         p_188388_1_.field_70137_T = p_188388_1_.field_70163_u;
         p_188388_1_.field_70136_U = p_188388_1_.field_70161_v;
      }

      double d0 = p_188388_1_.field_70142_S + (p_188388_1_.field_70165_t - p_188388_1_.field_70142_S) * (double)p_188388_2_;
      double d1 = p_188388_1_.field_70137_T + (p_188388_1_.field_70163_u - p_188388_1_.field_70137_T) * (double)p_188388_2_;
      double d2 = p_188388_1_.field_70136_U + (p_188388_1_.field_70161_v - p_188388_1_.field_70136_U) * (double)p_188388_2_;
      float f = p_188388_1_.field_70126_B + (p_188388_1_.field_70177_z - p_188388_1_.field_70126_B) * p_188388_2_;
      int i = p_188388_1_.func_70070_b();
      if (p_188388_1_.func_70027_ad()) {
         i = 15728880;
      }

      int j = i % 65536;
      int k = i / 65536;
      OpenGlHelper.func_77475_a(OpenGlHelper.field_77476_b, (float)j, (float)k);
      GlStateManager.func_179131_c(1.0F, 1.0F, 1.0F, 1.0F);
      this.func_188391_a(p_188388_1_, d0 - this.field_78725_b, d1 - this.field_78726_c, d2 - this.field_78723_d, f, p_188388_2_, p_188388_3_);
   }

   public void func_188391_a(Entity p_188391_1_, double p_188391_2_, double p_188391_4_, double p_188391_6_, float p_188391_8_, float p_188391_9_, boolean p_188391_10_) {
      Render<Entity> render = null;

      try {
         render = this.<Entity>func_78713_a(p_188391_1_);
         if (render != null && this.field_78724_e != null) {
            try {
               render.func_188297_a(this.field_178639_r);
               render.func_76986_a(p_188391_1_, p_188391_2_, p_188391_4_, p_188391_6_, p_188391_8_, p_188391_9_);
            } catch (Throwable throwable1) {
               throw new ReportedException(CrashReport.func_85055_a(throwable1, "Rendering entity in world"));
            }

            try {
               if (!this.field_178639_r) {
                  render.func_76979_b(p_188391_1_, p_188391_2_, p_188391_4_, p_188391_6_, p_188391_8_, p_188391_9_);
               }
            } catch (Throwable throwable2) {
               throw new ReportedException(CrashReport.func_85055_a(throwable2, "Post-rendering entity in world"));
            }

            if (this.field_85095_o && !p_188391_1_.func_82150_aj() && !p_188391_10_ && !Minecraft.func_71410_x().func_189648_am()) {
               try {
                  this.func_85094_b(p_188391_1_, p_188391_2_, p_188391_4_, p_188391_6_, p_188391_8_, p_188391_9_);
               } catch (Throwable throwable) {
                  throw new ReportedException(CrashReport.func_85055_a(throwable, "Rendering entity hitbox in world"));
               }
            }
         }

      } catch (Throwable throwable3) {
         CrashReport crashreport = CrashReport.func_85055_a(throwable3, "Rendering entity in world");
         CrashReportCategory crashreportcategory = crashreport.func_85058_a("Entity being rendered");
         p_188391_1_.func_85029_a(crashreportcategory);
         CrashReportCategory crashreportcategory1 = crashreport.func_85058_a("Renderer details");
         crashreportcategory1.func_71507_a("Assigned renderer", render);
         crashreportcategory1.func_71507_a("Location", CrashReportCategory.func_85074_a(p_188391_2_, p_188391_4_, p_188391_6_));
         crashreportcategory1.func_71507_a("Rotation", Float.valueOf(p_188391_8_));
         crashreportcategory1.func_71507_a("Delta", Float.valueOf(p_188391_9_));
         throw new ReportedException(crashreport);
      }
   }

   public void func_188389_a(Entity p_188389_1_, float p_188389_2_) {
      if (p_188389_1_.field_70173_aa == 0) {
         p_188389_1_.field_70142_S = p_188389_1_.field_70165_t;
         p_188389_1_.field_70137_T = p_188389_1_.field_70163_u;
         p_188389_1_.field_70136_U = p_188389_1_.field_70161_v;
      }

      double d0 = p_188389_1_.field_70142_S + (p_188389_1_.field_70165_t - p_188389_1_.field_70142_S) * (double)p_188389_2_;
      double d1 = p_188389_1_.field_70137_T + (p_188389_1_.field_70163_u - p_188389_1_.field_70137_T) * (double)p_188389_2_;
      double d2 = p_188389_1_.field_70136_U + (p_188389_1_.field_70161_v - p_188389_1_.field_70136_U) * (double)p_188389_2_;
      float f = p_188389_1_.field_70126_B + (p_188389_1_.field_70177_z - p_188389_1_.field_70126_B) * p_188389_2_;
      int i = p_188389_1_.func_70070_b();
      if (p_188389_1_.func_70027_ad()) {
         i = 15728880;
      }

      int j = i % 65536;
      int k = i / 65536;
      OpenGlHelper.func_77475_a(OpenGlHelper.field_77476_b, (float)j, (float)k);
      GlStateManager.func_179131_c(1.0F, 1.0F, 1.0F, 1.0F);
      Render<Entity> render = this.<Entity>func_78713_a(p_188389_1_);
      if (render != null && this.field_78724_e != null) {
         render.func_188300_b(p_188389_1_, d0 - this.field_78725_b, d1 - this.field_78726_c, d2 - this.field_78723_d, f, p_188389_2_);
      }

   }

   private void func_85094_b(Entity p_85094_1_, double p_85094_2_, double p_85094_4_, double p_85094_6_, float p_85094_8_, float p_85094_9_) {
      GlStateManager.func_179132_a(false);
      GlStateManager.func_179090_x();
      GlStateManager.func_179140_f();
      GlStateManager.func_179129_p();
      GlStateManager.func_179084_k();
      float f = p_85094_1_.field_70130_N / 2.0F;
      AxisAlignedBB axisalignedbb = p_85094_1_.func_174813_aQ();
      RenderGlobal.func_189694_a(axisalignedbb.field_72340_a - p_85094_1_.field_70165_t + p_85094_2_, axisalignedbb.field_72338_b - p_85094_1_.field_70163_u + p_85094_4_, axisalignedbb.field_72339_c - p_85094_1_.field_70161_v + p_85094_6_, axisalignedbb.field_72336_d - p_85094_1_.field_70165_t + p_85094_2_, axisalignedbb.field_72337_e - p_85094_1_.field_70163_u + p_85094_4_, axisalignedbb.field_72334_f - p_85094_1_.field_70161_v + p_85094_6_, 1.0F, 1.0F, 1.0F, 1.0F);
      Entity[] aentity = p_85094_1_.func_70021_al();
      if (aentity != null) {
         for(Entity entity : aentity) {
            double d0 = (entity.field_70165_t - entity.field_70169_q) * (double)p_85094_9_;
            double d1 = (entity.field_70163_u - entity.field_70167_r) * (double)p_85094_9_;
            double d2 = (entity.field_70161_v - entity.field_70166_s) * (double)p_85094_9_;
            AxisAlignedBB axisalignedbb1 = entity.func_174813_aQ();
            RenderGlobal.func_189694_a(axisalignedbb1.field_72340_a - this.field_78725_b + d0, axisalignedbb1.field_72338_b - this.field_78726_c + d1, axisalignedbb1.field_72339_c - this.field_78723_d + d2, axisalignedbb1.field_72336_d - this.field_78725_b + d0, axisalignedbb1.field_72337_e - this.field_78726_c + d1, axisalignedbb1.field_72334_f - this.field_78723_d + d2, 0.25F, 1.0F, 0.0F, 1.0F);
         }
      }

      if (p_85094_1_ instanceof EntityLivingBase) {
         float f1 = 0.01F;
         RenderGlobal.func_189694_a(p_85094_2_ - (double)f, p_85094_4_ + (double)p_85094_1_.func_70047_e() - 0.009999999776482582D, p_85094_6_ - (double)f, p_85094_2_ + (double)f, p_85094_4_ + (double)p_85094_1_.func_70047_e() + 0.009999999776482582D, p_85094_6_ + (double)f, 1.0F, 0.0F, 0.0F, 1.0F);
      }

      Tessellator tessellator = Tessellator.func_178181_a();
      BufferBuilder bufferbuilder = tessellator.func_178180_c();
      Vec3d vec3d = p_85094_1_.func_70676_i(p_85094_9_);
      bufferbuilder.func_181668_a(3, DefaultVertexFormats.field_181706_f);
      bufferbuilder.func_181662_b(p_85094_2_, p_85094_4_ + (double)p_85094_1_.func_70047_e(), p_85094_6_).func_181669_b(0, 0, 255, 255).func_181675_d();
      bufferbuilder.func_181662_b(p_85094_2_ + vec3d.field_72450_a * 2.0D, p_85094_4_ + (double)p_85094_1_.func_70047_e() + vec3d.field_72448_b * 2.0D, p_85094_6_ + vec3d.field_72449_c * 2.0D).func_181669_b(0, 0, 255, 255).func_181675_d();
      tessellator.func_78381_a();
      GlStateManager.func_179098_w();
      GlStateManager.func_179145_e();
      GlStateManager.func_179089_o();
      GlStateManager.func_179084_k();
      GlStateManager.func_179132_a(true);
   }

   public void func_78717_a(@Nullable World p_78717_1_) {
      this.field_78722_g = p_78717_1_;
      if (p_78717_1_ == null) {
         this.field_78734_h = null;
      }

   }

   public double func_78714_a(double p_78714_1_, double p_78714_3_, double p_78714_5_) {
      double d0 = p_78714_1_ - this.field_78730_l;
      double d1 = p_78714_3_ - this.field_78731_m;
      double d2 = p_78714_5_ - this.field_78728_n;
      return d0 * d0 + d1 * d1 + d2 * d2;
   }

   public FontRenderer func_78716_a() {
      return this.field_78736_p;
   }

   public void func_178632_c(boolean p_178632_1_) {
      this.field_178639_r = p_178632_1_;
   }
}

16:49:10.680 [DEBUG] [org.gradle.api.Task] Patch succeeded: minecraft\net\minecraft\client\renderer\entity\RenderGiantZombie.java
16:49:10.680 [DEBUG] [org.gradle.api.Task] Patch succeeded: minecraft\net\minecraft\client\renderer\entity\RenderLivingBase.java
16:49:10.680 [DEBUG] [org.gradle.api.Task] Patch succeeded: minecraft\net\minecraft\client\renderer\entity\RenderPigZombie.java
16:49:10.680 [DEBUG] [org.gradle.api.Task] Patch succeeded: minecraft\net\minecraft\client\renderer\entity\RenderSkeleton.java
16:49:10.680 [DEBUG] [org.gradle.api.Task] Patch succeeded: minecraft\net\minecraft\client\renderer\entity\RenderZombie.java
16:49:10.682 [DEBUG] [org.gradle.api.internal.tasks.execution.ExecuteAtMostOnceTaskExecuter] Finished executing task ':fixMcSources'
16:49:10.682 [LIFECYCLE] [class org.gradle.TaskExecutionLogger] :fixMcSources FAILED
16:49:10.683 [INFO] [org.gradle.execution.taskgraph.AbstractTaskPlanExecutor] :fixMcSources (Thread[Daemon worker,5,main]) completed. Took 14.443 secs.
16:49:10.683 [DEBUG] [org.gradle.execution.taskgraph.AbstractTaskPlanExecutor] Task worker [Thread[Daemon worker,5,main]] finished, busy: 25.228 secs, idle: 0.007 secs
16:49:10.692 [ERROR] [org.gradle.BuildExceptionReporter]
16:49:10.693 [ERROR] [org.gradle.BuildExceptionReporter] FAILURE: Build failed with an exception.
16:49:10.693 [ERROR] [org.gradle.BuildExceptionReporter]
16:49:10.693 [ERROR] [org.gradle.BuildExceptionReporter] * What went wrong:
16:49:10.693 [ERROR] [org.gradle.BuildExceptionReporter] Execution failed for task ':fixMcSources'.
16:49:10.695 [ERROR] [org.gradle.BuildExceptionReporter] > com.cloudbees.diff.PatchException: Cannot find hunk target
16:49:10.695 [ERROR] [org.gradle.BuildExceptionReporter]
16:49:10.702 [ERROR] [org.gradle.BuildExceptionReporter] * Try:
16:49:10.702 [ERROR] [org.gradle.BuildExceptionReporter] Run with --stacktrace option to get the stack trace.
16:49:10.703 [LIFECYCLE] [org.gradle.BuildResultLogger]
16:49:10.708 [LIFECYCLE] [org.gradle.BuildResultLogger] BUILD FAILED
16:49:10.708 [LIFECYCLE] [org.gradle.BuildResultLogger]
16:49:10.708 [LIFECYCLE] [org.gradle.BuildResultLogger] Total time: 34.359 secs
16:49:10.730 [DEBUG] [org.gradle.cache.internal.btree.BTreePersistentIndexedCache] Closing cache fileSnapshotsToTreeSnapshotsIndex.bin (C:\Users\Stacey Tyner\Desktop\Minecraft Modding\forge-1.12.1-14.22.1.2478-mdk\.gradle\2.14\taskArtifacts\fileSnapshotsToTreeSnapshotsIndex.bin)
16:49:10.735 [DEBUG] [org.gradle.cache.internal.btree.BTreePersistentIndexedCache] Closing cache fileHashes.bin (C:\Users\Stacey Tyner\Desktop\Minecraft Modding\forge-1.12.1-14.22.1.2478-mdk\.gradle\2.14\taskArtifacts\fileHashes.bin)
16:49:10.739 [DEBUG] [org.gradle.cache.internal.btree.BTreePersistentIndexedCache] Closing cache fileSnapshots.bin (C:\Users\Stacey Tyner\Desktop\Minecraft Modding\forge-1.12.1-14.22.1.2478-mdk\.gradle\2.14\taskArtifacts\fileSnapshots.bin)
16:49:10.744 [DEBUG] [org.gradle.cache.internal.btree.BTreePersistentIndexedCache] Closing cache taskArtifacts.bin (C:\Users\Stacey Tyner\Desktop\Minecraft Modding\forge-1.12.1-14.22.1.2478-mdk\.gradle\2.14\taskArtifacts\taskArtifacts.bin)
16:49:10.749 [DEBUG] [org.gradle.cache.internal.DefaultFileLockManager] Releasing lock on task history cache (C:\Users\Stacey Tyner\Desktop\Minecraft Modding\forge-1.12.1-14.22.1.2478-mdk\.gradle\2.14\taskArtifacts).
16:49:10.754 [DEBUG] [org.gradle.api.internal.artifacts.ivyservice.ivyresolve.memcache.InMemoryCachedRepositoryFactory] In-memory dependency metadata cache closed. Repos cached: 25, cache instances: 6, modules served from cache: 0, artifacts: 0
16:49:10.756 [DEBUG] [org.gradle.api.internal.artifacts.ivyservice.resolveengine.store.CachedStoreFactory] Resolution result cache closed. Cache reads: 1, disk reads: 1 (avg: 0.008 secs, total: 0.008 secs)
16:49:10.757 [DEBUG] [org.gradle.api.internal.artifacts.ivyservice.resolveengine.store.CachedStoreFactory] Resolution result cache closed. Cache reads: 0, disk reads: 0 (avg: 0.0 secs, total: 0.0 secs)
16:49:10.757 [DEBUG] [org.gradle.api.internal.artifacts.ivyservice.resolveengine.store.ResolutionResultsStoreFactory] Deleted 2 resolution results binary files in 0.003 secs
16:49:10.757 [DEBUG] [org.gradle.cache.internal.btree.BTreePersistentIndexedCache] Closing cache module-metadata.bin (C:\Users\Stacey Tyner\.gradle\caches\modules-2\metadata-2.16\module-metadata.bin)
16:49:10.757 [DEBUG] [org.gradle.cache.internal.btree.BTreePersistentIndexedCache] Closing cache artifact-at-repository.bin (C:\Users\Stacey Tyner\.gradle\caches\modules-2\metadata-2.16\artifact-at-repository.bin)
16:49:10.758 [DEBUG] [org.gradle.cache.internal.DefaultFileLockManager] Releasing lock on artifact cache (C:\Users\Stacey Tyner\.gradle\caches\modules-2).
16:49:10.763 [DEBUG] [org.gradle.cache.internal.DefaultCacheAccess] Cache Generated Gradle JARs cache (C:\Users\Stacey Tyner\.gradle\caches\2.14\generated-gradle-jars) was closed 0 times.
16:49:10.763 [DEBUG] [org.gradle.cache.internal.DefaultCacheAccess] Cache Plugin Resolution Cache (C:\Users\Stacey Tyner\.gradle\caches\2.14\plugin-resolution) was closed 0 times.
16:49:10.763 [DEBUG] [org.gradle.api.internal.tasks.compile.daemon.CompilerDaemonManager] Stopping 0 compiler daemon(s).
16:49:10.764 [INFO] [org.gradle.api.internal.tasks.compile.daemon.CompilerDaemonManager] Stopped 0 compiler daemon(s).
16:49:10.764 [DEBUG] [org.gradle.launcher.daemon.server.exec.ExecuteBuild] The daemon has finished executing the build.
16:49:11.021 [DEBUG] [org.gradle.launcher.daemon.client.DaemonClientInputForwarder] Dispatching close input message: org.gradle.launcher.daemon.protocol.CloseInput@21ad044d
16:49:11.024 [DEBUG] [org.gradle.launcher.daemon.client.DaemonClientConnection] thread 20: dispatching class org.gradle.launcher.daemon.protocol.CloseInput
16:49:11.025 [INFO] [org.gradle.launcher.daemon.client.DaemonClient] Received result Failure[value=org.gradle.initialization.ReportedException: org.gradle.internal.exceptions.LocationAwareException: Execution failed for task ':fixMcSources'.] from daemon DaemonInfo{pid=7372, address=[294be7af-216f-4008-9ac8-34cd06b6071d port:52302, addresses:[/127.0.0.1, /0:0:0:0:0:0:0:1]], idle=false, lastBusy=1506289718897, context=DefaultDaemonContext[uid=af8e7096-5923-421c-af6b-60a7a04baad2,javaHome=C:\Program Files\Java\jre-9,daemonRegistryDir=C:\Users\Stacey Tyner\.gradle\daemon,pid=7372,idleTimeout=120000,daemonOpts=-Xmx3G,-Dfile.encoding=windows-1252,-Duser.country=US,-Duser.language=en,-Duser.variant]} (build should be done).
16:49:11.025 [DEBUG] [org.gradle.launcher.daemon.client.DaemonClientConnection] thread 1: dispatching class org.gradle.launcher.daemon.protocol.Finished

 

Edited by Servant_Girl
Posted (edited)

This looks like the MCP mappings are wrong or something....

 

What version of the Forge MDK are you using? What commands did you use? At what stage does this error happen?

 

If this is an error during a ForgeGradle thing (assuming it is), the IDE settings won't mean anything. You don't technically need an IDE at all to make Forge mods.

 

Did you do everything on the official documentation for getting started? I recently setup a new 1.12.1 environment and had no problems with these instructions.

Edited by CosmicDan

Windows software, Android hacking, and other curios

Posted (edited)

Its always at 60% 'FixMCSources' not matter what i've been doing. I've tried both 14.23.0.2491 (latest 1.12.2) and 14.22.1.2478 (Recemended 1.12.1)

 

Where it says " Move the files listed above to a new folder " is that a new folder in that same directory?

 

I ran the command gradlew setupDecompWorkspace for both and received the same error each time both before and after setting my Java path variables.

 

What step am I missing?

 

Edit:

 

Yeah once again Building> 60% FixMcSources

Edited by Servant_Girl
Posted (edited)

To add more information, running the command to refresh dependencies also returns the same error.

 

Edit: Add 'checking the READ ME file' to the list of things I've looked at to try and solve this issue. Still no go.

Edited by Servant_Girl
Posted (edited)
55 minutes ago, diesieben07 said:

This has been """""fixed""""".

 

Delete build folder in your project directory.  (Successfully done)

Then run:

gradlew --refresh-dependencies (Successfully done)

gradlew cleanCache (Successfully done)

gradlew setupDecompWorkspace

unknown.png

.

Ok now what? I have even completely deleted and re-downloaded the latest recommend and retraced the steps. I am completely at a loss. This must be the 15'th or 20'th different thing that has yielded the same result

 

Insanity is the result of doing different things and somehow getting the same result, or of doing the same thing yet you get a different result every time.

Edited by Servant_Girl
Posted

If there were any change to the error what so ever, if any of these steps were having ANY effect this would be less stressful. How on earth do I keep making changes and the decompile just flat ignores them? How is everything having utterly no effect!? None at all, not even a different error.

Posted
6 hours ago, Cloudy said:

Post the output of java -version please. 

Picked up _JAVA_OPTIONS: -Djava.net.preferlPv4Stack=true
java version "9"
Java(TM) SE Runtime Environment (build 9+181)
Java HotSpot(TM) 64-Bit Server VM (build 9+181, mixed mode)

4 hours ago, diesieben07 said:

You can always try the brute-force method:

Delete .gradle in your user home folder (not in your project folder!).

Then follow the above steps again.

No effect, same error at the same stage

Posted
9 hours ago, diesieben07 said:

Do not use Java 9.

This was the issue. I was using runtime 9 with JDK 8. Making both be version 8 corrected the issue and I am now well on my way to bumping and fumbling a working mod out. xD So far I've added a single items and there are only 7 crashes in my crash folder that it took me to get there.

 

Anyway thanks a ton for being patient with me.

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Announcements



×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.