private static ImmutableArray <InteractionType> LoadAboutInteractionTypes(InteractionGroup interactionGroup) { var aboutInteractionCodes = interactionGroup.InteractionFamilies.FirstOrDefault(i => i.Type == "AboutItems").InteractionTypeCodes; var aboutInteractionTypes = interactionGroup.InteractionTypes .Where(i => aboutInteractionCodes.Contains(i.Code)) .OrderBy(i => i.Order) .ToImmutableArray(); return(aboutInteractionTypes); }
public void UnRegisterGroupChangedListener(INTERACTION group, IInteractionGroupListener listener) { InteractionGroup interactionGroup = null; if (!groupLists.TryGetValue(group, out interactionGroup) || interactionGroup.groupListeners.Count == 0) { return; } interactionGroup.groupListeners.Remove(listener); }
/* * Methods */ public void AddInteractionUID(string triggerName, int uid) { InteractionGroup group; if (!_interactionGroupDic.TryGetValue(triggerName, out group)) { group = new InteractionGroup(triggerName); _interactionGroupDic.Add(triggerName, group); } group.interactionUID.Add(uid); }
public static List <InteractionController> GetObjsWithInteraction(INTERACTION group) { InteractionGroup interactionGroup = null; if (!instance.groupLists.TryGetValue(group, out interactionGroup)) { return(new List <InteractionController>()); } return(interactionGroup.objsInGroup); }
public void UnregisterWithGroup(INTERACTION group, InteractionController interactionCont) { InteractionGroup interactionGroup = null; if (!groupLists.TryGetValue(group, out interactionGroup) || interactionGroup.objsInGroup.Count == 0) { return; } if (interactionGroup.objsInGroup.Remove(interactionCont)) { foreach (IInteractionGroupListener listener in interactionGroup.groupListeners) { listener.ObjRemovedFromInteractionGroup(group, interactionCont); } } }
public void RegisterGroupChangedListener(INTERACTION group, IInteractionGroupListener listener) { InteractionGroup interactionGroup = null; if (!groupLists.TryGetValue(group, out interactionGroup)) { interactionGroup = new InteractionGroup(); groupLists[group] = interactionGroup; } // add to group listers, avoid duplicates if (interactionGroup.groupListeners.Contains(listener)) { return; } else { interactionGroup.groupListeners.Add(listener); } }
public void RegisterWithGroup(INTERACTION group, InteractionController interactionCont) { InteractionGroup interactionGroup = null; if (!groupLists.TryGetValue(group, out interactionGroup)) { interactionGroup = new InteractionGroup(); groupLists[group] = interactionGroup; } // add obj to group, avoid duplicates if (interactionGroup.objsInGroup.Contains(interactionCont)) { return; } else { interactionGroup.objsInGroup.Add(interactionCont); foreach (IInteractionGroupListener listener in interactionGroup.groupListeners) { listener.ObjAddedToInteractionGroup(group, interactionCont); } } }