public card_info CreateCard(card_info card_Info) { var res = ICardinfo.Add(card_Info); if (res) { return(card_Info); } else { return(null); } }
public void CheckCardsValue(List <GameObject> hand) { int tempScore = 0; for (int i = 0; i < hand.Count; i++) { cardInfo = hand[i].GetComponent <card_info>(); tempScore += cardInfo.cardValue; } playerScore = tempScore; if (playerScore > 21 && playerAceCount == 0) { canHit = false; canStay = false; PlayerBust(); } else if (playerScore > 21) { while (playerScore > 21 && playerAceCount > 0) { playerScore -= 10; playerAceCount--; } if (playerScore == 21) { canHit = false; canStay = false; PlayerBlackjack(); } else if (playerScore > 21) { canHit = false; canStay = false; PlayerBust(); } } else if (playerScore == 21) { canHit = false; canStay = false; PlayerBlackjack(); } else { canHit = true; canStay = true; } }
public void DealCards() { if (canDeal == true) { if (cardsInPlay.Count < 4) { Reshuffle(); } for (var i = 0; i < 2; i++) { int temp = Random.Range(0, cardsInPlay.Count); GameObject playerCard = Instantiate(cardsInPlay[temp], new Vector3(0, 0, 0), Quaternion.identity) as GameObject; playerCard.transform.SetParent(PlayerArea.transform, false); playerCards.Add(cardsInPlay[temp]); cardInfo = cardsInPlay[temp].GetComponent <card_info>(); if (cardInfo.isAce) { playerAceCount++; } cardsInPlay.RemoveAt(temp); temp = Random.Range(0, cardsInPlay.Count); GameObject opponentCard = Instantiate(cardsInPlay[temp], new Vector3(0, 0, 0), Quaternion.identity) as GameObject; opponentCard.transform.SetParent(OpponentArea.transform, false); dealerCards.Add(cardsInPlay[temp]); cardInfo = cardsInPlay[temp].GetComponent <card_info>(); if (cardInfo.isAce) { dealerAceCount++; } cardsInPlay.RemoveAt(temp); } cardBack.enabled = true; canDeal = false; canHit = true; canStay = true; CheckCardsValue(playerCards); } }
void DealerHit() { if (cardsInPlay.Count < 1) { Reshuffle(); } int temp = 0; temp = Random.Range(0, cardsInPlay.Count); GameObject opponentCard = Instantiate(cardsInPlay[temp], new Vector3(0, 0, 0), Quaternion.identity) as GameObject; opponentCard.transform.SetParent(OpponentArea.transform, false); dealerCards.Add(cardsInPlay[temp]); cardInfo = cardsInPlay[temp].GetComponent <card_info>(); if (cardInfo.isAce) { dealerAceCount++; } dealerScore += cardInfo.cardValue; cardsInPlay.RemoveAt(temp); }
public void HitPlayer() { if (cardsInPlay.Count < 1) { Reshuffle(); } if (canHit == true && canDeal == false) { int temp = Random.Range(0, cardsInPlay.Count); GameObject playerCard = Instantiate(cardsInPlay[temp], new Vector3(0, 0, 0), Quaternion.identity) as GameObject; playerCard.transform.SetParent(PlayerArea.transform, false); playerCards.Add(cardsInPlay[temp]); cardInfo = cardsInPlay[temp].GetComponent <card_info>(); if (cardInfo.isAce) { playerAceCount++; } cardsInPlay.RemoveAt(temp); } CheckCardsValue(playerCards); }
void DealerTurn() { cardBack.enabled = false; bustText.text = ""; blackJackText.text = ""; int tempScore = 0; for (int i = 0; i < dealerCards.Count; i++) { cardInfo = dealerCards[i].GetComponent <card_info>(); tempScore += cardInfo.cardValue; } dealerScore = tempScore; if (dealerScore < 17) { while (dealerScore < 17) { DealerHit(); } } if (dealerScore > 21) { if (dealerAceCount > 0) { while (dealerScore > 21 && dealerAceCount > 0) { dealerScore -= 10; dealerAceCount--; } } } if (dealerScore > 21) { dealerBust = true; } ResolveTurn(); }
public bool UpdateCard(card_info card_Info) { return(ICardinfo.Update(card_Info)); }
public string BindCard([FromBody] request <BindCard> bindCard) { if (bindCard == null) { return(RsXmlHelper.ResXml(-1, "XML格式错误")); } if (bindCard.model.bindType == "Y") //绑卡 { var ptInfo = ptInfoBLL.GetInfoByCard(bindCard.model.PatId, bindCard.model.PatName); var card = cardInfoBLL.GetCardByCno(bindCard.model.patCardNo); card_info existCard = null; if (card != null && card.pid != null) { if (card.pid == ptInfo.pid) { return(RsXmlHelper.ResXml(0, JsonOperator.JsonSerialize(card))); } else { return(RsXmlHelper.ResXml(99, "卡号已绑定患者")); } } else if (card != null && card.pid == null) { card.pid = ptInfo.pid; cardInfoBLL.UpdateCard(card); ptInfo.cno = card.cno.Trim(); ptInfoBLL.Update(ptInfo); return(RsXmlHelper.ResXml(0, "")); } else { if (ptInfo == null) { return(RsXmlHelper.ResXml(99, "患者信息为空")); } if (!string.IsNullOrWhiteSpace(ptInfo.cno)) { existCard = cardInfoBLL.GetCardByCno(ptInfo.cno); } if (existCard == null) { cardInfoBLL.CreateCard(new card_info() { cno = bindCard.model.patCardNo.Trim(), pid = ptInfo.pid, cmoney = 0, clevel = "银卡", status = 0, addperson = "自助机", addtime = DateTime.Now, del = false }); ptInfo.cno = bindCard.model.patCardNo.Trim(); ptInfoBLL.Update(ptInfo); return(RsXmlHelper.ResXml(0, "")); } else { return(RsXmlHelper.ResXml(0, JsonOperator.JsonSerialize(existCard))); } } } else if (bindCard.model.bindType == "S") { var ptInfo = ptInfoBLL.GetInfoByCard(bindCard.model.PatId, bindCard.model.PatName); if (ptInfo == null) { return(RsXmlHelper.ResXml(99, "患者信息为空")); } if (!string.IsNullOrWhiteSpace(ptInfo.cno)) { return(RsXmlHelper.ResXml(0, "患者已绑定就诊卡")); } else { return(RsXmlHelper.ResXml(1, "患者未绑定就诊卡")); } } else //解绑 { var ptInfo = ptInfoBLL.GetInfoByCard(bindCard.model.PatId, bindCard.model.PatName); card_info card = null; if (!string.IsNullOrWhiteSpace(bindCard.model.patCardNo)) { card = cardInfoBLL.GetCardByCno(bindCard.model.patCardNo); } else { var cardList = cardInfoBLL.GetByPid(ptInfo.pid); if (cardList != null && cardList.Count > 1) { return(RsXmlHelper.ResXml(99, "患者绑定多张卡")); } card = cardList.FirstOrDefault(); } if (ptInfo == null) { return(RsXmlHelper.ResXml(99, "患者信息为空")); } if (card == null || card.pid != ptInfo.pid) { return(RsXmlHelper.ResXml(99, "卡号为空或卡号绑定其他患者")); } ptInfo.cno = null; ptInfoBLL.Update(ptInfo); card.pid = null; cardInfoBLL.UpdateCard(card); return(RsXmlHelper.ResXml(0, "")); } }