36 lines
839 B
Haskell
36 lines
839 B
Haskell
--{-# LANGUAGE TupleSections #-}
|
|
{-
|
|
Inanimate objects such as lamps, barrels, etc
|
|
-}
|
|
module Dodge.Creature.Inanimate
|
|
( barrel
|
|
, explosiveBarrel
|
|
, module Dodge.Creature.Lamp
|
|
) where
|
|
import Dodge.Data
|
|
import Dodge.Creature.Lamp
|
|
import Dodge.Default
|
|
import qualified IntMapHelp as IM
|
|
import LensHelp
|
|
|
|
barrel :: Creature
|
|
barrel = defaultInanimate
|
|
{ _crHP = 500
|
|
, _crType = Barreloid PlainBarrel
|
|
, _crState = defaultState
|
|
{_csSpState = Barrel []
|
|
}
|
|
, _crInv = IM.empty -- IM.fromList [(0,frontArmour)]
|
|
}
|
|
|
|
explosiveBarrel :: Creature
|
|
explosiveBarrel = defaultInanimate
|
|
{ _crHP = 400
|
|
, _crType = Barreloid ExplosiveBarrel
|
|
, _crState = defaultState
|
|
{_csSpState = Barrel []
|
|
}
|
|
, _crInv = IM.empty -- IM.fromList [(0,frontArmour)]
|
|
}
|
|
& crMaterial .~ Crystal
|