コード例 #1
0
ファイル: iA.cs プロジェクト: DuvanLi/Jam-Bucaramanga
    private void Update()
    {
        healthBar.UpdateBar(life, maxlife);
        if (life <= 0)
        {
            SceneManager.LoadScene("Main");
            Destroy(gameObject);
        }
        switch (_bossStates)
        {
        case StatesBoss.idle:
            attaking = false;
            if (timer <= 0)
            {
                timer       = timerdelay;
                _bossStates = StatesBoss.Chase;
            }
            else
            {
                timer -= Time.deltaTime;
            }
            break;

        case StatesBoss.Chase:
            attaking = false;
            animator.SetBool("isWalking", true);

            if (Physics2D.OverlapCircle(transform.position, 1, whatIsWall))
            {
                speed = -speed;
                flip();
            }
            transform.Translate(2f * Time.fixedDeltaTime * speed * Vector2.left);
            movementController targetToAggro;
            var col = Physics2D.OverlapCircle((Vector2)transform.position + offset, size);


            if (col.gameObject.GetComponent <movementController>() != null)
            {
                _target     = col.gameObject.GetComponent <movementController>().GetComponent <Transform>();
                _bossStates = StatesBoss.Attack;
            }

            break;

        case StatesBoss.Attack:
            animator.SetBool("isWalking", false);
            if (Random.Range(0, 1) < 0.5)
            {
                animator.SetTrigger("Attack");
            }
            else
            {
                animator.SetTrigger("Attack2");
            }

            attaking = true;
            print("Attack");

            break;


            void flip()
            {
                transform.localScale = new Vector3(transform.localScale.x * -1, transform.localScale.y, transform.localScale.z);
            }
        }
    }
コード例 #2
0
ファイル: iA.cs プロジェクト: DuvanLi/Jam-Bucaramanga
 public void BackToIddle()
 {
     _bossStates = StatesBoss.idle;
     animator.SetBool("isWalking", false);
 }