Ich habe fast mein Spiel fertig, ich möchte eine unendliche Anzahl von 2D-Quadrate für mein 2D-Spiel erstellen. Der folgende Code, den ich verwendet habe, funktioniert jedoch nicht, um ein einzelnes Quadrat unendlich zu spawnen.Unity - Infinite Spawn Ausgabe
using UnityEngine;
using System.Collections;
public class Spawner : MonoBehaviour
{
private GameObject[] locationsToSpawn;
private float counter = 0;
[SerializeField]
string[] listOfPossibleTags;
[SerializeField]
GameObject[] objectToSpawn;
[SerializeField]
float timeBetweenSpawns = 3.0f;
void Start()
{
locationsToSpawn = GameObject.FindGameObjectsWithTag("SpawnLocation");
}
void Update()
{
counter += Time.deltaTime;
if (counter > timeBetweenSpawns)
{
GameObject spawnedObject;
spawnedObject = Instantiate(objectToSpawn[Random.Range(0, objectToSpawn.Length)], locationsToSpawn[Random.Range(0, locationsToSpawn.Length)].transform.position, Quaternion.identity) as GameObject;
spawnedObject.gameObject.tag = listOfPossibleTags[Random.Range(0, listOfPossibleTags.Length)];
counter = 0;
}
}
}
Auch sieht mein Spiel wie folgt image
Also, was kann ich tun, fallen eine unendliche Anzahl von Plätzen zu schaffen? Ich bin kurz davor, das Spiel zu beenden.
In welcher Weise scheitert Ihr Code? Welche Teile laufen wie erwartet und was ist das falsche Verhalten, das Sie beobachten? Bitte geben Sie weitere Einzelheiten an, da wir den Code nicht selbst ausführen können, um das herauszufinden. – Serlite
Serlite ist korrekt, Sie müssen weitere Informationen bereitstellen. Der Code sieht so aus, als sollte er Spielobjekte erzeugen. Ich vermute jedoch, dass sie sich gegenseitig hervorbringen. Was ist der Wert von objectToSpawn.Length und locationsToSpawn.Length beim Debuggen? –
Ich möchte ein Unavider-Spiel auf Unity machen. Wenn ich den Spawner-Code in das quadratische Objekt einfüge. Der Platz ist nicht spawing. –