Play around with tesla arcs

This commit is contained in:
2025-01-16 12:18:25 +00:00
parent 5fb71cec39
commit 881b866ed2
11 changed files with 227 additions and 230 deletions
+20 -22
View File
@@ -1,27 +1,26 @@
module Dodge.Item.Held.BatteryGuns
( sparkGun
, teslaGun
, laser
, tractorGun
) where
module Dodge.Item.Held.BatteryGuns (
sparkGun,
teslaGun,
laser,
tractorGun,
) where
import Dodge.Data.ArcStep
import Dodge.SoundLogic.ExternallyGeneratedSounds
import Dodge.Default.Item
import Control.Lens
import Dodge.Data.Item
import Dodge.Default.Item
import Dodge.SoundLogic.ExternallyGeneratedSounds
import Geometry.Data
sparkGun :: Item
sparkGun =
teslaGun
& itType .~ HELD SPARKGUN
& itParams . arcSize .~ 10
-- & itParams . arcSize .~ 10
teslaGun :: Item
teslaGun =
defaultHeldItem
& itUse . heldParams .~ BeamShooterParams (Just (elecCrackleS,2))
& itUse . heldParams .~ BeamShooterParams (Just (elecCrackleS, 2))
& itParams .~ teslaParams
& itUse . heldDelay .~ NoDelay
& itUse . heldAim . aimWeight .~ 6
@@ -38,17 +37,15 @@ teslaParams :: ItemParams
teslaParams =
Arcing
{ _currentArc = []
, _arcSize = 20
, _arcNumber = 10
, _newArcStep = DefaultArcStep --defaultArcStep
, _previousArcEffect = NoPreviousArcEffect
-- , _arcSize = 20
-- , _arcNumber = 10
}
-- previous phaseV parameters: 0.2, 1, 5
laser :: Item
laser =
defaultHeldItem
& itUse . heldParams .~ BeamShooterParams (Just (tone440sawtoothquietS,2))
& itUse . heldParams .~ BeamShooterParams (Just (tone440sawtoothquietS, 2))
& itAmmoSlots .~ singleAmmo ElectricalAmmo
& itUse . heldDelay .~ NoDelay
& itUse . heldTriggerType .~ AutoTrigger
@@ -56,11 +53,12 @@ laser =
& itUse . heldAim . aimMuzzles . ix 0 . mzInaccuracy .~ 0
& itUse . heldAim . aimMuzzles . ix 0 . mzFlareType .~ LasGunFlare
& itUse . heldAim . aimMuzzles . ix 0 . mzEffect .~ MuzzleLaser
& itTargeting .~ ItTargeting
{ _itTgPos = Nothing
, _itTgID = Nothing
, _itTgActive = False
}
& itTargeting
.~ ItTargeting
{ _itTgPos = Nothing
, _itTgID = Nothing
, _itTgActive = False
}
& itUse . heldAim . aimWeight .~ 6
& itUse . heldAim . aimRange .~ 1
& itUse . heldAim . aimStance .~ TwoHandFlat
@@ -70,7 +68,7 @@ laser =
tractorGun :: Item
tractorGun =
defaultHeldItem
& itUse . heldParams .~ BeamShooterParams (Just (tone440sawtoothquietS,2))
& itUse . heldParams .~ BeamShooterParams (Just (tone440sawtoothquietS, 2))
& itAmmoSlots .~ singleAmmo ElectricalAmmo
& itUse . heldTriggerType .~ AutoTrigger
& itUse . heldAim . aimMuzzles . ix 0 . mzPos .~ V2 30 0