Reinstate damagecode terminal commands

This commit is contained in:
2025-08-18 14:39:30 +01:00
parent 33b90d637a
commit 1c9d58c716
6 changed files with 111 additions and 94 deletions
+1 -1
View File
File diff suppressed because one or more lines are too long
+11 -8
View File
@@ -8,6 +8,7 @@ module Dodge.Data.Terminal (
module Dodge.Data.Terminal.Status, module Dodge.Data.Terminal.Status,
) where ) where
import Dodge.Data.Machine.Sensor.Type
import Sound.Data import Sound.Data
import Color import Color
import Control.Lens import Control.Lens
@@ -69,15 +70,16 @@ data TerminalCommandEffect
| TerminalCommandEffectSingleCommand WdWd [String] | TerminalCommandEffectSingleCommand WdWd [String]
| TerminalCommandEffectNone | TerminalCommandEffectNone
data TerminalCommand = TerminalCommand --data TerminalCommand = TerminalCommand
{ _tcString :: String -- { _tcString :: String
, _tcAlias :: [String] -- , _tcAlias :: [String]
, _tcHelp :: String -- , _tcHelp :: String
, _tcEffect :: TerminalCommandEffect -- Terminal -> World -> EffectArguments -- , _tcEffect :: TerminalCommandEffect -- Terminal -> World -> EffectArguments
} -- }
data TCom = TCInfo String String data TCom = TCInfo String String
| TCBase | TCBase
| TCDamageCommand
--data TEff = TEff --data TEff = TEff
-- { _teffHelp :: String -- { _teffHelp :: String
@@ -92,13 +94,14 @@ data TmWdWd
| TmWdWdDoDeathTriggers | TmWdWdDoDeathTriggers
| TmTmClearDisplayedLines | TmTmClearDisplayedLines
| TmTmSetStatus TerminalStatus | TmTmSetStatus TerminalStatus
| TmGetDamageCoding SensorType
-- | TmDisplayCommands -- | TmDisplayCommands
makeLenses ''Terminal makeLenses ''Terminal
makeLenses ''TerminalLine makeLenses ''TerminalLine
makeLenses ''TerminalToggle makeLenses ''TerminalToggle
makeLenses ''EffectArguments makeLenses ''EffectArguments
makeLenses ''TerminalCommand --makeLenses ''TerminalCommand
makeLenses ''TCom makeLenses ''TCom
concat concat
<$> mapM <$> mapM
@@ -108,7 +111,7 @@ concat
, ''TerminalToggle , ''TerminalToggle
, ''EffectArguments , ''EffectArguments
, ''TerminalCommandEffect , ''TerminalCommandEffect
, ''TerminalCommand -- , ''TerminalCommand
, ''TCom , ''TCom
, ''TmWdWd , ''TmWdWd
, ''Terminal , ''Terminal
+1 -2
View File
@@ -74,8 +74,7 @@ sensInsideDoor senseType outplid rm =
.++~ [ psPt atFstLnkOut . PutForeground $ floorWire (V2 20 0) (V2 20 (-100)) .++~ [ psPt atFstLnkOut . PutForeground $ floorWire (V2 20 0) (V2 20 (-100))
, psPt atFstLnkOut . PutForeground $ floorWire (V2 0 (-100)) (V2 20 (-100)) , psPt atFstLnkOut . PutForeground $ floorWire (V2 0 (-100)) (V2 20 (-100))
, psPt atFstLnkOut . PutForeground $ verticalWire (V2 20 0) 0 80 , psPt atFstLnkOut . PutForeground $ verticalWire (V2 20 0) 0 80
, putMessageTerminal terminalColor (basicTerminal-- & tmCommands .:~ damageCodeCommand) , putMessageTerminal terminalColor (basicTerminal & tmCommands .:~ TCDamageCommand)
)
& plSpot .~ rprBoolShift isUnusedLnk (shiftInBy 10) & plSpot .~ rprBoolShift isUnusedLnk (shiftInBy 10)
] ]
& rmOutPmnt .~ [OutPlacement (sensAboveDoor senseType 10 (atFstLnkOutShiftInward 100)) outplid] & rmOutPmnt .~ [OutPlacement (sensAboveDoor senseType 10 (atFstLnkOutShiftInward 100)) outplid]
+54 -45
View File
@@ -25,6 +25,8 @@ module Dodge.Terminal (
--import Dodge.Data.WorldEffect --import Dodge.Data.WorldEffect
import Data.Char
import qualified Data.List as List
import Color import Color
import qualified Data.ListTrie.Patricia.Map.Enum as PTE import qualified Data.ListTrie.Patricia.Map.Enum as PTE
--import Control.Monad --import Control.Monad
@@ -119,6 +121,23 @@ getCommand :: TCom -> PTE.TrieMap Char (PTE.TrieMap Char [TerminalLine])
getCommand = \case getCommand = \case
TCInfo x z -> PTE.singleton x (PTE.singleton "" (makeTermPara z)) TCInfo x z -> PTE.singleton x (PTE.singleton "" (makeTermPara z))
TCBase -> helpCommand <> quitCommand TCBase -> helpCommand <> quitCommand
TCDamageCommand -> damageCodeCommand
damageCodeCommand :: PTE.TrieMap Char (PTE.TrieMap Char [TerminalLine])
damageCodeCommand = PTE.singleton "DAMAGECODE" $ PTE.fromList $ mapMaybe f [minBound..]
where
f :: SensorType -> Maybe (String, [TerminalLine])
f st = do
s <- g st
return (s, [TLine 0 [] $ TmGetDamageCoding st])
g = fmap (map toUpper) . fmap reverse . List.stripPrefix (reverse "Sensor")
. reverse . show
sensorCommand :: PTE.TrieMap Char (PTE.TrieMap Char [TerminalLine])
sensorCommand = PTE.singleton "SENSOR" mempty
toggleCommand :: PTE.TrieMap Char (PTE.TrieMap Char [TerminalLine])
toggleCommand = PTE.singleton "TOGGLE" mempty
helpCommand :: PTE.TrieMap Char (PTE.TrieMap Char [TerminalLine]) helpCommand :: PTE.TrieMap Char (PTE.TrieMap Char [TerminalLine])
helpCommand = PTE.singleton "HELP" (fmap makeTermPara helpStrings) helpCommand = PTE.singleton "HELP" (fmap makeTermPara helpStrings)
@@ -126,15 +145,11 @@ helpCommand = PTE.singleton "HELP" (fmap makeTermPara helpStrings)
helpStrings :: PTE.TrieMap Char String helpStrings :: PTE.TrieMap Char String
helpStrings = helpStrings =
PTE.fromList PTE.fromList
[ ("", "THIS TERMINAL PROCESSES TEXT INPUT. USE TAB FOR AVAILABLE COMMANDS AND AUTOCOMPLETE.") [ ("", "THIS TERMINAL PROCESSES TEXT INPUT. USE [TAB] FOR AVAILABLE COMMANDS AND AUTOCOMPLETE.")
, ("HELP", "BASIC HELP. ACCEPTS A COMMAND AS AN ARGUMENT.") , ("HELP", "BASIC HELP. ACCEPTS A COMMAND AS AN ARGUMENT.")
, ("QUIT", "SHUTDOWN TERMINAL.") , ("QUIT", "SHUTDOWN TERMINAL.")
, ("QTEST", "TEST.")
] ]
--commandsCommand :: PTE.TrieMap Char (PTE.TrieMap Char [TerminalLine])
--commandsCommand = PTE.singleton "COMMANDS" (PTE.singleton "" [TLine 0 [] TmDisplayCommands])
quitCommand :: PTE.TrieMap Char (PTE.TrieMap Char [TerminalLine]) quitCommand :: PTE.TrieMap Char (PTE.TrieMap Char [TerminalLine])
quitCommand = PTE.singleton "QUIT" (PTE.singleton "" [TLine 0 [] TmWdWdDisconnectTerminal]) quitCommand = PTE.singleton "QUIT" (PTE.singleton "" [TLine 0 [] TmWdWdDisconnectTerminal])
@@ -156,26 +171,20 @@ commandColor = yellow
-- ugly -- ugly
tabComplete :: String -> Terminal -> Terminal tabComplete :: String -> Terminal -> Terminal
tabComplete s' tm = case PTE.lookup s $ getCommands tm of tabComplete s' tm = case PTE.lookup s $ getCommands tm of
Just m -> case fmap fst $ PTE.toList $ PTE.lookupPrefix a m of Just m -> f (s ++ " ") $ PTE.toList $ PTE.lookupPrefix a m
[] -> tm Nothing -> f "" $ PTE.toList $ PTE.lookupPrefix s $ getCommands tm
[x] -> tm & tmStatus .~ TerminalTextInput (s ++ " " ++ x)
xs ->
tm & tmFutureLines
.~ makeColorTermPara
commandColor
(unwords xs)
Nothing -> case fmap fst $ PTE.toList $ PTE.lookupPrefix s $ getCommands tm of
[] -> tm
[x] -> tm & tmStatus .~ TerminalTextInput x
xs ->
tm & tmFutureLines
.~ makeColorTermPara
commandColor
(unwords xs)
where where
ss = words s' ss = words s'
s = fromMaybe "" $ ss ^? ix 0 s = fromMaybe "" $ ss ^? ix 0
a = fromMaybe "" $ ss ^? ix 1 a = fromMaybe "" $ ss ^? ix 1
f y m' = case fmap fst m' of
[] -> tm
[x] -> tm & tmStatus .~ TerminalTextInput (y ++ x)
xs ->
tm & tmFutureLines
.~ makeColorTermPara
commandColor
(unwords xs)
--doTerminalCommandEffect :: TerminalCommandEffect -> Terminal -> World -> EffectArguments --doTerminalCommandEffect :: TerminalCommandEffect -> Terminal -> World -> EffectArguments
--doTerminalCommandEffect tce = case tce of --doTerminalCommandEffect tce = case tce of
@@ -238,26 +247,26 @@ tabComplete s' tm = case PTE.lookup s $ getCommands tm of
-- (makeTermPara . map toLower . show . f) -- (makeTermPara . map toLower . show . f)
-- (w ^? cWorld . lWorld . machines . ix (_tmMachineID tm) . mcType . _McSensor) -- (w ^? cWorld . lWorld . machines . ix (_tmMachineID tm) . mcType . _McSensor)
toggleCommand :: TerminalCommand --toggleCommand :: TerminalCommand
toggleCommand = --toggleCommand =
TerminalCommand -- TerminalCommand
{ _tcString = "TOGGLE" -- { _tcString = "TOGGLE"
, _tcAlias = ["TOG"] -- , _tcAlias = ["TOG"]
, _tcHelp = "Performs a reversable effect." -- , _tcHelp = "Performs a reversable effect."
, _tcEffect = TerminalCommandEffectLinkedObject -- \tm _ -> OneArgument "A LINKED OBJECT" (togglesToEffects tm) -- , _tcEffect = TerminalCommandEffectLinkedObject -- \tm _ -> OneArgument "A LINKED OBJECT" (togglesToEffects tm)
} -- }
--decodedtmap :: M.Map SensorType (PaletteColor, DecorationShape) -> M.Map String [TerminalLine] --decodedtmap :: M.Map SensorType (PaletteColor, DecorationShape) -> M.Map String [TerminalLine]
--decodedtmap = M.mapKeys show . M.map ((: []) . makeTermLine . show) --decodedtmap = M.mapKeys show . M.map ((: []) . makeTermLine . show)
sensorCommand :: TerminalCommand --sensorCommand :: TerminalCommand
sensorCommand = --sensorCommand =
TerminalCommand -- TerminalCommand
{ _tcString = "SENSOR" -- { _tcString = "SENSOR"
, _tcAlias = ["SEN"] -- , _tcAlias = ["SEN"]
, _tcHelp = "Access information concerning the connected sensor." -- , _tcHelp = "Access information concerning the connected sensor."
, _tcEffect = TerminalCommandEffectSensorParameter -- \tm -> OneArgument "A SENSOR PARAMETER" . sensorInfoMap tm -- , _tcEffect = TerminalCommandEffectSensorParameter -- \tm -> OneArgument "A SENSOR PARAMETER" . sensorInfoMap tm
} -- }
disconnectTerminal :: Terminal -> World -> World disconnectTerminal :: Terminal -> World -> World
disconnectTerminal tm = disconnectTerminal tm =
@@ -274,14 +283,14 @@ exitTerminalSubInv w = case w ^? hud . hudElement . subInventory . termID of
.~ NoSubInventory --MouseInvNothing .~ NoSubInventory --MouseInvNothing
_ -> w _ -> w
damageCodeCommand :: TerminalCommand --damageCodeCommand :: TerminalCommand
damageCodeCommand = --damageCodeCommand =
TerminalCommand -- TerminalCommand
{ _tcString = "DAMAGECODE" -- { _tcString = "DAMAGECODE"
, _tcAlias = ["DCODE", "DC"] -- , _tcAlias = ["DCODE", "DC"]
, _tcHelp = "Displays the shape and color associated with a given damage type." -- , _tcHelp = "Displays the shape and color associated with a given damage type."
, _tcEffect = TerminalCommandEffectDamageCoding -- \_ -> OneArgument "A DAMAGE TYPE" . getDamageCoding -- , _tcEffect = TerminalCommandEffectDamageCoding -- \_ -> OneArgument "A DAMAGE TYPE" . getDamageCoding
} -- }
--infoClearInput :: Terminal -> [TerminalLine] -> World -> World --infoClearInput :: Terminal -> [TerminalLine] -> World -> World
--infoClearInput tm tls = --infoClearInput tm tls =
+10
View File
@@ -95,6 +95,10 @@ doTmWdWd tmwdwd = case tmwdwd of
TmTmClearDisplayedLines -> \tm -> fromMaybe id $ do TmTmClearDisplayedLines -> \tm -> fromMaybe id $ do
tid <- tm ^? tmID tid <- tm ^? tmID
return $ cWorld . lWorld . terminals . ix tid . tmDisplayedLines .~ [] return $ cWorld . lWorld . terminals . ix tid . tmDisplayedLines .~ []
TmGetDamageCoding st -> \tm w -> fromMaybe w $ do
tid <- tm ^? tmID
return $ w & cWorld . lWorld . terminals . ix tid . tmFutureLines
.~ decodeSensorType st w
TmTmSetStatus x -> \tm -> fromMaybe id $ do TmTmSetStatus x -> \tm -> fromMaybe id $ do
tid <- tm ^? tmID tid <- tm ^? tmID
return $ cWorld . lWorld . terminals . ix tid . tmStatus .~ x return $ cWorld . lWorld . terminals . ix tid . tmStatus .~ x
@@ -114,3 +118,9 @@ doTmWdWd tmwdwd = case tmwdwd of
in soundStart TerminalSound tpos sid Nothing w in soundStart TerminalSound tpos sid Nothing w
TmWdWdDoDeathTriggers -> doDeathTriggers TmWdWdDoDeathTriggers -> doDeathTriggers
TmWdWdfromWdWd f -> \_ -> doWdWd f TmWdWdfromWdWd f -> \_ -> doWdWd f
decodeSensorType :: SensorType -> World -> [TerminalLine]
decodeSensorType st w = fromMaybe [] $ do
x <- w ^? cWorld . cwGen . cwgParams . sensorCoding . ix st
return [makeTermLine $ show x]
+34 -38
View File
@@ -17,7 +17,7 @@
<$> src/Dodge/Data/Camera.hs 39;" o <$> src/Dodge/Data/Camera.hs 39;" o
<$> src/Dodge/Data/Creature.hs 80;" o <$> src/Dodge/Data/Creature.hs 80;" o
<$> src/Dodge/Data/LWorld.hs 184;" o <$> src/Dodge/Data/LWorld.hs 184;" o
<$> src/Dodge/Data/Terminal.hs 104;" o <$> src/Dodge/Data/Terminal.hs 105;" o
ABSOLUTE src/Dodge/Data/Item/Combine.hs 40;" C ABSOLUTE src/Dodge/Data/Item/Combine.hs 40;" C
AIUNIT src/Dodge/Data/Item/Combine.hs 75;" C AIUNIT src/Dodge/Data/Item/Combine.hs 75;" C
ALTERIFLE src/Dodge/Data/Item/Combine.hs 155;" C ALTERIFLE src/Dodge/Data/Item/Combine.hs 155;" C
@@ -1310,6 +1310,7 @@ SwitchToItem src/Dodge/Data/ActionPlan.hs 38;" C
TAPE src/Dodge/Data/Item/Combine.hs 56;" C TAPE src/Dodge/Data/Item/Combine.hs 56;" C
TARGETING src/Dodge/Data/Item/Combine.hs 22;" C TARGETING src/Dodge/Data/Item/Combine.hs 22;" C
TCBase src/Dodge/Data/Terminal.hs 80;" C TCBase src/Dodge/Data/Terminal.hs 80;" C
TCDamageCommand src/Dodge/Data/Terminal.hs 81;" C
TCInfo src/Dodge/Data/Terminal.hs 79;" C TCInfo src/Dodge/Data/Terminal.hs 79;" C
TCom src/Dodge/Data/Terminal.hs 79;" t TCom src/Dodge/Data/Terminal.hs 79;" t
TESLAGUN src/Dodge/Data/Item/Combine.hs 169;" C TESLAGUN src/Dodge/Data/Item/Combine.hs 169;" C
@@ -1345,7 +1346,6 @@ TeleSound src/Dodge/Data/SoundOrigin.hs 36;" C
TermSignal src/Dodge/Data/Input.hs 54;" t TermSignal src/Dodge/Data/Input.hs 54;" t
Terminal src/Dodge/Data/Terminal.hs 25;" t Terminal src/Dodge/Data/Terminal.hs 25;" t
TerminalBusy src/Dodge/Data/Terminal/Status.hs 12;" C TerminalBusy src/Dodge/Data/Terminal/Status.hs 12;" C
TerminalCommand src/Dodge/Data/Terminal.hs 72;" t
TerminalCommandArguments src/Dodge/Data/Terminal.hs 62;" C TerminalCommandArguments src/Dodge/Data/Terminal.hs 62;" C
TerminalCommandEffect src/Dodge/Data/Terminal.hs 61;" t TerminalCommandEffect src/Dodge/Data/Terminal.hs 61;" t
TerminalCommandEffectCommands src/Dodge/Data/Terminal.hs 68;" C TerminalCommandEffectCommands src/Dodge/Data/Terminal.hs 68;" C
@@ -1376,14 +1376,14 @@ Tile src/Data/Tile.hs 16;" t
Tiled src/Data/Tile.hs 14;" C Tiled src/Data/Tile.hs 14;" C
TimeFlowStatus src/Dodge/Data/World.hs 58;" t TimeFlowStatus src/Dodge/Data/World.hs 58;" t
Tiny src/Shape/Data.hs 32;" C Tiny src/Shape/Data.hs 32;" C
TmTmClearDisplayedLines src/Dodge/Data/Terminal.hs 93;" C TmTmClearDisplayedLines src/Dodge/Data/Terminal.hs 94;" C
TmTmSetStatus src/Dodge/Data/Terminal.hs 94;" C TmTmSetStatus src/Dodge/Data/Terminal.hs 95;" C
TmWdId src/Dodge/Data/Terminal.hs 88;" C TmWdId src/Dodge/Data/Terminal.hs 89;" C
TmWdWd src/Dodge/Data/Terminal.hs 87;" t TmWdWd src/Dodge/Data/Terminal.hs 88;" t
TmWdWdDisconnectTerminal src/Dodge/Data/Terminal.hs 89;" C TmWdWdDisconnectTerminal src/Dodge/Data/Terminal.hs 90;" C
TmWdWdDoDeathTriggers src/Dodge/Data/Terminal.hs 92;" C TmWdWdDoDeathTriggers src/Dodge/Data/Terminal.hs 93;" C
TmWdWdTermSound src/Dodge/Data/Terminal.hs 91;" C TmWdWdTermSound src/Dodge/Data/Terminal.hs 92;" C
TmWdWdfromWdWd src/Dodge/Data/Terminal.hs 90;" C TmWdWdfromWdWd src/Dodge/Data/Terminal.hs 91;" C
ToContinueStart src/Sound/Data.hs 27;" C ToContinueStart src/Sound/Data.hs 27;" C
ToPlaySound src/Sound/Data.hs 35;" t ToPlaySound src/Sound/Data.hs 35;" t
ToStart src/Sound/Data.hs 26;" C ToStart src/Sound/Data.hs 26;" C
@@ -2419,10 +2419,6 @@ _tbPos src/Dodge/Data/TractorBeam.hs 14;" f
_tbStartPos src/Dodge/Data/TractorBeam.hs 15;" f _tbStartPos src/Dodge/Data/TractorBeam.hs 15;" f
_tbTime src/Dodge/Data/TractorBeam.hs 17;" f _tbTime src/Dodge/Data/TractorBeam.hs 17;" f
_tbVel src/Dodge/Data/TractorBeam.hs 16;" f _tbVel src/Dodge/Data/TractorBeam.hs 16;" f
_tcAlias src/Dodge/Data/Terminal.hs 74;" f
_tcEffect src/Dodge/Data/Terminal.hs 76;" f
_tcHelp src/Dodge/Data/Terminal.hs 75;" f
_tcString src/Dodge/Data/Terminal.hs 73;" f
_termID src/Dodge/Data/HUD.hs 42;" f _termID src/Dodge/Data/HUD.hs 42;" f
_terminals src/Dodge/Data/LWorld.hs 128;" f _terminals src/Dodge/Data/LWorld.hs 128;" f
_teslaArcs src/Dodge/Data/LWorld.hs 116;" f _teslaArcs src/Dodge/Data/LWorld.hs 116;" f
@@ -2761,7 +2757,7 @@ basicItemDisplay src/Dodge/Item/Display.hs 23;" f
basicMachineApplyDamage src/Dodge/Machine/Damage.hs 6;" f basicMachineApplyDamage src/Dodge/Machine/Damage.hs 6;" f
basicMachineUpdate src/Dodge/Machine.hs 13;" f basicMachineUpdate src/Dodge/Machine.hs 13;" f
basicMuzFlare src/Dodge/HeldUse.hs 709;" f basicMuzFlare src/Dodge/HeldUse.hs 709;" f
basicTerminal src/Dodge/Terminal.hs 42;" f basicTerminal src/Dodge/Terminal.hs 44;" f
battery src/Dodge/Item/Ammo.hs 63;" f battery src/Dodge/Item/Ammo.hs 63;" f
batteryPack src/Dodge/Item/Equipment.hs 46;" f batteryPack src/Dodge/Item/Equipment.hs 46;" f
belowNumX src/Dodge/Combine/Graph.hs 86;" f belowNumX src/Dodge/Combine/Graph.hs 86;" f
@@ -2977,7 +2973,7 @@ combineList src/Dodge/Combine.hs 20;" f
combineRooms src/Dodge/Room/Procedural.hs 152;" f combineRooms src/Dodge/Room/Procedural.hs 152;" f
combineS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 480;" f combineS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 480;" f
combineTree src/Dodge/Tree/Compose.hs 66;" f combineTree src/Dodge/Tree/Compose.hs 66;" f
commandColor src/Dodge/Terminal.hs 147;" f commandColor src/Dodge/Terminal.hs 159;" f
commonPrefix src/Dodge/Debug/Terminal.hs 146;" f commonPrefix src/Dodge/Debug/Terminal.hs 146;" f
comp src/Quaternion.hs 65;" f comp src/Quaternion.hs 65;" f
compactDraw src/Dodge/LevelGen.hs 91;" f compactDraw src/Dodge/LevelGen.hs 91;" f
@@ -2991,8 +2987,8 @@ conEffects src/Dodge/Concurrent.hs 12;" f
conLDTToConDT src/Dodge/DoubleTree.hs 22;" f conLDTToConDT src/Dodge/DoubleTree.hs 22;" f
concurrentIS src/Dodge/Update/Input/InGame.hs 291;" f concurrentIS src/Dodge/Update/Input/InGame.hs 291;" f
connectItemS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 722;" f connectItemS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 722;" f
connectionBlurb src/Dodge/Terminal.hs 103;" f connectionBlurb src/Dodge/Terminal.hs 106;" f
connectionBlurbLines src/Dodge/Terminal.hs 49;" f connectionBlurbLines src/Dodge/Terminal.hs 51;" f
constructEdges src/Polyhedra.hs 34;" f constructEdges src/Polyhedra.hs 34;" f
constructEdgesList src/Polyhedra.hs 43;" f constructEdgesList src/Polyhedra.hs 43;" f
contToIDCont src/Dodge/LevelGen/PlacementHelper.hs 57;" f contToIDCont src/Dodge/LevelGen/PlacementHelper.hs 57;" f
@@ -3117,7 +3113,7 @@ dShadCol src/Dodge/Render/List.hs 215;" f
damMatSideEffect src/Dodge/Material/Damage.hs 13;" f damMatSideEffect src/Dodge/Material/Damage.hs 13;" f
damThingHitWith src/Dodge/Damage.hs 72;" f damThingHitWith src/Dodge/Damage.hs 72;" f
damToExpBarrel src/Dodge/Barreloid.hs 49;" f damToExpBarrel src/Dodge/Barreloid.hs 49;" f
damageCodeCommand src/Dodge/Terminal.hs 255;" f damageCodeCommand src/Dodge/Terminal.hs 124;" f
damageCrWl src/Dodge/Damage.hs 29;" f damageCrWl src/Dodge/Damage.hs 29;" f
damageCrWlID src/Dodge/Damage.hs 23;" f damageCrWlID src/Dodge/Damage.hs 23;" f
damageDirection src/Dodge/Damage.hs 35;" f damageDirection src/Dodge/Damage.hs 35;" f
@@ -3257,7 +3253,7 @@ dim src/Color.hs 112;" f
dirtColor src/Dodge/Default/Wall.hs 81;" f dirtColor src/Dodge/Default/Wall.hs 81;" f
dirtPoly src/Dodge/Room/RoadBlock.hs 74;" f dirtPoly src/Dodge/Room/RoadBlock.hs 74;" f
disconnectItemS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 650;" f disconnectItemS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 650;" f
disconnectTerminal src/Dodge/Terminal.hs 240;" f disconnectTerminal src/Dodge/Terminal.hs 262;" f
displayConfig src/Dodge/Menu.hs 213;" f displayConfig src/Dodge/Menu.hs 213;" f
displayControls src/Dodge/Menu.hs 223;" f displayControls src/Dodge/Menu.hs 223;" f
displayFrameTicks src/Dodge/Render/Picture.hs 45;" f displayFrameTicks src/Dodge/Render/Picture.hs 45;" f
@@ -3569,7 +3565,7 @@ errorNormalizeV src/Geometry.hs 55;" f
errorPointInPolygon src/Geometry.hs 47;" f errorPointInPolygon src/Geometry.hs 47;" f
evaluateRandPS src/Dodge/Placement/PlaceSpot.hs 150;" f evaluateRandPS src/Dodge/Placement/PlaceSpot.hs 150;" f
evenOddSplit src/Dodge/Base.hs 160;" f evenOddSplit src/Dodge/Base.hs 160;" f
exitTerminalSubInv src/Dodge/Terminal.hs 248;" f exitTerminalSubInv src/Dodge/Terminal.hs 270;" f
expandLine src/Dodge/Picture.hs 30;" f expandLine src/Dodge/Picture.hs 30;" f
expandPolyBy src/Dodge/LevelGen/StaticWalls.hs 91;" f expandPolyBy src/Dodge/LevelGen/StaticWalls.hs 91;" f
expandPolyByFixed src/Dodge/LevelGen/StaticWalls.hs 97;" f expandPolyByFixed src/Dodge/LevelGen/StaticWalls.hs 97;" f
@@ -3706,8 +3702,8 @@ getAvailableListLines src/Dodge/SelectionList.hs 10;" f
getBulHitDams src/Dodge/Bullet.hs 169;" f getBulHitDams src/Dodge/Bullet.hs 169;" f
getBulletType src/Dodge/HeldUse.hs 943;" f getBulletType src/Dodge/HeldUse.hs 943;" f
getCloseObj src/Dodge/Update/Input/InGame.hs 522;" f getCloseObj src/Dodge/Update/Input/InGame.hs 522;" f
getCommand src/Dodge/Terminal.hs 115;" f getCommand src/Dodge/Terminal.hs 118;" f
getCommands src/Dodge/Terminal.hs 112;" f getCommands src/Dodge/Terminal.hs 115;" f
getCrMoveSpeed src/Dodge/Creature/Statistics.hs 45;" f getCrMoveSpeed src/Dodge/Creature/Statistics.hs 45;" f
getDistortions src/Dodge/Render.hs 435;" f getDistortions src/Dodge/Render.hs 435;" f
getEquipmentAllocation src/Dodge/Inventory/RBList.hs 47;" f getEquipmentAllocation src/Dodge/Inventory/RBList.hs 47;" f
@@ -3825,9 +3821,9 @@ heldItemWeight src/Dodge/Creature/Statistics.hs 72;" f
heldPositionInfo src/Dodge/Item/Info.hs 241;" f heldPositionInfo src/Dodge/Item/Info.hs 241;" f
heldTorqueAmount src/Dodge/HeldUse.hs 584;" f heldTorqueAmount src/Dodge/HeldUse.hs 584;" f
heldTriggerType src/Dodge/BaseTriggerType.hs 27;" f heldTriggerType src/Dodge/BaseTriggerType.hs 27;" f
helpCommand src/Dodge/Terminal.hs 120;" f helpCommand src/Dodge/Terminal.hs 133;" f
helpPoly3D src/Polyhedra.hs 125;" f helpPoly3D src/Polyhedra.hs 125;" f
helpStrings src/Dodge/Terminal.hs 123;" f helpStrings src/Dodge/Terminal.hs 136;" f
heron src/Geometry.hs 221;" f heron src/Geometry.hs 221;" f
hiToFloat src/Dodge/Room/Modify/Girder.hs 171;" f hiToFloat src/Dodge/Room/Modify/Girder.hs 171;" f
highBar src/Dodge/Room/Foreground.hs 89;" f highBar src/Dodge/Room/Foreground.hs 89;" f
@@ -4176,8 +4172,8 @@ makeBullet src/Dodge/HeldUse.hs 1021;" f
makeButton src/Dodge/LevelGen/Switch.hs 16;" f makeButton src/Dodge/LevelGen/Switch.hs 16;" f
makeByteStringShaderUsingVAO src/Shader/Compile.hs 128;" f makeByteStringShaderUsingVAO src/Shader/Compile.hs 128;" f
makeCloudAt src/Dodge/WorldEvent/Cloud.hs 7;" f makeCloudAt src/Dodge/WorldEvent/Cloud.hs 7;" f
makeColorTermLine src/Dodge/Terminal.hs 144;" f makeColorTermLine src/Dodge/Terminal.hs 156;" f
makeColorTermPara src/Dodge/Terminal.hs 141;" f makeColorTermPara src/Dodge/Terminal.hs 153;" f
makeCorpse src/Dodge/Corpse/Make.hs 13;" f makeCorpse src/Dodge/Corpse/Make.hs 13;" f
makeDebris src/Dodge/Block/Debris.hs 45;" f makeDebris src/Dodge/Block/Debris.hs 45;" f
makeDebrisDirected src/Dodge/Block/Debris.hs 48;" f makeDebrisDirected src/Dodge/Block/Debris.hs 48;" f
@@ -4213,8 +4209,8 @@ makeSourcedShader src/Shader/Compile.hs 167;" f
makeSpark src/Dodge/Spark.hs 45;" f makeSpark src/Dodge/Spark.hs 45;" f
makeSubmenuOption src/Dodge/Menu/OptionType.hs 19;" f makeSubmenuOption src/Dodge/Menu/OptionType.hs 19;" f
makeSwitch src/Dodge/LevelGen/Switch.hs 38;" f makeSwitch src/Dodge/LevelGen/Switch.hs 38;" f
makeTermLine src/Dodge/Terminal.hs 135;" f makeTermLine src/Dodge/Terminal.hs 147;" f
makeTermPara src/Dodge/Terminal.hs 138;" f makeTermPara src/Dodge/Terminal.hs 150;" f
makeTeslaArc src/Dodge/Tesla.hs 29;" f makeTeslaArc src/Dodge/Tesla.hs 29;" f
makeTeslaExplosionAt src/Dodge/WorldEvent/Explosion.hs 40;" f makeTeslaExplosionAt src/Dodge/WorldEvent/Explosion.hs 40;" f
makeTileFromPoly src/Tile.hs 34;" f makeTileFromPoly src/Tile.hs 34;" f
@@ -4694,7 +4690,7 @@ qToV2 src/Quaternion.hs 56;" f
qToV3 src/Quaternion.hs 53;" f qToV3 src/Quaternion.hs 53;" f
quarterRoomSquare src/Dodge/Room/Procedural.hs 213;" f quarterRoomSquare src/Dodge/Room/Procedural.hs 213;" f
quarterRoomTri src/Dodge/Room/Procedural.hs 177;" f quarterRoomTri src/Dodge/Room/Procedural.hs 177;" f
quitCommand src/Dodge/Terminal.hs 132;" f quitCommand src/Dodge/Terminal.hs 144;" f
qz src/Quaternion.hs 71;" f qz src/Quaternion.hs 71;" f
rLauncher src/Dodge/Item/Held/Launcher.hs 14;" f rLauncher src/Dodge/Item/Held/Launcher.hs 14;" f
rLauncherX src/Dodge/Item/Held/Launcher.hs 30;" f rLauncherX src/Dodge/Item/Held/Launcher.hs 30;" f
@@ -4882,7 +4878,7 @@ rprShift src/Dodge/PlacementSpot.hs 102;" f
rsObjectColor src/Dodge/RadarSweep/Draw.hs 34;" f rsObjectColor src/Dodge/RadarSweep/Draw.hs 34;" f
runPastStart src/Dodge/Room/Start.hs 71;" f runPastStart src/Dodge/Room/Start.hs 71;" f
runStateWorld src/Dodge/Randify.hs 17;" f runStateWorld src/Dodge/Randify.hs 17;" f
runTerminalInput src/Dodge/Terminal.hs 309;" f runTerminalInput src/Dodge/Terminal.hs 331;" f
sPS src/Dodge/LevelGen/PlacementHelper.hs 27;" f sPS src/Dodge/LevelGen/PlacementHelper.hs 27;" f
safeAngleVV src/Geometry/Vector.hs 68;" f safeAngleVV src/Geometry/Vector.hs 68;" f
safeArgV src/Geometry/Vector.hs 87;" f safeArgV src/Geometry/Vector.hs 87;" f
@@ -4952,7 +4948,7 @@ selectedItemScroll src/Dodge/Update/Scroll.hs 50;" f
sensAboveDoor src/Dodge/Room/SensorDoor.hs 63;" f sensAboveDoor src/Dodge/Room/SensorDoor.hs 63;" f
sensInsideDoor src/Dodge/Room/SensorDoor.hs 69;" f sensInsideDoor src/Dodge/Room/SensorDoor.hs 69;" f
senseDamage src/Dodge/Machine/Update.hs 160;" f senseDamage src/Dodge/Machine/Update.hs 160;" f
sensorCommand src/Dodge/Terminal.hs 231;" f sensorCommand src/Dodge/Terminal.hs 127;" f
sensorRoom src/Dodge/Room/SensorDoor.hs 27;" f sensorRoom src/Dodge/Room/SensorDoor.hs 27;" f
sensorRoomRunPast src/Dodge/Room/SensorDoor.hs 48;" f sensorRoomRunPast src/Dodge/Room/SensorDoor.hs 48;" f
sensorSPic src/Dodge/Machine/Draw.hs 70;" f sensorSPic src/Dodge/Machine/Draw.hs 70;" f
@@ -5088,7 +5084,7 @@ shuffleRoomPos src/Dodge/Layout.hs 78;" f
shuffleTail src/RandomHelp.hs 59;" f shuffleTail src/RandomHelp.hs 59;" f
sigmoid src/Dodge/Base.hs 151;" f sigmoid src/Dodge/Base.hs 151;" f
simpleCrSprings src/Dodge/Update.hs 888;" f simpleCrSprings src/Dodge/Update.hs 888;" f
simpleTermMessage src/Dodge/Terminal.hs 276;" f simpleTermMessage src/Dodge/Terminal.hs 298;" f
sineRaisePitchOneSecS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 680;" f sineRaisePitchOneSecS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 680;" f
sineRaisePitchTwoSecS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 472;" f sineRaisePitchTwoSecS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 472;" f
singleAmmo src/Dodge/Item/AmmoSlots.hs 62;" f singleAmmo src/Dodge/Item/AmmoSlots.hs 62;" f
@@ -5236,7 +5232,7 @@ t src/ShortShow.hs 33;" f
tEast src/Dodge/Room/Corridor.hs 90;" f tEast src/Dodge/Room/Corridor.hs 90;" f
tToBTree src/Dodge/Tree/Compose.hs 92;" f tToBTree src/Dodge/Tree/Compose.hs 92;" f
tWest src/Dodge/Room/Corridor.hs 115;" f tWest src/Dodge/Room/Corridor.hs 115;" f
tabComplete src/Dodge/Terminal.hs 150;" f tabComplete src/Dodge/Terminal.hs 163;" f
takeN src/RandomHelp.hs 44;" f takeN src/RandomHelp.hs 44;" f
takeNMore src/RandomHelp.hs 41;" f takeNMore src/RandomHelp.hs 41;" f
takeOne src/RandomHelp.hs 22;" f takeOne src/RandomHelp.hs 22;" f
@@ -5265,10 +5261,10 @@ telRoomLev src/Dodge/Room/Teleport.hs 14;" f
teleS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 528;" f teleS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 528;" f
termButton src/Dodge/Placement/Instance/Terminal.hs 51;" f termButton src/Dodge/Placement/Instance/Terminal.hs 51;" f
termScreenColor src/Dodge/Terminal/Color.hs 10;" f termScreenColor src/Dodge/Terminal/Color.hs 10;" f
termSoundLine src/Dodge/Terminal.hs 106;" f termSoundLine src/Dodge/Terminal.hs 109;" f
termTextColor src/Dodge/Terminal.hs 109;" f termTextColor src/Dodge/Terminal.hs 112;" f
terminalColor src/Dodge/Placement/Instance/Terminal.hs 61;" f terminalColor src/Dodge/Placement/Instance/Terminal.hs 61;" f
terminalReturnEffect src/Dodge/Terminal.hs 299;" f terminalReturnEffect src/Dodge/Terminal.hs 321;" f
terminalSPic src/Dodge/Machine/Draw.hs 29;" f terminalSPic src/Dodge/Machine/Draw.hs 29;" f
terminalScreenGlow src/Dodge/Machine/Update.hs 35;" f terminalScreenGlow src/Dodge/Machine/Update.hs 35;" f
terminalShape src/Dodge/Machine/Draw.hs 32;" f terminalShape src/Dodge/Machine/Draw.hs 32;" f
@@ -5335,7 +5331,7 @@ toV2 src/Geometry/Data.hs 54;" f
toV3 src/Geometry/Data.hs 57;" f toV3 src/Geometry/Data.hs 57;" f
toV4 src/Geometry/Data.hs 60;" f toV4 src/Geometry/Data.hs 60;" f
toggleCombineInv src/Dodge/DisplayInventory.hs 317;" f toggleCombineInv src/Dodge/DisplayInventory.hs 317;" f
toggleCommand src/Dodge/Terminal.hs 219;" f toggleCommand src/Dodge/Terminal.hs 130;" f
toggleEquipmentAt src/Dodge/Creature/Impulse/UseItem.hs 65;" f toggleEquipmentAt src/Dodge/Creature/Impulse/UseItem.hs 65;" f
toggleExamineInv src/Dodge/Creature/Impulse/UseItem.hs 103;" f toggleExamineInv src/Dodge/Creature/Impulse/UseItem.hs 103;" f
toggleJust src/MaybeHelp.hs 41;" f toggleJust src/MaybeHelp.hs 41;" f