whole_func_string: function checkTile(tile) {
          // No tile, ignore
          if (!tile) return false;
          // If an array of indices was provided, tile's index must be in that array
          if (tileIndices && tileIndices.includes(tile.index)) return true;
          // If a tile property was provided, the tile must have a truthy value for that property
          if (tileProperty && tile.properties[tileProperty]) return true;
          // If we only care about colliding tiles, make sure the tile collides
          if (checkCollide && tile.collides) return true;
          // Tile didn't pass any checks, ignore
          return false;
      }
func_code_string: function checkTile(tile) {
          // No tile, ignore
          if (!tile) return false;
          // If an array of indices was provided, tile's index must be in that array
          if (tileIndices && tileIndices.includes(tile.index)) return true;
          // If a tile property was provided, the tile must have a truthy value for that property
          if (tileProperty && tile.properties[tileProperty]) return true;
          // If we only care about colliding tiles, make sure the tile collides
          if (checkCollide && tile.collides) return true;
          // Tile didn't pass any checks, ignore
          return false;
      }
func_documentation_string: Check to make sure the tile passes the checks, i.e. it is allowed to be in a cluster