// Update is called once per frame
    void Update()
    {
        switch (eMoveState)
        {
        case BossMoveState.BOSS_MOVE_APPEAR:
            Move_Appear();

            break;

        case BossMoveState.BOSS_MOVE_IDLE:
            Move_Idle();

            switch (eShootPattern)
            {
            case BossShoot.BOSS_SHOOT1:
                ShootPattern1();
                break;

            case BossShoot.BOSS_SHOOT2:
                ShootPattern2();
                break;

            case BossShoot.BOSS_SHOOT3:
                ShootPattern3();
                break;

            case BossShoot.BOSS_SHOOT4:
                ShootPattern4();
                break;

            case BossShoot.BOSS_SHOOT5:
                ShootPattern5();
                break;
            }
            break;

        case BossMoveState.BOSS_MOVE_SHOOTMOVE:
            fPatternTick += Time.deltaTime;
            if (Player.GetComponent <PlayerMove>().iDieState == 0)
            {
                switch (eShootPattern)
                {
                case BossShoot.BOSS_SHOOT1:
                    ShootPattern1();
                    break;

                case BossShoot.BOSS_SHOOT2:
                    ShootPattern2();
                    break;

                case BossShoot.BOSS_SHOOT3:
                    ShootPattern3();
                    break;

                case BossShoot.BOSS_SHOOT4:
                    ShootPattern4();
                    break;

                case BossShoot.BOSS_SHOOT5:
                    ShootPattern5();
                    break;

                case BossShoot.BOSS_SHOOT6:
                    ShootPattern6();
                    break;
                }
            }
            break;

        case BossMoveState.BOSS_MOVE_DYING:
            Move_Dying();
            break;
        }


        switch (iPhase)
        {
        case 1:
            if ((float)(iCurrentHP) / (float)(iMaxHP) < 0.8f)
            {
                iPhase = 2;

                animator.SetTrigger("Phace2");
            }
            break;

        case 2:
            if ((float)(iCurrentHP) / (float)(iMaxHP) < 0.3f)
            {
                iPhase = 3;

                animator.SetTrigger("Phace3");
            }
            break;

        case 3:
            if (iCurrentHP < 0)
            {
                iCurrentHP = 0;
                eMoveState = BossMoveState.BOSS_MOVE_DYING;
            }
            break;
        }
        if (!bShiled && eShootPattern != BossShoot.BOSS_SHOOT6)
        {
            CheckBarrier();
        }
    }
Exemple #2
0
 public void SetMoveState(BossMoveState set)
 {
     moveState = set;
 }