about summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--src/Xanthous/App.hs4
1 files changed, 3 insertions, 1 deletions
diff --git a/src/Xanthous/App.hs b/src/Xanthous/App.hs
index 808654e1abe3..1db75bb58565 100644
--- a/src/Xanthous/App.hs
+++ b/src/Xanthous/App.hs
@@ -250,7 +250,9 @@ handleCommand Wield = do
   selectItemFromInventory_ ["wield", "menu"] Cancellable asWieldedItem
     (say_ ["wield", "nothing"])
     $ \(MenuResult item) -> do
-      character . inventory . wielded .= inRightHand item
+      prevItems <- character . inventory . wielded <<.= inRightHand item
+      character . inventory . backpack
+        <>= fromList (prevItems ^.. wieldedItems . wieldedItem)
       say ["wield", "wielded"] item
   continue