Example #1
0
        private void BuildRegex()
        {
            regexes = new List <Regex>();

            for (int i = 0; i < types.Count; i++)
            {
                BBAbstractPlay sample = (BBAbstractPlay)Activator.CreateInstance(types[i]);
                regexes.Add(sample.lastUpdateMatches);
            }
        }
    internal void ResetPlate(BBAbstractPlay play)
    {
        BBGameState state = play.gameState;

        majorItemsChiron.SetText(state.lastUpdate);
        majorItemsChiron.SetStrikes(state.atBatStrikes);
        majorItemsChiron.SetBalls(state.atBatBalls);
        majorItemsChiron.SetOuts(state.halfInningOuts);
        majorItemsChiron.ShowBase1(Array.IndexOf(state.basesOccupied, 0) > -1);
        majorItemsChiron.ShowBase2(Array.IndexOf(state.basesOccupied, 1) > -1);
        majorItemsChiron.ShowBase3(Array.IndexOf(state.basesOccupied, 2) > -1);
    }
Example #3
0
 private void HandleTechnicalDifficulties(BBAbstractPlay caseFail)
 {
     if (caseFail == null)
     {
         SetupAndPlay(GetRandomAnimation(technicalDifficulties, 0));
         cameraGraphicsMasterControl.ShowTechnicalDifficulties("Waiting for setup!");
     }
     else
     {
         SetupAndPlay(GetRandomAnimation(technicalDifficulties, caseFail.playIndex));
         cameraGraphicsMasterControl.ResetPlate(caseFail);
         cameraGraphicsMasterControl.ShowTechnicalDifficulties(caseFail.gameState.lastUpdate);
         cameraGraphicsMasterControl.UpdateScores(caseFail.gameState);
     }
 }
Example #4
0
    private void ProcessPlay(BBGameState gameState, int index = -1)
    {
        cameraGraphicsMasterControl.rewindPanel.SetLength(game.HistoryLength - 1, historicalPlaybackCurrentIndex);

        if (historicalPlaybackCurrentIndex == -1)
        {
            index = game.HistoryLength;
        }

        previousState = currentState;
        currentState  = gameState;
        currentPlay   = Playbook.GetPlayFromState(gameState, index);
        CleanScene();

        switch (currentPlay)
        {
        case BBBatterAtPlatePlay bBatterAtPlatePlay:
            BatterUp(bBatterAtPlatePlay);
            break;

        case BBStrikePlay bBStrikePlay:
            Strike(bBStrikePlay);
            break;

        case BBBallPlay bBallPlay:
            BallCount(bBallPlay);
            break;

        case BBStrikeOutPlay bBStrikeOutPlay:
            StrikeOut(bBStrikeOutPlay);
            break;


        default:
            HandleTechnicalDifficulties(currentPlay);
            break;
        }
    }
    internal void ShowBallCount(BBAbstractPlay bBBallPlay)
    {
        bool isChangeover = bBBallPlay is BBDrawsAWalkPlay;

        majorItemsChiron.Show();
        BBGameState state = bBBallPlay.gameState;

        majorItemsChiron.Show();
        majorItemsChiron.SetText(state.lastUpdate);
        majorItemsChiron.SetStrikes(state.atBatStrikes);
        if (isChangeover)
        {
            majorItemsChiron.SetBalls(4, true);
        }
        else
        {
            majorItemsChiron.SetBalls(state.atBatBalls, true);
        }
        majorItemsChiron.SetOuts(state.halfInningOuts, isChangeover);
        majorItemsChiron.ShowBase1(Array.IndexOf(state.basesOccupied, 0) > -1);
        majorItemsChiron.ShowBase2(Array.IndexOf(state.basesOccupied, 1) > -1);
        majorItemsChiron.ShowBase3(Array.IndexOf(state.basesOccupied, 2) > -1);
    }
    internal void ShowStrike(BBAbstractPlay bbStrike)
    {
        bool isChangeover = bbStrike is BBStrikeOutPlay;

        majorItemsChiron.Show();
        BBGameState state = bbStrike.gameState;

        majorItemsChiron.SetText(state.lastUpdate);

        if (isChangeover)
        {
            majorItemsChiron.SetStrikes(3, true);
        }
        else
        {
            majorItemsChiron.SetStrikes(state.atBatStrikes, true);
        }

        majorItemsChiron.SetBalls(state.atBatBalls);
        majorItemsChiron.SetOuts(state.halfInningOuts, isChangeover);
        majorItemsChiron.ShowBase1(Array.IndexOf(state.basesOccupied, 0) > -1);
        majorItemsChiron.ShowBase2(Array.IndexOf(state.basesOccupied, 1) > -1);
        majorItemsChiron.ShowBase3(Array.IndexOf(state.basesOccupied, 2) > -1);
    }