/* * public DialogResponse DialogRequest2(ActorMemoryDialogs actorMemory, string text) * { * DialogResponse dialogResponse = null; * DialogRequest dialogRequest = new DialogRequest(text); * * Debug.Log("DialogInit.0. text = '" + text + "' / isInit = "+ actorMemory.IsInit()); * * if (actorMemory.IsInit()) * { * dialogResponse = DialogRequest(dictPriorityListInitDialogs, actorMemory, text); * actorMemory.SetIsInit(false); * return dialogResponse; * } * * dialogResponse = new DialogResponse(); * * foreach (int priority in dictListPriorityDialogs.Keys) * { * Debug.Log("DialogInit.4. priority = " + priority); * * List<Dialog> listDialogs = GetDialogsPriority(priority, false); * foreach (Dialog dialog in listDialogs) * { * dialog.Eval(dialogRequest, dialogResponse); * if (dialogResponse.IsValid()) return dialogResponse; * } * } * return null; * } */ public DialogResponse DialogRequest(DictPriorityListItems <Dialog> dictPriorityListItems, ActorMemoryDialogs actorMemory, string text) { DialogResponse dialogResponse; DialogRequest dialogRequest = new DialogRequest(text); Debug.Log("DialogInit.0. text = '" + text + "' / isInit = " + actorMemory.IsInit()); dialogResponse = new DialogResponse(); foreach (int priority in dictPriorityListItems.GetListPriorities()) { Debug.Log("DialogInit.4. priority = " + priority); List <Dialog> listDialogs = dictPriorityListItems.GetPriorityList(priority); foreach (Dialog dialog in listDialogs) { dialog.Eval(dialogRequest, dialogResponse); if (dialogResponse.IsValid()) { return(dialogResponse); } } } return(null); }
public ActorDialogs(string actor) { this.actor = actor; // listDialogsInit = new List<Dialog>(); listAllDialogs = new List <Dialog>(); dictListDialogs = new Dictionary <string, List <Dialog> >(); // dictListPriorityDialogs = new SortedList<int, List<Dialog>>(); dictPriorityListInitDialogs = new DictPriorityListItems <Dialog>(); dictPriorityListDialogs = new DictPriorityListItems <Dialog>(); dictRefConditions = new Dictionary <string, dynamic>(); }