Noticias

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

Temas recientes

Contador

Iniciado por nomoregames, Febrero 06, 2020, 08:54:46 PM

Tema anterior - Siguiente tema
¡Buenas noches!
 
La duda que tengo es muy sencilla, y seguro que la respuesta lo es aun mas,así que lo digo sin rodeos
 
Tengo una variable flotante llamada puntos y otra llamada vida, y necesito que por cada 3 de vida, se sume 1 a puntos, es decir cada 3 de vida, sumas 1
 
Gracias de antemano


Gracias francoe, y la proxima vez tratare de pensar un poco mas antes de publicar la duda.... ahora me siento tan estupido 

Cita de: nomoregames date=1581065298Gracias francoe, y la proxima vez tratare de pensar un poco mas antes de publicar la duda.... ahora me siento tan estupido 


Jajaja, suele pasar!

Buenas
 
Escribo de nuevo por que tengo una duda, si bien muy similar a esta, distinta 
 
La cosa es que necesito hacer que cada 3 vidas sume 1 a puntos, pero que solo lo haga cuando sean tres vidas mas, de modo que solo sumaria un punto cuando vidas fuera, 3, 6, 9,12 etc...
 
No se si me explico... 

Podrias hacer uso de propiedades para realizar esta tarea.
 

private int m_vidas = 0;
private int m_vidasAnterior = 0;
public int Puntos { get; set; }
public int Lifes {
  get { return m_vidas; }
  set { m_vidas = value; if (m_vidas - m_vidasAnterior >= 3) { m_vidasAnterior = m_vidas; Puntos ++; } }
}

 
 

Para que sirven ese Get y Set??
 
(he mirado unos cuantos vídeos pero no alcanzo a entender )

Y sirve para obtener o setear un valor. Las propiedades no se puede auto setear o auto obtener por que tendrias un problema de "overflow" por eso se utiliza una variable extra que sirve para almacenar el valor. 
 
 
 
Las propiedades pueden tener un SET y GET de forma independiente, por ejemplo si queres tener una variable publica que no se pueda modificar entonces podes usar una propiedad que solo implemente GET.
 
Si queres controlar de que manera se asigna el valor de una variable tendrias que implementar SET. 
 
 
 
Eso es toodo no hay mas magia. 

Y el get/set permite definir el encapsulamiento de manera independiente para los dos. Puedes hacer uno u otro protected o private. Además los get/set no son serializados en el editor de Unity.

@iRobb en este topic di una respuesta correcta y completa de propiedades.

 
 

Etiquetas: