Exemple #1
0
 public void OpenBoxEffect()
 {
     if (sliverBoxCount > 0)
     {
         EffectCtrl ctrl = EffectManager.Instance.CreateEffect(this.transform.FindChild("root").transform, "Effect/UiEffect/OpenTheTreasureChest2");
         ctrl.transform.localPosition = new Vector3(107, -80, 0);
     }
     if (goldBoxCount > 0)
     {
         EffectCtrl ctrl = EffectManager.Instance.CreateEffect(this.transform, "Effect/UiEffect/OpenTheTreasureChest1");
         ctrl.transform.localPosition = new Vector3(-107, -80, 0);
     }
     if (boxAward != null)
     {
         if (boxAward.props != null)
         {
             foreach (PropAward prop in boxAward.props)
             {
                 GameObject obj  = Instantiate(propPrefab) as GameObject;
                 UITexture  icon = obj.transform.FindChild("icon").GetComponent <UITexture> ();
                 Prop       p    = PropManagerment.Instance.createProp(prop.sid);
                 ResourcesManager.Instance.LoadAssetBundleTexture(ResourcesManager.ICONIMAGEPATH + p.getIconId(), icon);
                 obj.transform.parent        = this.transform.FindChild("root").transform;
                 obj.transform.localScale    = Vector3.one;
                 obj.transform.localPosition = Vector3.zero;
                 icon.gameObject.SetActive(false);
                 obj.SetActive(true);
             }
         }
     }
 }
    void useSkill()
    {
//		print ("my name is " + characterData.serverID + ", I use skill:" + activeAction.Skill.serverData.sample.sid);
        //如果是召唤兽o
        if (characterData.isGuardianForce == true)
        {
            cardCtrl.GuardianForceMoveToBattle();
            return;
        }

        EffectCtrl effect = EffectManager.Instance.CreateEffect(hitPoint, activeAction.Skill.serverData.sample.getSpellEffect());
        float      time   = effect.life - effect.startlife;

        if (time < 0)
        {
            time = 0;
        }
        //变大,放施法特效,加技能板
        cardCtrl.SkillGrowUp(time);// 完成后调用 SkillGrowUpComplete();
        EffectManager.Instance.CreateSkillNameEffect(this, activeAction.Skill.serverData.sample.getName());

        if (characterData.role.sid == 3 && activeAction.Skill.serverData.sample.isFemaleSoldiersSkill())
        {
            hideCard();
        }
    }
Exemple #3
0
 void Awake()
 {
     if (instance == null)
     {
         instance = this;
     }
 }
Exemple #4
0
 public void AwardBoxMove()
 {
     if (sliverBoxCount > 0)
     {
         EffectCtrl silverCtrl = EffectManager.Instance.CreateEffect(GameObject.Find("3Dscreen/root/character/role").transform, "Effect/Other/Treasure_Silver");
         GameObject hero       = GameObject.Find("3Dscreen/root/character");
         silverCtrl.transform.localPosition = new Vector3(0.33f, 0, -0.35f);
         silverCtrl.transform.localScale    = Vector3.one;
     }
     if (goldBoxCount > 0)
     {
         EffectCtrl goldCtrl = EffectManager.Instance.CreateEffect(GameObject.Find("3Dscreen/root/character/role").transform, "Effect/Other/Treasure_Golden");
         GameObject hero     = GameObject.Find("3Dscreen/root/character");
         goldCtrl.transform.localPosition = new Vector3(-0.12f, 0, -0.35f);
         goldCtrl.transform.localScale    = Vector3.one;
     }
     if (aw == null)
     {
         return;
     }
     if (aw.playerLevelUpInfo != null)
     {
         List <int> list = FormationManagerment.Instance.getPlayerNewFormationAfterLevelup(aw.playerLevelUpInfo.oldLevel, aw.playerLevelUpInfo.newLevel);
         if (list != null)
         {
             newLineup.SetActive(true);
             ResourcesManager.Instance.LoadAssetBundleTexture(ResourcesManager.TEXTURE_TEAM_FORMATION_PATH + list [0].ToString(), formationSprite);
         }
     }
 }
Exemple #5
0
    /** 根据等级获得相应颜色的特效组 */
    private EffectCtrl[] getEffectByLv(int lv)
    {
        EffectCtrl[] effs = new EffectCtrl[3];
        switch (lv)
        {
        case 3:
            effs [0] = effect_Small [0];
            effs [1] = effect_Medium [0];
            effs [2] = effect_Big [0];
            return(effs);

        case 4:
            effs [0] = effect_Small [1];
            effs [1] = effect_Medium [1];
            effs [2] = effect_Big [1];
            return(effs);

        case 5:
            effs [0] = effect_Small [2];
            effs [1] = effect_Medium [2];
            effs [2] = effect_Big [2];
            return(effs);

        default:
            effs [0] = effect_Small [2];
            effs [1] = effect_Medium [2];
            effs [2] = effect_Big [2];
            return(effs);
        }
    }
    public override void Initialize(FieldMapTable.FieldGimmickPointTableData pointData)
    {
        //IL_0029: Unknown result type (might be due to invalid IL or missing references)
        //IL_002e: Expected O, but got Unknown
        //IL_007e: Unknown result type (might be due to invalid IL or missing references)
        //IL_00a0: Unknown result type (might be due to invalid IL or missing references)
        base.Initialize(pointData);
        actionData = Singleton <FieldMapTable> .I.GetFieldGimmickActionData((uint)base.m_pointData.value1);

        Transform effect = EffectManager.GetEffect("ef_btl_bg_geyser_01", this.get_transform());

        if (effect != null)
        {
            effectCtrl = effect.GetComponent <EffectCtrl>();
        }
        if (MonoBehaviourSingleton <StageObjectManager> .IsValid())
        {
            self = MonoBehaviourSingleton <StageObjectManager> .I.self;
        }
        if (self != null)
        {
            selfInstanceId = self.get_gameObject().GetInstanceID();
        }
        reactionType = actionData.reactionType;
        actCollider  = this.get_gameObject().AddComponent <CapsuleCollider>();
        Reset();
    }
 /// <summary>
 /// 移动特效
 /// </summary>
 private void moveEffect(Transform trans)
 {
     if (effectCtrl == null)
     {
         effectCtrl = EffectManager.Instance.CreateEffect(trans, "Effect/UiEffect/battleDrawWindow_StarsDraw");
     }
     effectCtrl.transform.position = trans.position;
 }
    //召唤兽进场后
    public void GuardianForceReady()
    {
        EffectCtrl effect = EffectManager.Instance.CreateEffect(hitPoint, activeAction.Skill.serverData.sample.getSpellEffect());

        //放施法特效,加技能板
        cardCtrl.SkillGrowUp(effect.life);
        //EffectManager.Instance.CreateSkillNameEffect (this, activeAction.Skill.serverData.sample.getName ());
    }
Exemple #9
0
 /* methods */
 /** 更新 */
 void Update()
 {
     if (Input.GetMouseButtonDown(0))
     {
         EffectCtrl obj = EffectManager.Instance.CreateEffect(touchEffect, "Effect/UiEffect/touchEffect");
         obj.transform.position = UiManager.getMousePosition();
         obj.transform.parent   = touchEffect;
     }
 }
Exemple #10
0
    public EffectCtrl CreateSkillBanner(string text)
    {
        passObj    _obj  = MonoBase.Create3Dobj("Effect/UiEffect/battleSkillBanner");
        EffectCtrl _ctrl = _obj.obj.GetComponent <EffectCtrl> ();

        _ctrl.transform.parent        = UiManager.Instance.UIEffectRoot.transform;
        _ctrl.transform.localPosition = new Vector3(0, 0, 0);
        _ctrl.transform.localScale    = Vector3.one;
        _ctrl.transform.GetChild(0).GetComponent <UILabel> ().text = text;
        AddEffect(_ctrl);
        return(_ctrl);
    }
Exemple #11
0
    /** 根据外部品质进行环绕特效显示 */
    public void showEffectByQuality(int _quality)
    {
        if (qualityEffectPoint == null)
        {
            return;
        }
        _quality = _quality <= QualityType.GOOD ? QualityType.GOOD : _quality;
        Utils.RemoveAllChild(qualityEffectPoint.transform);
        EffectCtrl effectCtrl = EffectManager.Instance.CreateEffect(qualityEffectPoint.transform, qualityEffectPath, qualityEffectPaths [_quality - QualityType.GOOD]);

        effectCtrl.transform.localPosition = new Vector3(0, 5, 0);
        effectCtrl.transform.localScale    = new Vector3(1.8f, 1.8f, 1);
        effectCtrl.transform.parent        = qualityEffectPoint.transform;
    }
Exemple #12
0
    void showMoveEffect()
    {
        //		iTween.ShakePosition (moveButton.gameObject, iTween.Hash ("amount", new Vector3 (0.01f, 0.01f, 0.01f), "time", 0.2f));
        EffectCtrl a        = EffectManager.Instance.CreateEffect(moveButton.transform, "Effect/UiEffect/feature_open");
        Object     audioObj = a.gameObject.GetComponent("AudioPlayer");

        if (audioObj != null)
        {
            Destroy(audioObj);
        }
        StartCoroutine(Utils.DelayRun(() => {
            Destroy(a.gameObject, 2f);
        }, 1.5f));
    }
    /// <summary>
    /// 播放特效
    /// </summary>
    private IEnumerator playEffect(int i)
    {
        yield return(new WaitForSeconds(0.2f));

        if (mEffectDic.ContainsKey(i))
        {
            yield break;
        }
        effectCtrl = EffectManager.Instance.CreateEffect(prizeList [i].transform, "Effect/UiEffect/Surroundeffect", "Surroundeffect_y");
        effectCtrl.transform.localPosition = Vector3.zero;
        effectCtrl.transform.localScale    = new Vector3(1.5f, 1.5f, 1);
        effectCtrl.transform.parent        = prizeList [i].transform;
        mEffectDic.Add(i, effectCtrl);
    }
Exemple #14
0
    /** 加载特效控制器  */
    public EffectCtrl loadEffectCtrl(Transform point, passObj _obj)
    {
        if (_obj == null || _obj.obj == null)
        {
            return(null);
        }
        EffectCtrl _ctrl = _obj.obj.GetComponent <EffectCtrl> ();

        _ctrl.transform.parent        = point;
        _ctrl.transform.localPosition = Vector3.zero;
        _ctrl.transform.localScale    = Vector3.one;
        _ctrl.initEffect(point);
        AddEffect(_ctrl);
        return(_ctrl);
    }
    void learnOver(string str)
    {
        if (str != null)
        {
            MessageWindow.ShowAlert(str);
            return;
        }
        TweenPosition tp = TweenPosition.Begin(skillButtonFood.gameObject, 0.4f, skillButtonMain.transform.localPosition);

        EventDelegate.Add(tp.onFinished, () => {
            EffectCtrl effect = EffectManager.Instance.CreateEffect(skillButtonFood.gameObject.transform, "Effect/Other/player_shengji");
            effect.transform.localPosition            += new Vector3(0, 0, -5000);
            effect.transform.GetChild(0).localPosition = Vector3.zero;
            StartCoroutine(Utils.DelayRun(backToCardAttrWindow, 2f));
        }, true);
    }
Exemple #16
0
    /** 根据自身品质显示对应的环绕特效 */
    void showEffectByQuality()
    {
        if (qualityEffectPoint == null)
        {
            return;
        }
        if (quality < QualityType.EPIC)
        {
            return;
        }
        Utils.RemoveAllChild(qualityEffectPoint.transform);
        EffectCtrl effectCtrl = EffectManager.Instance.CreateEffect(qualityEffectPoint.transform, qualityEffectPath, qualityEffectPaths [quality - QualityType.GOOD]);

        effectCtrl.transform.localPosition = new Vector3(0, 5, 0);
        effectCtrl.transform.localScale    = new Vector3(1.8f, 1.8f, 1);
    }
Exemple #17
0
 /// <summary>
 /// 缓存并创建特效控制器---快速连续多次缓冲加载请使用CacheEffectCtrl.例如:for中连续加载
 /// <param name="point"></param>
 /// <param name="path">路径</param>
 /// <param name="callBack">Call back</param>
 /// </summary>
 public void CreateEffectCtrlByCache(Transform point, string path, CallBack <passObj, EffectCtrl> callBack)
 {
     EffectManager.Instance.CacheEffect(path, () => {
         passObj passobj = MonoBase.Create3Dobj(path);
         if (passobj.obj == null)
         {
             Debug.LogError("error:" + path);
             return;
         }
         EffectCtrl ctrl = EffectManager.Instance.loadEffectCtrl(point, passobj);
         if (callBack != null)
         {
             callBack(passobj, ctrl);
             callBack = null;
         }
     });
 }
Exemple #18
0
    /** 根据自身品质显示对应的环绕特效 */
    public void showEffectByQuality()
    {
        if (qualityEffectPoint == null)
        {
            return;
        }
        if (data.getQualityId() < QualityType.COMMON)
        {
            return;
        }
        Utils.RemoveAllChild(qualityEffectPoint.transform);
        int        index      = (data.getQualityId() - QualityType.GOOD) < 1?0:(data.getQualityId() - QualityType.GOOD);
        EffectCtrl effectCtrl = EffectManager.Instance.CreateEffect(qualityEffectPoint.transform, qualityEffectPath, qualityEffectPaths [index]);

        effectCtrl.transform.localPosition = new Vector3(0, 5, 0);
        effectCtrl.transform.localScale    = new Vector3(1.8f, 1.8f, 1);
        effectCtrl.transform.parent        = qualityEffectPoint.transform;
    }
    private void showLevelupEffect()
    {
        if (expToLevel(newExp) > nowLv)
        {
            EffectCtrl levelEffect = null;

            int tmpIndex = -1;

            if (nowLv >= 0 && nowLv <= 30)
            {
                tmpIndex = 0;
            }
            else if (nowLv > 30 && nowLv <= 60)
            {
                tmpIndex = 1;
            }
            else if (nowLv > 60 && nowLv <= 80)
            {
                tmpIndex = 2;
            }
            else if (nowLv > 80 && nowLv <= 125)
            {
                tmpIndex = 3;
            }

            levelEffect = NGUITools.AddChild(Hallows.gameObject, HallowsLevelUpEffect [tmpIndex]).GetComponent <EffectCtrl>();


            levelEffect.transform.GetChild(0).particleSystem.Play();
            //等级提升特效
            EffectCtrl levelEffect1 = null;
            levelEffect1 = EffectManager.Instance.CreateEffect(labelLevel.transform, "Effect/Other/Flash");
            levelEffect1.transform.GetChild(0).particleSystem.Play();
            //防止狂点
            StartCoroutine(Utils.DelayRun(() => {
                MaskWindow.UnlockUI();
            }, 2f));
        }
        else
        {
            MaskWindow.UnlockUI();
        }
    }
Exemple #20
0
    private void Awake()
    {
        //IL_0001: Unknown result type (might be due to invalid IL or missing references)
        //IL_0006: Expected O, but got Unknown
        //IL_0009: Unknown result type (might be due to invalid IL or missing references)
        //IL_000e: Unknown result type (might be due to invalid IL or missing references)
        //IL_0015: Unknown result type (might be due to invalid IL or missing references)
        //IL_001a: Unknown result type (might be due to invalid IL or missing references)
        //IL_0021: Unknown result type (might be due to invalid IL or missing references)
        //IL_0026: Unknown result type (might be due to invalid IL or missing references)
        //IL_002d: Unknown result type (might be due to invalid IL or missing references)
        Transform val = this.get_transform();

        defaultPosition = val.get_localPosition();
        defaultRotation = val.get_localRotation();
        defaultScale    = val.get_localScale();
        defaultLayer    = this.get_gameObject().get_layer();
        this.GetComponentsInChildren <Component>(true, defaultComponents);
        fx   = this.GetComponent <rymFX>();
        ctrl = this.GetComponent <EffectCtrl>();
    }
Exemple #21
0
    public void destory()
    {
        if (UiManager.Instance.missionMainWindow == null)
        {
            return;
        }
        EffectCtrl ctrl = EffectManager.Instance.CreateEffect(UiManager.Instance.UIEffectRoot.transform, "Effect/UiEffect/luckybox_effect");

        if (ctrl != null)
        {
            ctrl.transform.position   = transform.position;
            ctrl.transform.localScale = Vector3.one;
            if (FuBenManagerment.Instance.checkStarMultipleTime())
            {
                Transform doubleTran = ctrl.gameObject.transform.FindChild("double");
                doubleTran.GetComponent <UILabel> ().text = "X" + FuBenManagerment.Instance.getStarHit();
                TweenPosition.Begin(doubleTran.gameObject, 0.5f, doubleTran.localPosition + new Vector3(Random.Range(10, 50), Random.Range(10, 50), 0)).PlayForward();
            }
        }
        Destroy(gameObject);
    }
Exemple #22
0
    /// <summary>
    /// 使用反击技能
    /// </summary>
    void useBackSkill()
    {
        //		print ("my name is " + characterData.serverID + ", I use skill:" + activeAction.Skill.serverData.sample.sid);
        //如果是召唤兽o
        if (characterData.isGuardianForce == true)
        {
            cardCtrl.GuardianForceMoveToBattle();
            return;
        }
        Skill      tempSkill = activeAction.Skill.serverData.sample.getBackSkillSid();
        EffectCtrl effect    = EffectManager.Instance.CreateEffect(hitPoint, tempSkill.getSpellEffect());
        float      time      = effect.life - effect.startlife;

        if (time < 0)
        {
            time = 0;
        }
        //变大,放施法特效,加技能板
        cardCtrl.BackSkillGrowUp(time);// 完成后调用 BackSkillGrowUpComplete();
        EffectManager.Instance.CreateSkillNameEffect(this, tempSkill.getName());
    }
Exemple #23
0
    static public EffectCtrl PlayEffect(this GameObject gameObject, string effectName)
    {
        EffectCtrl effect = new EffectCtrl();

        return(effect);
    }
Exemple #24
0
    void Update()
    {
        if (!canRefresh && canSeeAddon)
        {
            time -= Time.deltaTime;

            if (time <= 0)
            {
                showAttrTime = !showAttrTime;
                time         = SWITCHTIME;
                SwitchShow();
            }
        }

        if (isRefreshCombat)
        {
            refreshCombat();
        }

        if (!isCloseRefresh())
        {
            refreshAttr(0);
            refreshAttr(1);
            refreshAttr(2);
            refreshAttr(3);
            refreshAttr(4);
        }

        if (canRefresh == true)
        {
            if (step == nextSetp)
            {
                return;
            }

            //人物进场
            if (step == 0)
            {
                cardimage.alpha = 1;
                TweenScale ts = TweenScale.Begin(cardimage.gameObject, 0.2f, Vector3.one);
                ts.method = UITweener.Method.EaseIn;
                ts.from   = new Vector3(5, 5, 1);
                EventDelegate.Add(ts.onFinished, () => {
                    iTween.ShakePosition(cardimage.gameObject, iTween.Hash("amount", new Vector3(0.03f, 0.03f, 0.03f), "time", 0.2f));
                    iTween.ShakePosition(cardimage.gameObject, iTween.Hash("amount", new Vector3(0.01f, 0.01f, 0.01f), "time", 0.2f));
                    StartCoroutine(Utils.DelayRun(() => {
                        nextSetp++;
                    }, 0.3f));
                }, true);
            }

            //计算人物经验
            else if (step == 1)
            {
                if (cardLvUpInfo != null)
                {
                    expBar.init(cardLvUpInfo);
                    expBar.setLevelUpCallBack(showLevelupSign);
                    if (card.getLevel() != oldCard.getLevel())
                    {
                        StartCoroutine(Utils.DelayRun(() => {
                            if (expBar.getIsUp())
                            {
                                EffectCtrl effect = EffectManager.Instance.CreateEffect(cardimage.transform, "Effect/UiEffect/levelupEffect");
                                effect.transform.GetChild(0).particleSystem.Play();
                            }
                        }, 1f));
                    }
                    expLabel.text = EXPSampleManager.Instance.getExpBarShow(card.getEXPSid(), card.getEXP());
                    if (EvolutionManagerment.Instance.getMaxLevel(card) == 0)
                    {
                        evoLabel.text = LanguageConfigManager.Instance.getLanguage("Evo10");
                    }
                    else
                    {
                        evoLabel.text = card.isMainCard()?
                                        card.getSurLevel() + "/" + SurmountManagerment.Instance.getMaxSurLevel(card):
                                        card.getEvoLevel() + "/" + card.getMaxEvoLevel();
                    }
                    if (card.getLevel() == oldCard.getLevel())
                    {
                        nextSetp++;
                    }
                }
                else
                {
                    StartCoroutine(Utils.DelayRun(() => {
                        nextSetp++;
                    }, 0.3f));
                }
                updateSkills();
            }
            else if (step == 2)
            {
                if (card.getLevel() != oldCard.getLevel())
                {
                    playerEffect(addEvoTitle [0], addAttrLabels [0], _addAttr [0]);
                }
                else
                {
                    nextSetp++;
                }
            }
            else if (step == 3)
            {
                if (card.getLevel() != oldCard.getLevel())
                {
                    playerEffect(addEvoTitle [1], addAttrLabels [1], _addAttr [1]);
                }
                else
                {
                    nextSetp++;
                }
            }
            else if (step == 4)
            {
                if (card.getLevel() != oldCard.getLevel())
                {
                    playerEffect(addEvoTitle [2], addAttrLabels [2], _addAttr [2]);
                }
                else
                {
                    nextSetp++;
                }
            }
            else if (step == 5)
            {
                if (card.getLevel() != oldCard.getLevel())
                {
                    playerEffect(addEvoTitle [3], addAttrLabels [3], _addAttr [3]);
                }
                else
                {
                    nextSetp++;
                }
            }
            else if (step == 6)
            {
                if (card.getLevel() != oldCard.getLevel())
                {
                    playerEffect(addEvoTitle [4], addAttrLabels [4], _addAttr [4]);
                }
                else
                {
                    nextSetp++;
                }
            }
            else if (step == 7)
            {
                if (card.getLevel() != oldCard.getLevel())
                {
                    _openRefresh = new int[5] {
                        0, 0, 0, 0, 0
                    };
                    for (int i = 0; i < addAttrLabels.Length; i++)
                    {
                        TweenScale ts  = TweenScale.Begin(addAttrLabels [i].gameObject, 0.5f, Vector3.zero);
                        TweenScale ts2 = TweenScale.Begin(addEvoTitle [i].gameObject, 0.5f, Vector3.zero);
                    }
                    StartCoroutine(Utils.DelayRun(() => {
                        nextSetp++;
                    }, 2f));
                }
                else
                {
                    nextSetp++;
                }
            }
            else if (step == 8)
            {
                rushCombat(oldCard);
                canRefresh = false;
                StartCoroutine(Utils.DelayRun(() => {
                    canSeeAddon = true;
                    for (int i = 0; i < addAttrLabels.Length; i++)
                    {
                        if (string.IsNullOrEmpty(addAttrLabels[i].text))
                        {
                            continue;
                        }
                        addAttrLabels[i].transform.localScale = Vector3.one;
                        GameObject obj              = Create3Dobj("Effect/Other/Flash").obj;
                        obj.transform.parent        = addAttrLabels[i].transform;
                        obj.transform.localScale    = Vector3.one;
                        obj.transform.localPosition = new Vector3(0, 0, -600);
                    }
                    nextSetp++;
                }, 0.2f));
                MaskWindow.UnlockUI();
//				updateSkills ();
//				StartCoroutine (Utils.DelayRun (() => {
//					nextSetp++;}, 0.2f));
            }

            step++;
        }
    }
Exemple #25
0
 static public void OnComplete(this EffectCtrl effect, Action _callBack)
 {
     effect.onComplte = _callBack;
 }
Exemple #26
0
 static public EffectCtrl SetSortingOrder(this EffectCtrl effect, int _order)
 {
     return(effect);
 }
Exemple #27
0
 static public EffectCtrl SetLoop(this EffectCtrl effect, bool _loop)
 {
     effect.Loop = _loop;
     return(effect);
 }
 public static void ReleaseEffect(GameObject effect_object, bool isPlayEndAnimation = true, bool immediate = false)
 {
     //IL_0072: Unknown result type (might be due to invalid IL or missing references)
     if (!(effect_object == null))
     {
         if (!MonoBehaviourSingleton <EffectManager> .IsValid())
         {
             Object.Destroy(effect_object);
         }
         else
         {
             EffectManager       i         = MonoBehaviourSingleton <EffectManager> .I;
             EffectInfoComponent component = effect_object.GetComponent <EffectInfoComponent>();
             if (component != null && component.destroyLoopEnd)
             {
                 component.SetLoopAudioObject(null);
                 rymFX      component2 = effect_object.GetComponent <rymFX>();
                 EffectCtrl effectCtrl = null;
                 if (component2 == null)
                 {
                     effectCtrl = effect_object.GetComponent <EffectCtrl>();
                 }
                 if (effectCtrl == null && effect_object.get_transform().get_childCount() > 0)
                 {
                     effect_object.GetComponentsInChildren <Renderer>(Temporary.rendererList);
                     int j = 0;
                     for (int count = Temporary.rendererList.Count; j < count; j++)
                     {
                         Temporary.rendererList[j].set_enabled(false);
                     }
                     Temporary.rendererList.Clear();
                 }
                 effect_object.GetComponents <Trail>(Temporary.trailList);
                 bool flag = false;
                 if (component2 != null && component2.get_enabled())
                 {
                     component2.AutoDelete = true;
                     component2.LoopEnd    = true;
                     flag = true;
                 }
                 else if (effectCtrl != null && effectCtrl.get_enabled())
                 {
                     effectCtrl.EndLoop(isPlayEndAnimation);
                     flag = true;
                 }
                 if (flag && !immediate)
                 {
                     int k = 0;
                     for (int count2 = Temporary.trailList.Count; k < count2; k++)
                     {
                         Temporary.trailList[k].StartDeleteFade();
                     }
                     Temporary.trailList.Clear();
                 }
                 else
                 {
                     i.StockOrDestroy(effect_object, true);
                     int l = 0;
                     for (int count3 = Temporary.trailList.Count; l < count3; l++)
                     {
                         Temporary.trailList[l].SetAutoDelete();
                     }
                     Temporary.trailList.Clear();
                 }
             }
             else
             {
                 i.StockOrDestroy(effect_object, true);
             }
         }
     }
 }
Exemple #29
0
    private IEnumerator DoExitEvent(RegionMapPortal portal, rymFX effect, float delay = 0f, bool reverse = false, bool findDungeon = false)
    {
        if (effect != null)
        {
            EffectManager.ReleaseEffect(effect.get_gameObject(), true, false);
            effect = null;
        }
        yield return((object)new WaitForSeconds(delay));

        LoadObject loadObj = null;

        if (findDungeon)
        {
            LoadingQueue loadQueue = new LoadingQueue(this);
            FieldMapTable.FieldMapTableData mapData = Singleton <FieldMapTable> .I.GetFieldMapData((uint)portal.toLocation.mapId);

            loadObj = loadQueue.Load(RESOURCE_CATEGORY.WORLDMAP, "RegionMap_" + mapData.childRegionId.ToString("D3"), false);
            if (null != dungeonOpenEffect)
            {
                EffectCtrl eff = dungeonOpenEffect.GetComponent <EffectCtrl>();
                eff.Reset();
                for (int i = 0; i < eff.particles.Length; i++)
                {
                    ParticleSystem particle = eff.particles[i];
                    if (!(null == particle))
                    {
                        Renderer renderer = particle.GetComponent <Renderer>();
                        if (!(null == renderer))
                        {
                            renderer.set_sortingOrder(2);
                        }
                    }
                }
                dungeonOpenEffect.get_gameObject().SetActive(true);
                AudioClip clip_effect = eff.attachedAudioClip;
                if (clip_effect != null)
                {
                    int SE_CONFIG_AREA_LOCATION = eff.attachedAudioSettingID;
                    SoundManager.PlayOneShotUISE(clip_effect, SE_CONFIG_AREA_LOCATION);
                }
                yield return((object)new WaitForSeconds(eff.waitTime));
            }
            if (loadQueue.IsLoading())
            {
                yield return((object)loadQueue.Wait());
            }
        }
        TweenScale.Begin(playerMarker.get_gameObject(), MonoBehaviourSingleton <GlobalSettingsManager> .I.worldMapParam.playerMarkerScaleTime, Vector3.get_zero());
        yield return((object)new WaitForSeconds(MonoBehaviourSingleton <GlobalSettingsManager> .I.worldMapParam.playerMarkerScaleTime));

        float   timer   = 0f;
        Vector3 target2 = portal.toLocation.get_transform().get_position();

        playerMarker.SetParent(portal.toLocation.get_transform());
        if (reverse)
        {
            target2 = portal.fromLocation.get_transform().get_position();
            playerMarker.SetParent(portal.fromLocation.get_transform());
        }
        playerMarker.set_localPosition(MonoBehaviourSingleton <GlobalSettingsManager> .I.worldMapParam.playerMarkerOffset);
        target2 -= _camera.get_transform().get_forward() * MonoBehaviourSingleton <GlobalSettingsManager> .I.worldMapParam.eventCameraDistance;
        Vector3 startPos = _camera.get_transform().get_position();

        TweenScale.Begin(playerMarker.get_gameObject(), MonoBehaviourSingleton <GlobalSettingsManager> .I.worldMapParam.playerMarkerScaleTime, Vector3.get_one());
        while (timer <= MonoBehaviourSingleton <GlobalSettingsManager> .I.worldMapParam.eventCameraMoveTime)
        {
            timer += Time.get_deltaTime();
            _camera.get_transform().set_position(Vector3.Lerp(startPos, target2, timer / MonoBehaviourSingleton <GlobalSettingsManager> .I.worldMapParam.eventCameraMoveTime));
            yield return((object)null);
        }
        _camera.get_transform().set_position(target2);
        yield return((object)new WaitForSeconds(MonoBehaviourSingleton <GlobalSettingsManager> .I.worldMapParam.eventRemainTime));

        if (findDungeon)
        {
            yield return((object)this.StartCoroutine(DoFindNewDungeonEvent(portal, loadObj)));
        }
        OnQuery_EXIT();
    }
 public void Initialize(int id, BulletData bulletData, Transform transform)
 {
     //IL_001e: Unknown result type (might be due to invalid IL or missing references)
     //IL_00a6: Unknown result type (might be due to invalid IL or missing references)
     //IL_00ab: Expected O, but got Unknown
     //IL_00cd: Unknown result type (might be due to invalid IL or missing references)
     //IL_00dd: Unknown result type (might be due to invalid IL or missing references)
     //IL_012e: Unknown result type (might be due to invalid IL or missing references)
     //IL_0139: Unknown result type (might be due to invalid IL or missing references)
     //IL_013e: Unknown result type (might be due to invalid IL or missing references)
     //IL_0154: Unknown result type (might be due to invalid IL or missing references)
     //IL_0159: Unknown result type (might be due to invalid IL or missing references)
     //IL_016a: Unknown result type (might be due to invalid IL or missing references)
     //IL_0180: Unknown result type (might be due to invalid IL or missing references)
     //IL_0190: Unknown result type (might be due to invalid IL or missing references)
     //IL_01d4: Unknown result type (might be due to invalid IL or missing references)
     //IL_01e9: Unknown result type (might be due to invalid IL or missing references)
     //IL_01f9: Unknown result type (might be due to invalid IL or missing references)
     if (!MonoBehaviourSingleton <StageObjectManager> .IsValid())
     {
         Log.Error(LOG.INGAME, "StageObjectManager is invalid. Can't initialize PresentBulletObject.");
     }
     else
     {
         this.get_gameObject().set_name("PresentBulletObject:" + id.ToString());
         m_presentBulletId = id;
         m_bulletData      = bulletData;
         m_stageObjMgr     = MonoBehaviourSingleton <StageObjectManager> .I;
         m_lifeSpan        = m_bulletData.data.appearTime;
         if (m_bulletData.dataPresent != null)
         {
             m_lifeSpanType = m_bulletData.dataPresent.lifeSpanType;
             m_buffIds      = m_bulletData.dataPresent.buffIds;
         }
         m_cachedTransform = this.get_transform();
         m_cachedTransform.set_parent(m_stageObjMgr._transform);
         m_cachedTransform.set_position(transform.get_position());
         m_cachedTransform.set_localScale(Vector3.get_one());
         if (MonoBehaviourSingleton <EffectManager> .IsValid())
         {
             m_cachedEffectTransform = EffectManager.GetEffect(m_bulletData.data.effectName, MonoBehaviourSingleton <EffectManager> .I._transform);
         }
         if (m_cachedEffectTransform != null)
         {
             m_cachedEffectTransform.set_position(transform.get_position() + bulletData.data.dispOffset);
             m_cachedEffectTransform.set_localRotation(Quaternion.Euler(bulletData.data.dispRotation));
             m_effectAnimator = m_cachedEffectTransform.get_gameObject().GetComponent <Animator>();
             m_effectCtrl     = m_cachedEffectTransform.get_gameObject().GetComponent <EffectCtrl>();
         }
         this.get_gameObject().set_layer(31);
         m_ignoreLayerMask |= 41984;
         m_ignoreLayerMask |= 20480;
         m_ignoreLayerMask |= 2490880;
         m_cachedCollider   = this.get_gameObject().AddComponent <BoxCollider>();
         m_cachedCollider.set_size(COLLIDER_SIZE);
         m_cachedCollider.set_center(COLLIDER_CENTER);
         m_cachedCollider.set_isTrigger(true);
         m_cachedCollider.set_enabled(false);
         m_state = STATE.ACTIVE;
     }
 }