20 lines
680 B
Haskell
20 lines
680 B
Haskell
{-# LANGUAGE DeriveDataTypeable #-}
|
|
|
|
module CPUPlayer ( CPUPlayer(..)
|
|
) where
|
|
|
|
|
|
import Data.Fixed
|
|
import Data.Ratio ((%))
|
|
import Data.Typeable
|
|
|
|
import GLDriver
|
|
import Player
|
|
|
|
|
|
data CPUPlayer = CPUPlayer Micro
|
|
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 angle) _ = return (CPUPlayer (if (angle+0.2) > 180 then angle-359.8 else angle+0.2), Just angle, True, Just (-angle), False)
|