Esempio n. 1
0
 /// <summary>
 /// Осуществление ставки на участника.
 /// </summary>
 /// <param name="player">Игрок, осуществляющйи ставку</param>
 /// <param name="bug">Участник забега, на победу которого осуществляется ставка</param>
 /// <param name="amount">Сумма ставки</param>
 private void addBet(Player player, Bug bug, int amount)
 {
     this.bets[new KeyValuePair<Player, Bug>(player, bug)] = amount;
     this.updateBetsInfoboard();
 }
Esempio n. 2
0
        /// <summary>
        /// Инициилизация жука: модели, для хранения его параметров, элементов управления и отображения в форме и т.п.
        /// </summary>
        /// <param name="name">Имя жука</param>
        /// <param name="bugRowN">Номер дорожки жука</param>
        private void initBug(string name, int bugRowN)
        {
            var bug = new Bug(name);
            this.bugs.Add(bug);

            var pictureBoxPanel = new Panel();  // Контейнер - обёртка, разрешающая управлять координатами PictureBox
            pictureBoxPanel.Dock = DockStyle.Fill;
            this.bugTracks.Controls.Add(pictureBoxPanel, 0, bugRowN);

            int rowHeightPx = pictureBoxPanel.Height;

            // Отобразим таракана на дорожке
            var bugPictureBox = new PictureBox();
            bugPictureBox.Image = Properties.Resources.bug;
            bugPictureBox.SizeMode = PictureBoxSizeMode.Zoom;
            bugPictureBox.Anchor = AnchorStyles.Left | AnchorStyles.Top;
            bugPictureBox.Height = rowHeightPx;
            pictureBoxPanel.Controls.Add(bugPictureBox);
            this.bugsAvatars.Add(bug, bugPictureBox);
            bugPictureBox.Top = 0;
            Binding bugPositionBinding = new Binding("Left", bug, "distance");
            bugPositionBinding.Format += new ConvertEventHandler(distanceToPx);
            bugPictureBox.DataBindings.Add(bugPositionBinding);

            // Селекторы тараканов в элементах управления
            var bugSelector = new RadioButton();
            Binding radioNameBinding = new Binding("Text", bug, "name", true, DataSourceUpdateMode.OnPropertyChanged);
            bugSelector.DataBindings.Add(radioNameBinding);
            this.panelRacerSelect.Controls.Add(bugSelector);
            this.bugsBySelectors.Add(bugSelector, bug);
        }