|
|
|
@@ -1,5 +1,5 @@ |
|
|
|
module Skat.Matches ( |
|
|
|
singleVsBots |
|
|
|
singleVsBots, pvp |
|
|
|
) where |
|
|
|
|
|
|
|
import Control.Monad.State |
|
|
|
@@ -31,11 +31,20 @@ cardDistr = emptyPiles hand1 hand2 hand3 skt |
|
|
|
|
|
|
|
singleVsBots :: Communicator c => c -> IO () |
|
|
|
singleVsBots comm = do |
|
|
|
--let gen = mkStdGen 123 |
|
|
|
-- cards = shuffleCardsWithGen gen |
|
|
|
cards <- shuffleCards |
|
|
|
let ps = Players |
|
|
|
(PL $ OnlineEnv Team Hand1 comm) |
|
|
|
(PL $ Stupid Team Hand2) |
|
|
|
(PL $ mkAIEnv Single Hand3 10) |
|
|
|
env = SkatEnv cardDistr Nothing Spades ps Hand1 |
|
|
|
env = SkatEnv (distribute cards) Nothing Spades ps Hand1 |
|
|
|
liftIO $ evalStateT (publishGameStart Hand3 >> turn >>= publishGameResults) env |
|
|
|
|
|
|
|
pvp :: Communicator c => c -> c -> c -> IO () |
|
|
|
pvp comm1 comm2 comm3 = do |
|
|
|
cards <- shuffleCards |
|
|
|
let ps = Players |
|
|
|
(PL $ OnlineEnv Team Hand1 comm1) |
|
|
|
(PL $ OnlineEnv Team Hand2 comm2) |
|
|
|
(PL $ OnlineEnv Team Hand3 comm3) |
|
|
|
env = SkatEnv (distribute cards) Nothing Spades ps Hand1 |
|
|
|
liftIO $ evalStateT (publishGameStart Hand3 >> turn >>= publishGameResults) env |