private void OnEnable() { _functionPool.AddFunc(() => { if (selfController != null) { AnimatorStateTransmit selfAnimatorStateTransmit = selfController.GetComponentInChildren <AnimatorStateTransmit>(); selfAnimatorStateTransmit.OnStateEvents += OnSelfStateEvent; return(true); } return(false); }); _functionPool.AddFunc(() => { if (targetController != null) { AnimatorStateTransmit targetAnimatorStateTransmit = targetController.GetComponentInChildren <AnimatorStateTransmit>(); targetAnimatorStateTransmit.OnStateEvents += OnTargetStateEvent; return(true); } return(false); }); _functionPool.CallFuncs(); }
public void Cast() { GameObject dogGameObject = GameObjectManager.Instance.Create("dog"); Debug.Assert(dogGameObject != null, "召唤的角色不存在"); dogGameObject.transform.parent = Owner.transform.parent; dogGameObject.transform.position = Owner.transform.position; RoleController roleController = dogGameObject.GetComponent <RoleController>(); Debug.Assert(roleController != null, "召唤的不是角色"); RoleController ownerController = Owner.GetComponent <RoleController>(); SceneManager.Instance.ObjectEnterSceneWithWorldPosition(roleController, ownerController.SceneId, Owner.transform.position); // 播放渐显动画 add by TangJian 2019/3/22 17:43 roleController.GetComponentInChildren <SkeletonRenderer>().GetComponent <Renderer>().material.SetColor("_Color", new Color(1, 1, 1, 0)); roleController.GetComponentInChildren <SkeletonRenderer>().GetComponent <Renderer>().material.DOFade(1, 2); roleController.RoleData.TeamId = TeamId; // Renderer renderer = roleController.SkeletonAnimator.GetComponent<Renderer>(); // // roleController.gameObject.DOFade(0, 5f); // renderer.DOFade(0, 5f); // renderer.DOFade(1, 5f); }