Noticias

¡RECUERDA QUE SI ERES UN NUEVO USUARIO, DEBES PRESENTARTE PARA PODER PUBLICAR MENSAJES! | TENEMOS CANAL OFICIAL DE TELEGRAM: t.me/unity3dspain

Temas recientes

necesito ayuda para un trabajo de un grado que estoy cursando.

Iniciado por ernestotbm, Enero 09, 2020, 03:24:52 PM

Tema anterior - Siguiente tema
Buenas a todos soy Ernesto, estudiante de un grado de animacion, empece hace poco a utilizar unity ya que tengo que hacer un juego sencillo para una asignatura pero llevo un par de dias atascado en una parte la cual consiste en la contabilización de puntos cuando una bala colisiona con un jugador, estoy haciendo un juego 2D de 1VS1, creo que es algo sencillo pero por mas que busco en internet no encuentro solucion, me vendria genial vuestra ayuda ya que tengo que entregar el videojuego en una semana y de esto depende el aprobado o el suspenso de la asginatura. Gracias de antemano.


float puntuacion = 10;
   
   
   
   
    private void OnCollisionEnter(Collision collision)
    {
      if (collision.transform.CompareTag("bala"))
        {
            puntuacion = -1;
        }
    }

 
algo así?
 
que buscas exactamente, que cuando dispare y colisione con un enemigo sume a la puntuación? 

Enero 09, 2020, 03:44:18 PM #2 Ultima modificación: Enero 09, 2020, 05:24:10 PM por pioj
Cita de: nomoregames date=1578580637

float puntuacion = 10;
   
   
   
   
    private void OnCollisionEnter(Collision collision)
    {
      if (collision.transform.CompareTag("bala"))
        {
            puntuacion = -1;
        }
    }

   
      algo así?
   
   
      que buscas exactamente, que cuando dispare y colisione con un enemigo sume a la puntuación? 
   


lo que estoy haciendo es un mejor de 5, cuando la bala colisione con el jugador 1 o con el jugador 2 le sume un punto al otro jugador, por ejemplo, el jugador 1 dispara y le da al jugador 2 pues que le puntuen un punto al jugador 1. Lo que hice fue esto: Pero no funciona
 

 
 

private void OnCollisionEnter2D(Collision2D _col)
    {
        if(_col.gameObject.tag == "player2" )
        {
            pc.AddScore (1, 1);                   
        }
        
        else if(_col.gameObject.tag == "player1" )
        {
            pc.AddScore(2, 1);
        }
  }

 
 

Enero 09, 2020, 05:35:09 PM #3 Ultima modificación: Enero 09, 2020, 06:01:19 PM por nomoregames
anda que curioso nunca había usado AddScore, ni savia que existía...
 
pero he buscado y en el manual de unity no e encontrado nada
 
 
 
Donde encontraste la función AddScore?=

Cita de: ernestotbm date=1578581058lo que estoy haciendo es un mejor de 5, cuando la bala colisione con el jugador 1 o con el jugador 2 le sume un punto al otro jugador, por ejemplo, el jugador 1 dispara y le da al jugador 2 pues que le puntuen un punto al jugador 1. Lo que hice fue esto: Pero no funciona
   
   
      

       
   
   
      
   

private void OnCollisionEnter2D(Collision2D _col)
    {
        if(_col.gameObject.tag == "player2" )
        {
            pc.AddScore (1, 1);                   
        }
        
        else if(_col.gameObject.tag == "player1" )
        {
            pc.AddScore(2, 1);
        }
  }

   
       
   


Pon el código completo para poder encontrar el error e intenta mostrar imagenes del inspector de unity.


 
 
 
 
Cita de: nomoregames date=1578587709anda que curioso nunca había usado AddScore, ni savia que existía...
   
   
      pero he buscado y en el manual de unity no e encontrado nada
   
   
       
   
   
      Donde encontraste la función AddScore?=
   


Es un método creado por él en otro script.


 

Etiquetas: