Exemplo n.º 1
0
        public void drawDebugStats(SpriteBatch spriteBatch, SpriteFont font)
        {
            spriteBatch.DrawString(font, "Blanks rows From bottom: " + currentTetromino.emptyRowsFromBottom().ToString(), Vector2.Zero, Color.White);
            spriteBatch.DrawString(font, "Blanks columns From Right: " + currentTetromino.emptyColumnsFromRight().ToString(), new Vector2(0, 25), Color.White);
            spriteBatch.DrawString(font, "X move Timer: " + currentTetromino.XMovTimer.ToString(), new Vector2(0, 50), Color.White);
            spriteBatch.DrawString(font, "X: " + currentTetromino.X.ToString(), new Vector2(0, 75), Color.White);
            spriteBatch.DrawString(font, "Y: " + currentTetromino.Y.ToString(), new Vector2(0, 100), Color.White);

            currentTetromino.drawPieces(spriteBatch, 100, 100);
            spriteBatch.DrawString(font, "Fallen: " + currentTetromino.IsFallen.ToString(), new Vector2(100, 400), Color.White);
            spriteBatch.DrawString(font, "CanRotate: " + canRotate().ToString(), new Vector2(100, 360), Color.White);
            spriteBatch.DrawString(font, "RotateTimer: " + currentTetromino.RotateTimer.ToString(), new Vector2(100, 340), Color.White);

            //Testing Searching for a line
            List <int> lineInfo = searchForLine();

            spriteBatch.DrawString(font, "Line Amount: " + lineInfo[0].ToString(), new Vector2(505, 350), Color.White);
            for (int d = 1; d < lineInfo.Count; d++)
            {
                spriteBatch.DrawString(font, "Y pos: " + lineInfo[d].ToString(), new Vector2(505, 350 + (30 * d)), Color.White);
            }

            //spriteBatch.DrawString(font, "Can rotate?: " + canRotate().ToString(), new Vector2(100, 450), Color.White);

            /*
             * spriteBatch.DrawString(font, "Num bottom collision blocks: "+ numOfBottomCollisionBlocks.ToString() , new Vector2(550 ,50), Color.White);
             * spriteBatch.DrawString(font, "Num left collision blocks: " + numOfLeftCollisionBlocks.ToString(), new Vector2(550, 75), Color.White);
             * spriteBatch.DrawString(font, "Num right collision blocks: " + numOfRightCollisionBlocks.ToString(), new Vector2(550, 100), Color.White);
             */
            //Displaying the tetris pieces positions
            //Errors when block overlap should be fixed once collision implemented

            /*
             * int[,] TetrominoPiecePositions = findTetroPositionInField(currentTetromino);
             * for (int i = 0; i < TetrominoPiecePositions.GetLength(0);i++)
             * {
             *  for(int c= 0; c < TetrominoPiecePositions.GetLength(1); c++)
             *  {
             *      spriteBatch.DrawString(font, TetrominoPiecePositions[i,c].ToString(), new Vector2(505+(30*c),50*i), Color.White);
             *
             *  }
             * }
             */

            //Displaying collision Positions
            int i = 0;
            int c = 0;

            foreach (List <int> list in lSideCollisionSkinPositions)
            {
                foreach (int num in list)
                {
                    spriteBatch.DrawString(font, num.ToString(), new Vector2(505 + (30 * c), 50 * i), Color.White);
                    c++;
                }
                i++;
            }
        }