public void PlayerDesireLandlordsHandler(object sender, GameViewEventArgs e)
        {
            e.View.Player.GainBonus(_cards[51], _cards[52], _cards[53]);

            _views.Each(v => v.Value.ArrangeActLandlordsActionPostlude(e.View.Player, _cards[51], _cards[52], _cards[53]));
            _views.Each(v => v.Value.ArrangleBringFormationPrelude(e.View.Player));
        }
        public void PlayerActLandlordsTimeoutHandler(object sender, GameViewEventArgs e)
        {
            e.View.DiscardLandlordsAction();
            var nextView = _views[e.View].Next.Value;

            _views.Each(v => v.Value.ArrangeActLandlordsActionPrelude(_views.Current.Next.Value.Player));
        }
 public void PlayerPreparedHandler(object sender, GameViewEventArgs e)
 {
     e.View.Player.IsPrepared = true;
     if (_views[e.View].Previous.Value.Player.IsPrepared && _views[e.View].Next.Value.Player.IsPrepared)
     {
         DistributeCards();
     }
 }
 public void PlayerDiscardLandlordsHandler(object sender, GameViewEventArgs e)
 {
     if (e.View == _bankerView)
     {
         DistributeCards();
     }
     else
     {
         _views.Each(v => v.Value.ArrangeActLandlordsActionPrelude(_views.Current.Value.Player));
     }
 }
        public void PlayerPassbyHandler(object sender, GameViewEventArgs e)
        {
            var nextView = _views[e.View].Next.Value;

            _views.Each(v => v.Value.PlayerPassbyAction(e.View.Player));

            if (nextView.Player == RoundRecorder.ImmediateRound.Player)
            {
                _views.Each(v => v.Value.ArrangleBringFormationPrelude(nextView.Player));
            }
            else
            {
                _views.Each(v => v.Value.ArrangeFollowFormationPrelude(nextView.Player, RoundRecorder.ImmediateRound));
            }
        }
 public void PlayerFollowFormationTimeoutHandler(object sender, GameViewEventArgs e)
 {
     _views.Each(v => v.Value.PlayerPassbyAction(e.View.Player));
 }
 public void PlayerBringFormationTimeoutHandler(object sender, GameViewEventArgs e)
 {
     _views.Each(v => v.Value.ThrowFormationAction(e.View.Player, RobotJunior.BringFormation(e.View.Player.Cards)));
 }