public void Clean() { mGridProcesser?.Dispose(); EliminateResult?.Dispose(); mLinedRulesMapper?.Clear(); mRearranger?.Clear(); mOperatingGrids?.Clear(); mGridProcesser = default; EliminateResult = default; mLinedRulesMapper = default; mRearranger = default; mOperatingGrids = default; }
public GridOperater(EliminateResult eliminateResult) { EliminateResult = eliminateResult; mLinedRulesMapper = new Dictionary <int, ComboRule>(); mRearranger = new GridsRearranger(); mOperatingGrids = new List <ElimlnateGrid>();//TODO 这里保存的自动消除的功能数据需要再看看如何实现 mSupplementSizeData = new KeyValueList <int, int>(); mHigestInCols = new KeyValueList <int, int>(); mObstacleCols = new KeyValueList <int, int>(); mUpdateCols = new Queue <GridUpdateInfo>(); mObstacleIndes = new List <int>(); mGridProcesser = new QueueExecuter(false); mGridProcesser.OnUnitCompleted += OnGridProcessComplete; }