public void checkForNotOccupied(GameObject go) { /* * String s = ""; * for (int i = 0; i < HolzPlaneList.Count; i++) { * s = s + "\n" + i + " isOccupied:" + HolzPlaneList[i].getOccupied(); * } * Alert(s); */ ZweigSprite tempZweig = go.GetComponent <ZweigSprite>(); for (int i = 0; i < HolzPlaneList.Count; i++) { if (HolzPlaneList[i].getOccupied()) { // Alert(i + " isOccupied " + HolzPlaneList[i].isOccupied); } else { tempZweig.Move(HolzPlaneList[i].transform); HolzPlaneList[i].setOccupied(true); HolzPlaneList[tempZweig.GetSequencePosition()].setOccupied(false); tempZweig.SetSequencePosition(i); //tempProjectile.setText(":" + i); break; } } }
//void DestroyList (IList<MonoBehaviour> list ) { // foreach (var go in list) { // go.SetActive(false); // Destroy(go, 3); // } //} public void NewGame() { //DestroyList(HolzPlaneList); DestroyPrefab(HolzPlaneList); DestroyPrefab(ZweigSpriteList); //for (int i = 0; i < ZweigSpriteList.Count; i++) { // DestroyPrefab(ZweigSpriteList[i].gameObject); //} //for (int i = 0; i < HolzPlaneList.Count; i++) { // DestroyPrefab(HolzPlaneList[i].gameObject); //} ZweigSpriteList = new List <ZweigSprite>(); HolzPlaneList.Clear(); //HolzPlaneList = new List<HolzPlane>(); //UtilFunctions.Alert("ZweigSpriteList.Count: " + ZweigSpriteList.Count ); //UtilFunctions.Alert(spriteCollection.sprites.Length + ""); //UtilFunctions.Alert(spriteCollection.GetSpriteName(1)); //3,5,4,1,2 List <int> numbers = new List <int>(); List <int> sequence = new List <int>(); for (int i = 0; i < 5; i++) { numbers.Add(i); //UtilFunctions.Alert("" + i); } System.Random zufall = new System.Random(); while (numbers.Count > 0) { int i = zufall.Next(0, numbers.Count - 1); sequence.Add(numbers[i]); //UtilFunctions.Alert("adding " + numbers[i]); numbers.RemoveAt(i); } String s = ""; for (int i = 0; i < sequence.Count; i++) { s = s + "\n" + sequence[i]; } //UtilFunctions.Alert(s); float startX = -15; for (int i = 0; i < 6; i++) { startX = startX + 5f; if (i > 0) { ZweigSprite zweigSprite = Instantiate(zweigSpritePrefab, new Vector3(startX, 0.5f, 0), Quaternion.identity); zweigSprite.transform.position = zweigSprite.transform.position + new Vector3(0f, zweigSprite.heightPosition, 0f); zweigSprite.SetSequencePosition(i); zweigSprite.SetLevelManagerListener(this); zweigSprite.name = "Zweig " + sequence[i - 1]; // wir müssen i dekrementieren, weil wir ja die Zählung ab der ersten Bodenposition haben, welches als Stack verwendet wird zweigSprite.SetSprite(spriteCollection.GetSprite("blaetter_" + (sequence[i - 1]))); ZweigSpriteList.Add(zweigSprite); } HolzPlane hp = Instantiate(holzPlane, new Vector3(startX, 0.01f, 0), Quaternion.identity); hp.name = "Holzplane" + i; hp.setOccupied(true); if (i == 0) { hp.setOccupied(false); } HolzPlaneList.Add(hp); } }