From ffcbf444cdfa544290ff3db9355d9a4e8c5fe01b Mon Sep 17 00:00:00 2001 From: EoD Date: Tue, 9 Sep 2014 18:57:43 +0200 Subject: [PATCH 1/3] Revert "Manually added EoDs PR." This reverts commit 752bb63900e67f7242accdef0799ae7bd2a7c9aa due to some missing changes --- .../info/jbcs/minecraft/chisel/Chisel.java | 62 ++++--------------- .../jbcs/minecraft/utilities/General.java | 18 +++--- 2 files changed, 20 insertions(+), 60 deletions(-) diff --git a/src/main/java/info/jbcs/minecraft/chisel/Chisel.java b/src/main/java/info/jbcs/minecraft/chisel/Chisel.java index 0bad2b43..9cc6c878 100644 --- a/src/main/java/info/jbcs/minecraft/chisel/Chisel.java +++ b/src/main/java/info/jbcs/minecraft/chisel/Chisel.java @@ -1,9 +1,12 @@ package info.jbcs.minecraft.chisel; import cpw.mods.fml.client.event.ConfigChangedEvent; -import cpw.mods.fml.common.*; +import cpw.mods.fml.common.FMLCommonHandler; +import cpw.mods.fml.common.Loader; +import cpw.mods.fml.common.Mod; import cpw.mods.fml.common.Mod.EventHandler; import cpw.mods.fml.common.Mod.Instance; +import cpw.mods.fml.common.SidedProxy; import cpw.mods.fml.common.event.*; import cpw.mods.fml.common.event.FMLMissingMappingsEvent.MissingMapping; import cpw.mods.fml.common.eventhandler.SubscribeEvent; @@ -25,7 +28,6 @@ import info.jbcs.minecraft.chisel.item.ItemBallOMoss; import info.jbcs.minecraft.chisel.item.ItemChisel; import info.jbcs.minecraft.chisel.item.ItemCloudInABottle; import info.jbcs.minecraft.chisel.item.ItemSmashingRock; -import info.jbcs.minecraft.utilities.General; import net.minecraft.block.Block; import net.minecraft.creativetab.CreativeTabs; import net.minecraft.entity.player.EntityPlayer; @@ -85,44 +87,6 @@ public class Chisel { m.warn();//(Action.WARN); } - - // Fix mapping of snakestoneSand, snakestoneStone, limestoneStairs, marbleStairs when loading an old (1.5.4) save - else if(m.type == Type.BLOCK) - { - Block block = null; - - if(General.cleanTags(m.name).equals("sandSnakestone")) - block = GameRegistry.findBlock(Chisel.MOD_ID, "tile.snakestoneSand"); - else if(General.cleanTags(m.name).equals("snakestone")) - block = GameRegistry.findBlock(Chisel.MOD_ID, "tile.snakestoneStone"); - else - block = GameRegistry.findBlock(Chisel.MOD_ID, General.cleanTags(m.name)); - - if(block != null) - { - m.remap(block); - FMLLog.getLogger().info("Remapping block " + m.name + " to " + General.getName(block)); - } else - FMLLog.getLogger().warn("Block " + m.name + " could not get remapped."); - } else if(m.type == Type.ITEM) - { - Item item = null; - - if(General.cleanTags(m.name).equals("sandSnakestone")) - item = GameRegistry.findItem(Chisel.MOD_ID, "tile.snakestoneSand"); - else if(General.cleanTags(m.name).equals("snakestone")) - item = GameRegistry.findItem(Chisel.MOD_ID, "tile.snakestoneStone"); - else - item = GameRegistry.findItem(Chisel.MOD_ID, General.cleanTags(m.name)); - - if(item != null) - { - m.remap(item); - FMLLog.getLogger().info("Remapping item " + m.name + " to " + General.getName(item)); - - } else - FMLLog.getLogger().warn("Item " + m.name + " could not get remapped."); - } } } @@ -229,13 +193,12 @@ public class Chisel Random random = new Random(); @SubscribeEvent - public void onPlayerClick(PlayerInteractEvent event) - { + public void onPlayerClick(PlayerInteractEvent event) { if(event.action != PlayerInteractEvent.Action.LEFT_CLICK_BLOCK) return; - if(!Configurations.enableChiseling) return; + if (!Configurations.enableChiseling) return; EntityPlayer player = event.entityPlayer; ItemStack stack = player.getHeldItem(); - if(stack == null || stack.getItem() != chisel) return; + if (stack == null || stack.getItem() != chisel) return; World world = event.world; int x = event.x; @@ -266,14 +229,14 @@ public class Chisel long cooldown = 20; long time = world.getWorldInfo().getWorldTotalTime(); - if(time > useTime - cooldown && time < useTime + cooldown) return; //noReplace = true; + if(time>useTime-cooldown && time Date: Fri, 5 Sep 2014 14:45:44 +0200 Subject: [PATCH 2/3] utitilies: add replaceTags(), update getName() replaceTags() is helpful for finding remapped items. Adding a getName(Item item) and using replaceTags() in old getName(Block block) --- .../info/jbcs/minecraft/utilities/General.java | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) diff --git a/src/main/java/info/jbcs/minecraft/utilities/General.java b/src/main/java/info/jbcs/minecraft/utilities/General.java index acf99046..524a28f7 100644 --- a/src/main/java/info/jbcs/minecraft/utilities/General.java +++ b/src/main/java/info/jbcs/minecraft/utilities/General.java @@ -57,18 +57,21 @@ public class General return stack.getItem(); } - public static String getUnlocalizedName(Block block) + public static String getName(Item item) { - String name = block.getUnlocalizedName(); - if(name.startsWith("tile.")) name = name.substring(5); - - return name; + String res = item.getUnlocalizedName(); + return cleanTags(res); } public static String getName(Block block) { String res = block.getUnlocalizedName(); - return res.substring(5); + return cleanTags(res); + } + + public static String cleanTags(String tag) + { + return tag.replaceAll("[Cc]hisel\\p{Punct}", "").replaceFirst("^tile\\.", "").replaceFirst("^item\\.", ""); } From d98c38aaf914b48b936a23b6872881ccc4b567ed Mon Sep 17 00:00:00 2001 From: EoD Date: Tue, 9 Sep 2014 19:02:20 +0200 Subject: [PATCH 3/3] Closes Pokefenn/Chisel#36 adding handling for MissingMapping so renamed blocks don't disappear after a world upgrade --- .../info/jbcs/minecraft/chisel/Chisel.java | 43 +++++++++++++++++++ 1 file changed, 43 insertions(+) diff --git a/src/main/java/info/jbcs/minecraft/chisel/Chisel.java b/src/main/java/info/jbcs/minecraft/chisel/Chisel.java index 9cc6c878..04afa4e9 100644 --- a/src/main/java/info/jbcs/minecraft/chisel/Chisel.java +++ b/src/main/java/info/jbcs/minecraft/chisel/Chisel.java @@ -2,6 +2,7 @@ package info.jbcs.minecraft.chisel; import cpw.mods.fml.client.event.ConfigChangedEvent; import cpw.mods.fml.common.FMLCommonHandler; +import cpw.mods.fml.common.FMLLog; import cpw.mods.fml.common.Loader; import cpw.mods.fml.common.Mod; import cpw.mods.fml.common.Mod.EventHandler; @@ -28,6 +29,7 @@ import info.jbcs.minecraft.chisel.item.ItemBallOMoss; import info.jbcs.minecraft.chisel.item.ItemChisel; import info.jbcs.minecraft.chisel.item.ItemCloudInABottle; import info.jbcs.minecraft.chisel.item.ItemSmashingRock; +import info.jbcs.minecraft.utilities.General; import net.minecraft.block.Block; import net.minecraft.creativetab.CreativeTabs; import net.minecraft.entity.player.EntityPlayer; @@ -87,6 +89,47 @@ public class Chisel { m.warn();//(Action.WARN); } + + // Fix mapping of snakestoneSand, snakestoneStone, limestoneStairs, marbleStairs when loading an old (1.5.4) save + else if (m.type == Type.BLOCK) + { + Block block = null; + + if (General.cleanTags(m.name).equals("sandSnakestone")) + block = GameRegistry.findBlock(Chisel.MOD_ID, "tile.snakestoneSand"); + else if (General.cleanTags(m.name).equals("snakestone")) + block = GameRegistry.findBlock(Chisel.MOD_ID, "tile.snakestoneStone"); + else + block = GameRegistry.findBlock(Chisel.MOD_ID, General.cleanTags(m.name)); + + if (block != null) + { + m.remap(block); + FMLLog.getLogger().info("Remapping block " + m.name + " to " + General.getName(block)); + } + else + FMLLog.getLogger().warn("Block " + m.name + " could not get remapped."); + } + else if (m.type == Type.ITEM) + { + Item item = null; + + if (General.cleanTags(m.name).equals("sandSnakestone")) + item = GameRegistry.findItem(Chisel.MOD_ID, "tile.snakestoneSand"); + else if (General.cleanTags(m.name).equals("snakestone")) + item = GameRegistry.findItem(Chisel.MOD_ID, "tile.snakestoneStone"); + else + item = GameRegistry.findItem(Chisel.MOD_ID, General.cleanTags(m.name)); + + if (item != null) + { + m.remap(item); + FMLLog.getLogger().info("Remapping item " + m.name + " to " + General.getName(item)); + + } + else + FMLLog.getLogger().warn("Item " + m.name + " could not get remapped."); + } } }