Search in sources :

Example 86 with AxisAlignedBB

use of net.minecraft.server.v1_16_R3.AxisAlignedBB in project NoCheatPlus by NoCheatPlus.

the class BlockCacheCB2512 method standsOnEntity.

@Override
public boolean standsOnEntity(final Entity entity, final double minX, final double minY, final double minZ, final double maxX, final double maxY, final double maxZ) {
    try {
        // TODO: Probably check other ids too before doing this ?
        final net.minecraft.server.v1_4_5.Entity mcEntity = ((CraftEntity) entity).getHandle();
        final AxisAlignedBB box = useBox.b(minX, minY, minZ, maxX, maxY, maxZ);
        @SuppressWarnings("rawtypes") final List list = world.getEntities(mcEntity, box);
        @SuppressWarnings("rawtypes") Iterator iterator = list.iterator();
        while (iterator.hasNext()) {
            final net.minecraft.server.v1_4_5.Entity other = (net.minecraft.server.v1_4_5.Entity) iterator.next();
            final EntityType type = other.getBukkitEntity().getType();
            if (type != EntityType.BOAT && type != EntityType.MINECART)
                continue;
            final AxisAlignedBB otherBox = other.boundingBox;
            if (box.a > otherBox.d || box.d < otherBox.a || box.b > otherBox.e || box.e < otherBox.b || box.c > otherBox.f || box.f < otherBox.c)
                continue;
            else {
                return true;
            }
        }
    } catch (Throwable t) {
    // Ignore exceptions (Context: DisguiseCraft).
    }
    return false;
}
Also used : AxisAlignedBB(net.minecraft.server.v1_4_5.AxisAlignedBB) CraftEntity(org.bukkit.craftbukkit.v1_4_5.entity.CraftEntity) Entity(org.bukkit.entity.Entity) TileEntity(net.minecraft.server.v1_4_5.TileEntity) CraftEntity(org.bukkit.craftbukkit.v1_4_5.entity.CraftEntity) EntityType(org.bukkit.entity.EntityType) Iterator(java.util.Iterator) List(java.util.List)

Example 87 with AxisAlignedBB

use of net.minecraft.server.v1_16_R3.AxisAlignedBB in project NoCheatPlus by NoCheatPlus.

the class BlockCacheCB2545 method standsOnEntity.

@Override
public boolean standsOnEntity(final Entity entity, final double minX, final double minY, final double minZ, final double maxX, final double maxY, final double maxZ) {
    try {
        // TODO: Probably check other ids too before doing this ?
        final net.minecraft.server.v1_4_6.Entity mcEntity = ((CraftEntity) entity).getHandle();
        final AxisAlignedBB box = useBox.b(minX, minY, minZ, maxX, maxY, maxZ);
        @SuppressWarnings("rawtypes") final List list = world.getEntities(mcEntity, box);
        @SuppressWarnings("rawtypes") Iterator iterator = list.iterator();
        while (iterator.hasNext()) {
            final net.minecraft.server.v1_4_6.Entity other = (net.minecraft.server.v1_4_6.Entity) iterator.next();
            final EntityType type = other.getBukkitEntity().getType();
            if (type != EntityType.BOAT && type != EntityType.MINECART)
                continue;
            final AxisAlignedBB otherBox = other.boundingBox;
            if (box.a > otherBox.d || box.d < otherBox.a || box.b > otherBox.e || box.e < otherBox.b || box.c > otherBox.f || box.f < otherBox.c)
                continue;
            else {
                return true;
            }
        }
    } catch (Throwable t) {
    // Ignore exceptions (Context: DisguiseCraft).
    }
    return false;
}
Also used : AxisAlignedBB(net.minecraft.server.v1_4_6.AxisAlignedBB) CraftEntity(org.bukkit.craftbukkit.v1_4_6.entity.CraftEntity) Entity(org.bukkit.entity.Entity) TileEntity(net.minecraft.server.v1_4_6.TileEntity) CraftEntity(org.bukkit.craftbukkit.v1_4_6.entity.CraftEntity) EntityType(org.bukkit.entity.EntityType) Iterator(java.util.Iterator) List(java.util.List)

Example 88 with AxisAlignedBB

use of net.minecraft.server.v1_16_R3.AxisAlignedBB in project NoCheatPlus by NoCheatPlus.

the class BlockCacheCB2691 method standsOnEntity.

@Override
public boolean standsOnEntity(final Entity entity, final double minX, final double minY, final double minZ, final double maxX, final double maxY, final double maxZ) {
    try {
        // TODO: Probably check other ids too before doing this ?
        final net.minecraft.server.v1_5_R2.Entity mcEntity = ((CraftEntity) entity).getHandle();
        final AxisAlignedBB box = useBox.b(minX, minY, minZ, maxX, maxY, maxZ);
        @SuppressWarnings("rawtypes") final List list = world.getEntities(mcEntity, box);
        @SuppressWarnings("rawtypes") final Iterator iterator = list.iterator();
        while (iterator.hasNext()) {
            final net.minecraft.server.v1_5_R2.Entity other = (net.minecraft.server.v1_5_R2.Entity) iterator.next();
            if (!(other instanceof EntityBoat)) {
                // && !(other instanceof EntityMinecart)) continue;
                continue;
            }
            if (minY >= other.locY && minY - other.locY <= 0.7) {
                return true;
            }
            // Still check this for some reason.
            final AxisAlignedBB otherBox = other.boundingBox;
            if (box.a > otherBox.d || box.d < otherBox.a || box.b > otherBox.e || box.e < otherBox.b || box.c > otherBox.f || box.f < otherBox.c)
                continue;
            else {
                return true;
            }
        }
    } catch (Throwable t) {
    // Ignore exceptions (Context: DisguiseCraft).
    }
    return false;
}
Also used : AxisAlignedBB(net.minecraft.server.v1_5_R2.AxisAlignedBB) Entity(org.bukkit.entity.Entity) TileEntity(net.minecraft.server.v1_5_R2.TileEntity) CraftEntity(org.bukkit.craftbukkit.v1_5_R2.entity.CraftEntity) EntityBoat(net.minecraft.server.v1_5_R2.EntityBoat) CraftEntity(org.bukkit.craftbukkit.v1_5_R2.entity.CraftEntity) Iterator(java.util.Iterator) List(java.util.List)

Example 89 with AxisAlignedBB

use of net.minecraft.server.v1_16_R3.AxisAlignedBB in project NoCheatPlus by NoCheatPlus.

the class MCAccessSpigotCB1_8_R1 method getHeight.

@Override
public double getHeight(final Entity entity) {
    final net.minecraft.server.v1_8_R1.Entity mcEntity = ((CraftEntity) entity).getHandle();
    AxisAlignedBB boundingBox = mcEntity.getBoundingBox();
    final double entityHeight = Math.max(mcEntity.length, Math.max(mcEntity.getHeadHeight(), boundingBox.e - boundingBox.b));
    if (entity instanceof LivingEntity) {
        return Math.max(((LivingEntity) entity).getEyeHeight(), entityHeight);
    } else
        return entityHeight;
}
Also used : AxisAlignedBB(net.minecraft.server.v1_8_R1.AxisAlignedBB) LivingEntity(org.bukkit.entity.LivingEntity) CraftEntity(org.bukkit.craftbukkit.v1_8_R1.entity.CraftEntity)

Example 90 with AxisAlignedBB

use of net.minecraft.server.v1_16_R3.AxisAlignedBB in project NoCheatPlus by NoCheatPlus.

the class BlockCacheSpigotCB1_8_R2 method standsOnEntity.

@Override
public boolean standsOnEntity(final Entity entity, final double minX, final double minY, final double minZ, final double maxX, final double maxY, final double maxZ) {
    try {
        // TODO: Find some simplification!
        final net.minecraft.server.v1_8_R2.Entity mcEntity = ((CraftEntity) entity).getHandle();
        final AxisAlignedBB box = new AxisAlignedBB(minX, minY, minZ, maxX, maxY, maxZ);
        @SuppressWarnings("rawtypes") final List list = world.getEntities(mcEntity, box);
        @SuppressWarnings("rawtypes") final Iterator iterator = list.iterator();
        while (iterator.hasNext()) {
            final net.minecraft.server.v1_8_R2.Entity other = (net.minecraft.server.v1_8_R2.Entity) iterator.next();
            if (!(other instanceof EntityBoat)) {
                // && !(other instanceof EntityMinecart)) continue;
                continue;
            }
            if (minY >= other.locY && minY - other.locY <= 0.7) {
                return true;
            }
            // Still check this for some reason.
            final AxisAlignedBB otherBox = other.getBoundingBox();
            if (box.a > otherBox.d || box.d < otherBox.a || box.b > otherBox.e || box.e < otherBox.b || box.c > otherBox.f || box.f < otherBox.c) {
                continue;
            } else {
                return true;
            }
        }
    } catch (Throwable t) {
    // Ignore exceptions (Context: DisguiseCraft).
    }
    return false;
}
Also used : AxisAlignedBB(net.minecraft.server.v1_8_R2.AxisAlignedBB) Entity(org.bukkit.entity.Entity) CraftEntity(org.bukkit.craftbukkit.v1_8_R2.entity.CraftEntity) EntityBoat(net.minecraft.server.v1_8_R2.EntityBoat) CraftEntity(org.bukkit.craftbukkit.v1_8_R2.entity.CraftEntity) Iterator(java.util.Iterator) List(java.util.List)

Aggregations

List (java.util.List)25 Entity (org.bukkit.entity.Entity)23 Iterator (java.util.Iterator)21 ArrayList (java.util.ArrayList)14 AxisAlignedBB (net.minecraft.server.v1_12_R1.AxisAlignedBB)14 AxisAlignedBB (net.minecraft.server.v1_10_R1.AxisAlignedBB)13 HitBox (me.deecaad.weaponmechanics.weapon.projectile.HitBox)12 AxisAlignedBB (net.minecraft.server.v1_11_R1.AxisAlignedBB)12 ComplexCollisionBox (cc.funkemunky.api.utils.world.types.ComplexCollisionBox)11 SimpleCollisionBox (cc.funkemunky.api.utils.world.types.SimpleCollisionBox)11 AxisAlignedBB (net.minecraft.server.v1_8_R3.AxisAlignedBB)9 BlockPosition (net.minecraft.server.v1_10_R1.BlockPosition)8 LivingEntity (org.bukkit.entity.LivingEntity)8 BlockPosition (net.minecraft.server.v1_12_R1.BlockPosition)7 AxisAlignedBB (net.minecraft.server.v1_16_R3.AxisAlignedBB)7 AxisAlignedBB (net.minecraft.server.v1_9_R2.AxisAlignedBB)7 BlockPosition (net.minecraft.server.v1_11_R1.BlockPosition)6 BoundingBox (net.citizensnpcs.api.util.BoundingBox)5 Location (org.bukkit.Location)5 AxisAlignedBB (net.minecraft.server.v1_13_R2.AxisAlignedBB)4