ClientEvents.java 3.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596
  1. package me.km;
  2. import java.util.List;
  3. import me.km.api.GlobalText;
  4. import me.km.networking.PlayerDisplayGui;
  5. import me.km.networking.StatusDisplayGui;
  6. import net.minecraft.item.Item;
  7. import net.minecraft.item.ItemArmor;
  8. import net.minecraft.item.ItemStack;
  9. import net.minecraft.nbt.NBTTagCompound;
  10. import net.minecraft.util.text.TextComponentString;
  11. import net.minecraft.util.text.TextComponentTranslation;
  12. import net.minecraft.util.text.TextFormatting;
  13. import net.minecraftforge.client.event.ClientChatReceivedEvent;
  14. import net.minecraftforge.client.event.RenderGameOverlayEvent;
  15. import net.minecraftforge.event.entity.player.ItemTooltipEvent;
  16. import net.minecraftforge.fml.common.eventhandler.SubscribeEvent;
  17. import net.minecraftforge.fml.common.gameevent.TickEvent;
  18. import net.minecraftforge.fml.relauncher.Side;
  19. import net.minecraftforge.fml.relauncher.SideOnly;
  20. @SideOnly(Side.CLIENT)
  21. public class ClientEvents
  22. {
  23. @SubscribeEvent
  24. public void preventChatMessage(ClientChatReceivedEvent e)
  25. {
  26. if(e.getMessage() instanceof TextComponentTranslation)
  27. {
  28. TextComponentTranslation trans = (TextComponentTranslation) e.getMessage();
  29. switch(trans.getKey())
  30. {
  31. case "commands.generic.permission":
  32. {
  33. e.setMessage(new TextComponentString("[§5Perms§r] " + GlobalText.noPermission()));
  34. }
  35. }
  36. }
  37. }
  38. @SubscribeEvent
  39. public void onClientTick(TickEvent.ClientTickEvent e)
  40. {
  41. if(e.phase == TickEvent.Phase.END)
  42. {
  43. StatusDisplayGui.INSTANCE.tick();
  44. }
  45. }
  46. @SubscribeEvent
  47. public void onRenderGui(RenderGameOverlayEvent.Pre e)
  48. {
  49. if(e.getType() == RenderGameOverlayEvent.ElementType.POTION_ICONS)
  50. {
  51. e.setCanceled(true);
  52. }
  53. }
  54. @SubscribeEvent
  55. public void onRenderGui(RenderGameOverlayEvent.Post e)
  56. {
  57. if(e.getType() == RenderGameOverlayEvent.ElementType.EXPERIENCE)
  58. {
  59. PlayerDisplayGui.INSTANCE.paint();
  60. StatusDisplayGui.INSTANCE.paint();
  61. }
  62. }
  63. @SubscribeEvent
  64. public void showingTooltip(ItemTooltipEvent e)
  65. {
  66. ItemStack stack = e.getItemStack();
  67. Item item = stack.getItem();
  68. if(item instanceof ItemArmor)
  69. {
  70. NBTTagCompound com = stack.getTagCompound();
  71. if(com != null && com.hasKey("magic"))
  72. {
  73. int magic = com.getInteger("magic");
  74. if(magic != 0)
  75. {
  76. List<String> list = e.getToolTip();
  77. String s = TextFormatting.BLUE + " +";
  78. for(int i = 0; i < list.size(); i++)
  79. {
  80. if(list.get(i).startsWith(s))
  81. {
  82. list.add(i, TextFormatting.BLUE + " +" + magic + " Magic Armor");
  83. break;
  84. }
  85. }
  86. }
  87. }
  88. }
  89. }
  90. }