public bool GetDialogStepModel(DialogModel model, int step, out DialogStepModel stepModel) { stepModel = default; if (model.steps == null || model.steps.Count <= 0) { DialogLocate.Log.LogError("获得对话步骤配置失败>>>>", model.id); return(false); } for (int i = 0; i < model.steps.Count; i++) { if (model.steps[i].step == step) { stepModel = model.steps[i]; return(true); } } return(false); }
public bool GetDialogDisposeModel(DialogStepModel model, int disposeId, out DialogDisposeModel disposeModel) { disposeModel = default; if (model.disposes == null || model.disposes.Count <= 0) { DialogLocate.Log.LogError("获得对话选项配置失败>>>>", model.step); return(false); } for (int i = 0; i < model.disposes.Count; i++) { if (model.disposes[i].id == disposeId) { disposeModel = model.disposes[i]; return(true); } } return(false); }
/// <summary> /// 收集对话配置的演员Id /// </summary> /// <returns></returns> private List <int> CollectDialogActorIds(DialogModel dialogModel) { List <int> actors = new List <int>(); if (dialogModel.steps == null || dialogModel.steps.Count <= 0) { return(actors); } for (int i = 0; i < dialogModel.steps.Count; i++) { DialogStepModel stepModel = dialogModel.steps[i]; if (stepModel.speakers != null && stepModel.speakers.Count > 0) { for (int j = 0; j < stepModel.speakers.Count; j++) { if (!actors.Contains(stepModel.speakers[j])) { actors.Add(stepModel.speakers[j]); } } } } return(actors); }