Search in sources :

Example 1 with FishingBobberEntity

use of net.minecraft.entity.projectile.FishingBobberEntity in project meteor-client by MeteorDevelopment.

the class AutoFish method onPlaySound.

@EventHandler
private void onPlaySound(PlaySoundEvent event) {
    SoundInstance p = event.sound;
    FishingBobberEntity b = mc.player.fishHook;
    if (p.getId().getPath().equals("entity.fishing_bobber.splash")) {
        if (!splashDetectionRangeEnabled.get() || Utils.distance(b.getX(), b.getY(), b.getZ(), p.getX(), p.getY(), p.getZ()) <= splashDetectionRange.get()) {
            ticksEnabled = true;
            ticksToRightClick = ticksCatch.get();
            ticksData = 0;
        }
    }
}
Also used : FishingBobberEntity(net.minecraft.entity.projectile.FishingBobberEntity) SoundInstance(net.minecraft.client.sound.SoundInstance) EventHandler(meteordevelopment.orbit.EventHandler)

Example 2 with FishingBobberEntity

use of net.minecraft.entity.projectile.FishingBobberEntity in project Magma-1.16.x by magmafoundation.

the class CraftLivingEntity method launchProjectile.

@Override
@SuppressWarnings("unchecked")
public <T extends Projectile> T launchProjectile(Class<? extends T> projectile, Vector velocity) {
    net.minecraft.world.World world = ((CraftWorld) getWorld()).getHandle();
    net.minecraft.entity.Entity launch = null;
    if (Snowball.class.isAssignableFrom(projectile)) {
        launch = new SnowballEntity(world, getHandle());
        // ItemSnowball
        ((ThrowableEntity) launch).shootFromRotation(getHandle(), getHandle().xRot, getHandle().yRot, 0.0F, 1.5F, 1.0F);
    } else if (Egg.class.isAssignableFrom(projectile)) {
        launch = new EggEntity(world, getHandle());
        // ItemEgg
        ((ThrowableEntity) launch).shootFromRotation(getHandle(), getHandle().xRot, getHandle().yRot, 0.0F, 1.5F, 1.0F);
    } else if (EnderPearl.class.isAssignableFrom(projectile)) {
        launch = new EnderPearlEntity(world, getHandle());
        // EnderPearlItem
        ((ThrowableEntity) launch).shootFromRotation(getHandle(), getHandle().xRot, getHandle().yRot, 0.0F, 1.5F, 1.0F);
    } else if (AbstractArrow.class.isAssignableFrom(projectile)) {
        if (TippedArrow.class.isAssignableFrom(projectile)) {
            launch = new ArrowEntity(world, getHandle());
            ((ArrowEntity) launch).setType(CraftPotionUtil.fromBukkit(new PotionData(PotionType.WATER, false, false)));
        } else if (SpectralArrow.class.isAssignableFrom(projectile)) {
            launch = new SpectralArrowEntity(world, getHandle());
        } else if (Trident.class.isAssignableFrom(projectile)) {
            launch = new TridentEntity(world, getHandle(), new net.minecraft.item.ItemStack(net.minecraft.item.Items.TRIDENT));
        } else {
            launch = new ArrowEntity(world, getHandle());
        }
        // ItemBow
        ((AbstractArrowEntity) launch).shootFromRotation(getHandle(), getHandle().xRot, getHandle().yRot, 0.0F, 3.0F, 1.0F);
    } else if (ThrownPotion.class.isAssignableFrom(projectile)) {
        if (LingeringPotion.class.isAssignableFrom(projectile)) {
            launch = new PotionEntity(world, getHandle());
            ((PotionEntity) launch).setItem(CraftItemStack.asNMSCopy(new ItemStack(org.bukkit.Material.LINGERING_POTION, 1)));
        } else {
            launch = new PotionEntity(world, getHandle());
            ((PotionEntity) launch).setItem(CraftItemStack.asNMSCopy(new ItemStack(org.bukkit.Material.SPLASH_POTION, 1)));
        }
        // SplashPotionItem
        ((ThrowableEntity) launch).shootFromRotation(getHandle(), getHandle().xRot, getHandle().yRot, -20.0F, 0.5F, 1.0F);
    } else if (ThrownExpBottle.class.isAssignableFrom(projectile)) {
        launch = new ExperienceBottleEntity(world, getHandle());
        // ExperienceBottleItem
        ((ThrowableEntity) launch).shootFromRotation(getHandle(), getHandle().xRot, getHandle().yRot, -20.0F, 0.7F, 1.0F);
    } else if (FishHook.class.isAssignableFrom(projectile) && getHandle() instanceof PlayerEntity) {
        launch = new FishingBobberEntity((PlayerEntity) getHandle(), world, 0, 0);
    } else if (Fireball.class.isAssignableFrom(projectile)) {
        Location location = getEyeLocation();
        Vector direction = location.getDirection().multiply(10);
        if (SmallFireball.class.isAssignableFrom(projectile)) {
            launch = new SmallFireballEntity(world, getHandle(), direction.getX(), direction.getY(), direction.getZ());
        } else if (WitherSkull.class.isAssignableFrom(projectile)) {
            launch = new WitherSkullEntity(world, getHandle(), direction.getX(), direction.getY(), direction.getZ());
        } else if (DragonFireball.class.isAssignableFrom(projectile)) {
            launch = new DragonFireballEntity(world, getHandle(), direction.getX(), direction.getY(), direction.getZ());
        } else {
            launch = new FireballEntity(world, getHandle(), direction.getX(), direction.getY(), direction.getZ());
        }
        ((DamagingProjectileEntity) launch).projectileSource = this;
        launch.moveTo(location.getX(), location.getY(), location.getZ(), location.getYaw(), location.getPitch());
    } else if (LlamaSpit.class.isAssignableFrom(projectile)) {
        Location location = getEyeLocation();
        Vector direction = location.getDirection();
        launch = net.minecraft.entity.EntityType.LLAMA_SPIT.create(world);
        ((LlamaSpitEntity) launch).setOwner(getHandle());
        // LlamaEntity
        ((LlamaSpitEntity) launch).shoot(direction.getX(), direction.getY(), direction.getZ(), 1.5F, 10.0F);
        launch.moveTo(location.getX(), location.getY(), location.getZ(), location.getYaw(), location.getPitch());
    } else if (ShulkerBullet.class.isAssignableFrom(projectile)) {
        Location location = getEyeLocation();
        launch = new ShulkerBulletEntity(world, getHandle(), null, null);
        launch.moveTo(location.getX(), location.getY(), location.getZ(), location.getYaw(), location.getPitch());
    } else if (Firework.class.isAssignableFrom(projectile)) {
        Location location = getEyeLocation();
        launch = new FireworkRocketEntity(world, net.minecraft.item.ItemStack.EMPTY, getHandle());
        launch.moveTo(location.getX(), location.getY(), location.getZ(), location.getYaw(), location.getPitch());
    }
    Validate.notNull(launch, "Projectile not supported");
    if (velocity != null) {
        ((T) launch.getBukkitEntity()).setVelocity(velocity);
    }
    world.addFreshEntity(launch);
    return (T) launch.getBukkitEntity();
}
Also used : ArrowEntity(net.minecraft.entity.projectile.ArrowEntity) AbstractArrowEntity(net.minecraft.entity.projectile.AbstractArrowEntity) SpectralArrowEntity(net.minecraft.entity.projectile.SpectralArrowEntity) SmallFireballEntity(net.minecraft.entity.projectile.SmallFireballEntity) ThrowableEntity(net.minecraft.entity.projectile.ThrowableEntity) EggEntity(net.minecraft.entity.projectile.EggEntity) SpectralArrowEntity(net.minecraft.entity.projectile.SpectralArrowEntity) FireworkRocketEntity(net.minecraft.entity.projectile.FireworkRocketEntity) ShulkerBullet(org.bukkit.entity.ShulkerBullet) PlayerEntity(net.minecraft.entity.player.PlayerEntity) EnderPearlEntity(net.minecraft.entity.item.EnderPearlEntity) PotionData(org.bukkit.potion.PotionData) DragonFireball(org.bukkit.entity.DragonFireball) Fireball(org.bukkit.entity.Fireball) SmallFireball(org.bukkit.entity.SmallFireball) TippedArrow(org.bukkit.entity.TippedArrow) DragonFireball(org.bukkit.entity.DragonFireball) DamagingProjectileEntity(net.minecraft.entity.projectile.DamagingProjectileEntity) LlamaSpitEntity(net.minecraft.entity.projectile.LlamaSpitEntity) Trident(org.bukkit.entity.Trident) SmallFireball(org.bukkit.entity.SmallFireball) SnowballEntity(net.minecraft.entity.projectile.SnowballEntity) CraftWorld(org.bukkit.craftbukkit.v1_16_R3.CraftWorld) Vector(org.bukkit.util.Vector) FishingBobberEntity(net.minecraft.entity.projectile.FishingBobberEntity) FishHook(org.bukkit.entity.FishHook) DragonFireballEntity(net.minecraft.entity.projectile.DragonFireballEntity) Egg(org.bukkit.entity.Egg) ShulkerBulletEntity(net.minecraft.entity.projectile.ShulkerBulletEntity) PotionEntity(net.minecraft.entity.projectile.PotionEntity) WitherSkullEntity(net.minecraft.entity.projectile.WitherSkullEntity) ThrownExpBottle(org.bukkit.entity.ThrownExpBottle) ExperienceBottleEntity(net.minecraft.entity.item.ExperienceBottleEntity) TridentEntity(net.minecraft.entity.projectile.TridentEntity) ItemStack(org.bukkit.inventory.ItemStack) CraftItemStack(org.bukkit.craftbukkit.v1_16_R3.inventory.CraftItemStack) AbstractArrow(org.bukkit.entity.AbstractArrow) Location(org.bukkit.Location) FireballEntity(net.minecraft.entity.projectile.FireballEntity) SmallFireballEntity(net.minecraft.entity.projectile.SmallFireballEntity) DragonFireballEntity(net.minecraft.entity.projectile.DragonFireballEntity)

Example 3 with FishingBobberEntity

use of net.minecraft.entity.projectile.FishingBobberEntity in project Magma-1.16.x by magmafoundation.

the class CraftFishHook method setMaxWaitTime.

@Override
public void setMaxWaitTime(int maxWaitTime) {
    FishingBobberEntity hook = getHandle();
    Validate.isTrue(maxWaitTime >= 0 && maxWaitTime >= this.getMinWaitTime(), "The maximum wait time should be higher than or equal to 0 and the minimum wait time.");
    hook.maxWaitTime = maxWaitTime;
}
Also used : FishingBobberEntity(net.minecraft.entity.projectile.FishingBobberEntity)

Example 4 with FishingBobberEntity

use of net.minecraft.entity.projectile.FishingBobberEntity in project LoliServer by Loli-Server.

the class CraftLivingEntity method launchProjectile.

@Override
@SuppressWarnings("unchecked")
public <T extends Projectile> T launchProjectile(Class<? extends T> projectile, Vector velocity) {
    net.minecraft.world.World world = ((CraftWorld) getWorld()).getHandle();
    net.minecraft.entity.Entity launch = null;
    if (Snowball.class.isAssignableFrom(projectile)) {
        launch = new SnowballEntity(world, getHandle());
        // ItemSnowball
        ((ThrowableEntity) launch).shootFromRotation(getHandle(), getHandle().xRot, getHandle().yRot, 0.0F, 1.5F, 1.0F);
    } else if (Egg.class.isAssignableFrom(projectile)) {
        launch = new EggEntity(world, getHandle());
        // ItemEgg
        ((ThrowableEntity) launch).shootFromRotation(getHandle(), getHandle().xRot, getHandle().yRot, 0.0F, 1.5F, 1.0F);
    } else if (EnderPearl.class.isAssignableFrom(projectile)) {
        launch = new EnderPearlEntity(world, getHandle());
        // EnderPearlItem
        ((ThrowableEntity) launch).shootFromRotation(getHandle(), getHandle().xRot, getHandle().yRot, 0.0F, 1.5F, 1.0F);
    } else if (AbstractArrow.class.isAssignableFrom(projectile)) {
        if (TippedArrow.class.isAssignableFrom(projectile)) {
            launch = new ArrowEntity(world, getHandle());
            ((ArrowEntity) launch).setType(CraftPotionUtil.fromBukkit(new PotionData(PotionType.WATER, false, false)));
        } else if (SpectralArrow.class.isAssignableFrom(projectile)) {
            launch = new SpectralArrowEntity(world, getHandle());
        } else if (Trident.class.isAssignableFrom(projectile)) {
            launch = new TridentEntity(world, getHandle(), new net.minecraft.item.ItemStack(net.minecraft.item.Items.TRIDENT));
        } else {
            launch = new ArrowEntity(world, getHandle());
        }
        // ItemBow
        ((AbstractArrowEntity) launch).shootFromRotation(getHandle(), getHandle().xRot, getHandle().yRot, 0.0F, 3.0F, 1.0F);
    } else if (ThrownPotion.class.isAssignableFrom(projectile)) {
        if (LingeringPotion.class.isAssignableFrom(projectile)) {
            launch = new PotionEntity(world, getHandle());
            ((PotionEntity) launch).setItem(CraftItemStack.asNMSCopy(new ItemStack(org.bukkit.Material.LINGERING_POTION, 1)));
        } else {
            launch = new PotionEntity(world, getHandle());
            ((PotionEntity) launch).setItem(CraftItemStack.asNMSCopy(new ItemStack(org.bukkit.Material.SPLASH_POTION, 1)));
        }
        // SplashPotionItem
        ((ThrowableEntity) launch).shootFromRotation(getHandle(), getHandle().xRot, getHandle().yRot, -20.0F, 0.5F, 1.0F);
    } else if (ThrownExpBottle.class.isAssignableFrom(projectile)) {
        launch = new ExperienceBottleEntity(world, getHandle());
        // ExperienceBottleItem
        ((ThrowableEntity) launch).shootFromRotation(getHandle(), getHandle().xRot, getHandle().yRot, -20.0F, 0.7F, 1.0F);
    } else if (FishHook.class.isAssignableFrom(projectile) && getHandle() instanceof PlayerEntity) {
        launch = new FishingBobberEntity((PlayerEntity) getHandle(), world, 0, 0);
    } else if (Fireball.class.isAssignableFrom(projectile)) {
        Location location = getEyeLocation();
        Vector direction = location.getDirection().multiply(10);
        if (SmallFireball.class.isAssignableFrom(projectile)) {
            launch = new SmallFireballEntity(world, getHandle(), direction.getX(), direction.getY(), direction.getZ());
        } else if (WitherSkull.class.isAssignableFrom(projectile)) {
            launch = new WitherSkullEntity(world, getHandle(), direction.getX(), direction.getY(), direction.getZ());
        } else if (DragonFireball.class.isAssignableFrom(projectile)) {
            launch = new DragonFireballEntity(world, getHandle(), direction.getX(), direction.getY(), direction.getZ());
        } else {
            launch = new FireballEntity(world, getHandle(), direction.getX(), direction.getY(), direction.getZ());
        }
        ((DamagingProjectileEntity) launch).projectileSource = this;
        launch.moveTo(location.getX(), location.getY(), location.getZ(), location.getYaw(), location.getPitch());
    } else if (LlamaSpit.class.isAssignableFrom(projectile)) {
        Location location = getEyeLocation();
        Vector direction = location.getDirection();
        launch = net.minecraft.entity.EntityType.LLAMA_SPIT.create(world);
        ((LlamaSpitEntity) launch).setOwner(getHandle());
        // LlamaEntity
        ((LlamaSpitEntity) launch).shoot(direction.getX(), direction.getY(), direction.getZ(), 1.5F, 10.0F);
        launch.moveTo(location.getX(), location.getY(), location.getZ(), location.getYaw(), location.getPitch());
    } else if (ShulkerBullet.class.isAssignableFrom(projectile)) {
        Location location = getEyeLocation();
        launch = new ShulkerBulletEntity(world, getHandle(), null, null);
        launch.moveTo(location.getX(), location.getY(), location.getZ(), location.getYaw(), location.getPitch());
    } else if (Firework.class.isAssignableFrom(projectile)) {
        Location location = getEyeLocation();
        launch = new FireworkRocketEntity(world, net.minecraft.item.ItemStack.EMPTY, getHandle());
        launch.moveTo(location.getX(), location.getY(), location.getZ(), location.getYaw(), location.getPitch());
    }
    Validate.notNull(launch, "Projectile not supported");
    if (velocity != null) {
        ((T) launch.getBukkitEntity()).setVelocity(velocity);
    }
    world.addFreshEntity(launch);
    return (T) launch.getBukkitEntity();
}
Also used : ArrowEntity(net.minecraft.entity.projectile.ArrowEntity) AbstractArrowEntity(net.minecraft.entity.projectile.AbstractArrowEntity) SpectralArrowEntity(net.minecraft.entity.projectile.SpectralArrowEntity) SmallFireballEntity(net.minecraft.entity.projectile.SmallFireballEntity) ThrowableEntity(net.minecraft.entity.projectile.ThrowableEntity) EggEntity(net.minecraft.entity.projectile.EggEntity) SpectralArrowEntity(net.minecraft.entity.projectile.SpectralArrowEntity) FireworkRocketEntity(net.minecraft.entity.projectile.FireworkRocketEntity) ShulkerBullet(org.bukkit.entity.ShulkerBullet) PlayerEntity(net.minecraft.entity.player.PlayerEntity) EnderPearlEntity(net.minecraft.entity.item.EnderPearlEntity) PotionData(org.bukkit.potion.PotionData) DragonFireball(org.bukkit.entity.DragonFireball) Fireball(org.bukkit.entity.Fireball) SmallFireball(org.bukkit.entity.SmallFireball) TippedArrow(org.bukkit.entity.TippedArrow) DragonFireball(org.bukkit.entity.DragonFireball) DamagingProjectileEntity(net.minecraft.entity.projectile.DamagingProjectileEntity) LlamaSpitEntity(net.minecraft.entity.projectile.LlamaSpitEntity) Trident(org.bukkit.entity.Trident) SmallFireball(org.bukkit.entity.SmallFireball) SnowballEntity(net.minecraft.entity.projectile.SnowballEntity) CraftWorld(org.bukkit.craftbukkit.v1_16_R3.CraftWorld) Vector(org.bukkit.util.Vector) FishingBobberEntity(net.minecraft.entity.projectile.FishingBobberEntity) FishHook(org.bukkit.entity.FishHook) DragonFireballEntity(net.minecraft.entity.projectile.DragonFireballEntity) Egg(org.bukkit.entity.Egg) ShulkerBulletEntity(net.minecraft.entity.projectile.ShulkerBulletEntity) PotionEntity(net.minecraft.entity.projectile.PotionEntity) WitherSkullEntity(net.minecraft.entity.projectile.WitherSkullEntity) ThrownExpBottle(org.bukkit.entity.ThrownExpBottle) ExperienceBottleEntity(net.minecraft.entity.item.ExperienceBottleEntity) TridentEntity(net.minecraft.entity.projectile.TridentEntity) ItemStack(org.bukkit.inventory.ItemStack) CraftItemStack(org.bukkit.craftbukkit.v1_16_R3.inventory.CraftItemStack) AbstractArrow(org.bukkit.entity.AbstractArrow) Location(org.bukkit.Location) FireballEntity(net.minecraft.entity.projectile.FireballEntity) SmallFireballEntity(net.minecraft.entity.projectile.SmallFireballEntity) DragonFireballEntity(net.minecraft.entity.projectile.DragonFireballEntity)

Example 5 with FishingBobberEntity

use of net.minecraft.entity.projectile.FishingBobberEntity in project LoliServer by Loli-Server.

the class CraftFishHook method pullHookedEntity.

@Override
public boolean pullHookedEntity() {
    FishingBobberEntity hook = getHandle();
    if (hook.hookedIn == null) {
        return false;
    }
    hook.bringInHookedEntity();
    return true;
}
Also used : FishingBobberEntity(net.minecraft.entity.projectile.FishingBobberEntity)

Aggregations

FishingBobberEntity (net.minecraft.entity.projectile.FishingBobberEntity)14 FishHook (org.bukkit.entity.FishHook)3 EntityBridge (io.izzel.arclight.common.bridge.entity.EntityBridge)2 ServerPlayerEntityBridge (io.izzel.arclight.common.bridge.entity.player.ServerPlayerEntityBridge)2 SoundInstance (net.minecraft.client.sound.SoundInstance)2 EnderPearlEntity (net.minecraft.entity.item.EnderPearlEntity)2 ExperienceBottleEntity (net.minecraft.entity.item.ExperienceBottleEntity)2 PlayerEntity (net.minecraft.entity.player.PlayerEntity)2 AbstractArrowEntity (net.minecraft.entity.projectile.AbstractArrowEntity)2 ArrowEntity (net.minecraft.entity.projectile.ArrowEntity)2 DamagingProjectileEntity (net.minecraft.entity.projectile.DamagingProjectileEntity)2 DragonFireballEntity (net.minecraft.entity.projectile.DragonFireballEntity)2 EggEntity (net.minecraft.entity.projectile.EggEntity)2 FireballEntity (net.minecraft.entity.projectile.FireballEntity)2 FireworkRocketEntity (net.minecraft.entity.projectile.FireworkRocketEntity)2 LlamaSpitEntity (net.minecraft.entity.projectile.LlamaSpitEntity)2 PotionEntity (net.minecraft.entity.projectile.PotionEntity)2 ShulkerBulletEntity (net.minecraft.entity.projectile.ShulkerBulletEntity)2 SmallFireballEntity (net.minecraft.entity.projectile.SmallFireballEntity)2 SnowballEntity (net.minecraft.entity.projectile.SnowballEntity)2