Beispiel #1
0
 public void Double(int playerId, int handId)
 {
     DoubleMessageToServer msg = new DoubleMessageToServer();
     msg.nickname = ServiceLocator.Get<LoginViewModel>().Nickname;
     msg.playerId = playerId;
     msg.handId = handId;
     gameReceiver.SendToServiceAsync(msg);
 }
Beispiel #2
0
 public void PlayerDouble(DoubleMessageToServer msg, Deck deck)
 {
     rwl.AcquireWriterLock(10000);
     string filename = AppDomain.CurrentDomain.BaseDirectory.ToString() + @"/Table1.xml";
     XmlDocument xmlDoc = new XmlDocument();
     xmlDoc.Load(filename);
     XmlNode hand = xmlDoc.SelectSingleNode("/Table/Players/Player[@PlayerId='" + msg.playerId + "']/Hands/Hand[@HandId='" + msg.handId + "']");
     XmlElement card = xmlDoc.CreateElement("Card");
     card.SetAttribute("CardRank", deck[0].Rank);
     card.SetAttribute("CardSuit", deck[0].Suit);
     card.SetAttribute("CardValue", deck[0].CardValue.ToString());
     hand.FirstChild.AppendChild(card);
     deck.RemoveAt(0);
     XmlNode chips = xmlDoc.SelectSingleNode("/Table/Players/Player[@PlayerId='" + msg.playerId + "']/Hands/Hand[@HandId='" + msg.handId + "']/Chips");
     XmlNodeList currentChips = xmlDoc.SelectNodes("/Table/Players/Player[@PlayerId='" + msg.playerId + "']/Hands/Hand[@HandId='" + msg.handId + "']/Chips/Chip");
     for (int i = 0; i < currentChips.Count; i++)
     {
         XmlElement newChip = xmlDoc.CreateElement("Chip");
         newChip.SetAttribute("ChipAmount", currentChips[i].Attributes["ChipAmount"].Value);
         chips.AppendChild(newChip);
     }
     xmlDoc.Save(filename);
     rwl.ReleaseWriterLock();
 }