Example #1
0
    //---受傷(多載:同時or個別設定水量髒污的影響)---
    public void TakeDamage(int damage)
    {
        if (!PlayerStatus.canBeHurt)
        {
            return;
        }

        //if (skill_Water.isPassing) skill_Water.PassingInterrupted();
        skill_Base[OkaID_Now].BackIdle();

        playerEnergy.ModifyDirt(damage);
        playerEnergy.ModifyWaterEnergy(-damage);

        animator[OkaID_Now].SetTrigger("gotHurt");
        StartCoroutine(ShortCantMove(0.2f));

        StartCoroutine(DamageHitRecover());
    }
Example #2
0
    protected void NormalAttack()
    {
        SetAttacking(true);
        normalattack_step += 1;

        switch (normalattack_step)
        {
        case 1:
        {
            animator.SetTrigger("attack_1");

            if (inputDelayRoutine != null)
            {
                StopCoroutine(inputDelayRoutine);
            }
            inputDelayRoutine = StartCoroutine(Normalinput_Delaying());
        }
        break;

        case 2:
        {
            animator.SetTrigger("attack_2");

            if (inputDelayRoutine != null)
            {
                StopCoroutine(inputDelayRoutine);
            }
            inputDelayRoutine = StartCoroutine(Normalinput_Delaying());
        }
        break;

        case 3:
        {
            //"attack_3" animation最後要呼叫BackIdle
            animator.SetTrigger("attack_3");
            playerEnergy.ModifyWaterEnergy(-attack3WaterCost);

            if (inputDelayRoutine != null)
            {
                StopCoroutine(inputDelayRoutine);
            }
        }
        break;
        }
    }