public override bool OnEnter()
 {
     CurrArgs.m_bValue1 = false;
     myTree             = CurrCtrl.GetComponentInChildren <BehaviorTree> ();
     myAni             = CurrCtrl.GetChild(0).GetComponent <Animator> ();
     skeletonAnimation = CurrCtrl.GetChild(0).GetComponent <SkeletonAnimation> ();
     agent             = CurrCtrl.GetComponentInChildren <PolyNavAgent> ();
     m_BufferCrl       = CurrCtrl.GetComponentInChildren <BufferController> ();
     actionCtl         = CurrCtrl.GetComponent <MonsterActionCtl> ();
     //怪物停止移动
     if (!actionCtl.superArmor)
     {
         CurrArgs.m_bValue1 = true;
         if (CurrArgs.m_iBufferUI == 1)
         {
             freeezBuff = Resources.Load("MonsterResources/MonsterBuffs/MonsterFreezeBuff") as GameObject;
             temp       = GameObject.Instantiate(freeezBuff, new Vector3(-100, 100, 0) + new Vector3(0, 0, -0.01f), Quaternion.identity) as GameObject;
             temp.transform.localScale = new Vector3(m_BufferCrl.buffScale, m_BufferCrl.buffScale, m_BufferCrl.buffScale);
             temp.transform.position   = CurrCtrl.GetComponent <MonsterMessage> ().monsterFoot.transform.position + new Vector3(0f, 0f, -0.01f);
             temp.transform.SetParent(CurrCtrl.GetComponent <MonsterMessage> ().monsterFoot.transform);
         }
         actionCtl.EnterFreeze();
     }
     return(true);
 }
    public override bool OnEnter()
    {
        m_BufferCrl = CurrCtrl.GetComponentInChildren <BufferController> ();
        if (CurrArgs.m_bUsePercent)
        {
            CurrCtrl.GetComponentInChildren <HealthState> ().ADDAttackNumEvent(0, 0, CurrArgs.m_fValue1, 0, 0);
        }
        else
        {
            CurrCtrl.GetComponentInChildren <HealthState> ().ADDAttackNumEvent((int)CurrArgs.m_fValue1, 0, 0, 0, 0);
        }
        if (CurrArgs.m_iBufferUI == 1)
        {
            attackBuff1 = Resources.Load("MonsterResources/MonsterBuffs/MonsterAttackBuff1") as GameObject;
            attackBuff2 = Resources.Load("MonsterResources/MonsterBuffs/MonsterAttackBuff2") as GameObject;

            temp1 = GameObject.Instantiate(attackBuff1, CurrCtrl.GetComponent <MonsterMessage> ().monsterFoot.transform.position, Quaternion.identity) as GameObject;
            temp2 = GameObject.Instantiate(attackBuff2, CurrCtrl.GetComponent <MonsterMessage> ().monsterFoot.transform.position, Quaternion.identity) as GameObject;

            if (CurrCtrl.transform.rotation.y != 0f)
            {
                temp1.transform.rotation = new Quaternion(0f, 180f, 0f, 0f);
                temp2.transform.rotation = new Quaternion(0f, 180f, 0f, 0f);
            }
            temp1.transform.SetParent(CurrCtrl.GetComponent <MonsterMessage> ().monsterFoot.transform);
            temp2.transform.SetParent(CurrCtrl.GetComponent <MonsterMessage> ().monsterFoot.transform);
            temp1.transform.localScale = new Vector3(m_BufferCrl.buffScale, m_BufferCrl.buffScale, 1f);
            temp2.transform.localScale = new Vector3(m_BufferCrl.buffScale, m_BufferCrl.buffScale, 1f);
            temp1.transform.position   = new Vector3(temp1.transform.position.x + m_BufferCrl.xDis, temp1.transform.position.y + m_BufferCrl.yDis, temp1.transform.position.z);
            temp2.transform.position   = new Vector3(temp2.transform.position.x + m_BufferCrl.xDis, temp2.transform.position.y + m_BufferCrl.yDis, temp2.transform.position.z);
        }
        return(true);
    }
 public override bool OnEnter()
 {
     CurrArgs.m_bValue1 = false;
     myTree             = CurrCtrl.GetComponentInChildren <BehaviorTree> ();
     myAni             = CurrCtrl.GetChild(0).GetComponent <Animator> ();
     skeletonAnimation = CurrCtrl.GetChild(0).GetComponent <SkeletonAnimation> ();
     agent             = CurrCtrl.GetComponentInChildren <PolyNavAgent> ();
     m_BufferCrl       = CurrCtrl.GetComponentInChildren <BufferController> ();
     actionCtl         = CurrCtrl.GetComponent <MonsterActionCtl> ();
     //怪物停止移动
     if (!actionCtl.superArmor)
     {
         if (CurrArgs.m_iBufferUI == 1)
         {
             dizznessBuff = Resources.Load("MonsterResources/MonsterBuffs/MonsterDizznessBuff") as GameObject;
             temp         = GameObject.Instantiate(dizznessBuff, CurrCtrl.GetComponent <MonsterMessage> ().monsterHead.transform.position, Quaternion.identity) as GameObject;
             if (CurrCtrl.transform.rotation.y != 0f)
             {
                 temp.transform.rotation = new Quaternion(0f, 180f, 0f, 0f);
             }
             temp.transform.SetParent(CurrCtrl.GetComponent <MonsterMessage> ().monsterHead.transform);
             temp.transform.localScale = new Vector3(m_BufferCrl.buffScale, m_BufferCrl.buffScale, m_BufferCrl.buffScale);
             temp.transform.position   = new Vector3(temp.transform.position.x + m_BufferCrl.xDis, temp.transform.position.y + m_BufferCrl.yDis, temp.transform.position.z);
         }
         CurrArgs.m_bValue1 = true;
         actionCtl.EntryFetter();
     }
     return(true);
 }
 public override bool OnEnter()
 {
     mm           = CurrCtrl.GetComponent <MonsterMessage>();
     mm.bufferCtl = CurrCtrl.GetComponentInChildren <BufferController> ();
     if (CurrArgs.m_bUsePercent)
     {
         mm.my_HealState.AddHp((int)(CurrCtrl.GetComponentInChildren <HealthState> ().FullHp *CurrArgs.m_fValue1));
     }
     else
     {
         mm.my_HealState.AddHp((int)(CurrArgs.m_fValue1));
     }
     if (CurrArgs.m_bUsePercent)
     {
         CreateProp.createProp.SubBloodView(mm.my_HealState.GrowBlood, mm.monsterBody.transform.position + new Vector3(mm.beiji.PX, mm.beiji.PY, 0), Color.green, Vector3.zero, false, true);
     }
     else
     {
         CreateProp.createProp.SubBloodView(mm.my_HealState.GrowBlood, mm.monsterBody.transform.position + new Vector3(mm.beiji.PX, mm.beiji.PY, 0), Color.green, Vector3.zero, false, true);
     }
     if (CurrArgs.m_iBufferUI == 1)
     {
         healBuff = Resources.Load("MonsterResources/MonsterBuffs/MonsterHealBuff") as GameObject;
         GameObject temp1 = GameObject.Instantiate(healBuff, CurrCtrl.GetComponent <MonsterMessage> ().monsterFoot.transform.position, Quaternion.identity) as GameObject;
         if (CurrCtrl.transform.rotation.y != 0f)
         {
             temp1.transform.rotation = new Quaternion(0f, 180f, 0f, 0f);
         }
         temp1.transform.localScale = new Vector3(mm.bufferCtl.buffScale * CurrArgs.m_fValue2, mm.bufferCtl.buffScale * CurrArgs.m_fValue2, 1f);
         temp1.transform.position   = new Vector3(temp1.transform.position.x + mm.bufferCtl.xDis, temp1.transform.position.y + mm.bufferCtl.yDis, temp1.transform.position.z);
         temp1.transform.SetParent(CurrCtrl.GetComponent <MonsterMessage> ().monsterFoot.transform);
         GameObject.Destroy(temp1, 3f);
     }
     return(true);
 }
 public override bool OnEnter()
 {
     m_BufferCrl = CurrCtrl.GetComponentInChildren <BufferController> ();
     CurrCtrl.GetComponentInChildren <HealthState> ().AddSpeedEvent(0, CurrArgs.m_fValue1);
     if (CurrArgs.m_iBufferUI == 1)
     {
         speedBuff1 = Resources.Load("MonsterResources/MonsterBuffs/MonsterSpeedUpBuff1") as GameObject;
         speedBuff2 = Resources.Load("MonsterResources/MonsterBuffs/MonsterSpeedUpBuff2") as GameObject;
         temp1      = GameObject.Instantiate(speedBuff1, CurrCtrl.GetComponent <MonsterMessage> ().monsterFoot.transform.position, Quaternion.identity) as GameObject;
         temp2      = GameObject.Instantiate(speedBuff2, CurrCtrl.GetComponent <MonsterMessage> ().monsterFoot.transform.position, Quaternion.identity) as GameObject;
         if (CurrCtrl.transform.rotation.y != 0f)
         {
             temp1.transform.rotation = new Quaternion(0f, 180f, 0f, 0f);
             temp2.transform.rotation = new Quaternion(0f, 180f, 0f, 0f);
         }
         temp1.transform.SetParent(CurrCtrl.GetComponent <MonsterMessage> ().monsterFoot.transform);
         temp2.transform.SetParent(CurrCtrl.GetComponent <MonsterMessage> ().monsterFoot.transform);
         temp1.transform.localScale = new Vector3(m_BufferCrl.buffScale, m_BufferCrl.buffScale, 1f);
         temp2.transform.localScale = new Vector3(m_BufferCrl.buffScale, m_BufferCrl.buffScale, 1f);
         temp1.transform.position   = new Vector3(temp1.transform.position.x + m_BufferCrl.xDis, temp1.transform.position.y + m_BufferCrl.yDis, temp1.transform.position.z);
         temp2.transform.position   = new Vector3(temp2.transform.position.x + m_BufferCrl.xDis, temp2.transform.position.y + m_BufferCrl.yDis, temp2.transform.position.z);
         GameObject.Destroy(temp1, 3f);
     }
     return(true);
 }
예제 #6
0
 public override bool OnEnter()
 {
     m_BufferCrl = CurrCtrl.GetComponentInChildren <BufferController> ();
     if (CurrArgs.m_bUsePercent)
     {
         CurrCtrl.GetComponentInChildren <HealthState> ().AddHp((int)(CurrCtrl.GetComponentInChildren <HealthState> ().FullHp *CurrArgs.m_fValue1));
     }
     else
     {
         CurrCtrl.GetComponentInChildren <HealthState> ().AddHp((int)(CurrArgs.m_fValue1));
     }
     if (CurrArgs.m_iBufferUI == 1)
     {
         healBuff = Resources.Load("MonsterResources/MonsterBuffs/MonsterHealBuff") as GameObject;
         GameObject temp1 = GameObject.Instantiate(healBuff, CurrCtrl.GetComponent <MonsterMessage> ().monsterFoot.transform.position, Quaternion.identity) as GameObject;
         if (CurrCtrl.transform.rotation.y != 0f)
         {
             temp1.transform.rotation = new Quaternion(0f, 180f, 0f, 0f);
         }
         temp1.transform.localScale = new Vector3(m_BufferCrl.buffScale, m_BufferCrl.buffScale, 1f);
         temp1.transform.position   = new Vector3(temp1.transform.position.x + m_BufferCrl.xDis, temp1.transform.position.y + m_BufferCrl.yDis, temp1.transform.position.z);
         temp1.transform.SetParent(CurrCtrl.GetComponent <MonsterMessage> ().monsterFoot.transform);
         GameObject.Destroy(temp1, 3f);
     }
     return(true);
 }
    public override bool OnEnter()
    {
        CurrArgs.m_bValue2 = false;
        myTree             = CurrCtrl.GetComponentInChildren <BehaviorTree>();
        myAni             = CurrCtrl.GetChild(0).GetComponent <Animator>();
        skeletonAnimation = CurrCtrl.GetChild(0).GetComponent <SkeletonAnimation>();
        agent             = CurrCtrl.GetComponentInChildren <PolyNavAgent>();
        m_BufferCrl       = CurrCtrl.GetComponentInChildren <BufferController>();
        actionCtl         = CurrCtrl.GetComponent <MonsterActionCtl>();
        //怪物停止移动
        if (CurrArgs.m_bValue1)
        {
            UseUI();
            CurrArgs.m_bValue2 = true;
            actionCtl.EnterFetter();
        }
        else
        {
            if (!actionCtl.superArmor)
            {
                UseUI();
                CurrArgs.m_bValue2 = true;
                actionCtl.EnterFetter();
            }
        }

        return(true);
    }
예제 #8
0
 public override bool OnEnter()
 {
     m_BufferCrl = CurrCtrl.GetComponentInChildren <BufferController> ();
     CurrCtrl.GetComponentInChildren <HealthState> ().AddDefenseEvent((int)-CurrArgs.m_fValue1, 0, 0);
     if (CurrArgs.m_iBufferUI == 1)
     {
         sunderArmorBuff = Resources.Load("MonsterResources/MonsterBuffs/MonsterSunderArmorBuff") as GameObject;
         GameObject temp1 = GameObject.Instantiate(sunderArmorBuff, CurrCtrl.GetComponent <MonsterMessage> ().monsterBody.transform.position, Quaternion.identity) as GameObject;
         temp1.transform.localScale = new Vector3(m_BufferCrl.buffScale, m_BufferCrl.buffScale, 1f);
         temp1.transform.position   = new Vector3(temp1.transform.position.x + m_BufferCrl.xDis, temp1.transform.position.y + m_BufferCrl.yDis, temp1.transform.position.z);
         temp1.transform.SetParent(CurrCtrl.GetComponent <MonsterMessage> ().monsterBody.transform);
     }
     return(true);
 }
 public override bool OnRenovate(BufferArgs args)
 {
     CurrCtrl.GetComponentInChildren <HealthState>().AddDefenseEvent((int)CurrArgs.m_fValue1, 0, 0);
     CurrArgs.m_ContinuousTime = args.m_ContinuousTime;
     CurrArgs.m_fValue1        = args.m_fValue1;
     CurrCtrl.GetComponentInChildren <HealthState>().AddDefenseEvent((int)-CurrArgs.m_fValue1, 0, 0);
     if (CurrArgs.m_iBufferUI == 1)
     {
         GameObject temp1 = GameObject.Instantiate(sunderArmorBuff, CurrCtrl.GetComponent <MonsterMessage>().monsterBody.transform.position, Quaternion.identity) as GameObject;
         temp1.transform.localScale = new Vector3(m_BufferCrl.buffScale, m_BufferCrl.buffScale, 1f);
         temp1.transform.position   = new Vector3(temp1.transform.position.x + m_BufferCrl.xDis, temp1.transform.position.y + m_BufferCrl.yDis, temp1.transform.position.z);
         temp1.transform.SetParent(CurrCtrl.GetComponent <MonsterMessage>().monsterBody.transform);
     }
     return(true);
 }
예제 #10
0
 public override bool OnEnter()
 {
     m_BufferCrl = CurrCtrl.GetComponentInChildren <BufferController>();
     hs          = CurrCtrl.GetComponentInChildren <HealthState>();
     hs.HuDun    = (int)CurrArgs.m_fValue1;
     lastHuDun   = hs.HuDun;
     if (CurrArgs.m_iBufferUI == 1)
     {
         shieldBuff = Resources.Load("MonsterResources/MonsterBuffs/MonsterShieldBuff1") as GameObject;
         temp       = Object.Instantiate(shieldBuff, CurrCtrl.GetComponent <MonsterMessage>().monsterFoot.transform.position, CurrCtrl.transform.rotation) as GameObject;
         temp.transform.SetParent(CurrCtrl.GetComponent <MonsterMessage>().monsterFoot.transform);
         temp.transform.localScale = new Vector3(m_BufferCrl.buffScale, m_BufferCrl.buffScale, 1f);
     }
     return(true);
 }
 private void UseUI()
 {
     if (CurrArgs.m_iBufferUI == 1)
     {
         dizznessBuff = Resources.Load("MonsterResources/MonsterBuffs/MonsterDizznessBuff") as GameObject;
         temp         = GameObject.Instantiate(dizznessBuff, CurrCtrl.GetComponent <MonsterMessage>().monsterHead.transform.position, Quaternion.identity) as GameObject;
         if (CurrCtrl.transform.rotation.y != 0f)
         {
             temp.transform.rotation = new Quaternion(0f, 180f, 0f, 0f);
         }
         temp.transform.SetParent(CurrCtrl.GetComponent <MonsterMessage>().monsterHead.transform);
         temp.transform.localScale = new Vector3(m_BufferCrl.buffScale, m_BufferCrl.buffScale, m_BufferCrl.buffScale);
         temp.transform.position   = new Vector3(temp.transform.position.x + m_BufferCrl.xDis, temp.transform.position.y + m_BufferCrl.yDis, temp.transform.position.z);
     }
 }
 public override bool OnEnter()
 {
     lastTime    = CurrArgs.m_ContinuousTime;
     m_BufferCrl = CurrCtrl.GetComponentInChildren <BufferController> ();
     if (CurrArgs.m_iBufferUI == 1)
     {
         bleedBuff = Resources.Load("MonsterResources/MonsterBuffs/MonsterFiringBuff") as GameObject;
         temp      = GameObject.Instantiate(bleedBuff, CurrCtrl.GetComponent <MonsterMessage> ().monsterBody.transform.position, Quaternion.identity) as GameObject;
         if (CurrCtrl.transform.rotation.y != 0f)
         {
             temp.transform.rotation = new Quaternion(0f, 180f, 0f, 0f);
         }
         temp.transform.SetParent(CurrCtrl.GetComponent <MonsterMessage> ().monsterBody.transform);
         temp.transform.position   = new Vector3(temp.transform.position.x + m_BufferCrl.xDis, temp.transform.position.y + m_BufferCrl.yDis, temp.transform.position.z);
         temp.transform.localScale = new Vector3(m_BufferCrl.buffScale, m_BufferCrl.buffScale, 1f);
     }
     CurrCtrl.GetComponentInChildren <BeiJi> ().OnSubHp(CurrArgs.m_iValue1, new Color(1f, 0.5f, 0f, 1f));
     return(true);
 }
 public override bool OnEnter()
 {
     m_BufferCrl = CurrCtrl.GetComponentInChildren <BufferController> ();
     CurrCtrl.GetComponentInChildren <HealthState> ().AddSpeedEvent(0, -CurrArgs.m_fValue1);
     if (CurrArgs.m_iBufferUI == 1)
     {
         speedBuff = Resources.Load("MonsterResources/MonsterBuffs/MonsterSlowDownBuff") as GameObject;
         temp      = GameObject.Instantiate(speedBuff, CurrCtrl.GetComponent <MonsterMessage> ().monsterFoot.transform.position, Quaternion.identity) as GameObject;
         temp.transform.SetParent(CurrCtrl.GetComponent <MonsterMessage> ().monsterFoot.transform);
         temp.transform.localScale = new Vector3(m_BufferCrl.buffScale, m_BufferCrl.buffScale, 1f);
         temp.transform.position   = new Vector3(temp.transform.position.x + m_BufferCrl.xDis, temp.transform.position.y + m_BufferCrl.yDis, temp.transform.position.z);
     }
     else if (CurrArgs.m_iBufferUI == 2)
     {
         speedBuff = Resources.Load("MonsterResources/MonsterBuffs/MonsterCrystalBuff") as GameObject;
         temp      = GameObject.Instantiate(speedBuff, CurrCtrl.GetComponent <MonsterMessage> ().monsterBody.transform.position, Quaternion.identity) as GameObject;
         temp.transform.SetParent(CurrCtrl.GetComponent <MonsterMessage> ().monsterBody.transform);
         temp.transform.localScale = new Vector3(m_BufferCrl.buffScale, m_BufferCrl.buffScale, 1f);
         temp.transform.position   = new Vector3(temp.transform.position.x + m_BufferCrl.xDis, temp.transform.position.y + m_BufferCrl.yDis, temp.transform.position.z);
     }
     return(true);
 }