Ich arbeite an einem Spiel wie 2 Autos. Also wird es zwei Linien geben und ich habe zwei Objekt-Spawner benutzt, die zwei Formen hervorbringen werden, nämlich Kreis und Quadrat. Wenn also der Spieler mit dem Kreis kollidiert, sollte die Punktzahl aktualisiert werden. Und wenn Square fällt, soll der Spieler es vermeiden, indem er auf eine andere Spur geht. Aber was ist das Problem ist etwas, das der Spawner gleichzeitig oder mit kleiner Lücke platzt. So kann der Spieler nicht entkommen. Irgendeine Lösung dafür. Nun, ich denke, es hilft nicht viel, aber hier ist mein SkriptUnity Wie Spawner zu begrenzen?
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class Instantiter : MonoBehaviour {
public GameObject[] gameobject;
public float SpawnDelay= 3f;
private GameObject objectkeeper;
// Use this for initialization
void Start() {
}
// Update is called once per frame
void Update() {
float Spawntime = SpawnDelay * Time.deltaTime; // 1 *1/60
if (Random.value < Spawntime) {
Spawn();
}
}
void Spawn(){
int number = Random.Range (0, 2);// creating random number between 0 and 1
objectkeeper = Instantiate (gameobject [number], this.transform.position, Quaternion.identity) as GameObject;
objectkeeper.transform.parent = this.transform;
}
void OnDrawGizmos(){
Gizmos.DrawWireSphere (this.transform.position, 0.5f);
}
}
Vielen Dank für Ihre Zeit und Überlegung
können Sie überprüfen, ob ein Platz bereits innerhalb eines bestimmten Zeitraums hervorgebracht worden ist? Oder wenn ein Quadrat überhaupt auf dem Bildschirm ist? Stellen Sie im Grunde eine Bedingung, unter der entweder ein Kreis oder ein Quadrat spawnen kann, statt es völlig zufällig –
@Luke K Ich habe an eine ähnliche Sache gedacht, aber nicht programmatisch schreiben –