38 lines
798 B
Haskell
38 lines
798 B
Haskell
module Dodge.Item.Held.Cane (
|
|
volleyGun,
|
|
alteRifle,
|
|
rifle,
|
|
autoRifle,
|
|
burstRifle,
|
|
miniGunX,
|
|
) where
|
|
|
|
import Dodge.Data.Item
|
|
import Dodge.Default
|
|
--import qualified Data.IntMap.Strict as IM
|
|
import LensHelp
|
|
|
|
volleyGun :: Int -> Item
|
|
volleyGun i = defaultHeldItem & itType .~ HELD (VOLLEYGUN i)
|
|
& itParams .~ VolleyUnfiredBarrels [0..i-1]
|
|
|
|
rifle :: Item
|
|
rifle = defaultHeldItem & itType .~ HELD RIFLE
|
|
|
|
alteRifle :: Item
|
|
alteRifle = rifle
|
|
& itType .~ HELD ALTERIFLE
|
|
& itParams .~ AlteRifleSwitch 0
|
|
|
|
autoRifle :: Item
|
|
autoRifle = rifle & itType .~ HELD AUTORIFLE
|
|
|
|
burstRifle :: Item
|
|
burstRifle = rifle & itType .~ HELD BURSTRIFLE
|
|
|
|
miniGunX :: Int -> Item
|
|
miniGunX i =
|
|
autoRifle
|
|
& itType .~ HELD (MINIGUNX i)
|
|
& itParams .~ WarmTime 0 False Nothing
|