diff --git a/AxibugEmuOnline.Client/Assets/Script/Event/EEvent.cs b/AxibugEmuOnline.Client/Assets/Script/Event/EEvent.cs index 666423b..d409649 100644 --- a/AxibugEmuOnline.Client/Assets/Script/Event/EEvent.cs +++ b/AxibugEmuOnline.Client/Assets/Script/Event/EEvent.cs @@ -8,6 +8,7 @@ OnRoomListAllUpdate,//房间列表全量刷新 OnRoomListSingleUpdate,//房间列表中单个更新 + OnRoomListSingleClose,//房间关闭 OnRoomGetRoomScreen,//获取到房间数据 /// diff --git a/AxibugEmuOnline.Client/Assets/Script/Manager/AppRoom.cs b/AxibugEmuOnline.Client/Assets/Script/Manager/AppRoom.cs index 515db04..86185a8 100644 --- a/AxibugEmuOnline.Client/Assets/Script/Manager/AppRoom.cs +++ b/AxibugEmuOnline.Client/Assets/Script/Manager/AppRoom.cs @@ -200,8 +200,16 @@ namespace AxibugEmuOnline.Client.Manager { App.log.Debug("单个房间状态更新"); Protobuf_Room_Update_RESP msg = ProtoBufHelper.DeSerizlize(reqData); - AddOrUpdateRoomList(msg.RoomMiniInfo); - Eventer.Instance.PostEvent(EEvent.OnRoomListSingleUpdate, msg.RoomMiniInfo.GameRomID); + if (msg.UpdateType == 0) + { + AddOrUpdateRoomList(msg.RoomMiniInfo); + Eventer.Instance.PostEvent(EEvent.OnRoomListSingleUpdate, msg.RoomMiniInfo.GameRomID); + } + else + { + RemoveRoomList(msg.RoomMiniInfo.GameRomID); + Eventer.Instance.PostEvent(EEvent.OnRoomListSingleClose, msg.RoomMiniInfo.GameRomID); + } } ///