Beispiel #1
0
        public CardBrowsingForm(BingoGameState s)
        {
            if (s == null)
            {
                throw new Exception("Bad state passed.");
            }
            state         = s;
            session_event = s.session_event;
            InitializeComponent();

            pack_browser_enabled = false;
            foreach (Pattern p in s.game.patterns)
            {
                if (p.sub_patterns.Count > 1)
                {
                    pack_browser_enabled = true;
                }
            }

            if (false)
            {
                if (pack_browser_enabled)
                {
                    bingoCardGroup1.Hide();
                    //bingoPackGroup1.Show();
                }
                else
                {
                    bingoCardGroup1.Show();
                    //bingoPackGroup1.Hide();
                }
            }
        }
Beispiel #2
0
 private void button1_Click(object sender, EventArgs e)
 {
     PurchasePacks();
     foreach (BingoGame game in session.GameList)
     {
         BingoGameState state = session_event.StepTo(session.GameList.IndexOf(game));
         session_event.PlayGame(state);
     }
 }
Beispiel #3
0
 void InitPlayer()
 {
     if (session_event._PlayerList.Count > 0)
     {
         player       = session_event._PlayerList[0];
         current_game = 0;
         current_card = 0;
         state        = session_event.BingoGameEvents[current_game];
     }
 }
Beispiel #4
0
        private void button3_Click(object sender, EventArgs e)
        {
            // play cards vs db...

            BingoSession session = new BingoSession();
            Pattern      p       = new Pattern();

            p.algorithm     = OpenSkieScheduler3.PatternDescriptionTable.match_types.CrazyMark;
            p.repeat_count  = 24;
            p.crazy_hardway = true;

            BingoGame game;

            session.GameList.Add(game = new BingoGame(new BingoGameCore4.Pattern[] { p }));

            BingoGameGroup game_group = new BingoGameGroup(Guid.Empty);

            game_group.Add(game);

            BingoPacks packs = new BingoPacks(session.GameList, schedule, null);


            BingoGameCore4.CardMaster.CardReader card_file
                = new BingoGameCore4.CardMaster.CardReader("c:\\ftn3000\\data\\cards\\Random 360k (50s300w)(81_Full).20110225.dat");

            BingoDealer dealer = BingoDealers.GetDealer(card_file, 1, 1);

            packs.CreatePack(dealer, "Test Pack");
            BingoPack pack = packs.MakePack("Test Pack", card_file.Length);

            BingoSessionEvent session_evnet = new BingoSessionEvent(session, true);
            BingoPlayer       player;

            player = new BingoPlayer();

            PlayerTransaction transaction;

            player.transactions.Add(transaction = new PlayerTransaction(player, 12345689));
            player.PlayPack(transaction, pack);

            session_evnet.PlayerList.Add(player);
            BallDataExternal bde = new BallDataExternal();

            session_evnet.ball_data = bde;

            BingoGameState game_state = session_evnet.StepTo(0);

            bde.Balls = calls[0];
            session_evnet.Play(game_state);
        }
Beispiel #5
0
 private void buttonNextPack_Click(object sender, EventArgs e)
 {
     if (player != null)
     {
         if (current_game < (session_event.BingoGameEvents.Count - 1))
         {
             current_game++;
             current_card = 0;
             state        = session_event.BingoGameEvents[current_game];
         }
         UpdateCard();
     }
     else
     {
         InitPlayer();
     }
 }
Beispiel #6
0
 private void buttonPriorPack_Click(object sender, EventArgs e)
 {
     if (player != null)
     {
         if (current_game > 0)
         {
             current_game--;
             current_card = 0;
             state        = session_event.BingoGameEvents[current_game];
         }
     }
     else
     {
         InitPlayer();
     }
     UpdateCard();
 }
Beispiel #7
0
        private void button1_Click(object sender, EventArgs e)
        {
            //session_event
            dataGridViewGames.SelectionMode = DataGridViewSelectionMode.FullRowSelect;
            DataGridViewSelectedRowCollection rows = dataGridViewGames.SelectedRows;

            foreach (DataGridViewRow row in rows)
            {
                //BingoGame game = row.             [ 0 , 1 ] as BingoGame;

                BingoGameState s = session_event.BingoGameEvents[Convert.ToInt32(row.Cells["GameID"].Value)];
                //game.game_ID );
                //BingoSession.BingoSessionEvent game_event = s as BingoSession.BingoSessionEvent;
                session_event.Play(s);
                CardBrowsingForm info = new CardBrowsingForm(s);
                info.ShowDialog();
            }
        }
Beispiel #8
0
 public CardBrowsingForm(BingoSessionEvent s)
 {
     if (s == null)
     {
         throw new Exception("Bad state passed.");
     }
     session_event = s;
     if (s.BingoGameEvents.Count > 0)
     {
         state = s.BingoGameEvents[0];
     }
     else
     {
         state = null;
     }
     // state = s;
     InitializeComponent();
 }
Beispiel #9
0
        private void button2_Click(object sender, EventArgs e)
        {
            do
            {
                game_state = session_event.Step();
                if (game_state.valid)
                {
                    session_event.PlayGame(game_state);

                    foreach (wininfo win in game_state.winning_cards)
                    {
                        listBox1.Items.Add(win.playing_card.ToString());
                        listBox1.Refresh();
                    }
                }
            }while(game_state.valid);
            session_event.Close();
        }
Beispiel #10
0
 void bingo_game_core_data_GameChanged(int game)
 {
     if (session != null)
     {
         if (game == _game)
         {
             return;
         }
         _game = game;
         if (game > 0)
         {
             BingoGameState game_state = session_event.StepTo(game - 1);
             //This begins a thread to do the playing and returns.
             session_event.BeginGame(game_state);
         }
         else
         {
         }
     }
 }
Beispiel #11
0
        void SetupNewSession(DateTime the_day, int session)
        {
            //if( playing_session == null || playing_session.session_number != session )
            {
                Log.log("Starting new session " + session);
                // load in the correct session....
                this_session    = new BingoSession(schedule, the_day, session);
                playing_session = new BingoSessionEvent(this_session, true);
                BingoGameCore4.Forms.RatedGameConfigurator.GameConfiguration game_config = new RatedGameConfigurator.GameConfiguration(schedule);
                DsnSQLUtil.MatchCreate(schedule.schedule_dsn, game_config);
                game_config.Fill();

                foreach (BingoGame game in this_session.GameList)
                {
                    BingoGameState s = playing_session.Step();

                    DataRow[] rows = game_config.Select("session_game_id="
                                                        + DsnSQLUtil.GetSQLValue(null
                                                                                 , schedule.session_games.Columns[SessionGame.PrimaryKey].DataType
                                                                                 , game.session_game_id));

                    if (rows.Length > 0)
                    {
                        game.rate = Convert.ToBoolean(rows[0]["rate"]);
                    }
                }


                pack_sequence = RatedPackConfigurator.GetPackDNA(this_session);
                //playing_session.ReloadPlayers(/* pack_sequence */);
#if static_dna
                {
                    pack_sequence = new PackDNA();
                    pack_sequence.pack_sequence.Add(this_session.GameList.pack_list.GetPack("RB Blue"));        //1
                    pack_sequence.pack_sequence.Add(this_session.GameList.pack_list.GetPack("RB Blue"));        //2
                    pack_sequence.pack_sequence.Add(this_session.GameList.pack_list.GetPack("RB Blue"));        //3
                    pack_sequence.pack_sequence.Add(this_session.GameList.pack_list.GetPack("RB Blue"));        //4
                    pack_sequence.pack_sequence.Add(this_session.GameList.pack_list.GetPack("RB Red"));
                    pack_sequence.pack_sequence.Add(this_session.GameList.pack_list.GetPack("RB Red"));         //5
                    pack_sequence.pack_sequence.Add(this_session.GameList.pack_list.GetPack("RB Red"));
                    pack_sequence.pack_sequence.Add(this_session.GameList.pack_list.GetPack("RB Red"));         //6
                    pack_sequence.pack_sequence.Add(this_session.GameList.pack_list.GetPack("RB Green"));
                    pack_sequence.pack_sequence.Add(this_session.GameList.pack_list.GetPack("RB Green"));       //7
                    pack_sequence.pack_sequence.Add(this_session.GameList.pack_list.GetPack("RB Green"));
                    pack_sequence.pack_sequence.Add(this_session.GameList.pack_list.GetPack("RB Green"));       //8
                    pack_sequence.pack_sequence.Add(this_session.GameList.pack_list.GetPack("Free Blue"));      //9
                    pack_sequence.pack_sequence.Add(this_session.GameList.pack_list.GetPack("Free Blue"));      //10
                    pack_sequence.pack_sequence.Add(this_session.GameList.pack_list.GetPack("Free Blue"));      //11
                    pack_sequence.pack_sequence.Add(this_session.GameList.pack_list.GetPack("Free Red"));       //12
                    pack_sequence.pack_sequence.Add(this_session.GameList.pack_list.GetPack("Free Red"));       //13
                    pack_sequence.pack_sequence.Add(this_session.GameList.pack_list.GetPack("Free Red"));       //14
                    pack_sequence.pack_sequence.Add(this_session.GameList.pack_list.GetPack("RB Blue"));        //15
                    pack_sequence.pack_sequence.Add(this_session.GameList.pack_list.GetPack("RB Red"));
                    pack_sequence.pack_sequence.Add(this_session.GameList.pack_list.GetPack("RB Green"));       //16


                    playing_session.ReloadPlayers(pack_sequence);
                }
#endif
            }
        }
Beispiel #12
0
        void EltaninReceiver_GameChanged(int new_Game)
        {
            //this needs to have an option.
            if (true)
            {
                return;
            }

            //----------------------------------------------
            // FIX
            //----------------------------------------------
            if (playing_session == null)
            {
                return;
            }
            Log.log("New game " + new_Game);
            if (new_Game != old_game)
            {
                if (old_game > 0)
                {
                    UpdateStatus("Reloading players in session "
                                 + playing_session.session_number
                                 + " and game "
                                 + old_game);

                    try
                    {
                        //playing_session.PlayerList
                        //playing_session.ReloadPlayers(/* pack_sequence */); // make sure the players are up to date...

                        /*
                         * for( int p = 0; p < 60; p++ )
                         *  playing_session.PlayerList.Add( new BingoPlayer() );
                         */
                        BingoGameState s = playing_session.StepToReplay(old_game);
                        if (s.valid)
                        {
                            UpdateStatus("Playing session "
                                         + playing_session.session_number
                                         + " and game "
                                         + old_game);
                            playing_session.Play(s);
                            while (playing_session.Active)
                            {
                                Thread.SpinWait(1);
                            }
                            UpdateStatus("Calculating session "
                                         + playing_session.session_number
                                         + " and game "
                                         + old_game);
                            if (BingoGameCore4.RateRank.Calculate(s))
                            {
                                UpdateStatus("Writing session "
                                             + playing_session.session_number
                                             + " and game "
                                             + old_game);
                                StateWriter.DumpState(s, false, false);
                            }
                            else
                            {
                                UpdateStatus("Game did not get ranked, not writing.");
                            }
                        }
                        else
                        {
                            UpdateStatus("Skiping game... not playing it.");
                        }
                    }
                    catch (Exception e)
                    {
                        Log.log("Outermost catcher caught exception - " + e.StackTrace);
                        Log.log("Timer will resume at least...");
                        Log.log(e.Message);
                    }
                }
                old_game = new_Game;
            }
            // Scan prior game...

            //throw new Exception( "The method or operation is not implemented." );
        }