Files
loop/src/Dodge/Item/Craftable.hs
T

53 lines
1.3 KiB
Haskell

module Dodge.Item.Craftable where
import Dodge.Data
import Dodge.Default.Weapon
--import Dodge.Particle.Bullet.HitEffect
--import Dodge.WorldEvent.HitEffect
import Color
--import Dodge.Picture.Layer
--import Picture
--import Geometry
import Control.Lens
makeTypeCraftNum :: Int -> CraftType -> Item
makeTypeCraftNum i ct = defaultCraftable
{ _itInvSize = 0.5
, _itCurseStatus = Uncursed
, _itConsumption = ItemItselfConsumable $ IcAmount i
}
& itType . iyBase .~ CRAFT ct
makeTypeCraft :: CraftType -> Item
makeTypeCraft = makeTypeCraftNum 1
incendiaryModule :: Item
incendiaryModule = makeTypeCraft INCENDIARYMODULE
& itInvSize .~ 1
& itInvColor .~ chartreuse
bounceModule :: Item
bounceModule = makeTypeCraft BOUNCEMODULE
& itInvSize .~ 1
& itInvColor .~ chartreuse
teleportModule :: Item
teleportModule = makeTypeCraft TELEPORTMODULE
& itInvSize .~ 1
& itInvColor .~ chartreuse
timeModule :: Item
timeModule = makeTypeCraft TIMEMODULE
& itInvSize .~ 1
& itInvColor .~ chartreuse
sizeModule :: Item
sizeModule = makeTypeCraft SIZEMODULE
& itInvSize .~ 1
& itInvColor .~ chartreuse
gravityModule :: Item
gravityModule = makeTypeCraft GRAVITYMODULE
& itInvSize .~ 1
& itInvColor .~ chartreuse
pipe :: Item
pipe = makeTypeCraft PIPE
plateCraft :: Item
plateCraft = makeTypeCraft PLATE