diff --git a/client/texture/FlipableIcon.java b/client/texture/FlipableIcon.java index bc2331988..c4e3c103f 100644 --- a/client/texture/FlipableIcon.java +++ b/client/texture/FlipableIcon.java @@ -10,6 +10,10 @@ public class FlipableIcon implements IIcon boolean flip_v; public FlipableIcon(IIcon o) { + + if ( o == null ) + throw new RuntimeException( "Cannot create a wrapper icon with a null icon." ); + original = o; flip_u = false; flip_v = false; diff --git a/client/texture/FullIcon.java b/client/texture/FullIcon.java index 59f0d1ca4..397adc85e 100644 --- a/client/texture/FullIcon.java +++ b/client/texture/FullIcon.java @@ -10,6 +10,10 @@ public class FullIcon implements IIcon private IIcon p; public FullIcon(IIcon o) { + + if ( o == null ) + throw new RuntimeException("Cannot create a wrapper icon with a null icon."); + p = o; } diff --git a/client/texture/OffsetIcon.java b/client/texture/OffsetIcon.java index f8c676a06..ddd17d44c 100644 --- a/client/texture/OffsetIcon.java +++ b/client/texture/OffsetIcon.java @@ -13,6 +13,10 @@ public class OffsetIcon implements IIcon private IIcon p; public OffsetIcon(IIcon o, float x, float y) { + + if ( o == null ) + throw new RuntimeException("Cannot create a wrapper icon with a null icon."); + p = o; offsetX = x; offsetY = y; diff --git a/client/texture/TaughtIcon.java b/client/texture/TaughtIcon.java index 1c21acfbf..64ee1c588 100644 --- a/client/texture/TaughtIcon.java +++ b/client/texture/TaughtIcon.java @@ -12,6 +12,10 @@ public class TaughtIcon implements IIcon private IIcon p; public TaughtIcon(IIcon o, float tightness) { + + if ( o == null ) + throw new RuntimeException("Cannot create a wrapper icon with a null icon."); + p = o; this.tightness = tightness * 0.4f; } diff --git a/client/texture/TmpFlipableIcon.java b/client/texture/TmpFlipableIcon.java index 725fac1d7..288094c42 100644 --- a/client/texture/TmpFlipableIcon.java +++ b/client/texture/TmpFlipableIcon.java @@ -1,12 +1,15 @@ package appeng.client.texture; +import net.minecraft.init.Blocks; import net.minecraft.util.IIcon; public class TmpFlipableIcon extends FlipableIcon { + private static final IIcon nullIcon = new MissingIcon( Blocks.diamond_block ); + public TmpFlipableIcon() { - super( null ); + super( nullIcon ); } public void setOriginal(IIcon i) @@ -14,7 +17,10 @@ public class TmpFlipableIcon extends FlipableIcon while (i instanceof FlipableIcon) i = ((FlipableIcon) i).getOriginal(); - original = i; + if ( i == null ) + original = nullIcon; + else + original = i; } } diff --git a/hooks/AETrading.java b/hooks/AETrading.java index 2f3da4c86..a07a6ef32 100644 --- a/hooks/AETrading.java +++ b/hooks/AETrading.java @@ -42,6 +42,9 @@ public class AETrading implements IVillageTradeHandler private void addMerchent(MerchantRecipeList list, ItemStack item, int emera, Random rand, int greed) { + if ( item == null ) + return; + // Sell ItemStack From = item.copy(); ItemStack To = new ItemStack( Items.emerald ); diff --git a/recipes/RecipeHandler.java b/recipes/RecipeHandler.java index f775bab58..8524e90e2 100644 --- a/recipes/RecipeHandler.java +++ b/recipes/RecipeHandler.java @@ -361,6 +361,10 @@ public class RecipeHandler implements IRecipeHandler } } + + if ( token.length() > 0 ) + tokens.add( token ); + reader.close(); processTokens( loader, path, line ); }