/// <summary> /// 处理该任务的事件 /// </summary> /// <param name="runTimeTaskInfo"></param> public void TriggeringEvents(TaskMap.RunTimeTaskInfo runTimeTaskInfo) { if (runTimeTaskInfo.TaskInfoStruct.TaskEventTriggerDic != null) { if (runTimeTaskInfo.TaskInfoStruct.TaskEventTriggerDic.ContainsKey(runTimeTaskInfo.TaskProgress)) { List <TaskMap.TaskEventData> taskEventDataList = runTimeTaskInfo.TaskInfoStruct.TaskEventTriggerDic[runTimeTaskInfo.TaskProgress]; if (taskEventDataList != null) { foreach (TaskMap.TaskEventData taskEventData in taskEventDataList) { TaskMap.TaskEventData taskEventData_clone = taskEventData.Clone(); taskEventData_clone.TaskID = runTimeTaskInfo.ID; if (taskEventData != null) { List <int> ids = eventTypeToIDsDic[taskEventData.EventType]; foreach (var id in ids) { try { idToCallBackDic[id](taskEventData_clone); } catch { } } } } } } } }
/// <summary> /// 处理地图可用性事件 /// </summary> /// <param name="taskEventData">数据对象</param> private void TaskEventCall_CanBigMap(TaskMap.TaskEventData taskEventData) { if (taskEventData.EventType == TaskMap.Enums.EnumTaskEventType.CanBigMap) { GameRunningStateData gameRunningStateData = DataCenter.Instance.GetEntity <GameRunningStateData>(); gameRunningStateData.CanBigMap = (bool)taskEventData.EventData; } }