Exemplo n.º 1
0
        public CustomWindow()
        {
            InitializeComponent();
            AllFigBrushes = new List <Brush>(10)
            {
                Brushes.Cyan,
                Brushes.Orange,
                Brushes.Red,
                Brushes.Yellow,
                Brushes.Purple,
                Brushes.Blue,
                Brushes.Green,
            };
            int count = AllFigBrushes.Count;

            for (int i = 0; i < count; i++)
            {
                AllFigBrushes.Add(new LinearGradientBrush(((SolidColorBrush)AllFigBrushes[i]).Color, Colors.White, 90));
                AllFigBrushes.Add(new LinearGradientBrush(((SolidColorBrush)AllFigBrushes[i]).Color, Colors.White, 45));
                AllFigBrushes.Add(new LinearGradientBrush(((SolidColorBrush)AllFigBrushes[i]).Color, Colors.White, 0));
                AllFigBrushes.Add(new LinearGradientBrush(((SolidColorBrush)AllFigBrushes[i]).Color, Colors.Black, 90));
                AllFigBrushes.Add(new LinearGradientBrush(((SolidColorBrush)AllFigBrushes[i]).Color, Colors.Black, 45));
                AllFigBrushes.Add(new LinearGradientBrush(((SolidColorBrush)AllFigBrushes[i]).Color, Colors.Black, 0));
            }
            AllFieldBrushes = new List <Brush>(10)
            {
                Brushes.White,
                Brushes.Black,
                Brushes.DarkBlue,
                Brushes.Silver
            };

            I          = new GridField(FigGrid_I);
            J          = new GridField(FigGrid_J);
            L          = new GridField(FigGrid_L);
            T          = new GridField(FigGrid_T);
            S          = new GridField(FigGrid_S);
            Z          = new GridField(FigGrid_Z);
            O          = new GridField(FigGrid_O);
            Main       = new GridField(MainGrid);
            MainT      = new Tetramino('I');
            indexFig   = AllFigBrushes.FindIndex(x => x == MainT.Color);
            indexField = AllFieldBrushes.FindIndex(x => x == GridField.fieldBrush);
            indexGran  = AllFieldBrushes.FindIndex(x => x == GridField.granBrush);
            FigColor   = MainT.Color;
            MainT.MoveDown();
            GranColor.Fill  = GranBrush;
            FieldColor.Fill = FieldBrush;
            RePaintFig();
        }
Exemplo n.º 2
0
        /// <summary>
        /// Создать игровое поле
        /// </summary>
        /// <param name="TetrisGrid">Grid основного игрового поля</param>
        /// <param name="NextFigGrid">Grid для показа следующей фигуры</param>
        public Table(Grid TetrisGrid, Grid NextFigGrid)
        {
            TetrisField      = new GridField(TetrisGrid);
            this.NextFigGrid = new GridField(NextFigGrid);
            LvlUp            = false;
            score            = 0;
            linesAssembled   = 0;
            lvl = 1;
            thisLevelLinesAssembled = 0;

            currentTetramino = new Tetramino();
            TetrisField.TetraminoDraw(currentTetramino);
            nextTetramino = new Tetramino();
            this.NextFigGrid.TetraminoDraw(nextTetramino);
        }