Move equip effect on remove out of record
This commit is contained in:
@@ -15,13 +15,16 @@ module Dodge.Inventory (
|
||||
swapItemWith,
|
||||
) where
|
||||
|
||||
import Dodge.Equipment
|
||||
--import Dodge.Wall.Delete
|
||||
--import Dodge.Item.Location
|
||||
import Data.Function
|
||||
import qualified Data.IntSet as IS
|
||||
import Data.Maybe
|
||||
import Dodge.Base
|
||||
import Dodge.Data.SelectionList
|
||||
import Dodge.Data.World
|
||||
import Dodge.Euse
|
||||
--import Dodge.Euse
|
||||
import Dodge.Inventory.CheckSlots
|
||||
import Dodge.Inventory.Location
|
||||
import Dodge.Inventory.RBList
|
||||
@@ -87,9 +90,10 @@ rmInvItem cid invid w =
|
||||
pointcid . crManipulation . manObject . imSelectedItem %~ g
|
||||
cr = w ^?! cWorld . lWorld . creatures . ix cid
|
||||
itm = _crInv cr IM.! invid
|
||||
dounequipfunction = fromMaybe id $ do
|
||||
rmf <- itm ^? itUse . uequipEffect . eeOnRemove
|
||||
return $ doItmCrWdWd rmf itm cr
|
||||
dounequipfunction = effectOnRemove itm cr
|
||||
-- fromMaybe id $ do
|
||||
-- rmf <- itm ^? itUse . uequipEffect . eeOnRemove
|
||||
-- return $ doItmCrWdWd rmf itm cr
|
||||
removeAnySlotEquipment = fromMaybe id $ do
|
||||
epos <-
|
||||
w
|
||||
@@ -107,6 +111,7 @@ rmInvItem cid invid w =
|
||||
| x > invid || Just x == maxk = max 0 $ x - 1
|
||||
| otherwise = x
|
||||
|
||||
|
||||
-- this looks ugly...
|
||||
updateCloseObjects :: World -> World
|
||||
updateCloseObjects w =
|
||||
|
||||
Reference in New Issue
Block a user