// public GameObject GetDecorationForHeight(float height){ // List<GameObject> decos = new List<GameObject>(); // for(int i = 0 ; i < _decorations.Length ; i++){ // LXFMLDecoration deco = _decorations[i].GetComponent<LXFMLDecoration>(); // if(deco.height <= height ){ // decos.Add(_decorations[i]); // } // } // if(decos.Count == 0) // return null; // return decos[Random.Range(0,decos.Count)]; // } public List <int> GetAvailableBricksForFootprint(Vector4 footprint, int pDesignID) { List <int> availBricks = new List <int>(); int width = (int)(footprint.x + footprint.y) + 1; int height = (int)(footprint.z + footprint.w) + 1; foreach (KeyValuePair <int, GameObject> brick in _prefabsLookup) { int designId = brick.Key; if (LXFMLHelper.GetBrickHeight(designId) <= height && LXFMLHelper.GetBrickWidth(designId) <= width && designId != pDesignID && !(LXFMLHelper.IsSpecial2By1Brick(designId)) && !(LXFMLHelper.Is2By1Brick(designId) && LXFMLHelper.Is2By1Brick(pDesignID))) { availBricks.Add(brick.Key); } } return(availBricks); }