{-# OPTIONS_GHC -Wno-unused-imports #-} module Dodge.TestString where import Data.List ((\\)) import ShortShow import Geometry import qualified SDL import Linear import Dodge.ListDisplayParams import Dodge.SelectionSections import qualified Control.Foldl as L import Dodge.DoubleTree import Dodge.Data.DoubleTree import Dodge.Item.Grammar import Dodge.Item.Display import AesonHelp import Dodge.SmoothScroll import HelpNum import Dodge.Base.Coordinate import Geometry.Vector import Data.Maybe import Dodge.Render.Lights import Data.Aeson (ToJSON) import Data.ByteString.Lazy.Char8 (unpack) import qualified Data.Aeson.Encode.Pretty as AEP import Control.Lens import Dodge.Data.Universe import qualified IntMapHelp as IM import qualified Data.Map.Strict as M import NewInt import Data.Foldable import Data.Monoid testStringInit :: Universe -> [String] testStringInit u = [show $ foldMap (foldMap (Sum . length . (^. seObstacles))) $ u ^. uvWorld . cWorld . incGraph] -- foldMap prettyShort $ u ^? uvWorld . cWorld . lWorld . machines . ix 0 . mcType . _McProxSensor --testStringInit u = foldMap prettyShort $ u ^.. uvWorld . cWorld . lWorld . machines -- showh _ = "" -- shortShow topTestPart :: Universe -> [String] topTestPart u = [maybe "" showManObj $ u ^? uvWorld . cWorld . lWorld . creatures . ix 0 . crManipulation . manObject ] showManObj :: ManipulatedObject -> String showManObj SortInventory = "SortInventory" showManObj (SelectedItem x y z) = "SelItem: "++ show x++ " Root: "++show y++" Attached: "++show z showManObj SelNothing = "SelNothing" showManObj SortCloseItem = "SortCloseItem" showManObj (SelCloseItem x) = "CloseItem " ++ show x showManObj SortCloseButton = "SortCloseButton" showManObj (SelCloseButton x) = "CloseButton " ++ show x --testStringInit u = fromMaybe mempty $ do -- inv <- fmap invLDT $ u ^? uvWorld . cWorld . lWorld . creatures . ix 0 . crInv -- invitm <- inv ^? ix 1 -- return $ concatMap (prettyLDT (\(x,_,_,_) -> take 5 (show $ x ^. itType . iyBase))) [invitm] --testStringInit u = maybe [] invTree (u ^? uvWorld . cWorld . lWorld . creatures . ix 0 . crInv) -- [fromMaybe "" $ do -- cr <- u ^? uvWorld . cWorld . lWorld . creatures . ix 0 -- i <- cr ^? crManipulation . manObject . inInventory . ispItem -- fmap (show . canAttachTargeting) (cr ^? crInv . ix i) -- ] showTimeFlow :: TimeFlowStatus -> String showTimeFlow tfs = case tfs of RespawnDelay i -> "Respawndelay"++show i NormalTimeFlow -> "NormalTimeFlow" ItemScrollTimeFlow {_reverseAmount = ra } -> "ItemScrollTimeFlow" ++ show ra CameraScrollTimeFlow {_reverseAmount = ra } -> "CameraScrollTimeFlow" ++ show ra RewindLeftClick {_reverseAmount = ra } -> "RewindLeftClick" ++ show ra PausedTimeFlow {_timeFlowCharge = ra } -> "PausedTimeFlow" ++ show ra