// Returns the mood resulting of putting together a character with a trait 'a' with another a trait 'b' // The traits must be of the same factor public Mood confront(Trait a, Trait b) { if (a.Equals(b)) { return(Mood.HAPPY); } Mood ret = face(a, b); if (Mood.SAD.Equals(ret)) { throw new UnityException("Factor should never return SAD or HAPPY"); } return(ret); }