// add a new key public void addKey(int _frame, AudioClip _clip, bool _loop) { foreach (AMAudioKey key in keys) { // if key exists on frame, update key if (key.frame == _frame) { AMUtil.recordObject(key, "update key"); key.audioClip = _clip; key.loop = _loop; // update cache updateCache(); return; } } AMUtil.recordObject(this, "add key"); AMAudioKey a = ScriptableObject.CreateInstance <AMAudioKey>(); a.frame = _frame; a.audioClip = _clip; a.loop = _loop; // add a new key keys.Add(a); // update cache updateCache(); }
// copy properties from key public override AMKey CreateClone() { AMAudioKey a = ScriptableObject.CreateInstance <AMAudioKey>(); a.frame = frame; a.audioClip = audioClip; a.loop = loop; return(a); }