public IEnumerator ApplyPlayerExdata(Coroutine coroutine, ObjPlayer player) { Int32Array array = new Int32Array(); array.Items.Add((int)eExdataDefine.e770); var result = SceneServer.Instance.LogicAgent.SSFetchExdata(player.ObjId, array); yield return(result.SendAndWaitUntilDone(coroutine)); if (result.State != MessageState.Reply || result.ErrorCode != (int)ErrorCodes.OK) { Logger.Warn("ApplyPlayerExdata"); yield break; } var nCount = result.Response.Items[0]; KillRecord record; if (false == DictKillRecord.TryGetValue(player.ObjId, out record)) { record = new KillRecord(); record.KillNum = player.GetExdata((int)eExdataDefine.e770); DictKillRecord.Add(player.ObjId, record); } record.KillNum = nCount; AssignMsg(); PushActionToAllPlayer(proxyPlayer => { if (!proxyPlayer.Active) { return; } AssignSelfMsg(proxyPlayer.ObjId); // 向客户端刷新副本信息 Msg.Int32OneList.Clear(); Msg.FloatList.Clear(); Msg.Int32OneList.Add(GetAlivePlayerNum()); Msg.Int32OneList.Add(PlayerCount); Msg.FloatList.Add(TimeExpRatio); proxyPlayer.Proxy.NotifyRefreshDungeonInfo(Msg); }); yield break; }