Esempio n. 1
0
    private objetosColision gestionarColision(Collider c)
    {
        objetosColision tmp = objetosColision.None;

        if (c.gameObject.tag == "2Puntos")
        {
            tmp          = objetosColision.CuboTipo1;
            puntosEnDuda = 2;
        }
        if (c.gameObject.tag == "3Puntos")
        {
            tmp          = objetosColision.CuboTipo1;
            puntosEnDuda = 3;
        }
        if (c.gameObject.tag == "4Puntos")
        {
            tmp          = objetosColision.EsferaTipo1;
            puntosEnDuda = 4;
        }
        if (c.gameObject.tag == "5Puntos")
        {
            tmp          = objetosColision.EsferaTipo2;
            puntosEnDuda = 5;
        }

        return(tmp);
    }
Esempio n. 2
0
    void OnTriggerEnter(Collider c)
    {
        if (sinPrimeraColision)
        {
            objetoColisionAnterior = gestionarColision(c);
            sinPrimeraColision     = false;
        }

        objetoConColision = gestionarColision(c);

        // Si son del mismo tipo, se resta puntos
        if (objetoConColision == objetoColisionAnterior)
        {
            puntos -= puntosEnDuda;
        }

        // Si alternan, suma la mitad de los puntos
        if (esCubo(objetoConColision) && esEsfera(objetoColisionAnterior) || esEsfera(objetoConColision) && esCubo(objetoColisionAnterior))
        {
            puntos += puntosEnDuda / 2;
            Destroy(c.gameObject);
        }
    }
Esempio n. 3
0
 private bool esEsfera(objetosColision o)
 {
     return(o == objetosColision.EsferaTipo2 || o == objetosColision.EsferaTipo1);
 }
Esempio n. 4
0
 private bool esCubo(objetosColision o)
 {
     return(o == objetosColision.CuboTipo1 || o == objetosColision.CuboTipo2);
 }