This commit is contained in:
2022-08-20 18:41:04 +01:00
parent ff9dbdf068
commit 6e598339f1
84 changed files with 58 additions and 216 deletions
+3 -6
View File
@@ -1,18 +1,15 @@
{-# LANGUAGE DeriveGeneric #-} --{-# LANGUAGE DeriveGeneric #-}
{-# LANGUAGE DeriveAnyClass #-} {-# LANGUAGE DeriveAnyClass #-}
{-# LANGUAGE DeriveGeneric #-} {-# LANGUAGE DeriveGeneric #-}
{-# LANGUAGE StrictData #-} {-# LANGUAGE StrictData #-}
{-# LANGUAGE TemplateHaskell #-} --{-# LANGUAGE TemplateHaskell #-}
module Color where module Color where
import Flat import Flat
import Data.Aeson import Data.Aeson
import Data.Store
import GHC.Generics
import Geometry import Geometry
import LinearHelp import LinearHelp ()
import TH.Derive
data PaletteColor data PaletteColor
= RED = RED
+1 -1
View File
@@ -12,7 +12,7 @@ import Geometry
findBoundDists :: Configuration -> World -> (Float, Float, Float, Float) findBoundDists :: Configuration -> World -> (Float, Float, Float, Float)
findBoundDists cfig w findBoundDists cfig w
| debugOn Bound_box_screen cfig = (hh, - hh, hw, - hw) | debugOn Bound_box_screen cfig = (hh, - hh, hw, - hw)
| otherwise = fromMaybe (0, 0, 0, 0) $ farWallDistDirection ((w ^. cWorld . cwCam . cwcCenter)) w | otherwise = fromMaybe (0, 0, 0, 0) $ farWallDistDirection (w ^. cWorld . cwCam . cwcCenter) w
where where
hw = halfWidth cfig hw = halfWidth cfig
hh = halfHeight cfig hh = halfHeight cfig
-2
View File
@@ -13,8 +13,6 @@ import Dodge.Data.Creature.Stance
import Dodge.Data.CreatureEffect import Dodge.Data.CreatureEffect
import Geometry.Data import Geometry.Data
import Sound.Data import Sound.Data
import TH.Derive
import Data.Store
data ActionPlan data ActionPlan
= Inanimate = Inanimate
+1 -3
View File
@@ -11,9 +11,7 @@ import Data.Aeson
import Data.Aeson.TH import Data.Aeson.TH
import Dodge.Data.CrWlID import Dodge.Data.CrWlID
import Geometry.Data import Geometry.Data
import TH.Derive import LinearHelp ()
import Data.Store
import LinearHelp
data ArcStep = ArcStep data ArcStep = ArcStep
{ _asPos :: Point2 { _asPos :: Point2
-2
View File
@@ -11,8 +11,6 @@ import Control.Lens
import Data.Aeson import Data.Aeson
import Data.Aeson.TH import Data.Aeson.TH
import Geometry.Data import Geometry.Data
import TH.Derive
import Data.Store
{- | Linear beams. Last only one frame. {- | Linear beams. Last only one frame.
- Can interact with one another in a limited manner - Can interact with one another in a limited manner
+1 -3
View File
@@ -10,7 +10,7 @@ module Dodge.Data.Block (
) where ) where
import Flat import Flat
import LinearHelp import LinearHelp ()
import Color import Color
import Control.Lens import Control.Lens
import Data.Aeson import Data.Aeson
@@ -20,8 +20,6 @@ import Dodge.Data.Material
import Dodge.Data.PathGraph import Dodge.Data.PathGraph
import Geometry import Geometry
import Shape.Data import Shape.Data
import TH.Derive
import Data.Store
data Block = Block data Block = Block
{ _blID :: Int { _blID :: Int
-2
View File
@@ -9,8 +9,6 @@ import Flat
import Control.Lens import Control.Lens
import Data.Aeson import Data.Aeson
import Data.Aeson.TH import Data.Aeson.TH
import TH.Derive
import Data.Store
data Bounds = Bounds data Bounds = Bounds
{ _bdMinX :: Float { _bdMinX :: Float
+1 -3
View File
@@ -9,14 +9,12 @@ module Dodge.Data.Bullet
)where )where
import Flat import Flat
import LinearHelp import LinearHelp ()
import Control.Lens import Control.Lens
import Data.Aeson import Data.Aeson
import Data.Aeson.TH import Data.Aeson.TH
import Dodge.Data.Damage import Dodge.Data.Damage
import Geometry.Data import Geometry.Data
import TH.Derive
import Data.Store
data Bullet = Bullet data Bullet = Bullet
{ _buDelayFraction :: Float { _buDelayFraction :: Float
+1 -3
View File
@@ -6,7 +6,7 @@
module Dodge.Data.Button where module Dodge.Data.Button where
import Flat import Flat
import LinearHelp import LinearHelp ()
import Color import Color
import Control.Lens import Control.Lens
import Data.Aeson import Data.Aeson
@@ -14,8 +14,6 @@ import Data.Aeson.TH
import Dodge.Data.WorldEffect import Dodge.Data.WorldEffect
import Geometry.Data import Geometry.Data
import Sound.Data import Sound.Data
import TH.Derive
import Data.Store
data ButtonDraw data ButtonDraw
= DefaultDrawButton Color = DefaultDrawButton Color
-2
View File
@@ -8,8 +8,6 @@ module Dodge.Data.CamouflageStatus where
import Flat import Flat
import Data.Aeson import Data.Aeson
import Data.Aeson.TH import Data.Aeson.TH
import TH.Derive
import Data.Store
data CamouflageStatus data CamouflageStatus
= FullyVisible = FullyVisible
-2
View File
@@ -11,8 +11,6 @@ import Control.Lens
import Data.Aeson import Data.Aeson
import Data.Aeson.TH import Data.Aeson.TH
import Geometry import Geometry
import TH.Derive
import Data.Store
data CloudDraw data CloudDraw
= CloudColor Float Float Color -- radius-multiply fade-time color = CloudColor Float Float Color -- radius-multiply fade-time color
-2
View File
@@ -12,8 +12,6 @@ import Data.Aeson
import Data.Aeson.TH import Data.Aeson.TH
import qualified IntSetHelp as IS import qualified IntSetHelp as IS
import Geometry.Data import Geometry.Data
import TH.Derive
import Data.Store
data CrGroupParams = CrGroupParams data CrGroupParams = CrGroupParams
{ _crGroupParamID :: Int { _crGroupParamID :: Int
+1 -3
View File
@@ -18,9 +18,7 @@ module Dodge.Data.Creature (
) where ) where
import Flat import Flat
import LinearHelp import LinearHelp ()
import TH.Derive
import Data.Store
import Control.Lens import Control.Lens
import Data.Aeson import Data.Aeson
import Data.Aeson.TH import Data.Aeson.TH
+1 -3
View File
@@ -6,13 +6,11 @@
module Dodge.Data.Creature.Memory where module Dodge.Data.Creature.Memory where
import Flat import Flat
import LinearHelp import LinearHelp ()
import Control.Lens import Control.Lens
import Data.Aeson import Data.Aeson
import Data.Aeson.TH import Data.Aeson.TH
import Geometry.Data import Geometry.Data
import TH.Derive
import Data.Store
data Memory = Memory data Memory = Memory
{ _soundsToInvestigate :: [Point2] { _soundsToInvestigate :: [Point2]
-2
View File
@@ -9,8 +9,6 @@ module Dodge.Data.Creature.Misc (
) where ) where
import Flat import Flat
import TH.Derive
import Data.Store
import Color import Color
import Control.Lens import Control.Lens
import Data.Aeson import Data.Aeson
-2
View File
@@ -29,8 +29,6 @@ import Data.Aeson
import Data.Aeson.TH import Data.Aeson.TH
import Dodge.Data.FloatFunction import Dodge.Data.FloatFunction
import qualified IntMapHelp as IM import qualified IntMapHelp as IM
import TH.Derive
import Data.Store
data Perception = Perception data Perception = Perception
{ _cpVigilance :: Vigilance { _cpVigilance :: Vigilance
+1 -3
View File
@@ -6,13 +6,11 @@
module Dodge.Data.Creature.Stance where module Dodge.Data.Creature.Stance where
import Flat import Flat
import LinearHelp import LinearHelp ()
import Control.Lens import Control.Lens
import Data.Aeson import Data.Aeson
import Data.Aeson.TH import Data.Aeson.TH
import Geometry.Data import Geometry.Data
import TH.Derive
import Data.Store
data Stance = Stance data Stance = Stance
{ _carriage :: Carriage { _carriage :: Carriage
-2
View File
@@ -13,8 +13,6 @@ import Data.Aeson.TH
import qualified IntSetHelp as IS import qualified IntSetHelp as IS
import Dodge.Data.Damage import Dodge.Data.Damage
import Geometry.Data import Geometry.Data
import TH.Derive
import Data.Store
data CreatureState = CrSt data CreatureState = CrSt
{ _csDamage :: [Damage] { _csDamage :: [Damage]
+1 -3
View File
@@ -13,10 +13,8 @@ module Dodge.Data.Damage (
) where ) where
import Flat import Flat
import LinearHelp import LinearHelp ()
import Control.Lens import Control.Lens
import TH.Derive
import Data.Store
import Data.Aeson import Data.Aeson
import Data.Aeson.TH import Data.Aeson.TH
import Dodge.Data.Damage.Type import Dodge.Data.Damage.Type
-2
View File
@@ -8,8 +8,6 @@ module Dodge.Data.Damage.Type where
import Flat import Flat
import Data.Aeson import Data.Aeson
import Data.Aeson.TH import Data.Aeson.TH
import TH.Derive
import Data.Store
data DamageType data DamageType
= PIERCING = PIERCING
+1 -3
View File
@@ -7,11 +7,9 @@ module Dodge.Data.Distortion where
import Data.Aeson import Data.Aeson
import Data.Aeson.TH import Data.Aeson.TH
import Data.Store
import Flat import Flat
import Geometry import Geometry
import LinearHelp import LinearHelp ()
import TH.Derive
data Distortion data Distortion
= RadialDistortion Point2 Point2 Point2 Float = RadialDistortion Point2 Point2 Point2 Float
+1 -3
View File
@@ -11,7 +11,7 @@ module Dodge.Data.Door (
) where ) where
import Flat import Flat
import LinearHelp import LinearHelp ()
import Control.Lens import Control.Lens
import Data.Aeson import Data.Aeson
import Data.Aeson.TH import Data.Aeson.TH
@@ -20,8 +20,6 @@ import Dodge.Data.MountedObject
import Dodge.Data.PathGraph import Dodge.Data.PathGraph
import Dodge.Data.WorldEffect import Dodge.Data.WorldEffect
import Geometry.Data import Geometry.Data
import TH.Derive
import Data.Store
data DoorStatus = DoorOpen | DoorClosed | DoorHalfway | DoorInt Int data DoorStatus = DoorOpen | DoorClosed | DoorHalfway | DoorInt Int
deriving (Eq, Ord, Show, Read, Generic, Flat) deriving (Eq, Ord, Show, Read, Generic, Flat)
-2
View File
@@ -12,8 +12,6 @@ import Data.Aeson
import Data.Aeson.TH import Data.Aeson.TH
import Dodge.Data.Damage.Type import Dodge.Data.Damage.Type
import Geometry.Data import Geometry.Data
import TH.Derive
import Data.Store
data EnergyBall = EnergyBall data EnergyBall = EnergyBall
{ _ebVel :: Point2 { _ebVel :: Point2
-2
View File
@@ -8,8 +8,6 @@ module Dodge.Data.Equipment.Misc where
import Flat import Flat
import Data.Aeson import Data.Aeson
import Data.Aeson.TH import Data.Aeson.TH
import TH.Derive
import Data.Store
data EquipSite data EquipSite
= GoesOnHead = GoesOnHead
-2
View File
@@ -11,8 +11,6 @@ import Control.Lens
import Data.Aeson import Data.Aeson
import Data.Aeson.TH import Data.Aeson.TH
import Geometry.Data import Geometry.Data
import TH.Derive
import Data.Store
data Flame = Flame data Flame = Flame
{ _flVel :: Point2 { _flVel :: Point2
+1 -3
View File
@@ -6,14 +6,12 @@
module Dodge.Data.Flare where module Dodge.Data.Flare where
import Flat import Flat
import LinearHelp import LinearHelp ()
import Color import Color
import Control.Lens import Control.Lens
import Data.Aeson import Data.Aeson
import Data.Aeson.TH import Data.Aeson.TH
import Geometry import Geometry
import TH.Derive
import Data.Store
data Flare data Flare
= MuzFlare = MuzFlare
-2
View File
@@ -6,8 +6,6 @@
module Dodge.Data.FloatFunction where module Dodge.Data.FloatFunction where
import Flat import Flat
import TH.Derive
import Data.Store
import Data.Aeson import Data.Aeson
import Data.Aeson.TH import Data.Aeson.TH
+1 -3
View File
@@ -6,14 +6,12 @@
module Dodge.Data.FloorItem where module Dodge.Data.FloorItem where
import Flat import Flat
import LinearHelp import LinearHelp ()
import Control.Lens import Control.Lens
import Data.Aeson import Data.Aeson
import Data.Aeson.TH import Data.Aeson.TH
import Dodge.Data.Item import Dodge.Data.Item
import Geometry.Data import Geometry.Data
import TH.Derive
import Data.Store
data FloorItem = FlIt {_flIt :: Item, _flItPos :: Point2, _flItRot :: Float, _flItID :: Int} data FloorItem = FlIt {_flIt :: Item, _flItPos :: Point2, _flItRot :: Float, _flItID :: Int}
deriving (Eq, Show, Read, Generic, Flat) deriving (Eq, Show, Read, Generic, Flat)
+1 -3
View File
@@ -6,14 +6,12 @@
module Dodge.Data.ForegroundShape where module Dodge.Data.ForegroundShape where
import Flat import Flat
import LinearHelp import LinearHelp ()
import Control.Lens import Control.Lens
import Data.Aeson import Data.Aeson
import Data.Aeson.TH import Data.Aeson.TH
import Geometry import Geometry
import ShapePicture import ShapePicture
import TH.Derive
import Data.Store
data ForegroundShape = ForegroundShape data ForegroundShape = ForegroundShape
{ _fsID :: Int { _fsID :: Int
-2
View File
@@ -12,8 +12,6 @@ import Data.Aeson
import Data.Aeson.TH import Data.Aeson.TH
import qualified Data.Map.Strict as M import qualified Data.Map.Strict as M
import Dodge.Data.Damage.Type import Dodge.Data.Damage.Type
import TH.Derive
import Data.Store
newtype GenParams = GenParams newtype GenParams = GenParams
{ _sensorCoding :: M.Map DamageType (PaletteColor, DecorationShape) { _sensorCoding :: M.Map DamageType (PaletteColor, DecorationShape)
+1 -3
View File
@@ -6,13 +6,11 @@
module Dodge.Data.Gust where module Dodge.Data.Gust where
import Flat import Flat
import LinearHelp import LinearHelp ()
import Control.Lens import Control.Lens
import Data.Aeson import Data.Aeson
import Data.Aeson.TH import Data.Aeson.TH
import Geometry.Data import Geometry.Data
import TH.Derive
import Data.Store
data Gust = Gust data Gust = Gust
{ _guID :: Int { _guID :: Int
+1 -3
View File
@@ -6,13 +6,11 @@
module Dodge.Data.HUD where module Dodge.Data.HUD where
import Flat import Flat
import LinearHelp import LinearHelp ()
import Control.Lens import Control.Lens
import Data.Aeson import Data.Aeson
import Data.Aeson.TH import Data.Aeson.TH
import Geometry.Data import Geometry.Data
import TH.Derive
import Data.Store
data HUDElement data HUDElement
= DisplayInventory {_subInventory :: SubInventory} = DisplayInventory {_subInventory :: SubInventory}
-2
View File
@@ -9,8 +9,6 @@ import Flat
import Control.Lens import Control.Lens
import Data.Aeson import Data.Aeson
import Data.Aeson.TH import Data.Aeson.TH
import TH.Derive
import Data.Store
data HammerType data HammerType
= NoHammer = NoHammer
-2
View File
@@ -18,8 +18,6 @@ module Dodge.Data.Item (
) where ) where
import Flat import Flat
import Data.Store
import TH.Derive
import Color import Color
import Control.Lens import Control.Lens
import Data.Aeson import Data.Aeson
-2
View File
@@ -7,8 +7,6 @@ module Dodge.Data.Item.Combine where
import Flat import Flat
import Control.Lens import Control.Lens
import TH.Derive
import Data.Store
import Data.Aeson import Data.Aeson
import Data.Aeson.TH import Data.Aeson.TH
import qualified Data.Map.Strict as M import qualified Data.Map.Strict as M
-2
View File
@@ -8,8 +8,6 @@ module Dodge.Data.Item.CurseStatus where
import Flat import Flat
import Data.Aeson import Data.Aeson
import Data.Aeson.TH import Data.Aeson.TH
import TH.Derive
import Data.Store
data CurseStatus data CurseStatus
= Uncursed = Uncursed
-4
View File
@@ -9,8 +9,6 @@ import Flat
import Control.Lens import Control.Lens
import Data.Aeson import Data.Aeson
import Data.Aeson.TH import Data.Aeson.TH
import TH.Derive
import Data.Store
data ItEffect = ItEffect data ItEffect = ItEffect
{ _ieInv :: ItInvEffect --Item -> Creature -> World -> World { _ieInv :: ItInvEffect --Item -> Creature -> World -> World
@@ -32,11 +30,9 @@ data ItInvEffect
deriving (Eq, Ord, Show, Read, Generic, Flat) deriving (Eq, Ord, Show, Read, Generic, Flat)
data ItFloorEffect = NoFloorEffect data ItFloorEffect = NoFloorEffect
| DefaultFloorEffect
deriving (Eq, Ord, Show, Read, Generic, Flat) deriving (Eq, Ord, Show, Read, Generic, Flat)
data ItDropEffect = NoDropEffect data ItDropEffect = NoDropEffect
| DefaultDropEffect
deriving (Eq, Ord, Show, Read, Generic, Flat) deriving (Eq, Ord, Show, Read, Generic, Flat)
makeLenses ''ItEffect makeLenses ''ItEffect
-2
View File
@@ -9,8 +9,6 @@ import Flat
import Control.Lens import Control.Lens
import Data.Aeson import Data.Aeson
import Data.Aeson.TH import Data.Aeson.TH
import TH.Derive
import Data.Store
data UseDelay -- should just be Delay data UseDelay -- should just be Delay
= NoDelay = NoDelay
-2
View File
@@ -10,8 +10,6 @@ import Control.Lens
import Data.Aeson import Data.Aeson
import Data.Aeson.TH import Data.Aeson.TH
import qualified Data.Sequence as Seq import qualified Data.Sequence as Seq
import TH.Derive
import Data.Store
data HeldScroll data HeldScroll
= HeldScrollDoNothing = HeldScrollDoNothing
-2
View File
@@ -10,8 +10,6 @@ import Data.Aeson
import Data.Aeson.TH import Data.Aeson.TH
import Dodge.Data.CamouflageStatus import Dodge.Data.CamouflageStatus
import Dodge.Data.Item.Combine import Dodge.Data.Item.Combine
import TH.Derive
import Data.Store
data HeldUse data HeldUse
= HeldDoNothing = HeldDoNothing
-2
View File
@@ -8,8 +8,6 @@ import Flat
import Control.Lens import Control.Lens
import Data.Aeson import Data.Aeson
import Data.Aeson.TH import Data.Aeson.TH
import TH.Derive
import Data.Store
data ItemLocation data ItemLocation
= InInv {_ipCrID :: Int, _ipInvID :: Int} = InInv {_ipCrID :: Int, _ipInvID :: Int}
+1 -3
View File
@@ -10,9 +10,7 @@ import Control.Lens
import Data.Aeson import Data.Aeson
import Data.Aeson.TH import Data.Aeson.TH
import Geometry.Data import Geometry.Data
import TH.Derive import LinearHelp ()
import Data.Store
import LinearHelp
data ItemDimension = ItemDimension data ItemDimension = ItemDimension
{ _dimRad :: Float { _dimRad :: Float
-2
View File
@@ -13,8 +13,6 @@ import Data.Aeson.TH
import Dodge.Data.ArcStep import Dodge.Data.ArcStep
import Dodge.Data.Beam import Dodge.Data.Beam
import Geometry.Data import Geometry.Data
import TH.Derive
import Data.Store
data ItemParams data ItemParams
= NoParams = NoParams
+1 -3
View File
@@ -10,9 +10,7 @@ import Control.Lens
import Data.Aeson import Data.Aeson
import Data.Aeson.TH import Data.Aeson.TH
import Geometry.Data import Geometry.Data
import TH.Derive import LinearHelp ()
import Data.Store
import LinearHelp
data Scope data Scope
= NoScope = NoScope
+1 -3
View File
@@ -10,9 +10,7 @@ import Control.Lens
import Data.Aeson import Data.Aeson
import Data.Aeson.TH import Data.Aeson.TH
import Geometry.Data import Geometry.Data
import TH.Derive import LinearHelp ()
import Data.Store
import LinearHelp
data Targeting data Targeting
= NoTargeting = NoTargeting
-2
View File
@@ -10,8 +10,6 @@ import Control.Lens
import Data.Aeson import Data.Aeson
import Data.Aeson.TH import Data.Aeson.TH
import qualified IntMapHelp as IM import qualified IntMapHelp as IM
import TH.Derive
import Data.Store
data ItemTweaks data ItemTweaks
= NoTweaks = NoTweaks
-2
View File
@@ -23,8 +23,6 @@ import Dodge.Data.Item.HeldUse
import Dodge.Data.Item.Use.Consumption import Dodge.Data.Item.Use.Consumption
import Dodge.Data.Item.Use.Equipment import Dodge.Data.Item.Use.Equipment
import Dodge.Data.Item.HeldDelay import Dodge.Data.Item.HeldDelay
import TH.Derive
import Data.Store
data ItemUse data ItemUse
= HeldUse = HeldUse
+5 -3
View File
@@ -1,6 +1,7 @@
{-# LANGUAGE DeriveGeneric #-} {-# LANGUAGE DeriveGeneric #-}
{-# LANGUAGE DeriveAnyClass #-} {-# LANGUAGE DeriveAnyClass #-}
{-# LANGUAGE GeneralizedNewtypeDeriving #-} {-# LANGUAGE GeneralizedNewtypeDeriving #-}
{-# LANGUAGE DerivingStrategies #-}
{-# LANGUAGE StrictData #-} {-# LANGUAGE StrictData #-}
{-# LANGUAGE TemplateHaskell #-} {-# LANGUAGE TemplateHaskell #-}
@@ -11,8 +12,6 @@ module Dodge.Data.Item.Use.Consumption (
) where ) where
import Flat import Flat
import TH.Derive
import Data.Store
import Control.Lens import Control.Lens
import Data.Aeson import Data.Aeson
import Data.Aeson.TH import Data.Aeson.TH
@@ -45,7 +44,10 @@ data LeftConsumption
deriving (Eq, Show, Read, Generic, Flat) deriving (Eq, Show, Read, Generic, Flat)
newtype ItAmount = ItAmount {_getItAmount :: Int} newtype ItAmount = ItAmount {_getItAmount :: Int}
deriving (Eq, Ord, Read, Show, Num, Real, Enum, Integral, Generic, Flat) -- deriving (Eq, Ord, Read, Show, Num, Real, Generic, Flat)
deriving newtype (Eq, Ord, Read, Show, Num, Real, Enum, Integral)
deriving stock (Generic)
deriving anyclass (Flat)
makeLenses ''HeldConsumption makeLenses ''HeldConsumption
makeLenses ''LeftConsumption makeLenses ''LeftConsumption
@@ -10,8 +10,6 @@ module Dodge.Data.Item.Use.Consumption.Ammo (
) where ) where
import Flat import Flat
import TH.Derive
import Data.Store
import Control.Lens import Control.Lens
import Data.Aeson import Data.Aeson
import Data.Aeson.TH import Data.Aeson.TH
@@ -11,8 +11,6 @@ import Data.Aeson
import Data.Aeson.TH import Data.Aeson.TH
import Dodge.Data.Hammer import Dodge.Data.Hammer
import Sound.Data import Sound.Data
import TH.Derive
import Data.Store
data LoadAction data LoadAction
= LoadEject {_actionTime :: Int, _actionSound :: SoundID} = LoadEject {_actionTime :: Int, _actionSound :: SoundID}
-2
View File
@@ -14,8 +14,6 @@ import Data.Aeson
import Data.Aeson.TH import Data.Aeson.TH
import Dodge.Data.Equipment.Misc import Dodge.Data.Equipment.Misc
import Dodge.Data.Item.HeldUse import Dodge.Data.Item.HeldUse
import TH.Derive
import Data.Store
data EquipEffect = EquipEffect data EquipEffect = EquipEffect
{ _eeUse :: Euse --Item -> Creature -> World -> World { _eeUse :: Euse --Item -> Creature -> World -> World
-2
View File
@@ -11,8 +11,6 @@ import Control.Lens
import Data.Aeson import Data.Aeson
import Data.Aeson.TH import Data.Aeson.TH
import Geometry.Data import Geometry.Data
import TH.Derive
import Data.Store
data LaserType data LaserType
= DamageLaser {_laserTypeDamage :: Int} = DamageLaser {_laserTypeDamage :: Int}
+1 -3
View File
@@ -6,13 +6,11 @@
module Dodge.Data.LightSource where module Dodge.Data.LightSource where
import Flat import Flat
import LinearHelp import LinearHelp ()
import Control.Lens import Control.Lens
import Data.Aeson import Data.Aeson
import Data.Aeson.TH import Data.Aeson.TH
import Geometry import Geometry
import TH.Derive
import Data.Store
data LightSourceDraw = DefaultLightSourceDraw data LightSourceDraw = DefaultLightSourceDraw
deriving (Eq, Ord, Show, Read, Generic, Flat) deriving (Eq, Ord, Show, Read, Generic, Flat)
+1 -3
View File
@@ -6,13 +6,11 @@
module Dodge.Data.LinearShockwave where module Dodge.Data.LinearShockwave where
import Flat import Flat
import LinearHelp import LinearHelp ()
import Control.Lens import Control.Lens
import Data.Aeson import Data.Aeson
import Data.Aeson.TH import Data.Aeson.TH
import Geometry.Data import Geometry.Data
import TH.Derive
import Data.Store
data LinearShockwave = LinearShockwave data LinearShockwave = LinearShockwave
{ _lwPos :: Point2 { _lwPos :: Point2
+1 -3
View File
@@ -14,7 +14,7 @@ module Dodge.Data.Machine (
) where ) where
import Flat import Flat
import LinearHelp import LinearHelp ()
import Color import Color
import Control.Lens import Control.Lens
import Data.Aeson import Data.Aeson
@@ -29,8 +29,6 @@ import Dodge.Data.Material
import Dodge.Data.ObjectType import Dodge.Data.ObjectType
import Geometry.Data import Geometry.Data
import Sound.Data import Sound.Data
import TH.Derive
import Data.Store
data Machine = Machine data Machine = Machine
{ _mcID :: Int { _mcID :: Int
+1 -3
View File
@@ -6,7 +6,7 @@
module Dodge.Data.Machine.Sensor where module Dodge.Data.Machine.Sensor where
import Flat import Flat
import LinearHelp import LinearHelp ()
import Dodge.Data.GenParams import Dodge.Data.GenParams
import Color import Color
import Control.Lens import Control.Lens
@@ -14,8 +14,6 @@ import Data.Aeson
import Data.Aeson.TH import Data.Aeson.TH
import Dodge.Data.Item.Combine import Dodge.Data.Item.Combine
import Dodge.Data.Damage.Type import Dodge.Data.Damage.Type
import TH.Derive
import Data.Store
data Sensor data Sensor
= DamageSensor = DamageSensor
+1 -3
View File
@@ -6,13 +6,11 @@
module Dodge.Data.Magnet where module Dodge.Data.Magnet where
import Flat import Flat
import LinearHelp import LinearHelp ()
import Control.Lens import Control.Lens
import Data.Aeson import Data.Aeson
import Data.Aeson.TH import Data.Aeson.TH
import Geometry.Data import Geometry.Data
import TH.Derive
import Data.Store
newtype MagnetUpdate = MagnetUpdateTimer Int newtype MagnetUpdate = MagnetUpdateTimer Int
deriving (Eq, Ord, Show, Read, Generic, Flat) deriving (Eq, Ord, Show, Read, Generic, Flat)
-2
View File
@@ -8,8 +8,6 @@ module Dodge.Data.Material where
import Flat import Flat
import Data.Aeson import Data.Aeson
import Data.Aeson.TH import Data.Aeson.TH
import TH.Derive
import Data.Store
data Material = Wood | Dirt | Stone | Glass | Metal | Crystal | Flesh | Electronics data Material = Wood | Dirt | Stone | Glass | Metal | Crystal | Flesh | Electronics
deriving (Eq, Ord, Show, Bounded, Enum, Read, Generic, Flat) deriving (Eq, Ord, Show, Bounded, Enum, Read, Generic, Flat)
+1 -3
View File
@@ -6,14 +6,12 @@
module Dodge.Data.Modification where module Dodge.Data.Modification where
import Flat import Flat
import LinearHelp import LinearHelp ()
import Control.Lens import Control.Lens
import Data.Aeson import Data.Aeson
import Data.Aeson.TH import Data.Aeson.TH
import Dodge.Data.WorldEffect import Dodge.Data.WorldEffect
import Geometry.Data import Geometry.Data
import TH.Derive
import Data.Store
data Modification data Modification
= ModIDTimerPoint3Bool = ModIDTimerPoint3Bool
-2
View File
@@ -8,8 +8,6 @@ module Dodge.Data.MountedObject where
import Flat import Flat
import Data.Aeson import Data.Aeson
import Data.Aeson.TH import Data.Aeson.TH
import TH.Derive
import Data.Store
data MountedObject data MountedObject
= MountedLS Int = MountedLS Int
+2 -6
View File
@@ -1,4 +1,4 @@
{-# LANGUAGE DeriveGeneric #-} --{-# LANGUAGE DeriveGeneric #-}
{-# LANGUAGE DeriveAnyClass #-} {-# LANGUAGE DeriveAnyClass #-}
{-# LANGUAGE DeriveGeneric #-} {-# LANGUAGE DeriveGeneric #-}
{-# LANGUAGE ScopedTypeVariables #-} {-# LANGUAGE ScopedTypeVariables #-}
@@ -15,17 +15,13 @@ The warnings have been disabled.
module Dodge.Data.PathGraph where module Dodge.Data.PathGraph where
import Flat import Flat
import LinearHelp import LinearHelp ()
import Control.Lens import Control.Lens
import Data.Aeson import Data.Aeson
import Data.Graph.Inductive import Data.Graph.Inductive
import Data.Map.Strict (Map) import Data.Map.Strict (Map)
import qualified Data.Set as Set import qualified Data.Set as Set
import Data.Store
import Data.Store.TH
import GHC.Generics
import Geometry.Data import Geometry.Data
import TH.Derive
data PathGraph = PathGraph data PathGraph = PathGraph
{ _pgGraph :: Gr Point2 PathEdge { _pgGraph :: Gr Point2 PathEdge
-2
View File
@@ -8,8 +8,6 @@ module Dodge.Data.Payload where
import Flat import Flat
import Data.Aeson import Data.Aeson
import Data.Aeson.TH import Data.Aeson.TH
import TH.Derive
import Data.Store
data Payload = ExplosionPayload | DudPayload data Payload = ExplosionPayload | DudPayload
deriving (Show, Read, Eq, Ord, Enum, Bounded, Generic, Flat) deriving (Show, Read, Eq, Ord, Enum, Bounded, Generic, Flat)
-2
View File
@@ -11,8 +11,6 @@ import Control.Lens
import Data.Aeson import Data.Aeson
import Data.Aeson.TH import Data.Aeson.TH
import Geometry.Data import Geometry.Data
import TH.Derive
import Data.Store
data PosEventType = SparkSpawner data PosEventType = SparkSpawner
deriving (Eq, Ord, Show, Read, Generic, Flat) deriving (Eq, Ord, Show, Read, Generic, Flat)
+1 -3
View File
@@ -6,14 +6,12 @@
module Dodge.Data.PressPlate where module Dodge.Data.PressPlate where
import Flat import Flat
import LinearHelp import LinearHelp ()
import Control.Lens import Control.Lens
import Data.Aeson import Data.Aeson
import Data.Aeson.TH import Data.Aeson.TH
import Geometry.Data import Geometry.Data
import Picture import Picture
import TH.Derive
import Data.Store
data PressPlateEvent data PressPlateEvent
= PressPlateId = PressPlateId
-2
View File
@@ -12,8 +12,6 @@ import Data.Aeson.TH
import Dodge.Data.Item.Use.Consumption.Ammo import Dodge.Data.Item.Use.Consumption.Ammo
import Geometry.Data import Geometry.Data
import TH.Derive
import Data.Store
data Proj data Proj
= Shell = Shell
{ _prjPos :: Point2 { _prjPos :: Point2
-2
View File
@@ -15,8 +15,6 @@ import Geometry.Data
import qualified Quaternion as Q import qualified Quaternion as Q
import Shape.Data import Shape.Data
import ShapePicture.Data import ShapePicture.Data
import TH.Derive
import Data.Store
data Prop data Prop
= PropZ = PropZ
+1 -3
View File
@@ -6,14 +6,12 @@
module Dodge.Data.RadarBlip where module Dodge.Data.RadarBlip where
import Flat import Flat
import LinearHelp import LinearHelp ()
import Color import Color
import Control.Lens import Control.Lens
import Data.Aeson import Data.Aeson
import Data.Aeson.TH import Data.Aeson.TH
import Geometry import Geometry
import TH.Derive
import Data.Store
data RadarBlip = RadarBlip data RadarBlip = RadarBlip
{ _rbColor :: Color { _rbColor :: Color
+1 -3
View File
@@ -9,14 +9,12 @@ module Dodge.Data.RadarSweep (
) where ) where
import Flat import Flat
import LinearHelp import LinearHelp ()
import Control.Lens import Control.Lens
import Data.Aeson import Data.Aeson
import Data.Aeson.TH import Data.Aeson.TH
import Dodge.Data.ObjectType import Dodge.Data.ObjectType
import Geometry.Data import Geometry.Data
import TH.Derive
import Data.Store
data RadarSweep = RadarSweep data RadarSweep = RadarSweep
{ _rsPos :: Point2 { _rsPos :: Point2
-2
View File
@@ -11,8 +11,6 @@ import Control.Lens
import Data.Aeson import Data.Aeson
import Data.Aeson.TH import Data.Aeson.TH
import Geometry.Data import Geometry.Data
import TH.Derive
import Data.Store
data ShockwaveDirection = OutwardShockwave | InwardShockwave data ShockwaveDirection = OutwardShockwave | InwardShockwave
deriving (Eq, Ord, Show, Read, Generic, Flat) deriving (Eq, Ord, Show, Read, Generic, Flat)
-2
View File
@@ -9,8 +9,6 @@ import Flat
import Data.Aeson import Data.Aeson
import Data.Aeson.TH import Data.Aeson.TH
import Dodge.Data.Material import Dodge.Data.Material
import TH.Derive
import Data.Store
data SoundOrigin data SoundOrigin
= InventorySound = InventorySound
+1 -3
View File
@@ -6,15 +6,13 @@
module Dodge.Data.Spark where module Dodge.Data.Spark where
import Flat import Flat
import LinearHelp import LinearHelp ()
import Color import Color
import Control.Lens import Control.Lens
import Data.Aeson import Data.Aeson
import Data.Aeson.TH import Data.Aeson.TH
import Dodge.Data.Damage.Type import Dodge.Data.Damage.Type
import Geometry.Data import Geometry.Data
import TH.Derive
import Data.Store
data Spark = Spark data Spark = Spark
{ _skVel :: Point2 { _skVel :: Point2
+1 -3
View File
@@ -6,7 +6,7 @@
module Dodge.Data.Terminal where module Dodge.Data.Terminal where
import Flat import Flat
import LinearHelp import LinearHelp ()
import Color import Color
import Control.Lens import Control.Lens
import Data.Aeson import Data.Aeson
@@ -14,8 +14,6 @@ import Data.Aeson.TH
import qualified Data.Map.Strict as M import qualified Data.Map.Strict as M
import qualified Data.Text as T import qualified Data.Text as T
import Dodge.Data.WorldEffect import Dodge.Data.WorldEffect
import TH.Derive
import Data.Store
data TerminalStatus = TerminalOff | TerminalBusy | TerminalReady data TerminalStatus = TerminalOff | TerminalBusy | TerminalReady
deriving (Eq, Ord, Show, Read, Generic, Flat) deriving (Eq, Ord, Show, Read, Generic, Flat)
+1 -3
View File
@@ -6,15 +6,13 @@
module Dodge.Data.TeslaArc where module Dodge.Data.TeslaArc where
import Flat import Flat
import LinearHelp import LinearHelp ()
import Color import Color
import Control.Lens import Control.Lens
import Data.Aeson import Data.Aeson
import Data.Aeson.TH import Data.Aeson.TH
import Dodge.Data.ArcStep import Dodge.Data.ArcStep
import Geometry.Data import Geometry.Data
import TH.Derive
import Data.Store
data TeslaArc = TeslaArc data TeslaArc = TeslaArc
{ _taPoints :: [Point2] { _taPoints :: [Point2]
+1 -3
View File
@@ -6,13 +6,11 @@
module Dodge.Data.TractorBeam where module Dodge.Data.TractorBeam where
import Flat import Flat
import LinearHelp import LinearHelp ()
import Control.Lens import Control.Lens
import Data.Aeson import Data.Aeson
import Data.Aeson.TH import Data.Aeson.TH
import Geometry.Data import Geometry.Data
import TH.Derive
import Data.Store
data TractorBeam = TractorBeam data TractorBeam = TractorBeam
{ _tbPos :: Point2 { _tbPos :: Point2
-2
View File
@@ -13,8 +13,6 @@ import Dodge.Data.Item
import Dodge.Data.SoundOrigin import Dodge.Data.SoundOrigin
import Geometry.Data import Geometry.Data
import Sound.Data import Sound.Data
import TH.Derive
import Data.Store
data ItCrWdWd data ItCrWdWd
= ItCrWdId = ItCrWdId
+2 -5
View File
@@ -1,4 +1,4 @@
{-# LANGUAGE DeriveGeneric #-} --{-# LANGUAGE DeriveGeneric #-}
{-# LANGUAGE DeriveAnyClass #-} {-# LANGUAGE DeriveAnyClass #-}
{-# LANGUAGE DeriveGeneric #-} {-# LANGUAGE DeriveGeneric #-}
{-# LANGUAGE StrictData #-} {-# LANGUAGE StrictData #-}
@@ -10,11 +10,8 @@ module Dodge.GameRoom where
import Flat import Flat
import Control.Lens import Control.Lens
import Data.Aeson import Data.Aeson
import Data.Store
import GHC.Generics
import Geometry import Geometry
import LinearHelp import LinearHelp ()
import TH.Derive
data GameRoom = GameRoom data GameRoom = GameRoom
{ _grViewpoints :: [Point2] { _grViewpoints :: [Point2]
+1 -1
View File
@@ -245,7 +245,7 @@ farWallDistDirection p w =
boundPoints $ boundPoints $
S.map f vps S.map f vps
where where
f q = (rotateV (negate $ (w ^. cWorld . cwCam . cwcRot)) . (-.- p)) (foldl' findPoint q (wls q)) f q = (rotateV (negate (w ^. cWorld . cwCam . cwcRot)) . (-.- p)) (foldl' findPoint q (wls q))
wls q = filter wlIsOpaque $ wlsNearSeg p q w wls q = filter wlIsOpaque $ wlsNearSeg p q w
findPoint q = fromMaybe q . uncurry (intersectSegSeg p q) . _wlLine findPoint q = fromMaybe q . uncurry (intersectSegSeg p q) . _wlLine
vps = streamViewpoints p w vps = streamViewpoints p w
+2 -1
View File
@@ -1,9 +1,10 @@
{-# LANGUAGE DeriveAnyClass #-} {-# LANGUAGE DeriveAnyClass #-}
{-# LANGUAGE DeriveGeneric #-} {-# LANGUAGE DeriveGeneric #-}
{-# LANGUAGE StandaloneDeriving #-} {-# LANGUAGE StandaloneDeriving #-}
{-# OPTIONS_GHC -fno-warn-orphans #-}
module IntSetHelp ( module IntSetHelp (
module IntSetHelp, --module IntSetHelp,
module Data.IntSet, module Data.IntSet,
) where ) where
+2 -1
View File
@@ -1,6 +1,7 @@
{-# LANGUAGE DeriveGeneric #-} --{-# LANGUAGE DeriveGeneric #-}
{-# LANGUAGE DeriveAnyClass #-} {-# LANGUAGE DeriveAnyClass #-}
{-# LANGUAGE StandaloneDeriving #-} {-# LANGUAGE StandaloneDeriving #-}
{-# OPTIONS_GHC -fno-warn-orphans #-}
module LinearHelp where module LinearHelp where
import Flat import Flat
-3
View File
@@ -8,10 +8,7 @@ module MaybeHelp where
import Control.Lens import Control.Lens
import Data.Aeson import Data.Aeson
import Data.Store
import Flat import Flat
import GHC.Generics
import TH.Derive
data Maybe' a = Just' {__Just' :: a} | Nothing' data Maybe' a = Just' {__Just' :: a} | Nothing'
deriving (Eq, Ord, Show, Read, Generic, Flat) deriving (Eq, Ord, Show, Read, Generic, Flat)
+1 -3
View File
@@ -6,14 +6,12 @@
module Picture.Data where module Picture.Data where
import Flat import Flat
import LinearHelp import LinearHelp ()
import Control.Lens import Control.Lens
import Data.Aeson import Data.Aeson
import Data.Aeson.TH import Data.Aeson.TH
import Geometry.Data import Geometry.Data
import Streaming import Streaming
import TH.Derive
import Data.Store
data Verx = Verx data Verx = Verx
{ _vxPos :: !Point3 { _vxPos :: !Point3
+3 -3
View File
@@ -1,7 +1,7 @@
{-# LANGUAGE DeriveAnyClass #-} {-# LANGUAGE DeriveAnyClass #-}
{-# LANGUAGE DeriveGeneric #-} --{-# LANGUAGE DeriveGeneric #-}
{-# LANGUAGE StandaloneDeriving #-} {-# LANGUAGE StandaloneDeriving #-}
{-# LANGUAGE TemplateHaskell #-} --{-# LANGUAGE TemplateHaskell #-}
{-# OPTIONS_GHC -fno-warn-orphans #-} {-# OPTIONS_GHC -fno-warn-orphans #-}
{- | {- |
@@ -20,7 +20,7 @@ import Geometry.Data
import Geometry.Vector3D import Geometry.Vector3D
import Linear.Quaternion import Linear.Quaternion
import qualified Linear.Quaternion as Q import qualified Linear.Quaternion as Q
import LinearHelp import LinearHelp ()
instance ToJSON a => ToJSON (Q.Quaternion a) where instance ToJSON a => ToJSON (Q.Quaternion a) where
toEncoding = genericToEncoding defaultOptions toEncoding = genericToEncoding defaultOptions
+4 -5
View File
@@ -10,13 +10,10 @@ module Shape.Data where
import Control.Lens import Control.Lens
import Data.Aeson import Data.Aeson
import Data.Store
import Flat import Flat
import GHC.Generics
import Geometry.Data import Geometry.Data
import LinearHelp import LinearHelp ()
import Streaming import Streaming
import TH.Derive
type Shape' = Stream (Of ShapeObj) IO () type Shape' = Stream (Of ShapeObj) IO ()
@@ -40,7 +37,9 @@ instance ToJSON ShapeObj where
instance FromJSON ShapeObj instance FromJSON ShapeObj
newtype ShapeType = TopPrism Int newtype ShapeType = TopPrism Int
deriving (Eq, Ord, Show, Read, Generic, Flat) deriving newtype (Eq, Ord, Show, Read)
deriving stock Generic
deriving anyclass Flat
instance ToJSON ShapeType where instance ToJSON ShapeType where
toEncoding = genericToEncoding defaultOptions toEncoding = genericToEncoding defaultOptions
+1 -3
View File
@@ -6,9 +6,7 @@
module Sound.Data where module Sound.Data where
import Flat import Flat
import TH.Derive import LinearHelp ()
import Data.Store
import LinearHelp
import Control.Lens import Control.Lens
import Data.Aeson import Data.Aeson
import Data.Aeson.TH import Data.Aeson.TH