示例#1
0
    private void ThrowFireBall()
    {
        float   fbOffsetX = 0.6f;
        float   fbOffsetY = 0.3f;
        Vector3 iniPos;

        if (transform.localEulerAngles.y == 180)
        {
            iniPos = new Vector3(transform.position.x + fbOffsetX, transform.position.y - fbOffsetY, transform.position.z);
        }
        else
        {
            iniPos = new Vector3(transform.position.x - fbOffsetX, transform.position.y - fbOffsetY, transform.position.z);
        }

        AudioManager.instance.PlayDiegeticFx(gameObject, fireBall, false, 1.0f, AudioManager.FX_DARKELF_FIREBALL_VOL);
        Vector3 direction;

        if ((facingRight == true && player.transform.position.x >= iniPos.x) || (facingRight == false && player.transform.position.x <= iniPos.x))
        {
            direction = player.transform.position - iniPos;
        }
        else
        {
            direction = facingRight ? Vector3.right : Vector3.left;
        }
        ParticlesManager.SpawnElfFireBall(iniPos, direction);
        //ParticlesManager.SpawnElfFireBall(iniPos, player.transform.position - iniPos);
    }