コード例 #1
0
        public static bool IsMatureTreeStumpOrBoulderAt(this GameLocation gameLocation, Point tile)
        {
            gameLocation.terrainFeatures.TryGetValue(new Vector2(tile.X, tile.Y), out TerrainFeature terrainFeature);

            if (terrainFeature is Tree || terrainFeature is FruitTree ||
                (terrainFeature is Bush bush &&
                 bush.IsDestroyable(gameLocation, tile)))
            {
                return(true);
            }

            foreach (LargeTerrainFeature largeTerrainFeature in gameLocation.largeTerrainFeatures)
            {
                if (largeTerrainFeature is Bush bush2 &&
                    bush2.getRenderBounds(new Vector2(bush2.tilePosition.X, bush2.tilePosition.Y)).Contains(
                        tile.X * Game1.tileSize,
                        tile.Y * Game1.tileSize) && bush2.IsDestroyable(gameLocation, tile))
                {
                    return(true);
                }
            }

            return(gameLocation.IsStumpAt(tile.X, tile.Y) ||
                   gameLocation.IsBoulderAt(tile.X, tile.Y));
        }