Make equipment effects use item locations
Move towards removing on/off equipment effects
This commit is contained in:
@@ -21,9 +21,6 @@ data Euse
|
||||
| EMagShield
|
||||
| EWristShield
|
||||
| EHeadLamp
|
||||
| ECamouflage {_euseCamouflageStatus :: CamouflageStatus}
|
||||
| EonWristShield
|
||||
| EoffWristShield
|
||||
-- | EFuelSource {_euseFuelAmount :: Int, _euseFuelMax :: Int}
|
||||
| EBatterySource {_euseBatteryAmount :: Int, _euseBatteryMax :: Int}
|
||||
| EAmmoSource
|
||||
|
||||
@@ -7,6 +7,7 @@ module Dodge.Data.Item.Use.Equipment (
|
||||
module Dodge.Data.Item.Use.Equipment,
|
||||
) where
|
||||
|
||||
import Dodge.Data.CamouflageStatus
|
||||
import Geometry.Data
|
||||
import Control.Lens
|
||||
import Data.Aeson
|
||||
@@ -16,8 +17,8 @@ import Dodge.Data.Item.HeldUse
|
||||
|
||||
data EquipEffect = EquipEffect
|
||||
{ _eeUse :: Euse --Item -> Creature -> World -> World
|
||||
, _eeOnEquip :: Euse --Item -> Creature -> World -> World
|
||||
, _eeOnRemove :: Euse --Item -> Creature -> World -> World
|
||||
, _eeOnEquip :: ItmCrWdWd --Item -> Creature -> World -> World
|
||||
, _eeOnRemove :: ItmCrWdWd --Item -> Creature -> World -> World
|
||||
, _eeSite :: EquipSite
|
||||
, _eeParams :: EquipParams
|
||||
, _eeViewDist :: Maybe Float
|
||||
@@ -25,6 +26,13 @@ data EquipEffect = EquipEffect
|
||||
}
|
||||
deriving (Eq, Ord, Show, Read) --Generic, Flat)
|
||||
|
||||
data ItmCrWdWd
|
||||
= ItmCrWdWdDoNothing
|
||||
| ECamouflage {_euseCamouflageStatus :: CamouflageStatus}
|
||||
| EonWristShield
|
||||
| EoffWristShield
|
||||
deriving (Eq, Ord, Show, Read) --Generic, Flat)
|
||||
|
||||
data EquipParams
|
||||
= NoEquipParams
|
||||
| EquipID {_eparamID :: Int}
|
||||
@@ -33,5 +41,7 @@ data EquipParams
|
||||
|
||||
makeLenses ''EquipEffect
|
||||
makeLenses ''EquipParams
|
||||
makeLenses ''ItmCrWdWd
|
||||
deriveJSON defaultOptions ''ItmCrWdWd
|
||||
deriveJSON defaultOptions ''EquipParams
|
||||
deriveJSON defaultOptions ''EquipEffect
|
||||
|
||||
Reference in New Issue
Block a user