Add check for button hold down when releasing rb for lb action

This commit is contained in:
jgk
2021-06-05 14:48:01 +02:00
parent e03197799e
commit c2f7c6e245
3 changed files with 9 additions and 3 deletions
+5 -3
View File
@@ -20,16 +20,18 @@ updateUsingInput w =
updatePressedButtons :: S.Set MouseButton -> World -> World
updatePressedButtons pkeys w
| lbPressed && rbPressed
= useItem (_yourID w) w
| lbPressed = useLeftItem (_yourID w) w
= useItem (_yourID w) w & lClickHammer .~ HammerDown
| lbPressed && canLeftClick = useLeftItem (_yourID w) w
| lbPressed = w
| mbPressed = w & clickMousePos .~ _mousePos w
& cameraRot -~ rotation
| otherwise = w
| otherwise = w & lClickHammer .~ HammerUp
where
lbPressed = ButtonLeft `S.member` pkeys
rbPressed = ButtonRight `S.member` pkeys
mbPressed = ButtonMiddle `S.member` pkeys
rotation = angleBetween (_mousePos w) (_clickMousePos w)
canLeftClick = _lClickHammer w == HammerUp
updatePressedButtonsCarte :: S.Set MouseButton -> World -> World
updatePressedButtonsCarte pkeys w