From 189c3da84f2e371ef2a05c8ee9dcba8096761245 Mon Sep 17 00:00:00 2001 From: justin Date: Sat, 6 Dec 2025 00:04:00 +0000 Subject: [PATCH] Zoom in when spawning --- src/Dodge/Base/Window.hs | 9 +-- src/Dodge/Debug/Picture.hs | 4 +- src/Dodge/Render/MenuScreen.hs | 3 +- src/Dodge/SpawnAt.hs | 3 +- src/Dodge/TestString.hs | 2 +- tags | 126 ++++++++++++++++----------------- 6 files changed, 75 insertions(+), 72 deletions(-) diff --git a/src/Dodge/Base/Window.hs b/src/Dodge/Base/Window.hs index b5de047ac..9592be7af 100644 --- a/src/Dodge/Base/Window.hs +++ b/src/Dodge/Base/Window.hs @@ -8,6 +8,7 @@ module Dodge.Base.Window ( pointIsOnScreen, ) where +import Linear import Control.Lens import Dodge.Data.Camera import Dodge.Data.Config @@ -19,9 +20,9 @@ screenPolygon cfig w = map (scTran . scRot . scZoom) $ screenBox cfig where scRot = rotateV (w ^. camRot) scZoom p - | (w ^. camZoom) /= 0 = (1 / (w ^. camZoom)) *.* p + | (w ^. camZoom) /= 0 = (1 / (w ^. camZoom)) *^ p | otherwise = p - scTran p = p +.+ (w ^. camCenter) + scTran p = p + (w ^. camCenter) -- | A box covering the screen in world coordinates, with a x and y border screenPolygonBord :: @@ -37,9 +38,9 @@ screenPolygonBord xbord ybord cfig w = [tr, tl, bl, br] hw = halfWidth cfig - xbord hh = halfHeight cfig - ybord scZoom p - | (w ^. camZoom) /= 0 = (1 / (w ^. camZoom)) *.* p + | (w ^. camZoom) /= 0 = (1 / (w ^. camZoom)) *^ p | otherwise = p - theTransform = (+.+ (w ^. camCenter)) . rotateV (w ^. camRot) . scZoom + theTransform = (+ (w ^. camCenter)) . rotateV (w ^. camRot) . scZoom tr = theTransform (V2 hw hh) tl = theTransform (V2 (- hw) hh) br = theTransform (V2 hw (- hh)) diff --git a/src/Dodge/Debug/Picture.hs b/src/Dodge/Debug/Picture.hs index eb5cb690b..33fd0b88e 100644 --- a/src/Dodge/Debug/Picture.hs +++ b/src/Dodge/Debug/Picture.hs @@ -46,9 +46,9 @@ outsideScreenPolygon cfig w = [tr, tl, bl, br] where scRot = rotateV (w ^. camRot) scZoom p - | (w ^. camZoom) /= 0 = (1 / (w ^. camZoom)) *.* p + | (w ^. camZoom) /= 0 = (1 / (w ^. camZoom)) *^ p | otherwise = error "Trying to set screen zoom to zero" - scTran p = p +.+ (w ^. camCenter) + scTran p = p + (w ^. camCenter) tr = f 3 3 tl = f (-3) 3 br = f 3 (-3) diff --git a/src/Dodge/Render/MenuScreen.hs b/src/Dodge/Render/MenuScreen.hs index 0e53be65f..26596c2a9 100644 --- a/src/Dodge/Render/MenuScreen.hs +++ b/src/Dodge/Render/MenuScreen.hs @@ -24,7 +24,8 @@ drawMenuScreen mi = \case drawLoadingScreen :: [String] -> BlockStatus -> Config -> Picture drawLoadingScreen s _ cfig = polygon (rectWH (fromIntegral (cfig ^. windowX)) (fromIntegral (cfig ^. windowY))) - <> translateScreenPos + <> + translateScreenPos cfig (ScreenPos (V2 0 0.2) (V2 (-300) (10 * fromIntegral (length s)))) (drawList $ map text s) diff --git a/src/Dodge/SpawnAt.hs b/src/Dodge/SpawnAt.hs index 277478556..36fcc2ed3 100644 --- a/src/Dodge/SpawnAt.hs +++ b/src/Dodge/SpawnAt.hs @@ -13,7 +13,8 @@ respawn w = w & uncurry spawnAt (w ^. cWorld . lWorld . respawnPos) spawnAt :: Point2 -> Float -> World -> World spawnAt p d w = w - & wCam . camZoom .~ 1000 + & wCam . camZoom .~ 0.000000001 + & wCam . camDefaultZoom .~ 0.000000001 & wSoundFilter .~ FilterBySoundOrigin (S.singleton SpawnSound) -- & cWorld . lWorld . creatures . at 0 %~ (fmap f . (<|> Just startCr)) & cWorld . lWorld . creatures . at 0 ?~ f startCr diff --git a/src/Dodge/TestString.hs b/src/Dodge/TestString.hs index 900577e07..6e623714d 100644 --- a/src/Dodge/TestString.hs +++ b/src/Dodge/TestString.hs @@ -32,7 +32,7 @@ import Data.Foldable import Data.Monoid testStringInit :: Universe -> [String] -testStringInit _ = [] +testStringInit u = [show $ u^. uvWorld . wCam . camZoom] -- [show $ foldMap (foldMap (Sum . length . (^. seObstacles))) -- $ u ^. uvWorld . cWorld . incGraph] -- foldMap prettyShort $ u ^? uvWorld . cWorld . lWorld . machines . ix 0 . mcType . _McProxSensor diff --git a/tags b/tags index c84a4c2e3..f81073752 100644 --- a/tags +++ b/tags @@ -187,7 +187,7 @@ CamOnPlayer src/Dodge/Data/Camera.hs 12;" C CamOpticScope src/Dodge/Data/Camera.hs 13;" C CamRemoteScope src/Dodge/Data/Camera.hs 14;" C Camera src/Dodge/Data/Camera.hs 22;" t -CameraScrollTimeFlow src/Dodge/Data/World.hs 74;" C +CameraScrollTimeFlow src/Dodge/Data/World.hs 73;" C CamouflageStatus src/Dodge/Data/CamouflageStatus.hs 5;" t CapacitorBelow src/Dodge/Data/Muzzle.hs 23;" C CapacitorSF src/Dodge/Data/ComposedItem.hs 42;" C @@ -226,7 +226,7 @@ CombEdge src/Dodge/Combine/Graph.hs 30;" t CombItem src/Dodge/Data/Combine.hs 8;" t CombNode src/Dodge/Combine/Graph.hs 23;" t CombineInventory src/Dodge/Data/HUD.hs 22;" C -CombineInventoryChange src/Dodge/Data/World.hs 33;" C +CombineInventoryChange src/Dodge/Data/World.hs 32;" C ComsSS src/Dodge/Data/Scenario.hs 98;" C ConcurrentEffect src/Loop/Data.hs 6;" t ConcurrentEffect src/Loop/Data.hs 11;" C @@ -580,7 +580,7 @@ IntersectingRoomClipBoundaries src/Dodge/Data/Config.hs 121;" C IntroScanSF src/Dodge/Data/ComposedItem.hs 21;" C IntroScanType src/Dodge/Data/Item/Combine.hs 44;" t InvInt src/Dodge/Data/Item/Location.hs 16;" t -InventoryChange src/Dodge/Data/World.hs 32;" C +InventoryChange src/Dodge/Data/World.hs 31;" C InventoryConnectSound src/Dodge/Data/SoundOrigin.hs 12;" C InventoryPathing src/Dodge/Data/Item/Combine.hs 38;" t InventorySound src/Dodge/Data/SoundOrigin.hs 11;" C @@ -602,7 +602,7 @@ ItemSF src/Dodge/Data/ComposedItem.hs 12;" t ItemScroll src/Dodge/Data/Item.hs 38;" t ItemScrollInt src/Dodge/Data/Item.hs 40;" C ItemScrollIntRange src/Dodge/Data/Item.hs 41;" C -ItemScrollTimeFlow src/Dodge/Data/World.hs 68;" C +ItemScrollTimeFlow src/Dodge/Data/World.hs 67;" C ItemSound src/Dodge/Data/SoundOrigin.hs 19;" C ItemTargeting src/Dodge/Data/Item.hs 43;" t ItemType src/Dodge/Data/Item/Combine.hs 15;" t @@ -849,7 +849,7 @@ NonDrawnCreature src/Dodge/Data/Creature/Misc.hs 82;" C NonInf src/Dodge/Data/CardinalPoint.hs 44;" C NormalOptions src/Dodge/Data/Universe.hs 71;" C NormalSpark src/Dodge/Data/Spark.hs 19;" C -NormalTimeFlow src/Dodge/Data/World.hs 67;" C +NormalTimeFlow src/Dodge/Data/World.hs 66;" C North src/Dodge/Data/CardinalPoint.hs 7;" C North8 src/Dodge/Data/CardinalPoint.hs 28;" C NorthEast src/Dodge/Data/CardinalPoint.hs 21;" C @@ -972,8 +972,8 @@ PathShowType src/Dodge/Data/Universe.hs 52;" t PathTo src/Dodge/Data/ActionPlan.hs 70;" C Pathing src/Dodge/Data/Config.hs 89;" C Patrol src/Dodge/Data/ActionPlan.hs 132;" C -PauseTimeMessage src/Dodge/Data/World.hs 87;" C -PausedTimeFlow src/Dodge/Data/World.hs 83;" C +PauseTimeMessage src/Dodge/Data/World.hs 86;" C +PausedTimeFlow src/Dodge/Data/World.hs 82;" C Payload src/Dodge/Data/Payload.hs 9;" t PenetrateBullet src/Dodge/Data/Bullet.hs 29;" C Perception src/Dodge/Data/Creature/Perception.hs 30;" t @@ -1092,11 +1092,11 @@ RequireHealth src/Dodge/Data/Machine/Sensor.hs 35;" C ResFactor src/Dodge/Data/Config.hs 111;" t ResearchFacility src/Dodge/Data/Scenario.hs 62;" C ResourceFailure src/Dodge/Data/Scenario.hs 29;" C -RespawnDelay src/Dodge/Data/World.hs 65;" C +RespawnDelay src/Dodge/Data/World.hs 64;" C RetailFacility src/Dodge/Data/Scenario.hs 67;" C RetiredProjectile src/Dodge/Data/Projectile.hs 36;" C Revenge src/Dodge/Data/Scenario.hs 6;" C -RewindLeftClick src/Dodge/Data/World.hs 79;" C +RewindLeftClick src/Dodge/Data/World.hs 78;" C RezBaySS src/Dodge/Data/Scenario.hs 105;" C RightButtonState src/Dodge/Data/RightButtonOptions.hs 13;" t RightForward src/Dodge/Data/Creature/Stance.hs 30;" C @@ -1319,7 +1319,7 @@ TextShad src/Picture/Data.hs 33;" C ThermalSensor src/Dodge/Data/Machine/Sensor.hs 15;" C Tile src/Data/Tile.hs 16;" t Tiled src/Data/Tile.hs 14;" C -TimeFlowStatus src/Dodge/Data/World.hs 64;" t +TimeFlowStatus src/Dodge/Data/World.hs 63;" t Tiny src/Shape/Data.hs 27;" C TmTmClearDisplayedLines src/Dodge/Data/Terminal.hs 60;" C TmTmSetStatus src/Dodge/Data/Terminal.hs 61;" C @@ -1481,9 +1481,9 @@ West src/Dodge/Data/CardinalPoint.hs 10;" C West8 src/Dodge/Data/CardinalPoint.hs 34;" C WlID src/Dodge/Data/CrWlID.hs 10;" C Wood src/Dodge/Data/Material.hs 11;" C -World src/Dodge/Data/World.hs 36;" t +World src/Dodge/Data/World.hs 35;" t WorldEffects src/Dodge/Data/WorldEffect.hs 28;" C -WorldEventFlag src/Dodge/Data/World.hs 31;" t +WorldEventFlag src/Dodge/Data/World.hs 30;" t WorldGovernment src/Dodge/Data/Scenario.hs 52;" C XInfinity src/Dodge/Data/CardinalPoint.hs 44;" t YELLOW src/Color/Data.hs 15;" C @@ -1583,7 +1583,7 @@ _burstFrames src/Dodge/Data/TriggerType.hs 12;" f _burstRate src/Dodge/Data/TriggerType.hs 12;" f _buttons src/Dodge/Data/LWorld.hs 132;" f _cClock src/Dodge/Data/CWorld.hs 26;" f -_cWorld src/Dodge/Data/World.hs 37;" f +_cWorld src/Dodge/Data/World.hs 36;" f _camBoundBox src/Dodge/Data/Camera.hs 30;" f _camBoundDist src/Dodge/Data/Camera.hs 31;" f _camCenter src/Dodge/Data/Camera.hs 23;" f @@ -1622,7 +1622,7 @@ _clPos src/Dodge/Data/Cloud.hs 13;" f _clTimer src/Dodge/Data/Cloud.hs 15;" f _clType src/Dodge/Data/Cloud.hs 16;" f _clVel src/Dodge/Data/Cloud.hs 14;" f -_clZoning src/Dodge/Data/World.hs 50;" f +_clZoning src/Dodge/Data/World.hs 49;" f _cldtCloseLeft src/Dodge/Data/DoubleTree.hs 44;" f _cldtCloseLeft src/Dodge/Data/DoubleTree.hs 53;" f _cldtCloseRight src/Dodge/Data/DoubleTree.hs 47;" f @@ -1645,7 +1645,7 @@ _clouds src/Dodge/Data/LWorld.hs 96;" f _coolEnd src/Dodge/Data/TriggerType.hs 17;" f _coolSound src/Dodge/Data/Item/Params.hs 22;" f _coolStart src/Dodge/Data/TriggerType.hs 16;" f -_coordinates src/Dodge/Data/World.hs 61;" f +_coordinates src/Dodge/Data/World.hs 60;" f _cpAttention src/Dodge/Data/Creature/Perception.hs 32;" f _cpAudition src/Dodge/Data/Creature/Perception.hs 35;" f _cpAwareness src/Dodge/Data/Creature/Perception.hs 33;" f @@ -1683,7 +1683,7 @@ _crStance src/Dodge/Data/Creature.hs 50;" f _crType src/Dodge/Data/Creature.hs 42;" f _crVocalization src/Dodge/Data/Creature.hs 54;" f _crZVel src/Dodge/Data/Creature.hs 38;" f -_crZoning src/Dodge/Data/World.hs 49;" f +_crZoning src/Dodge/Data/World.hs 48;" f _creatureGroups src/Dodge/Data/LWorld.hs 94;" f _creatures src/Dodge/Data/LWorld.hs 93;" f _csLinks src/Dodge/Data/RoomCluster.hs 10;" f @@ -1765,7 +1765,7 @@ _dsPos src/Dodge/Data/Cloud.hs 27;" f _dsTimer src/Dodge/Data/Cloud.hs 29;" f _dsType src/Dodge/Data/Cloud.hs 30;" f _dsVel src/Dodge/Data/Cloud.hs 28;" f -_dsZoning src/Dodge/Data/World.hs 52;" f +_dsZoning src/Dodge/Data/World.hs 51;" f _dtLeft src/Dodge/Data/DoubleTree.hs 29;" f _dtRight src/Dodge/Data/DoubleTree.hs 29;" f _dtValue src/Dodge/Data/DoubleTree.hs 29;" f @@ -1807,10 +1807,10 @@ _fsDir src/Dodge/Data/ForegroundShape.hs 14;" f _fsPos src/Dodge/Data/ForegroundShape.hs 13;" f _fsSPic src/Dodge/Data/ForegroundShape.hs 15;" f _fullscreenShader src/Data/Preload/Render.hs 23;" f -_futureWorlds src/Dodge/Data/World.hs 71;" f -_futureWorlds src/Dodge/Data/World.hs 77;" f +_futureWorlds src/Dodge/Data/World.hs 70;" f +_futureWorlds src/Dodge/Data/World.hs 76;" f _gameplay_rotate_to_wall src/Dodge/Data/Config.hs 66;" f -_gasZoning src/Dodge/Data/World.hs 51;" f +_gasZoning src/Dodge/Data/World.hs 50;" f _gasses src/Dodge/Data/LWorld.hs 98;" f _genInts src/Dodge/Data/GenWorld.hs 27;" f _genPmnt src/Dodge/Data/GenWorld.hs 26;" f @@ -1845,7 +1845,7 @@ _gsPos src/Dodge/Data/Cloud.hs 35;" f _gsTimer src/Dodge/Data/Cloud.hs 37;" f _gsType src/Dodge/Data/Cloud.hs 38;" f _gsVel src/Dodge/Data/Cloud.hs 36;" f -_gsZoning src/Dodge/Data/World.hs 58;" f +_gsZoning src/Dodge/Data/World.hs 57;" f _guID src/Dodge/Data/Gust.hs 12;" f _guPos src/Dodge/Data/Gust.hs 13;" f _guTime src/Dodge/Data/Gust.hs 15;" f @@ -1855,7 +1855,7 @@ _gwWorld src/Dodge/Data/GenWorld.hs 24;" f _heldPos src/Dodge/Data/Input.hs 43;" f _heldWorldPos src/Dodge/Data/Input.hs 45;" f _hotkeys src/Dodge/Data/LWorld.hs 142;" f -_hud src/Dodge/Data/World.hs 47;" f +_hud src/Dodge/Data/World.hs 46;" f _humanoidAI src/Dodge/Data/Creature/Misc.hs 79;" f _ibtAmmoMag src/Dodge/Data/Item/Combine.hs 20;" f _ibtAttach src/Dodge/Data/Item/Combine.hs 19;" f @@ -1882,12 +1882,12 @@ _immediateEffect src/Loop/Data.hs 9;" f _immediateUpdate src/Loop/Data.hs 12;" f _impulseUseTarget src/Dodge/Data/ActionPlan.hs 45;" f _impulsesListList src/Dodge/Data/ActionPlan.hs 72;" f -_incEdgeZoning src/Dodge/Data/World.hs 57;" f +_incEdgeZoning src/Dodge/Data/World.hs 56;" f _incEdges src/Dodge/Data/CWorld.hs 31;" f _incGraph src/Dodge/Data/CWorld.hs 29;" f _incNode src/Dodge/Data/CWorld.hs 30;" f -_incNodeZoning src/Dodge/Data/World.hs 56;" f -_input src/Dodge/Data/World.hs 44;" f +_incNodeZoning src/Dodge/Data/World.hs 55;" f +_input src/Dodge/Data/World.hs 43;" f _isWarming src/Dodge/Data/Item/Params.hs 21;" f _ispCloseButton src/Dodge/Data/Item/Use/Consumption/LoadAction.hs 30;" f _ispCloseItem src/Dodge/Data/Item/Use/Consumption/LoadAction.hs 28;" f @@ -2059,10 +2059,10 @@ _opticDefaultZoom src/Dodge/Data/Item/Scope.hs 18;" f _opticPos src/Dodge/Data/Item/Scope.hs 14;" f _opticZoom src/Dodge/Data/Item/Scope.hs 17;" f _partialAction src/Dodge/Data/ActionPlan.hs 111;" f -_pastWorlds src/Dodge/Data/World.hs 38;" f +_pastWorlds src/Dodge/Data/World.hs 37;" f _pathToPoint src/Dodge/Data/ActionPlan.hs 70;" f -_pauseTimeMesage src/Dodge/Data/World.hs 88;" f -_pauseTimeMesageColor src/Dodge/Data/World.hs 89;" f +_pauseTimeMesage src/Dodge/Data/World.hs 87;" f +_pauseTimeMesageColor src/Dodge/Data/World.hs 88;" 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 @@ -2090,7 +2090,7 @@ _plMID src/Dodge/Data/GenWorld.hs 107;" f _plSpot src/Dodge/Data/GenWorld.hs 105;" f _plType src/Dodge/Data/GenWorld.hs 106;" f _playStatus src/Sound/Data.hs 15;" f -_playingSounds src/Dodge/Data/World.hs 42;" f +_playingSounds src/Dodge/Data/World.hs 41;" f _posture src/Dodge/Data/Creature/Stance.hs 17;" f _prBounds src/Dodge/Tree/Shift.hs 29;" f _prDraw src/Dodge/Data/Prop.hs 16;" f @@ -2146,12 +2146,12 @@ _pzPos src/Dodge/Data/PulseLaser.hs 13;" f _pzTimer src/Dodge/Data/PulseLaser.hs 16;" f _radarBlips src/Dodge/Data/LWorld.hs 108;" f _radarSweeps src/Dodge/Data/LWorld.hs 104;" f -_randGen src/Dodge/Data/World.hs 40;" f +_randGen src/Dodge/Data/World.hs 39;" f _rbColor src/Dodge/Data/RadarBlip.hs 13;" f _rbMaxTime src/Dodge/Data/RadarBlip.hs 15;" f _rbPos src/Dodge/Data/RadarBlip.hs 17;" f _rbRad src/Dodge/Data/RadarBlip.hs 16;" f -_rbState src/Dodge/Data/World.hs 46;" f +_rbState src/Dodge/Data/World.hs 45;" f _rbTime src/Dodge/Data/RadarBlip.hs 14;" f _rboBaseBloom src/Data/Preload/Render.hs 41;" f _rdDist1 src/Dodge/Data/Distortion.hs 13;" f @@ -2162,11 +2162,11 @@ _rdTG src/Dodge/Data/Distortion.hs 17;" f _rdTR src/Dodge/Data/Distortion.hs 15;" f _rdTime src/Dodge/Data/Distortion.hs 27;" f _renderData src/Data/Preload.hs 11;" f -_respawnDelay src/Dodge/Data/World.hs 66;" f +_respawnDelay src/Dodge/Data/World.hs 65;" f _respawnPos src/Dodge/Data/LWorld.hs 146;" f -_reverseAmount src/Dodge/Data/World.hs 70;" f -_reverseAmount src/Dodge/Data/World.hs 76;" f -_reverseAmount src/Dodge/Data/World.hs 80;" f +_reverseAmount src/Dodge/Data/World.hs 69;" f +_reverseAmount src/Dodge/Data/World.hs 75;" f +_reverseAmount src/Dodge/Data/World.hs 79;" f _rkHoming src/Dodge/Data/Projectile.hs 33;" f _rkSmoke src/Dodge/Data/Projectile.hs 34;" f _rlDir src/Dodge/Data/Room.hs 27;" f @@ -2226,11 +2226,11 @@ _scPositionedMenuOption src/Dodge/Data/Universe.hs 86;" f _scSelectionList src/Dodge/Data/Universe.hs 88;" f _scTitle src/Dodge/Data/Universe.hs 83;" f _scrollAmount src/Dodge/Data/Input.hs 40;" f -_scrollItemID src/Dodge/Data/World.hs 72;" f -_scrollItemID src/Dodge/Data/World.hs 81;" f -_scrollItemID src/Dodge/Data/World.hs 85;" f -_scrollSmoothing src/Dodge/Data/World.hs 69;" f -_scrollSmoothing src/Dodge/Data/World.hs 75;" f +_scrollItemID src/Dodge/Data/World.hs 71;" f +_scrollItemID src/Dodge/Data/World.hs 80;" f +_scrollItemID src/Dodge/Data/World.hs 84;" f +_scrollSmoothing src/Dodge/Data/World.hs 68;" f +_scrollSmoothing src/Dodge/Data/World.hs 74;" f _scrollTestFloat src/Dodge/Data/Input.hs 47;" f _scrollTestInt src/Dodge/Data/Input.hs 48;" f _scurColor src/Dodge/Data/SelectionList.hs 26;" f @@ -2333,7 +2333,7 @@ _tempSPic src/Dodge/Data/LWorld.hs 110;" f _termID src/Dodge/Data/HUD.hs 27;" f _terminals src/Dodge/Data/LWorld.hs 123;" f _teslaArcs src/Dodge/Data/LWorld.hs 111;" f -_testFloat src/Dodge/Data/World.hs 45;" f +_testFloat src/Dodge/Data/World.hs 44;" f _textInput src/Dodge/Data/Input.hs 46;" f _textureAntiaShader src/Data/Preload/Render.hs 24;" f _textureObject src/Shader/Data.hs 103;" f @@ -2343,8 +2343,8 @@ _tilePoly src/Data/Tile.hs 17;" f _tileTangentPos src/Data/Tile.hs 23;" f _tileZero src/Data/Tile.hs 19;" f _tiles src/Data/Tile.hs 14;" f -_timeFlow src/Dodge/Data/World.hs 39;" f -_timeFlowCharge src/Dodge/Data/World.hs 84;" f +_timeFlow src/Dodge/Data/World.hs 38;" f +_timeFlowCharge src/Dodge/Data/World.hs 83;" f _tlEffect src/Dodge/Data/Terminal.hs 39;" f _tlPause src/Dodge/Data/Terminal.hs 37;" f _tlString src/Dodge/Data/Terminal.hs 38;" f @@ -2366,7 +2366,7 @@ _toPlaySoundStatus src/Sound/Data.hs 35;" f _toPlaySoundTime src/Sound/Data.hs 34;" f _toPlaySoundVolume src/Sound/Data.hs 37;" f _toPlaySoundVolumeFraction src/Sound/Data.hs 38;" f -_toPlaySounds src/Dodge/Data/World.hs 41;" f +_toPlaySounds src/Dodge/Data/World.hs 40;" f _topBoxSize src/Shape/Data.hs 12;" f _tptString src/Dodge/Data/Terminal/Status.hs 15;" f _tractorBeams src/Dodge/Data/LWorld.hs 118;" f @@ -2398,7 +2398,7 @@ _unST src/Dodge/Data/MetaTree.hs 20;" f _unTO src/Shader/Data.hs 59;" f _unVAO src/Shader/Data.hs 64;" f _unfiredBarrels src/Dodge/Data/Item/Params.hs 17;" f -_unpauseClock src/Dodge/Data/World.hs 60;" f +_unpauseClock src/Dodge/Data/World.hs 59;" f _unputTerminal src/Dodge/Data/GenWorld.hs 41;" f _upscaleCloudShader src/Data/Preload/Render.hs 25;" f _useExactly src/Dodge/Data/Muzzle.hs 62;" f @@ -2451,8 +2451,8 @@ _vxExt src/Picture/Data.hs 14;" f _vxLayer src/Picture/Data.hs 15;" f _vxPos src/Picture/Data.hs 12;" f _vxShadNum src/Picture/Data.hs 16;" f -_wCam src/Dodge/Data/World.hs 59;" f -_wSoundFilter src/Dodge/Data/World.hs 43;" f +_wCam src/Dodge/Data/World.hs 58;" f +_wSoundFilter src/Dodge/Data/World.hs 42;" f _wTime src/Dodge/Data/Item/Params.hs 20;" f _waitThenAction src/Dodge/Data/ActionPlan.hs 76;" f _waitThenTimer src/Dodge/Data/ActionPlan.hs 75;" f @@ -2479,8 +2479,8 @@ _wlStCreature src/Dodge/Data/Wall/Structure.hs 15;" f _wlStructure src/Dodge/Data/Wall.hs 24;" f _wlTouchThrough src/Dodge/Data/Wall.hs 21;" f _wlUnshadowed src/Dodge/Data/Wall.hs 22;" f -_wlZoning src/Dodge/Data/World.hs 53;" f -_worldEventFlags src/Dodge/Data/World.hs 48;" f +_wlZoning src/Dodge/Data/World.hs 52;" f +_worldEventFlags src/Dodge/Data/World.hs 47;" f _worldEvents src/Dodge/Data/LWorld.hs 130;" f _wsBlock src/Dodge/Data/Wall/Structure.hs 14;" f _wsDoor src/Dodge/Data/Wall/Structure.hs 12;" f @@ -2496,7 +2496,7 @@ aRadarPulse src/Dodge/RadarSweep.hs 20;" f aShape src/Dodge/Placement/Instance/LightSource.hs 88;" f aSound src/Dodge/SoundLogic.hs 74;" f aTreeStrut src/Dodge/Tree/GenerateStructure.hs 42;" f -accessTerminal src/Dodge/WorldEffect.hs 59;" f +accessTerminal src/Dodge/WorldEffect.hs 60;" f activateDetonator src/Dodge/Creature/Impulse/UseItem.hs 62;" f activeTargetCursorPic src/Dodge/Targeting/Draw.hs 31;" f addArmour src/Dodge/Creature.hs 82;" f @@ -3191,8 +3191,8 @@ doCrGroupUpdate src/Dodge/CrGroupUpdate.hs 5;" f doCrImp src/Dodge/CreatureEffect.hs 13;" f doCrWdAc src/Dodge/CreatureEffect.hs 47;" f doDamage src/Dodge/Creature/State.hs 43;" f -doDeathToggle src/Dodge/WorldEffect.hs 91;" f -doDeathTriggers src/Dodge/WorldEffect.hs 84;" f +doDeathToggle src/Dodge/WorldEffect.hs 92;" f +doDeathTriggers src/Dodge/WorldEffect.hs 85;" f doDebugGet src/Dodge/Debug.hs 98;" f doDebugPut src/Dodge/Debug.hs 87;" f doDebugTest src/Dodge/Update/Input/DebugTest.hs 23;" f @@ -3235,7 +3235,7 @@ doTextInputOver src/Dodge/Update/Input/Text.hs 15;" f doTextInputOverUniverse src/Dodge/Update/Input/Text.hs 12;" f doThrust src/Dodge/Projectile/Update.hs 129;" f doTimeScroll src/Dodge/Update.hs 198;" f -doTmWdWd src/Dodge/WorldEffect.hs 94;" f +doTmWdWd src/Dodge/WorldEffect.hs 95;" f doWallRotate src/Dodge/Update/Camera.hs 225;" f doWdBl src/Dodge/WorldBool.hs 10;" f doWdCrBl src/Dodge/CreatureEffect.hs 18;" f @@ -3456,7 +3456,7 @@ errorIsLHS src/Geometry.hs 65;" f errorNormalizeV src/Geometry.hs 54;" f errorPointInPolygon src/Geometry.hs 46;" f evenOddSplit src/Dodge/Base.hs 160;" f -exitTerminalSubInv src/Dodge/WorldEffect.hs 121;" f +exitTerminalSubInv src/Dodge/WorldEffect.hs 122;" f expandLine src/Dodge/Picture.hs 30;" f expandPolyBy src/Dodge/LevelGen/StaticWalls.hs 91;" f expandPolyByFixed src/Dodge/LevelGen/StaticWalls.hs 97;" f @@ -3658,8 +3658,8 @@ gut5S src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 726;" f gut6S src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 682;" f gyroscope src/Dodge/Item/Scope.hs 156;" f hackOutline src/Dodge/Render/Outline.hs 5;" f -halfHeight src/Dodge/Base/Window.hs 48;" f -halfWidth src/Dodge/Base/Window.hs 48;" f +halfHeight src/Dodge/Base/Window.hs 49;" f +halfWidth src/Dodge/Base/Window.hs 49;" f haltSound src/Dodge/SoundLogic.hs 38;" f hammerCheck src/Dodge/HeldUse.hs 63;" f handHandleOrient src/Dodge/Item/HeldOffset.hs 62;" f @@ -3950,7 +3950,7 @@ ldtToDT src/Dodge/DoubleTree.hs 16;" f ldtToIM src/Dodge/DoubleTree.hs 219;" f ldtToIndentList src/Dodge/DoubleTree.hs 222;" f ldtToLoc src/Dodge/DoubleTree.hs 268;" f -leaveResetQuitTerminal src/Dodge/WorldEffect.hs 115;" f +leaveResetQuitTerminal src/Dodge/WorldEffect.hs 116;" f led src/Dodge/Item/Held/Utility.hs 23;" f left src/DoubleStack.hs 16;" f leftChildList src/Dodge/Item/Grammar.hs 185;" f @@ -4403,7 +4403,7 @@ pointInCircle src/Geometry.hs 209;" f 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 +pointIsOnScreen src/Dodge/Base/Window.hs 60;" f pointTowardsImpulse src/Dodge/Path.hs 91;" f pointerToItem src/Dodge/Item/Location.hs 39;" f pointerToItemID src/Dodge/Item/Location.hs 42;" f @@ -4644,7 +4644,7 @@ replacePutID src/Dodge/Placement/Instance/Wall.hs 81;" f resetCrVocCoolDown src/Dodge/Creature/Vocalization.hs 47;" f resetPLUse src/Dodge/PlacementSpot.hs 92;" f resetStride src/Dodge/Creature/State/WalkCycle.hs 25;" f -resetTerminal src/Dodge/WorldEffect.hs 109;" f +resetTerminal src/Dodge/WorldEffect.hs 110;" f resizeFBOTO src/Framebuffer/Update.hs 185;" f resizeFBOTO' src/Framebuffer/Update.hs 202;" f resizeFBOTO2 src/Framebuffer/Update.hs 104;" f @@ -4769,9 +4769,9 @@ scalp src/Dodge/Creature/Picture.hs 93;" f scancodeToHotkey src/Dodge/Creature/YourControl.hs 102;" f scodeToChar src/Dodge/ScodeToChar.hs 6;" f scorchSPic src/Dodge/Creature/Update.hs 99;" f -screenBox src/Dodge/Base/Window.hs 53;" f -screenPolygon src/Dodge/Base/Window.hs 17;" f -screenPolygonBord src/Dodge/Base/Window.hs 27;" f +screenBox src/Dodge/Base/Window.hs 54;" f +screenPolygon src/Dodge/Base/Window.hs 18;" f +screenPolygonBord src/Dodge/Base/Window.hs 28;" f screenPosAbs src/Dodge/ScreenPos.hs 15;" f screenToWorldPos src/Dodge/Base/Coordinate.hs 40;" f scrollAugInvSel src/Dodge/Inventory.hs 191;" f @@ -5202,7 +5202,7 @@ topPrismIndices src/Shader/Poke.hs 410;" f topTestPart src/Dodge/TestString.hs 44;" f torchShape src/Dodge/Item/Draw/SPic.hs 277;" f torqueAmount src/Dodge/HeldUse.hs 581;" f -torqueCr src/Dodge/WorldEffect.hs 77;" f +torqueCr src/Dodge/WorldEffect.hs 78;" f torso src/Dodge/Creature/Picture.hs 103;" f tractCr src/Dodge/TractorBeam/Update.hs 28;" f tractFlIt src/Dodge/TractorBeam/Update.hs 23;" f