/// <summary> /// 初始化格子 /// </summary> private void ShowTitle(bool _bool) { foreach (var GTs in _tiles) { foreach (var GT in GTs) { if (_bool) { GT.CheckCanUse(); } else { GT.CloseTile(); } } } }
/// <summary> /// 设置当前格子颜色 /// </summary> private void SetGroundTitleColor(Build build) { if (_lightGroundTiles.Count != 0) { foreach (var GT in _lightGroundTiles) { GT.CloseTile(); } _lightGroundTiles.Clear(); } _dotEnough = false; for (int i = 0; i < build.Area.Length; i++) { for (int j = 0; j < build.Area[i].Length; j++) { if (build.Area[i][j]) { if (_nowGt.X + i <= _tiles.Length - 1) { if (_nowGt.Z + j <= _tiles[_nowGt.X + i].Length - 1) { _lightGroundTiles.Add(_tiles[_nowGt.X + i][_nowGt.Z + j]); } else { _dotEnough = true; } } else { _dotEnough = true; } } } } if (_dotEnough) { _canPut = false; foreach (var GT in _lightGroundTiles) { GT.SetColorByUse(_canPut); } return; } if (_lightGroundTiles.Count == 0) { return; } { var tileHight = _lightGroundTiles[0].Y; foreach (var GT in _lightGroundTiles) { if (!GT.UseAble) { _canPut = false; GT.SetColorByUse(_canPut); continue; } if (tileHight != GT.Y) { _canPut = false; foreach (var GT2 in _lightGroundTiles) { GT2.SetColorByUse(_canPut); } return; } if (GT.UsedBuildList.Count >= 1) { _canPut = false; GT.SetColorByUse(_canPut); continue; } _canPut = true; GT.SetColorByUse(_canPut); } } }