using System; namespace UnityAtoms { public abstract class EquatableScriptableObjectVariable : ScriptableObjectVariable where T : IEquatable where E1 : GameEvent where E2 : GameEvent { protected override bool AreEqual(T t1, T t2) { return (t1 == null && t2 == null) || (t1 != null && t1.Equals(t2)); } } }