public void SetAlternative(Priority priority, Behaviour.ISlashAlternative alternate) { if (!mAlternatives.Contains(priority)) { mAlternatives.Add(priority, alternate); return; } mAlternatives[priority] = alternate; }
public Behaviour.ISlashAlternative GetAlternate() { if (!HasAlternate()) { throw new InvalidOperationException("Doesn't have alternates."); } Behaviour.ISlashAlternative[] alternates = new Behaviour.ISlashAlternative[mAlternatives.Count]; mAlternatives.Values.CopyTo(alternates, 0); return(alternates[0]); }