public static List <string> GetPreLoadAsset(SceneEventInfo info) { List <string> list = new List <string>(); if (!info) { return(list); } SceneEventInfo.SceneEvent e = null; for (int i = 0; i < info.sceneEvents.Length; i++) { e = info.sceneEvents[i]; for (int j = 0; j < e.behaviours.Length; j++) { if (e.behaviours[j].sceneBehaviorType == SceneEventInfo.SceneBehaviouType.StartStoryDialogue) { EnumStoryType type = (EnumStoryType)e.behaviours[j].parameters[1]; list.AddRange(GetPerStoryPreAssets(e.behaviours[j].parameters[0], type)); } } } return(list); }
/// <summary> /// 获取场景事件的所有的剧情相关的预加载资源 /// </summary> /// <param name="info"></param> /// <returns></returns> public List <string> GetPreLoadAsset(int stageEventId) { List <string> list = new List <string>(); SceneEventInfo info = ConfigManager.Get <SceneEventInfo>(stageEventId); if (!info) { return(list); } return(GetPreLoadAsset(info)); }