Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package me.gtx.nvidia.mod.mods;
- import java.util.Iterator;
- import org.lwjgl.input.Keyboard;
- import com.darkmagician6.eventapi.EventTarget;
- import com.darkmagician6.eventapi.events.EventPacketSent;
- import me.gtx.nvidia.Category;
- import me.gtx.nvidia.mod.Mod;
- import net.minecraft.entity.Entity;
- import net.minecraft.entity.EntityLivingBase;
- import net.minecraft.entity.player.EntityPlayer;
- import net.minecraft.network.play.client.C02PacketUseEntity;
- import net.minecraft.network.play.client.C03PacketPlayer;
- import net.minecraft.util.MathHelper;
- public class Aura extends Mod {
- EntityLivingBase target;
- double Reach;
- int delay = 0;
- public Aura() {
- super("Aura", "Aura", Keyboard.KEY_R, Category.COMBAT);
- }
- public float[] getRotations(Entity entity) {
- if (entity == null) {
- return null;
- }
- double diffX = entity.posX - mc.thePlayer.posX;
- double diffZ = entity.posZ - mc.thePlayer.posZ;
- double diffY;
- if ((entity instanceof EntityPlayer)) {
- EntityPlayer elb = (EntityPlayer) entity;
- diffY = elb.posY + (elb.getEyeHeight() - 0.4D) - (mc.thePlayer.posY + mc.thePlayer.getEyeHeight());
- } else {
- diffY = (entity.boundingBox.minY + entity.boundingBox.maxY) / 2.0D
- - (mc.thePlayer.posY + mc.thePlayer.getEyeHeight());
- }
- double dist = MathHelper.sqrt_double(diffX * diffX + diffZ * diffZ);
- float yaw = (float) (Math.atan2(diffZ, diffX) * 180.0D / 3.141592653589793D) - 90.0F;
- float pitch = (float) -(Math.atan2(diffY, dist) * 180.0D / 3.141592653589793D);
- return new float[] { yaw, pitch };
- }
- public void Attack(EntityLivingBase e) {
- mc.thePlayer.sendQueue.addToSendQueue(new C02PacketUseEntity(e, C02PacketUseEntity.Action.ATTACK));
- mc.thePlayer.swingItem();
- }
- public static boolean isValid(EntityLivingBase e) {
- if(e.isEntityAlive() && e != mc.thePlayer && e!= null) {
- return true;
- }
- return false;
- }
- public void onUpdate() {
- if(!this.isToggled()) {
- return;
- }
- ++delay;
- if(delay > 3) {
- delay = 0;
- }
- if(isValid(target) && mc.thePlayer.getDistanceToEntity(target) < Reach && delay > 1) {
- Attack(target);
- }
- }
- @EventTarget
- public void onUpdate(EventPacketSent event) {
- if(mc.thePlayer.getDistanceToEntity(target) < Reach) {
- float[] rotations = getRotations(target);
- C03PacketPlayer packet = (C03PacketPlayer) event.getPacket();
- packet.yaw = rotations[0];
- packet.pitch = rotations[1];
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement