This commit is contained in:
aozhiwei 2023-09-09 19:52:55 +08:00
parent b8ecab883e
commit f1906b4c0d
5 changed files with 24 additions and 14 deletions

View File

@ -21,6 +21,7 @@ type RoomMgr interface {
type Player interface {
GetAccountId() string
GetRoom() Room
SetRoom(Room)
SendMsg(rspMsg proto.Message)
}

View File

@ -19,9 +19,9 @@ func (this *HandlerMgr) Init() {
cs.RegHandlerId(int(cs.CMMessageIdE__CMReconnect), constant.PLAYER_MGR_HANDLER_ID)
cs.RegHandlerId(int(cs.CMMessageIdE__CMCreateRoom), constant.ROOM_MGR_HANDLER_ID)
cs.RegHandlerId(int(cs.CMMessageIdE__CMJoinRoom), constant.ROOM_MGR_HANDLER_ID)
cs.RegHandlerId(int(cs.CMMessageIdE__CMRoomList), constant.ROOM_MGR_HANDLER_ID)
cs.RegHandlerId(int(cs.CMMessageIdE__CMRoomList), constant.ROOM_HANDLER_ID)
cs.RegHandlerId(int(cs.CMMessageIdE__CMJoinRoom), constant.ROOM_HANDLER_ID)
cs.RegHandlerId(int(cs.CMMessageIdE__CMDisbandRoom), constant.ROOM_HANDLER_ID)
cs.RegHandlerId(int(cs.CMMessageIdE__CMLeaveRoom), constant.ROOM_HANDLER_ID)
cs.RegHandlerId(int(cs.CMMessageIdE__CMModifyRoom), constant.ROOM_HANDLER_ID)

View File

@ -28,6 +28,10 @@ func (this *player) GetRoom() common.Room {
return this.room
}
func (this *player) SetRoom(room common.Room) {
this.room = room
}
func (this *player) init(req *pendingLoginRequest){
this.socket = req.hdr.GetSocket()
this.accountId = req.msg.GetAccountId()

View File

@ -24,23 +24,12 @@ func (this *room) init(roomId int32, owner common.Player) {
this.members = map[string]*member{
owner.GetAccountId(): this.owner,
}
this.owner.hum.SetRoom(this)
}
func (this *room) OnPlayerOffline(hum common.Player) {
}
func (this *room) CMRoomList(hdr *f5.MsgHdr, msg *cs.CMRoomList) {
hum := hdr.Context.(common.Player)
rspMsg := cs.SMRoomList{}
hum.SendMsg(&rspMsg)
}
func (this *room) CMJoinRoom(hdr *f5.MsgHdr, msg *cs.CMJoinRoom) {
hum := hdr.Context.(common.Player)
rspMsg := cs.SMJoinRoom{}
hum.SendMsg(&rspMsg)
}
func (this *room) CMDisbandRoom(hdr *f5.MsgHdr, msg *cs.CMDisbandRoom) {
hum := hdr.Context.(common.Player)
rspMsg := cs.SMDisbandRoom{}

View File

@ -51,6 +51,22 @@ func (this *roomMgr) CMCreateRoom(hdr *f5.MsgHdr, msg *cs.CMCreateRoom) {
hum.SendMsg(rspMsg)
}
func (this *roomMgr) CMJoinRoom(hdr *f5.MsgHdr, msg *cs.CMJoinRoom) {
hum := hdr.Context.(common.Player)
rspMsg := cs.SMJoinRoom{}
if hum.GetRoom() != nil {
hum.SendMsg(&rspMsg)
return
}
hum.SendMsg(&rspMsg)
}
func (this *roomMgr) CMRoomList(hdr *f5.MsgHdr, msg *cs.CMRoomList) {
hum := hdr.Context.(common.Player)
rspMsg := cs.SMRoomList{}
hum.SendMsg(&rspMsg)
}
func (this *roomMgr) genRoomIdx() int32 {
this.currRoomId++
return this.currRoomId