public GameObject AddScreen(ScreenObject theScreen, Vector3 pos, int height) { // create a new screen object GameObject instance = (GameObject)Instantiate(screenPrefab.gameObject, pos, Quaternion.identity); instance.GetComponent<Screen_Script>().theScreen = theScreen; instance.name = "Screen#" + theScreen.GetScreenNumber(); instance.tag = "Screen"; instance.GetComponent<SpriteRenderer>().sortingOrder = height - theScreen.GetY() - 1; if (!theScreen.ConstructionInProgress()) { instance.GetComponent<SpriteRenderer>().sprite = screenImages[theScreen.GetUpgradeLevel()]; } else { instance.GetComponent<SpriteRenderer>().sprite = screenImages[0]; CreateBuilder(theScreen.GetX(), theScreen.GetY(), theScreen.GetScreenNumber()); } screenObjectList.Add(instance); return instance; }