Closed uecasm closed 10 years ago
After a quick look at the code, it does look like the last case is probably mostly imaginary, as the server does try to return cards if the player didn't play enough. But again the race conditions from the first two cases could be a problem. And also this might end up leaving the player with too many cards instead.
Two separate cases:
I suggest having the "played card completed" handler be the thing responsible for removing the card from the hand, and have it include the specific card id to be removed. I think this will fix the above two, but not this one:
This might also mean that on a pick 3 or higher, if they pick only one and then time out they'll be left with one too many cards. Again, haven't specifically tested this, so maybe it's already dealt with somehow.
(The first and second issues I have directly observed, and also inferred from other players reporting to me that they've lost a card or received "you don't have that card" errors.)