Advertisement
Guest User

Untitled

a guest
Dec 27th, 2015
60
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.10 KB | None | 0 0
  1. package net.madcrazydrumma.gui;
  2.  
  3. import java.util.ArrayList;
  4.  
  5. import net.madcrazydrumma.RivenMod;
  6. import net.madcrazydrumma.RivenPlayer;
  7. import net.madcrazydrumma.keys.KeyBindings;
  8. import net.madcrazydrumma.packet.PacketDispatcher;
  9. import net.madcrazydrumma.packet.SkillExecutionPacket;
  10. import net.madcrazydrumma.skill.BrokenWings;
  11. import net.madcrazydrumma.skill.ISkill;
  12. import net.minecraft.client.Minecraft;
  13. import net.minecraft.client.gui.FontRenderer;
  14. import net.minecraft.client.gui.Gui;
  15. import net.minecraft.client.gui.ScaledResolution;
  16. import net.minecraft.util.ResourceLocation;
  17. import net.minecraftforge.client.event.RenderGameOverlayEvent;
  18. import net.minecraftforge.client.event.RenderGameOverlayEvent.ElementType;
  19. import net.minecraftforge.fml.common.eventhandler.SubscribeEvent;
  20. import net.minecraftforge.fml.common.gameevent.InputEvent;
  21. import net.minecraftforge.fml.common.gameevent.TickEvent;
  22. import net.minecraftforge.fml.common.gameevent.TickEvent.ClientTickEvent;
  23.  
  24. import org.lwjgl.opengl.GL11;
  25.  
  26. public class InGameOverlay extends Gui
  27. {
  28. private final Minecraft mc = Minecraft.getMinecraft();
  29. private final ResourceLocation rivenOverlay = new ResourceLocation(RivenMod.MODID + ":textures/gui/rivengui.png");
  30.  
  31. private ArrayList<ISkill> skillListInstance;
  32.  
  33. private int zCooldownTicks;
  34. private boolean isZUseable;
  35.  
  36. public InGameOverlay() {
  37. skillListInstance = RivenMod.skillList;
  38. zCooldownTicks = 0;
  39. isZUseable = true;
  40. }
  41.  
  42. @SubscribeEvent
  43. public void renderGameOverlay(RenderGameOverlayEvent.Pre event) {
  44. if(event.type != ElementType.EXPERIENCE)
  45. return;
  46.  
  47. ScaledResolution sr = new ScaledResolution(mc, mc.displayWidth, mc.displayHeight);
  48. FontRenderer fr = mc.fontRendererObj;
  49. int width = sr.getScaledWidth();
  50. int height = sr.getScaledHeight();
  51.  
  52. GL11.glColor4f(1.0F, 1.0F, 1.0F, 1.0F);
  53. GL11.glDisable(GL11.GL_LIGHTING);
  54.  
  55. GL11.glPushMatrix();
  56. mc.renderEngine.bindTexture(rivenOverlay);
  57. drawTexturedModalRect(0, height / 2 - 37, 0, 0, 30, 74); //Skill Icon Holder
  58.  
  59. for(int i = 0; i < skillListInstance.size(); i++) {
  60. drawTexturedModalRect(2, height / 2 - 37 + 2 + (18 * i), 16 + (16 * i), 74, 16, 16);
  61. }
  62.  
  63. drawCenteredString(fr, "ZCD: " + (zCooldownTicks / 20), 20, 10, 0xFFFFFFFF);
  64.  
  65. GL11.glPopMatrix();
  66. }
  67.  
  68. @SubscribeEvent
  69. public void onKeyInput(InputEvent.KeyInputEvent event) {
  70. if(KeyBindings.RIVEN_Q.isPressed() && isZUseable) {
  71. RivenPlayer rp = RivenPlayer.get(mc.thePlayer);
  72. if(rp == null) return;
  73.  
  74. ISkill brokenWings = (BrokenWings)skillListInstance.get(0);
  75. RivenMod.SNW_INSTANCE.sendToServer(new SkillExecutionPacket(brokenWings.getId(), mc.theWorld.getPlayerEntityByName(mc.thePlayer.getName())));
  76.  
  77. zCooldownTicks = brokenWings.getCooldown() * 20;
  78. System.out.println(zCooldownTicks);
  79. isZUseable = false;
  80. }
  81. }
  82.  
  83. @SubscribeEvent
  84. public void clientTickEvent(ClientTickEvent event) {
  85. if(!isZUseable) {
  86. if(zCooldownTicks <= 0) {
  87. isZUseable = true;
  88. zCooldownTicks = 0;
  89. } else {
  90. zCooldownTicks--;
  91. System.out.println(zCooldownTicks);
  92. }
  93. }
  94. }
  95. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement