diff options
Diffstat (limited to 'Player.hs')
-rw-r--r-- | Player.hs | 6 |
1 files changed, 4 insertions, 2 deletions
@@ -12,7 +12,7 @@ import GLDriver (SomeEvent) class Player a where - playerMovement :: a -> Tank -> (a, Maybe Micro, Bool) + playerUpdate :: a -> Tank -> (a, Maybe Micro, Bool, Maybe Micro) handleEvent :: a -> SomeEvent -> a handleEvent player _ = player @@ -21,5 +21,7 @@ class Player a where data SomePlayer = forall a. Player a => SomePlayer a instance Player SomePlayer where - playerMovement (SomePlayer player) tank = (\(p, angle, move) -> (SomePlayer p, angle, move)) $ playerMovement player tank + playerUpdate (SomePlayer player) tank = + let (p, angle, move, aangle) = playerUpdate player tank + in (SomePlayer p, angle, move, aangle) handleEvent (SomePlayer player) event = SomePlayer $ handleEvent player event |