public DoubleDownHandler(IUnitOfWorkFactory unit_of_work_factory, IRepository <BlackJackTable> blackjack_table_repository, DoubleDown double_down) { _unit_of_work_factory = unit_of_work_factory; _blackjack_table_repository = blackjack_table_repository; _double_down = double_down; }
public override void Deserialize(GenericReader reader) { base.Deserialize(reader); int version = reader.ReadInt(); m_Active = reader.ReadBool(); m_Casino = (Casino)reader.ReadInt(); m_CasinoName = reader.ReadString(); m_TotalPlays = reader.ReadULong(); m_TotalCollected = reader.ReadULong(); m_TotalWon = reader.ReadULong(); m_ErrorCode = reader.ReadInt(); m_OrigHue = reader.ReadInt(); m_InUseBy = reader.ReadMobile(); m_OnCredit = reader.ReadInt(); m_Escrow = reader.ReadInt(); m_SecurityCamMobile = reader.ReadMobile(); m_SecurityChatter = (VerboseType)reader.ReadInt(); m_Bet = reader.ReadInt(); m_TestMode = reader.ReadBool(); m_DealerDelay = reader.ReadBool(); m_DoubleAfterSplit = reader.ReadBool(); m_DealerHitsSoft17 = reader.ReadBool(); m_DealerTakesPush = reader.ReadBool(); m_Resplits = reader.ReadBool(); m_SplitAces = (SplitAces)reader.ReadInt(); m_BJSplitAces21 = reader.ReadBool(); m_BJSplitAcesPaysEven = reader.ReadBool(); m_DoubleDown = (DoubleDown)reader.ReadInt(); m_PlayerCardsFaceUp = reader.ReadBool(); m_DealerCardsFaceUp = reader.ReadBool(); m_NumberOfDecks = reader.ReadShort(); m_ContinuousShuffle = reader.ReadBool(); m_MinBet = (BetValues)reader.ReadInt(); m_MaxBet = (BetValues)reader.ReadInt(); m_BlackJackPays = (BlackJackPays)reader.ReadInt(); m_CardSounds = reader.ReadBool(); carddeck = new CardDeck(m_NumberOfDecks,0); m_BJInfo.HandInfo = new HandStruct[5]; for (int h = 0; h < 5; h++) { m_BJInfo.HandInfo[h].bet = 0; m_BJInfo.HandInfo[h].totalcards = 0; m_BJInfo.HandInfo[h].card = new short[12]; for (int c = 0; c < 12; c++) m_BJInfo.HandInfo[h].card[c] = -1; m_BJInfo.HandInfo[h].bestscore = 0; m_BJInfo.HandInfo[h].altscore = 0; } }
private static bool OkToDouble(BJStruct bj, DoubleDown ddRule) { if (ddRule == DoubleDown.AnyPair) return true; else if (ddRule == DoubleDown.Nine211) { if (bj.HandInfo[bj.activehand].bestscore == 9 || bj.HandInfo[bj.activehand].bestscore == 10 || bj.HandInfo[bj.activehand].bestscore == 11 || bj.HandInfo[bj.activehand].altscore == 9 || bj.HandInfo[bj.activehand].altscore == 10 || bj.HandInfo[bj.activehand].altscore == 11) return true; else return false; } else if (ddRule == DoubleDown.Ten11Only) { if (bj.HandInfo[bj.activehand].bestscore == 10 || bj.HandInfo[bj.activehand].bestscore == 11 || bj.HandInfo[bj.activehand].altscore == 10 || bj.HandInfo[bj.activehand].altscore == 11) return true; else return false; } else if (ddRule == DoubleDown.ElevenOnly) { if (bj.HandInfo[bj.activehand].bestscore == 11 || bj.HandInfo[bj.activehand].altscore == 11) return true; else return false; } return false; }