diff --git a/src/main/java/com/minelittlepony/unicopia/entity/EntityCloud.java b/src/main/java/com/minelittlepony/unicopia/entity/EntityCloud.java index 134a4c70..12a1f3bc 100644 --- a/src/main/java/com/minelittlepony/unicopia/entity/EntityCloud.java +++ b/src/main/java/com/minelittlepony/unicopia/entity/EntityCloud.java @@ -58,7 +58,7 @@ import net.minecraft.util.math.Vec3d; import net.minecraft.world.DifficultyInstance; import net.minecraft.world.World; -public class EntityCloud extends EntityFlying implements IAnimals { +public class EntityCloud extends EntityFlying implements IAnimals, IInAnimate { private static final DataParameter RAINTIMER = EntityDataManager.createKey(EntityCloud.class, DataSerializers.VARINT); private static final DataParameter THUNDERING = EntityDataManager.createKey(EntityCloud.class, DataSerializers.BOOLEAN); @@ -145,6 +145,11 @@ public class EntityCloud extends EntityFlying implements IAnimals { return 6; } + @Override + public boolean canInteract(Race race) { + return race.canInteractWithClouds(); + } + @Override public void onStruckByLightning(EntityLightningBolt lightningBolt) { diff --git a/src/main/java/com/minelittlepony/unicopia/entity/EntityRainbow.java b/src/main/java/com/minelittlepony/unicopia/entity/EntityRainbow.java index 4e3d23b7..e9034c85 100644 --- a/src/main/java/com/minelittlepony/unicopia/entity/EntityRainbow.java +++ b/src/main/java/com/minelittlepony/unicopia/entity/EntityRainbow.java @@ -1,5 +1,7 @@ package com.minelittlepony.unicopia.entity; +import com.minelittlepony.unicopia.Race; + import net.minecraft.entity.EntityLiving; import net.minecraft.entity.effect.EntityWeatherEffect; import net.minecraft.nbt.NBTTagCompound; @@ -9,7 +11,7 @@ import net.minecraft.util.math.MathHelper; import net.minecraft.world.World; import net.minecraft.world.biome.Biome.SpawnListEntry; -public class EntityRainbow extends EntityWeatherEffect { +public class EntityRainbow extends EntityWeatherEffect implements IInAnimate { public static final SpawnListEntry SPAWN_ENTRY = new SpawnListEntry(EntityRainbow.Spawner.class, 1, 1, 1); @@ -45,6 +47,11 @@ public class EntityRainbow extends EntityWeatherEffect { return pass == 1; } + @Override + public boolean canInteract(Race race) { + return false; + } + @Override public void setPosition(double x, double y, double z) { posX = x; diff --git a/src/main/java/com/minelittlepony/unicopia/entity/EntitySpell.java b/src/main/java/com/minelittlepony/unicopia/entity/EntitySpell.java index b5cc37d3..275be2d9 100644 --- a/src/main/java/com/minelittlepony/unicopia/entity/EntitySpell.java +++ b/src/main/java/com/minelittlepony/unicopia/entity/EntitySpell.java @@ -5,6 +5,7 @@ import javax.annotation.Nullable; import org.apache.commons.lang3.StringUtils; import com.minelittlepony.unicopia.Predicates; +import com.minelittlepony.unicopia.Race; import com.minelittlepony.unicopia.UItems; import com.minelittlepony.unicopia.item.ICastable; import com.minelittlepony.unicopia.network.EffectSync; @@ -34,7 +35,7 @@ import net.minecraft.util.SoundCategory; import net.minecraft.util.math.Vec3d; import net.minecraft.world.World; -public class EntitySpell extends EntityLiving implements IMagicals, ICaster { +public class EntitySpell extends EntityLiving implements IMagicals, ICaster, IInAnimate { private EntityLivingBase owner = null; @@ -89,6 +90,11 @@ public class EntitySpell extends EntityLiving implements IMagicals, ICaster