BenNHTetris/Canvas.cs

(开头部分) 10KB

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

///////////////////////////////////////////////////////////
//  Class			:	Canvas.cs
//  CLRVersion		:	4.0.30319.42000
//  NameSpace		:	BenNHTetris
//  Created on		:	2018/5/31 11:43:28
//  Original author	:	JIYONGFEI 
//  JiYF笨男孩博客  :   https://www.cnblogs.com/JiYF/
///////////////////////////////////////////////////////////
using System;
using System.Collections.Generic;
using System.Drawing;
using System.Linq;
using System.Text;

namespace BenNHTetris
{
    class Canvas
    {
        public int m_rows;                  //行数
        public int m_columns;               //列数
        public int[,] m_arr;                //画布二维数组
        public int m_score;                 //分数
        private Block m_curBlock = null;    //当前砖块
        private Block m_nextBlock = null;   //下一个砖块
        private int m_height;               //当前高度

        /// <summary>
        /// 构造画布
        /// </summary>
        public Canvas()
        {
            m_rows = 20;        //初始20
            m_columns = 20;     //初始20
            m_arr = new int[m_rows, m_columns];
            for (int i = 0; i < m_rows; i++)
            {
                for (int j = 0; j < m_columns; j++)
                {
                    m_arr[i, j] = 0;
                }
            }
            m_score = 0;
            m_height = 0;
        }

        //定时器  砖块定时下降或无法下降时生成新的砖块
        public bool Run()
        {
            //判断是否为空
            lock (m_arr)
            {
                if (m_curBlock == null && m_nextBlock == null)
                {
                    m_curBlock = Blocks.GetBlock();
                    m_nextBlock = Blocks.GetBlock();
                    m_nextBlock.RandomShape();
                    m_curBlock.SetCenterPos(m_curBlock.Appear(), m_columns / 2 - 1);
                    SetArrayValue();
                }
                else if (m_curBlock == null)
后面还有 270 行代码,解锁后查看完整代码

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

AI 解读 AI

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

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