private void Build() { if (!canBuild || manageDialog.IsPointerOverBuildingDialog()) { return; } if (!Economy.CanBuy(selectedBuildingUnit.price)) { return; } GameObject newBuildingObject = Instantiate( buildingPrefab, createdBuildings.transform, true ); buildingsTileMap.SetTile(currentCell, currentBuildingTile); // GameStore.SetBuildingPosition(currentArea); newBuildingObject.GetComponent <Building>() .SetInitialValues(currentArea, resourcesMap, selectedBuildingUnit); foreach (var boundCell in currentArea.allPositionsWithin) { // Add building position/bound to list GameStore.SetBuildingPosition(boundCell); } }