From 54be4095027b312fc31da45aa666c0ffc2586d9a Mon Sep 17 00:00:00 2001 From: Christian Date: Tue, 22 Jan 2013 11:53:13 -0500 Subject: [PATCH 1/3] Changer code and proper recipes for Obsidian chests --- .../cpw/mods/ironchest/ChestChangerType.java | 4 +++- .../cpw/mods/ironchest/IronChestType.java | 11 +++++------ .../cpw/mods/ironchest/ItemChestChanger.java | 4 ++-- .../mods/ironchest/sprites/item_textures.png | Bin 1892 -> 2149 bytes 4 files changed, 10 insertions(+), 9 deletions(-) diff --git a/IronChests2/common/cpw/mods/ironchest/ChestChangerType.java b/IronChests2/common/cpw/mods/ironchest/ChestChangerType.java index 7c6c71e..da2b391 100644 --- a/IronChests2/common/cpw/mods/ironchest/ChestChangerType.java +++ b/IronChests2/common/cpw/mods/ironchest/ChestChangerType.java @@ -13,6 +13,7 @@ import static cpw.mods.ironchest.IronChestType.IRON; import static cpw.mods.ironchest.IronChestType.SILVER; import static cpw.mods.ironchest.IronChestType.CRYSTAL; import static cpw.mods.ironchest.IronChestType.WOOD; +import static cpw.mods.ironchest.IronChestType.OBSIDIAN; import cpw.mods.fml.common.registry.GameRegistry; import net.minecraft.block.Block; @@ -28,7 +29,8 @@ public enum ChestChangerType { COPPERIRON(COPPER, IRON, "copperIronUpgrade", "Copper to Iron Chest Upgrade", "mGm", "GsG", "mGm"), DIAMONDCRYSTAL(DIAMOND, CRYSTAL, "diamondCrystalUpgrade", "Diamond to Crystal Chest Upgrade", "GGG", "GOG", "GGG"), WOODIRON(WOOD, IRON, "woodIronUpgrade", "Normal chest to Iron Chest Upgrade", "mmm", "msm", "mmm"), - WOODCOPPER(WOOD, COPPER, "woodCopperUpgrade", "Normal chest to Copper Chest Upgrade", "mmm", "msm", "mmm"); + WOODCOPPER(WOOD, COPPER, "woodCopperUpgrade", "Normal chest to Copper Chest Upgrade", "mmm", "msm", "mmm"), + DIAMONDOBSIDIAN(DIAMOND, OBSIDIAN, "diamondObsidianUpgrade", "Diamond to Obsidian Chest Upgrade", "mmm", "mGm", "mmm"); private IronChestType source; private IronChestType target; diff --git a/IronChests2/common/cpw/mods/ironchest/IronChestType.java b/IronChests2/common/cpw/mods/ironchest/IronChestType.java index 39c094f..a181384 100644 --- a/IronChests2/common/cpw/mods/ironchest/IronChestType.java +++ b/IronChests2/common/cpw/mods/ironchest/IronChestType.java @@ -28,8 +28,8 @@ public enum IronChestType { COPPER(45, 9, false, "Copper Chest", "copperchest.png", 3, Arrays.asList("ingotCopper"), TileEntityCopperChest.class, "mmmmCmmmm"), SILVER(72, 9, false, "Silver Chest", "silverchest.png", 4, Arrays.asList("ingotSilver"), TileEntitySilverChest.class, "mmmm3mmmm", "mGmG0GmGm"), CRYSTAL(108, 12, true, "Crystal Chest", "crystalchest.png", 5, Arrays.asList("blockGlass"), TileEntityCrystalChest.class, "GGGGPGGGG"), - OBSIDIAN(108, 12, false, "Obsidian Chest", "obsidianchest.png", 6, Arrays.asList("obsidian"), TileEntityObsidianChest.class, "OOOO4OOOO"), - WOOD(0, 0, false, "", "", -1, Arrays.asList("blockPlanks"), null); + OBSIDIAN(108, 12, false, "Obsidian Chest", "obsidianchest.png", 6, Arrays.asList("obsidian"), TileEntityObsidianChest.class, "mmmm2mmmm"), + WOOD(0, 0, false, "", "", -1, Arrays.asList("plankWood"), null); int size; private int rowLength; public String friendlyName; @@ -118,7 +118,7 @@ public enum IronChestType { 'G', Block.glass, 'C', Block.chest, '0', new ItemStack(blockResult, 1, 0), /* Iron Chest */ '1', new ItemStack(blockResult, 1, 1), /* Gold Chest */ - '2', new ItemStack(blockResult, 1, 1), /* Diamond Chest */ + '2', new ItemStack(blockResult, 1, 2), /* Diamond Chest */ '3', new ItemStack(blockResult, 1, 3), /* Copper Chest */ '4', new ItemStack(blockResult, 1, 4)/* Silver Chest */ ); @@ -144,14 +144,13 @@ public enum IronChestType { { return Block.glass; } - else if (mat == "blockPlanks") + else if (mat == "obsidian") { - return Block.planks; + return Block.obsidian; } return mat; } - @SuppressWarnings("unchecked") public static void addRecipe(ItemStack is, Object... parts) { ShapedOreRecipe oreRecipe = new ShapedOreRecipe(is, parts); diff --git a/IronChests2/common/cpw/mods/ironchest/ItemChestChanger.java b/IronChests2/common/cpw/mods/ironchest/ItemChestChanger.java index 8fb0b58..ea00a89 100644 --- a/IronChests2/common/cpw/mods/ironchest/ItemChestChanger.java +++ b/IronChests2/common/cpw/mods/ironchest/ItemChestChanger.java @@ -73,14 +73,14 @@ public class ItemChestChanger extends Item { chestContents[i] = null; } // Clear the old block out - world.setBlock(X, Y, Z, 0); + world.setBlockWithNotify(X, Y, Z, 0); // Force the Chest TE to reset it's knowledge of neighbouring blocks tec.updateContainingBlockInfo(); // Force the Chest TE to update any neighbours so they update next // tick tec.checkForAdjacentChests(); // And put in our block instead - world.setBlock(X, Y, Z, block.blockID); + world.setBlockWithNotify(X, Y, Z, block.blockID); } else { diff --git a/IronChests2/resources/cpw/mods/ironchest/sprites/item_textures.png b/IronChests2/resources/cpw/mods/ironchest/sprites/item_textures.png index 7d6f80f3e4fe6dfd04bbfbdb22499bbc26777ab7..535c78d163892aea8a16b71baa198a1c6a2f78d1 100644 GIT binary patch delta 1859 zcmV-J2fX;?4&@M#QGeY577!~PBQ~~T000N_NklM8hKdR~^`)F_|G6QBWd-WZJUC z4G49z!3J9v*41|F+OEC#w!J<6am(FqZ$HlMF)VDqUvkoOPJjEH_c^`ydEWQjHX^0A zry_|AR_@-HDZXWEOQ!g&`EP06mMMNy$MGYX?*EBw_usL3W2X3gKA$O`53shUB1wvO zCbKP~mAm&P&krZbY@0yK)|TYmWA7%jZ30>I-_p7*d9&wuGTSDwspEK(r3th=(UKfJ zb~Kr76X@8yF@NdXyDOP(6UgWD$-Vd9n`i>(Y4MK^e13epz2PESxqDyo`%+Tf8f^kC zTU(MtM-ElDMw>v^{I|4jOZIjit8R@pf%l4ks^c`pfB4AZ>egrz=-9k5>3wZyb!)T< zE?Tqj;^B$sXDa^n>(|Gem=h5ZV=;F6{=YHv{da8Mm|S(&0};7Od?c0l zqkq{NtABp-bS_QtH#axe-G5hCSM1ugE2n(U;Rew5R3xiDmyaYDkxP>CA59{OT;w96 zvy@xnh-*N*MeHi3LT zpDbOvbjtC2dU`a0bHD}D&LA)Diin77Z~0`kRqStnE%n7)_wJ8~h&!)8y$X2tjs2

5lh$J zRexOt^t3&bI=-i;Cn6%2ELl=LcjCkeRdcR2fQNteWL=AYwiGdR>Qvm<^iY%v#me$| z{B1mO=G^|XNuH};ye5#qSx87(6u?w=Q{j#((@L9si9dqpvU$ht@n;H~z$#f5pzDb@Bh` zEyZA=aP^&6Evj#ftD2V84E5@LlRQ_y5arQdy7|^+yau zs{E%K|4_>DpTFsfx^ssLqw(9$p;Rx#!o@e$=RZ*Sy$uzIW*t8guSa=kVAlEnFe1w3 zvPwB09s!DjgQs8oozKOh8*Yxd5r0uC6e~~AGkpF#=fLUxr}um_Zd?9n#03$>Vlh=R zLw%>0mphBgV)f|Jh%3^^_w}8u?jJqyPAvG)(uiF8{3jiMUi$GnPK}(t|E{69dEvzk zy%?oZUv>YF&n$@BZ|jSQ<|q|PvyPt=5u=0snex{F&VvT zSosuv8l7$RvwUawNW_)t3h14K2Wn5uUl!dbdQ&%mw+|kyJ9py5iHN3j`A<21%KV@1 zs-LCb8X8IcLcDu);=c$ih=GCLh=?eZ3bT%17?ElPFkSu{z= ziWN00fLPiT1O1gZewzHJ8ox8;_#2xqtC>Nsop)gzDVF1v{^3+F#7C~Wre+4;aQ8s; z_b;yGUmTus{Hf#nW2`hZ>-_(v0h~XN08<$m9!|A{p33lWr3jK)UVk8K{MpVwtI|j* z)A;4_6+|-2LLM6%JFEB4S#AL3kVALc!MNw~_J-pBll-!}-_zR@ zKls+e4aKkSd?C~LYkw}ksJj2tegBPPcdTeAKEL|S>i*o=8#jLDZw-g7P zGPmY<-ldl|6o2^{%_AbBIJDq>jnA4tAD{-%`kP;8y3ijUeH}GZeCOU>nd0Ai`^~dD x{vCU|GsXAy?m4URS@Q>zVFv3O0000Q_do1J6NPzPQsDpq002ovPDHLkV1hJ<-`M~F delta 1598 zcmV-E2EqB|5abS!QGeV99S|BZdCpab000K@NklAh z)c4iV?a8W(sDJ*@vE&cMq_kDr1R8fWChh0iOIx)~AnW*dHtkN1bX+WL)i!~Ti+`fy zG{t-N+}YArZ4qaU=l@%7s^V#Q=JCkoB9h3(Na-YT`0WF+>6??seq8)Ne0X)t9z7l& z{rU5M9gkCAT$4*v{F^s#j$Cf!tw}QS-QB-`e{6ekTYoN1@n;$T&ZgZH=KucI7jkKe zziC}(YEj4q(xMJ=vcCK?MU$tkMnxdk;$7thra*0!#5P3vk`q-hQl74N3UHcgnn`Tgcei#TgMGs9hzz1X(z zU_?Z$e(dw5R&l)LpQ$h2bmVwML_Gb_%~inOqsLRnx3siGL_|YFLunRnZEZ~*pLP5h z^M88ung79C3w`tvpgq;&%lpll?mufhGo%6R_&H~ z*LdvA`TL)Z^IW}eP4r!lc=>C`;!+YZoJ7nXjT$@izxSgrSH_?GUG(G!k|^IZOJ3=j21^M}tyF<&gd|1mRn)_AM{V(T})Rq<{>3z6JfLF0Jt2VbZ-*V#D~FQ1FJS{#^iAos7`P;qWvUp_8JL_VLNGXArx zK38$Bx2HFvFH((vqWtYC^S|@ReHG{0^M6C}+m8NJAH?FNk5rDoZ{+vZU+DkDFP0=Zwxw<j30k@M^*9bJKoKdzhTkb(*946{U^( z`?KRnJp84<-PU+!a06IUTU&N~&%%XOU3}Tn^2^sOsBUme7S1a>&dr}wRea5&nzG~k zVE(q|UomfX+3|w;^Q($qbW8Jyh$!^e+}3zzPy=ZC&95_E=&e^i$QcyhapYj8_>&)< wxTE=>YQ3B(zNfqOj>ZF%VF&FQ0Jq Date: Tue, 22 Jan 2013 11:56:45 -0500 Subject: [PATCH 2/3] Update required version --- IronChests2/common/cpw/mods/ironchest/IronChest.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/IronChests2/common/cpw/mods/ironchest/IronChest.java b/IronChests2/common/cpw/mods/ironchest/IronChest.java index f8d70e3..1f4afb5 100644 --- a/IronChests2/common/cpw/mods/ironchest/IronChest.java +++ b/IronChests2/common/cpw/mods/ironchest/IronChest.java @@ -31,7 +31,7 @@ import cpw.mods.fml.common.registry.GameRegistry; import cpw.mods.fml.common.registry.LanguageRegistry; @Mod(modid = "IronChest", name = "Iron Chests", dependencies = "required-after:Forge@[6.5,)") -@NetworkMod(channels = { "IronChest" }, versionBounds = "[4.5,)", clientSideRequired = true, serverSideRequired = false, packetHandler = PacketHandler.class) +@NetworkMod(channels = { "IronChest" }, versionBounds = "[5.0,)", clientSideRequired = true, serverSideRequired = false, packetHandler = PacketHandler.class) public class IronChest { public static BlockIronChest ironChestBlock; @SidedProxy(clientSide = "cpw.mods.ironchest.client.ClientProxy", serverSide = "cpw.mods.ironchest.CommonProxy") From 04f8f9207c3d8c81d7d9adb7e2756fe2a4e0d48c Mon Sep 17 00:00:00 2001 From: Christian Date: Tue, 22 Jan 2013 16:17:22 -0500 Subject: [PATCH 3/3] Use new FML function to migrate tile entity names to something more normal. --- IronChests2/common/cpw/mods/ironchest/IronChest.java | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/IronChests2/common/cpw/mods/ironchest/IronChest.java b/IronChests2/common/cpw/mods/ironchest/IronChest.java index 1f4afb5..b16660e 100644 --- a/IronChests2/common/cpw/mods/ironchest/IronChest.java +++ b/IronChests2/common/cpw/mods/ironchest/IronChest.java @@ -12,6 +12,7 @@ package cpw.mods.ironchest; import java.util.logging.Level; +import net.minecraft.tileentity.TileEntity; import net.minecraftforge.common.Configuration; import net.minecraftforge.common.MinecraftForge; import net.minecraftforge.event.ForgeSubscribe; @@ -30,7 +31,7 @@ import cpw.mods.fml.common.network.NetworkRegistry; import cpw.mods.fml.common.registry.GameRegistry; import cpw.mods.fml.common.registry.LanguageRegistry; -@Mod(modid = "IronChest", name = "Iron Chests", dependencies = "required-after:Forge@[6.5,)") +@Mod(modid = "IronChest", name = "Iron Chests", dependencies = "required-after:Forge@[6.5,);required-after:FML@[4.7.22,)") @NetworkMod(channels = { "IronChest" }, versionBounds = "[5.0,)", clientSideRequired = true, serverSideRequired = false, packetHandler = PacketHandler.class) public class IronChest { public static BlockIronChest ironChestBlock; @@ -73,7 +74,7 @@ public class IronChest { GameRegistry.registerBlock(ironChestBlock, ItemIronChest.class, "BlockIronChest"); for (IronChestType typ : IronChestType.values()) { - GameRegistry.registerTileEntity(typ.clazz, typ.name()); + GameRegistry.registerTileEntityWithAlternatives(typ.clazz, "IronChest."+typ.name(), typ.name()); LanguageRegistry.instance().addStringLocalization(typ.name() + ".name", "en_US", typ.friendlyName); proxy.registerTileEntitySpecialRenderer(typ); }