Start implementing mapper item

This commit is contained in:
2025-01-02 16:26:26 +00:00
parent 8bfaa12ea7
commit e9f5a39ed7
10 changed files with 68 additions and 47 deletions
+13 -12
View File
@@ -12,18 +12,18 @@ module Dodge.Data.Item.Use (
module Dodge.Data.Item.Targeting,
module Dodge.Data.GenFloat,
module Dodge.Data.Item.Scope,
module Dodge.Data.Item.BulletMod
module Dodge.Data.Item.BulletMod,
) where
import qualified Data.Set as S
import Dodge.Data.Item.BulletMod
import Dodge.Data.Item.Scope
import Control.Lens
import Data.Aeson
import Data.Aeson.TH
import qualified Data.Set as S
import Dodge.Data.GenFloat
import Dodge.Data.Item.BulletMod
import Dodge.Data.Item.HeldDelay
import Dodge.Data.Item.HeldUse
import Dodge.Data.Item.Scope
import Dodge.Data.Item.Targeting
import Dodge.Data.Item.Use.Consumption
import Dodge.Data.Item.Use.Equipment
@@ -39,13 +39,14 @@ data ItemUse
, _heldFrame :: Int
, _heldUseEffect :: HeldUseEffect
}
| UseEquip { _uequipEffect :: EquipEffect }
| UseEquip {_uequipEffect :: EquipEffect}
| UseAttach {_uaParams :: AttachParams}
| UseNothing
| UseScope { _uScope :: Scope }
| UseBulletMod { _ubMod :: BulletMod }
| UseScope {_uScope :: Scope}
| UseBulletMod {_ubMod :: BulletMod}
| UseToggle {_useToggle :: Bool}
| UseMapper { _useMapperLines :: S.Set (Point2,Point2)
| UseMapper
{ _useMapperLines :: S.Set (Point2, Point2)
, _useMapperPoints :: S.Set Point2
}
deriving (Eq, Show, Read)
@@ -74,7 +75,7 @@ data AttachParams
{_apProjectiles :: [Int]}
| APInt {_apInt :: Int}
| APNothing
deriving (Eq, Show, Read)
deriving (Eq, Show, Read)
data HeldParams
= DefaultHeldParams
@@ -111,7 +112,7 @@ data HeldParams
data AmmoParams
= BulletParams {_ampBullet :: Bullet}
| ProjectileParams { _ampPayload :: Payload }
| ProjectileParams {_ampPayload :: Payload}
| GasParams {_ampCreateGas :: GasFuel}
| NoAmmoParams
deriving (Eq, Show, Read) --Generic, Flat)
@@ -159,7 +160,7 @@ data MuzzleEffect
| MuzzleScroller
deriving (Eq, Ord, Show, Read) --Generic, Flat)
data AmmoPerShot
data AmmoPerShot
= UseExactly {_useExactly :: Int}
| UseUpTo {_useUpTo :: Int}
deriving (Eq, Ord, Show, Read) --Generic, Flat)
@@ -173,7 +174,7 @@ data Muzzle = Muzzle
, _mzEffect :: MuzzleEffect
, _mzAmmoPerShot :: AmmoPerShot
, _mzFrame :: Int
-- , _mzChargeRequirement :: Maybe Int
-- , _mzChargeRequirement :: Maybe Int
-- , _mzRecoil :: Float
-- , _mzTorque :: Float
-- , _mzSidePush :: Float