Example #1
0
        // Добавляем
        private void addEnemy(int col, Random rand)
        {
            while (colichVragov > 0)
            {
                Point point = new Point(rand.Next(tableLayoutPanel1.ColumnCount), rand.Next(tableLayoutPanel1.RowCount)); // берём рандомную точку на панели
                do
                {
                    if (pointIsEmpty(point))
                    {
                        positionMan position = manIsClose(point);
                        if (position == positionMan.OfFar)
                        {
                            PictureBox saw = new PictureBox();
                            saw.Click += tableLayoutPanel1_Click;

                            LoadPicture(saw, "Медведь.jpg");
                            tableLayoutPanel1.Controls.Add(saw, point.X, point.Y);
                            colichVragov--;
                            break;
                        }
                        else
                        {
                            if (position == positionMan.OfLeft)
                            {
                                point.X += 1;
                            }
                            else if (position == positionMan.OfRight)
                            {
                                point.X -= 1;
                            }
                            else if (position == positionMan.manOfUp)
                            {
                                point.Y += 1;
                            }
                            else if (position == positionMan.OfDown)
                            {
                                point.Y -= 1;
                            }
                            point = normalization(point, true);
                        }
                    }

                    else
                    {
                        break;
                    }
                }while(true);
            }
        }
Example #2
0
        // Шаг противника
        private void EnemyTurn()
        {
            Point newpoint = new Point();

            int poz = tableLayoutPanel1.Controls.Count;

            for (int i = 0; i < poz; i++)
            {
                Control enemy = tableLayoutPanel1.Controls[i];
                if (enemy as PictureBox == man)
                {
                    continue;
                }
                TableLayoutPanelCellPosition enemyPos = tableLayoutPanel1.GetPositionFromControl(enemy);
                positionMan positions = manIsClose(new Point(enemyPos.Column, enemyPos.Row));

                if (positions != positionMan.OfFar)
                {
                    man = null;
                    break;
                }

                int colPr = 50;

                do
                {
                    newpoint.X = enemyPos.Column + rand.Next(2000) / 750 - 1;
                    newpoint.Y = enemyPos.Row + rand.Next(2000) / 750 - 1;
                    newpoint   = normalization(newpoint);

                    if (pointIsEmpty(newpoint))
                    {
                        tableLayoutPanel1.Controls.Add(enemy, newpoint.X, newpoint.Y);
                        break;
                    }
                    colPr--;
                }while (colPr != 0);
            }
        }