Brick.cs

(开头部分) 3KB

这里只显示每个文件的开头 60 行。登录后可以解锁完整代码。

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Drawing;

namespace Tetris
{
    public abstract class Brick
    {
        protected int m_curTransforIndex;  //当前变形次序 
        public int m_needfulRows;       //必要的行数
        public int m_needfulColumns;    //必要的列数
        public int[,] m_range;     //变形范围
        public Point m_center;       //中心点(相对于必要区域)
        public Point m_Pos;      //中心点的位置(相对于画布)

        /// <summary>
        /// 能否变形(能变形的条件为在砖块的变形范围内不能有其他砖块)
        /// </summary>
        /// <param name="arr">画布模型</param>
        /// <param name="rows">画布行数</param>
        /// <param name="columns">画布列数</param>
        /// <returns></returns>
        public abstract bool CanTransform(int[,] arr, int rows, int columns);

        /// <summary>
        /// 变形
        /// </summary>
        public abstract void Transform();

        /// <summary>
        /// 能否左移
        /// </summary>
        /// <param name="arr">画布模型</param>
        /// <param name="rows">画布行数</param>
        /// <param name="columns">画布列数</param>
        /// <returns></returns>
        public abstract bool CanLeftMove(int[,] arr, int rows, int columns);

        /// <summary>
        /// 左移
        /// </summary>
        public void LeftMove()
        {
            m_Pos.Y -= 1;
        }

        /// <summary>
        /// 能否右移
        /// </summary>
        /// <param name="arr">画布模型</param>
        /// <param name="rows">画布行数</param>
        /// <param name="columns">画布列数</param>
        /// <returns></returns>
        public abstract bool CanRightMove(int[,] arr, int rows, int columns);

        /// <summary>
        /// 右移
        /// </summary>
后面还有 49 行代码,解锁后查看完整代码

24 小时内免费解锁 3 个项目,之后 1 算力/个。 规则说明

AI 解读 AI

登录后可用,每次 10 算力,解读结果公开显示在下面。

还没有人解读过这个文件。