Files
loop/src/Dodge/TweakBullet.hs
T

33 lines
767 B
Haskell

module Dodge.TweakBullet where
import Dodge.Data
import Dodge.Item.Weapon.Bullet
import qualified Data.IntMap.Strict as IM
import Control.Lens
defaultBulletSelTweak :: ItemTweaks
defaultBulletSelTweak = Tweakable
{_tweakSel = 0
,_tweakParams = IM.fromList $ zip [0..]
[ bulSelTweak
]
}
bulSelTweak :: TweakParam
bulSelTweak = TweakParam
{_doTweak = intToBulAmmo
,_curTweak = 0
,_maxTweak = 4
,_showTweak = _amString . (bulletTypes IM.!)
,_nameTweak = "BULLET TYPE"
}
intToBulAmmo :: Int -> Item -> Item
intToBulAmmo i = itConsumption . aoType .~ bulletTypes IM.! i
bulletTypes :: IM.IntMap AmmoType
bulletTypes = IM.fromList $ zip [0..]
[ basicBullet
, incBullet
, conBullet
, bounceBullet
]