From 4a1ca905f7373e5bfcd8e8916d0f9077121507f1 Mon Sep 17 00:00:00 2001 From: justin Date: Wed, 9 Mar 2022 18:17:08 +0000 Subject: [PATCH] Fix crash on empty inventory left click --- src/Dodge/Creature/Impulse/UseItem.hs | 4 ++-- src/Dodge/Event.hs | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/src/Dodge/Creature/Impulse/UseItem.hs b/src/Dodge/Creature/Impulse/UseItem.hs index 5fa3c0020..012935b43 100644 --- a/src/Dodge/Creature/Impulse/UseItem.hs +++ b/src/Dodge/Creature/Impulse/UseItem.hs @@ -49,11 +49,11 @@ toggleEquipmentAt invid cr = cr & crInvEquipped . at invid %~ f useLeftItem :: Int -> World -> World useLeftItem cid w | _crInvLock cr = w - | isJust (citem ^? itUse . cUse) = useItem cr w + | itConsumable = useItem cr w | otherwise = fromMaybe w $ do invid <- _crLeftInvSel cr f <- cr ^? crInv . ix invid . itUse . lUse return $ f cr invid w where cr = _creatures w IM.! cid - citem = _crInv cr IM.! _crInvSel cr + itConsumable = isJust $ cr ^? crInv . ix (_crInvSel cr) . itUse . cUse diff --git a/src/Dodge/Event.hs b/src/Dodge/Event.hs index 874b407b8..84a25e0f4 100644 --- a/src/Dodge/Event.hs +++ b/src/Dodge/Event.hs @@ -92,7 +92,7 @@ handlePressedMouseButton but w | but == ButtonMiddle || _carteDisplay (_uvWorld w) = Just $ w & uvWorld . clickMousePos .~ _mousePos (_uvWorld w) | but == ButtonLeft = case _inventoryMode (_uvWorld w) of - CombineInventory mi -> Just $ fromMaybe w $ do -- ugly + CombineInventory mi -> Just $ fromMaybe (w & uvWorld . inventoryMode .~ TopInventory) $ do -- ugly i <- mi return $ over uvWorld (doCombine i) w _ -> Just w