diff --git a/src/Dodge/DisplayInventory.hs b/src/Dodge/DisplayInventory.hs index 4e3f57dfc..8f0a2f6ec 100644 --- a/src/Dodge/DisplayInventory.hs +++ b/src/Dodge/DisplayInventory.hs @@ -308,15 +308,14 @@ updateSection indent mcsel sis availablelines oldoffset = SelectionSection { _ssItems = sis , _ssOffset = offset - , _ssShownItems = tweakfirst shownitems +-- , _ssShownItems = tweakfirst shownitems + , _ssShownItems = tweakfirst . tweaklast . map snd + $ take availablelines shownstrings , _ssIndent = indent } where - nocursoroffset = - if length allstrings - oldoffset <= availablelines - then max 0 (length allstrings - availablelines) - else oldoffset - offset = fromMaybe nocursoroffset $ do + oldoffsetbounded = max 0 . min oldoffset $ length allstrings - availablelines + offset = fromMaybe oldoffsetbounded $ do csel <- mcsel maxcsel <- fst <$> IM.lookupMax sis si <- sis ^? ix csel @@ -331,19 +330,26 @@ updateSection indent mcsel sis availablelines oldoffset = _ | length allstrings - oldoffset < availablelines -> length allstrings - availablelines - _ -> oldoffset - tweakfirst (x : xs) - | offset > 0 = - color moreupcolor (text (replicate 15 (toEnum 30))) : - xs - | otherwise = x : xs - tweakfirst [] = [] + _ -> oldoffsetbounded + tweakfirst + | offset > 0 = ix 0 .~ color moreupcolor (text (replicate 15 (toEnum 30))) + | otherwise = id +-- tweakfirst (x : xs) +-- | offset > 0 = +-- color moreupcolor (text (replicate 15 (toEnum 30))) : +-- xs +-- | otherwise = x : xs +-- tweakfirst [] = [] moreupcolor = fromMaybe white $ allstrings ^? ix offset . _1 - shownitems - | length shownstrings > availablelines = - map snd (take (availablelines - 1) shownstrings) - ++ [color moredowncolor . text $ replicate 15 (toEnum 31)] - | otherwise = map snd shownstrings + tweaklast + | length shownstrings > availablelines = ix (availablelines - 1) + .~ color moredowncolor (text . replicate 15 $ toEnum 31) + | otherwise = id +-- shownitems +-- | length shownstrings > availablelines = +-- map snd (take (availablelines - 1) shownstrings) +-- ++ [color moredowncolor . text $ replicate 15 (toEnum 31)] +-- | otherwise = map snd shownstrings moredowncolor = fromMaybe white $ allstrings ^? ix (offset + availablelines - 1) . _1 allstrings = listSelectionColorPicture sis shownstrings = drop offset allstrings diff --git a/src/Dodge/Item/Location.hs b/src/Dodge/Item/Location.hs index 8f66a0509..82d0044c7 100644 --- a/src/Dodge/Item/Location.hs +++ b/src/Dodge/Item/Location.hs @@ -1,7 +1,6 @@ module Dodge.Item.Location ( pointerToItemID, pointerToItemLocation, - getItem, pointerToItem, pointerYourSelectedItem, pointerYourRootItem, @@ -12,16 +11,6 @@ import Control.Lens import Data.Maybe import Dodge.Data.World -getItem :: Int -> World -> Maybe Item -getItem itid w = do - itpos <- w ^? cWorld . lWorld . itemLocations . ix itid - case itpos of - OnFloor flitid -> w ^? cWorld . lWorld . floorItems . unNIntMap . ix (_unNInt flitid) . flIt - InInv {_ilCrID = cid, _ilInvID = invid} - -> w ^? cWorld . lWorld . creatures . ix cid . crInv . ix invid - OnTurret mcid -> w ^? cWorld . lWorld . machines . ix mcid . mcType . _McTurret . tuWeapon - InVoid -> Nothing - pointerToItemLocation :: Applicative f => ItemLocation -> diff --git a/src/Dodge/Item/Weapon.hs b/src/Dodge/Item/Weapon.hs index 7d66de146..6a3d54088 100644 --- a/src/Dodge/Item/Weapon.hs +++ b/src/Dodge/Item/Weapon.hs @@ -4,11 +4,9 @@ module Dodge.Item.Weapon ( module Dodge.Item.Weapon.ExtraEffect, module Dodge.Item.Weapon.Radar, module Dodge.Item.Weapon.Utility, --- module Dodge.Item.Weapon.BatteryGuns, module Dodge.Item.Weapon.Drone, ) where ---import Dodge.Item.Weapon.BatteryGuns import Dodge.Item.Weapon.Drone import Dodge.Item.Weapon.ExtraEffect import Dodge.Item.Weapon.Radar diff --git a/src/Dodge/Render/Connectors.hs b/src/Dodge/Render/Connectors.hs index 1b8a40316..27b4d22af 100644 --- a/src/Dodge/Render/Connectors.hs +++ b/src/Dodge/Render/Connectors.hs @@ -32,23 +32,15 @@ zConnectColMidX :: Point2 -> Point2 -> Float -> Color -> Color -> Color -> Color zConnectColMidX (V2 x y) (V2 a b) midx c1 c2 c3 c4 = lineCol $ zip - ( map - toV2 - [ (x, y) - , (midx, y) - , (midx, b) - , (a, b) - ] - ) + [ V2 x y + , V2 midx y + , V2 midx b + , V2 a b + ] [c1, c2, c3, c4] lConnect :: Point2 -> Point2 -> Picture -lConnect sp@(V2 _ y) ep@(V2 x _) = - line - [ sp - , V2 x y - , ep - ] +lConnect sp@(V2 _ y) ep@(V2 x _) = line [sp, V2 x y, ep] -- this function is the reason for the incomplete-uni-patterns warning suppression lConnectMulti :: [Point2] -> Point2 -> Picture diff --git a/tags b/tags index c2274aba2..9d311a316 100644 --- a/tags +++ b/tags @@ -3340,7 +3340,7 @@ applyEventIO src/Loop.hs 89;" f applyIndividualDamage src/Dodge/Creature/Damage.hs 49;" f applyIndividualDamage' src/Dodge/Creature/Damage.hs 52;" f applyInvLock src/Dodge/HeldUse.hs 74;" f -applyMagnetsToBul src/Dodge/Bullet.hs 46;" f +applyMagnetsToBul src/Dodge/Bullet.hs 41;" f applyNoDamage src/Dodge/Creature/Damage.hs 11;" f applyPastDamages src/Dodge/Creature/State.hs 132;" f applyPiercingDamage src/Dodge/Creature/Damage.hs 57;" f @@ -3441,7 +3441,7 @@ basicDrawBeam src/Dodge/Beam/Draw.hs 11;" f basicItemDisplay src/Dodge/Item/Display.hs 34;" f basicMachineApplyDamage src/Dodge/Machine/Damage.hs 6;" f basicMachineUpdate src/Dodge/Machine.hs 13;" f -basicMuzFlare src/Dodge/HeldUse.hs 203;" f +basicMuzFlare src/Dodge/HeldUse.hs 204;" f basicTerminal src/Dodge/Terminal.hs 35;" f battery src/Dodge/Item/Ammo.hs 96;" f batteryPack src/Dodge/Item/Equipment.hs 56;" f @@ -3480,7 +3480,7 @@ boosterGun src/Dodge/Item/Equipment/Booster.hs 9;" f bossKeyItems src/Dodge/LockAndKey.hs 12;" f bossRoom src/Dodge/Room/Boss.hs 60;" f bounceBall src/Dodge/Base/Collide.hs 77;" f -bounceDir src/Dodge/Bullet.hs 100;" f +bounceDir src/Dodge/Bullet.hs 96;" f bouncePoint src/Dodge/Base/Collide.hs 87;" f boundPoints src/Bound.hs 10;" f boundedGrid src/Grid.hs 19;" f @@ -3708,7 +3708,7 @@ createItemYou src/Dodge/Inventory/Add.hs 94;" f createLightMap src/Render.hs 26;" f createNewArc src/Dodge/Tesla/Arc.hs 76;" f createPathGrid src/Dodge/Room/Path.hs 21;" f -createProjectile src/Dodge/HeldUse.hs 507;" f +createProjectile src/Dodge/HeldUse.hs 508;" f createShell src/Dodge/Projectile/Create.hs 19;" f createShieldWall src/Dodge/Euse.hs 133;" f createUnusedLinkPos src/Dodge/Tree/Shift.hs 117;" f @@ -3772,7 +3772,7 @@ damageHP src/Dodge/Creature/Damage.hs 65;" f damageMaterial src/Dodge/Material/Damage.hs 7;" f damageSensor src/Dodge/Placement/Instance/Sensor.hs 15;" f damageStone src/Dodge/Material/Damage.hs 20;" f -damageThingHit src/Dodge/Bullet.hs 176;" f +damageThingHit src/Dodge/Bullet.hs 172;" f damageTypeThreshold src/Dodge/Placement/Instance/Sensor.hs 45;" f damageWall src/Dodge/Wall/Damage.hs 15;" f damageWallEffect src/Dodge/Wall/DamageEffect.hs 11;" f @@ -3895,7 +3895,7 @@ deleteWallFromZones src/Dodge/Wall/Zone.hs 23;" f deleteWallID src/Dodge/Wall/Delete.hs 13;" f deleteWallIDs src/Dodge/Wall/Delete.hs 28;" f denormalEdges src/Polyhedra.hs 136;" f -destroyAt src/Dodge/Bullet.hs 201;" f +destroyAt src/Dodge/Bullet.hs 197;" f destroyBlock src/Dodge/Block.hs 56;" f destroyDoor src/Dodge/Block.hs 85;" f destroyInvItem src/Dodge/Inventory.hs 42;" f @@ -3911,7 +3911,7 @@ detV src/Geometry/Vector.hs 93;" f detectorColor src/Dodge/Item/Draw/SPic.hs 391;" f detectorEffect src/Dodge/Item/Weapon/Radar.hs 20;" f detectorInfo src/Dodge/Item/Info.hs 191;" f -determineProjectileTracking src/Dodge/HeldUse.hs 496;" f +determineProjectileTracking src/Dodge/HeldUse.hs 497;" f diagonalLinesRect src/Dodge/Room/Foreground.hs 52;" f did src/Dodge/Item/InvSize.hs 53;" f diffAngles src/Geometry.hs 196;" f @@ -3965,7 +3965,7 @@ doDrag src/Dodge/Update/Input/InGame.hs 98;" f doDrawing src/Dodge/Render.hs 35;" f doDrawing' src/Dodge/Render.hs 46;" f doFloatFloat src/Dodge/FloatFunction.hs 5;" f -doGenFloat src/Dodge/HeldUse.hs 451;" f +doGenFloat src/Dodge/HeldUse.hs 452;" f doInPlacements src/Dodge/Layout.hs 92;" f doIndividualPlacements src/Dodge/Layout.hs 117;" f doInputScreenInput src/Dodge/Update/Input/ScreenLayer.hs 26;" f @@ -4206,7 +4206,7 @@ expandPolyBy src/Dodge/LevelGen/StaticWalls.hs 91;" f expandPolyByFixed src/Dodge/LevelGen/StaticWalls.hs 97;" f expandPolyCorners src/Dodge/LevelGen/StaticWalls.hs 103;" f expandToSquare src/Dodge/LevelGen/StaticWalls/Deprecated.hs 83;" f -expireAndDamage src/Dodge/Bullet.hs 183;" f +expireAndDamage src/Dodge/Bullet.hs 179;" f expireAndDamageFL src/Dodge/Flame.hs 47;" f explodeShell src/Dodge/Projectile/Update.hs 154;" f explosionS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 410;" f @@ -4319,7 +4319,7 @@ gameRoomViewpoints src/Dodge/Viewpoints.hs 35;" f gameRoomsFromRooms src/Dodge/Layout.hs 158;" f gameplayMenu src/Dodge/Menu.hs 131;" f gameplayMenuOptions src/Dodge/Menu.hs 134;" f -gasCreate src/Dodge/HeldUse.hs 448;" f +gasCreate src/Dodge/HeldUse.hs 449;" f generateGenParams src/Dodge/LevelGen/LevelStructure.hs 22;" f generateGraphs src/Dodge/LevelGen.hs 39;" f generateLayout src/Dodge/Layout/Generate.hs 10;" f @@ -4334,8 +4334,8 @@ getAmmoLinks src/Dodge/Item/Grammar.hs 81;" f getArguments src/Dodge/Update/Scroll.hs 152;" f getArguments' src/Dodge/Update/Scroll.hs 140;" f getAvailableListLines src/Dodge/SelectionList.hs 10;" f -getBulletTrajectory src/Dodge/HeldUse.hs 353;" f -getBulletType src/Dodge/HeldUse.hs 327;" f +getBulletTrajectory src/Dodge/HeldUse.hs 354;" f +getBulletType src/Dodge/HeldUse.hs 328;" f getCommands src/Dodge/Terminal.hs 117;" f getCommandsHelp src/Dodge/Terminal.hs 75;" f getCrDexterity src/Dodge/Creature/Statistics.hs 13;" f @@ -4344,10 +4344,9 @@ getCrMoveSpeed src/Dodge/Creature/Statistics.hs 16;" f getDamageCoding src/Dodge/Terminal.hs 177;" f getDistortions src/Dodge/Render.hs 383;" f getEquipmentAllocation src/Dodge/Inventory/RBList.hs 47;" f -getItem src/Dodge/Item/Location.hs 15;" f -getLaserColor src/Dodge/HeldUse.hs 200;" f -getLaserDamage src/Dodge/HeldUse.hs 197;" f -getLaserPhaseV src/Dodge/HeldUse.hs 194;" f +getLaserColor src/Dodge/HeldUse.hs 201;" f +getLaserDamage src/Dodge/HeldUse.hs 198;" f +getLaserPhaseV src/Dodge/HeldUse.hs 195;" f getLinksOfType src/Dodge/RoomLink.hs 39;" f getMaxLinesTM src/Dodge/Terminal/Type.hs 11;" f getMenuMouseContext src/Dodge/Update.hs 367;" f @@ -4455,7 +4454,7 @@ highBar src/Dodge/Room/Foreground.hs 89;" f highDiagonalMesh src/Dodge/Room/Foreground.hs 35;" f highMesh src/Dodge/Room/Foreground.hs 25;" f hit1S src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 426;" f -hitEffFromBul src/Dodge/Bullet.hs 145;" f +hitEffFromBul src/Dodge/Bullet.hs 141;" f hitS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 394;" f holdForm src/Dodge/Creature/Boid.hs 136;" f holsterWeapon src/Dodge/Creature/Volition.hs 14;" f @@ -4560,7 +4559,7 @@ invertIntMap src/Multiset.hs 67;" f invertInventoryToMap src/Dodge/Combine.hs 56;" f invisibleChaseCrit src/Dodge/Creature/ChaseCrit.hs 25;" f invisibleWall src/Dodge/Placement/Instance/Wall.hs 16;" f -isAmmoIntLink src/Dodge/HeldUse.hs 211;" f +isAmmoIntLink src/Dodge/HeldUse.hs 212;" f isAnimate src/Dodge/Creature/Test.hs 136;" f isCognizant src/Dodge/Creature/Perception.hs 105;" f isConnected src/Dodge/Inventory/Swap.hs 90;" f @@ -4595,7 +4594,7 @@ itemBaseName src/Dodge/Item/Display.hs 45;" f itemBlips src/Dodge/RadarSweep.hs 75;" f itemCombinations src/Dodge/Combine/Combinations.hs 54;" f itemCombinationsEdges src/Dodge/Combine/Graph.hs 60;" f -itemDetectorEffect src/Dodge/HeldUse.hs 236;" f +itemDetectorEffect src/Dodge/HeldUse.hs 237;" f itemDisplay src/Dodge/Item/Display.hs 16;" f itemDisplayPad src/Dodge/Item/Display.hs 29;" f itemEquipPict src/Dodge/Item/Draw.hs 17;" f @@ -4653,7 +4652,7 @@ lampCrSPic src/Dodge/Render/ShapePicture.hs 57;" f lasCenSensEdge src/Dodge/Room/LasTurret.hs 112;" f lasDronesPic src/Dodge/Item/Weapon/Drone.hs 22;" f lasGunPic src/Dodge/Item/Draw/SPic.hs 351;" f -lasRayAt src/Dodge/HeldUse.hs 304;" f +lasRayAt src/Dodge/HeldUse.hs 305;" f lasSensorTurretTest src/Dodge/Room/LasTurret.hs 105;" f lasTunnel src/Dodge/Room/LasTurret.hs 124;" f lasTunnelRunPast src/Dodge/Room/LasTurret.hs 165;" f @@ -4773,7 +4772,7 @@ makeAttach src/Dodge/Item/Attach.hs 10;" f makeBlip src/Dodge/RadarSweep.hs 51;" f makeBlockDebris src/Dodge/Block/Debris.hs 28;" f makeBoolOption src/Dodge/Menu/OptionType.hs 8;" f -makeBullet src/Dodge/HeldUse.hs 386;" f +makeBullet src/Dodge/HeldUse.hs 387;" f makeButton src/Dodge/LevelGen/Switch.hs 16;" f makeByteStringShaderUsingVAO src/Shader/Compile.hs 128;" f makeCloudAt src/Dodge/WorldEvent/Cloud.hs 18;" f @@ -4788,14 +4787,14 @@ makeDefaultCorpse src/Dodge/Corpse/Make.hs 14;" f makeDoorDebris src/Dodge/Block/Debris.hs 18;" f makeEnumOption src/Dodge/Menu/OptionType.hs 13;" f makeExplosionAt src/Dodge/WorldEvent/Explosion.hs 73;" f -makeFlak src/Dodge/Bullet.hs 131;" f +makeFlak src/Dodge/Bullet.hs 127;" f makeFlame src/Dodge/Flame.hs 131;" f makeFlameExplosionAt src/Dodge/WorldEvent/Explosion.hs 56;" f makeFlamelet src/Dodge/EnergyBall.hs 15;" f makeFlamerSmokeAt src/Dodge/WorldEvent/Cloud.hs 68;" f makeFlashBall src/Dodge/EnergyBall.hs 73;" f makeFootstepSound src/Dodge/Creature/State/WalkCycle.hs 32;" f -makeFragBullets src/Dodge/Bullet.hs 116;" f +makeFragBullets src/Dodge/Bullet.hs 112;" f makeGasCloud src/Dodge/WorldEvent/SpawnParticle.hs 80;" f makeGrid src/Grid.hs 46;" f makeIntInterval src/Dodge/Zoning/Base.hs 33;" f @@ -4854,10 +4853,10 @@ mcProximitySensorUpdate src/Dodge/Machine/Update.hs 124;" f mcSPic src/Dodge/Render/ShapePicture.hs 131;" f mcSensorTriggerUpdate src/Dodge/Machine/Update.hs 87;" f mcSensorUpdate src/Dodge/Machine/Update.hs 119;" f -mcShootLaser src/Dodge/HeldUse.hs 475;" f +mcShootLaser src/Dodge/HeldUse.hs 476;" f mcTriggerVal src/Dodge/Machine/Update.hs 93;" f mcTypeUpdate src/Dodge/Machine/Update.hs 27;" f -mcUseHeld src/Dodge/HeldUse.hs 412;" f +mcUseHeld src/Dodge/HeldUse.hs 413;" f mcUseItem src/Dodge/Machine/Update.hs 79;" f medkit src/Dodge/Item/Consumable.hs 8;" f megaBattery src/Dodge/Item/Ammo.hs 84;" f @@ -4902,7 +4901,7 @@ miniGunXPictItem src/Dodge/Item/Draw/SPic.hs 301;" f miniS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 528;" f miniTree2 src/Dodge/Room/Room.hs 106;" f minimumOn src/FoldlHelp.hs 12;" f -mirrorV3xz src/Dodge/Creature/HandPos.hs 27;" f +mirrorV3xz src/Dodge/Creature/HandPos.hs 26;" f mirrorXAxis src/Geometry/Polygon.hs 49;" f mirrorxz src/Picture/Base.hs 335;" f mirroryz src/Picture/Base.hs 340;" f @@ -4926,13 +4925,13 @@ mouseActionsCr src/Dodge/Creature/YourControl.hs 153;" f mouseClickOptionsList src/Dodge/Update/Input/ScreenLayer.hs 58;" f mouseCursorType src/Dodge/Render/Picture.hs 80;" f mouseWorldPos src/Dodge/Base/Coordinate.hs 48;" f -moveBullet src/Dodge/Bullet.hs 193;" f +moveBullet src/Dodge/Bullet.hs 189;" f moveCombineSel src/Dodge/Update/Scroll.hs 58;" f moveHammerUp src/Dodge/Hammer.hs 5;" f moveInverseShockwave src/Dodge/Shockwave/Update.hs 53;" f moveLSThen src/Dodge/Placement/Instance/LightSource.hs 30;" f moveOldHotkey src/Dodge/Hotkey.hs 32;" f -movePenBullet src/Dodge/Bullet.hs 211;" f +movePenBullet src/Dodge/Bullet.hs 207;" f moveRoomBy src/Dodge/Room/Link.hs 53;" f moveShockwave src/Dodge/Shockwave/Update.hs 17;" f moveToSideFirstOutLink src/Dodge/Room/Warning.hs 56;" f @@ -4951,7 +4950,7 @@ multiLookupTrie src/SimpleTrie.hs 34;" f multiLookupTrieI src/SimpleTrie.hs 43;" f muout src/Dodge/RoomLink.hs 129;" f muzFlareAt src/Dodge/HeldUse.hs 171;" f -mvBullet src/Dodge/Bullet.hs 33;" f +mvBullet src/Dodge/Bullet.hs 28;" f mvButton src/Dodge/Placement/PlaceSpot.hs 176;" f mvCr src/Dodge/Placement/PlaceSpot.hs 186;" f mvFS src/Dodge/Placement/PlaceSpot.hs 189;" f @@ -5072,7 +5071,7 @@ pauseTime src/Dodge/Update.hs 190;" f pciToCI src/Dodge/Item/Grammar.hs 105;" f peZoneSize src/Dodge/Zoning/Pathing.hs 46;" f pedestalRoom src/Dodge/Room/Containing.hs 50;" f -penThing src/Dodge/Bullet.hs 224;" f +penThing src/Dodge/Bullet.hs 220;" f perMat src/MatrixHelper.hs 49;" f perceptionUpdate src/Dodge/Creature/Perception.hs 22;" f performAction src/Dodge/Creature/Action.hs 96;" f @@ -5153,11 +5152,11 @@ pointInPolygon src/Geometry/Polygon.hs 66;" f pointIsInCone src/Geometry.hs 378;" f pointIsOnScreen src/Dodge/Base/Window.hs 59;" f pointTowardsImpulse src/Dodge/Path.hs 63;" f -pointerToItem src/Dodge/Item/Location.hs 47;" f -pointerToItemID src/Dodge/Item/Location.hs 55;" f -pointerToItemLocation src/Dodge/Item/Location.hs 25;" f -pointerYourRootItem src/Dodge/Item/Location.hs 42;" f -pointerYourSelectedItem src/Dodge/Item/Location.hs 36;" f +pointerToItem src/Dodge/Item/Location.hs 36;" f +pointerToItemID src/Dodge/Item/Location.hs 44;" f +pointerToItemLocation src/Dodge/Item/Location.hs 14;" f +pointerYourRootItem src/Dodge/Item/Location.hs 31;" f +pointerYourSelectedItem src/Dodge/Item/Location.hs 25;" f pointsToPoly src/Geometry/ConvexPoly.hs 39;" f poisonSPic src/Dodge/Creature/State.hs 107;" f poisonSprayer src/Dodge/Item/Held/SprayGuns.hs 17;" f @@ -5358,7 +5357,7 @@ reloadS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 440;" f rememberSounds src/Dodge/Creature/Perception.hs 177;" f remoteScreen src/Dodge/Item/Scope.hs 50;" f remoteShellShape src/Dodge/Projectile/Draw.hs 42;" f -removeAmmoFromMag src/Dodge/HeldUse.hs 314;" f +removeAmmoFromMag src/Dodge/HeldUse.hs 315;" f removeDot src/ShortShow.hs 30;" f removeHotkey src/Dodge/Hotkey.hs 41;" f removeInverseWalls src/Dodge/LevelGen/StaticWalls.hs 25;" f @@ -5551,7 +5550,7 @@ setClusterID src/Dodge/Combine/Graph.hs 115;" f setDepth src/Picture/Base.hs 128;" f setDirPS src/Dodge/PlacementSpot.hs 49;" f setFallback src/Dodge/PlacementSpot.hs 127;" f -setFromToDams src/Dodge/Bullet.hs 171;" f +setFromToDams src/Dodge/Bullet.hs 167;" f setHotkey src/Dodge/Hotkey.hs 38;" f setInLinks src/Dodge/RoomLink.hs 51;" f setInLinksByType src/Dodge/RoomLink.hs 54;" f @@ -5637,15 +5636,15 @@ shiftRoomShiftToLink src/Dodge/Room/Link.hs 70;" f shiftedGrid src/Grid.hs 25;" f shineTargetLaser src/Dodge/Creature/State.hs 283;" f shineTorch src/Dodge/Creature/State.hs 325;" f -shootBullet src/Dodge/HeldUse.hs 373;" f +shootBullet src/Dodge/HeldUse.hs 374;" f shootFirstMiss src/Dodge/Creature/Volition.hs 33;" f shootL src/Dodge/Item/Weapon/TriggerType.hs 165;" f -shootLaser src/Dodge/HeldUse.hs 284;" f +shootLaser src/Dodge/HeldUse.hs 285;" f shootOutPassage src/Dodge/Room/RezBox.hs 74;" f shootShatter src/Dodge/Item/Weapon/Shatter.hs 11;" f -shootTeslaArc src/Dodge/HeldUse.hs 484;" f +shootTeslaArc src/Dodge/HeldUse.hs 485;" f shootTillEmpty src/Dodge/Creature/Volition.hs 18;" f -shootTractorBeam src/Dodge/HeldUse.hs 263;" f +shootTractorBeam src/Dodge/HeldUse.hs 264;" f shootersRoom src/Dodge/Room/Room.hs 315;" f shootersRoom' src/Dodge/Room/Room.hs 280;" f shootersRoom1 src/Dodge/Room/Room.hs 305;" f @@ -5655,7 +5654,7 @@ shortShow src/ShortShow.hs 10;" f shotgunS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 526;" f shoulderHeight src/Dodge/Item/HeldOffset.hs 81;" f shoulderSH src/Dodge/Creature/Picture.hs 137;" f -shoulderSP src/Dodge/Creature/HandPos.hs 171;" f +shoulderSP src/Dodge/Creature/HandPos.hs 170;" f showAttachItem src/Dodge/Item/Display.hs 61;" f showAutoRechargeProgress src/Dodge/Item/Display.hs 74;" f showEquipItem src/Dodge/Item/Display.hs 69;" f @@ -5931,7 +5930,7 @@ torqueCr src/Dodge/WorldEffect.hs 72;" 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 -tractorBeamAt src/Dodge/HeldUse.hs 273;" f +tractorBeamAt src/Dodge/HeldUse.hs 274;" f tractorGun src/Dodge/Item/Held/BatteryGuns.hs 60;" f tractorGunPic src/Dodge/Item/Draw/SPic.hs 375;" f tractorPullPos src/Dodge/TractorBeam/Update.hs 33;" f @@ -5944,10 +5943,10 @@ translate3 src/Picture/Base.hs 120;" f translateFloatingCamera src/Dodge/Update/Camera.hs 47;" f translateFloatingCameraKeys src/Dodge/Update/Camera.hs 59;" f translateH src/Picture/Base.hs 112;" f -translatePointToHead src/Dodge/Creature/HandPos.hs 148;" f -translatePointToLeftHand src/Dodge/Creature/HandPos.hs 76;" f -translatePointToRightHand src/Dodge/Creature/HandPos.hs 24;" f -translatePointToRightHand' src/Dodge/Creature/HandPos.hs 30;" f +translatePointToHead src/Dodge/Creature/HandPos.hs 147;" f +translatePointToLeftHand src/Dodge/Creature/HandPos.hs 75;" f +translatePointToRightHand src/Dodge/Creature/HandPos.hs 23;" f +translatePointToRightHand' src/Dodge/Creature/HandPos.hs 29;" f translateSH src/Shape.hs 243;" f translateSHxy src/Shape.hs 247;" f translateSHz src/Shape.hs 251;" f @@ -5955,17 +5954,17 @@ translateSP src/ShapePicture.hs 53;" f translateSPxy src/ShapePicture.hs 45;" f translateSPz src/ShapePicture.hs 49;" f translateScreenPos src/Dodge/ScreenPos.hs 12;" f -translateToBack src/Dodge/Creature/HandPos.hs 165;" f -translateToChest src/Dodge/Creature/HandPos.hs 158;" f -translateToHead src/Dodge/Creature/HandPos.hs 138;" f -translateToLeftHand src/Dodge/Creature/HandPos.hs 89;" f -translateToLeftLeg src/Dodge/Creature/HandPos.hs 116;" f -translateToLeftWrist src/Dodge/Creature/HandPos.hs 102;" f -translateToRightHand src/Dodge/Creature/HandPos.hs 43;" f -translateToRightHand' src/Dodge/Creature/HandPos.hs 46;" f -translateToRightLeg src/Dodge/Creature/HandPos.hs 127;" f -translateToRightWrist src/Dodge/Creature/HandPos.hs 59;" f -translateToRightWrist' src/Dodge/Creature/HandPos.hs 62;" f +translateToBack src/Dodge/Creature/HandPos.hs 164;" f +translateToChest src/Dodge/Creature/HandPos.hs 157;" f +translateToHead src/Dodge/Creature/HandPos.hs 137;" f +translateToLeftHand src/Dodge/Creature/HandPos.hs 88;" f +translateToLeftLeg src/Dodge/Creature/HandPos.hs 115;" f +translateToLeftWrist src/Dodge/Creature/HandPos.hs 101;" f +translateToRightHand src/Dodge/Creature/HandPos.hs 42;" f +translateToRightHand' src/Dodge/Creature/HandPos.hs 45;" f +translateToRightLeg src/Dodge/Creature/HandPos.hs 126;" f +translateToRightWrist src/Dodge/Creature/HandPos.hs 58;" f +translateToRightWrist' src/Dodge/Creature/HandPos.hs 61;" f translateWallID src/Dodge/Wall/Move.hs 37;" f translateXY src/Polyhedra.hs 26;" f trapezionBWHW src/Geometry/Polygon.hs 24;" f @@ -6041,8 +6040,8 @@ updateBackspaceRegex src/Dodge/Update/Input/InGame.hs 455;" f updateBarrel src/Dodge/Barreloid.hs 45;" f updateBarreloid src/Dodge/Barreloid.hs 13;" f updateBounds src/Dodge/Update/Camera.hs 245;" f -updateBulVel src/Dodge/Bullet.hs 50;" f -updateBullet src/Dodge/Bullet.hs 28;" f +updateBulVel src/Dodge/Bullet.hs 45;" f +updateBullet src/Dodge/Bullet.hs 23;" f updateBullets src/Dodge/Update.hs 536;" f updateCamera src/Dodge/Update/Camera.hs 31;" f updateCloseObjects src/Dodge/Inventory.hs 113;" f @@ -6166,19 +6165,19 @@ upperPrismPolyTS src/Shape.hs 119;" f upperRounded src/Shape.hs 183;" f useBreakL src/Dodge/Item/Grammar.hs 30;" f useBreakListsLinkTest src/Dodge/Item/Grammar.hs 38;" f -useBulletPayload src/Dodge/Bullet.hs 105;" f +useBulletPayload src/Dodge/Bullet.hs 101;" f useC src/Dodge/Cuse.hs 8;" f useC' src/Dodge/Cuse.hs 13;" f useE src/Dodge/Euse.hs 23;" f useEquipment src/Dodge/Creature/State.hs 148;" f -useGasParams src/Dodge/HeldUse.hs 423;" f +useGasParams src/Dodge/HeldUse.hs 424;" f useHotKey src/Dodge/Creature/YourControl.hs 48;" f useItemHotkey src/Dodge/Creature/Impulse/UseItem.hs 143;" f useItemLeftClick src/Dodge/Creature/Impulse/UseItem.hs 117;" f useItemLeftClick' src/Dodge/Creature/Impulse/UseItem.hs 130;" f useL src/Dodge/Luse.hs 11;" f useLnkRoomPos src/Dodge/PlacementSpot.hs 244;" f -useLoadedAmmo src/Dodge/HeldUse.hs 215;" f +useLoadedAmmo src/Dodge/HeldUse.hs 216;" f useMagShield src/Dodge/Euse.hs 68;" f useNormalCamera src/Dodge/Camera.hs 6;" f usePayload src/Dodge/Payload.hs 7;" f @@ -6221,8 +6220,8 @@ visionCheck src/Dodge/Creature/Perception.hs 152;" f vocalizationTest src/Dodge/Creature/Vocalization.hs 8;" f volleyGun src/Dodge/Item/Held/Cane.hs 30;" f volleyGunShape src/Dodge/Item/Draw/SPic.hs 289;" f -waistSP src/Dodge/Creature/HandPos.hs 174;" f -walkNozzle src/Dodge/HeldUse.hs 241;" f +waistSP src/Dodge/Creature/HandPos.hs 173;" f +walkNozzle src/Dodge/HeldUse.hs 242;" f walkableNodeNear src/Dodge/Path.hs 48;" f wallBlips src/Dodge/RadarSweep.hs 80;" f wallBuffer src/Dodge/WallCreatureCollisions.hs 50;" f