diff --git a/src/main/java/modtweaker2/ClientEvents.java b/src/main/java/modtweaker2/ClientEvents.java index 09fead1..42ef7d7 100644 --- a/src/main/java/modtweaker2/ClientEvents.java +++ b/src/main/java/modtweaker2/ClientEvents.java @@ -1,22 +1,24 @@ package modtweaker2; +import static modtweaker2.helpers.LogHelper.print; import minetweaker.api.item.IItemStack; import minetweaker.api.minecraft.MineTweakerMC; import minetweaker.api.player.IPlayer; +import modtweaker2.utils.TweakerPlugin; import net.minecraft.client.Minecraft; import net.minecraft.client.settings.GameSettings; -import net.minecraftforge.event.entity.living.LivingDropsEvent; +import net.minecraft.item.ItemStack; +import net.minecraft.util.EnumChatFormatting; import net.minecraftforge.event.entity.player.ItemTooltipEvent; import cpw.mods.fml.common.eventhandler.SubscribeEvent; -import static modtweaker2.helpers.LogHelper.*; public class ClientEvents { public static int cooldown; public static boolean active; - - +public static String notice = EnumChatFormatting.DARK_RED + "This item's recipe has been changed by ModTweaker."; @SubscribeEvent public void onDrawTooltip(ItemTooltipEvent event) { + IPlayer player = MineTweakerMC.getIPlayer(event.entityPlayer); if (player != null) { IItemStack hand = MineTweakerMC.getIItemStack(event.itemStack); @@ -36,8 +38,13 @@ public class ClientEvents { cooldown--; } + for (ItemStack stack : TweakerPlugin.changed) { + if (stack.isItemEqual(event.itemStack) && event.toolTip.contains(notice)) { + event.toolTip.add(notice); + } + } } } } - + } diff --git a/src/main/java/modtweaker2/utils/ArrayUtils.java b/src/main/java/modtweaker2/utils/ArrayUtils.java index 3297f67..07804bc 100644 --- a/src/main/java/modtweaker2/utils/ArrayUtils.java +++ b/src/main/java/modtweaker2/utils/ArrayUtils.java @@ -2,6 +2,8 @@ package modtweaker2.utils; import java.util.ArrayList; +import net.minecraftforge.common.util.ForgeDirection; + public class ArrayUtils { diff --git a/src/main/java/modtweaker2/utils/BaseCraftingAddition.java b/src/main/java/modtweaker2/utils/BaseCraftingAddition.java index 8022a4d..a2a369e 100644 --- a/src/main/java/modtweaker2/utils/BaseCraftingAddition.java +++ b/src/main/java/modtweaker2/utils/BaseCraftingAddition.java @@ -19,6 +19,7 @@ public abstract class BaseCraftingAddition extends BaseDescriptionAddition { this.output = output; this.recipe = recipe; this.list = list; + TweakerPlugin.changed.add(output); } @Override diff --git a/src/main/java/modtweaker2/utils/BaseCraftingRemoval.java b/src/main/java/modtweaker2/utils/BaseCraftingRemoval.java index 4fa3b53..6234687 100644 --- a/src/main/java/modtweaker2/utils/BaseCraftingRemoval.java +++ b/src/main/java/modtweaker2/utils/BaseCraftingRemoval.java @@ -10,6 +10,7 @@ import static modtweaker2.helpers.StackHelper.areEqual; public class BaseCraftingRemoval extends BaseListRemoval { public BaseCraftingRemoval(String name, List list, ItemStack stack) { super(name, list, stack); + TweakerPlugin.changed.add(stack); } @Override diff --git a/src/main/java/modtweaker2/utils/BaseDescriptionAddition.java b/src/main/java/modtweaker2/utils/BaseDescriptionAddition.java index 529cfc1..7b9b908 100644 --- a/src/main/java/modtweaker2/utils/BaseDescriptionAddition.java +++ b/src/main/java/modtweaker2/utils/BaseDescriptionAddition.java @@ -1,5 +1,6 @@ package modtweaker2.utils; +import net.minecraft.item.ItemStack; import minetweaker.IUndoableAction; public abstract class BaseDescriptionAddition implements IUndoableAction { diff --git a/src/main/java/modtweaker2/utils/BaseListAddition.java b/src/main/java/modtweaker2/utils/BaseListAddition.java index 9757f84..5d412a2 100644 --- a/src/main/java/modtweaker2/utils/BaseListAddition.java +++ b/src/main/java/modtweaker2/utils/BaseListAddition.java @@ -19,6 +19,7 @@ public abstract class BaseListAddition implements IUndoableAction { public BaseListAddition(List list, Object recipe) { this.list = list; this.recipe = recipe; + TweakerPlugin.changed.add(((ItemStack) recipe)); } @Override diff --git a/src/main/java/modtweaker2/utils/BaseListRemoval.java b/src/main/java/modtweaker2/utils/BaseListRemoval.java index 27d467f..a32f637 100644 --- a/src/main/java/modtweaker2/utils/BaseListRemoval.java +++ b/src/main/java/modtweaker2/utils/BaseListRemoval.java @@ -22,6 +22,7 @@ public abstract class BaseListRemoval implements IUndoableAction { this.stack = stack; this.description = description; this.fluid = fluid; + TweakerPlugin.changed.add(stack); } public BaseListRemoval(String description, List list, ItemStack stack) { diff --git a/src/main/java/modtweaker2/utils/BaseMapAddition.java b/src/main/java/modtweaker2/utils/BaseMapAddition.java index 5546370..c8db7be 100644 --- a/src/main/java/modtweaker2/utils/BaseMapAddition.java +++ b/src/main/java/modtweaker2/utils/BaseMapAddition.java @@ -21,6 +21,8 @@ public abstract class BaseMapAddition implements IUndoableAction { this.key = key; this.recipe = recipe; this.description = description; + if (recipe instanceof ItemStack) + TweakerPlugin.changed.add(((ItemStack) recipe)); } @Override @@ -48,7 +50,8 @@ public abstract class BaseMapAddition implements IUndoableAction { return "Adding " + description + " Recipe for :" + ((ItemStack) recipe).getDisplayName(); else if (recipe instanceof FluidStack) return "Adding " + description + " Recipe for :" + ((FluidStack) recipe).getFluid().getLocalizedName(); - else return "Adding " + description + " Recipe for :" + getRecipeInfo(); + else + return "Adding " + description + " Recipe for :" + getRecipeInfo(); } @Override @@ -57,7 +60,8 @@ public abstract class BaseMapAddition implements IUndoableAction { return "Removing " + description + " Recipe for :" + ((ItemStack) recipe).getDisplayName(); else if (recipe instanceof FluidStack) return "Removing " + description + " Recipe for :" + ((FluidStack) recipe).getFluid().getLocalizedName(); - else return "Removing " + description + " Recipe for :" + getRecipeInfo(); + else + return "Removing " + description + " Recipe for :" + getRecipeInfo(); } @Override diff --git a/src/main/java/modtweaker2/utils/BaseMapRemoval.java b/src/main/java/modtweaker2/utils/BaseMapRemoval.java index 0331c13..8fef801 100644 --- a/src/main/java/modtweaker2/utils/BaseMapRemoval.java +++ b/src/main/java/modtweaker2/utils/BaseMapRemoval.java @@ -1,11 +1,11 @@ package modtweaker2.utils; +import java.util.Map; + import minetweaker.IUndoableAction; import net.minecraft.item.ItemStack; import net.minecraftforge.fluids.FluidStack; -import java.util.Map; - public abstract class BaseMapRemoval implements IUndoableAction { protected final Map map; protected Object stack; @@ -26,6 +26,9 @@ public abstract class BaseMapRemoval implements IUndoableAction { this.map = map; this.key = key; this.description = description; + if(map.get(key) instanceof ItemStack){ + TweakerPlugin.changed.add(((ItemStack) map.get(key))); + } } @Override diff --git a/src/main/java/modtweaker2/utils/BaseMultipleListRemoval.java b/src/main/java/modtweaker2/utils/BaseMultipleListRemoval.java index d3cbd24..6ff17cb 100644 --- a/src/main/java/modtweaker2/utils/BaseMultipleListRemoval.java +++ b/src/main/java/modtweaker2/utils/BaseMultipleListRemoval.java @@ -34,7 +34,7 @@ public abstract class BaseMultipleListRemoval implements IUndoableAction { } recipes.add(o); - + //If we want the first position, exit the loop if (pos == Position.FIRST) { break; diff --git a/src/main/java/modtweaker2/utils/BaseSetVar.java b/src/main/java/modtweaker2/utils/BaseSetVar.java index dbede93..7af454e 100644 --- a/src/main/java/modtweaker2/utils/BaseSetVar.java +++ b/src/main/java/modtweaker2/utils/BaseSetVar.java @@ -1,5 +1,6 @@ package modtweaker2.utils; +import net.minecraft.item.ItemStack; import minetweaker.IUndoableAction; import modtweaker2.helpers.ReflectionHelper; diff --git a/src/main/java/modtweaker2/utils/TweakerPlugin.java b/src/main/java/modtweaker2/utils/TweakerPlugin.java index c4b0d38..bb2391a 100644 --- a/src/main/java/modtweaker2/utils/TweakerPlugin.java +++ b/src/main/java/modtweaker2/utils/TweakerPlugin.java @@ -1,12 +1,14 @@ package modtweaker2.utils; import java.util.ArrayList; +import java.util.List; +import net.minecraft.item.ItemStack; import cpw.mods.fml.common.Loader; public class TweakerPlugin { private static ArrayList isLoaded = new ArrayList(); - + public static List changed = new ArrayList(); public static void register(String mod, Class clazz) { if (Loader.isModLoaded(mod)) {