示例#1
0
    /// <summary>
    /// Funcion la cual se encargara de realizar el ataque sobre el personage
    /// </summary>
    private void ataquedistancia()
    {
        animaciones.enabled = true;
        float      direccion       = Mathf.Atan2(transform.position.y, transform.position.x) * Mathf.Rad2Deg;
        GameObject ataquedistancia = Instantiate(prefabAtaqueDistancia, transform.position, Quaternion.AngleAxis(direccion, Vector3.forward));

        AtaqueDistancia ataque = prefabAtaqueDistancia.GetComponent <AtaqueDistancia>();

        ataque.direccionAtaque.x = GameObject.FindGameObjectWithTag("Player").GetComponent <Transform>().transform.position.x;

        ataque.direccionAtaque.y = GameObject.FindGameObjectWithTag("Player").GetComponent <Transform>().transform.position.y;
        animaciones.Play("atack");
        animaciones.enabled = false;
        sonido.Play();
    }
示例#2
0
    /// <summary>
    /// Funcion para atacar con magia
    /// </summary>
    private void atacarConMagia()
    {
        if (Input.GetKeyDown(KeyCode.LeftAlt))
        {
        }
        else if (Input.GetKeyUp(KeyCode.LeftAlt) && AtributosJugador.tieneMana)
        {
            float direccion = Mathf.Atan2(movAnimacion.GetFloat("movY"), movAnimacion.GetFloat("movX")) * Mathf.Rad2Deg;


            AtaqueDistancia ataque = prefabAtaqueDistancia.GetComponent <AtaqueDistancia>();
            ataque.direccionAtaque.x = movAnimacion.GetFloat("movX");
            ataque.direccionAtaque.y = movAnimacion.GetFloat("movY");
            GameObject ataquedistancia = Instantiate(prefabAtaqueDistancia, transform.position, Quaternion.AngleAxis(direccion, Vector3.forward));
            if (!AtributosJugador.manaInfinito)
            {
                AtributosJugador.mana -= (float)0.1;
            }
        }
    }