Move UseCondition out of record
This commit is contained in:
+8
-14
@@ -3,11 +3,11 @@ module Dodge.Equipment (
|
||||
effectOnEquip,
|
||||
) where
|
||||
|
||||
import Dodge.Data.Equipment.Misc
|
||||
import Control.Lens
|
||||
import Data.Maybe
|
||||
import Dodge.Creature.HandPos
|
||||
import Dodge.Creature.Test
|
||||
import Dodge.Data.Equipment.Misc
|
||||
import Dodge.Data.World
|
||||
import Dodge.Item.Location
|
||||
import Dodge.Wall.Delete
|
||||
@@ -18,34 +18,29 @@ import qualified IntMapHelp as IM
|
||||
|
||||
effectOnRemove :: Item -> Creature -> World -> World
|
||||
effectOnRemove itm = case itm ^. itType of
|
||||
EQUIP WRISTARMOUR -> onRemoveWristShield' itm
|
||||
EQUIP WRISTARMOUR -> onRemoveWristShield itm
|
||||
_ -> \_ -> id
|
||||
|
||||
onRemoveWristShield' :: Item -> Creature -> World -> World
|
||||
onRemoveWristShield' itm _ =
|
||||
--(pointerToItem itm . itUse . uequipEffect . eeParams .~ NoEquipParams) . mremovewall
|
||||
onRemoveWristShield :: Item -> Creature -> World -> World
|
||||
onRemoveWristShield itm _ =
|
||||
(pointerToItem itm . itParams .~ NoParams) . mremovewall
|
||||
where
|
||||
mremovewall = fromMaybe id $ do
|
||||
--i <- itm ^? itUse . uequipEffect . eeParams . eparamID
|
||||
i <- itm ^? itParams . itParamID
|
||||
return $ deleteWallID i
|
||||
|
||||
effectOnEquip :: Item -> Creature -> World -> World
|
||||
effectOnEquip itm = case itm ^. itType of
|
||||
EQUIP WRISTARMOUR -> onEquipWristShield' itm
|
||||
EQUIP WRISTARMOUR -> onEquipWristShield itm
|
||||
_ -> \_ -> id
|
||||
|
||||
onEquipWristShield' :: Item -> Creature -> World -> World
|
||||
onEquipWristShield' itm cr w =
|
||||
onEquipWristShield :: Item -> Creature -> World -> World
|
||||
onEquipWristShield itm cr w =
|
||||
w
|
||||
-- & pointerToItem itm . itUse . uequipEffect . eeParams .~ EquipID i
|
||||
& pointerToItem itm . itParams .~ ItemParamID{_itParamID = i}
|
||||
& cWorld . lWorld . walls . at i ?~ forceField{_wlID = i}
|
||||
& setWristShieldPos
|
||||
( itm
|
||||
-- & itUse . uequipEffect . eeParams .~ EquipID i
|
||||
& itParams .~ ItemParamID{_itParamID = i}
|
||||
( itm & itParams .~ ItemParamID{_itParamID = i}
|
||||
)
|
||||
cr
|
||||
where
|
||||
@@ -54,7 +49,6 @@ onEquipWristShield' itm cr w =
|
||||
setWristShieldPos :: Item -> Creature -> World -> World
|
||||
setWristShieldPos itm cr w = w & moveWallIDUnsafe i wlline
|
||||
where
|
||||
--i = _eparamID $ _eeParams $ _uequipEffect $ _itUse itm
|
||||
i = _itParamID $ _itParams itm
|
||||
wlline = (f (V3 (-10) 7 0), f (V3 10 7 0))
|
||||
invid = _ilInvID (_itLocation itm)
|
||||
|
||||
Reference in New Issue
Block a user