Files
loop/src/Dodge/Default/Door.hs
T

49 lines
1.1 KiB
Haskell

module Dodge.Default.Door (
module Dodge.Default.Door,
module Dodge.Default.Wall,
) where
import Color
import Control.Lens
import Dodge.Data.Door
import Dodge.Data.Wall
import Dodge.Default.Wall
switchWallCol :: Color -> Wall
switchWallCol col = defaultSwitchWall & wlColor .~ col
defaultAutoWall :: Wall
defaultAutoWall =
defaultDoorWall
& wlColor .~ dim yellow
& wlPathable .~ True
& wlOpacity .~ Opaque 9
defaultSwitchWall :: Wall
defaultSwitchWall =
defaultDoorWall
& wlColor .~ red
& wlPathable .~ False
& wlOpacity .~ Opaque 0
defaultDoor :: Door
defaultDoor =
Door
{ _drID = 0
, _drWallIDs = mempty
, _drStatus = DoorClosed
, _drTrigger = WdBlConst False
, _drMech = DrWdId
, _drPos = (0, 0)
, _drOpenPos = (0, 0)
, _drClosePos = (0, 0)
, _drHP = 10000
, _drDeath = DrWdMakeDoorDebris
, _drSpeed = 1
, _drPushedBy = PushesItself
, _drPushes = Nothing
, _drMounts = mempty
, _drObstructs = mempty
, _drObstacleType = DoorObstacle
}