game/common/baseroom/baseSeat.go
2025-06-06 20:02:58 +08:00

78 lines
1.3 KiB
Go
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

package baseroom
import (
"time"
)
type BaseSeat struct {
no int
player IPlayer
fakeLeave bool
isCurrent bool // 多开时该标记true为玩家的当前桌
canAct bool // true:当前能叫分或出牌
ready bool
seatedTime time.Time // 落座的时间
}
func NewBaseSeat(no int) *BaseSeat {
return &BaseSeat{no: no}
}
// SeatedTime 落座时间
func (s *BaseSeat) SeatedTime() time.Time {
return s.seatedTime
}
func (s *BaseSeat) No() int {
return s.no
}
func (s *BaseSeat) Empty() bool {
return s.player == nil
}
func (s *BaseSeat) Player() IPlayer {
return s.player
}
func (s *BaseSeat) SetPlayer(player IPlayer) {
s.player = player
if player != nil {
s.seatedTime = time.Now()
} else {
s.seatedTime = time.Time{}
}
}
func (s *BaseSeat) FakeLeave() bool {
return s.fakeLeave
}
func (s *BaseSeat) SetFakeLeave(fakeLeave bool) {
s.fakeLeave = fakeLeave
}
func (s *BaseSeat) SetCurrentRoom(flag bool) {
s.isCurrent = flag
}
func (s *BaseSeat) IsPlayerCurrentRoom() bool {
return s.isCurrent
}
func (s *BaseSeat) CanAct() bool {
return s.canAct
}
func (s *BaseSeat) SetCanAct(can bool) {
s.canAct = can
}
func (s *BaseSeat) Ready() bool {
return s.ready
}
func (s *BaseSeat) SetReady(ready bool) {
s.ready = ready
}