private void DispatchCardsData() { UpdatePlayerCards(network.numPlayers); Dictionary <string, List <string> > cardsData = new Dictionary <string, List <string> >(); foreach (var playerId in network.PlayersIds) { Player player = GetPlayerById(playerId); cardsData[playerId] = player.GetCardsValueType; } InitCardsDataVO vo = new InitCardsDataVO(); vo.api = (int)NetworkConstants.API.CARDS_DATA; vo.api_id = ++APIHandler.GetInstance().runningId; vo.sender = Networking.localId; vo.cards_data = cardsData; string data = JsonConvert.SerializeObject(vo); API api = new API(); api.api = vo.api; api.id = vo.api_id; api.data = data; api.playerIds = Utility.DeepCloneList <string>(network.PlayersIdsExcludingThis); APIHandler.GetInstance().SendDataToAll(api); }
private void InitCardsData(GameEvent evt) { InitCardsDataVO vo = JsonConvert.DeserializeObject <InitCardsDataVO>(evt.response.data); Dictionary <string, List <string> > cardsData = vo.cards_data; foreach (KeyValuePair <string, List <string> > iter in cardsData) { string playerId = iter.Key; List <string> cardsValueType = iter.Value; Player player = GetPlayerById(playerId); foreach (var valueType in cardsValueType) { player.AddCard(dealer.RemoveCardByValueType(valueType)); } } }