Files
Wizardry/src/main/java/electroblob/wizardry/spell/SlowTime.java
T
Electroblob77 f37812be3e That's one heck of a commit you've got there...
I may have got a bit behind with version control. A lot behind, in fact. Maybe I'll go back and split this sometime - then again, I probably won't. But hey, at least it's here!
2019-08-18 00:04:18 +01:00

47 lines
1.3 KiB
Java

package electroblob.wizardry.spell;
import electroblob.wizardry.Wizardry;
import electroblob.wizardry.registry.WizardryPotions;
import electroblob.wizardry.util.SpellModifiers;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.util.EnumHand;
import net.minecraft.util.ResourceLocation;
import net.minecraft.world.World;
public class SlowTime extends SpellBuff {
/** A {@code ResourceLocation} representing the shader file used when possessing an entity. */
public static final ResourceLocation SHADER = new ResourceLocation(Wizardry.MODID, "shaders/post/slow_time.json");
public SlowTime(){
super("slow_time", 0.2f, 0.8f, 0.8f, () -> WizardryPotions.slow_time);
addProperties(EFFECT_RADIUS);
soundValues(0.6f, 1.5f, 0);
}
@Override
public boolean cast(World world, EntityPlayer caster, EnumHand hand, int ticksInUse, SpellModifiers modifiers){
if(caster.world.isRemote && caster == net.minecraft.client.Minecraft.getMinecraft().player){
if(Wizardry.settings.useShaders) net.minecraft.client.Minecraft.getMinecraft().entityRenderer.loadShader(SHADER);
}
return super.cast(world, caster, hand, ticksInUse, modifiers);
}
@Override
public boolean requiresPacket(){
return false;
}
@Override
public boolean canBeCastByDispensers(){
return false;
}
@Override
public boolean canBeCastByNPCs(){
return false;
}
}