59 lines
1.3 KiB
Haskell
59 lines
1.3 KiB
Haskell
module Dodge.Creature.ChaseCrit (
|
|
smallChaseCrit,
|
|
invisibleChaseCrit,
|
|
chaseCrit,
|
|
) where
|
|
|
|
import Dodge.Data.Equipment.Misc
|
|
import Control.Lens
|
|
import Dodge.Data.Creature
|
|
import Dodge.Default
|
|
import Dodge.Item.Equipment
|
|
import Dodge.SoundLogic
|
|
import Picture
|
|
|
|
smallChaseCrit :: Creature
|
|
smallChaseCrit =
|
|
chaseCrit
|
|
{ _crHP = 1
|
|
, _crRad = 4
|
|
, _crInv = mempty
|
|
, _crCorpse = MakeDefaultCorpse
|
|
}
|
|
|
|
invisibleChaseCrit :: Creature
|
|
invisibleChaseCrit =
|
|
chaseCrit
|
|
-- & crCamouflage .~ Invisible
|
|
& crInv . at 0 ?~ wristInvisibility
|
|
& crEquipment . at OnLeftWrist ?~ 0
|
|
|
|
chaseCrit :: Creature
|
|
chaseCrit =
|
|
defaultCreature
|
|
{ _crName = "chaseCrit"
|
|
, _crHP = 150
|
|
, _crInv = mempty
|
|
, _crMeleeCooldown = 0
|
|
, _crFaction = ColorFaction green
|
|
, _crVocalization = chaseCritVocalization
|
|
, _crMvType = defaultChaseMvType
|
|
}
|
|
& crType . humanoidAI .~ ChaseAI
|
|
|
|
chaseCritVocalization :: Vocalization
|
|
chaseCritVocalization =
|
|
Vocalization
|
|
seagullChatterS
|
|
[ seagullBarkS
|
|
, seagullChatterS
|
|
, seagullChatter1S
|
|
, seagullWhistleS
|
|
, seagullWhistle1S
|
|
, seagullCryS
|
|
, seagullCry1S
|
|
, seagullCry2S
|
|
]
|
|
(50, 200)
|
|
0
|