diff --git a/core/src/main/assets/items.png b/core/src/main/assets/items.png index 480256c32..05bc319bd 100644 Binary files a/core/src/main/assets/items.png and b/core/src/main/assets/items.png differ diff --git a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/weapon/missiles/HeavyBoomerang.java b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/weapon/missiles/HeavyBoomerang.java index 23ba3dbe8..c4e2019bc 100644 --- a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/weapon/missiles/HeavyBoomerang.java +++ b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/weapon/missiles/HeavyBoomerang.java @@ -27,6 +27,7 @@ import com.shatteredpixel.shatteredpixeldungeon.actors.Char; import com.shatteredpixel.shatteredpixeldungeon.actors.buffs.Buff; import com.shatteredpixel.shatteredpixeldungeon.sprites.ItemSpriteSheet; import com.shatteredpixel.shatteredpixeldungeon.sprites.MissileSprite; +import com.watabou.noosa.tweeners.AlphaTweener; import com.watabou.utils.Bundle; import com.watabou.utils.Callback; @@ -49,14 +50,12 @@ public class HeavyBoomerang extends MissileWeapon { protected void rangedHit(Char enemy, int cell) { decrementDurability(); if (durability > 0){ - //TODO vfx Buff.append(Dungeon.hero, CircleBack.class).setup(this, cell, Dungeon.hero.pos, Dungeon.depth); } } @Override protected void rangedMiss(int cell) { - //TODO vfx parent = null; Buff.append(Dungeon.hero, CircleBack.class).setup(this, cell, Dungeon.hero.pos, Dungeon.depth); } @@ -84,8 +83,8 @@ public class HeavyBoomerang extends MissileWeapon { left--; if (left <= 0){ final Char returnTarget = Actor.findChar(returnPos); - ((MissileSprite) Dungeon.hero.sprite.parent.recycle(MissileSprite.class)). - reset( thrownPos, + MissileSprite visual = ((MissileSprite) Dungeon.hero.sprite.parent.recycle(MissileSprite.class)); + visual.reset( thrownPos, returnPos, boomerang, new Callback() { @@ -109,6 +108,9 @@ public class HeavyBoomerang extends MissileWeapon { } } }); + visual.alpha(0f); + float duration = Dungeon.level.trueDistance(thrownPos, returnPos) / 20f; + Dungeon.hero.sprite.parent.add(new AlphaTweener(visual, 1f, duration)); detach(); } } diff --git a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/sprites/ItemSpriteSheet.java b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/sprites/ItemSpriteSheet.java index bea249ad7..ab177f516 100644 --- a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/sprites/ItemSpriteSheet.java +++ b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/sprites/ItemSpriteSheet.java @@ -302,7 +302,7 @@ public class ItemSpriteSheet { assignItemRect(TRIDENT, 16, 16); assignItemRect(THROWING_HAMMER, 12, 12); - assignItemRect(FORCE_CUBE, 10, 13); + assignItemRect(FORCE_CUBE, 11, 12); } public static final int TIPPED_DARTS = xy(1, 11); //16 slots