diff --git a/ghcidOutput b/ghcidOutput index 244eb6a7f..96d99557d 100644 --- a/ghcidOutput +++ b/ghcidOutput @@ -1 +1 @@ -All good (594 modules, at 10:00:00) +All good (594 modules, at 10:18:45) diff --git a/graph/itemCombinations.gv b/graph/itemCombinations.gv index 6ae54b9ee..d930541a4 100644 --- a/graph/itemCombinations.gv +++ b/graph/itemCombinations.gv @@ -59,35 +59,35 @@ digraph { ,label="HELD {_ibtHeld = FLAMETORRENT}"]; 75 [shape=box ,label="HELD {_ibtHeld = LASER}"]; - 79 [shape=box + 80 [shape=box ,label="HELD {_ibtHeld = SPARKGUN}"]; - 81 [shape=box + 82 [shape=box ,label="HELD {_ibtHeld = TESLAGUN}"]; - 83 [shape=box + 84 [shape=box ,label="LEFT {_ibtLeft = BLINKER}"]; - 86 [shape=box + 87 [shape=box ,label="LEFT {_ibtLeft = BLINKERUNSAFE}"]; - 88 [shape=box + 89 [shape=box ,label="EQUIP {_ibtEquip = MAGSHIELD}"]; - 91 [shape=box + 92 [shape=box ,label="EQUIP {_ibtEquip = POWERLEGS}"]; - 97 [shape=box + 98 [shape=box ,label="HELD {_ibtHeld = FLATSHIELD}"]; - 107 [shape=box + 108 [shape=box ,label="EQUIP {_ibtEquip = AUTODETECTOR ITEMDETECTOR}"]; - 110 [shape=box + 111 [shape=box ,label="EQUIP {_ibtEquip = AUTODETECTOR WALLDETECTOR}"]; - 112 [shape=box + 113 [shape=box ,label="EQUIP {_ibtEquip = AUTODETECTOR CREATUREDETECTOR}"]; - 114 [shape=box - ,label="HELD {_ibtHeld = TORCH}"]; 115 [shape=box + ,label="HELD {_ibtHeld = TORCH}"]; + 116 [shape=box ,label="AMMOMAG {_ibtAmmoMag = BATTERY}"]; - 118 [shape=box - ,label="EQUIP {_ibtEquip = HEADLAMP}"]; 119 [shape=box + ,label="EQUIP {_ibtEquip = HEADLAMP}"]; + 120 [shape=box ,label="EQUIP {_ibtEquip = HAT}"]; - 121 [shape=box + 122 [shape=box ,label="HELD {_ibtHeld = BANGSTICK {_xNum = 2}}"]; } subgraph 2 { @@ -121,29 +121,30 @@ digraph { 70 [shape=point]; 72 [shape=point]; 74 [shape=point]; - 78 [shape=point]; - 80 [shape=point]; - 82 [shape=point]; - 85 [shape=point]; - 87 [shape=point]; - 90 [shape=point]; - 93 [shape=point]; + 76 [shape=point]; + 79 [shape=point]; + 81 [shape=point]; + 83 [shape=point]; + 86 [shape=point]; + 88 [shape=point]; + 91 [shape=point]; 94 [shape=point]; 95 [shape=point]; 96 [shape=point]; - 98 [shape=point]; - 100 [shape=point]; - 103 [shape=point]; - 106 [shape=point]; - 109 [shape=point]; - 111 [shape=point]; - 113 [shape=point]; - 117 [shape=point]; - 120 [shape=point]; - 122 [shape=point]; - 124 [shape=point]; - 126 [shape=point]; - 128 [shape=point]; + 97 [shape=point]; + 99 [shape=point]; + 101 [shape=point]; + 104 [shape=point]; + 107 [shape=point]; + 110 [shape=point]; + 112 [shape=point]; + 114 [shape=point]; + 118 [shape=point]; + 121 [shape=point]; + 123 [shape=point]; + 125 [shape=point]; + 127 [shape=point]; + 129 [shape=point]; } 0 -> 1 [xlabel="",tailport=e]; 2 -> 0 [xlabel=1 @@ -172,13 +173,13 @@ digraph { 19 -> 40 [xlabel=1 ,arrowhead=onone ,headport=w]; - 19 -> 120 [xlabel=1 + 19 -> 121 [xlabel=1 ,arrowhead=onone ,headport=w]; - 19 -> 124 [xlabel=1 + 19 -> 125 [xlabel=1 ,arrowhead=onone ,headport=w]; - 19 -> 126 [xlabel=1 + 19 -> 127 [xlabel=1 ,arrowhead=onone ,headport=w]; 22 -> 23 [xlabel="",tailport=e]; @@ -203,7 +204,7 @@ digraph { ,arrowhead=onone ,headport=w]; 36 -> 37 [xlabel="",tailport=e]; - 37 -> 128 [xlabel=1 + 37 -> 129 [xlabel=1 ,arrowhead=onone ,headport=w]; 38 -> 39 [xlabel="",tailport=e]; @@ -220,13 +221,16 @@ digraph { 41 -> 46 [xlabel=1 ,arrowhead=onone ,headport=w]; - 41 -> 124 [xlabel=1 + 41 -> 125 [xlabel=1 ,arrowhead=onone ,headport=w]; 42 -> 43 [xlabel="",tailport=e]; 44 -> 45 [xlabel="",tailport=e]; + 45 -> 74 [xlabel=1 + ,arrowhead=onone + ,headport=w]; 46 -> 47 [xlabel="",tailport=e]; - 47 -> 126 [xlabel=1 + 47 -> 127 [xlabel=1 ,arrowhead=onone ,headport=w]; 49 -> 50 [xlabel="",tailport=e]; @@ -263,42 +267,46 @@ digraph { ,headport=w]; 70 -> 71 [xlabel="",tailport=e]; 72 -> 73 [xlabel="",tailport=e]; - 74 -> 75 [xlabel="",tailport=e]; - 78 -> 79 [xlabel="",tailport=e]; - 79 -> 80 [xlabel=1 + 74 -> 73 [xlabel="",tailport=e]; + 75 -> 74 [xlabel=1 ,arrowhead=onone ,headport=w]; - 80 -> 81 [xlabel="",tailport=e]; - 82 -> 83 [xlabel="",tailport=e]; - 83 -> 85 [xlabel=1 + 76 -> 75 [xlabel="",tailport=e]; + 79 -> 80 [xlabel="",tailport=e]; + 80 -> 81 [xlabel=1 ,arrowhead=onone ,headport=w]; - 85 -> 86 [xlabel="",tailport=e]; - 87 -> 88 [xlabel="",tailport=e]; - 90 -> 91 [xlabel="",tailport=e]; - 96 -> 97 [xlabel="",tailport=e]; - 106 -> 107 [xlabel="" + 81 -> 82 [xlabel="",tailport=e]; + 83 -> 84 [xlabel="",tailport=e]; + 84 -> 86 [xlabel=1 + ,arrowhead=onone + ,headport=w]; + 86 -> 87 [xlabel="",tailport=e]; + 88 -> 89 [xlabel="",tailport=e]; + 91 -> 92 [xlabel="",tailport=e]; + 97 -> 98 [xlabel="",tailport=e]; + 107 -> 108 [xlabel="" ,tailport=e]; - 109 -> 110 [xlabel="" + 110 -> 111 [xlabel="" ,tailport=e]; - 111 -> 112 [xlabel="" + 112 -> 113 [xlabel="" ,tailport=e]; - 113 -> 114 [xlabel="" + 114 -> 115 [xlabel="" ,tailport=e]; - 114 -> 117 [xlabel=1 + 115 -> 118 [xlabel=1 ,arrowhead=onone ,headport=w]; - 115 -> 113 [xlabel=1 + 116 -> 114 [xlabel=1 ,arrowhead=onone ,headport=w]; - 117 -> 118 [xlabel="" + 118 -> 119 [xlabel="" ,tailport=e]; - 119 -> 117 [xlabel=1 + 120 -> 118 [xlabel=1 ,arrowhead=onone ,headport=w]; - 120 -> 121 [xlabel="" + 121 -> 122 [xlabel="" ,tailport=e]; - 121 -> 122 [xlabel=1 + 122 -> 123 [xlabel=1 ,arrowhead=onone ,headport=w]; } \ No newline at end of file diff --git a/src/Dodge/Combine/Combinations.hs b/src/Dodge/Combine/Combinations.hs index 382ae8eef..136b36405 100644 --- a/src/Dodge/Combine/Combinations.hs +++ b/src/Dodge/Combine/Combinations.hs @@ -86,6 +86,7 @@ itemCombinations = , po [HELD FLAMESPITTER, cr STEELDRUM] flameThrower , po [HELD FLAMETHROWER, cr STEELDRUM] flameWall , po [HELD FLAMETHROWER, cr PUMP] flameTorrent + , po [HELD LASER, HELD BURSTRIFLE] flameTorrent , p [o $ cr PRISM, o $ cr TRANSFORMER, o $ cr PIPE] laser -- , po [HELD LASGUN, HELD LASGUN, cr HARDWARE] dualBeam -- , po [HELD LASGUN, cr TRANSFORMER] (lasWide 2) diff --git a/src/Dodge/Render/Connectors.hs b/src/Dodge/Render/Connectors.hs index dd95b39a7..1b8a40316 100644 --- a/src/Dodge/Render/Connectors.hs +++ b/src/Dodge/Render/Connectors.hs @@ -3,6 +3,7 @@ module Dodge.Render.Connectors ( zConnect, zConnectCol, + zConnectColMidX, lConnect, lConnectMulti, ) where @@ -25,14 +26,17 @@ zConnect (V2 x y) (V2 a b) = ] zConnectCol :: Point2 -> Point2 -> Color -> Color -> Color -> Color -> Picture -zConnectCol (V2 x y) (V2 a b) c1 c2 c3 c4 = +zConnectCol (V2 x y) (V2 a b) = zConnectColMidX (V2 x y) (V2 a b) (0.5 * (x + a)) + +zConnectColMidX :: Point2 -> Point2 -> Float -> Color -> Color -> Color -> Color -> Picture +zConnectColMidX (V2 x y) (V2 a b) midx c1 c2 c3 c4 = lineCol $ zip ( map toV2 [ (x, y) - , (0.5 * (x + a), y) - , (0.5 * (x + a), b) + , (midx, y) + , (midx, b) , (a, b) ] ) diff --git a/src/Dodge/Render/HUD.hs b/src/Dodge/Render/HUD.hs index 18694f6c5..2abcef34a 100644 --- a/src/Dodge/Render/HUD.hs +++ b/src/Dodge/Render/HUD.hs @@ -334,7 +334,7 @@ combineInventoryExtra sss msel cfig w = fromMaybe mempty $ do return $ translateScreenPos cfig (idp ^. ldpPos) $ selSecDrawCursor - 17 + 15 idp (BoundaryCursor [North, South, East, West]) sss' @@ -374,7 +374,7 @@ lnkMidPosInvSelsCol cfig w i col = fromMaybe mempty . foldMap f lp <- selNumPos cfig (invDisplayParams w) sss 0 j rp <- selNumPos cfig secondColumnParams combinesss 0 i invcol <- selSecSelCol 0 j sss - return $ zConnectCol (rp - V2 5 0) (lp + V2 175 0) col col col invcol + return $ zConnectColMidX (rp - V2 5 0) (lp + V2 155 0) (rp ^. _1 - 20) col col col invcol invHead :: Configuration -> String -> Picture invHead cfig = diff --git a/tags b/tags index 8b1fd5ace..9a6f5af7c 100644 --- a/tags +++ b/tags @@ -3323,7 +3323,7 @@ adjustIMZone src/Dodge/Base.hs 77;" f advanceScrollAmount src/Dodge/Update.hs 415;" f advanceSmoothScroll src/Dodge/SmoothScroll.hs 29;" f advanceStepCounter src/Dodge/Creature/Impulse/Movement.hs 45;" f -aimDelaySweep src/Dodge/Render/Picture.hs 110;" f +aimDelaySweep src/Dodge/Render/Picture.hs 121;" f aimStanceInfo src/Dodge/Item/Info.hs 210;" f aimTurn src/Dodge/Creature/YourControl.hs 143;" f aimingMuzzleLength src/Dodge/Creature/HandPos.hs 46;" f @@ -3526,7 +3526,7 @@ bulletModule src/Dodge/Item/Scope.hs 35;" f bulletPayloadModule src/Dodge/Item/Scope.hs 44;" f bulletSynthesizer src/Dodge/Item/Ammo.hs 124;" f bulletTargetingModule src/Dodge/Item/Scope.hs 41;" f -bulletWeapons src/Dodge/Combine/Combinations.hs 246;" f +bulletWeapons src/Dodge/Combine/Combinations.hs 247;" f burstRifle src/Dodge/Item/Held/Cane.hs 74;" f buzzS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 520;" f calcSmoothScroll src/Dodge/SmoothScroll.hs 7;" f @@ -4017,7 +4017,7 @@ doPropUpdates src/Dodge/Prop/Update.hs 36;" f doQuickload src/Dodge/Save.hs 82;" f doQuicksave src/Dodge/Save.hs 77;" f doRandImpulse src/Dodge/RandImpulse.hs 7;" f -doRegexInput src/Dodge/Update/Input/InGame.hs 188;" f +doRegexInput src/Dodge/Update/Input/InGame.hs 191;" f doRoomInPlacements src/Dodge/Layout.hs 97;" f doRoomOutPlacements src/Dodge/Layout.hs 107;" f doRoomPlacements src/Dodge/Layout.hs 122;" f @@ -4085,7 +4085,6 @@ drawDIMouseOver src/Dodge/Render/HUD.hs 105;" f drawDISelections src/Dodge/Render/HUD.hs 132;" f drawDoorPaths src/Dodge/Debug/Picture.hs 217;" f drawDoubleLampCover src/Dodge/Prop/Draw.hs 81;" f -drawDoublePlus src/Dodge/Render/Picture.hs 103;" f drawEnergyBall src/Dodge/EnergyBall/Draw.hs 8;" f drawEquipment src/Dodge/Creature/Picture.hs 140;" f drawExamineInventory src/Dodge/Render/HUD.hs 166;" f @@ -4095,6 +4094,7 @@ drawFlamelet src/Dodge/EnergyBall/Draw.hs 23;" f drawFlare src/Dodge/Flare.hs 12;" f drawFooterText src/Dodge/Render/MenuScreen.hs 65;" f drawForceField src/Dodge/Wall/Draw.hs 11;" f +drawGapPlus src/Dodge/Render/Picture.hs 112;" f drawGib src/Dodge/Prop/Draw.hs 28;" f drawHP src/Dodge/Render/HUD.hs 53;" f drawHUD src/Dodge/Render/HUD.hs 45;" f @@ -4124,7 +4124,7 @@ drawOptions src/Dodge/Render/MenuScreen.hs 32;" f drawPathBetween src/Dodge/Debug/Picture.hs 168;" f drawPathEdge src/Dodge/Debug/Picture.hs 222;" f drawPathing src/Dodge/Debug/Picture.hs 384;" f -drawPlus src/Dodge/Render/Picture.hs 100;" f +drawPlus src/Dodge/Render/Picture.hs 103;" f drawPointLabel src/Dodge/Render/Label.hs 13;" f drawProjectile src/Dodge/Projectile/Draw.hs 13;" f drawProp src/Dodge/Prop/Draw.hs 15;" f @@ -4146,7 +4146,7 @@ drawShockwave src/Dodge/Shockwave/Draw.hs 7;" f drawSpark src/Dodge/Spark/Draw.hs 6;" f drawStaticBall src/Dodge/EnergyBall/Draw.hs 14;" f drawSubInventory src/Dodge/Render/HUD.hs 140;" f -drawSweep src/Dodge/Render/Picture.hs 117;" f +drawSweep src/Dodge/Render/Picture.hs 128;" f drawSwitch src/Dodge/Button/Draw.hs 15;" f drawSwitchWire src/Dodge/LevelGen/Switch.hs 28;" f drawTargetLaser src/Dodge/Particle/Draw.hs 6;" f @@ -4663,8 +4663,8 @@ keyCardRunPastRand src/Dodge/LockAndKey.hs 37;" f keyPic src/Dodge/Item/Draw/SPic.hs 397;" f keyholeCorridor src/Dodge/Room/Corridor.hs 39;" f knifeS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 470;" f -lConnect src/Dodge/Render/Connectors.hs 41;" f -lConnectMulti src/Dodge/Render/Connectors.hs 50;" f +lConnect src/Dodge/Render/Connectors.hs 45;" f +lConnectMulti src/Dodge/Render/Connectors.hs 54;" f lShape src/Dodge/Placement/Instance/LightSource.hs 77;" f lamp src/Dodge/Creature/Lamp.hs 22;" f lampCover src/Dodge/Placement/Instance/LightSource/Cover.hs 8;" f @@ -4864,7 +4864,7 @@ maybeClearPath src/Dodge/Block.hs 77;" f maybeClearPaths src/Dodge/Block.hs 74;" f maybeDestroyBlock src/Dodge/Wall/Damage.hs 26;" f maybeDestroyDoor src/Dodge/Wall/Damage.hs 31;" f -maybeExitCombine src/Dodge/Update/Input/InGame.hs 351;" f +maybeExitCombine src/Dodge/Update/Input/InGame.hs 354;" f maybeOpenTerminal src/Dodge/Update.hs 120;" f maybeReadFile src/Dodge/LoadSeed.hs 10;" f maybeTakeOne src/RandomHelp.hs 111;" f @@ -5093,7 +5093,7 @@ parseNum src/Dodge/Debug/Terminal.hs 73;" f pathConnected src/Dodge/Room/CheckConsistency.hs 14;" f pathEdgeObstructed src/Dodge/Path.hs 43;" f pauseAndFloatCam src/Dodge/Camera.hs 10;" f -pauseGame src/Dodge/Update/Input/InGame.hs 285;" f +pauseGame src/Dodge/Update/Input/InGame.hs 288;" f pauseMenu src/Dodge/Menu.hs 53;" f pauseMenuOptions src/Dodge/Menu.hs 58;" f pauseSound src/Dodge/SoundLogic.hs 41;" f @@ -5750,7 +5750,7 @@ soundToVol src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 4;" f soundWithStatus src/Dodge/SoundLogic.hs 98;" f soundWithStatusVolume src/Dodge/SoundLogic.hs 48;" f southPillarsRoom src/Dodge/Room/LongDoor.hs 85;" f -spaceAction src/Dodge/Update/Input/InGame.hs 288;" f +spaceAction src/Dodge/Update/Input/InGame.hs 291;" f spanColLightBlackI src/Dodge/Placement/Instance/LightSource.hs 186;" f spanColLightI src/Dodge/Placement/Instance/LightSource.hs 179;" f spanLS src/Dodge/Placement/Instance/LightSource.hs 171;" f @@ -5943,8 +5943,8 @@ toggleCombineInv src/Dodge/DisplayInventory.hs 30;" f toggleCommand src/Dodge/Terminal.hs 194;" f toggleEquipmentAt src/Dodge/Creature/Impulse/UseItem.hs 75;" f toggleJust src/MaybeHelp.hs 41;" f -toggleMap src/Dodge/Update/Input/InGame.hs 312;" f -toggleTweakInv src/Dodge/Update/Input/InGame.hs 328;" f +toggleMap src/Dodge/Update/Input/InGame.hs 315;" f +toggleTweakInv src/Dodge/Update/Input/InGame.hs 331;" f togglesToEffects src/Dodge/Terminal.hs 245;" f tone440S src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 474;" f tone440sawtoothS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 444;" f @@ -6015,7 +6015,7 @@ trunkDepth src/TreeHelp.hs 161;" f tryAssignHotkey src/Dodge/Creature/YourControl.hs 85;" f tryAttachBulletBelt src/Dodge/Euse.hs 40;" f tryChargeBattery src/Dodge/Euse.hs 43;" f -tryCombine src/Dodge/Update/Input/InGame.hs 337;" f +tryCombine src/Dodge/Update/Input/InGame.hs 340;" f tryGetChannel src/Sound.hs 96;" f tryGetRootAttachedFromInvID src/Dodge/Inventory/Location.hs 19;" f tryGetRootItemInvID src/Dodge/Inventory/Location.hs 28;" f @@ -6061,7 +6061,7 @@ updateAllNodes src/TreeHelp.hs 85;" f updateArc src/Dodge/Tesla/Arc.hs 86;" f updateAttachedItems src/Dodge/Creature/State.hs 173;" f updateAutoRecharge src/Dodge/Creature/State.hs 324;" f -updateBackspaceRegex src/Dodge/Update/Input/InGame.hs 223;" f +updateBackspaceRegex src/Dodge/Update/Input/InGame.hs 226;" f updateBarrel src/Dodge/Barreloid.hs 45;" f updateBarreloid src/Dodge/Barreloid.hs 13;" f updateBounds src/Dodge/Update/Camera.hs 245;" f @@ -6085,7 +6085,7 @@ updateDistortion src/Dodge/Distortion.hs 5;" f updateDistortions src/Dodge/Update.hs 535;" f updateEnergyBall src/Dodge/EnergyBall.hs 46;" f updateEnergyBalls src/Dodge/Update.hs 562;" f -updateEnterRegex src/Dodge/Update/Input/InGame.hs 264;" f +updateEnterRegex src/Dodge/Update/Input/InGame.hs 267;" f updateExpBarrel src/Dodge/Barreloid.hs 19;" f updateFBOTO src/Framebuffer/Update.hs 97;" f updateFBOTO3 src/Framebuffer/Update.hs 131;" f @@ -6099,20 +6099,20 @@ updateHumanoid src/Dodge/Humanoid.hs 12;" f updateIMl src/Dodge/Update.hs 504;" f updateIMl' src/Dodge/Update.hs 509;" f updateInGameCamera src/Dodge/Update/Camera.hs 70;" f -updateInitialPressInGame src/Dodge/Update/Input/InGame.hs 162;" f +updateInitialPressInGame src/Dodge/Update/Input/InGame.hs 165;" f updateInstantBullets src/Dodge/Update.hs 651;" f updateInv src/Dodge/Creature/State.hs 152;" f updateInventoryPositioning src/Dodge/DisplayInventory.hs 84;" f updateItemTargeting src/Dodge/Creature/State.hs 268;" f updateItemWithOrientation src/Dodge/Creature/State.hs 194;" f -updateKeyInGame src/Dodge/Update/Input/InGame.hs 156;" f -updateKeysInTerminal src/Dodge/Update/Input/InGame.hs 145;" f +updateKeyInGame src/Dodge/Update/Input/InGame.hs 159;" f +updateKeysInTerminal src/Dodge/Update/Input/InGame.hs 148;" f updateLampoid src/Dodge/Lampoid.hs 12;" f updateLaser src/Dodge/Laser/Update.hs 13;" f updateLasers src/Dodge/Update.hs 433;" f updateLightSources src/Dodge/Update.hs 538;" f updateLinearShockwave src/Dodge/LinearShockwave/Update.hs 8;" f -updateLongPressInGame src/Dodge/Update/Input/InGame.hs 182;" f +updateLongPressInGame src/Dodge/Update/Input/InGame.hs 185;" f updateMIM src/Dodge/Update.hs 664;" f updateMachine src/Dodge/Machine/Update.hs 16;" f updateMouseInventorySelection src/Dodge/Update.hs 304;" f @@ -6126,8 +6126,8 @@ updatePastWorlds src/Dodge/Update.hs 421;" f updatePosEvent src/Dodge/PosEvent.hs 11;" f updatePosEvents src/Dodge/Update.hs 571;" f updatePreload src/Preload/Update.hs 20;" f -updatePressedButtonsCarte src/Dodge/Update/Input/InGame.hs 120;" f -updatePressedButtonsCarte' src/Dodge/Update/Input/InGame.hs 123;" f +updatePressedButtonsCarte src/Dodge/Update/Input/InGame.hs 123;" f +updatePressedButtonsCarte' src/Dodge/Update/Input/InGame.hs 126;" f updateProjectile src/Dodge/Projectile/Update.hs 23;" f updateProp src/Dodge/Prop/Update.hs 11;" f updateRBList src/Dodge/Inventory/RBList.hs 16;" f @@ -6329,8 +6329,9 @@ yourInv src/Dodge/Base/You.hs 45;" f yourRootItem src/Dodge/Base/You.hs 26;" f yourSelectedItem src/Dodge/Base/You.hs 21;" f yourStatsInfo src/Dodge/Creature/Info.hs 25;" f -zConnect src/Dodge/Render/Connectors.hs 16;" f -zConnectCol src/Dodge/Render/Connectors.hs 27;" f +zConnect src/Dodge/Render/Connectors.hs 17;" f +zConnectCol src/Dodge/Render/Connectors.hs 28;" f +zConnectColMidX src/Dodge/Render/Connectors.hs 31;" f zeroZ src/Geometry/Vector.hs 8;" f zipArcs src/Dodge/Tesla/Arc.hs 96;" f zipCount src/Dodge/Tree/Shift.hs 129;" f