Exemplo n.º 1
0
        private void PlayImpl(int mask)
        {
            if (!bInit)
            {
                return;
            }
            AllEffectCount++;
            //if (!bWaitForComplete && !isLoop && DebugMode)
            //{
            //    GameUtil.StartCoroutineHelper(this,WaitForComplete());
            //    bWaitForComplete = true;
            //}

            //设备丢失了,不播放
            if (Initialize.isDeviceLost)
            {
                return;
            }

            if (/*DebugMode ||*/ ForceBestQuality)
            {
                PlayModlues(BestObj, BestModules, isEnemy, mask);
                PlayModlues(HighObj, HighModlues, isEnemy, mask);
                PlayModlues(GoodObj, GoodModlues, isEnemy, mask);
                PlayModlues(FastestObj, FastestModlues, isEnemy, mask);
                return;
            }
            realyQuality = ImageSetting.GetData().currEffectQuality;

            //等级无效,不播放
            if (realyQuality == EffectQuality.Invalid)
            {
                return;
            }

            ApplyMask(mask);

            if (realyQuality == EffectQuality.QUALITY_FASTEST)
            {
                PlayModlues(FastestObj, FastestModlues, isEnemy, mask);
            }
            else if (realyQuality == EffectQuality.QUALITY_MEDIUM)
            {
                PlayModlues(GoodObj, GoodModlues, isEnemy, mask);
                PlayModlues(FastestObj, FastestModlues, isEnemy, mask);
            }
            else if (realyQuality == EffectQuality.QUALITY_GOOD)
            {
                PlayModlues(HighObj, HighModlues, isEnemy, mask);
                PlayModlues(GoodObj, GoodModlues, isEnemy, mask);
                PlayModlues(FastestObj, FastestModlues, isEnemy, mask);
            }
            else if (realyQuality == EffectQuality.QUALITY_BEST)
            {
                PlayModlues(BestObj, BestModules, isEnemy, mask);
                PlayModlues(HighObj, HighModlues, isEnemy, mask);
                PlayModlues(GoodObj, GoodModlues, isEnemy, mask);
                PlayModlues(FastestObj, FastestModlues, isEnemy, mask);
            }
        }
Exemplo n.º 2
0
    protected void OnCreate()
    {
        if (parent == null)//目标丢失
        {
            return;
        }
        this.start = GameTimer.time;

        duration = host.config.EndTime;
        if (this.asset is GameObject)
        {
            this.gameObject = UnityEngine.Object.Instantiate(this.asset) as GameObject;
            EffectQuality effectQuality = this.gameObject.GetComponent <EffectQuality>();
            if (effectQuality)
            {
                effectQuality.Show = true;
            }
            DestoryByTime component = this.gameObject.GetComponent <DestoryByTime>();
            if (component != null)
            {
                duration = component.time;
                Object.DestroyImmediate(component);
            }
        }
        OnInit();
        isdone = true;
    }
Exemplo n.º 3
0
 /// <summary>
 /// 设置特效质量
 /// </summary>
 /// <param name="quality"></param>
 public static void SetEffectQuality(EffectQuality quality, bool bForce = false)
 {
     if (OldEffectQuality == quality && !bForce)
     {
         return;
     }
     OldEffectQuality           = quality;
     currData.currEffectQuality = quality;
     Effect.EffectNode.ChangeEffectQualityLevel();
 }