Equipping an item into an occupied equipment slot now places the swapped item into the inventory slot of the item being equipped
This commit is contained in:
@@ -102,7 +102,7 @@ class EquipTests {
|
||||
Assertions.assertEquals(Items.BRONZE_2H_SWORD_1307, p.equipment.get(EquipmentSlot.WEAPON.ordinal).id)
|
||||
|
||||
InteractionListeners.run(Items.WOODEN_SHIELD_1171, InteractionListener.ITEM, "equip", p, p.inventory[1])
|
||||
Assertions.assertEquals(Items.BRONZE_2H_SWORD_1307, p.inventory[0]?.id ?: -1)
|
||||
Assertions.assertEquals(Items.BRONZE_2H_SWORD_1307, p.inventory[1]?.id ?: -1)
|
||||
}
|
||||
|
||||
@Test fun equippingShieldShouldNotUnequipOneHandedWeapon() {
|
||||
@@ -125,4 +125,19 @@ class EquipTests {
|
||||
InteractionListeners.run(Items.BRONZE_ARROW_882, InteractionListener.ITEM, "equip", p, p.inventory[0])
|
||||
Assertions.assertEquals(300, p.equipment[EquipmentSlot.AMMO.ordinal].amount)
|
||||
}
|
||||
}
|
||||
|
||||
@Test fun swappingEquipmentShouldPreserveInventorySlots() {
|
||||
val p = TestUtils.getMockPlayer("bill")
|
||||
p.skills.staticLevels[Skills.ATTACK] = 70
|
||||
p.skills.staticLevels[Skills.DEFENCE] = 40
|
||||
p.equipment.replace(Item(Items.ABYSSAL_WHIP_4151), EquipmentSlot.WEAPON.ordinal)
|
||||
p.equipment.replace(Item(Items.RUNE_DEFENDER_8850), EquipmentSlot.SHIELD.ordinal)
|
||||
p.inventory.add(Item(Items.DRAGON_CLAWS_14484), true, 25)
|
||||
Assertions.assertEquals(p.inventory.getSlot(Item(Items.DRAGON_CLAWS_14484)), 25)
|
||||
|
||||
InteractionListeners.run(Items.DRAGON_CLAWS_14484, InteractionListener.ITEM, "equip", p, p.inventory[25])
|
||||
Assertions.assertEquals(Items.DRAGON_CLAWS_14484, p.equipment.get(EquipmentSlot.WEAPON.ordinal).id)
|
||||
Assertions.assertEquals(p.inventory.getSlot(Item(Items.ABYSSAL_WHIP_4151)), 25)
|
||||
Assertions.assertEquals(p.inventory.getSlot(Item(Items.RUNE_DEFENDER_8850)), 0)
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user