public void SpawnDefender(Vector3 position) { if (defenderPrefab == null) { return; } var cost = GetCostForDefender(); bool isSpaceFree = grid[(int)position.x, (int)position.y] == null; if (starDisplay.CanPurchase(cost) && isSpaceFree) { starDisplay.MakePurchase(cost); var defenderGameObject = Instantiate(defenderPrefab, position, transform.rotation, defenderParent.transform); var defender = defenderGameObject.GetComponent <Defender>(); defender.Line = Mathf.RoundToInt(position.y) + 1; grid[(int)position.x, (int)position.y] = defenderGameObject; } }