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 -> CombineType -> Item makeTypeCraftNum i ct = defaultCraftable { _itInvSize = 0.5 , _itCurseStatus = Uncursed , _itName = show ct , _itType = ct , _itConsumption = ItemItselfConsumable i } makeTypeCraft :: CombineType -> Item makeTypeCraft = makeTypeCraftNum 1 makeModule :: CombineType -> Item makeModule ct = makeTypeCraft ct & itInvSize .~ 1 & itInvColor .~ chartreuse 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