22from .declarations import Declaration
33from .util import get_valid_moves
44from typing import List , Optional , Dict
5+ from collections import defaultdict
56import abc
67import random
78import sys
89import os
910import logging
10- import random
1111
1212log = logging .getLogger (__name__ )
1313log .addHandler (logging .StreamHandler (sys .stdout ))
@@ -18,7 +18,7 @@ class Player(abc.ABC):
1818 def __init__ (self , name : Optional [str ]) -> None :
1919 self .name : Optional [str ] = name
2020 self .cards : List [Card ] = []
21- self .played : List [Card ] = []
21+ self .played : Dict [ Player , List [Card ]] = defaultdict ( list )
2222 self .points : List [int ] = []
2323 self .turn_declarations : Dict [int , List [Declaration ]] = dict ()
2424 return
@@ -34,8 +34,8 @@ def clear_cards(self) -> None:
3434 self .cards .clear ()
3535 return
3636
37- def notify_played (self , card : Card ) -> None :
38- self .played .append (card )
37+ def notify_played (self , player : 'Player' , card : Card ) -> None :
38+ self .played [ player ] .append (card )
3939 self .card_played (card )
4040 return
4141
@@ -52,6 +52,7 @@ def notify_pregame(
5252
5353 def card_accepted (self , card : Card ) -> None :
5454 self .cards .remove (card )
55+ self .notify_played (self , card )
5556 return
5657
5758 def card_played (self , card : Card ) -> None :
0 commit comments