void SendResult(Player winner) { CBBattleResultSync msg = new CBBattleResultSync(); foreach (var p in m_players) { BattleResultPlayerInfo info = new BattleResultPlayerInfo(); info.IsWin = winner == p; info.PlayrID = p.id; info.RewardAmount = info.IsWin ? 1 : 0; info.State = (int)p.state; foreach (var card in p.handCards) { info.Cards.Add(card.id); } msg.ResultInfos.Add(info); } SendToAll(msg); }
public void Show(CBBattleResultSync data) { gameObject.SetActive(true); uTools.uTweenScale.Begin(gameObject, Vector3.zero, Vector3.one, 0.2f, 0); var winner = data.ResultInfos.First(a => a.IsWin); if (winner != null) { title.text = "恭喜 {0} 获得最终胜利!".FormatStr(room.GetPlayer(winner.PlayrID).numTag); } else { title.text = "没有获胜玩家"; } GameObjectHelper.SetListContent(template, itemRoot, items, data.ResultInfos , (index, item, info) => { item.SetData(info); }); }
void OnBattleResultSync(CBBattleResultSync msg) { SendEvent(EventDef.SOS.BattleResult, msg); }