79 lines
1.3 KiB
Go
79 lines
1.3 KiB
Go
![]() |
package baseroom
|
|||
|
|
|||
|
import (
|
|||
|
. "samba/server/game/player"
|
|||
|
"time"
|
|||
|
)
|
|||
|
|
|||
|
type BaseSeat struct {
|
|||
|
no int
|
|||
|
player *Player
|
|||
|
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() *Player {
|
|||
|
return s.player
|
|||
|
}
|
|||
|
|
|||
|
func (s *BaseSeat) SetPlayer(player *Player) {
|
|||
|
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
|
|||
|
}
|