1 using System.Collections; 2 using System.Collections.Generic; 3 using UnityEngine; 4 5 public class callback : MonoBehaviour { 6 public bool IsSuccessCallBack = true; 7 private delegate void VoidDelegate(); 8 [ContextMenu("Build")] 9 public void Build()10 {11 StartCoroutine(Builder(SuccessCallBack, FailureCallBack));12 }13 14 private IEnumerator Builder(VoidDelegate success, VoidDelegate failure)15 {16 if (!IsSuccessCallBack)17 {18 failure();19 yield break;20 }21 //前面是种种导致执行失败的判断22 success();23 }24 25 private void SuccessCallBack()26 {27 Debug.Log("该函数执行成功");28 }29 30 private void FailureCallBack()31 {32 Debug.Log("该函数执行失败");33 }34 }