{- | Module : Dodge.Default Description : Instances of data structures This module contains prototypical data structures. -} module Dodge.Default ( module Dodge.Default, module Dodge.Default.Item, module Dodge.Default.Wall, module Dodge.Default.Creature, module Dodge.Default.Terminal, ) where import Control.Lens import Dodge.Data.World import Dodge.Default.Creature import Dodge.Default.Item import Dodge.Default.Terminal import Dodge.Default.Wall import Geometry import Picture defEquipment :: Item defEquipment = defHeldItem & itUse .~ UseNothing defaultFlIt :: FloorItem defaultFlIt = FlIt{_flItRot = 0, _flItPos = V2 0 0} defaultMachine :: Machine defaultMachine = Machine { _mcID = 0 , _mcPos = V2 0 0 , _mcDir = 0 , _mcHP = 1000 , _mcMaterial = Electronics , _mcSkin = Metal , _mcFootPrint = mempty , _mcDamage = [] , _mcType = McTerminal , _mcMounts = mempty } defaultButton :: Button defaultButton = Button { _btPos = 0 , _btRot = 0 , _btEvent = ButtonPress False NoWorldEffect (dark red) , _btID = 0 } defaultProximitySensor :: ProximitySensor defaultProximitySensor = ProxSensor { _proxSensorType = SensorWithRequirement $ RequireHealth 0 , _proxToggle = Nothing }