void Start() { int currentSpawn = 0; float xPos = 0f; float yPos = 2f; for (int i = 0; i < 21; i++) { foreach (Card card in instance.cards) { if (card.manaCost == i) { switch (cardDisplayPosition) { case 0: xPos = -4.5f; break; case 1: xPos = -1.5f; break; case 2: xPos = 1.5f; break; case 4: xPos = 4.5f; break; default: break; } cardDisplayPosition++; if (cardDisplayPosition > 3) { cardDisplayPosition = 0; } GameObject go = Instantiate(cardPrefab, new Vector3(xPos, yPos, 0), Quaternion.identity); CardDisplay display = go.GetComponent <CardDisplay>(); display.CardSetUp(card); currentSpawn++; if (currentSpawn > 3) { yPos -= 4f; currentSpawn = 0; } } } } }