public void CreateNewShape() { //mCurrentShape.Type = mNextShape.Type; //for (int i = 0; i < mCurrentShape.mNumberOfBlocks; i++) // mCurrentShape.Blocks[i] = mNextShape.Blocks[i]; //Copy the next shape to the current mCurrentShape = new Shape(mPlayfield, linkedblocks); mCurrentShape.copy(mNextShape); //Set the starting position in the play area // mCurrentShape.DrawPositionY = mPlayfield.Ypos; // mCurrentShape.DrawPositionX = mPlayfield.Xpos + 24 * (mPlayfield.Width / 2); //Create a new shape for the nextshape mNextShape = new Shape(mPlayfield, linkedblocks); mNextShape.Type = ((Shape.ShapeType)(RandomNumber(0, 6))); //rotation to zero? mCurrentShape.Rotation = 0; }