v0.7.5: detached shocking sfx from lightning vfx

This commit is contained in:
Evan Debenham 2019-09-24 23:54:02 -04:00
parent 309b7357b2
commit 6c18bc613c
6 changed files with 14 additions and 4 deletions

View File

@ -21,13 +21,11 @@
package com.shatteredpixel.shatteredpixeldungeon.effects;
import com.shatteredpixel.shatteredpixeldungeon.Assets;
import com.shatteredpixel.shatteredpixeldungeon.tiles.DungeonTilemap;
import com.watabou.glwrap.Blending;
import com.watabou.noosa.Game;
import com.watabou.noosa.Group;
import com.watabou.noosa.Image;
import com.watabou.noosa.audio.Sample;
import com.watabou.utils.Callback;
import com.watabou.utils.PointF;
import com.watabou.utils.Random;
@ -72,8 +70,6 @@ public class Lightning extends Group {
this.callback = callback;
life = DURATION;
Sample.INSTANCE.play( Assets.SND_LIGHTNING );
}
private static final double A = 180 / Math.PI;

View File

@ -21,6 +21,7 @@
package com.shatteredpixel.shatteredpixeldungeon.items.bombs;
import com.shatteredpixel.shatteredpixeldungeon.Assets;
import com.shatteredpixel.shatteredpixeldungeon.Dungeon;
import com.shatteredpixel.shatteredpixeldungeon.actors.Actor;
import com.shatteredpixel.shatteredpixeldungeon.actors.Char;
@ -33,6 +34,7 @@ import com.shatteredpixel.shatteredpixeldungeon.mechanics.Ballistica;
import com.shatteredpixel.shatteredpixeldungeon.sprites.ItemSpriteSheet;
import com.shatteredpixel.shatteredpixeldungeon.tiles.DungeonTilemap;
import com.shatteredpixel.shatteredpixeldungeon.utils.BArray;
import com.watabou.noosa.audio.Sample;
import com.watabou.utils.PathFinder;
import com.watabou.utils.Random;
@ -78,6 +80,7 @@ public class ShockBomb extends Bomb {
CellEmitter.center(cell).burst(SparkParticle.FACTORY, 20);
Dungeon.hero.sprite.parent.addToFront(new Lightning(arcs, null));
Sample.INSTANCE.play( Assets.SND_LIGHTNING );
}
@Override

View File

@ -69,6 +69,8 @@ public class StoneOfShock extends Runestone {
if (hits > 0) {
curUser.sprite.parent.addToFront( new Lightning( arcs, null ) );
curUser.sprite.centerEmitter().burst(EnergyParticle.FACTORY, 10);
Sample.INSTANCE.play( Assets.SND_LIGHTNING );
curUser.belongings.charge(1f + hits);
}

View File

@ -21,6 +21,7 @@
package com.shatteredpixel.shatteredpixeldungeon.items.wands;
import com.shatteredpixel.shatteredpixeldungeon.Assets;
import com.shatteredpixel.shatteredpixeldungeon.Dungeon;
import com.shatteredpixel.shatteredpixeldungeon.actors.Actor;
import com.shatteredpixel.shatteredpixeldungeon.actors.Char;
@ -36,6 +37,7 @@ import com.shatteredpixel.shatteredpixeldungeon.tiles.DungeonTilemap;
import com.shatteredpixel.shatteredpixeldungeon.utils.BArray;
import com.shatteredpixel.shatteredpixeldungeon.utils.GLog;
import com.watabou.noosa.Camera;
import com.watabou.noosa.audio.Sample;
import com.watabou.utils.Callback;
import com.watabou.utils.PathFinder;
import com.watabou.utils.Random;
@ -136,6 +138,7 @@ public class WandOfLightning extends DamageWand {
//don't want to wait for the effect before processing damage.
curUser.sprite.parent.addToFront( new Lightning( arcs, null ) );
Sample.INSTANCE.play( Assets.SND_LIGHTNING );
callback.call();
}

View File

@ -21,6 +21,7 @@
package com.shatteredpixel.shatteredpixeldungeon.items.weapon.enchantments;
import com.shatteredpixel.shatteredpixeldungeon.Assets;
import com.shatteredpixel.shatteredpixeldungeon.Dungeon;
import com.shatteredpixel.shatteredpixeldungeon.actors.Actor;
import com.shatteredpixel.shatteredpixeldungeon.actors.Char;
@ -29,6 +30,7 @@ import com.shatteredpixel.shatteredpixeldungeon.effects.particles.SparkParticle;
import com.shatteredpixel.shatteredpixeldungeon.items.weapon.Weapon;
import com.shatteredpixel.shatteredpixeldungeon.sprites.ItemSprite;
import com.shatteredpixel.shatteredpixeldungeon.utils.BArray;
import com.watabou.noosa.audio.Sample;
import com.watabou.utils.PathFinder;
import com.watabou.utils.Random;
@ -58,6 +60,7 @@ public class Shocking extends Weapon.Enchantment {
}
attacker.sprite.parent.addToFront( new Lightning( arcs, null ) );
Sample.INSTANCE.play( Assets.SND_LIGHTNING );
}

View File

@ -21,10 +21,12 @@
package com.shatteredpixel.shatteredpixeldungeon.items.weapon.missiles.darts;
import com.shatteredpixel.shatteredpixeldungeon.Assets;
import com.shatteredpixel.shatteredpixeldungeon.actors.Char;
import com.shatteredpixel.shatteredpixeldungeon.effects.Lightning;
import com.shatteredpixel.shatteredpixeldungeon.sprites.CharSprite;
import com.shatteredpixel.shatteredpixeldungeon.sprites.ItemSpriteSheet;
import com.watabou.noosa.audio.Sample;
import com.watabou.utils.PointF;
import com.watabou.utils.Random;
@ -47,6 +49,7 @@ public class ShockingDart extends TippedDart {
arcs.add(new Lightning.Arc(new PointF(s.x, s.y + s.height / 2), new PointF(s.x + s.width, s.y + s.height / 2)));
arcs.add(new Lightning.Arc(new PointF(s.x + s.width / 2, s.y), new PointF(s.x + s.width / 2, s.y + s.height)));
s.parent.add(new Lightning(arcs, null));
Sample.INSTANCE.play( Assets.SND_LIGHTNING );
}
return super.proc(attacker, defender, damage);