Comment out DeriveAnyClass extensions

This commit is contained in:
2025-10-19 21:50:43 +01:00
parent b8f6a29e28
commit 2056d8ba0e
91 changed files with 356 additions and 359 deletions
+1 -1
View File
@@ -1,4 +1,4 @@
{-# LANGUAGE DeriveAnyClass #-}
--{-# LANGUAGE DeriveAnyClass #-}
{-# LANGUAGE DeriveGeneric #-}
{-# LANGUAGE StrictData #-}
--{-# LANGUAGE DeriveGeneric #-}
+41 -64
View File
@@ -3,7 +3,6 @@
-- | Actions performed by creatures within the world
module Dodge.Creature.Action (
performActions,
dropExcept,
dropItem,
blinkActionMousePos,
blinkActionFail,
@@ -13,7 +12,6 @@ module Dodge.Creature.Action (
import Control.Applicative
import Control.Monad
import Data.Bifunctor
import Data.Foldable
import Data.Maybe
import Dodge.Base
@@ -35,6 +33,8 @@ import LensHelp
import Linear
import NewInt
-- it is desirable to be able to determine when an action is finished,
-- so that DoActionThen and the like are easy to define
performActions :: Int -> World -> World
performActions cid w =
foldl'
@@ -45,59 +45,13 @@ performActions cid w =
cr = w ^?! cWorld . lWorld . creatures . ix cid
(iss, mayas) = foldMap (performAction cr w) $ cr ^. crActionPlan . apAction
type OutAction = ([Impulse], [Action])
type ActionUpdate = ([Impulse], [Action])
performAimAt :: Creature -> World -> Int -> Point2 -> OutAction
performAimAt cr w tcid p = ([TurnToward tpos aimSp], [AimAt tcid tpos])
where
cdir = _crDir cr
cpos = cr ^. crPos . _xy
canSee' = canSee (_crID cr) tcid w
aimSp = case crMvType cr ^? mvAimSpeed of
Just f -> doFloatFloat f $ safeAngleVV (unitVectorAtAngle cdir) (tpos - cpos)
Nothing -> error "creature without aiming type"
tpos
| canSee' = w ^?! cWorld . lWorld . creatures . ix tcid . crPos . _xy
| otherwise = p
performPathTo :: Creature -> World -> Point2 -> OutAction
performPathTo cr w p
| dist cpos p <= crRad (cr ^. crType) = ([], [])
| isWalkable cpos p w =
( [MvTurnToward 0 cpos p p, MvForward, RandomTurn jit]
, [PathTo p]
)
| otherwise = case pointTowardsImpulse cpos p w of
Just q ->
(
[ MvTurnToward 1 cpos p q
, MvForward
, RandomTurn jit
]
, [PathTo p]
)
_ -> ([ChangeStrategy Flee], [])
where
cpos = cr ^. crPos . _xy
jit = _mvTurnJit $ crMvType cr
performTurnToA :: Creature -> Point2 -> OutAction
performTurnToA cr p
| angleVV cdirv dirv < 0.1 = ([], [])
| otherwise = ([MvTurnToward 2 p p p, RandomTurn jit], [TurnToPoint p])
where
cpos = cr ^. crPos . _xy
cdirv = unitVectorAtAngle (_crDir cr)
dirv = p -.- cpos
jit = _mvTurnJit $ crMvType cr
{- | Performing an action on a frame creates an OutAction:
adds impulses and updates or deletes the action itself.
{- | Performing an action on a frame creates an ActionUpdate:
gives impulses and updates/deletes the action itself.
-}
performAction :: Creature -> World -> Action -> OutAction
performAction :: Creature -> World -> Action -> ActionUpdate
performAction cr w ac = case ac of
ActionNothing -> ([], mempty)
LabelAction str subAc -> second (fmap (LabelAction str)) $ performAction cr w subAc
AimAt tcid p -> performAimAt cr w tcid p
WaitThen 0 newAc -> ([], [newAc])
WaitThen t newAc -> ([], [WaitThen (t -1) newAc])
@@ -145,15 +99,44 @@ performAction cr w ac = case ac of
(imps, _) -> (imps, [DoReplicatePartial startac (t -1) startac])
NoAction -> ([], mempty)
performAimAt :: Creature -> World -> Int -> Point2 -> ActionUpdate
performAimAt cr w tcid p = ([TurnToward tpos aimSp], [AimAt tcid tpos])
where
cdir = _crDir cr
cpos = cr ^. crPos . _xy
canSee' = canSee (_crID cr) tcid w
aimSp = case crMvType cr ^? mvAimSpeed of
Just f -> doFloatFloat f $ safeAngleVV (unitVectorAtAngle cdir) (tpos - cpos)
Nothing -> error "creature without aiming type"
tpos
| canSee' = w ^?! cWorld . lWorld . creatures . ix tcid . crPos . _xy
| otherwise = p
performPathTo :: Creature -> World -> Point2 -> ActionUpdate
performPathTo cr w p
| dist cpos p <= crRad (cr ^. crType) = mempty
| isWalkable cpos p w = gotowards p
| otherwise = case pointTowardsImpulse cpos p w of
Just q -> gotowards q
_ -> ([ChangeStrategy Flee], [])
where
gotowards q = ( [MvTurnToward q, MvForward, RandomTurn jit] , [PathTo p])
cpos = cr ^. crPos . _xy
jit = _mvTurnJit $ crMvType cr
performTurnToA :: Creature -> Point2 -> ActionUpdate
performTurnToA cr p
| angleVV cdirv dirv < 0.1 = mempty
| otherwise = ([MvTurnToward p, RandomTurn jit], [TurnToPoint p])
where
cpos = cr ^. crPos . _xy
cdirv = unitVectorAtAngle (_crDir cr)
dirv = p -.- cpos
jit = _mvTurnJit $ crMvType cr
--setMinInvSize :: Int -> Creature -> World -> World
--setMinInvSize n cr = cWorld . lWorld . creatures . ix (_crID cr) . crInvCapacity .~ n
---- maybe this should be removed...
--stripNoItems :: Creature -> World -> World
--stripNoItems cr =
-- organiseInvKeys (_crID cr)
-- . (cWorld . lWorld . creatures . ix (_crID cr) . crInv %~ IM.mapMaybe Just)
--
--organiseInvKeys :: Int -> World -> World
--organiseInvKeys cid w =
-- w & cWorld . lWorld . creatures . ix cid
@@ -167,12 +150,6 @@ performAction cr w ac = case ac of
-- newSelKey = fromMaybe 0 $ findIndex ((== crSel cr) . fst) pairs
-- newInv = IM.fromAscList $ zip [0 ..] $ map snd pairs
dropExcept :: Creature -> Int -> World -> World
dropExcept cr invid w =
foldr (dropItem cr) w . IM.keys $
-- invid `IM.delete` _crInv cr
invid `IM.delete` _unNIntMap (_crInv cr)
-- why not a cid (Int)?
dropItem :: Creature -> Int -> World -> World
dropItem cr invid w' =
+1 -1
View File
@@ -56,7 +56,7 @@ followImpulse cid w = \case
tcr <- w ^? cWorld . lWorld . creatures . ix i
return $ followImpulse cid w (doCrImp f tcr)
MvForward -> crup $ crMvForward speed (w ^. cWorld . lWorld)
MvTurnToward _ _ _ p ->
MvTurnToward p ->
crup $
creatureTurnToward p (turnRad $ safeAngleVV (p -.- cpos) (unitVectorAtAngle cdir))
where
+9 -30
View File
@@ -1,5 +1,5 @@
{-# LANGUAGE DeriveGeneric #-}
{-# LANGUAGE DeriveAnyClass #-}
--{-# LANGUAGE DeriveAnyClass #-}
{-# LANGUAGE StrictData #-}
{-# LANGUAGE TemplateHaskell #-}
@@ -32,7 +32,7 @@ data Impulse
| RandomTurn Float
| RandomImpulse RandImpulse -- (State StdGen Impulse)
| TurnToward Point2 Float
| MvTurnToward Int Point2 Point2 Point2 -- the Int is just a label
| MvTurnToward Point2
| MvForward
| TurnTo Point2
| UseItem
@@ -65,28 +65,14 @@ infixr 9 `DoReplicate`
infixr 9 `DoImpulsesAlongside`
data Action
= LabelAction
{ _actLabel :: String
, _actAction :: Action
}
| ActionNothing
| AimAt
= AimAt
{ _targetID :: Int
, _targetSeenAt :: Point2
}
| PathTo { _pathToPoint :: Point2 }
| TurnToPoint
{ _turnToPoint :: Point2
}
| -- | PickupItem
-- {_pickupItemID :: Int
-- }
ImpulsesList
{ _impulsesListList :: [[Impulse]]
}
| DoImpulses
{ _doImpulsesList :: [Impulse]
}
| TurnToPoint { _turnToPoint :: Point2 }
| ImpulsesList { _impulsesListList :: [[Impulse]] }
| DoImpulses { _doImpulsesList :: [Impulse] }
| WaitThen
{ _waitThenTimer :: Int
, _waitThenAction :: Action
@@ -114,17 +100,12 @@ data Action
, _doActionWhileThenCondition :: WdCrBl
, _doActionWhileThenThen :: Action
}
| DoActions
{ _doActionsList :: [Action]
}
| DoActions { _doActionsList :: [Action] }
| DoActionThen
{ _doActionThenFirst :: Action
, _doActionThenSecond :: Action
}
| -- | DoGuardActions
-- {_doGuardActionsList :: [( (World, Creature) -> Bool, Action, Maybe Action)]
-- }
DoReplicate
| DoReplicate
{ _doReplicateTimes :: Int
, _doReplicateAction :: Action
}
@@ -133,9 +114,7 @@ data Action
, _doReplicateTimes :: Int
, _doReplicateAction :: Action
}
| LeadTarget
{ _leadTargetBy :: Point2
}
| LeadTarget { _leadTargetBy :: Point2 }
| NoAction
| StartSentinelPost
| UseSelf { _useSelf :: CrAc }
+1 -1
View File
@@ -1,5 +1,5 @@
{-# LANGUAGE DeriveGeneric #-}
{-# LANGUAGE DeriveAnyClass #-}
--{-# LANGUAGE DeriveAnyClass #-}
{-# LANGUAGE StrictData #-}
{-# LANGUAGE TemplateHaskell #-}
+1 -1
View File
@@ -1,5 +1,5 @@
{-# LANGUAGE DeriveGeneric #-}
{-# LANGUAGE DeriveAnyClass #-}
--{-# LANGUAGE DeriveAnyClass #-}
{-# LANGUAGE StrictData #-}
{-# LANGUAGE TemplateHaskell #-}
+1 -1
View File
@@ -1,5 +1,5 @@
{-# LANGUAGE DeriveGeneric #-}
{-# LANGUAGE DeriveAnyClass #-}
--{-# LANGUAGE DeriveAnyClass #-}
{-# LANGUAGE StrictData #-}
{-# LANGUAGE TemplateHaskell #-}
+1 -1
View File
@@ -1,4 +1,4 @@
{-# LANGUAGE DeriveAnyClass #-}
--{-# LANGUAGE DeriveAnyClass #-}
{-# LANGUAGE DeriveGeneric #-}
{-# LANGUAGE StrictData #-}
{-# LANGUAGE TemplateHaskell #-}
+1 -1
View File
@@ -1,5 +1,5 @@
{-# LANGUAGE DeriveGeneric #-}
{-# LANGUAGE DeriveAnyClass #-}
--{-# LANGUAGE DeriveAnyClass #-}
{-# LANGUAGE StrictData #-}
{-# LANGUAGE TemplateHaskell #-}
+1 -1
View File
@@ -1,5 +1,5 @@
{-# LANGUAGE DeriveGeneric #-}
{-# LANGUAGE DeriveAnyClass #-}
--{-# LANGUAGE DeriveAnyClass #-}
{-# LANGUAGE StrictData #-}
{-# LANGUAGE TemplateHaskell #-}
+1 -1
View File
@@ -1,4 +1,4 @@
{-# LANGUAGE DeriveAnyClass #-}
--{-# LANGUAGE DeriveAnyClass #-}
{-# LANGUAGE DeriveGeneric #-}
{-# LANGUAGE StrictData #-}
{-# LANGUAGE TemplateHaskell #-}
+1 -1
View File
@@ -1,4 +1,4 @@
{-# LANGUAGE DeriveAnyClass #-}
--{-# LANGUAGE DeriveAnyClass #-}
{-# LANGUAGE DeriveGeneric #-}
{-# LANGUAGE StrictData #-}
{-# LANGUAGE TemplateHaskell #-}
+5 -1
View File
@@ -1,4 +1,4 @@
{-# LANGUAGE DeriveAnyClass #-}
--{-# LANGUAGE DeriveAnyClass #-}
{-# LANGUAGE DeriveGeneric #-}
{-# LANGUAGE StrictData #-}
{-# LANGUAGE TemplateHaskell #-}
@@ -19,6 +19,8 @@ import Dodge.Data.LWorld
import Dodge.GameRoom
import Geometry.ConvexPoly
import Geometry.Data
import qualified Data.Vector as V
import qualified Data.Vector.Unboxed as UV
data CWorld = CWorld
{ _lWorld :: LWorld
@@ -26,6 +28,8 @@ data CWorld = CWorld
, _cClock :: Int
, _cwTiles :: [Tile]
, _pathGraph :: Gr Point2 PathEdge
, _incGraph :: V.Vector [(Int,SimpleEdge)]
, _incNode :: UV.Vector Point2
, _numberFloorVerxs :: Int
, _chasms :: [[Point2]]
, _numberChasmVerxs :: Int
+1 -1
View File
@@ -1,4 +1,4 @@
{-# LANGUAGE DeriveAnyClass #-}
--{-# LANGUAGE DeriveAnyClass #-}
{-# LANGUAGE DeriveGeneric #-}
{-# LANGUAGE StrictData #-}
{-# LANGUAGE TemplateHaskell #-}
+1 -1
View File
@@ -1,5 +1,5 @@
{-# LANGUAGE DeriveGeneric #-}
{-# LANGUAGE DeriveAnyClass #-}
--{-# LANGUAGE DeriveAnyClass #-}
{-# LANGUAGE StrictData #-}
{-# LANGUAGE TemplateHaskell #-}
+1 -1
View File
@@ -1,4 +1,4 @@
{-# LANGUAGE DeriveAnyClass #-}
--{-# LANGUAGE DeriveAnyClass #-}
{-# LANGUAGE DeriveGeneric #-}
{-# LANGUAGE DerivingStrategies #-}
{-# LANGUAGE GeneralizedNewtypeDeriving #-}
+1 -1
View File
@@ -1,5 +1,5 @@
{-# LANGUAGE DeriveGeneric #-}
{-# LANGUAGE DeriveAnyClass #-}
--{-# LANGUAGE DeriveAnyClass #-}
{-# LANGUAGE StrictData #-}
{-# LANGUAGE TemplateHaskell #-}
+1 -1
View File
@@ -1,5 +1,5 @@
{-# LANGUAGE DeriveGeneric #-}
{-# LANGUAGE DeriveAnyClass #-}
--{-# LANGUAGE DeriveAnyClass #-}
{-# LANGUAGE StrictData #-}
{-# LANGUAGE TemplateHaskell #-}
+1 -1
View File
@@ -1,4 +1,4 @@
{-# LANGUAGE DeriveAnyClass #-}
--{-# LANGUAGE DeriveAnyClass #-}
{-# LANGUAGE DeriveGeneric #-}
{-# LANGUAGE ScopedTypeVariables #-}
{-# LANGUAGE StrictData #-}
+1 -1
View File
@@ -1,5 +1,5 @@
{-# LANGUAGE DeriveGeneric #-}
{-# LANGUAGE DeriveAnyClass #-}
--{-# LANGUAGE DeriveAnyClass #-}
{-# LANGUAGE StrictData #-}
{-# LANGUAGE TemplateHaskell #-}
+1 -1
View File
@@ -1,4 +1,4 @@
{-# LANGUAGE DeriveAnyClass #-}
--{-# LANGUAGE DeriveAnyClass #-}
{-# LANGUAGE DeriveGeneric #-}
{-# LANGUAGE StrictData #-}
{-# LANGUAGE TemplateHaskell #-}
+1 -1
View File
@@ -1,5 +1,5 @@
{-# LANGUAGE DeriveGeneric #-}
{-# LANGUAGE DeriveAnyClass #-}
--{-# LANGUAGE DeriveAnyClass #-}
{-# LANGUAGE StrictData #-}
{-# LANGUAGE TemplateHaskell #-}
+1 -1
View File
@@ -1,5 +1,5 @@
{-# LANGUAGE DeriveGeneric #-}
{-# LANGUAGE DeriveAnyClass #-}
--{-# LANGUAGE DeriveAnyClass #-}
{-# LANGUAGE StrictData #-}
{-# LANGUAGE TemplateHaskell #-}
+1 -1
View File
@@ -1,5 +1,5 @@
{-# LANGUAGE DeriveGeneric #-}
{-# LANGUAGE DeriveAnyClass #-}
--{-# LANGUAGE DeriveAnyClass #-}
{-# LANGUAGE StrictData #-}
{-# LANGUAGE TemplateHaskell #-}
+1 -1
View File
@@ -1,5 +1,5 @@
{-# LANGUAGE DeriveGeneric #-}
{-# LANGUAGE DeriveAnyClass #-}
--{-# LANGUAGE DeriveAnyClass #-}
{-# LANGUAGE StrictData #-}
{-# LANGUAGE TemplateHaskell #-}
+1 -1
View File
@@ -1,4 +1,4 @@
{-# LANGUAGE DeriveAnyClass #-}
--{-# LANGUAGE DeriveAnyClass #-}
{-# LANGUAGE DeriveGeneric #-}
{-# LANGUAGE StrictData #-}
{-# LANGUAGE TemplateHaskell #-}
+1 -1
View File
@@ -1,4 +1,4 @@
{-# LANGUAGE DeriveAnyClass #-}
--{-# LANGUAGE DeriveAnyClass #-}
{-# LANGUAGE DeriveGeneric #-}
{-# LANGUAGE StrictData #-}
{-# LANGUAGE TemplateHaskell #-}
+1 -1
View File
@@ -1,5 +1,5 @@
{-# LANGUAGE DeriveGeneric #-}
{-# LANGUAGE DeriveAnyClass #-}
--{-# LANGUAGE DeriveAnyClass #-}
{-# LANGUAGE StrictData #-}
{-# LANGUAGE TemplateHaskell #-}
+1 -1
View File
@@ -1,5 +1,5 @@
{-# LANGUAGE LambdaCase #-}
{-# LANGUAGE DeriveAnyClass #-}
--{-# LANGUAGE DeriveAnyClass #-}
{-# LANGUAGE DeriveGeneric #-}
--{-# LANGUAGE StrictData #-}
{-# LANGUAGE TemplateHaskell #-}
+1 -1
View File
@@ -1,4 +1,4 @@
{-# LANGUAGE DeriveAnyClass #-}
--{-# LANGUAGE DeriveAnyClass #-}
{-# LANGUAGE DeriveGeneric #-}
{-# LANGUAGE StrictData #-}
{-# LANGUAGE TemplateHaskell #-}
+1 -1
View File
@@ -1,4 +1,4 @@
{-# LANGUAGE DeriveAnyClass #-}
--{-# LANGUAGE DeriveAnyClass #-}
{-# LANGUAGE DeriveGeneric #-}
{-# LANGUAGE StrictData #-}
{-# LANGUAGE TemplateHaskell #-}
+1 -1
View File
@@ -1,5 +1,5 @@
{-# LANGUAGE DeriveGeneric #-}
{-# LANGUAGE DeriveAnyClass #-}
--{-# LANGUAGE DeriveAnyClass #-}
{-# LANGUAGE StrictData #-}
{-# LANGUAGE TemplateHaskell #-}
+1 -1
View File
@@ -1,5 +1,5 @@
{-# LANGUAGE DeriveGeneric #-}
{-# LANGUAGE DeriveAnyClass #-}
--{-# LANGUAGE DeriveAnyClass #-}
{-# LANGUAGE StrictData #-}
{-# LANGUAGE TemplateHaskell #-}
+1 -1
View File
@@ -1,5 +1,5 @@
{-# LANGUAGE DeriveGeneric #-}
{-# LANGUAGE DeriveAnyClass #-}
--{-# LANGUAGE DeriveAnyClass #-}
{-# LANGUAGE StrictData #-}
{-# LANGUAGE TemplateHaskell #-}
+1 -1
View File
@@ -1,5 +1,5 @@
{-# LANGUAGE DeriveGeneric #-}
{-# LANGUAGE DeriveAnyClass #-}
--{-# LANGUAGE DeriveAnyClass #-}
{-# LANGUAGE StrictData #-}
{-# LANGUAGE TemplateHaskell #-}
+1 -1
View File
@@ -1,5 +1,5 @@
{-# LANGUAGE DeriveGeneric #-}
{-# LANGUAGE DeriveAnyClass #-}
--{-# LANGUAGE DeriveAnyClass #-}
{-# LANGUAGE StrictData #-}
{-# LANGUAGE TemplateHaskell #-}
module Dodge.Data.GenFloat
+1 -1
View File
@@ -1,5 +1,5 @@
{-# LANGUAGE DeriveGeneric #-}
{-# LANGUAGE DeriveAnyClass #-}
--{-# LANGUAGE DeriveAnyClass #-}
{-# LANGUAGE StrictData #-}
{-# LANGUAGE TemplateHaskell #-}
+1 -1
View File
@@ -1,5 +1,5 @@
{-# LANGUAGE DeriveGeneric #-}
{-# LANGUAGE DeriveAnyClass #-}
--{-# LANGUAGE DeriveAnyClass #-}
{-# LANGUAGE StrictData #-}
{-# LANGUAGE TemplateHaskell #-}
+1 -1
View File
@@ -1,4 +1,4 @@
{-# LANGUAGE DeriveAnyClass #-}
--{-# LANGUAGE DeriveAnyClass #-}
{-# LANGUAGE DeriveGeneric #-}
{-# LANGUAGE StrictData #-}
{-# LANGUAGE TemplateHaskell #-}
+1 -1
View File
@@ -1,4 +1,4 @@
{-# LANGUAGE DeriveAnyClass #-}
--{-# LANGUAGE DeriveAnyClass #-}
{-# LANGUAGE DeriveGeneric #-}
{-# LANGUAGE StrictData #-}
{-# LANGUAGE TemplateHaskell #-}
+1 -1
View File
@@ -1,4 +1,4 @@
{-# LANGUAGE DeriveAnyClass #-}
--{-# LANGUAGE DeriveAnyClass #-}
{-# LANGUAGE StrictData #-}
{-# LANGUAGE TemplateHaskell #-}
+1 -1
View File
@@ -1,5 +1,5 @@
{-# LANGUAGE DeriveGeneric #-}
{-# LANGUAGE DeriveAnyClass #-}
--{-# LANGUAGE DeriveAnyClass #-}
{-# LANGUAGE StrictData #-}
{-# LANGUAGE TemplateHaskell #-}
{-# LANGUAGE EmptyDataDeriving #-}
+1 -1
View File
@@ -1,5 +1,5 @@
{-# LANGUAGE DeriveGeneric #-}
{-# LANGUAGE DeriveAnyClass #-}
--{-# LANGUAGE DeriveAnyClass #-}
{-# LANGUAGE StrictData #-}
{-# LANGUAGE TemplateHaskell #-}
+1 -1
View File
@@ -1,4 +1,4 @@
{-# LANGUAGE DeriveAnyClass #-}
--{-# LANGUAGE DeriveAnyClass #-}
{-# LANGUAGE DeriveGeneric #-}
{-# LANGUAGE StrictData #-}
{-# LANGUAGE TemplateHaskell #-}
+1 -1
View File
@@ -1,5 +1,5 @@
{-# LANGUAGE DeriveGeneric #-}
{-# LANGUAGE DeriveAnyClass #-}
--{-# LANGUAGE DeriveAnyClass #-}
{-# LANGUAGE StrictData #-}
{-# LANGUAGE TemplateHaskell #-}
+1 -1
View File
@@ -1,4 +1,4 @@
{-# LANGUAGE DeriveAnyClass #-}
--{-# LANGUAGE DeriveAnyClass #-}
{-# LANGUAGE DeriveGeneric #-}
{-# LANGUAGE StrictData #-}
{-# LANGUAGE TemplateHaskell #-}
+1 -1
View File
@@ -1,4 +1,4 @@
{-# LANGUAGE DeriveAnyClass #-}
--{-# LANGUAGE DeriveAnyClass #-}
{-# LANGUAGE DeriveGeneric #-}
{-# LANGUAGE StrictData #-}
{-# LANGUAGE TemplateHaskell #-}
@@ -1,5 +1,5 @@
{-# LANGUAGE DeriveGeneric #-}
{-# LANGUAGE DeriveAnyClass #-}
--{-# LANGUAGE DeriveAnyClass #-}
{-# LANGUAGE StrictData #-}
{-# LANGUAGE TemplateHaskell #-}
+1 -1
View File
@@ -1,4 +1,4 @@
{-# LANGUAGE DeriveAnyClass #-}
--{-# LANGUAGE DeriveAnyClass #-}
{-# LANGUAGE DeriveGeneric #-}
{-# LANGUAGE StrictData #-}
{-# LANGUAGE TemplateHaskell #-}
+1 -1
View File
@@ -1,5 +1,5 @@
{-# LANGUAGE DeriveGeneric #-}
{-# LANGUAGE DeriveAnyClass #-}
--{-# LANGUAGE DeriveAnyClass #-}
{-# LANGUAGE StrictData #-}
{-# LANGUAGE TemplateHaskell #-}
+1 -1
View File
@@ -1,4 +1,4 @@
{-# LANGUAGE DeriveAnyClass #-}
--{-# LANGUAGE DeriveAnyClass #-}
{-# LANGUAGE DeriveGeneric #-}
{-# LANGUAGE StrictData #-}
{-# LANGUAGE TemplateHaskell #-}
+1 -1
View File
@@ -1,5 +1,5 @@
{-# LANGUAGE DeriveGeneric #-}
{-# LANGUAGE DeriveAnyClass #-}
--{-# LANGUAGE DeriveAnyClass #-}
{-# LANGUAGE StrictData #-}
{-# LANGUAGE TemplateHaskell #-}
+1 -1
View File
@@ -1,5 +1,5 @@
{-# LANGUAGE DeriveGeneric #-}
{-# LANGUAGE DeriveAnyClass #-}
--{-# LANGUAGE DeriveAnyClass #-}
{-# LANGUAGE StrictData #-}
{-# LANGUAGE TemplateHaskell #-}
+1 -1
View File
@@ -1,4 +1,4 @@
{-# LANGUAGE DeriveAnyClass #-}
--{-# LANGUAGE DeriveAnyClass #-}
{-# LANGUAGE DeriveGeneric #-}
{-# LANGUAGE StrictData #-}
{-# LANGUAGE TemplateHaskell #-}
+1 -1
View File
@@ -1,5 +1,5 @@
{-# LANGUAGE DeriveGeneric #-}
{-# LANGUAGE DeriveAnyClass #-}
--{-# LANGUAGE DeriveAnyClass #-}
{-# LANGUAGE StrictData #-}
{-# LANGUAGE TemplateHaskell #-}
+1 -1
View File
@@ -1,5 +1,5 @@
{-# LANGUAGE DeriveGeneric #-}
{-# LANGUAGE DeriveAnyClass #-}
--{-# LANGUAGE DeriveAnyClass #-}
{-# LANGUAGE StrictData #-}
{-# LANGUAGE TemplateHaskell #-}
+1 -1
View File
@@ -1,5 +1,5 @@
{-# LANGUAGE DeriveGeneric #-}
{-# LANGUAGE DeriveAnyClass #-}
--{-# LANGUAGE DeriveAnyClass #-}
{-# LANGUAGE StrictData #-}
{-# LANGUAGE TemplateHaskell #-}
+1 -1
View File
@@ -1,5 +1,5 @@
{-# LANGUAGE DeriveGeneric #-}
{-# LANGUAGE DeriveAnyClass #-}
--{-# LANGUAGE DeriveAnyClass #-}
{-# LANGUAGE StrictData #-}
{-# LANGUAGE TemplateHaskell #-}
+1 -1
View File
@@ -1,5 +1,5 @@
{-# LANGUAGE DeriveGeneric #-}
{-# LANGUAGE DeriveAnyClass #-}
--{-# LANGUAGE DeriveAnyClass #-}
{-# LANGUAGE StrictData #-}
{-# LANGUAGE TemplateHaskell #-}
+8
View File
@@ -45,6 +45,12 @@ data PathEdge = PathEdge
}
deriving (Eq, Ord, Show, Read) --Generic, Flat)
data SimpleEdge = SimpleEdge
{ _seDist :: Float
, _seObstacles :: Set.Set EdgeObstacle
}
deriving (Eq, Ord, Show, Read) --Generic, Flat)
data EdgeObstacle
= BlockObstacle
| DoorObstacle
@@ -63,8 +69,10 @@ data EdgeObstacle
--makeLenses ''PathGraph
makeLenses ''PathEdge
makeLenses ''PathEdgeNodes
makeLenses ''SimpleEdge
deriveJSON defaultOptions ''EdgeObstacle
deriveJSON defaultOptions ''PathEdge
deriveJSON defaultOptions ''PathEdgeNodes
deriveJSON defaultOptions ''Gr
deriveJSON defaultOptions ''SimpleEdge
--deriveJSON defaultOptions ''PathGraph
+1 -1
View File
@@ -1,5 +1,5 @@
{-# LANGUAGE DeriveGeneric #-}
{-# LANGUAGE DeriveAnyClass #-}
--{-# LANGUAGE DeriveAnyClass #-}
{-# LANGUAGE StrictData #-}
{-# LANGUAGE TemplateHaskell #-}
+1 -1
View File
@@ -1,4 +1,4 @@
{-# LANGUAGE DeriveAnyClass #-}
--{-# LANGUAGE DeriveAnyClass #-}
{-# LANGUAGE DeriveGeneric #-}
{-# LANGUAGE StrictData #-}
{-# LANGUAGE TemplateHaskell #-}
+1 -1
View File
@@ -1,5 +1,5 @@
{-# LANGUAGE DeriveGeneric #-}
{-# LANGUAGE DeriveAnyClass #-}
--{-# LANGUAGE DeriveAnyClass #-}
{-# LANGUAGE StrictData #-}
{-# LANGUAGE TemplateHaskell #-}
+1 -1
View File
@@ -1,5 +1,5 @@
{-# LANGUAGE DeriveGeneric #-}
{-# LANGUAGE DeriveAnyClass #-}
--{-# LANGUAGE DeriveAnyClass #-}
{-# LANGUAGE StrictData #-}
{-# LANGUAGE TemplateHaskell #-}
+1 -1
View File
@@ -1,5 +1,5 @@
{-# LANGUAGE DeriveGeneric #-}
{-# LANGUAGE DeriveAnyClass #-}
--{-# LANGUAGE DeriveAnyClass #-}
{-# LANGUAGE StrictData #-}
{-# LANGUAGE TemplateHaskell #-}
+1 -1
View File
@@ -1,4 +1,4 @@
{-# LANGUAGE DeriveAnyClass #-}
--{-# LANGUAGE DeriveAnyClass #-}
{-# LANGUAGE DeriveGeneric #-}
{-# LANGUAGE StrictData #-}
{-# LANGUAGE TemplateHaskell #-}
+1 -1
View File
@@ -1,5 +1,5 @@
{-# LANGUAGE DeriveGeneric #-}
{-# LANGUAGE DeriveAnyClass #-}
--{-# LANGUAGE DeriveAnyClass #-}
{-# LANGUAGE StrictData #-}
{-# LANGUAGE TemplateHaskell #-}
+1 -1
View File
@@ -1,5 +1,5 @@
{-# LANGUAGE DeriveGeneric #-}
{-# LANGUAGE DeriveAnyClass #-}
--{-# LANGUAGE DeriveAnyClass #-}
{-# LANGUAGE StrictData #-}
{-# LANGUAGE TemplateHaskell #-}
+1 -1
View File
@@ -1,5 +1,5 @@
{-# LANGUAGE DeriveGeneric #-}
{-# LANGUAGE DeriveAnyClass #-}
--{-# LANGUAGE DeriveAnyClass #-}
{-# LANGUAGE StrictData #-}
{-# LANGUAGE TemplateHaskell #-}
+1 -1
View File
@@ -1,5 +1,5 @@
{-# LANGUAGE DeriveGeneric #-}
{-# LANGUAGE DeriveAnyClass #-}
--{-# LANGUAGE DeriveAnyClass #-}
{-# LANGUAGE StrictData #-}
{-# LANGUAGE TemplateHaskell #-}
+1 -1
View File
@@ -1,4 +1,4 @@
{-# LANGUAGE DeriveAnyClass #-}
--{-# LANGUAGE DeriveAnyClass #-}
{-# LANGUAGE DeriveGeneric #-}
{-# LANGUAGE StrictData #-}
{-# LANGUAGE TemplateHaskell #-}
+1 -1
View File
@@ -1,4 +1,4 @@
{-# LANGUAGE DeriveAnyClass #-}
--{-# LANGUAGE DeriveAnyClass #-}
{-# LANGUAGE DeriveGeneric #-}
{-# LANGUAGE StrictData #-}
{-# LANGUAGE TemplateHaskell #-}
+1 -1
View File
@@ -1,5 +1,5 @@
{-# LANGUAGE DeriveGeneric #-}
{-# LANGUAGE DeriveAnyClass #-}
--{-# LANGUAGE DeriveAnyClass #-}
{-# LANGUAGE StrictData #-}
{-# LANGUAGE TemplateHaskell #-}
+1 -1
View File
@@ -1,4 +1,4 @@
{-# LANGUAGE DeriveAnyClass #-}
--{-# LANGUAGE DeriveAnyClass #-}
{-# LANGUAGE DeriveGeneric #-}
{-# LANGUAGE StrictData #-}
{-# LANGUAGE TemplateHaskell #-}
+1 -1
View File
@@ -1,4 +1,4 @@
{-# LANGUAGE DeriveAnyClass #-}
--{-# LANGUAGE DeriveAnyClass #-}
{-# LANGUAGE DeriveGeneric #-}
{-# LANGUAGE StrictData #-}
{-# LANGUAGE TemplateHaskell #-}
+1 -1
View File
@@ -1,5 +1,5 @@
{-# LANGUAGE DeriveGeneric #-}
{-# LANGUAGE DeriveAnyClass #-}
--{-# LANGUAGE DeriveAnyClass #-}
{-# LANGUAGE StrictData #-}
{-# LANGUAGE TemplateHaskell #-}
+2 -1
View File
@@ -1,4 +1,4 @@
{-# LANGUAGE DeriveAnyClass #-}
--{-# LANGUAGE DeriveAnyClass #-}
{-# LANGUAGE DeriveGeneric #-}
{-# LANGUAGE StrictData #-}
{-# LANGUAGE TemplateHaskell #-}
@@ -51,6 +51,7 @@ data World = World
, _wlZoning :: IntMap (IntMap IntSet) -- Zoning IM.IntMap Wall
, _pnZoning :: IntMap (IntMap [(Int, Point2)]) --Zoning IM.IntMap Creature
, _peZoning :: IntMap (IntMap (Set PathEdgeNodes))
, _incNodeZoning :: IntMap (IntMap [(Int, Point2)]) --Zoning IM.IntMap Creature
, _gsZoning :: IntMap (IntMap IntSet)
, _wCam :: Camera
, _unpauseClock :: Int
+1 -1
View File
@@ -1,5 +1,5 @@
{-# LANGUAGE DeriveGeneric #-}
{-# LANGUAGE DeriveAnyClass #-}
--{-# LANGUAGE DeriveAnyClass #-}
{-# LANGUAGE StrictData #-}
{-# LANGUAGE TemplateHaskell #-}
+3
View File
@@ -49,6 +49,7 @@ defaultWorld =
, _wlZoning = mempty
, _pnZoning = mempty
, _peZoning = mempty
, _incNodeZoning = mempty
, _gsZoning = mempty --Zoning IM.empty clZoneSize (zonePos _guPos)
, _unpauseClock = 0
, _coordinates = mempty
@@ -90,6 +91,8 @@ defaultCWorld =
, _numberFloorVerxs = 0
, _chasms = mempty
, _numberChasmVerxs = 0
, _incGraph = mempty
, _incNode = mempty
}
defaultLWorld :: LWorld
+1 -1
View File
@@ -1,5 +1,5 @@
--{-# LANGUAGE DeriveGeneric #-}
{-# LANGUAGE DeriveAnyClass #-}
--{-# LANGUAGE DeriveAnyClass #-}
{-# LANGUAGE DeriveGeneric #-}
{-# LANGUAGE StrictData #-}
{-# LANGUAGE TemplateHaskell #-}
+2
View File
@@ -41,3 +41,5 @@ graphToIncidence :: forall a b . F.Gr a b -> [(a,Int)]
graphToIncidence g = map f $ F.labNodes g
where
f (n,p) = (p,length $ F.neighbors g n)
+5
View File
@@ -5,6 +5,7 @@ module Dodge.Layout (
shuffleRoomPos,
) where
import qualified Data.Vector.Unboxed as UV
import Dodge.Path.Translate
import qualified Control.Foldl as L
import Control.Lens
@@ -45,10 +46,14 @@ generateLevelFromRoomList gr' w =
$ w & cWorld . lWorld . walls .~ wallsFromRooms rs
& cWorld . cwGen . cwgGameRooms .~ gameRoomsFromRooms (IM.elems rs')
& cWorld . pathGraph .~ path
& cWorld . incNode .~ inodes
& cWorld . incGraph .~ igraph
& pnZoning .~ foldl' (flip zonePn) mempty (labNodes path)
& peZoning .~ foldl' (flip zonePe) mempty (map fromEdgeTuple $ labEdges path)
& incNodeZoning .~ UV.ifoldl' (\m i p -> zonePn (i,p) m) mempty inodes
where
(_, path) = pairsToGraph . snapToGrid $ foldMap _rmPath rs
(inodes,igraph) = pairsToIncGraph . snapToGrid $ foldMap _rmPath rs
rs = map doRoomShift $ IM.elems rs'
rs' = mapM shuffleRoomPos gr' & evalState $ _randGen w
+48 -34
View File
@@ -5,30 +5,33 @@ module Dodge.Path (
makePathBetweenPs,
-- , removePathsCrossing
obstructPathsCrossing,
obstructPathsCrossing',
pairsToGraph,
getNodePos,
walkableNodeNear,
bfsNodePoints,
snapToGrid,
pairsToIncGraph,
) where
import Linear
import Data.List (sortOn)
import Data.Set (Set)
import qualified Data.Set as Set
import qualified Data.Vector as V
import qualified Data.Vector.Unboxed as UV
import Control.Lens
import Data.Bifunctor
import Data.Foldable
import Data.Graph.Inductive hiding ((&))
import Data.List (sortOn)
import Data.Map.Strict (Map)
import qualified Data.Map.Strict as M
import Data.Maybe
import Data.Set (Set)
import qualified Data.Set as Set
import Dodge.Base.Collide
import Dodge.Data.World
import Dodge.Zoning.Base
import Dodge.Zoning.Pathing
import Geometry
import Data.Bifunctor
import Linear
import qualified IntMapHelp as IM
getNodePos :: Int -> World -> Maybe Point2
getNodePos i w = (w ^. cWorld . pathGraph) `lab` i
@@ -37,31 +40,31 @@ makePathUsing :: (PathEdge -> Bool) -> Point2 -> Point2 -> World -> Maybe [Int]
makePathUsing t s e w = do
na <- walkableNodeNear w s
nb <- walkableNodeNear w e
sp na nb . second _peDist
. efilter (t . (^. _3)) $ w ^. cWorld . pathGraph
sp na nb . second _peDist . efilter (^. _3 . to t) $ w ^. cWorld . pathGraph
makePathBetween :: Point2 -> Point2 -> World -> Maybe [Int]
makePathBetween = makePathUsing $ not . pathEdgeObstructed
pathEdgeObstructed :: PathEdge -> Bool
pathEdgeObstructed pe = DoorObstacle `Set.member` obs || BlockObstacle `Set.member` obs
|| ChasmObstacle `Set.member` obs
where
obs = _peObstacles pe
pathEdgeObstructed pe =
any
(`Set.member` _peObstacles pe)
[DoorObstacle, BlockObstacle, ChasmObstacle]
walkableNodeNear :: World -> Point2 -> Maybe Int
{-# INLINE walkableNodeNear #-}
walkableNodeNear w p = fmap fst . find (flip (isWalkable p) w . snd) $ nodesNear
where
--nodesNear = zonesExtract (w ^. pnZoning) $ zonesAroundPoint pnZoneSize p
nodesNear = zonesExtract (w ^. pnZoning) . snailAround $ zoneOfPoint pnZoneSize p
snailAround :: Int2 -> [Int2]
snailAround x = (x+) <$> smallSnailInt2
snailAround x = (x +) <$> smallSnailInt2
smallSnailInt2 :: [Int2]
smallSnailInt2 = sortOn (distance (V2 0 (0::Float)) . fmap fromIntegral)
[V2 x y | x <-[-2..2], y <-[-2..2]]
smallSnailInt2 =
sortOn
(distance (V2 0 (0 :: Float)) . fmap fromIntegral)
[V2 x y | x <- [-2 .. 2], y <- [-2 .. 2]]
makePathBetweenPs :: Point2 -> Point2 -> World -> Maybe [Point2]
makePathBetweenPs a b w = mapMaybe (lab $ w ^. cWorld . pathGraph) <$> makePathBetween a b w
@@ -72,8 +75,11 @@ bfsNodePoints n w = mapMaybe (lab g) $ bfs n g
g = w ^. cWorld . pathGraph
pointTowardsImpulse :: Point2 -> Point2 -> World -> Maybe Point2
pointTowardsImpulse a b w = (find (flip (isWalkable a) w) . reverse) =<<
(makePathBetweenPs a b w <&> (<>[b]))
pointTowardsImpulse a b w =
-- (find (flip (isWalkable a) w) . reverse)
-- =<< (makePathBetweenPs a b w <&> (<> [b]))
(find (flip (isWalkable a) w) . reverse)
=<< makePathBetweenPs a b w -- <&> (<> [b]))
------ continues a walk from a list of points, without repetitions
------ supposes that the list is non-empty
@@ -119,7 +125,21 @@ pointTowardsImpulse a b w = (find (flip (isWalkable a) w) . reverse) =<<
-- _ -> return $ Just $ ns !! i
--
pairsToGraph :: Set.Set (Point2, Point2) -> (Map (V2 Point2) PathEdgeNodes, Gr Point2 PathEdge)
pairsToIncGraph :: Set.Set (Point2,Point2)
-> (UV.Vector Point2, V.Vector [(Int,SimpleEdge)])
pairsToIncGraph pairs = (inodes,incgraph)
where
incgraph = V.generate (length im) (\i -> im ^?! ix i)
im = IM.fromListWith (<>) . fmap toedge $ Set.toList pairs
toedge (x,y) = (pstons ^?! ix x . _head
, [(pstons ^?! ix y . _head, SimpleEdge (distance x y) mempty)])
pstons = IM.invertIntMap . IM.fromList $ zip [0..] ps
inodes = UV.generate (length ps) (ps !!)
ps = Set.toList $ Set.map fst pairs <> Set.map snd pairs
pairsToGraph ::
Set.Set (Point2, Point2) ->
(Map (V2 Point2) PathEdgeNodes, Gr Point2 PathEdge)
pairsToGraph pairs = addEdges nodemap gr pairs
where
(nodemap, _, gr) = addNodes $ Set.toList $ Set.map fst pairs <> Set.map snd pairs
@@ -147,31 +167,25 @@ addEdges nodemap gr = foldl' f (mempty, gr)
theedgedata = PathEdgeNodes (g a) (g b) (PathEdge a b (dist a b) mempty)
g a = nodemap M.! a
obstructPathsCrossing :: EdgeObstacle -> Point2 -> Point2 -> World
-> (World, Set PathEdgeNodes)
obstructPathsCrossing ::
EdgeObstacle ->
Point2 ->
Point2 ->
World ->
(World, Set PathEdgeNodes)
obstructPathsCrossing obstacletype sp' ep w =
( w & cWorld . pathGraph %~ updateedges
, es
)
where
es = Set.filter edgecrosses $ pesNearSeg sp' ep w
edgecrosses (PathEdgeNodes _ _ pe) = isJust $ intersectSegSeg sp' ep (_peStart pe) (_peEnd pe)
edgecrosses (PathEdgeNodes _ _ pe) =
isJust $ intersectSegSeg sp' ep (_peStart pe) (_peEnd pe)
updateedges gr = foldl' updateedge gr es
updateedge gr (PathEdgeNodes x y pe) =
insEdge (x, y, pe & peObstacles . at obstacletype ?~ ()) $ delEdge (x, y) gr
obstructPathsCrossing' :: EdgeObstacle -> Point2 -> Point2 -> World
-> World
obstructPathsCrossing' obstacletype sp' ep w =
w & cWorld . pathGraph %~ updateedges
where
es = Set.filter edgecrosses $ pesNearSeg sp' ep w
edgecrosses (PathEdgeNodes _ _ pe) = isJust $ intersectSegSeg sp' ep (_peStart pe) (_peEnd pe)
updateedges gr = foldl' updateedge gr es
updateedge gr (PathEdgeNodes x y pe) =
insEdge (x, y, pe & peObstacles . at obstacletype ?~ ()) $ delEdge (x, y) gr
snapToGrid :: Set (Point2,Point2) -> Set (Point2, Point2)
snapToGrid :: Set (Point2, Point2) -> Set (Point2, Point2)
snapToGrid = Set.map (over each (fmap (fromIntegral . f)))
where
f :: Float -> Int
+9 -5
View File
@@ -1,13 +1,13 @@
module Dodge.Zoning.Pathing where
import Data.Foldable
import Dodge.Data.World
import Dodge.Zoning.Base
import Geometry
import qualified IntMapHelp as IM
import Data.Set (Set)
import qualified Data.Set as Set
import Dodge.Data.World
import Dodge.Zoning.Base
import Dodge.Zoning.Common
import Geometry
import qualified IntMapHelp as IM
pnsNearPoint :: Point2 -> World -> [(Int, Point2)]
pnsNearPoint = nearPoint pnZoneSize _pnZoning
@@ -32,6 +32,7 @@ zonePn pn = zoneMonoid (zoneOfPn pn) [pn]
pesNearPoint :: Point2 -> World -> Set PathEdgeNodes
pesNearPoint = nearPoint peZoneSize _peZoning
--pesNearPoint p w = zoneExtract (zoneOfPoint peZoneSize p) (w ^. cWorld . lWorld . peZoning)
pesNearSeg :: Point2 -> Point2 -> World -> Set PathEdgeNodes
@@ -49,7 +50,10 @@ peZoneSize = 50
zoneOfPe :: PathEdgeNodes -> [Int2]
zoneOfPe (PathEdgeNodes _ _ pe) = zoneOfSeg peZoneSize (_peStart pe) (_peEnd pe)
zonePe :: PathEdgeNodes -> IM.IntMap (IM.IntMap (Set PathEdgeNodes)) -> IM.IntMap (IM.IntMap (Set PathEdgeNodes))
zonePe ::
PathEdgeNodes ->
IM.IntMap (IM.IntMap (Set PathEdgeNodes)) ->
IM.IntMap (IM.IntMap (Set PathEdgeNodes))
zonePe pe im = foldl' f im (zoneOfPe pe)
where
f im' i2 = zoneMonoid i2 (Set.singleton pe) im'
+1 -1
View File
@@ -1,5 +1,5 @@
{-# LANGUAGE BangPatterns #-}
{-# LANGUAGE DeriveAnyClass #-}
--{-# LANGUAGE DeriveAnyClass #-}
{-# LANGUAGE DeriveGeneric #-}
{-# LANGUAGE TemplateHaskell #-}
+1 -1
View File
@@ -1,4 +1,4 @@
{-# LANGUAGE DeriveAnyClass #-}
--{-# LANGUAGE DeriveAnyClass #-}
{-# LANGUAGE DeriveGeneric #-}
{-# LANGUAGE ScopedTypeVariables #-}
{-# LANGUAGE StrictData #-}
+1 -1
View File
@@ -1,5 +1,5 @@
{-# LANGUAGE DeriveGeneric #-}
{-# LANGUAGE DeriveAnyClass #-}
--{-# LANGUAGE DeriveAnyClass #-}
{-# LANGUAGE StrictData #-}
{-# LANGUAGE TemplateHaskell #-}
{-# LANGUAGE GeneralizedNewtypeDeriving #-}
+1 -1
View File
@@ -1,4 +1,4 @@
{-# LANGUAGE DeriveAnyClass #-}
--{-# LANGUAGE DeriveAnyClass #-}
{-# LANGUAGE DeriveGeneric #-}
{-# LANGUAGE StrictData #-}
{-# LANGUAGE TemplateHaskell #-}
+1 -1
View File
@@ -1,4 +1,4 @@
{-# LANGUAGE DeriveAnyClass #-}
--{-# LANGUAGE DeriveAnyClass #-}
{-# LANGUAGE DeriveGeneric #-}
{-# LANGUAGE DerivingStrategies #-}
{-# LANGUAGE GeneralisedNewtypeDeriving #-}
+1 -1
View File
@@ -1,5 +1,5 @@
{-# LANGUAGE DeriveGeneric #-}
{-# LANGUAGE DeriveAnyClass #-}
--{-# LANGUAGE DeriveAnyClass #-}
{-# LANGUAGE StrictData #-}
{-# LANGUAGE TemplateHaskell #-}
+144 -144
View File
@@ -12,8 +12,8 @@
.++~ src/LensHelp.hs 33;" o
.+.+~ src/LensHelp.hs 23;" o
.:~ src/LensHelp.hs 14;" o
<$> src/Dodge/Data/ActionPlan.hs 181;" o
<$> src/Dodge/Data/CWorld.hs 47;" o
<$> src/Dodge/Data/ActionPlan.hs 158;" o
<$> src/Dodge/Data/CWorld.hs 51;" o
<$> src/Dodge/Data/Camera.hs 39;" o
<$> src/Dodge/Data/Creature.hs 90;" o
<$> src/Dodge/Data/LWorld.hs 177;" o
@@ -37,17 +37,17 @@ AUTORIFLE src/Dodge/Data/Item/Combine.hs 155;" C
AZURE src/Color/Data.hs 23;" C
AccessTerminal src/Dodge/Data/WorldEffect.hs 27;" C
Action src/Dodge/Data/ActionPlan.hs 67;" t
ActionNothing src/Dodge/Data/ActionPlan.hs 72;" C
ActionPlan src/Dodge/Data/ActionPlan.hs 16;" t
ActionUpdate src/Dodge/Creature/Action.hs 48;" t
AddGoal src/Dodge/Data/ActionPlan.hs 46;" C
AimAt src/Dodge/Data/ActionPlan.hs 73;" C
AimAt src/Dodge/Data/ActionPlan.hs 68;" C
AimStance src/Dodge/Data/AimStance.hs 11;" t
Aiming src/Dodge/Data/Creature/Stance.hs 36;" C
AirFiltrationSS src/Dodge/Data/Scenario.hs 95;" C
AlienContact src/Dodge/Data/Scenario.hs 30;" C
AllRoomClipBoundaries src/Dodge/Data/Config.hs 108;" C
AlteRifleSwitch src/Dodge/Data/Item/Params.hs 20;" C
Ambush src/Dodge/Data/ActionPlan.hs 155;" C
Ambush src/Dodge/Data/ActionPlan.hs 132;" C
AmmoEffectSF src/Dodge/Data/ComposedItem.hs 33;" C
AmmoExtractPosition src/Dodge/Data/Muzzle.hs 21;" t
AmmoMagSF src/Dodge/Data/ComposedItem.hs 24;" C
@@ -58,7 +58,7 @@ AmmoPayloadSF src/Dodge/Data/ComposedItem.hs 32;" C
AmmoPerShot src/Dodge/Data/Muzzle.hs 61;" t
AmmoTargetingSF src/Dodge/Data/ComposedItem.hs 31;" C
AmmoType src/Dodge/Data/AmmoType.hs 5;" t
ArbitraryAction src/Dodge/Data/ActionPlan.hs 144;" C
ArbitraryAction src/Dodge/Data/ActionPlan.hs 121;" C
ArcNodeType src/Dodge/Data/LWorld.hs 157;" t
ArcShad src/Picture/Data.hs 38;" C
ArcStep src/Dodge/Data/ArcStep.hs 14;" t
@@ -75,7 +75,7 @@ AttentiveTo src/Dodge/Data/Creature/Perception.hs 61;" C
Audition src/Dodge/Data/Creature/Perception.hs 47;" t
AutoAI src/Dodge/Data/Creature/Misc.hs 47;" C
AutoCrit src/Dodge/Data/Creature/Misc.hs 72;" C
AutoDoorObstacle src/Dodge/Data/PathGraph.hs 51;" C
AutoDoorObstacle src/Dodge/Data/PathGraph.hs 57;" C
AutoTrigger src/Dodge/Data/TriggerType.hs 8;" C
Avatar src/Dodge/Data/Creature/Misc.hs 61;" C
AvatarDead src/Dodge/Data/Creature/Misc.hs 69;" C
@@ -138,7 +138,7 @@ BlockDrawBlSh src/Dodge/Data/Block.hs 40;" C
BlockDrawColHeightPoss src/Dodge/Data/Block.hs 42;" C
BlockDrawMempty src/Dodge/Data/Block.hs 39;" C
BlockDraws src/Dodge/Data/Block.hs 41;" C
BlockObstacle src/Dodge/Data/PathGraph.hs 49;" C
BlockObstacle src/Dodge/Data/PathGraph.hs 55;" C
BlockPart src/Dodge/Data/Wall/Structure.hs 16;" C
BlockedLink src/Dodge/Data/Room.hs 50;" C
BloomLayer src/Picture/Data.hs 25;" C
@@ -186,8 +186,8 @@ COPIER src/Dodge/Data/Item/Combine.hs 29;" C
CRAFT src/Dodge/Data/Item/Combine.hs 19;" C
CREATUREDETECTOR src/Dodge/Data/Item/Combine.hs 184;" C
CREATURESENSOR src/Dodge/Data/Item/Combine.hs 85;" C
CWGen src/Dodge/Data/CWorld.hs 34;" t
CWorld src/Dodge/Data/CWorld.hs 23;" t
CWGen src/Dodge/Data/CWorld.hs 38;" t
CWorld src/Dodge/Data/CWorld.hs 25;" t
CYAN src/Color/Data.hs 19;" C
CamControl src/Dodge/Data/Camera.hs 18;" t
CamFloat src/Dodge/Data/Camera.hs 20;" C
@@ -212,13 +212,13 @@ ChangeStrategy src/Dodge/Data/ActionPlan.hs 45;" C
ChaseAI src/Dodge/Data/Creature/Misc.hs 40;" C
ChaseCrit src/Dodge/Data/Creature/Misc.hs 70;" C
ChaseCritters src/Dodge/Data/Creature/State.hs 18;" C
ChasmObstacle src/Dodge/Data/PathGraph.hs 53;" C
ChasmObstacle src/Dodge/Data/PathGraph.hs 59;" C
ChemFuel src/Dodge/Data/Item/Use/Consumption/Ammo.hs 14;" C
ChooseMovementLtAuto src/Dodge/Data/CreatureEffect.hs 31;" C
ChooseMovementSpreadGun src/Dodge/Data/CreatureEffect.hs 30;" C
Circ_collision_test src/Dodge/Data/Config.hs 85;" C
Climate src/Dodge/Data/Scenario.hs 32;" C
CloseToMelee src/Dodge/Data/ActionPlan.hs 164;" C
CloseToMelee src/Dodge/Data/ActionPlan.hs 141;" C
Close_shape_culling src/Dodge/Data/Config.hs 79;" C
Cloud src/Dodge/Data/Cloud.hs 14;" t
CloudType src/Dodge/Data/Cloud.hs 22;" t
@@ -337,25 +337,25 @@ DisplayTerminal src/Dodge/Data/HUD.hs 29;" C
Display_debug src/Dodge/Data/Config.hs 68;" C
Distortion src/Dodge/Data/Distortion.hs 12;" t
DivineRetribution src/Dodge/Data/Scenario.hs 35;" C
DoActionIf src/Dodge/Data/ActionPlan.hs 103;" C
DoActionIfElse src/Dodge/Data/ActionPlan.hs 107;" C
DoActionThen src/Dodge/Data/ActionPlan.hs 120;" C
DoActionWhile src/Dodge/Data/ActionPlan.hs 94;" C
DoActionWhileInterrupt src/Dodge/Data/ActionPlan.hs 112;" C
DoActionWhilePartial src/Dodge/Data/ActionPlan.hs 98;" C
DoActions src/Dodge/Data/ActionPlan.hs 117;" C
DoImpulses src/Dodge/Data/ActionPlan.hs 87;" C
DoImpulsesAlongside src/Dodge/Data/ActionPlan.hs 146;" C
DoActionIf src/Dodge/Data/ActionPlan.hs 89;" C
DoActionIfElse src/Dodge/Data/ActionPlan.hs 93;" C
DoActionThen src/Dodge/Data/ActionPlan.hs 104;" C
DoActionWhile src/Dodge/Data/ActionPlan.hs 80;" C
DoActionWhileInterrupt src/Dodge/Data/ActionPlan.hs 98;" C
DoActionWhilePartial src/Dodge/Data/ActionPlan.hs 84;" C
DoActions src/Dodge/Data/ActionPlan.hs 103;" C
DoImpulses src/Dodge/Data/ActionPlan.hs 75;" C
DoImpulsesAlongside src/Dodge/Data/ActionPlan.hs 123;" C
DoNotMoveEquipment src/Dodge/Data/RightButtonOptions.hs 20;" C
DoReplicate src/Dodge/Data/ActionPlan.hs 127;" C
DoReplicatePartial src/Dodge/Data/ActionPlan.hs 131;" C
DoReplicate src/Dodge/Data/ActionPlan.hs 108;" C
DoReplicatePartial src/Dodge/Data/ActionPlan.hs 112;" C
DockingBaySS src/Dodge/Data/Scenario.hs 92;" C
Door src/Dodge/Data/Door.hs 34;" t
DoorClosed src/Dodge/Data/Door.hs 23;" C
DoorHalfway src/Dodge/Data/Door.hs 23;" C
DoorInt src/Dodge/Data/Door.hs 23;" C
DoorMechanism src/Dodge/Data/WorldEffect.hs 71;" C
DoorObstacle src/Dodge/Data/PathGraph.hs 50;" C
DoorObstacle src/Dodge/Data/PathGraph.hs 56;" C
DoorOpen src/Dodge/Data/Door.hs 23;" C
DoorPart src/Dodge/Data/Wall/Structure.hs 14;" C
DoorStatus src/Dodge/Data/Door.hs 23;" t
@@ -381,7 +381,7 @@ EXPLOSIVES src/Dodge/Data/Item/Combine.hs 117;" C
Ears src/Dodge/Data/Creature/Perception.hs 47;" C
East src/Dodge/Data/CardinalPoint.hs 7;" C
East8 src/Dodge/Data/CardinalPoint.hs 22;" C
EdgeObstacle src/Dodge/Data/PathGraph.hs 48;" t
EdgeObstacle src/Dodge/Data/PathGraph.hs 54;" t
EighthRes src/Dodge/Data/Config.hs 98;" C
Eldritch src/Dodge/Data/Scenario.hs 34;" C
ElectricSensor src/Dodge/Data/Machine/Sensor.hs 16;" C
@@ -441,7 +441,7 @@ FlameSound src/Dodge/Data/SoundOrigin.hs 29;" C
FlameletBall src/Dodge/Data/EnergyBall/Type.hs 14;" C
Flamer src/Dodge/Data/SoundOrigin.hs 27;" C
Flaming src/Dodge/Data/Damage.hs 25;" C
Flank src/Dodge/Data/ActionPlan.hs 154;" C
Flank src/Dodge/Data/ActionPlan.hs 131;" C
FlareType src/Dodge/Data/Muzzle.hs 28;" t
FlashBall src/Dodge/Data/EnergyBall/Type.hs 17;" C
Flashing src/Dodge/Data/Damage.hs 27;" C
@@ -449,7 +449,7 @@ FlatFaces src/Shape/Data.hs 17;" C
FlatShieldParams src/Dodge/Data/Item/Params.hs 16;" C
FlechetteTrajectory src/Dodge/Data/Bullet.hs 45;" C
FlechetteTrajectoryType src/Dodge/Data/Bullet.hs 52;" C
Flee src/Dodge/Data/ActionPlan.hs 168;" C
Flee src/Dodge/Data/ActionPlan.hs 145;" C
Flesh src/Dodge/Data/Material.hs 11;" C
FloatAbsCheckGreaterLess src/Dodge/Data/FloatFunction.hs 16;" C
FloatConst src/Dodge/Data/FloatFunction.hs 17;" C
@@ -463,7 +463,7 @@ FlockArmourChaseAI src/Dodge/Data/Creature/Misc.hs 48;" C
Floor src/Data/Tile.hs 11;" t
FloorItem src/Dodge/Data/FloorItem.hs 15;" t
Flying src/Dodge/Data/Creature/Stance.hs 28;" C
FollowImpulses src/Dodge/Data/ActionPlan.hs 159;" C
FollowImpulses src/Dodge/Data/ActionPlan.hs 136;" C
FootForward src/Dodge/Data/Creature/Stance.hs 32;" t
FootstepSound src/Dodge/Data/SoundOrigin.hs 31;" C
ForceFieldType src/Dodge/Data/Item/Use/Consumption/Ammo.hs 11;" t
@@ -498,12 +498,12 @@ GenParams src/Dodge/Data/GenParams.hs 15;" t
GenWorld src/Dodge/Data/GenWorld.hs 24;" t
GenericFaction src/Dodge/Data/Creature/State.hs 15;" C
GeoObjShads src/Dodge/Data/Config.hs 102;" C
GetTo src/Dodge/Data/ActionPlan.hs 166;" C
GetTo src/Dodge/Data/ActionPlan.hs 143;" C
GetToPoint src/Dodge/Data/Scenario.hs 12;" C
Gib src/Dodge/Data/Prop.hs 43;" C
Glass src/Dodge/Data/Material.hs 11;" C
GlassBreakSound src/Dodge/Data/SoundOrigin.hs 35;" C
Goal src/Dodge/Data/ActionPlan.hs 174;" t
Goal src/Dodge/Data/ActionPlan.hs 151;" t
GoesOnBack src/Dodge/Data/Equipment/Misc.hs 14;" C
GoesOnChest src/Dodge/Data/Equipment/Misc.hs 13;" C
GoesOnHead src/Dodge/Data/Equipment/Misc.hs 12;" C
@@ -570,7 +570,7 @@ Important src/Shape/Data.hs 35;" C
Impulse src/Dodge/Data/ActionPlan.hs 27;" t
ImpulseNothing src/Dodge/Data/ActionPlan.hs 48;" C
ImpulseUseTarget src/Dodge/Data/ActionPlan.hs 47;" C
ImpulsesList src/Dodge/Data/ActionPlan.hs 84;" C
ImpulsesList src/Dodge/Data/ActionPlan.hs 74;" C
InDivineZone src/Dodge/Data/Scenario.hs 22;" C
InDream src/Dodge/Data/Scenario.hs 19;" C
InInv src/Dodge/Data/Item/Location.hs 27;" C
@@ -598,7 +598,7 @@ InventoryChange src/Dodge/Data/World.hs 32;" C
InventoryConnectSound src/Dodge/Data/SoundOrigin.hs 14;" C
InventoryPathing src/Dodge/Data/Item/Combine.hs 39;" t
InventorySound src/Dodge/Data/SoundOrigin.hs 13;" C
Investigate src/Dodge/Data/ActionPlan.hs 161;" C
Investigate src/Dodge/Data/ActionPlan.hs 138;" C
Invisible src/Dodge/Data/CamouflageStatus.hs 7;" C
InwardShockwave src/Dodge/Data/Shockwave.hs 14;" C
IsolationUnitSS src/Dodge/Data/Scenario.hs 101;" C
@@ -629,7 +629,7 @@ JoystickSF src/Dodge/Data/ComposedItem.hs 26;" C
Just' src/MaybeHelp.hs 13;" C
JustStartedPlaying src/Sound/Data.hs 24;" C
KEYCARD src/Dodge/Data/Item/Combine.hs 177;" C
Kill src/Dodge/Data/ActionPlan.hs 176;" C
Kill src/Dodge/Data/ActionPlan.hs 153;" C
LASER src/Dodge/Data/Item/Combine.hs 36;" C
LDT src/Dodge/Data/DoubleTree.hs 34;" C
LDTBottomNode src/Dodge/Data/DoubleTree.hs 29;" C
@@ -646,7 +646,6 @@ LSParam src/Dodge/Data/LightSource.hs 16;" t
LWorld src/Dodge/Data/LWorld.hs 95;" t
LabLink src/Dodge/Data/Room.hs 46;" C
LabSS src/Dodge/Data/Scenario.hs 97;" C
LabelAction src/Dodge/Data/ActionPlan.hs 68;" C
LabelCluster src/Dodge/Data/RoomCluster.hs 13;" C
LabelDoubleTreeNodeType src/Dodge/Data/DoubleTree.hs 24;" t
Laboratory src/Dodge/Data/Scenario.hs 61;" C
@@ -666,7 +665,7 @@ LaundrySS src/Dodge/Data/Scenario.hs 115;" C
LayVars src/Dodge/Data/MetaTree.hs 29;" C
Layer src/Picture/Data.hs 22;" t
LayoutVars src/Dodge/Data/MetaTree.hs 29;" t
LeadTarget src/Dodge/Data/ActionPlan.hs 136;" C
LeadTarget src/Dodge/Data/ActionPlan.hs 117;" C
LeftForward src/Dodge/Data/Creature/Stance.hs 32;" C
LeftwardDT src/Dodge/Data/DoubleTree.hs 86;" C
LeftwardLDT src/Dodge/Data/DoubleTree.hs 44;" C
@@ -681,7 +680,7 @@ LimitedFood src/Dodge/Data/Scenario.hs 39;" C
LimitedWater src/Dodge/Data/Scenario.hs 40;" C
LinearShockwave src/Dodge/Data/LinearShockwave.hs 13;" t
ListDisplayParams src/Dodge/Data/SelectionList.hs 13;" t
LiveLongAndProsper src/Dodge/Data/ActionPlan.hs 175;" C
LiveLongAndProsper src/Dodge/Data/ActionPlan.hs 152;" C
LivingComplex src/Dodge/Data/Scenario.hs 68;" C
LoadingBaySS src/Dodge/Data/Scenario.hs 93;" C
LoadingScreen src/Dodge/Data/Universe.hs 73;" C
@@ -691,9 +690,9 @@ LocationDT src/Dodge/Data/DoubleTree.hs 101;" t
LocationLDT src/Dodge/Data/DoubleTree.hs 61;" t
LoneWolf src/Dodge/Data/Creature/State.hs 26;" C
LongAI src/Dodge/Data/Creature/Misc.hs 50;" C
LookAround src/Dodge/Data/ActionPlan.hs 163;" C
LookAround src/Dodge/Data/ActionPlan.hs 140;" C
LtAutoAI src/Dodge/Data/Creature/Misc.hs 44;" C
Lure src/Dodge/Data/ActionPlan.hs 156;" C
Lure src/Dodge/Data/ActionPlan.hs 133;" C
MACHINEPISTOL src/Dodge/Data/Item/Combine.hs 145;" C
MAGENTA src/Color/Data.hs 20;" C
MAGNET src/Dodge/Data/Item/Combine.hs 68;" C
@@ -754,7 +753,7 @@ MdWdWd src/Dodge/Data/WorldEffect.hs 45;" t
MedBaySS src/Dodge/Data/Scenario.hs 100;" C
Medium src/Shape/Data.hs 30;" C
Melee src/Dodge/Data/ActionPlan.hs 42;" C
MeleeStrike src/Dodge/Data/ActionPlan.hs 169;" C
MeleeStrike src/Dodge/Data/ActionPlan.hs 146;" C
Memory src/Dodge/Data/Creature/Memory.hs 13;" t
MenuOption src/Dodge/Data/Universe.hs 99;" t
MenuOptionDisplay src/Dodge/Data/Universe.hs 94;" t
@@ -826,7 +825,7 @@ NewInt src/NewInt.hs 17;" t
NewIntMap src/NewInt.hs 23;" t
NewIntSet src/NewInt.hs 20;" t
NewSideEffect src/Dodge/Data/Universe.hs 65;" C
NoAction src/Dodge/Data/ActionPlan.hs 139;" C
NoAction src/Dodge/Data/ActionPlan.hs 118;" C
NoAmmoRequired src/Dodge/Data/Muzzle.hs 25;" C
NoBeamCombine src/Dodge/Data/Beam.hs 43;" C
NoConcurrentEffect src/Loop/Data.hs 7;" C
@@ -932,7 +931,6 @@ Opaque src/Dodge/Data/Wall.hs 44;" C
OpticScope src/Dodge/Data/Item/Scope.hs 14;" C
OptionScreen src/Dodge/Data/Universe.hs 82;" C
OptionScreenFlag src/Dodge/Data/Universe.hs 72;" t
OutAction src/Dodge/Creature/Action.hs 46;" t
OutLink src/Dodge/Data/Room.hs 44;" C
OutsideTerminal src/Dodge/Data/Input.hs 30;" C
OutwardShockwave src/Dodge/Data/Shockwave.hs 14;" C
@@ -972,9 +970,9 @@ PathEdge src/Dodge/Data/PathGraph.hs 40;" t
PathEdgeNodes src/Dodge/Data/PathGraph.hs 33;" t
PathFromEdge src/Dodge/Data/Room.hs 77;" t
PathShowType src/Dodge/Data/Universe.hs 54;" t
PathTo src/Dodge/Data/ActionPlan.hs 77;" C
PathTo src/Dodge/Data/ActionPlan.hs 72;" C
Pathing src/Dodge/Data/Config.hs 76;" C
Patrol src/Dodge/Data/ActionPlan.hs 157;" C
Patrol src/Dodge/Data/ActionPlan.hs 134;" C
PausedTimeFlow src/Dodge/Data/World.hs 79;" C
Payload src/Dodge/Data/Payload.hs 11;" t
PenetrateBullet src/Dodge/Data/Bullet.hs 31;" C
@@ -1105,7 +1103,7 @@ RectRoomType src/Dodge/Data/Room.hs 33;" C
ReducedRocketSmoke src/Dodge/Data/Projectile.hs 55;" C
ReigonalGovernment src/Dodge/Data/Scenario.hs 50;" C
Religion src/Dodge/Data/Scenario.hs 47;" C
Reload src/Dodge/Data/ActionPlan.hs 167;" C
Reload src/Dodge/Data/ActionPlan.hs 144;" C
RemoteDetonatorSF src/Dodge/Data/ComposedItem.hs 27;" C
RemoteScreenSF src/Dodge/Data/ComposedItem.hs 25;" C
RemoveEquipment src/Dodge/Data/RightButtonOptions.hs 35;" C
@@ -1168,7 +1166,7 @@ SaveSlotNum src/Dodge/Data/SaveSlot.hs 12;" C
Scope src/Dodge/Data/Item/Scope.hs 13;" t
ScreenLayer src/Dodge/Data/Universe.hs 81;" t
ScreenPos src/Dodge/Data/ScreenPos.hs 12;" t
Search src/Dodge/Data/ActionPlan.hs 170;" C
Search src/Dodge/Data/ActionPlan.hs 147;" C
SecretCabal src/Dodge/Data/Scenario.hs 44;" C
SectionCursor src/Dodge/Data/SelectionList.hs 23;" t
SeeAbove src/Dodge/Data/Wall.hs 42;" C
@@ -1187,7 +1185,7 @@ SelfTree src/Dodge/Data/MetaTree.hs 20;" t
SemiAutoTrigger src/Dodge/Data/TriggerType.hs 9;" C
SensorType src/Dodge/Data/Machine/Sensor.hs 14;" t
SensorWithRequirement src/Dodge/Data/Machine/Sensor.hs 33;" C
SentinelAt src/Dodge/Data/ActionPlan.hs 177;" C
SentinelAt src/Dodge/Data/ActionPlan.hs 154;" C
SetLSCol src/Dodge/Data/WorldEffect.hs 26;" C
SetTrigger src/Dodge/Data/WorldEffect.hs 24;" C
ShadNum src/Picture/Data.hs 35;" t
@@ -1204,7 +1202,7 @@ ShellSound src/Dodge/Data/SoundOrigin.hs 28;" C
ShieldGroup src/Dodge/Data/Creature/State.hs 32;" C
Shockwave src/Dodge/Data/Shockwave.hs 17;" t
ShockwaveDirection src/Dodge/Data/Shockwave.hs 14;" t
ShootAt src/Dodge/Data/ActionPlan.hs 158;" C
ShootAt src/Dodge/Data/ActionPlan.hs 135;" C
ShortShow src/ShortShow.hs 6;" c
ShortString src/ShortShow.hs 16;" t
Show_bound_box src/Dodge/Data/Config.hs 80;" C
@@ -1226,6 +1224,7 @@ ShrinkGunStatus src/Dodge/Data/Item/Params.hs 28;" t
Shrunk src/Dodge/Data/Item/Params.hs 28;" C
SideCluster src/Dodge/Data/RoomCluster.hs 13;" C
SideEffect src/Dodge/Data/Universe.hs 64;" t
SimpleEdge src/Dodge/Data/PathGraph.hs 48;" t
SixteenthRes src/Dodge/Data/Config.hs 98;" C
Size src/Shape/Data.hs 28;" t
SkiffBaySS src/Dodge/Data/Scenario.hs 108;" C
@@ -1268,12 +1267,12 @@ StabSpinIncrease src/Dodge/Projectile/Create.hs 18;" C
Stance src/Dodge/Data/Creature/Stance.hs 17;" t
StandaloneWall src/Dodge/Data/Wall/Structure.hs 13;" C
Standing src/Dodge/Data/Creature/Stance.hs 26;" C
StartSentinelPost src/Dodge/Data/ActionPlan.hs 140;" C
StartSentinelPost src/Dodge/Data/ActionPlan.hs 119;" C
StayInArea src/Dodge/Data/Scenario.hs 13;" C
Stone src/Dodge/Data/Material.hs 11;" C
StorageSS src/Dodge/Data/Scenario.hs 94;" C
Strategy src/Dodge/Data/ActionPlan.hs 153;" t
StrategyActions src/Dodge/Data/ActionPlan.hs 165;" C
Strategy src/Dodge/Data/ActionPlan.hs 130;" t
StrategyActions src/Dodge/Data/ActionPlan.hs 142;" C
SubInventory src/Dodge/Data/HUD.hs 16;" t
Superfluous src/Shape/Data.hs 38;" C
Surface src/Shape/Data.hs 41;" t
@@ -1377,7 +1376,7 @@ TriggerType src/Dodge/Data/TriggerType.hs 7;" t
TurbineBaySS src/Dodge/Data/Scenario.hs 110;" C
Turn src/Dodge/Data/ActionPlan.hs 31;" C
TurnTo src/Dodge/Data/ActionPlan.hs 37;" C
TurnToPoint src/Dodge/Data/ActionPlan.hs 78;" C
TurnToPoint src/Dodge/Data/ActionPlan.hs 73;" C
TurnToward src/Dodge/Data/ActionPlan.hs 34;" C
TurnTowardCr src/Dodge/Data/CreatureEffect.hs 11;" C
Turret src/Dodge/Data/Machine.hs 51;" t
@@ -1415,7 +1414,7 @@ UseItemWidth src/Dodge/Data/SelectionList.hs 39;" C
UseMapper src/Dodge/Data/Item/Use.hs 39;" C
UseNothing src/Dodge/Data/Item/Use.hs 34;" C
UseScope src/Dodge/Data/Item/Use.hs 36;" C
UseSelf src/Dodge/Data/ActionPlan.hs 141;" C
UseSelf src/Dodge/Data/ActionPlan.hs 120;" C
UseToggle src/Dodge/Data/Item/Use.hs 38;" C
UseUpTo src/Dodge/Data/Muzzle.hs 63;" C
UseValue src/Dodge/Data/Item/Use.hs 35;" C
@@ -1450,12 +1449,12 @@ WHITE src/Color/Data.hs 27;" C
WIRE src/Dodge/Data/Item/Combine.hs 86;" C
WRISTARMOUR src/Dodge/Data/Item/Combine.hs 124;" C
WRIST_ECG src/Dodge/Data/Item/Combine.hs 136;" C
WaitThen src/Dodge/Data/ActionPlan.hs 90;" C
WaitThen src/Dodge/Data/ActionPlan.hs 76;" C
Walking src/Dodge/Data/Creature/Stance.hs 25;" C
Wall src/Dodge/Data/Wall.hs 20;" t
WallArcNode src/Dodge/Data/LWorld.hs 158;" C
WallDraw src/Dodge/Data/Wall.hs 47;" t
WallObstacle src/Dodge/Data/PathGraph.hs 52;" C
WallObstacle src/Dodge/Data/PathGraph.hs 58;" C
WallP src/Dodge/LevelGen/StaticWalls.hs 23;" t
WallP src/Dodge/LevelGen/StaticWalls/Deprecated.hs 11;" t
WallSound src/Dodge/Data/SoundOrigin.hs 26;" C
@@ -1466,8 +1465,8 @@ War src/Dodge/Data/Scenario.hs 28;" C
WarmTime src/Dodge/Data/Item/Params.hs 21;" C
WarmUpCoolDown src/Dodge/Data/TriggerType.hs 14;" C
WarmUpNoDelay src/Dodge/Data/TriggerType.hs 19;" C
WarningCry src/Dodge/Data/ActionPlan.hs 162;" C
WatchAndWait src/Dodge/Data/ActionPlan.hs 160;" C
WarningCry src/Dodge/Data/ActionPlan.hs 139;" C
WatchAndWait src/Dodge/Data/ActionPlan.hs 137;" C
WdBl src/Dodge/Data/WorldEffect.hs 52;" t
WdBlBtOn src/Dodge/Data/WorldEffect.hs 58;" C
WdBlConst src/Dodge/Data/WorldEffect.hs 55;" C
@@ -1505,8 +1504,6 @@ YELLOW src/Color/Data.hs 18;" C
ZOOMSCOPE src/Dodge/Data/Item/Combine.hs 92;" C
ZombieFaction src/Dodge/Data/Creature/State.hs 16;" C
__Just' src/MaybeHelp.hs 13;" f
_actAction src/Dodge/Data/ActionPlan.hs 70;" f
_actLabel src/Dodge/Data/ActionPlan.hs 69;" f
_aimStance src/Dodge/Data/Creature/Stance.hs 36;" f
_allocNewPos src/Dodge/Data/RightButtonOptions.hs 21;" f
_allocNewPos src/Dodge/Data/RightButtonOptions.hs 27;" f
@@ -1518,7 +1515,7 @@ _allocRemoveID src/Dodge/Data/RightButtonOptions.hs 33;" f
_allocSwapID src/Dodge/Data/RightButtonOptions.hs 29;" f
_alphaDivideShader src/Data/Preload/Render.hs 18;" f
_alteRifleSwitch src/Dodge/Data/Item/Params.hs 20;" f
_ambushTarget src/Dodge/Data/ActionPlan.hs 155;" f
_ambushTarget src/Dodge/Data/ActionPlan.hs 132;" f
_ampBullet src/Dodge/Data/Item/Use.hs 52;" f
_ampCreateGas src/Dodge/Data/Item/Use.hs 54;" f
_ampPayload src/Dodge/Data/Item/Use.hs 53;" f
@@ -1530,7 +1527,7 @@ _apInt src/Dodge/Data/Item/Use.hs 47;" f
_apProjectiles src/Dodge/Data/Item/Use.hs 46;" f
_apStrategy src/Dodge/Data/ActionPlan.hs 21;" f
_aps src/Dodge/Data/Muzzle.hs 22;" f
_arbitraryAction src/Dodge/Data/ActionPlan.hs 144;" f
_arbitraryAction src/Dodge/Data/ActionPlan.hs 121;" f
_arcNode src/Dodge/Data/LWorld.hs 113;" f
_asDir src/Dodge/Data/ArcStep.hs 16;" f
_asObject src/Dodge/Data/ArcStep.hs 17;" f
@@ -1601,7 +1598,7 @@ _bullets src/Dodge/Data/LWorld.hs 105;" f
_burstFrames src/Dodge/Data/TriggerType.hs 12;" f
_burstRate src/Dodge/Data/TriggerType.hs 12;" f
_buttons src/Dodge/Data/LWorld.hs 133;" f
_cClock src/Dodge/Data/CWorld.hs 26;" f
_cClock src/Dodge/Data/CWorld.hs 28;" f
_cWorld src/Dodge/Data/World.hs 37;" f
_camBoundBox src/Dodge/Data/Camera.hs 31;" f
_camBoundDist src/Dodge/Data/Camera.hs 32;" f
@@ -1629,7 +1626,7 @@ _ceSideEffect src/Dodge/Data/Universe.hs 66;" f
_ceString src/Dodge/Data/Universe.hs 67;" f
_chasmShader src/Data/Preload/Render.hs 46;" f
_chasmVBO src/Data/Preload/Render.hs 45;" f
_chasms src/Dodge/Data/CWorld.hs 30;" f
_chasms src/Dodge/Data/CWorld.hs 34;" f
_ciFilter src/Dodge/Data/HUD.hs 27;" f
_ciInvIDs src/Dodge/Data/Combine.hs 9;" f
_ciItem src/Dodge/Data/Combine.hs 10;" f
@@ -1709,13 +1706,13 @@ _creatures src/Dodge/Data/LWorld.hs 96;" f
_csLinks src/Dodge/Data/RoomCluster.hs 10;" f
_currentArc src/Dodge/Data/Item/Params.hs 17;" f
_currentFoot src/Dodge/Data/Creature/Stance.hs 25;" f
_cwGen src/Dodge/Data/CWorld.hs 25;" f
_cwTiles src/Dodge/Data/CWorld.hs 27;" f
_cwgGameRooms src/Dodge/Data/CWorld.hs 37;" f
_cwgParams src/Dodge/Data/CWorld.hs 35;" f
_cwgRoomClipping src/Dodge/Data/CWorld.hs 38;" f
_cwgSeed src/Dodge/Data/CWorld.hs 39;" f
_cwgWorldBounds src/Dodge/Data/CWorld.hs 36;" f
_cwGen src/Dodge/Data/CWorld.hs 27;" f
_cwTiles src/Dodge/Data/CWorld.hs 29;" f
_cwgGameRooms src/Dodge/Data/CWorld.hs 41;" f
_cwgParams src/Dodge/Data/CWorld.hs 39;" f
_cwgRoomClipping src/Dodge/Data/CWorld.hs 42;" f
_cwgSeed src/Dodge/Data/CWorld.hs 43;" f
_cwgWorldBounds src/Dodge/Data/CWorld.hs 40;" f
_cylinderSize src/Shape/Data.hs 19;" f
_dbPos src/Dodge/Data/Prop.hs 49;" f
_dbRot src/Dodge/Data/Prop.hs 52;" f
@@ -1747,27 +1744,27 @@ _dmPos src/Dodge/Data/Damage.hs 27;" f
_dmVector src/Dodge/Data/Damage.hs 20;" f
_dmVector src/Dodge/Data/Damage.hs 23;" f
_dmVector src/Dodge/Data/Damage.hs 26;" f
_doActionIfAction src/Dodge/Data/ActionPlan.hs 105;" f
_doActionIfCondition src/Dodge/Data/ActionPlan.hs 104;" f
_doActionIfElseCondition src/Dodge/Data/ActionPlan.hs 109;" f
_doActionIfElseElseAction src/Dodge/Data/ActionPlan.hs 110;" f
_doActionIfElseIfAction src/Dodge/Data/ActionPlan.hs 108;" f
_doActionThenFirst src/Dodge/Data/ActionPlan.hs 121;" f
_doActionThenSecond src/Dodge/Data/ActionPlan.hs 122;" f
_doActionWhileAction src/Dodge/Data/ActionPlan.hs 96;" f
_doActionWhileAction src/Dodge/Data/ActionPlan.hs 101;" f
_doActionWhileCondition src/Dodge/Data/ActionPlan.hs 95;" f
_doActionWhileCondition src/Dodge/Data/ActionPlan.hs 100;" f
_doActionWhilePartial src/Dodge/Data/ActionPlan.hs 99;" f
_doActionWhileThenCondition src/Dodge/Data/ActionPlan.hs 114;" f
_doActionWhileThenDo src/Dodge/Data/ActionPlan.hs 113;" f
_doActionWhileThenThen src/Dodge/Data/ActionPlan.hs 115;" f
_doActionsList src/Dodge/Data/ActionPlan.hs 118;" f
_doImpulsesList src/Dodge/Data/ActionPlan.hs 88;" f
_doReplicateAction src/Dodge/Data/ActionPlan.hs 129;" f
_doReplicateAction src/Dodge/Data/ActionPlan.hs 134;" f
_doReplicateTimes src/Dodge/Data/ActionPlan.hs 128;" f
_doReplicateTimes src/Dodge/Data/ActionPlan.hs 133;" f
_doActionIfAction src/Dodge/Data/ActionPlan.hs 91;" f
_doActionIfCondition src/Dodge/Data/ActionPlan.hs 90;" f
_doActionIfElseCondition src/Dodge/Data/ActionPlan.hs 95;" f
_doActionIfElseElseAction src/Dodge/Data/ActionPlan.hs 96;" f
_doActionIfElseIfAction src/Dodge/Data/ActionPlan.hs 94;" f
_doActionThenFirst src/Dodge/Data/ActionPlan.hs 105;" f
_doActionThenSecond src/Dodge/Data/ActionPlan.hs 106;" f
_doActionWhileAction src/Dodge/Data/ActionPlan.hs 82;" f
_doActionWhileAction src/Dodge/Data/ActionPlan.hs 87;" f
_doActionWhileCondition src/Dodge/Data/ActionPlan.hs 81;" f
_doActionWhileCondition src/Dodge/Data/ActionPlan.hs 86;" f
_doActionWhilePartial src/Dodge/Data/ActionPlan.hs 85;" f
_doActionWhileThenCondition src/Dodge/Data/ActionPlan.hs 100;" f
_doActionWhileThenDo src/Dodge/Data/ActionPlan.hs 99;" f
_doActionWhileThenThen src/Dodge/Data/ActionPlan.hs 101;" f
_doActionsList src/Dodge/Data/ActionPlan.hs 103;" f
_doImpulsesList src/Dodge/Data/ActionPlan.hs 75;" f
_doReplicateAction src/Dodge/Data/ActionPlan.hs 110;" f
_doReplicateAction src/Dodge/Data/ActionPlan.hs 115;" f
_doReplicateTimes src/Dodge/Data/ActionPlan.hs 109;" f
_doReplicateTimes src/Dodge/Data/ActionPlan.hs 114;" f
_doors src/Dodge/Data/LWorld.hs 122;" f
_drClosePos src/Dodge/Data/Door.hs 42;" f
_drDeath src/Dodge/Data/Door.hs 44;" f
@@ -1819,7 +1816,7 @@ _flPos src/Dodge/Data/Flame.hs 15;" f
_flTimer src/Dodge/Data/Flame.hs 14;" f
_flVel src/Dodge/Data/Flame.hs 16;" f
_flames src/Dodge/Data/LWorld.hs 108;" f
_flankTarget src/Dodge/Data/ActionPlan.hs 154;" f
_flankTarget src/Dodge/Data/ActionPlan.hs 131;" f
_flares src/Dodge/Data/LWorld.hs 111;" f
_flatShieldWlMIX src/Dodge/Data/Item/Params.hs 16;" f
_floorItems src/Dodge/Data/LWorld.hs 129;" f
@@ -1900,7 +1897,9 @@ _imSelectedItem src/Dodge/Data/Item/Use/Consumption/LoadAction.hs 25;" f
_immediateEffect src/Loop/Data.hs 9;" f
_immediateUpdate src/Loop/Data.hs 12;" f
_impulseUseTarget src/Dodge/Data/ActionPlan.hs 47;" f
_impulsesListList src/Dodge/Data/ActionPlan.hs 85;" f
_impulsesListList src/Dodge/Data/ActionPlan.hs 74;" f
_incGraph src/Dodge/Data/CWorld.hs 31;" f
_incNode src/Dodge/Data/CWorld.hs 32;" f
_input src/Dodge/Data/World.hs 43;" f
_isWarming src/Dodge/Data/Item/Params.hs 23;" f
_ispCloseButton src/Dodge/Data/Item/Use/Consumption/LoadAction.hs 33;" f
@@ -1922,13 +1921,13 @@ _items src/Dodge/Data/LWorld.hs 98;" f
_itsInt src/Dodge/Data/Item.hs 40;" f
_itsMax src/Dodge/Data/Item.hs 41;" f
_itsRangeInt src/Dodge/Data/Item.hs 41;" f
_killTarget src/Dodge/Data/ActionPlan.hs 176;" f
_killTarget src/Dodge/Data/ActionPlan.hs 153;" f
_lAimPos src/Dodge/Data/LWorld.hs 145;" f
_lClock src/Dodge/Data/LWorld.hs 140;" f
_lInvLock src/Dodge/Data/LWorld.hs 146;" f
_lTestInt src/Dodge/Data/LWorld.hs 142;" f
_lTestString src/Dodge/Data/LWorld.hs 141;" f
_lWorld src/Dodge/Data/CWorld.hs 24;" f
_lWorld src/Dodge/Data/CWorld.hs 26;" f
_lampColor src/Dodge/Data/Creature/Misc.hs 74;" f
_lampHeight src/Dodge/Data/Creature/Misc.hs 74;" f
_lampLSID src/Dodge/Data/Creature/Misc.hs 74;" f
@@ -1941,7 +1940,7 @@ _ldpVerticalGap src/Dodge/Data/SelectionList.hs 16;" f
_ldtLeft src/Dodge/Data/DoubleTree.hs 36;" f
_ldtRight src/Dodge/Data/DoubleTree.hs 37;" f
_ldtValue src/Dodge/Data/DoubleTree.hs 35;" f
_leadTargetBy src/Dodge/Data/ActionPlan.hs 137;" f
_leadTargetBy src/Dodge/Data/ActionPlan.hs 117;" f
_lightSources src/Dodge/Data/LWorld.hs 135;" f
_lightingCapShader src/Data/Preload/Render.hs 16;" f
_lightingLineShadowShader src/Data/Preload/Render.hs 15;" f
@@ -1975,7 +1974,7 @@ _lyGen src/Dodge/Data/MetaTree.hs 30;" f
_machines src/Dodge/Data/LWorld.hs 123;" f
_magBelowID src/Dodge/Data/Muzzle.hs 22;" f
_magnets src/Dodge/Data/LWorld.hs 126;" f
_mainAction src/Dodge/Data/ActionPlan.hs 148;" f
_mainAction src/Dodge/Data/ActionPlan.hs 125;" f
_manObject src/Dodge/Data/Item/Use/Consumption/LoadAction.hs 17;" f
_mapInvItmID src/Dodge/Data/HUD.hs 22;" f
_mapInvOffset src/Dodge/Data/HUD.hs 20;" f
@@ -2019,7 +2018,7 @@ _mdTimer src/Dodge/Data/Modification.hs 19;" f
_mdUpdate src/Dodge/Data/Modification.hs 18;" f
_mdUpdate src/Dodge/Data/Modification.hs 27;" f
_meleeCooldown src/Dodge/Data/Creature/Misc.hs 70;" f
_meleeTarget src/Dodge/Data/ActionPlan.hs 164;" f
_meleeTarget src/Dodge/Data/ActionPlan.hs 141;" f
_mgField src/Dodge/Data/Magnet.hs 25;" f
_mgPos src/Dodge/Data/Magnet.hs 24;" f
_moEff src/Dodge/Data/Universe.hs 101;" f
@@ -2057,8 +2056,8 @@ _nodesSearched src/Dodge/Data/Creature/Memory.hs 15;" f
_nonInf src/Dodge/Data/CardinalPoint.hs 36;" f
_numLinkEW src/Dodge/Data/Room.hs 34;" f
_numLinkNS src/Dodge/Data/Room.hs 35;" f
_numberChasmVerxs src/Dodge/Data/CWorld.hs 31;" f
_numberFloorVerxs src/Dodge/Data/CWorld.hs 29;" f
_numberChasmVerxs src/Dodge/Data/CWorld.hs 35;" f
_numberFloorVerxs src/Dodge/Data/CWorld.hs 33;" f
_nzAngle src/Dodge/Data/Item/Params.hs 18;" f
_nzMaxWalkAngle src/Dodge/Data/Muzzle.hs 49;" f
_nzPressure src/Dodge/Data/Muzzle.hs 48;" f
@@ -2072,10 +2071,10 @@ _opTexture src/Dodge/Data/Wall.hs 44;" f
_opticDefaultZoom src/Dodge/Data/Item/Scope.hs 20;" f
_opticPos src/Dodge/Data/Item/Scope.hs 16;" f
_opticZoom src/Dodge/Data/Item/Scope.hs 19;" f
_partialAction src/Dodge/Data/ActionPlan.hs 132;" f
_partialAction src/Dodge/Data/ActionPlan.hs 113;" f
_pastWorlds src/Dodge/Data/World.hs 38;" f
_pathGraph src/Dodge/Data/CWorld.hs 28;" f
_pathToPoint src/Dodge/Data/ActionPlan.hs 77;" f
_pathGraph src/Dodge/Data/CWorld.hs 30;" f
_pathToPoint src/Dodge/Data/ActionPlan.hs 72;" f
_pbID src/Dodge/Data/PulseLaser.hs 24;" f
_pbPos src/Dodge/Data/PulseLaser.hs 22;" f
_pbTimer src/Dodge/Data/PulseLaser.hs 23;" f
@@ -2261,14 +2260,16 @@ _scrollTestInt src/Dodge/Data/Input.hs 50;" f
_scurColor src/Dodge/Data/SelectionList.hs 26;" f
_scurPos src/Dodge/Data/SelectionList.hs 24;" f
_scurSize src/Dodge/Data/SelectionList.hs 25;" f
_seDist src/Dodge/Data/PathGraph.hs 49;" f
_seObstacles src/Dodge/Data/PathGraph.hs 50;" f
_seenLocations src/Dodge/Data/LWorld.hs 137;" f
_selLocation src/Dodge/Data/LWorld.hs 138;" f
_sensAmount src/Dodge/Data/Machine/Sensor.hs 22;" f
_sensThreshold src/Dodge/Data/Machine/Sensor.hs 24;" f
_sensType src/Dodge/Data/Machine/Sensor.hs 23;" f
_sensorCoding src/Dodge/Data/GenParams.hs 16;" f
_sentinelDir src/Dodge/Data/ActionPlan.hs 177;" f
_sentinelPos src/Dodge/Data/ActionPlan.hs 177;" f
_sentinelDir src/Dodge/Data/ActionPlan.hs 154;" f
_sentinelPos src/Dodge/Data/ActionPlan.hs 154;" f
_sfColor src/Shape/Data.hs 44;" f
_sfShadowImportance src/Shape/Data.hs 45;" f
_sfSize src/Shape/Data.hs 46;" f
@@ -2290,7 +2291,7 @@ _siPayload src/Dodge/Data/SelectionList.hs 49;" f
_siPictures src/Dodge/Data/SelectionList.hs 43;" f
_siWidth src/Dodge/Data/SelectionList.hs 45;" f
_sideEffect src/Loop/Data.hs 13;" f
_sideImpulses src/Dodge/Data/ActionPlan.hs 147;" f
_sideImpulses src/Dodge/Data/ActionPlan.hs 124;" f
_silhouetteEBO src/Data/Preload/Render.hs 27;" f
_skOldPos src/Dodge/Data/Spark.hs 17;" f
_skPos src/Dodge/Data/Spark.hs 16;" f
@@ -2344,8 +2345,8 @@ _taArcSteps src/Dodge/Data/TeslaArc.hs 19;" f
_taColor src/Dodge/Data/TeslaArc.hs 20;" f
_taTimer src/Dodge/Data/TeslaArc.hs 18;" f
_targetCr src/Dodge/Data/Creature.hs 77;" f
_targetID src/Dodge/Data/ActionPlan.hs 74;" f
_targetSeenAt src/Dodge/Data/ActionPlan.hs 75;" f
_targetID src/Dodge/Data/ActionPlan.hs 69;" f
_targetSeenAt src/Dodge/Data/ActionPlan.hs 70;" f
_tbPos src/Dodge/Data/TractorBeam.hs 14;" f
_tbStartPos src/Dodge/Data/TractorBeam.hs 15;" f
_tbTime src/Dodge/Data/TractorBeam.hs 17;" f
@@ -2398,7 +2399,7 @@ _tuDir src/Dodge/Data/Machine.hs 55;" f
_tuFireTime src/Dodge/Data/Machine.hs 54;" f
_tuTurnSpeed src/Dodge/Data/Machine.hs 53;" f
_tuWeapon src/Dodge/Data/Machine.hs 52;" f
_turnToPoint src/Dodge/Data/ActionPlan.hs 79;" f
_turnToPoint src/Dodge/Data/ActionPlan.hs 73;" f
_uInt src/Dodge/Data/Item/Use.hs 33;" f
_uScope src/Dodge/Data/Item/Use.hs 36;" f
_uValue src/Dodge/Data/Item/Use.hs 35;" f
@@ -2420,7 +2421,7 @@ _unputTerminal src/Dodge/Data/GenWorld.hs 43;" f
_useExactly src/Dodge/Data/Muzzle.hs 62;" f
_useMapperLines src/Dodge/Data/Item/Use.hs 40;" f
_useMapperPoints src/Dodge/Data/Item/Use.hs 41;" f
_useSelf src/Dodge/Data/ActionPlan.hs 142;" f
_useSelf src/Dodge/Data/ActionPlan.hs 120;" f
_useToggle src/Dodge/Data/Item/Use.hs 38;" f
_useUpTo src/Dodge/Data/Muzzle.hs 63;" f
_uvCanContinue src/Dodge/Data/Universe.hs 39;" f
@@ -2470,8 +2471,8 @@ _vxPos src/Picture/Data.hs 14;" f
_vxShadNum src/Picture/Data.hs 18;" f
_wCam src/Dodge/Data/World.hs 55;" f
_wTime src/Dodge/Data/Item/Params.hs 22;" f
_waitThenAction src/Dodge/Data/ActionPlan.hs 92;" f
_waitThenTimer src/Dodge/Data/ActionPlan.hs 91;" f
_waitThenAction src/Dodge/Data/ActionPlan.hs 78;" f
_waitThenTimer src/Dodge/Data/ActionPlan.hs 77;" f
_wallDamages src/Dodge/Data/LWorld.hs 121;" f
_wallShader src/Data/Preload/Render.hs 48;" f
_wallVBO src/Data/Preload/Render.hs 47;" f
@@ -2528,7 +2529,7 @@ addDepth src/Picture/Base.hs 133;" f
addDoorAtNthLinkToggleTerminal src/Dodge/Room/Warning.hs 40;" f
addDoorToggleTerminal src/Dodge/Room/Warning.hs 37;" f
addDoorWall src/Dodge/Placement/PlaceSpot/TriggerDoor.hs 53;" f
addEdges src/Dodge/Path.hs 134;" f
addEdges src/Dodge/Path.hs 153;" f
addGib4 src/Dodge/Prop/Gib.hs 52;" f
addGibAt src/Dodge/Prop/Gib.hs 63;" f
addGibAtDir src/Dodge/Prop/Gib.hs 69;" f
@@ -2543,7 +2544,7 @@ addGirderNS' src/Dodge/Room/Modify/Girder.hs 55;" f
addHighGirder src/Dodge/Room/Modify/Girder.hs 132;" f
addHighGirder' src/Dodge/Room/Modify/Girder.hs 142;" f
addIndefiniteArticle src/StringHelp.hs 17;" f
addNodes src/Dodge/Path.hs 127;" f
addNodes src/Dodge/Path.hs 146;" f
addPane src/Dodge/Placement/PlaceSpot.hs 183;" f
addPlmnt src/Dodge/LevelGen/PlacementHelper.hs 87;" f
addPointPolygon src/Geometry/Polygon.hs 134;" f
@@ -2699,7 +2700,7 @@ battery src/Dodge/Item/Ammo.hs 63;" f
batteryPack src/Dodge/Item/Equipment.hs 46;" f
belowNumX src/Dodge/Combine/Graph.hs 86;" f
beltMag src/Dodge/Item/Ammo.hs 39;" f
bfsNodePoints src/Dodge/Path.hs 69;" f
bfsNodePoints src/Dodge/Path.hs 72;" f
bfsThenReturn src/Dodge/Creature/ReaderUpdate.hs 225;" f
bgateCalc src/Dodge/Inventory/SelectionList.hs 118;" f
bgunSound src/Dodge/HeldUse.hs 514;" f
@@ -3129,13 +3130,13 @@ defaultDrawButton src/Dodge/Button/Draw.hs 29;" f
defaultEquipment src/Dodge/Default.hs 24;" f
defaultFlIt src/Dodge/Default.hs 27;" f
defaultForeground src/Dodge/Default/ForegroundShape.hs 5;" f
defaultHUD src/Dodge/Default/World.hs 158;" f
defaultHUD src/Dodge/Default/World.hs 160;" f
defaultHeldItem src/Dodge/Default/Item.hs 9;" f
defaultInanimate src/Dodge/Default/Creature.hs 62;" f
defaultInput src/Dodge/Default/World.hs 11;" f
defaultIntention src/Dodge/Default/Creature.hs 98;" f
defaultInvSize src/Dodge/Default/Creature.hs 72;" f
defaultLWorld src/Dodge/Default/World.hs 95;" f
defaultLWorld src/Dodge/Default/World.hs 97;" f
defaultListDisplayParams src/Dodge/ListDisplayParams.hs 18;" f
defaultMachine src/Dodge/Default.hs 30;" f
defaultMachineWall src/Dodge/Default/Wall.hs 55;" f
@@ -3419,9 +3420,8 @@ drawZoneCirc src/Dodge/Debug/Picture.hs 301;" f
drawZoneCol src/Dodge/Debug/Picture.hs 149;" f
drawZoneNearPointCursor src/Dodge/Debug/Picture.hs 294;" f
dropAll src/Dodge/Creature/Update.hs 129;" f
dropExcept src/Dodge/Creature/Action.hs 166;" f
dropInventoryPath src/Dodge/HeldUse.hs 1351;" f
dropItem src/Dodge/Creature/Action.hs 173;" f
dropItem src/Dodge/Creature/Action.hs 154;" f
dropper src/Dodge/Item/Scope.hs 76;" f
drumMag src/Dodge/Item/Ammo.hs 34;" f
dsZoneSize src/Dodge/Zoning/Cloud.hs 42;" f
@@ -3562,7 +3562,7 @@ foamSprayLoopS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 554;" f
foldMTRS src/Dodge/Room/Tutorial.hs 58;" f
foldPairs src/ListHelp.hs 37;" f
foldrWhileArb src/ListHelp.hs 110;" f
followImpulse src/Dodge/Creature/Impulse.hs 23;" f
followImpulse src/Dodge/Creature/Impulse.hs 24;" f
foot1S src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 486;" f
foot2S src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 510;" f
foot3S src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 622;" f
@@ -3634,7 +3634,7 @@ getLaserPhaseV src/Dodge/HeldUse.hs 701;" f
getLinksOfType src/Dodge/RoomLink.hs 41;" f
getMaxLinesTM src/Dodge/Terminal/Type.hs 6;" f
getMenuMouseContext src/Dodge/Update.hs 388;" f
getNodePos src/Dodge/Path.hs 33;" f
getNodePos src/Dodge/Path.hs 36;" f
getPJStabiliser src/Dodge/HeldUse.hs 1251;" f
getPretty src/AesonHelp.hs 8;" f
getPromptTM src/Dodge/Terminal/Type.hs 3;" f
@@ -4114,9 +4114,9 @@ makeIntInterval src/Dodge/Zoning/Base.hs 35;" f
makeMovingEB src/Dodge/EnergyBall.hs 60;" f
makeMuzzleFlare src/Dodge/HeldUse.hs 656;" f
makeParagraph src/Justify.hs 6;" f
makePathBetween src/Dodge/Path.hs 43;" f
makePathBetweenPs src/Dodge/Path.hs 66;" f
makePathUsing src/Dodge/Path.hs 36;" f
makePathBetween src/Dodge/Path.hs 45;" f
makePathBetweenPs src/Dodge/Path.hs 69;" f
makePathUsing src/Dodge/Path.hs 39;" f
makePoisonExplosionAt src/Dodge/WorldEvent/Explosion.hs 25;" f
makeRect src/Grid.hs 82;" f
makeSelectionListPictures src/Dodge/Render/List.hs 66;" f
@@ -4320,8 +4320,7 @@ numShads src/Picture/Data.hs 42;" f
numSubElements src/Shader/Parameters.hs 39;" f
numTraversable src/TreeHelp.hs 184;" f
obstacleColor src/Dodge/Debug/Picture.hs 271;" f
obstructPathsCrossing src/Dodge/Path.hs 150;" f
obstructPathsCrossing' src/Dodge/Path.hs 163;" f
obstructPathsCrossing src/Dodge/Path.hs 169;" f
oldMachineBootS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 698;" f
onEquipWristShield src/Dodge/Equipment.hs 37;" f
onRemoveWristShield src/Dodge/Equipment.hs 24;" f
@@ -4369,7 +4368,8 @@ p src/ShortShow.hs 48;" f
pContID src/Dodge/LevelGen/PlacementHelper.hs 15;" f
pairInPolys src/Dodge/Room/Path.hs 45;" f
pairPolyPointsIntersect src/Geometry/ConvexPoly.hs 70;" f
pairsToGraph src/Dodge/Path.hs 122;" f
pairsToGraph src/Dodge/Path.hs 139;" f
pairsToIncGraph src/Dodge/Path.hs 128;" f
pairsToIncidence src/Dodge/Graph.hs 20;" f
pairsToSCC src/Dodge/Graph.hs 32;" f
paletteToColor src/Color.hs 58;" f
@@ -4377,7 +4377,7 @@ parseItem src/Dodge/Debug/Terminal.hs 62;" f
parseNum src/Dodge/Debug/Terminal.hs 77;" f
passthroughLockKeyLists src/Dodge/Floor.hs 120;" f
pathConnected src/Dodge/Room/CheckConsistency.hs 13;" f
pathEdgeObstructed src/Dodge/Path.hs 46;" f
pathEdgeObstructed src/Dodge/Path.hs 48;" f
pauseAndFloatCam src/Dodge/Camera.hs 10;" f
pauseGame src/Dodge/Update/Input/InGame.hs 525;" f
pauseMenu src/Dodge/Menu.hs 59;" f
@@ -4386,21 +4386,21 @@ pauseSound src/Dodge/SoundLogic.hs 42;" f
pauseTime src/Dodge/Update.hs 182;" f
pbFlicker src/Dodge/Update.hs 469;" f
pbsHit src/Dodge/WorldEvent/ThingsHit.hs 89;" f
peZoneSize src/Dodge/Zoning/Pathing.hs 46;" f
peZoneSize src/Dodge/Zoning/Pathing.hs 47;" f
pedestalRoom src/Dodge/Room/Containing.hs 50;" f
penThing src/Dodge/Bullet.hs 210;" f
perMat src/MatrixHelper.hs 49;" f
perceptionUpdate src/Dodge/Creature/Perception.hs 24;" f
performAction src/Dodge/Creature/Action.hs 93;" f
performAction src/Dodge/Creature/Action.hs 53;" f
performActions src/Dodge/Creature/Action.hs 38;" f
performAimAt src/Dodge/Creature/Action.hs 48;" f
performPathTo src/Dodge/Creature/Action.hs 61;" f
performTurnToA src/Dodge/Creature/Action.hs 80;" f
performAimAt src/Dodge/Creature/Action.hs 102;" f
performPathTo src/Dodge/Creature/Action.hs 115;" f
performTurnToA src/Dodge/Creature/Action.hs 127;" f
perspectiveMatrixb src/MatrixHelper.hs 11;" f
pesNearCirc src/Dodge/Zoning/Pathing.hs 43;" f
pesNearCirc src/Dodge/Zoning/Pathing.hs 44;" f
pesNearPoint src/Dodge/Zoning/Pathing.hs 33;" f
pesNearRect src/Dodge/Zoning/Pathing.hs 40;" f
pesNearSeg src/Dodge/Zoning/Pathing.hs 37;" f
pesNearRect src/Dodge/Zoning/Pathing.hs 41;" f
pesNearSeg src/Dodge/Zoning/Pathing.hs 38;" f
picFormat src/Polyhedra.hs 23;" f
picMap src/Picture/Base.hs 67;" f
pickUpItem src/Dodge/Inventory/Add.hs 69;" f
@@ -4463,7 +4463,7 @@ pointInOrOnPolygon src/Geometry/Polygon.hs 78;" f
pointInPoly src/Geometry/Polygon.hs 86;" f
pointIsInCone src/Geometry.hs 375;" f
pointIsOnScreen src/Dodge/Base/Window.hs 59;" f
pointTowardsImpulse src/Dodge/Path.hs 74;" f
pointTowardsImpulse src/Dodge/Path.hs 77;" f
pointerToItem src/Dodge/Item/Location.hs 39;" f
pointerToItemID src/Dodge/Item/Location.hs 42;" f
pointerYourRootItem src/Dodge/Item/Location.hs 33;" f
@@ -5038,11 +5038,11 @@ smallGlass3S src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 518;" f
smallGlass4S src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 466;" f
smallPillar src/Dodge/Room/Pillar.hs 37;" f
smallRoom src/Dodge/Room/RunPast.hs 31;" f
smallSnailInt2 src/Dodge/Path.hs 62;" f
smallSnailInt2 src/Dodge/Path.hs 63;" f
smg src/Dodge/Item/Held/Stick.hs 58;" f
smokeReducer src/Dodge/Item/Scope.hs 162;" f
snailAround src/Dodge/Path.hs 59;" f
snapToGrid src/Dodge/Path.hs 174;" f
snailAround src/Dodge/Path.hs 60;" f
snapToGrid src/Dodge/Path.hs 187;" f
sndV2 src/Geometry/Data.hs 73;" f
sniperRifle src/Dodge/Item/Held/Rod.hs 44;" f
someCrits src/Dodge/LockAndKey.hs 120;" f
@@ -5232,7 +5232,7 @@ thingsHit src/Dodge/WorldEvent/ThingsHit.hs 36;" f
thingsHitExceptCr src/Dodge/WorldEvent/ThingsHit.hs 119;" f
thingsHitZ src/Dodge/WorldEvent/ThingsHit.hs 44;" f
threeLineDecoration src/Dodge/Placement/TopDecoration.hs 61;" f
throwItem src/Dodge/Creature/Action.hs 209;" f
throwItem src/Dodge/Creature/Action.hs 190;" f
tileTexCoords src/Tile.hs 11;" f
tilesFromRooms src/Dodge/Layout.hs 192;" f
tilesToLine src/Shader/AuxAddition.hs 66;" f
@@ -5572,7 +5572,7 @@ vocalizationTest src/Dodge/Creature/Vocalization.hs 42;" f
volleyGun src/Dodge/Item/Held/Cane.hs 15;" f
volleyGunShape src/Dodge/Item/Draw/SPic.hs 357;" f
walkNozzle src/Dodge/HeldUse.hs 809;" f
walkableNodeNear src/Dodge/Path.hs 52;" f
walkableNodeNear src/Dodge/Path.hs 54;" f
wallBlips src/Dodge/RadarSweep.hs 99;" f
wallBuffer src/Dodge/WallCreatureCollisions.hs 53;" f
wallIsZeroLength src/Dodge/LevelGen/StaticWalls.hs 179;" f
@@ -5658,7 +5658,7 @@ yIntercepts' src/Dodge/Zoning/Base.hs 76;" f
yV2 src/Geometry/Vector.hs 205;" f
yellow src/Color.hs 17;" f
you src/Dodge/Base/You.hs 13;" f
youDropItem src/Dodge/Creature/Action.hs 195;" f
youDropItem src/Dodge/Creature/Action.hs 176;" f
yourAugmentedItem src/Dodge/Render/HUD.hs 238;" f
yourControl src/Dodge/Creature/YourControl.hs 28;" f
yourDefaultStrideLength src/Dodge/Default/Creature.hs 110;" f
@@ -5687,14 +5687,14 @@ zoneOfCirc src/Dodge/Zoning/Base.hs 24;" f
zoneOfCl src/Dodge/Zoning/Cloud.hs 24;" f
zoneOfCr src/Dodge/Zoning/Creature.hs 45;" f
zoneOfDs src/Dodge/Zoning/Cloud.hs 45;" f
zoneOfPe src/Dodge/Zoning/Pathing.hs 49;" f
zoneOfPe src/Dodge/Zoning/Pathing.hs 50;" f
zoneOfPn src/Dodge/Zoning/Pathing.hs 27;" f
zoneOfPoint src/Dodge/Zoning/Base.hs 44;" f
zoneOfRect src/Dodge/Zoning/Base.hs 28;" f
zoneOfSeg src/Dodge/Zoning/Base.hs 47;" f
zoneOfSight src/Dodge/Zoning/World.hs 9;" f
zoneOfWl src/Dodge/Zoning/Wall.hs 55;" f
zonePe src/Dodge/Zoning/Pathing.hs 52;" f
zonePe src/Dodge/Zoning/Pathing.hs 53;" f
zonePn src/Dodge/Zoning/Pathing.hs 30;" f
zoneWall src/Dodge/Zoning/Wall.hs 65;" f
zonesAroundPoint src/Dodge/Zoning/Base.hs 96;" f