示例#1
0
 void CheckHealth()
 {
     if (BossHP.Instance.Q2 == true)
     {
         Cr_state = enemystate.VeryVeryAngry;
     }
 }
示例#2
0
 void GoDie()
 {
     if (BossHP.Instance.Hp <= 0)
     {
         Cr_state = enemystate.Die;
     }
 }
示例#3
0
 void CheckHealth()
 {
     if (BossHP.Instance.Q2 == true)
     {
         Cr_state = enemystate.VeryVeryAngry;
         Destroy(transform.GetChild(1).gameObject);
     }
 }
    void searchforplayer()
    {
        float distance = Vector3.Distance(transform.position, player.position);

        if (distance < chasingdistance)
        {
            m_currentstate = enemystate.chase;
        }
    }
    void updateattack()
    {
        float distance = Vector3.Distance(transform.position, player.position);

        if (distance < meelleradius)
        {
            enemy_cooldown -= Time.deltaTime;
            if (enemy_cooldown < 0)
            {
                enemy_cooldown = MAX_cooldown;
                player.GetComponent <characterScript>().takedamage(damage);
            }
        }
        else
        {
            m_currentstate = enemystate.chase;
        }
    }
    void chase()
    {
        if (player && m_navmeshagent)
        {
            m_navmeshagent.SetDestination(player.position);
        }
        float distance = Vector3.Distance(transform.position, player.position);

        if (distance < m_navmeshagent.stoppingDistance)
        {
            m_navmeshagent.isStopped = true;
            m_navmeshagent.velocity  = Vector3.zero;
        }
        else if (distance < meelleradius)
        {
            m_currentstate = enemystate.attack;
        }
        else
        {
            m_navmeshagent.isStopped = false;
        }
    }
 public void takedamage(int damage)
 {
     m_currentstate = enemystate.chase;
     enemyheath    -= damage;
     currentenemyhealth();
 }