Do not follow myself
[darcs-mirror-haskell-partty.git] / DeafAndSilent.hs
1 import Control.Monad.Trans
2 import Control.Monad.State
3 import Control.Monad.Reader
4 import System.Random
5 import Partty
6
7 {- 
8  - Stupid player: Goes to a party it knows about for sure, otherwise guesses
9  -}
10 type UserData = ()
11
12 dcb :: DayCallback UserData
13 dcb (DayStarts _) = do
14         mbp <- asks psPartyPlace
15         room <- case mbp of
16                 Nothing -> do
17                         say $ "No idea where to go, guessing..."
18                         liftIO $ randomRIO (0,9)
19                 Just room -> do
20                         say $ "Yay, I know where to go! (" ++ show room ++")"
21                         return room
22         send (Goto room)
23
24 dcb e = return ()
25
26 ncb :: NightCallback UserData
27 ncb (NightResult {nrScore = score }) = do
28         say $ "Got score: " ++ show score
29
30 main = parttyMain dcb ncb ()