Move muzzles out of records

This commit is contained in:
2025-06-05 10:04:35 +01:00
parent 83a41e0204
commit 324a64814e
20 changed files with 320 additions and 213 deletions
+3 -3
View File
@@ -11,7 +11,7 @@ import Control.Lens
import qualified Data.IntMap.Strict as IM
import Dodge.Data.Item
import Dodge.Default.Item.Use
import Geometry.Data
--import Geometry.Data
defaultHeldItem :: Item
defaultHeldItem =
@@ -42,8 +42,8 @@ defaultBulletWeapon :: Item
defaultBulletWeapon =
defaultHeldItem
& itAmmoSlots .~ singleAmmo BulletAmmo
& itUse . heldMuzzles .~
[Muzzle (V2 15 0) 0 0.01 0 BasicFlare MuzzleShootBullet (UseExactly 1) 0]
-- & itUse . heldMuzzles .~
-- [Muzzle (V2 15 0) 0 0.01 0 BasicFlare MuzzleShootBullet (UseExactly 1) 0]
defaultItEffect :: ItEffect
defaultItEffect =
+9 -24
View File
@@ -1,35 +1,20 @@
module Dodge.Default.Item.Use (
module Dodge.Default.Item.Use,
module Dodge.Default.Item.Use.AimParams,
module Dodge.Default.Item.Use.Equipment,
) where
--import Dodge.SoundLogic.ExternallyGeneratedSounds
import Dodge.Data.Item.Use
import Dodge.Default.Item.Use.AimParams
import Dodge.Default.Item.Use.Equipment
--defaultLeftUse :: ItemUse
--defaultLeftUse = UseHotkey
-- { _leftUse = LDoNothing
-- , _leftDelay = FixedRate{_rateMax = 8, _rateTime = 0}
-- , _leftHammer = HammerUp
-- , _uequipEffect = defaultEquip
-- , _leftConsumption = defaultLeftLoadable
-- }
defaultEquipUse :: ItemUse
defaultEquipUse = UseEquip
{ _uequipEffect = defaultEquip
}
defaultEquipUse =
UseEquip
{ _uequipEffect = defaultEquip
}
defaultHeldUse :: ItemUse
defaultHeldUse = UseHeld
{ _heldDelay = FixedRate{_rateMax = 8, _rateTimeLastUsed = 0}
, _heldMuzzles = defaultMuzzles
-- , _heldParams = BulletShooterParams
-- { _weaponInvLock = 0
-- }
, _heldFrame = 0
-- , _heldUseEffect = NoHeldUseEffect
}
defaultHeldUse =
UseHeld
{ _heldDelay = FixedRate{_rateMax = 8, _rateTimeLastUsed = 0}
, _heldFrame = 0
}
-20
View File
@@ -1,20 +0,0 @@
module Dodge.Default.Item.Use.AimParams (
defaultMuzzles,
) where
import Dodge.Data.Item.Use
import Linear
defaultMuzzles :: [Muzzle]
defaultMuzzles =
[ Muzzle
{ _mzPos = V2 20 0
, _mzRot = 0
, _mzInaccuracy = 0.05
, _mzAmmoSlot = 0
, _mzFlareType = NoFlare
, _mzEffect = MuzzleShootBullet
, _mzAmmoPerShot = UseExactly 1
, _mzFrame = 0
}
]