public void Play() { if (TriggerOnce && hasTriggered) { return; } if (EventReference.IsNull) { return; } cachedParams.Clear(); if (!eventDescription.isValid()) { Lookup(); } bool isSnapshot; eventDescription.isSnapshot(out isSnapshot); if (!isSnapshot) { eventDescription.isOneshot(out isOneshot); } bool is3D; eventDescription.is3D(out is3D); IsActive = true; if (is3D && !isOneshot && Settings.Instance.StopEventsOutsideMaxDistance) { RuntimeManager.RegisterActiveEmitter(this); RuntimeManager.UpdateActiveEmitter(this, true); } else { PlayInstance(); } }
public void Play() { if (TriggerOnce && hasTriggered) { return; } if (string.IsNullOrEmpty(Event)) { return; } cachedParams.Clear(); if (!eventDescription.isValid()) { Lookup(); } if (!Event.StartsWith(SnapshotString, StringComparison.CurrentCultureIgnoreCase)) { eventDescription.isOneshot(out isOneshot); } bool is3D; eventDescription.is3D(out is3D); IsActive = true; if (is3D && !isOneshot && Settings.Instance.StopEventsOutsideMaxDistance) { RuntimeManager.RegisterActiveEmitter(this); RuntimeManager.UpdateActiveEmitter(this, true); } else { PlayInstance(); } }