Cleanup
This commit is contained in:
@@ -68,43 +68,38 @@ toggleEquipmentAt invid cr w = case equipmentDesignation invid w of
|
||||
DoNotMoveEquipment -> w
|
||||
PutOnEquipment{_allocNewPos = newp} ->
|
||||
w
|
||||
& crpoint . crEquipment . at newp ?~ NInt itid
|
||||
& toequipment . at newp ?~ NInt itid
|
||||
& toitems . ix itid . itLocation . ilEquipSite ?~ newp
|
||||
& onequip itm cr
|
||||
& effectOnEquip itm cr
|
||||
MoveEquipment{_allocNewPos = newp, _allocOldPos = oldp} ->
|
||||
w
|
||||
& crpoint . crEquipment . at newp ?~ NInt itid
|
||||
& crpoint . crEquipment . at oldp .~ Nothing
|
||||
& toequipment . at newp ?~ NInt itid
|
||||
& toequipment . at oldp .~ Nothing
|
||||
& toitems . ix itid . itLocation . ilEquipSite ?~ newp
|
||||
SwapEquipment{_allocNewPos = newp, _allocOldPos = oldp, _allocSwapID = sid} ->
|
||||
w
|
||||
& crpoint . crEquipment . at newp ?~ NInt itid
|
||||
& crpoint . crEquipment . at oldp ?~ sid
|
||||
& toequipment . at newp ?~ NInt itid
|
||||
& toequipment . at oldp ?~ sid
|
||||
& toitems . ix itid . itLocation . ilEquipSite ?~ newp
|
||||
& toitems . ix (_unNInt sid) . itLocation . ilEquipSite ?~ oldp
|
||||
ReplaceEquipment{_allocNewPos = newp, _allocRemoveID = rid} ->
|
||||
w
|
||||
& crpoint . crEquipment . at newp ?~ NInt itid
|
||||
& toequipment . at newp ?~ NInt itid
|
||||
& toitems . ix itid . itLocation . ilEquipSite ?~ newp
|
||||
& toitems . ix (_unNInt rid) . itLocation . ilEquipSite .~ Nothing
|
||||
& onremove (itmat' rid) cr
|
||||
& onequip itm cr
|
||||
& effectOnRemove (itmat rid) cr
|
||||
& effectOnEquip itm cr
|
||||
RemoveEquipment{_allocOldPos = oldp} ->
|
||||
w
|
||||
& crpoint . crEquipment . at oldp .~ Nothing
|
||||
& toequipment . at oldp .~ Nothing
|
||||
& toitems . ix itid . itLocation . ilEquipSite .~ Nothing
|
||||
& onremove itm cr
|
||||
& effectOnRemove itm cr
|
||||
where
|
||||
invidtoitid :: NewInt InvInt -> Int
|
||||
invidtoitid i = cr ^?! crInv . ix i -- _crInv cr IM.! i
|
||||
toitems = cWorld . lWorld . items
|
||||
itid = invidtoitid invid
|
||||
crpoint = cWorld . lWorld . creatures . ix (_crID cr)
|
||||
itmat i = w ^?! cWorld . lWorld . items . ix (invidtoitid i)
|
||||
itmat' i = w ^?! cWorld . lWorld . items . ix (_unNInt i)
|
||||
itm = itmat invid
|
||||
onequip itm' = effectOnEquip itm'
|
||||
onremove itm' = effectOnRemove itm'
|
||||
itid = cr ^?! crInv . ix invid
|
||||
toequipment = cWorld . lWorld . creatures . ix (_crID cr) . crEquipment
|
||||
itmat i = w ^?! cWorld . lWorld . items . ix (_unNInt i)
|
||||
itm = w ^?! cWorld . lWorld . items . ix itid
|
||||
|
||||
toggleExamineInv :: World -> World
|
||||
toggleExamineInv w = case w ^? hud . subInventory of
|
||||
|
||||
Reference in New Issue
Block a user