v0.2.4: refactored handling the quickslot when equipping.
This commit is contained in:
parent
d94847af4c
commit
e4cfe7586a
|
@ -38,7 +38,14 @@ public abstract class EquipableItem extends Item {
|
|||
@Override
|
||||
public void execute( Hero hero, String action ) {
|
||||
if (action.equals( AC_EQUIP )) {
|
||||
doEquip( hero );
|
||||
//In addition to equipping itself, item reassigns itself to the quickslot
|
||||
//This is a special case as the item is being removed from inventory, but is staying with the hero.
|
||||
int slot = Dungeon.quickslot.getSlot( this );
|
||||
doEquip(hero);
|
||||
if (slot != -1) {
|
||||
Dungeon.quickslot.setSlot( slot, this );
|
||||
updateQuickslot();
|
||||
}
|
||||
} else if (action.equals( AC_UNEQUIP )) {
|
||||
doUnequip( hero, true );
|
||||
} else {
|
||||
|
|
|
@ -49,11 +49,7 @@ public class KindOfWeapon extends EquipableItem {
|
|||
@Override
|
||||
public boolean doEquip( Hero hero ) {
|
||||
|
||||
int slot = Dungeon.quickslot.getSlot( this );
|
||||
|
||||
detachAll( hero.belongings.backpack );
|
||||
|
||||
if (slot != -1) Dungeon.quickslot.setSlot( slot, this );
|
||||
|
||||
if (hero.belongings.weapon == null || hero.belongings.weapon.doUnequip( hero, true )) {
|
||||
|
||||
|
|
|
@ -92,13 +92,9 @@ public class Armor extends EquipableItem {
|
|||
|
||||
@Override
|
||||
public boolean doEquip( Hero hero ) {
|
||||
|
||||
int slot = Dungeon.quickslot.getSlot( this );
|
||||
|
||||
detach( hero.belongings.backpack );
|
||||
|
||||
if (slot != -1) Dungeon.quickslot.setSlot( slot, this );
|
||||
|
||||
if (hero.belongings.armor == null || hero.belongings.armor.doUnequip( hero, true, false )) {
|
||||
|
||||
hero.belongings.armor = this;
|
||||
|
|
|
@ -80,12 +80,8 @@ public class Artifact extends KindofMisc {
|
|||
hero.belongings.misc2 = this;
|
||||
}
|
||||
|
||||
int slot = Dungeon.quickslot.getSlot( this );
|
||||
|
||||
detach( hero.belongings.backpack );
|
||||
|
||||
if (slot != -1) Dungeon.quickslot.setSlot( slot, this );
|
||||
|
||||
activate( hero );
|
||||
|
||||
cursedKnown = true;
|
||||
|
|
|
@ -126,11 +126,7 @@ public class Ring extends KindofMisc {
|
|||
hero.belongings.misc2 = this;
|
||||
}
|
||||
|
||||
int slot = Dungeon.quickslot.getSlot( this );
|
||||
|
||||
detach( hero.belongings.backpack );
|
||||
|
||||
if (slot != -1) Dungeon.quickslot.setSlot( slot, this );
|
||||
|
||||
activate( hero );
|
||||
|
||||
|
|
Loading…
Reference in New Issue
Block a user