Cuando el jugador toca una moneda queremos tres cosas: que la moneda desaparezca, que la puntuación suba 1, y que la nueva puntuación se vea en pantalla.
Necesitas:
- un personaje llamado player que pueda moverse (mira Mover un personaje);
- algunas monedas: objetos Círculo (o imágenes), por ejemplo coin1, coin2, coin3;
- un objeto Texto llamado scoreText, arriba de la pantalla, con el texto «Puntos: 0».
Paso 1: dar el mismo tag a todas las monedas
Un tag es una etiqueta. Gracias a él, un solo trozo de Blueprint sirve para todas las monedas, aunque añadas 50.
- Selecciona una moneda.
- En el inspector, campo «Tag (Etiqueta)», escribe piece.
- Haz lo mismo con cada moneda (el botón «Lista» junto al campo propone los tags ya usados).
Paso 2: crear la variable «score»
Una variable es una casilla que guarda un número en memoria durante el juego.
- En el panel de la izquierda, abre la sección Variables y crea una variable.
- Nombre: score · Alcance: Local · Tipo: Entero · Valor inicial: 0.
👉 Local = la variable solo existe en esta escena. Elige Global si la puntuación debe seguir en el nivel siguiente (mira Pasar al nivel siguiente).
Paso 3: el Blueprint
- Abre el Blueprint de la escena.
- Añade el evento «Si el objeto toca el Tag»: objetivo player, Tag piece.
- Añade «Destruir Objeto». Como objetivo, elige El objeto implicado en el evento: es la moneda que el jugador acaba de tocar.
- Añade «Añadir a Variable»: variable score, Valor a añadir = 1.
- Añade «Modificar Texto»: objetivo scoreText, Texto nuevo =
="Puntos: " + score - Une los cuatro nodos en orden, de salida a entrada.
- Guarda, lanza el juego y ve a tocar una moneda.
Si el objeto toca el Tagobjetivo: player · Tag: piece
→
Destruir ObjetoObjeto Implicado
→
Añadir a Variablescore · + 1
→
Modificar TextoscoreText
👉 El signo = al principio del texto le dice a Yop2D que calcule el texto en lugar de escribirlo tal cual. Sin él, la pantalla mostraría literalmente
"Puntos: " + score. Las comillas rodean la parte que no cambia.👉 El evento solo se lanza una vez por contacto: quedarse sobre una moneda no cuenta varios puntos.
Extra: ganar al tener todas las monedas
- Después de «Modificar Texto», añade el nodo «Condición» con Condición =
=score >= 3(3 = el número de monedas). - Une su salida Verdadero a un nodo «Mensaje corto abajo de la pantalla» con el mensaje ¡Ganaste!, o a «Escena siguiente».
Modificar TextoscoreText
→
Condición=score >= 3
Verdadero →
Mensaje corto abajo de la pantalla¡Ganaste!
Si no funciona
- La moneda no desaparece: comprueba que el tag está escrito igual en todas partes (piece) y que el objetivo de «Destruir Objeto» es el objeto implicado.
- El texto muestra la fórmula: falta el = al principio.
- La puntuación se queda en 0: comprueba que «Añadir a Variable» apunta a la variable score.
- Para comparar, abre el juego de ejemplo «Plataforma» incluido con Yop2D: recoge monedas exactamente así.