Merge branch '1.7.10'

Conflicts:
	fml/patches/minecraft/net/minecraft/client/Minecraft.java.patch
	fml/patches/minecraft/net/minecraft/client/renderer/texture/TextureMap.java.patch
	fml/patches/minecraft/net/minecraft/client/resources/SimpleReloadableResourceManager.java.patch
	fml/src/main/java/net/minecraftforge/fml/relauncher/CoreModManager.java
	patches/minecraft/net/minecraft/client/Minecraft.java.patch
	patches/minecraft/net/minecraft/client/network/NetHandlerPlayClient.java.patch
	patches/minecraft/net/minecraft/client/renderer/texture/TextureMap.java.patch
	src/main/java/net/minecraftforge/client/model/obj/WavefrontObject.java
This commit is contained in:
cpw 2015-06-21 21:59:51 -04:00
commit 16ff1be093
18 changed files with 234 additions and 53 deletions

View file

@ -8,7 +8,7 @@
"assets": "1.7.10",
"libraries": [
{
"name": "net.minecraft:launchwrapper:1.11"
"name": "net.minecraft:launchwrapper:1.12"
},
{
"name": "com.google.code.findbugs:jsr305:1.3.9",

View file

@ -27,7 +27,7 @@
"url": "http://files.minecraftforge.net/maven/"
},
{
"name": "net.minecraft:launchwrapper:1.11",
"name": "net.minecraft:launchwrapper:1.12",
"serverreq":true
},
{

View file

@ -6,7 +6,7 @@
"minecraftArguments": "--version FML_DEV --tweakClass net.minecraftforge.fml.common.launcher.FMLTweaker",
"libraries": [
{
"name": "net.minecraft:launchwrapper:1.11"
"name": "net.minecraft:launchwrapper:1.12"
},
{
"name": "com.google.code.findbugs:jsr305:1.3.9",

View file

@ -32,7 +32,7 @@
"serverreq":true
},
{
"name": "net.minecraft:launchwrapper:1.11",
"name": "net.minecraft:launchwrapper:1.12",
"serverreq":true
},
{

View file

@ -17,7 +17,7 @@
}
});
this.field_71417_B = new MouseHelper();
+ net.minecraftforge.fml.common.ProgressManager.ProgressBar bar= net.minecraftforge.fml.common.ProgressManager.push("Rendering Setup", 9);
+ net.minecraftforge.fml.common.ProgressManager.ProgressBar bar= net.minecraftforge.fml.common.ProgressManager.push("Rendering Setup", 5, true);
+ bar.step("GL Setup");
this.func_71361_d("Pre startup");
GlStateManager.func_179098_w();
@ -26,8 +26,9 @@
GlStateManager.func_179096_D();
GlStateManager.func_179128_n(5888);
this.func_71361_d("Startup");
- this.field_147128_au = new TextureMap("textures");
+ bar.step("Loading Texture Map");
this.field_147128_au = new TextureMap("textures");
+ this.field_147128_au = new TextureMap("textures",true);
this.field_147128_au.func_147633_a(this.field_71474_y.field_151442_I);
this.field_71446_o.func_110580_a(TextureMap.field_110575_b, this.field_147128_au);
this.field_71446_o.func_110577_a(TextureMap.field_110575_b);

View file

@ -0,0 +1,26 @@
--- ../src-base/minecraft/net/minecraft/client/renderer/texture/Stitcher.java
+++ ../src-work/minecraft/net/minecraft/client/renderer/texture/Stitcher.java
@@ -60,6 +60,7 @@
public void func_94305_f()
{
Stitcher.Holder[] aholder = (Stitcher.Holder[])this.field_94319_a.toArray(new Stitcher.Holder[this.field_94319_a.size()]);
+ net.minecraftforge.fml.common.ProgressManager.ProgressBar bar = net.minecraftforge.fml.common.ProgressManager.push("Texture stitching", aholder.length);
Arrays.sort(aholder);
Stitcher.Holder[] aholder1 = aholder;
int i = aholder.length;
@@ -67,6 +68,7 @@
for (int j = 0; j < i; ++j)
{
Stitcher.Holder holder = aholder1[j];
+ bar.step(holder.func_98150_a().func_94215_i());
if (!this.func_94310_b(holder))
{
@@ -80,6 +82,7 @@
this.field_94318_c = MathHelper.func_151236_b(this.field_94318_c);
this.field_94315_d = MathHelper.func_151236_b(this.field_94315_d);
}
+ net.minecraftforge.fml.common.ProgressManager.pop(bar);
}
public List func_94309_g()

View file

@ -0,0 +1,18 @@
--- ../src-base/minecraft/net/minecraft/client/renderer/texture/TextureManager.java
+++ ../src-work/minecraft/net/minecraft/client/renderer/texture/TextureManager.java
@@ -143,12 +143,15 @@
public void func_110549_a(IResourceManager p_110549_1_)
{
+ net.minecraftforge.fml.common.ProgressManager.ProgressBar bar = net.minecraftforge.fml.common.ProgressManager.push("Reloading Texture Manager", this.field_110585_a.keySet().size(), true);
Iterator iterator = this.field_110585_a.entrySet().iterator();
while (iterator.hasNext())
{
Entry entry = (Entry)iterator.next();
+ bar.step(entry.getKey().toString());
this.func_110579_a((ResourceLocation)entry.getKey(), (ITextureObject)entry.getValue());
}
+ net.minecraftforge.fml.common.ProgressManager.pop(bar);
}
}

View file

@ -1,14 +1,57 @@
--- ../src-base/minecraft/net/minecraft/client/renderer/texture/TextureMap.java
+++ ../src-work/minecraft/net/minecraft/client/renderer/texture/TextureMap.java
@@ -91,6 +91,7 @@
@@ -29,6 +29,7 @@
@SideOnly(Side.CLIENT)
public class TextureMap extends AbstractTexture implements ITickableTextureObject
{
+ private static final boolean ENABLE_SKIP = Boolean.parseBoolean(System.getProperty("fml.skipFirstTextureLoad", "true"));
private static final Logger field_147635_d = LogManager.getLogger();
public static final ResourceLocation field_174945_f = new ResourceLocation("missingno");
public static final ResourceLocation field_110575_b = new ResourceLocation("textures/atlas/blocks.png");
@@ -40,6 +41,7 @@
private int field_147636_j;
private final TextureAtlasSprite field_94249_f;
private static final String __OBFID = "CL_00001058";
+ private boolean skipFirst = false;
public TextureMap(String p_i46099_1_)
{
@@ -48,12 +50,23 @@
public TextureMap(String p_i46100_1_, IIconCreator p_i46100_2_)
{
+ this(p_i46100_1_, p_i46100_2_, false);
+ }
+
+ public TextureMap(String p_i46100_1_, boolean skipFirst)
+ {
+ this(p_i46100_1_, null, skipFirst);
+ }
+
+ public TextureMap(String p_i46100_1_, IIconCreator iconCreatorIn, boolean skipFirst)
+ {
this.field_94258_i = Lists.newArrayList();
this.field_110574_e = Maps.newHashMap();
this.field_94252_e = Maps.newHashMap();
this.field_94249_f = new TextureAtlasSprite("missingno");
this.field_94254_c = p_i46100_1_;
- this.field_174946_m = p_i46100_2_;
+ this.field_174946_m = iconCreatorIn;
+ this.skipFirst = skipFirst && ENABLE_SKIP;
}
private void func_110569_e()
@@ -91,14 +104,16 @@
this.field_94258_i.clear();
int j = Integer.MAX_VALUE;
int k = 1 << this.field_147636_j;
+ net.minecraftforge.fml.common.ProgressManager.ProgressBar bar = net.minecraftforge.fml.common.ProgressManager.push("Texture stitching", this.field_110574_e.size());
+ net.minecraftforge.fml.common.ProgressManager.ProgressBar bar = net.minecraftforge.fml.common.ProgressManager.push("Texture stitching", skipFirst ? 0 : this.field_110574_e.size());
Iterator iterator = this.field_110574_e.entrySet().iterator();
while (iterator.hasNext())
@@ -99,6 +100,7 @@
- while (iterator.hasNext())
+ while (!skipFirst && iterator.hasNext())
{
Entry entry = (Entry)iterator.next();
TextureAtlasSprite textureatlassprite = (TextureAtlasSprite)entry.getValue();
ResourceLocation resourcelocation = new ResourceLocation(textureatlassprite.func_94215_i());
ResourceLocation resourcelocation1 = this.func_147634_a(resourcelocation, 0);
@ -16,7 +59,7 @@
try
{
@@ -150,12 +152,14 @@
@@ -150,12 +165,14 @@
}
catch (RuntimeException runtimeexception)
{
@ -33,7 +76,7 @@
continue;
}
@@ -171,6 +175,7 @@
@@ -171,6 +188,7 @@
stitcher.func_110934_a(textureatlassprite);
}
@ -41,24 +84,26 @@
int j1 = Math.min(j, k);
int k1 = MathHelper.func_151239_c(j1);
@@ -181,10 +186,12 @@
@@ -181,10 +199,12 @@
}
Iterator iterator1 = this.field_110574_e.values().iterator();
+ bar = net.minecraftforge.fml.common.ProgressManager.push("Mipmap generation", this.field_110574_e.size());
+ bar = net.minecraftforge.fml.common.ProgressManager.push("Mipmap generation", skipFirst ? 0 : this.field_110574_e.size());
while (iterator1.hasNext())
- while (iterator1.hasNext())
+ while (!skipFirst && iterator1.hasNext())
{
final TextureAtlasSprite textureatlassprite1 = (TextureAtlasSprite)iterator1.next();
+ bar.step(textureatlassprite1.func_94215_i());
try
{
@@ -225,9 +232,12 @@
@@ -225,9 +245,13 @@
this.field_94249_f.func_147963_d(this.field_147636_j);
stitcher.func_110934_a(this.field_94249_f);
+ net.minecraftforge.fml.common.ProgressManager.pop(bar);
+ skipFirst = false;
+ bar = net.minecraftforge.fml.common.ProgressManager.push("Texture creation", 3);
try
@ -67,7 +112,7 @@
stitcher.func_94305_f();
}
catch (StitcherException stitcherexception)
@@ -236,11 +246,13 @@
@@ -236,11 +260,13 @@
}
field_147635_d.info("Created: {}x{} {}-atlas", new Object[] {Integer.valueOf(stitcher.func_110935_a()), Integer.valueOf(stitcher.func_110936_b()), this.field_94254_c});
@ -81,7 +126,7 @@
while (iterator2.hasNext())
{
textureatlassprite2 = (TextureAtlasSprite)iterator2.next();
@@ -276,6 +288,7 @@
@@ -276,6 +302,7 @@
}
TextureUtil.func_177055_a(this.field_94254_c.replaceAll("/", "_"), this.func_110552_b(), this.field_147636_j, stitcher.func_110935_a(), stitcher.func_110936_b());

View file

@ -4,7 +4,7 @@
public void func_110541_a(List p_110541_1_)
{
this.func_110543_a();
+ net.minecraftforge.fml.common.ProgressManager.ProgressBar resReload = net.minecraftforge.fml.common.ProgressManager.push("Loading Resources", p_110541_1_.size()+1);
+ net.minecraftforge.fml.common.ProgressManager.ProgressBar resReload = net.minecraftforge.fml.common.ProgressManager.push("Loading Resources", p_110541_1_.size()+1, true);
field_147967_a.info("Reloading ResourceManager: " + field_130074_a.join(Iterables.transform(p_110541_1_, new Function()
{
private static final String __OBFID = "CL_00001092";

View file

@ -410,7 +410,7 @@ public class SplashProgress
drawBox(barWidth - 2, barHeight - 2);
// slidy part
setColor(barColor);
drawBox((barWidth - 2) * b.getStep() / b.getSteps(), barHeight - 2);
drawBox((barWidth - 2) * (b.getStep() + 1) / (b.getSteps() + 1), barHeight - 2); // Step can sometimes be 0.
// progress text
String progress = "" + b.getStep() + "/" + b.getSteps();
glTranslatef(((float)barWidth - 2) / 2 - fontRenderer.getStringWidth(progress), 2, 0);
@ -535,9 +535,9 @@ public class SplashProgress
public static void finish()
{
if(!enabled) return;
checkThreadState();
try
{
checkThreadState();
done = true;
thread.join();
d.releaseContext();
@ -583,6 +583,10 @@ public class SplashProgress
private static boolean disableSplash()
{
File configFile = new File(Minecraft.getMinecraft().mcDataDir, "config/splash.properties");
File parent = configFile.getParentFile();
if (!parent.exists())
parent.mkdirs();
FileReader r = null;
enabled = false;
config.setProperty("enabled", "false");
@ -809,4 +813,4 @@ public class SplashProgress
}
return mcPack.getInputStream(loc);
}
}
}

View file

@ -183,7 +183,7 @@ public class LoadController
{
modObjectList = buildModObjectList();
}
ProgressBar bar = ProgressManager.push(stateEvent.description(), activeModList.size());
ProgressBar bar = ProgressManager.push(stateEvent.description(), activeModList.size(), true);
for (ModContainer mc : activeModList)
{
bar.step(mc.getName());

View file

@ -19,9 +19,21 @@ public class ProgressManager
*/
@Deprecated
public static ProgressBar push(String title, int steps)
{
return push(title, steps, false);
}
/**
* @deprecated not a stable API, will break, don't use this yet
*/
@Deprecated
public static ProgressBar push(String title, int steps, boolean timeEachStep)
{
ProgressBar bar = new ProgressBar(title, steps);
bars.add(bar);
if (timeEachStep)
{
bar.timeEachStep();
}
FMLCommonHandler.instance().processWindowMessages();
return bar;
}
@ -34,6 +46,16 @@ public class ProgressManager
{
if(bar.getSteps() != bar.getStep()) throw new IllegalStateException("can't pop unfinished ProgressBar " + bar.getTitle());
bars.remove(bar);
if (bar.getSteps() != 0)
{
long newTime = System.nanoTime();
if (bar.timeEachStep)
FMLLog.fine("Bar Step: %s - %s took %.3fs", bar.getTitle(), bar.getMessage(), ((float)(newTime - bar.lastTime) / 1000000 / 1000));
if (bar.getSteps() == 1)
FMLLog.fine("Bar Finished: %s - %s took %.3fs", bar.getTitle(), bar.getMessage(), ((float)(newTime - bar.startTime) / 1000000 / 1000));
else
FMLLog.fine("Bar Finished: %s took %.3fs", bar.getTitle(), ((float)(newTime - bar.startTime) / 1000000 / 1000));
}
FMLCommonHandler.instance().processWindowMessages();
}
@ -55,6 +77,9 @@ public class ProgressManager
private final int steps;
private volatile int step = 0;
private volatile String message = "";
private boolean timeEachStep = false;
private long startTime = System.nanoTime();
private long lastTime = startTime;
private ProgressBar(String title, int steps)
{
@ -70,6 +95,12 @@ public class ProgressManager
public void step(String message)
{
if(step >= steps) throw new IllegalStateException("too much steps for ProgressBar " + title);
if (timeEachStep && step != 0)
{
long newTime = System.nanoTime();
FMLLog.fine("Bar Step: %s - %s took %.3fs", getTitle(), getMessage(), ((float)(newTime - lastTime) / 1000000 / 1000));
lastTime = newTime;
}
step++;
this.message = FMLCommonHandler.instance().stripSpecialChars(message);
FMLCommonHandler.instance().processWindowMessages();
@ -94,5 +125,10 @@ public class ProgressManager
{
return message;
}
public void timeEachStep()
{
this.timeEachStep = true;
}
}
}
}

View file

@ -13,6 +13,7 @@
package net.minecraftforge.fml.relauncher;
import java.io.File;
import java.io.FileFilter;
import java.io.FilenameFilter;
import java.io.IOException;
import java.lang.reflect.Method;
@ -21,6 +22,7 @@ import java.net.URL;
import java.net.URLClassLoader;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Calendar;
import java.util.Comparator;
import java.util.HashMap;
import java.util.List;
@ -268,6 +270,42 @@ public class CoreModManager {
FMLRelaunchLog.severe("Problem file : %s", f.getName());
}
}
FileFilter derpdirfilter = new FileFilter() {
@Override
public boolean accept(File pathname)
{
return pathname.isDirectory() && new File(pathname,"META-INF").isDirectory();
}
};
File[] derpdirlist = coreMods.listFiles(derpdirfilter);
if (derpdirlist != null && derpdirlist.length > 0)
{
FMLRelaunchLog.log.getLogger().log(Level.FATAL, "There appear to be jars extracted into the mods directory. This is VERY BAD and will almost NEVER WORK WELL");
FMLRelaunchLog.log.getLogger().log(Level.FATAL, "You should place original jars only in the mods directory. NEVER extract them to the mods directory.");
FMLRelaunchLog.log.getLogger().log(Level.FATAL, "The directories below appear to be extracted jar files. Fix this before you continue.");
for (File f : derpdirlist)
{
FMLRelaunchLog.log.getLogger().log(Level.FATAL, "Directory {} contains {}", f.getName(), Arrays.asList(new File(f,"META-INF").list()));
}
RuntimeException re = new RuntimeException("Extracted mod jars found, loading will NOT continue");
// We're generating a crash report for the launcher to show to the user here
try
{
Class<?> crashreportclass = classLoader.loadClass("b");
Object crashreport = crashreportclass.getMethod("a", Throwable.class, String.class).invoke(null, re, "FML has discovered extracted jar files in the mods directory.\nThis breaks mod loading functionality completely.\nRemove the directories and replace with the jar files originally provided.");
File crashreportfile = new File(new File(coreMods.getParentFile(),"crash-reports"),String.format("fml-crash-%1$tY-%1$tm-%1$td_%1$tT.txt",Calendar.getInstance()));
crashreportclass.getMethod("a",File.class).invoke(crashreport, crashreportfile);
System.out.println("#@!@# FML has crashed the game deliberately. Crash report saved to: #@!@# " + crashreportfile.getAbsolutePath());
} catch (Exception e)
{
e.printStackTrace();
// NOOP - hopefully
}
throw re;
}
File[] coreModList = coreMods.listFiles(ff);
File versionedModDir = new File(coreMods, FMLInjectionData.mccversion);
if (versionedModDir.isDirectory())

View file

@ -8,16 +8,7 @@
this.field_71459_aj = p_i45547_1_.field_178741_d.field_178756_a;
this.field_71443_c = p_i45547_1_.field_178743_b.field_178764_a > 0 ? p_i45547_1_.field_178743_b.field_178764_a : 1;
this.field_71440_d = p_i45547_1_.field_178743_b.field_178762_b > 0 ? p_i45547_1_.field_178743_b.field_178762_b : 1;
@@ -450,7 +449,7 @@
}
});
this.field_71417_B = new MouseHelper();
- net.minecraftforge.fml.common.ProgressManager.ProgressBar bar= net.minecraftforge.fml.common.ProgressManager.push("Rendering Setup", 9);
+ net.minecraftforge.fml.common.ProgressManager.ProgressBar bar= net.minecraftforge.fml.common.ProgressManager.push("Rendering Setup", 5);
bar.step("GL Setup");
this.func_71361_d("Pre startup");
GlStateManager.func_179098_w();
@@ -492,7 +491,7 @@
@@ -491,7 +490,7 @@
net.minecraftforge.fml.common.ProgressManager.pop(bar);
net.minecraftforge.fml.client.FMLClientHandler.instance().finishMinecraftLoading();
this.func_71361_d("Post startup");
@ -26,7 +17,7 @@
if (this.field_71475_ae != null)
{
@@ -899,11 +898,6 @@
@@ -898,11 +897,6 @@
public void func_147108_a(GuiScreen p_147108_1_)
{
@ -38,7 +29,7 @@
if (p_147108_1_ == null && this.field_71441_e == null)
{
p_147108_1_ = new GuiMainMenu();
@@ -913,6 +907,17 @@
@@ -912,6 +906,17 @@
p_147108_1_ = new GuiGameOver();
}
@ -56,7 +47,7 @@
if (p_147108_1_ instanceof GuiMainMenu)
{
this.field_71474_y.field_74330_P = false;
@@ -1396,7 +1401,7 @@
@@ -1395,7 +1400,7 @@
if (this.field_71441_e.func_180495_p(blockpos).func_177230_c().func_149688_o() != Material.field_151579_a && this.field_71442_b.func_180512_c(blockpos, this.field_71476_x.field_178784_b))
{
@ -65,7 +56,7 @@
this.field_71439_g.func_71038_i();
}
}
@@ -1476,15 +1481,19 @@
@@ -1475,15 +1480,19 @@
case 2:
BlockPos blockpos = this.field_71476_x.func_178782_a();
@ -86,7 +77,7 @@
if (itemstack == null)
{
@@ -1507,7 +1516,8 @@
@@ -1506,7 +1515,8 @@
{
ItemStack itemstack1 = this.field_71439_g.field_71071_by.func_70448_g();
@ -96,7 +87,7 @@
{
this.field_71460_t.field_78516_c.func_78445_c();
}
@@ -1705,6 +1715,8 @@
@@ -1704,6 +1714,8 @@
while (Mouse.next())
{
@ -105,7 +96,7 @@
i = Mouse.getEventButton();
KeyBinding.func_74510_a(i - 100, Mouse.getEventButtonState());
@@ -2214,7 +2226,13 @@
@@ -2213,7 +2225,13 @@
NetworkManager networkmanager = NetworkManager.func_150722_a(socketaddress);
networkmanager.func_150719_a(new NetHandlerLoginClient(networkmanager, this, (GuiScreen)null));
networkmanager.func_179290_a(new C00Handshake(47, socketaddress.toString(), 0, EnumConnectionState.LOGIN, true));
@ -120,7 +111,7 @@
this.field_71453_ak = networkmanager;
}
@@ -2225,6 +2243,8 @@
@@ -2224,6 +2242,8 @@
public void func_71353_a(WorldClient p_71353_1_, String p_71353_2_)
{
@ -129,7 +120,7 @@
if (p_71353_1_ == null)
{
NetHandlerPlayClient nethandlerplayclient = this.func_147114_u();
@@ -2238,6 +2258,18 @@
@@ -2237,6 +2257,18 @@
{
this.field_71437_Z.func_71263_m();
this.field_71437_Z.func_175592_a();
@ -148,7 +139,7 @@
}
this.field_71437_Z = null;
@@ -2369,134 +2401,11 @@
@@ -2368,134 +2400,11 @@
if (this.field_71476_x != null)
{
boolean flag = this.field_71439_g.field_71075_bZ.field_75098_d;
@ -285,7 +276,7 @@
if (flag)
{
int j = this.field_71439_g.field_71069_bz.field_75151_b.size() - 9 + inventoryplayer.field_70461_c;
@@ -2752,8 +2661,11 @@
@@ -2751,8 +2660,11 @@
p_70001_1_.func_152767_b("gl_max_texture_size", Integer.valueOf(func_71369_N()));
}
@ -297,7 +288,7 @@
for (int i = 16384; i > 0; i >>= 1)
{
GL11.glTexImage2D(GL11.GL_PROXY_TEXTURE_2D, 0, GL11.GL_RGBA, i, i, 0, GL11.GL_RGBA, GL11.GL_UNSIGNED_BYTE, (ByteBuffer)null);
@@ -2761,6 +2673,7 @@
@@ -2760,6 +2672,7 @@
if (j != 0)
{

View file

@ -29,7 +29,19 @@
}
}
@@ -1137,6 +1140,10 @@
@@ -812,6 +815,11 @@
float f = (float)(p_147281_1_.func_149028_l() * 360) / 256.0F;
float f1 = (float)(p_147281_1_.func_149030_m() * 360) / 256.0F;
EntityLivingBase entitylivingbase = (EntityLivingBase)EntityList.func_75616_a(p_147281_1_.func_149025_e(), this.field_147299_f.field_71441_e);
+ if (entitylivingbase == null)
+ {
+ net.minecraftforge.fml.common.FMLLog.info("Server attempted to spawn an unknown entity using ID: {0} at ({1}, {2}, {3}) Skipping!", p_147281_1_.func_149025_e(), d0, d1, d2);
+ return;
+ }
entitylivingbase.field_70118_ct = p_147281_1_.func_149023_f();
entitylivingbase.field_70117_cu = p_147281_1_.func_149034_g();
entitylivingbase.field_70116_cv = p_147281_1_.func_149029_h();
@@ -1137,6 +1145,10 @@
{
tileentity.func_145839_a(p_147273_1_.func_148857_g());
}

View file

@ -1,14 +1,14 @@
--- ../src-base/minecraft/net/minecraft/client/renderer/texture/TextureMap.java
+++ ../src-work/minecraft/net/minecraft/client/renderer/texture/TextureMap.java
@@ -91,6 +91,7 @@
@@ -104,6 +104,7 @@
this.field_94258_i.clear();
int j = Integer.MAX_VALUE;
int k = 1 << this.field_147636_j;
+ net.minecraftforge.client.ForgeHooksClient.onTextureStitchedPre(this);
net.minecraftforge.fml.common.ProgressManager.ProgressBar bar = net.minecraftforge.fml.common.ProgressManager.push("Texture stitching", this.field_110574_e.size());
net.minecraftforge.fml.common.ProgressManager.ProgressBar bar = net.minecraftforge.fml.common.ProgressManager.push("Texture stitching", skipFirst ? 0 : this.field_110574_e.size());
Iterator iterator = this.field_110574_e.entrySet().iterator();
@@ -102,6 +103,16 @@
@@ -115,6 +116,16 @@
ResourceLocation resourcelocation1 = this.func_147634_a(resourcelocation, 0);
bar.step(resourcelocation1.func_110623_a());
@ -25,7 +25,7 @@
try
{
IResource iresource = p_110571_1_.func_110536_a(resourcelocation1);
@@ -287,6 +298,9 @@
@@ -301,6 +312,9 @@
textureatlassprite2.func_94217_a(this.field_94249_f);
}
@ -35,7 +35,7 @@
TextureUtil.func_177055_a(this.field_94254_c.replaceAll("/", "_"), this.func_110552_b(), this.field_147636_j, stitcher.func_110935_a(), stitcher.func_110936_b());
net.minecraftforge.fml.common.ProgressManager.pop(bar);
}
@@ -354,4 +368,37 @@
@@ -368,4 +382,37 @@
{
return this.field_94249_f;
}

View file

@ -0,0 +1,10 @@
--- ../src-base/minecraft/net/minecraft/entity/EntityList.java
+++ ../src-work/minecraft/net/minecraft/entity/EntityList.java
@@ -90,6 +90,7 @@
public static void func_75618_a(Class p_75618_0_, String p_75618_1_, int p_75618_2_)
{
+ if (p_75618_2_ < 0 || p_75618_2_ > 255) throw new IllegalArgumentException("Attempted to register a entity with invalid ID: " + p_75618_2_ + " Name: " + p_75618_1_ + " Class: " + p_75618_0_);
if (field_75625_b.containsKey(p_75618_1_))
{
throw new IllegalArgumentException("ID is already registered: " + p_75618_1_);

View file

@ -23,7 +23,7 @@
+ WeightedRandomChestContent.func_177630_a(p_180709_2_, ChestGenHooks.getItems(DUNGEON_CHEST, p_180709_2_), (TileEntityChest)tileentity1, ChestGenHooks.getCount(DUNGEON_CHEST, p_180709_2_));
}
break label100;
break label197;
@@ -184,6 +186,12 @@
private String func_76543_b(Random p_76543_1_)