From 5e885b879bca29943d74f7bf2474a39ce15ef79a Mon Sep 17 00:00:00 2001 From: Ross Date: Tue, 30 Mar 2021 22:43:40 +0100 Subject: [PATCH] start debug mode --- app/Main.hs | 17 +++++++++++------ src/Dodge/Event/Keyboard.hs | 17 +++++++++++++---- 2 files changed, 24 insertions(+), 10 deletions(-) diff --git a/app/Main.hs b/app/Main.hs index 7385911da..24c8e1c81 100644 --- a/app/Main.hs +++ b/app/Main.hs @@ -69,12 +69,17 @@ main = do endTicks <- SDL.ticks let lastFrameTicks = _frameTimer preData - renderFoldable - (_renderData preData) - (picToLTree Nothing . setLayer 1 . setDepth (-1) - . translate (-0.5) (-0.8) . scale 0.0005 0.0005 - . text $ "ms/frame " ++ show (endTicks - lastFrameTicks) - ) + if (_debugMode w) then + renderFoldable + (_renderData preData) + (picToLTree Nothing . setLayer 1 . setDepth (-1) + . translate (-0.5) (-0.8) . scale 0.0005 0.0005 + . text $ "ms/frame " ++ show (endTicks - lastFrameTicks) + ) + else + -- ? Why (or rather how to avoid) + return endTicks + return $ preData & soundData .~ newSoundData & frameTimer .~ endTicks ) diff --git a/src/Dodge/Event/Keyboard.hs b/src/Dodge/Event/Keyboard.hs index 64e35b3aa..63455b5b3 100644 --- a/src/Dodge/Event/Keyboard.hs +++ b/src/Dodge/Event/Keyboard.hs @@ -44,12 +44,21 @@ handlePressedKey _ scancode w | scancode == rotateCameraPlusKey (_keyConfig w) = Just $ w {_cameraRot = _cameraRot w + 0.01} | scancode == rotateCameraMinusKey (_keyConfig w) = Just $ w {_cameraRot = _cameraRot w - 0.01} | scancode == ScancodeF11 = Just $ w {_debugMode = not $ _debugMode w} - | _debugMode w && scancode == ScancodeF7 = Just $ w {_varMovementSpeedModifier = _varMovementSpeedModifier w - 1} - | _debugMode w && scancode == ScancodeF8 = Just $ w {_varMovementSpeedModifier = _varMovementSpeedModifier w + 1} - | _debugMode w && scancode == ScancodeF5 = Just $ dropLight w - | _debugMode w && scancode == ScancodeF6 = Just $ dropLight' w + | _debugMode w = debugKey scancode w + -- | _debugMode w && scancode == ScancodeF7 = Just $ w {_varMovementSpeedModifier = _varMovementSpeedModifier w - 1} + -- | _debugMode w && scancode == ScancodeF8 = Just $ w {_varMovementSpeedModifier = _varMovementSpeedModifier w + 1} + -- | _debugMode w && scancode == ScancodeF5 = Just $ dropLight w + -- | _debugMode w && scancode == ScancodeF6 = Just $ dropLight' w handlePressedKey _ _ w = Just w +debugKey :: Scancode -> World -> Maybe World +debugKey scancode w + | scancode == ScancodeF7 = Just $ w {_varMovementSpeedModifier = _varMovementSpeedModifier w - 1} + | scancode == ScancodeF8 = Just $ w {_varMovementSpeedModifier = _varMovementSpeedModifier w + 1} + | scancode == ScancodeF5 = Just $ dropLight w + | scancode == ScancodeF6 = Just $ dropLight' w +debugKey _ w = Just w + spaceAction :: World -> World spaceAction w = case listToMaybe $ _closeActiveObjects w of Just (Left flit) -> pickUpItem' flit w