diff options
author | Matthias Schiffer <mschiffer@universe-factory.net> | 2011-06-26 20:55:51 +0200 |
---|---|---|
committer | Matthias Schiffer <mschiffer@universe-factory.net> | 2011-06-26 20:55:51 +0200 |
commit | cc53496bab9ad2bbfc3fb2868cd10fa46f612e69 (patch) | |
tree | f974028160c90e5a373c3ac38d8d7229c419aaa7 /src/CPUPlayer.hs | |
parent | 8f1fd98cd69659446b9fdd11c0f3d2b860d779f7 (diff) | |
download | htanks-cc53496bab9ad2bbfc3fb2868cd10fa46f612e69.tar htanks-cc53496bab9ad2bbfc3fb2868cd10fa46f612e69.zip |
Reworked Transform as a type class
Diffstat (limited to 'src/CPUPlayer.hs')
-rw-r--r-- | src/CPUPlayer.hs | 7 |
1 files changed, 3 insertions, 4 deletions
diff --git a/src/CPUPlayer.hs b/src/CPUPlayer.hs index 55722bf..ced2220 100644 --- a/src/CPUPlayer.hs +++ b/src/CPUPlayer.hs @@ -12,12 +12,11 @@ import GLDriver import Player -data CPUPlayer = CPUPlayer Vector +data CPUPlayer = CPUPlayer Rotation deriving (Typeable, Show) instance Player CPUPlayer where -- playerUpdate (CPUPlayer angle) _ = return (CPUPlayer (if (angle+0.2) > 180 then angle-359.8 else angle+0.2), Just angle, True, Just (-angle), ((fromIntegral . round $ angle) == angle) && ((round $ angle) `mod` 2 == 0)) - playerUpdate (CPUPlayer dir) _ = return (CPUPlayer dir', Just dir', True, Just mirrordir, False) + playerUpdate (CPUPlayer dir) _ = return (CPUPlayer dir', Just dir', True, Just $ negateV dir', False) where - dir' = (rotate (0.2*pi/180)) >< dir - mirrordir = Vector (vectorX dir') (-(vectorY dir')) + dir' = (fromAngle (0.2*pi/180)) >< dir |