package baseroom import "game/common/proto/pb" type IRoom interface { Id() int RoomType() int // 房间配置id PlayType() int // SeatPlayerNum() int // HasEmptySeat() bool // HasPlayer(uid int64) bool OnMessage(cmd int32, params ...any) // ReleaseRoom() } type ISeat interface { No() int Empty() bool Player() IPlayer SetPlayer(player IPlayer) FakeLeave() bool SetFakeLeave(leave bool) // SeatedTime() time.Time } type IPlayer interface { Id() int64 Robot() IRobot } type IRobot interface { OnMessage(cmd pb.MsgId, params ...any) } type ITimerHandler interface { OnTimer(timerType TimerType, args ...interface{}) } type ISender interface { SendMsg(user IPlayer, msgId pb.MsgId, msg interface{}) } type ICreateRoom interface { CreateRoom(id, roomType int) (IRoom, pb.ErrCode) }