Esempio n. 1
0
 public Figure(FiguresNames figureName, FigureColors figureColor, Coordinates[] coordinates)
 {
     FigureName     = figureName;
     FigureColor    = figureColor;
     Position       = FigurePositions.First;
     CoordinatesArr = coordinates;
 }
Esempio n. 2
0
        /// <summary>
        /// Создать фигуру
        /// </summary>
        /// <param name="name"></param>
        /// <param name="color"></param>
        /// <returns></returns>
        public static Figure CreateFigure(FiguresNames name)
        {
            Coordinates[] coordinatesArr = new Coordinates[COORD_COUNT];
            FigureColors  color          = FigureColors.Null;

            int coordX = rand.Next(2, 8); // (2 - 7) Диапазон генерации начальной основной координаты оси Х

            switch (name)
            {
            case FiguresNames.J:
                coordinatesArr = CreateJ(coordinatesArr, coordX, START_MAIN_COORD_Y);
                color          = FigureColors.Blue;
                break;

            case FiguresNames.I:
                coordinatesArr = CreateI(coordinatesArr, coordX, START_MAIN_COORD_Y);
                color          = FigureColors.Green;
                break;

            case FiguresNames.O:
                coordinatesArr = CreateO(coordinatesArr, coordX, START_MAIN_COORD_Y);
                color          = FigureColors.Indigo;
                break;

            case FiguresNames.L:
                coordinatesArr = CreateL(coordinatesArr, coordX, START_MAIN_COORD_Y);
                color          = FigureColors.Maroon;
                break;

            case FiguresNames.Z:
                coordinatesArr = CreateZ(coordinatesArr, coordX, START_MAIN_COORD_Y);
                color          = FigureColors.Red;
                break;

            case FiguresNames.T:
                coordinatesArr = CreateT(coordinatesArr, coordX, START_MAIN_COORD_Y);
                color          = FigureColors.Orange;
                break;

            case FiguresNames.S:
                coordinatesArr = CreateS(coordinatesArr, coordX, START_MAIN_COORD_Y);
                color          = FigureColors.Purple;
                break;
            }

            Figure figure = new Figure(name, color, coordinatesArr);

            return(figure);
        }
Esempio n. 3
0
        /// <summary>
        /// Создать координаты следующей фигуры
        /// </summary>
        /// <param name="name"></param>
        /// <returns></returns>
        public static Coordinates[] CreateCoordinatesForPlNextFigure(FiguresNames name, out FigureColors color)
        {
            Coordinates[] coordinatesArr = new Coordinates[COORD_COUNT];
            color = FigureColors.Null;

            const int START_COORD_X = 1;
            const int START_COORD_Y = 1;

            switch (name)
            {
            case FiguresNames.J:
                coordinatesArr = CreateJ(coordinatesArr, START_COORD_X, START_COORD_Y);
                color          = FigureColors.Blue;
                break;

            case FiguresNames.I:
                coordinatesArr = CreateI(coordinatesArr, START_COORD_X, START_COORD_Y);
                color          = FigureColors.Green;
                break;

            case FiguresNames.O:
                coordinatesArr = CreateO(coordinatesArr, START_COORD_X, START_COORD_Y);
                color          = FigureColors.Indigo;
                break;

            case FiguresNames.L:
                coordinatesArr = CreateL(coordinatesArr, START_COORD_X, START_COORD_Y);
                color          = FigureColors.Maroon;
                break;

            case FiguresNames.Z:
                coordinatesArr = CreateZ(coordinatesArr, START_COORD_X, START_COORD_Y);
                color          = FigureColors.Red;
                break;

            case FiguresNames.T:
                coordinatesArr = CreateT(coordinatesArr, START_COORD_X, START_COORD_Y);
                color          = FigureColors.Orange;
                break;

            case FiguresNames.S:
                coordinatesArr = CreateS(coordinatesArr, START_COORD_X, START_COORD_Y);
                color          = FigureColors.Purple;
                break;
            }

            return(coordinatesArr);
        }
Esempio n. 4
0
 /// <summary>
 /// Сгенерировать название и цвет фигуры
 /// </summary>
 private void GenerateFigureParameters()
 {
     figureName = Figure.GenerateName();
 }
Esempio n. 5
0
        public static FiguresNames GenerateName()
        {
            FiguresNames name = (FiguresNames)rand.Next(FIGURES_COUNT);

            return(name);
        }