Exemple #1
0
 void Play()
 {
     if (BaseGlobal == null)
     {
         return;
     }
     if (Clips == null)
     {
         CLog.Error("BaseAudioPlay没有配置音频文件:{0}", name);
     }
     if (!Is2D)
     {
         AudioSource = BaseGlobal.AudioMgr.PlaySFX(
             BaseMathUtils.RandArray(Clips),
             Pos,
             IsLoop,
             IsCache,
             IsForce,
             Volume * BaseGlobal.AudioMgr.GetRealVolumeSFX());
     }
     else
     {
         AudioSource = BaseGlobal.AudioMgr.PlayUI(BaseMathUtils.RandArray(Clips), IsLoop);
     }
 }
Exemple #2
0
        public override string GetDesc()
        {
            string retStr = "";

            if (CostDatas == null)
            {
                return(retStr);
            }
            foreach (var item in CostDatas)
            {
                if (item.RealVal == 0)
                {
                    continue;
                }
                if (!item.IsCondition)
                {
                    continue;
                }
                bool tempBool = true;
                if (BaseMathUtils.Round(GetAttrVal(item.Type), 2) < item.RealVal)
                {
                    tempBool = false;
                }
                string tempstr = BaseLanguageMgr.Get("AC_IsAttrToAct", (item.Type as Enum).GetName(), ACCompareType.MoreEqual.GetName(), item.ToString(false, false, false));
                if (tempBool)
                {
                    retStr += BaseConstMgr.STR_Indent + "<Color=green>" + tempstr + "</Color>";
                }
                else
                {
                    retStr += BaseConstMgr.STR_Indent + "<Color=red>" + tempstr + "</Color>";
                }
            }
            return(retStr);
        }
Exemple #3
0
        IEnumerator <float> FlickerCoroutine()
        {
            //pause before start
            yield return(Timing.WaitForSeconds(pauzeBeforeStart)); //new WaitForSeconds(pauzeBeforeStart);

            //flicker
            float t = 0;

            while (t < 1)
            {
                float speed = Mathf.Lerp(flickerSpeedStart, flickerSpeedEnd, BaseMathUtils.Coserp(0, 1, t));
                float i     = Mathf.Sin(Time.time * speed);
                foreach (var g in GFX)
                {
                    g.enabled = (i > 0);
                }
                t += Time.deltaTime / Duration;
                yield return(Timing.WaitForOneFrame);
            }

            //show
            //foreach (var g in GFX) g.enabled=(true);

            //destroy
            if (DestroyOnFinish)
            {
                //Destroy(gameObject);
                BaseGlobal.Ins.PoolMgr.Perform.Despawn(this);
            }
        }
Exemple #4
0
 public virtual void TouchGround()
 {
     //紧贴地面
     if (IsTouchGroundY())
     {
         Vector3 pos = BaseMathUtils.GetRaycastY(Trans, 0.1f, TouchGroundLayer);
         Pos = new Vector3(Pos.x, pos.y, Pos.z);
     }
 }
Exemple #5
0
        public string GetFemale(bool isTrans = false)
        {
            string ret = BaseMathUtils.RandArray(Last) + BaseLanguageMgr.Space + BaseMathUtils.RandArray(Female);

            if (isTrans)
            {
                return(BaseLanguageMgr.Get(ret));
            }
            return(ret);
        }
Exemple #6
0
 public override void RandomTriggerAllAchievement()
 {
     ResetAllAchievement();
     foreach (var item in Client.Instance.Achievements.All)
     {
         bool b = BaseMathUtils.Rand(0.5f);
         if (b)
         {
             item.Trigger(b);
         }
     }
 }
Exemple #7
0
 public void Change(SeasonType type, bool isForce = false)
 {
     if (!isForce)
     {
         if (type == SeasonType)
         {
             return;
         }
     }
     SeasonType = type;
     CurData    = BaseMathUtils.RandArray(Data[type]);
     if (sunTween != null)
     {
         DOTween.Kill(sunTween);
     }
     if (snowTween != null)
     {
         DOTween.Kill(snowTween);
     }
     sunTween      = DOTween.To(() => Sun.intensity, x => Sun.intensity = x, CurData.SunIntensity, 1.0f);
     Wind.windMain = CurData.WindzonePower;
     snowTween     = DOTween.To(() => ActiveTerrainMat.GetFloat("_SnowAmount"), x => ActiveTerrainMat.SetFloat("_SnowAmount", x), CurData.AccumulatedSnow, 1.0f);
     Callback_OnSeasonChanged?.Invoke(type, CurData.Type);
 }
Exemple #8
0
 /// <summary>
 /// 随机选择
 /// </summary>
 public void RandSelect()
 {
     Select(BaseMathUtils.RandArray(SelectItems));
 }