From b9ba25c1161d71b66cdea222b4144f5db8a2922e Mon Sep 17 00:00:00 2001 From: Electroblob <35599699+Electroblob77@users.noreply.github.com> Date: Tue, 5 Jun 2018 21:18:01 +0100 Subject: [PATCH] Add test cases for new particle effects; to be applied to everything once spells have been reorganised --- .../entity/projectile/EntityMagicMissile.java | 11 +++++++++++ src/main/java/electroblob/wizardry/spell/Agility.java | 1 + src/main/java/electroblob/wizardry/spell/Heal.java | 1 + 3 files changed, 13 insertions(+) diff --git a/src/main/java/electroblob/wizardry/entity/projectile/EntityMagicMissile.java b/src/main/java/electroblob/wizardry/entity/projectile/EntityMagicMissile.java index 9acce846..76ddbda4 100644 --- a/src/main/java/electroblob/wizardry/entity/projectile/EntityMagicMissile.java +++ b/src/main/java/electroblob/wizardry/entity/projectile/EntityMagicMissile.java @@ -43,6 +43,17 @@ public class EntityMagicMissile extends EntityMagicArrow { @Override public void onEntityHit(EntityLivingBase entityHit){ this.playSound(SoundEvents.ENTITY_GENERIC_HURT, 1.0F, 1.2F / (this.rand.nextFloat() * 0.2F + 0.9F)); + if(this.world.isRemote) spawnImpactParticles(); + } + + @Override + public void onBlockHit(){ + if(this.world.isRemote) spawnImpactParticles(); + } + + private void spawnImpactParticles(){ + ParticleBuilder.create(Type.FLASH).pos(posX, posY, posZ).colour(0.5f + rand.nextFloat()/2, 0.5f + rand.nextFloat()/2, + 0.5f + rand.nextFloat()/2).spawn(world); } @Override diff --git a/src/main/java/electroblob/wizardry/spell/Agility.java b/src/main/java/electroblob/wizardry/spell/Agility.java index 4f6b0587..dd760919 100644 --- a/src/main/java/electroblob/wizardry/spell/Agility.java +++ b/src/main/java/electroblob/wizardry/spell/Agility.java @@ -40,6 +40,7 @@ public class Agility extends Spell { ParticleBuilder.create(Type.SPARKLE).pos(x1, y1, z1).vel(0, 0.1F, 0) .lifetime(48 + world.rand.nextInt(12)).colour(0.4f, 1.0f, 0.8f).spawn(world); } + Wizardry.proxy.spawnEntityParticle(world, caster, 15, 0.4f, 1.0f, 0.8f); } WizardryUtilities.playSoundAtPlayer(caster, WizardrySounds.SPELL_HEAL, 0.7F, diff --git a/src/main/java/electroblob/wizardry/spell/Heal.java b/src/main/java/electroblob/wizardry/spell/Heal.java index 5fa338b3..3b9977f4 100644 --- a/src/main/java/electroblob/wizardry/spell/Heal.java +++ b/src/main/java/electroblob/wizardry/spell/Heal.java @@ -38,6 +38,7 @@ public class Heal extends Spell { Wizardry.proxy.spawnParticle(Type.SPARKLE, world, d0, d1, d2, 0, 0.1F, 0, 48 + world.rand.nextInt(12), 1.0f, 1.0f, 0.3f); } + Wizardry.proxy.spawnEntityParticle(world, caster, 15, 1.0f, 1.0f, 0.3f); } WizardryUtilities.playSoundAtPlayer(caster, WizardrySounds.SPELL_HEAL, 0.7F,