Allow for equipment items to set a minimum view distance
This commit is contained in:
+13
-11
@@ -459,23 +459,24 @@ data ItemUse
|
||||
{ _lUse :: Item -> Creature -> World -> World
|
||||
, _useDelay :: UseDelay
|
||||
, _useHammer :: HammerType
|
||||
, _eqSite :: EquipSite
|
||||
, _eqUse :: Item -> Creature -> World -> World
|
||||
, _eqOnEquip :: Item -> Creature -> World -> World
|
||||
, _eqOnRemove :: Item -> Creature -> World -> World
|
||||
, _eqParams :: EquipParams
|
||||
, _eqEq :: Equipment
|
||||
}
|
||||
| ConsumeUse
|
||||
{ _cUse :: Item -> Creature -> World -> World
|
||||
}
|
||||
| EquipUse
|
||||
{ _eqUse :: Item -> Creature -> World -> World
|
||||
, _eqOnEquip :: Item -> Creature -> World -> World
|
||||
, _eqOnRemove :: Item -> Creature -> World -> World
|
||||
, _eqSite :: EquipSite
|
||||
, _eqParams :: EquipParams
|
||||
| EquipUse
|
||||
{ _eqEq :: Equipment
|
||||
}
|
||||
| NoUse
|
||||
data Equipment = Equipment
|
||||
{ _eqUse :: Item -> Creature -> World -> World
|
||||
, _eqOnEquip :: Item -> Creature -> World -> World
|
||||
, _eqOnRemove :: Item -> Creature -> World -> World
|
||||
, _eqSite :: EquipSite
|
||||
, _eqParams :: EquipParams
|
||||
, _eqViewDist :: Maybe Float
|
||||
}
|
||||
|
||||
_itUseAimStance :: Item -> AimStance
|
||||
_itUseAimStance = _aimStance . _useAim . _itUse
|
||||
data ItemConsumption
|
||||
@@ -1587,6 +1588,7 @@ makeLenses ''SubInventory
|
||||
makeLenses ''TerminalParams
|
||||
makeLenses ''TerminalLine
|
||||
makeLenses ''ItemValue
|
||||
makeLenses ''Equipment
|
||||
makeLenses ''ScreenLayer
|
||||
makeLenses ''Sensor
|
||||
makeLenses ''Beam
|
||||
|
||||
Reference in New Issue
Block a user