Slightly tweak number displays

This commit is contained in:
2025-01-08 00:21:17 +00:00
parent 5fa5bdf21e
commit 47aa8655b1
3 changed files with 62 additions and 53 deletions
+7 -14
View File
@@ -40,9 +40,9 @@ invSelectionItem w indent loc =
-- note the convoluted display of the hotkey/equipment, this was done to avoid a
-- space leak
itemDisplay :: World -> Creature -> ComposedItem -> [String]
itemDisplay w cr ci = f
itemDisplay w cr ci = -- f
(basicItemDisplay itm)
(itemNumberDisplay w cr ci)
-- (itemNumberDisplay w cr ci)
`g` anyextra
where
itm = ci ^. _1
@@ -53,7 +53,7 @@ itemDisplay w cr ci = f
--g (x:xs) (y:_) = (rightPad 15 ' ' x ++ y) : xs
g (x:xs) (y:_) = (x ++ y) : xs
g xs _ = xs
anyextra = maybeToList (anyscroll <> anyhotkey <> anyequippos)
anyextra = maybeToList (anyscroll <> anyexternal <> anyhotkey <> anyequippos)
anyhotkey = fmap hotkeyToString
(w ^? cWorld . lWorld . imHotkeys . unNIntMap . ix itid)
anyequippos = do
@@ -61,21 +61,14 @@ itemDisplay w cr ci = f
epText <$> ci ^? _1 . itLocation . ilEquipSite
anyscroll = fmap absurround $ itemScrollDisplay =<< (ci ^? _1)
absurround str = " <" ++ str ++ ">"
anyexternal = fae <$> itemExternalValue itm w cr
-- will probably want to remote the !
fae (Left i) = " !"++shortShow i
fae (Right s) = " !" ++ s
epText :: Maybe EquipSite -> [Char]
epText (Just ep) = ' ' : rightPad 8 ' ' ('@' : eqPosText ep)
epText Nothing = " @NOT.EQP"
--epText Nothing = " ¬EQUIPED"
itemIntegralValue :: Item -> Maybe (Either Int String)
itemIntegralValue itm
| Just x <- itm ^? itUse . uInt = Just (Left x)
| Just x <- itm ^? itUse . useToggle = Just (Right $ show x)
| isJust $ itm ^? itTargeting . itTgPos . _Just = Just $ Right "!TARGETING"
| Just x <- itm ^? itConsumables . magLoadStatus . iaLoaded = Just $ Left x
| UseAttach (APInt i) <- itm ^. itUse = Just $ Left i
| UseAttach (APProjectiles x) <- itm ^. itUse = Just . Right $ show x
| otherwise = mempty
introScanValue :: Creature -> IntroScanType -> Either Int String
introScanValue cr = \case
+17 -1
View File
@@ -6,6 +6,7 @@ module Dodge.Item.Display (
basicItemDisplay,
) where
import ShortShow
import Data.Maybe
import Dodge.Data.World
import Dodge.Item.InvSize
@@ -19,9 +20,24 @@ import LensHelp
basicItemDisplay :: Item -> [String]
basicItemDisplay itm =
Prelude.take (itInvHeight itm) $
itemBaseName (itm ^. itType) :
(itemBaseName (itm ^. itType) ++ anyinternalvalue) :
catMaybes [maybeWarmupStatus itm]
++ repeat "*"
where
anyinternalvalue = maybe "" f $ itemInternalValue itm
f (Left i) = ' ':shortShow i
f (Right s) = ' ':s
itemInternalValue :: Item -> Maybe (Either Int String)
itemInternalValue itm
| Just x <- itm ^? itUse . uInt = Just (Left x)
| Just x <- itm ^? itUse . useToggle = Just (Right $ show x)
| isJust $ itm ^? itTargeting . itTgPos . _Just = Just $ Right "!TARGETING"
| Just x <- itm ^? itConsumables . magLoadStatus . iaLoaded = Just $ Left x
| UseAttach (APInt i) <- itm ^. itUse = Just $ Left i
| UseAttach (APProjectiles x) <- itm ^. itUse = Just . Right $ show x
| otherwise = mempty
maybeWarmupStatus :: Item -> Maybe String
maybeWarmupStatus it = case it ^? itUse . heldDelay . warmMax of
+38 -38
View File
@@ -3517,7 +3517,7 @@ basicBulDams src/Dodge/Item/Weapon/Bullet.hs 23;" f
basicCrPict src/Dodge/Creature/Picture.hs 26;" f
basicCrShape src/Dodge/Creature/Picture.hs 34;" f
basicDrawBeam src/Dodge/Beam/Draw.hs 11;" f
basicItemDisplay src/Dodge/Item/Display.hs 19;" f
basicItemDisplay src/Dodge/Item/Display.hs 20;" f
basicMachineApplyDamage src/Dodge/Machine/Damage.hs 6;" f
basicMachineUpdate src/Dodge/Machine.hs 13;" f
basicMuzFlare src/Dodge/HeldUse.hs 313;" f
@@ -3668,9 +3668,9 @@ clicker src/Dodge/Item/Scope.hs 81;" f
clipV src/Geometry/Vector.hs 47;" f
clipZoom src/Dodge/Update/Camera.hs 185;" f
clockCycle src/Dodge/Clock.hs 9;" f
closeButtonToSelectionItem src/Dodge/Inventory/SelectionList.hs 175;" f
closeItemToSelectionItem src/Dodge/Inventory/SelectionList.hs 160;" f
closeItemToTextPictures src/Dodge/Inventory/SelectionList.hs 189;" f
closeButtonToSelectionItem src/Dodge/Inventory/SelectionList.hs 167;" f
closeItemToSelectionItem src/Dodge/Inventory/SelectionList.hs 152;" f
closeItemToTextPictures src/Dodge/Inventory/SelectionList.hs 181;" f
closeObjectInfo src/Dodge/Render/HUD.hs 223;" f
closestCreatureID src/Dodge/Debug.hs 116;" f
closestPointOnLine src/Geometry/Intersect.hs 251;" f
@@ -4011,7 +4011,7 @@ displayControls src/Dodge/Menu.hs 206;" f
displayFrameTicks src/Dodge/Render/Picture.hs 39;" f
displayFreeSlots src/Dodge/DisplayInventory.hs 198;" f
displayIndents src/Dodge/DisplayInventory.hs 110;" f
displayPulse src/Dodge/Inventory/SelectionList.hs 131;" f
displayPulse src/Dodge/Inventory/SelectionList.hs 123;" f
displayTerminalLineString src/Dodge/Update.hs 426;" f
dist src/Geometry/Vector.hs 179;" f
dist3 src/Geometry/Vector3D.hs 101;" f
@@ -4090,7 +4090,7 @@ doRoomInPlacements src/Dodge/Layout.hs 97;" f
doRoomOutPlacements src/Dodge/Layout.hs 107;" f
doRoomPlacements src/Dodge/Layout.hs 122;" f
doRoomShift src/Dodge/Room/Link.hs 33;" f
doScopeZoom src/Dodge/Update/Scroll.hs 78;" f
doScopeZoom src/Dodge/Update/Scroll.hs 79;" f
doSectionSize src/Dodge/DisplayInventory.hs 217;" f
doSideEffects appDodge/Main.hs 120;" f
doStep src/Dodge/ArcStep.hs 9;" f
@@ -4283,7 +4283,7 @@ encircleP src/Dodge/Creature/Boid.hs 27;" f
endCombineRegex src/Dodge/Update/Input/InGame.hs 265;" f
endRegex src/Dodge/Update/Input/InGame.hs 252;" f
enterCombineInv src/Dodge/DisplayInventory.hs 323;" f
epText src/Dodge/Inventory/SelectionList.hs 65;" f
epText src/Dodge/Inventory/SelectionList.hs 68;" f
eqConstr src/SameConstr.hs 17;" f
eqPosText src/Dodge/Equipment/Text.hs 5;" f
eqSiteToPositions src/Dodge/Inventory/RBList.hs 75;" f
@@ -4438,8 +4438,8 @@ geometryTests test/Spec.hs 17;" f
geometryUnitTests test/Spec.hs 22;" f
geqConstr src/SameConstr.hs 21;" f
getAmmoLinks src/Dodge/Item/Grammar.hs 132;" f
getArguments src/Dodge/Update/Scroll.hs 172;" f
getArguments' src/Dodge/Update/Scroll.hs 160;" f
getArguments src/Dodge/Update/Scroll.hs 173;" f
getArguments' src/Dodge/Update/Scroll.hs 161;" f
getAttachedSFLink src/Dodge/HeldUse.hs 364;" f
getAutoSpringLinks src/Dodge/Item/Grammar.hs 112;" f
getAvailableListLines src/Dodge/SelectionList.hs 10;" f
@@ -4570,9 +4570,9 @@ holdForm src/Dodge/Creature/Boid.hs 136;" f
holsterWeapon src/Dodge/Creature/Volition.hs 14;" f
homingModule src/Dodge/Item/Scope.hs 47;" f
horPipe src/Dodge/Placement/Instance/Pipe.hs 9;" f
hotkeyToChar src/Dodge/Inventory/SelectionList.hs 140;" f
hotkeyToChar src/Dodge/Inventory/SelectionList.hs 132;" f
hotkeyToScancode src/Dodge/Creature/YourControl.hs 70;" f
hotkeyToString src/Dodge/Inventory/SelectionList.hs 137;" f
hotkeyToString src/Dodge/Inventory/SelectionList.hs 129;" f
humanoidAIList src/Dodge/Humanoid.hs 181;" f
iShape src/Dodge/Placement/Instance/LightSource.hs 73;" f
icosahedronPoints src/Polyhedra/Geodesic.hs 12;" f
@@ -4643,8 +4643,8 @@ intersectSegsSeg src/Geometry/Intersect.hs 232;" f
intervalList src/Geometry.hs 329;" f
interweave src/Justify.hs 17;" f
introScan src/Dodge/Item/Scope.hs 56;" f
introScanDisplay src/Dodge/Inventory/SelectionList.hs 126;" f
introScanValue src/Dodge/Inventory/SelectionList.hs 80;" f
introScanDisplay src/Dodge/Inventory/SelectionList.hs 118;" f
introScanValue src/Dodge/Inventory/SelectionList.hs 72;" f
intsToPos src/Dodge/Room/Modify/Girder.hs 160;" f
invAdj src/Dodge/Item/Grammar.hs 289;" f
invCursorParams src/Dodge/ListDisplayParams.hs 36;" f
@@ -4700,31 +4700,31 @@ isotriBWH src/Geometry/Polygon.hs 20;" f
itDim src/Dodge/Item/InvSize.hs 21;" f
itInvHeight src/Dodge/Item/InvSize.hs 11;" f
itemBaseConnections src/Dodge/Item/Grammar.hs 186;" f
itemBaseName src/Dodge/Item/Display.hs 40;" f
itemBaseName src/Dodge/Item/Display.hs 56;" f
itemBlips src/Dodge/RadarSweep.hs 93;" f
itemCombinations src/Dodge/Combine/Combinations.hs 55;" f
itemCombinationsEdges src/Dodge/Combine/Graph.hs 60;" f
itemDetectorEffect src/Dodge/HeldUse.hs 370;" f
itemDisplay src/Dodge/Inventory/SelectionList.hs 42;" f
itemDisplayPad src/Dodge/Inventory/SelectionList.hs 106;" f
itemDisplayPad src/Dodge/Inventory/SelectionList.hs 98;" f
itemEquipPict src/Dodge/Item/Draw.hs 16;" f
itemExternalValue src/Dodge/Inventory/SelectionList.hs 85;" f
itemExternalValue src/Dodge/Inventory/SelectionList.hs 77;" f
itemFromAmmoMag src/Dodge/Item.hs 39;" f
itemFromAttachType src/Dodge/Item.hs 48;" f
itemFromBase src/Dodge/Item.hs 17;" f
itemFromEquipType src/Dodge/Item.hs 63;" f
itemFromHeldType src/Dodge/Item/Held.hs 25;" f
itemInfo src/Dodge/Item/Info.hs 14;" f
itemIntegralValue src/Dodge/Inventory/SelectionList.hs 70;" f
itemInternalValue src/Dodge/Item/Display.hs 31;" f
itemInvColor src/Dodge/Item/InventoryColor.hs 9;" f
itemNumberDisplay src/Dodge/Inventory/SelectionList.hs 111;" f
itemNumberDisplay src/Dodge/Inventory/SelectionList.hs 103;" f
itemRooms src/Dodge/LockAndKey.hs 39;" f
itemRotTreeSPic src/Dodge/Item/Draw/SPic.hs 27;" f
itemSPic src/Dodge/Item/Draw/SPic.hs 34;" f
itemScan src/Dodge/Item/Scope.hs 62;" f
itemScroll src/Dodge/Update/Scroll.hs 49;" f
itemScrollDisplay src/Dodge/Inventory/SelectionList.hs 95;" f
itemString src/Dodge/Item/Display.hs 36;" f
itemScroll src/Dodge/Update/Scroll.hs 50;" f
itemScrollDisplay src/Dodge/Inventory/SelectionList.hs 87;" f
itemString src/Dodge/Item/Display.hs 52;" f
itemToBreakLists src/Dodge/Item/Grammar.hs 59;" f
itemToFunction src/Dodge/Item/Grammar.hs 138;" f
itemTreeSPic src/Dodge/Item/Draw/SPic.hs 22;" f
@@ -4952,7 +4952,7 @@ maybeExitCombine src/Dodge/Update/Input/InGame.hs 533;" f
maybeOpenConsole src/Dodge/Update.hs 123;" f
maybeReadFile src/Dodge/LoadSeed.hs 10;" f
maybeTakeOne src/RandomHelp.hs 116;" f
maybeWarmupStatus src/Dodge/Item/Display.hs 26;" f
maybeWarmupStatus src/Dodge/Item/Display.hs 42;" f
mcApplyDamage src/Dodge/Machine/Update.hs 108;" f
mcKillBut src/Dodge/Machine/Destroy.hs 34;" f
mcKillTerm src/Dodge/Machine/Destroy.hs 26;" f
@@ -5037,7 +5037,7 @@ mouseClickOptionsList src/Dodge/Update/Input/ScreenLayer.hs 59;" f
mouseCursorType src/Dodge/Render/Picture.hs 80;" f
mouseWorldPos src/Dodge/Base/Coordinate.hs 48;" f
moveBullet src/Dodge/Bullet.hs 204;" f
moveCombineSel src/Dodge/Update/Scroll.hs 108;" f
moveCombineSel src/Dodge/Update/Scroll.hs 109;" 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
@@ -5099,7 +5099,7 @@ normalizeAnglePi src/Dodge/Base.hs 154;" f
normalizeColor src/Color.hs 76;" f
normalizeV src/Geometry/Vector.hs 43;" f
normalizeV3 src/Geometry/Vector3D.hs 84;" f
nullCommand src/Dodge/Update/Scroll.hs 163;" f
nullCommand src/Dodge/Update/Scroll.hs 164;" f
numColor src/Color.hs 128;" f
numDrawableVertices src/Shader/Parameters.hs 34;" f
numGLushort src/Shader/Parameters.hs 29;" f
@@ -5611,10 +5611,10 @@ screenPosAbs src/Dodge/ScreenPos.hs 15;" f
screenToWorldPos src/Dodge/Base/Coordinate.hs 53;" f
scrollAugInvSel src/Dodge/Inventory.hs 187;" f
scrollAugNextInSection src/Dodge/Inventory.hs 200;" f
scrollCommandStrings src/Dodge/Update/Scroll.hs 155;" f
scrollCommands src/Dodge/Update/Scroll.hs 152;" f
scrollCommandStrings src/Dodge/Update/Scroll.hs 156;" f
scrollCommands src/Dodge/Update/Scroll.hs 153;" f
scrollDebugInfoInt src/Dodge/Debug.hs 71;" f
scrollRBOption src/Dodge/Update/Scroll.hs 146;" f
scrollRBOption src/Dodge/Update/Scroll.hs 147;" f
scrollSelectionSections src/Dodge/SelectionSections.hs 26;" f
scrollTimeBack src/Dodge/Update.hs 207;" f
scrollTimeForward src/Dodge/Update.hs 230;" f
@@ -5643,7 +5643,7 @@ selSecSelSize src/Dodge/SelectionSections.hs 180;" f
selSecYint src/Dodge/SelectionSections.hs 189;" f
selectCreatureDebugItem src/Dodge/Debug.hs 55;" f
selectUse src/Dodge/SelectUse.hs 11;" f
selectedItemScroll src/Dodge/Update/Scroll.hs 43;" f
selectedItemScroll src/Dodge/Update/Scroll.hs 44;" f
sensAboveDoor src/Dodge/Room/SensorDoor.hs 63;" f
sensInsideDoor src/Dodge/Room/SensorDoor.hs 69;" f
senseDamage src/Dodge/Machine/Update.hs 154;" f
@@ -5764,11 +5764,11 @@ shotgunS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 536;" f
shoulderHeight src/Dodge/Item/HeldOffset.hs 81;" f
shoulderSH src/Dodge/Creature/Picture.hs 139;" f
shoulderSP src/Dodge/Creature/HandPos.hs 170;" f
showAttachItem src/Dodge/Item/Display.hs 70;" f
showEquipItem src/Dodge/Item/Display.hs 84;" f
showAttachItem src/Dodge/Item/Display.hs 86;" f
showEquipItem src/Dodge/Item/Display.hs 100;" f
showInt src/Dodge/Item/Info.hs 67;" f
showIntsString src/Dodge/Tree/Compose.hs 129;" f
showInventoryPathing src/Dodge/Item/Display.hs 64;" f
showInventoryPathing src/Dodge/Item/Display.hs 80;" f
showManObj src/Dodge/TestString.hs 76;" f
showTerminalError src/Dodge/Debug/Terminal.hs 78;" f
showTimeFlow src/Dodge/TestString.hs 99;" f
@@ -5969,7 +5969,7 @@ terminalReturnEffect src/Dodge/Terminal.hs 276;" f
terminalSPic src/Dodge/Machine/Draw.hs 29;" f
terminalScreenGlow src/Dodge/Machine/Update.hs 34;" f
terminalShape src/Dodge/Machine/Draw.hs 32;" f
terminalWheelEvent src/Dodge/Update/Scroll.hs 118;" f
terminalWheelEvent src/Dodge/Update/Scroll.hs 119;" f
teslaGun src/Dodge/Item/Held/BatteryGuns.hs 21;" f
teslaGunPic src/Dodge/Item/Draw/SPic.hs 401;" f
teslaParams src/Dodge/Item/Held/BatteryGuns.hs 37;" f
@@ -6161,7 +6161,7 @@ updateAttachedItems src/Dodge/Creature/State.hs 265;" f
updateBackspaceRegex src/Dodge/Update/Input/InGame.hs 451;" f
updateBarrel src/Dodge/Barreloid.hs 45;" f
updateBarreloid src/Dodge/Barreloid.hs 13;" f
updateBaseWheelEvent src/Dodge/Update/Scroll.hs 27;" f
updateBaseWheelEvent src/Dodge/Update/Scroll.hs 28;" f
updateBounds src/Dodge/Update/Camera.hs 215;" f
updateBulVel src/Dodge/Bullet.hs 61;" f
updateBullet src/Dodge/Bullet.hs 22;" f
@@ -6235,7 +6235,7 @@ updateRadarSweeps src/Dodge/Update.hs 545;" f
updateRandNode src/TreeHelp.hs 108;" f
updateRenderSplit appDodge/Main.hs 108;" f
updateRootItemID src/Dodge/Inventory/Location.hs 35;" f
updateScopeZoom src/Dodge/Update/Scroll.hs 66;" f
updateScopeZoom src/Dodge/Update/Scroll.hs 67;" f
updateScrollTestValue src/Dodge/ScrollValue.hs 6;" f
updateSection src/Dodge/DisplayInventory.hs 264;" f
updateSectionsPositioning src/Dodge/DisplayInventory.hs 243;" f
@@ -6261,7 +6261,7 @@ updateUseInputInGame src/Dodge/Update/Input/InGame.hs 42;" f
updateUseInputOnScreen src/Dodge/Update/Input/ScreenLayer.hs 22;" f
updateWalkCycle src/Dodge/Creature/State/WalkCycle.hs 12;" f
updateWallDamages src/Dodge/Update/WallDamage.hs 10;" f
updateWheelEvent src/Dodge/Update/Scroll.hs 18;" f
updateWheelEvent src/Dodge/Update/Scroll.hs 19;" f
updateWheelEvents src/Dodge/Update.hs 394;" f
updateWorldEventFlag src/Dodge/Update.hs 117;" f
updateWorldEventFlags src/Dodge/Update.hs 105;" f
@@ -6458,7 +6458,7 @@ zonesAroundPoint src/Dodge/Zoning/Base.hs 90;" f
zonesExtract src/Dodge/Zoning/Base.hs 55;" f
zoomFloatingCamera src/Dodge/Update/Camera.hs 68;" f
zoomFromItem src/Dodge/Update/Camera.hs 181;" f
zoomInLongGun src/Dodge/Update/Scroll.hs 92;" f
zoomOutLongGun src/Dodge/Update/Scroll.hs 100;" f
zoomInLongGun src/Dodge/Update/Scroll.hs 93;" f
zoomOutLongGun src/Dodge/Update/Scroll.hs 101;" f
zoomScope src/Dodge/Item/Scope.hs 32;" f
zoomSpeed src/Dodge/Update/Scroll.hs 89;" f
zoomSpeed src/Dodge/Update/Scroll.hs 90;" f