diff --git a/src/main/java/com/minelittlepony/unicopia/ability/BatPonyHangAbility.java b/src/main/java/com/minelittlepony/unicopia/ability/BatPonyHangAbility.java index 5cd47fc1..fcc70780 100644 --- a/src/main/java/com/minelittlepony/unicopia/ability/BatPonyHangAbility.java +++ b/src/main/java/com/minelittlepony/unicopia/ability/BatPonyHangAbility.java @@ -44,7 +44,7 @@ public class BatPonyHangAbility implements Ability { return new Multi(BlockPos.ZERO, 0); } - BlockPos poss = RayTraceHelper.doTrace(player.getMaster(), 3, 1, EntityPredicates.EXCEPT_SPECTATOR).getBlockPos().orElse(null); + BlockPos poss = RayTraceHelper.doTrace(player.getMaster(), 3, 1, EntityPredicates.CAN_COLLIDE).getBlockPos().orElse(null); if (poss != null) { boolean air = player.getWorld().isAir(poss.down()) && player.getWorld().isAir(poss.down(2)); diff --git a/src/main/java/com/minelittlepony/unicopia/ability/ChangelingDisguiseAbility.java b/src/main/java/com/minelittlepony/unicopia/ability/ChangelingDisguiseAbility.java index b31700b6..5ed1fe59 100644 --- a/src/main/java/com/minelittlepony/unicopia/ability/ChangelingDisguiseAbility.java +++ b/src/main/java/com/minelittlepony/unicopia/ability/ChangelingDisguiseAbility.java @@ -42,7 +42,7 @@ public class ChangelingDisguiseAbility extends ChangelingFeedAbility { return; } - RayTraceHelper.Trace trace = RayTraceHelper.doTrace(player, 10, 1, EntityPredicates.EXCEPT_SPECTATOR.and(e -> !(e instanceof LightningEntity))); + RayTraceHelper.Trace trace = RayTraceHelper.doTrace(player, 10, 1, EntityPredicates.CAN_COLLIDE.and(e -> !(e instanceof LightningEntity))); Entity looked = trace.getEntity().filter(e -> !(e instanceof AbstractDecorationEntity)).map(e -> { return e instanceof PlayerEntity ? Pony.of((PlayerEntity)e) diff --git a/src/main/java/com/minelittlepony/unicopia/ability/UnicornCastingAbility.java b/src/main/java/com/minelittlepony/unicopia/ability/UnicornCastingAbility.java index 1c8ce90a..c0c877f9 100644 --- a/src/main/java/com/minelittlepony/unicopia/ability/UnicornCastingAbility.java +++ b/src/main/java/com/minelittlepony/unicopia/ability/UnicornCastingAbility.java @@ -15,6 +15,7 @@ import com.minelittlepony.unicopia.particle.MagicParticleEffect; import com.minelittlepony.unicopia.util.RayTraceHelper; import com.minelittlepony.unicopia.util.VecHelper; +import net.minecraft.entity.Entity; import net.minecraft.item.ItemStack; import net.minecraft.particle.ParticleTypes; import net.minecraft.predicate.entity.EntityPredicates; @@ -107,7 +108,7 @@ public class UnicornCastingAbility implements Ability { player.playSound(SoundEvents.ENTITY_ITEM_BREAK, 1, 0.5F); } else { if (s instanceof HomingSpell) { - RayTraceHelper.doTrace(player.getMaster(), 600, 1, EntityPredicates.EXCEPT_SPECTATOR).getEntity().ifPresent(((HomingSpell)s)::setTarget); + RayTraceHelper.doTrace(player.getMaster(), 600, 1, EntityPredicates.CAN_COLLIDE).getEntity().ifPresent(((HomingSpell)s)::setTarget); } player.playSound(SoundEvents.BLOCK_BEACON_POWER_SELECT, 0.05F, 2.2F); } diff --git a/src/main/java/com/minelittlepony/unicopia/ability/UnicornProjectileAbility.java b/src/main/java/com/minelittlepony/unicopia/ability/UnicornProjectileAbility.java index 324bbd8d..a13f1f28 100644 --- a/src/main/java/com/minelittlepony/unicopia/ability/UnicornProjectileAbility.java +++ b/src/main/java/com/minelittlepony/unicopia/ability/UnicornProjectileAbility.java @@ -70,7 +70,7 @@ public class UnicornProjectileAbility implements Ability { spell.toThrowable().throwProjectile(player).ifPresent(projectile -> { if (spell instanceof HomingSpell) { - RayTraceHelper.doTrace(player.getMaster(), 600, 1, EntityPredicates.EXCEPT_SPECTATOR).getEntity().filter(((HomingSpell)spell)::setTarget).ifPresent(target -> { + RayTraceHelper.doTrace(player.getMaster(), 600, 1, EntityPredicates.CAN_COLLIDE).getEntity().filter(((HomingSpell)spell)::setTarget).ifPresent(target -> { projectile.setHomingTarget(target); }); } diff --git a/src/main/java/com/minelittlepony/unicopia/ability/UnicornTeleportAbility.java b/src/main/java/com/minelittlepony/unicopia/ability/UnicornTeleportAbility.java index a687ef4f..0c19a704 100644 --- a/src/main/java/com/minelittlepony/unicopia/ability/UnicornTeleportAbility.java +++ b/src/main/java/com/minelittlepony/unicopia/ability/UnicornTeleportAbility.java @@ -67,7 +67,7 @@ public class UnicornTeleportAbility implements Ability { @Override public Pos tryActivate(Pony player) { int maxDistance = player.getMaster().isCreative() ? 1000 : 100; - HitResult ray = RayTraceHelper.doTrace(player.getMaster(), maxDistance, 1, EntityPredicates.EXCEPT_SPECTATOR).getResult(); + HitResult ray = RayTraceHelper.doTrace(player.getMaster(), maxDistance, 1, EntityPredicates.CAN_COLLIDE).getResult(); World w = player.getWorld(); diff --git a/src/main/java/com/minelittlepony/unicopia/ability/magic/spell/effect/CatapultSpell.java b/src/main/java/com/minelittlepony/unicopia/ability/magic/spell/effect/CatapultSpell.java index d9ff1006..d41c8aa1 100644 --- a/src/main/java/com/minelittlepony/unicopia/ability/magic/spell/effect/CatapultSpell.java +++ b/src/main/java/com/minelittlepony/unicopia/ability/magic/spell/effect/CatapultSpell.java @@ -86,7 +86,7 @@ public class CatapultSpell extends AbstractSpell implements ProjectileSpell { double maxDistance = 2 + (getTraits().get(Trait.FOCUS) - 50) * 8; - HitResult ray = RayTraceHelper.doTrace(caster.getMaster(), maxDistance, 1, EntityPredicates.EXCEPT_SPECTATOR).getResult(); + HitResult ray = RayTraceHelper.doTrace(caster.getMaster(), maxDistance, 1, EntityPredicates.CAN_COLLIDE).getResult(); if (ray.getType() == HitResult.Type.ENTITY) { EntityHitResult result = (EntityHitResult)ray; diff --git a/src/main/java/com/minelittlepony/unicopia/item/ZapAppleItem.java b/src/main/java/com/minelittlepony/unicopia/item/ZapAppleItem.java index d164155a..0bbe158a 100644 --- a/src/main/java/com/minelittlepony/unicopia/item/ZapAppleItem.java +++ b/src/main/java/com/minelittlepony/unicopia/item/ZapAppleItem.java @@ -43,7 +43,7 @@ public class ZapAppleItem extends AppleItem implements ChameleonItem { public TypedActionResult use(World world, PlayerEntity player, Hand hand) { ItemStack stack = player.getStackInHand(hand); - Optional entity = RayTraceHelper.doTrace(player, 5, 1, EntityPredicates.EXCEPT_SPECTATOR.and(e -> canFeedTo(stack, e))).getEntity(); + Optional entity = RayTraceHelper.doTrace(player, 5, 1, EntityPredicates.CAN_COLLIDE.and(e -> canFeedTo(stack, e))).getEntity(); if (entity.isPresent()) { return onFedTo(stack, player, entity.get()); diff --git a/src/main/java/com/minelittlepony/unicopia/util/RayTraceHelper.java b/src/main/java/com/minelittlepony/unicopia/util/RayTraceHelper.java index c8555554..588c2651 100644 --- a/src/main/java/com/minelittlepony/unicopia/util/RayTraceHelper.java +++ b/src/main/java/com/minelittlepony/unicopia/util/RayTraceHelper.java @@ -18,7 +18,7 @@ import net.minecraft.util.math.Vec3d; public class RayTraceHelper { public static Optional findEntity(Entity e, double distance, float tickDelta, Predicate predicate) { - return doTrace(e, distance, tickDelta, EntityPredicates.EXCEPT_SPECTATOR.and(predicate)).getEntity(); + return doTrace(e, distance, tickDelta, EntityPredicates.CAN_COLLIDE.and(predicate)).getEntity(); } /** @@ -33,7 +33,7 @@ public class RayTraceHelper { * @return A Trace describing what was found. */ public static Trace doTrace(Entity e, double distance, float tickDelta) { - return doTrace(e, distance, tickDelta, EntityPredicates.EXCEPT_SPECTATOR); + return doTrace(e, distance, tickDelta, EntityPredicates.CAN_COLLIDE); } /** @@ -55,7 +55,7 @@ public class RayTraceHelper { final Box box = e.getBoundingBox().stretch(ray).expand(1); - EntityHitResult pointedEntity = ProjectileUtil.raycast(e, start, start.add(ray), box, predicate.and(Entity::collides), distance); + EntityHitResult pointedEntity = ProjectileUtil.raycast(e, start, start.add(ray), box, predicate, distance); if (pointedEntity != null) { return new Trace(pointedEntity);