Add in missing hooks, add branding information to the crash report

This commit is contained in:
Christian Weeks 2012-05-27 07:13:01 -04:00
parent d4fd21dcbc
commit b5a10c0153
5 changed files with 48 additions and 4 deletions

View File

@ -444,7 +444,11 @@ public class FMLCommonHandler
try {
brandings.add((String)Class.forName("forge.MinecraftForge").getMethod("getVersionString").invoke(null));
} catch (Exception ex) {
// Ignore- forge isn't loaded
try {
brandings.add((String)Class.forName("net.minecraft.src.forge.MinecraftForge").getMethod("getVersionString").invoke(null));
} catch (Exception ex2) {
// Ignore- forge isn't loaded
}
}
try {
Properties props=new Properties();

View File

@ -617,7 +617,9 @@ public class Loader
public String getCrashInformation()
{
StringBuffer ret = new StringBuffer();
ret.append(String.format("Forge Mod Loader version %s.%s.%s.%s for Minecraft %s\n", major, minor, rev, build, mcversion));
for (String brand : FMLCommonHandler.instance().getBrandingStrings(String.format("Forge Mod Loader version %s.%s.%s.%s for Minecraft %s", major, minor, rev, build, mcversion))) {
ret.append(brand).append("\n");
}
for (ModContainer mod : mods)
{
ret.append(String.format("\t%s : %s (%s)\n",mod.getName(), mod.getModState(), mod.getSource().getName()));

View File

@ -1,6 +1,6 @@
--- ../src-base/minecraft/net/minecraft/src/PanelCrashReport.java 0000-00-00 00:00:00.000000000 -0000
+++ ../src-work/minecraft/net/minecraft/src/PanelCrashReport.java 0000-00-00 00:00:00.000000000 -0000
@@ -9,13 +9,19 @@
@@ -9,13 +9,20 @@
import java.io.StringWriter;
import java.text.SimpleDateFormat;
import java.util.Date;
@ -17,10 +17,11 @@
public PanelCrashReport(UnexpectedThrowable p_i634_1_)
{
+ FMLCommonHandler.instance().getFMLLogger().log(Level.SEVERE, "A critical error has occurred.", p_i634_1_.field_6514_b);
+ FMLCommonHandler.instance().getFMLLogger().log(Level.SEVERE, Loader.instance().getCrashInformation());
this.setBackground(new Color(3028036));
this.setLayout(new BorderLayout());
StringWriter var2 = new StringWriter();
@@ -43,7 +49,7 @@
@@ -43,7 +50,7 @@
var5 = var5 + "\n";
var5 = var5 + var3;

View File

@ -0,0 +1,18 @@
--- ../src-base/minecraft/net/minecraft/src/SlotCrafting.java 0000-00-00 00:00:00.000000000 -0000
+++ ../src-work/minecraft/net/minecraft/src/SlotCrafting.java 0000-00-00 00:00:00.000000000 -0000
@@ -1,5 +1,7 @@
package net.minecraft.src;
+import cpw.mods.fml.client.FMLClientHandler;
+
public class SlotCrafting extends Slot
{
private final IInventory field_1125_c;
@@ -83,6 +85,7 @@
public void func_4103_a(ItemStack p_4103_1_)
{
+ FMLClientHandler.instance().onItemCrafted(field_25015_e, p_4103_1_, field_1118_b);
this.func_48434_c(p_4103_1_);
for (int var2 = 0; var2 < this.field_1125_c.func_469_c(); ++var2)

View File

@ -0,0 +1,19 @@
--- ../src-base/minecraft/net/minecraft/src/SlotFurnace.java 0000-00-00 00:00:00.000000000 -0000
+++ ../src-work/minecraft/net/minecraft/src/SlotFurnace.java 0000-00-00 00:00:00.000000000 -0000
@@ -1,5 +1,7 @@
package net.minecraft.src;
+import cpw.mods.fml.client.FMLClientHandler;
+
public class SlotFurnace extends Slot
{
private EntityPlayer field_27011_d;
@@ -43,6 +45,8 @@
p_48434_1_.func_48507_a(this.field_27011_d.field_615_ag, this.field_27011_d, this.field_48437_f);
this.field_48437_f = 0;
+ FMLClientHandler.instance().onItemSmelted(field_27011_d, p_48434_1_);
+
if (p_48434_1_.field_1617_c == Item.field_223_m.field_291_aS)
{
this.field_27011_d.func_25058_a(AchievementList.field_27385_k, 1);