Beispiel #1
0
 public override void Init()
 {
     base.Init();
     skinned = target.GetComponentsInChildren <SkinnedMeshRenderer>();
     SetSkinedAlpha(0.3f);
     skinedAlphaCd = CDTimer.GetInstance().AddCD(last, (a, b) => SetSkinedAlpha(1f));
 }
Beispiel #2
0
 public virtual void Spell(BattleAgent caster)
 {
     Caster = caster;
     if (!CanSpell())
     {
         return;
     }
     PreSpell();
     if (BattleUtil.useUnityUpdate)
     {
         for (int i = 0; i < BattleEffects.Length; i++)
         {
             if (BattleEffects[i].EffectTiming() == 0)
             {
                 DoEffect(BattleEffects[i]);
             }
             else if (BattleEffects[i].EffectTiming() == -1)
             {
             }
             else
             {
                 CDTimer.CD cd = CDTimer.GetInstance().AddCD(0.001f * BattleEffects[i].EffectTiming(), CDTimeDoEffect);
                 effectTimeCDs.Add(cd.Id, BattleEffects[i]);
             }
         }
     }
     else
     {
         //skillTimer = new System.Timers.Timer(BattleUtil.BattleTimeStep);
         //skillTimer.Elapsed += RepDoEffect;
         //skillTimer.AutoReset = true;
         //skillTimer.Enabled = true;
     }
 }
Beispiel #3
0
 public void ShowRebornCD(int rebornCD)
 {
     gameObject.SetActive(true);
     UITweener[] tweeners = spRebornCD.GetComponents <UITweener>();
     for (int i = 0; i < tweeners.Length; i++)
     {
         tweeners[i].ResetToBeginning();
         tweeners[i].enabled = true;
     }
     if (Camera.main.GetComponent <UIDraggableCamera>() != null)
     {
         UIDraggableCamera dc = GetComponentInChildren <UIDragCamera>().draggableCamera = Camera.main.GetComponent <UIDraggableCamera>();
         dc.scale = 0.01f * Vector2.one;
         if (SceneBaseManager.instance.sceneType == SceneType.MB1 || SceneBaseManager.instance.sceneType == SceneType.Dungeons_MB1)
         {
             dc.SetDragBounds(20, -20, -6, -10, 0);
         }
         else if (SceneBaseManager.instance.sceneType == SceneType.MB3)
         {
             dc.SetDragBounds(-22, -58, -2, -15, 5);
         }
     }
     cd = CDTimer.GetInstance().AddCD(1, (int count, long id) =>
     {
         //laRebornCD.text = string.Format(Localization.Get("RebornCD"), count);
         laRebornCD.text = count.ToString();
     }, rebornCD + 1, true);
     cd.OnRemove += (int count, long id) =>
     {
         spRebornCD.alpha = 0f;
         spRebornCD.transform.localScale    = new Vector3(0.1f, 1f, 1f);
         spRebornCD.transform.localPosition = new Vector3(0f, -350f, 0f);
         gameObject.SetActive(false);
     };
 }
Beispiel #4
0
 void ClearCd()
 {
     if (null != cd)
     {
         cd.OnCd = null;
         cd      = null;
     }
 }
Beispiel #5
0
 void StartRestoreCD()
 {
     restoreCD = 30;
     CDTimer.CD cd = CDTimer.GetInstance().AddCD(1, (int count, long cid) => { restoreCD--; }, 30);
     if (thisCs == CharacterManager.playerCS && FightTouch._instance != null)
     {
         FightTouch._instance.skillRestore.StartCd();
     }
     StartAllSkillCD();
 }
Beispiel #6
0
 void OnHeroDead(CharacterState cs)
 {
     if (cs.state == Modestatus.Player)
     {
         // SceneUIManager.instance.playerCenterHpBar.ShowPlayerCenterHpBar(false, cs);
         SceneUIManager.instance.pnReborn.ShowRebornCD(5);
         ThirdCamera.instance._MainPlayer = null;
     }
     cd = CDTimer.GetInstance().AddCD(1f * 5, (int count, long id) => RebornHero(cs));
 }
Beispiel #7
0
    void OnHeroDead(CharacterState cs)
    {
        HandleKillInfo(cs);
        if (cs.groupIndex == 0)
        {
            ScoreBlue++;
        }
        else
        {
            ScoreRed++;
        }
        RefreshInfo();
        if (cs.state == Modestatus.Player)
        {
            SceneUIManager.instance.pnReborn.ShowRebornCD(RebornCD);
            ThirdCamera.instance._MainPlayer = null;
        }

        int     mid      = cs.CharData.memberId;
        int     pos      = GetPos(cs);
        UILabel laReborn = rebornThumbs[pos].GetComponentInChildren <UILabel>();

        CDTimer.CD cd = CDTimer.GetInstance().AddCD(1f, (int count, long id) =>
        {
            if (isFinish)
            {
                return;
            }
            ChangeColorGray.Instance.ChangeSpriteColor(rebornThumbs[pos].SpHeadIcon, false);
            rebornThumbs[pos].LaRebornCD.text = (count - 1).ToString();
            if (cs.groupIndex != CharacterManager.playerGroupIndex)
            {
                rebornThumbs[pos].gameObject.SetActive(true);
            }
        }, RebornCD);
        cd.OnRemove += (int count, long id) =>
        {
            ChangeColorGray.Instance.ChangeSpriteColor(rebornThumbs[pos].SpHeadIcon, true);
            rebornThumbs[pos].LaRebornCD.text = "";
            if (cs.groupIndex != CharacterManager.playerGroupIndex)
            {
                rebornThumbs[pos].gameObject.SetActive(false);
            }
            HeroAttackLine randLine = UnityEngine.Random.Range(0, 2) > 0 ? HeroAttackLine.RightLine : HeroAttackLine.leftLine;
            CreatHero(cs.groupIndex == 1 ? herosDataBlue[mid] : herosDataRed[mid],
                      cs.groupIndex == 1 ? matesPos[mid].gameObject : matesPos[mid + 3].gameObject,
                      randLine);
        };
    }
Beispiel #8
0
 void Restore()
 {
     thisCs.Invincible = true;
     thisCs.moveSpeed  = thisCs.moveInitSpeed * 2;
     if (!restoreFlag)
     {
         restoreFlag = true;
         CDTimer.CD cd = CDTimer.GetInstance().AddCD(0.1f, (int count, long cid) =>
         {
             if (thisCs.currentHp < thisCs.maxHp)
             {
                 thisCs.Hp(-(int)(thisCs.maxHp * 0.1f), HUDType.Cure);
             }
         }, 10);
     }
 }
Beispiel #9
0
 public override void Excute(CharacterState cs, float mCurValue)
 {
     base.Excute(cs, mCurValue);
     restoreCd = CDTimer.GetInstance().AddCD(1f, DoEffect, Mathf.FloorToInt(last));
 }
Beispiel #10
0
 public void StartCD(int total)
 {
     cd             = CDTimer.GetInstance().AddCD(1f, RefreshCDLabel, total);
     cd.IsCountDown = false;
 }
Beispiel #11
0
 public virtual void Init()
 {
     cd = CDTimer.GetInstance().AddCD(last, (int c, long cid) => SkillBuffManager.GetInst().RemoveCalculateCurTargetProp(target, this));
     AddBuffEffect(GameLibrary.Effect_Buff + node.effect, GetBuffParent());
 }
Beispiel #12
0
 public void StartCD(int total)
 {
     cd = CDTimer.GetInstance().AddCD(1f, RefreshCDLabel, total);
 }