Ejemplo n.º 1
0
 //Si dejamos de tocar el arco en la espalada vibra poco para notar que ya no lo tenemos cerca
 private void OnTriggerExit(Collider other)
 {
     if (!arcoAgarrado && other.transform.gameObject.name == "CogerObjetos")
     {
         VibracionManager.vibracion(20, 1, 200, other.transform.gameObject.GetComponent <CogerObjetos>().BotonAgarre);
     }
 }
Ejemplo n.º 2
0
    //Control de el movimiento de la cuerda
    void moverCentroCuerda()
    {
        distanciaManos = (manos[1].transform.position - manos[0].transform.position).magnitude;
        if (distanciaManos > limiteDistanciaManosCuerda)
        {
            distanciaManos = limiteDistanciaManosCuerda;
        }
        centroCuerda.localPosition = pos_puntoCentralInicio.localPosition - new Vector3(0, distanciaManos * 325, 0);

        //Vibracion
        //Debug.Log("<color=purple>" + distanciaManos + "</color>");
        int porciento = (int)((distanciaManos * 100) / 0.65f);
        int vibracion = (int)((porciento * 255) / 100);

        VibracionManager.vibracion(1, 1, vibracion / 2, controlador);
        VibracionManager.vibracion(1, 1, vibracion, controladorContrario);
    }
Ejemplo n.º 3
0
    void Disparar(OVRInput.Controller controlador)
    {
        VibracionManager.vibracion(30, 2, 255, controlador);


        //Colisiona con solo el ultimo numero
        int layerMask = 1 << 14;

        //Invierte y da a todos menos al ultimo numero
        layerMask = ~layerMask;

        //EMPUJE OBJETO COLISIONADO CON BALA
        if (Physics.Raycast(salidaBala.position, transform.TransformDirection(Vector3.right), out RaycastHit hit, 500, layerMask))
        {
            if (hit.transform.gameObject.GetComponent <Rigidbody>())
            {
                Rigidbody rb = hit.transform.gameObject.GetComponent <Rigidbody>();
                rb.AddForce(salidaBala.forward * 500);

                if (hit.transform.gameObject.GetComponent <Rompible>())
                {
                    hit.transform.gameObject.GetComponent <Rompible>().cambiar();
                }
                else
                {
                    //PARTICULAS COLISION DECORADO
                    Instantiate(chispasImpacto, hit.point, Quaternion.identity);
                }

                if (hit.transform.gameObject.GetComponent <diana>())
                {
                    hit.transform.gameObject.GetComponent <diana>().golpeo();
                }
                else if (hit.transform.gameObject.GetComponent <pirata>())
                {
                    hit.transform.gameObject.GetComponent <pirata>().golpe();
                }
            }
        }


        //CASQUETES
        GameObject casqueteNuevo = Instantiate(casquete, salidaCasquete.position, Quaternion.identity, salidaCasquete);
        Rigidbody  rbCn          = casqueteNuevo.GetComponent <Rigidbody>();

        rbCn.AddForce(salidaCasquete.forward * Random.Range(125f, 225f));
        rbCn.maxAngularVelocity = 1000;
        casqueteNuevo.transform.SetParent(null);
        Destroy(casqueteNuevo, 4);


        //TExtoBalas
        setBalasTexto(true);


        //Animacion
        animator.Play("disparo", -1, 0f);

        //Efectos
        fuegoDisparo.Play();
        audioSource.Play();
    }