Ich habe ein sammelbares Objekt, das ein anderes Objekt als Kind hat, das ein Partikelsystem hat. Wenn der Spieler in das Sammelobjekt hineinrennt, sollte das Sammelobjekt zerstört werden und das Partikelsystem sollte spielen. Der folgende Code funktioniert korrekt, wenn das Spielobjekt die Szene platziert, aber sobald ich es vorfabriziere und in Code instanziiere - das Partikelsystem funktioniert nicht mehr.Collectable Objekt funktioniert nicht, sobald ich es vorfabriziere
Irgendwelche Ideen? Prost!
using UnityEngine;
using System.Collections;
public class collectable : MonoBehaviour {
GameObject birdParticleObject;
ParticleSystem birdParticlesystem;
void Start() {
birdParticleObject = GameObject.Find("BirdParticleSystem");
birdParticlesystem = birdParticleObject.GetComponent<ParticleSystem>();
}
// Update is called once per frame
void Update() {
}
void OnTriggerEnter(Collider other)
{
if(other.tag == "Player") {
birdParticlesystem.Play();
Destroy(gameObject);
}
}
}
Was GameObject Sie vorfabrizieren und zu instanziieren, das sammelbare oder das birdParticleObject? –
verwenden Sie öffentliche Variablen und verknüpfen sie mit den Dingen in der Szene? Vergiss nicht, dass du keinen Link zu deiner Szene "vorfabrizieren" kannst. (Natürlich weiß das Fertigteil nichts über eine Szene - es könnte morgen in einem anderen Spiel sein!) – Fattie
Prefab kann zwar keinen dauerhaften Verweis auf ein Szenenobjekt haben, aber es kann eigene Objekte haben. –