protected void SetCallbacks(Action onStart, Action onEnd) { if (CallbacksSet) throw new InvalidOperationException(); if (onStart != null) onStart(); EndAction = onEnd; CallbacksSet = true; }