feat: add reshuffle

This commit is contained in:
2026-06-24 21:01:21 +03:30
parent b1c7bfdd06
commit 27c20b1d34
6 changed files with 42 additions and 1 deletions
+13
View File
@@ -124,6 +124,19 @@ func (g *Game) startHand() {
g.TrickDone = false
}
// Reshuffle دستِ جاری را پیش از انتخابِ حکم دوباره بُر می‌زند و ۵ کارتِ تازه به
// همان حاکم می‌دهد (مصرفِ یک بلیت در لایه‌ی بالاتر انجام می‌شود).
func (g *Game) Reshuffle(seat int) error {
if g.Phase != PhaseChooseTrump {
return ErrWrongPhase
}
if seat != g.Hakem {
return ErrNotHakem
}
g.startHand() // همان حاکم، دستِ نو، باز هم منتظرِ انتخابِ حکم
return nil
}
// ChooseTrump حکم را توسط حاکم تعیین کرده و بقیه کارت‌ها را پخش می‌کند.
func (g *Game) ChooseTrump(seat int, s Suit) error {
if g.Phase != PhaseChooseTrump {