@Override protected void rangedMiss( int cell ) { circleBack( cell, curUser ); }
private void circleBack( int from, Hero owner ) { ((MissileSprite)curUser.sprite.parent.recycle( MissileSprite.class )). reset( from, owner.sprite, curItem, null ); if (throwEquiped) { owner.belongings.weapon = this; owner.spend( -TIME_TO_EQUIP ); Dungeon.quickslot.replacePlaceholder(this); updateQuickslot(); } else if (!collect( curUser.belongings.backpack )) { Dungeon.level.drop( this, owner.pos ).sprite.drop(); } }
@Override public ArrayList<String> actions(Hero hero) { ArrayList<String> actions = super.actions( hero ); if (!isEquipped(hero)) actions.add(AC_EQUIP); return actions; }
@Override public Item upgrade( boolean enchant ) { super.upgrade( enchant ); updateQuickslot(); return this; }
private void circleBack( int from, Hero owner ) { ((MissileSprite)curUser.sprite.parent.recycle( MissileSprite.class )). reset( from, owner.sprite, curItem, null ); if (throwEquiped) { owner.belongings.weapon = this; owner.spend( -TIME_TO_EQUIP ); Dungeon.quickslot.replacePlaceholder(this); updateQuickslot(); } else if (!collect( curUser.belongings.backpack )) { Dungeon.level.drop( this, owner.pos ).sprite.drop(); } }
@Override public ArrayList<String> actions(Hero hero) { ArrayList<String> actions = super.actions( hero ); if (!isEquipped(hero)) actions.add(AC_EQUIP); return actions; }
@Override public Item upgrade( boolean enchant ) { super.upgrade( enchant ); updateQuickslot(); return this; }
@Override public void cast( Hero user, int dst ) { throwEquiped = isEquipped( user ) && !cursed; if (throwEquiped) Dungeon.quickslot.convertToPlaceholder(this); super.cast( user, dst ); }
@Override public void rangedHit( Char enemy, int cell ) { circleBack(cell, curUser); }
@Override public void cast( Hero user, int dst ) { throwEquiped = isEquipped( user ) && !cursed; if (throwEquiped) Dungeon.quickslot.convertToPlaceholder(this); super.cast( user, dst ); }
@Override protected void rangedMiss( int cell ) { circleBack( cell, curUser ); }
@Override public void rangedHit( Char enemy, int cell ) { circleBack(cell, curUser); }