Example #1
0
        public bool CheckCanPut(GroundTile gt, List <GroundTile> GTs)
        {
            _testGroundTiles.Clear();
            _testGroundTiles.AddRange(GTs);
            foreach (var GT in GTs)
            {
                GT.SetfalseGT(this);
            }
            foreach (var GT in _testGroundTiles)
            {
                GT.CheckCanPut();
            }

            if (_testGroundTiles.Count != 0)
            {
                var tileHight = _testGroundTiles[0].Y;
                foreach (var GT in _testGroundTiles)
                {
                    if (_testGroundTiles.Count < _needGtConut)
                    {
                        return(false);
                    }

                    if (!GT.Unlock)
                    {
                        return(false);
                    }

                    if (!GT.UseAble)
                    {
                        return(false);
                    }

                    if (tileHight != GT.Y)
                    {
                        return(false);
                    }

                    if (GT.CheckBuildList.Count > 1)
                    {
                        return(false);
                    }
                }
            }

            return(true);
        }