public int OnNotifySkillModelEmitDestroy(DestroyEmitEffect pMsg) { //从特效字典中取出特效,在创建特效时添加的 IEffect effect = EffectManager.Instance.GetEffect(pMsg.uniqueid); if (effect != null) { if (effect.mType == IEffect.ESkillEffectType.eET_FlyEffect) { FlyEffect flyEffect = effect as FlyEffect; //拖拽类型 if (flyEffect.emitType == 8) { flyEffect.DragRibbonBack(); } else { EffectManager.Instance.DestroyEffect(flyEffect); } } else { EffectManager.Instance.DestroyEffect(effect); } } return((int)ErrorCodeEnum.Normal); }
private void FlyScore(Vector3 pos) { if (CameraController.Instance == null) { return; } if (WindowManager.current2DCamera == null) { return; } Vector3 fromPos = CameraController.Instance.WorldToScreenPoint(pos); fromPos.z = 0.0f; fromPos = WindowManager.current2DCamera.ScreenToWorldPoint(fromPos); GameObject flyScore = (GameObject)GameObject.Instantiate(mFlySocre); flyScore.SetActive(true); flyScore.transform.parent = mScore.transform.parent; flyScore.transform.localPosition = Vector3.zero; flyScore.transform.localRotation = Quaternion.identity; flyScore.transform.localScale = Vector3.one; FlyEffect eff = flyScore.AddMissingComponent <FlyEffect>(); eff.Play(fromPos, mScore.transform.localPosition, 0.5f); }
public IEnumerator OnNetMsg_NotifySkillModelEmitCoroutine(EmitSkill pMsg) { UInt64 skillPlayerID = pMsg.guid; UInt64 skillTargetID = pMsg.targuid; Vector3 pos = this.ConvertPosToVector3(pMsg.tarpos); Vector3 dir = this.ConvertDirToVector3(pMsg.dir); //普通追踪特效 yield return(1); FlyEffect effect = EffectManager.Instance.CreateFlyEffect(skillPlayerID, skillTargetID, pMsg.effectid, (uint)pMsg.uniqueid, pos, dir, pMsg.ifAbsorbSkill); }
void getCollidersInARangeAndSendMessage() { if (!tempDisableFeature) { tempDisableFeature = true; Collider[] colliders = Physics.OverlapSphere(player.transform.position, 10); for (int i = 0; i < colliders.Length; i++) { //Debug.Log("Yes out"); if (colliders[i].gameObject.layer == monsterLayerID) { //Debug.Log("Yes"); FlyEffect flyEffect = colliders[i].gameObject.GetComponent <FlyEffect>(); if (flyEffect != null) { flyEffect.makeItFly(); } } } tempDisableFeature = false; } }
// 物品飞特效,飞效果播放完成后,自动销毁go; void moveToBag(GameObject go, object param) { FlyEffect fly = go.AddMissingComponent <FlyEffect>(); fly.Play(go.transform.position, (Vector3)param, 1f); }
void Awake() { instance = this; }