Commit before rethinking item ammo containers
This commit is contained in:
@@ -116,11 +116,9 @@ startInventory = IM.fromList $ zip [0 ..] startInvList
|
||||
inventoryX :: Char -> [Item]
|
||||
inventoryX c = case c of
|
||||
'A' ->
|
||||
[ clickDetector x | x <- [minBound .. maxBound]
|
||||
] <> [pulseChecker,battery] <> fold
|
||||
[ makeTypeCraftNum 1 TRANSFORMER
|
||||
, makeTypeCraftNum 2 CAN
|
||||
, makeTypeCraftNum 2 PIPE
|
||||
[ flameThrower
|
||||
, fuelPack
|
||||
, chemFuelPouch
|
||||
]
|
||||
'B' ->
|
||||
[ wristArmour
|
||||
|
||||
+14
-1
@@ -26,10 +26,21 @@ import Dodge.Data.Item.Scope
|
||||
import Dodge.Data.Item.Use
|
||||
import NewInt
|
||||
|
||||
data ItID = ItID deriving (Eq, Ord, Show, Read)
|
||||
data ItID = ItID
|
||||
deriving (Eq, Ord, Show, Read)
|
||||
|
||||
data Consumables
|
||||
= NoConsumables
|
||||
| AmmoMag
|
||||
{ _magLoadStatus :: ReloadStatus
|
||||
, _magParams :: AmmoParams
|
||||
, _magType :: AmmoType
|
||||
}
|
||||
deriving (Eq, Show, Read)
|
||||
|
||||
data Item = Item
|
||||
{ _itUse :: ItemUse
|
||||
, _itConsumables :: Consumables
|
||||
, _itType :: ItemType
|
||||
, _itID :: NewInt ItmInt
|
||||
, _itLocation :: ItemLocation
|
||||
@@ -47,7 +58,9 @@ data ItemTargeting = NoItTargeting
|
||||
}
|
||||
|
||||
makeLenses ''ItemTargeting
|
||||
makeLenses ''Consumables
|
||||
makeLenses ''Item
|
||||
deriveJSON defaultOptions ''Consumables
|
||||
deriveJSON defaultOptions ''ItemTargeting
|
||||
deriveJSON defaultOptions ''ItID
|
||||
deriveJSON defaultOptions ''Item
|
||||
|
||||
@@ -8,15 +8,17 @@ module Dodge.Default.Item (
|
||||
module Dodge.Default.Item.Use,
|
||||
) where
|
||||
|
||||
import qualified Data.IntMap.Strict as IM
|
||||
import Control.Lens
|
||||
import qualified Data.IntMap.Strict as IM
|
||||
import Dodge.Data.Item
|
||||
import Dodge.Default.Item.Use
|
||||
import Geometry.Data
|
||||
|
||||
defaultHeldItem :: Item
|
||||
defaultHeldItem = Item
|
||||
defaultHeldItem =
|
||||
Item
|
||||
{ _itType = HELD PISTOL
|
||||
, _itConsumables = NoConsumables
|
||||
, _itEffect = defaultItEffect
|
||||
, _itID = 0 -- should this return an error ? const $ error "itID not correctly initialised" ?
|
||||
, _itTargeting = NoItTargeting
|
||||
@@ -36,7 +38,8 @@ singleAmmo :: a -> IM.IntMap a
|
||||
singleAmmo x = IM.insert 0 x mempty
|
||||
|
||||
defaultBulletWeapon :: Item
|
||||
defaultBulletWeapon = defaultHeldItem
|
||||
defaultBulletWeapon =
|
||||
defaultHeldItem
|
||||
& itAmmoSlots .~ singleAmmo BulletAmmo
|
||||
& itUse . heldAim . aimMuzzles .~ [Muzzle (V2 15 0) 0 0.01 0 PistolFlare MuzzleShootBullet (UseExactly 1)]
|
||||
|
||||
|
||||
Reference in New Issue
Block a user