implement online player bidding

This commit is contained in:
2020-03-28 22:30:06 +01:00
parent b6b92c2cf9
commit 1ccce66d4a
5 changed files with 173 additions and 17 deletions
+15
View File
@@ -3,6 +3,7 @@ module Skat.AI.Stupid where
import Skat.Player
import Skat.Pile
import Skat.Card
import Skat.Preperation
data Stupid = Stupid { getTeam :: Team
, getHand :: Hand }
@@ -16,3 +17,17 @@ instance Player Stupid where
turnCol <- turnColour
let possible = filter (isAllowed trumpCol turnCol hand) hand
return (toCard $ head possible, p)
newtype NoBidder = NoBidder Hand
deriving Show
-- | no bidding from that player
instance Bidder NoBidder where
hand (NoBidder h) = h
askBid _ _ _ = return Nothing
askResponse _ _ _ = return False
askGame _ _ = undefined -- never called
askHand _ _ = return False -- never called
askSkat _ _ _ = undefined -- never called
toPlayer (NoBidder h) team = PL $ Stupid team h
onStart _ = return ()