Jump to content
Sign in to follow this  
Argantonio

Duda contador de puntos.

Recommended Posts

Tengo un contador de 'fallos' y otro de 'aciertos',  los fallos los registro en un contador (fallos), y los aciertos en otro "aciertos", el problema es que para los aciertos uso dos botones y cada uno destruye un trigger asignado, cuando destruyo con uno de los botones el contador cuenta "1", pero cuando destruyo con el otro, me descuenta el punto.Me estaba replanteando crear dos contadores independientes (ocultos)  y luego ver de que manera puedo ¿usar otro campo de texto para que me haga la suma total?:35_thinking:

int contador;
public Text Aciertos;
........
Destroy(collider.gameObject);
contador = contador +1;
Aciertos.text = ": " + contador;
 

Share this post


Link to post
Share on other sites

Sí quieres la suma total, tanto de Fallos como aciertos puedes usar esto:

<

public int PuntajeTotal;

Public text Total;

void Update (){ 

PuntajeTotal = GetComponent<tuscriptcontador>().contador + GetComponent<tuscriptfallos>().descuento;

Total.text = ":" + PuntajeTotal;

}

>

(Es un ejemplo) si no te funciona, puedes indicar solo las variables y omites el GetComponent, algo como: PuntajeTotal = contador + descuento; es solo una ayuda y si sigue sin funcionar puedes buscar algo referente a lo que te mostré.

Edited by Bamf
Usa "<>" al pegar o escribir código. Saludos.
  • Like 1

Share this post


Link to post
Share on other sites

Hola Alex gracias por tu respuesta. Dos dudas; por un lado ¿va este script en el texto donde aparece el resultado? y la más importante,  el campo "<tuscriptcontaodor"> que debe contener? debo llamar a los componentes "Text" que cuenta fallos y aciertos?Gracias,  Un saludo.

Share this post


Link to post
Share on other sites
On 1/26/2019 at 4:22 PM, Argantonio said:

... los fallos los registro en un contador (fallos), y los aciertos en otro "aciertos" ...

Es así? porque ahí estoy viendo solo "contador" ... ?? Recorda que UI y lógica (variables de fondo) no son lo mismo, siempre asegurate que las variables hagan lo que tengan que hacer, y luego que el UI las represente. En tu pequeño snippet de código se ve que tenés un text que se hace llamar "aciertos" y representas a contador, me estoy imaginando que para el otro (fallos o aciertos) pasa lo mismo (?)

On 1/26/2019 at 4:22 PM, Argantonio said:

pero cuando destruyo con el otro, me descuenta el punto

Qué es "el punto"? ...

quizás información más detallada ayudaría, con código completo y no solo tres líneas ... te digo porque desde que estoy aca en el foro suben algo y dicen "no me anda!" le contestás "subí el código completo por favor" y el problema surge a la vista.

 

Saludos

  • Like 1

Share this post


Link to post
Share on other sites
4 hours ago, Argantonio said:

¿va este script en el texto donde aparece el resultado?

Sí, puedes ponerlo en tu Canvas y asignarle tu GameObject de texto.

4 hours ago, Argantonio said:

la más importante,  el campo "<tuscriptcontaodor"> que debe contener?

El nombre de tu script que realiza el conteo, si todo va bien, el script debe correr perfectamente, OJO para esto, deberías tener 3 script, uno de conteo, uno descuento y otro del Total, intuyo que tu otro código que hace la función de quitar puntos es igual al que enviaste, con diferencia que este resta y no suma, en fin, coloca los nombres de tus script en esa parte < > sin las " "

Cualquier duda solo envíala, psdt: como dice Lightbug a la próxima que tengas este tipo de pregunta, sube el código completo, así haces que resolver el problema que tengas sea más fácil.

Un placer Ayudar!

  • Like 1

Share this post


Link to post
Share on other sites
On 1/28/2019 at 1:40 AM, Alex said:

Cualquier duda solo envíala, psdt: como dice Lightbug a la próxima que tengas este tipo de pregunta, sube el código completo, así haces que resolver el problema que tengas sea más fácil.

Un placer Ayudar!

Lo que es un placer es disponer de ayuda de gente como vosotros. 

 

On 1/27/2019 at 10:19 PM, lightbug said:

Qué es "el punto"? ...

Me refería "al punto" anteriormente sumado...:1_grinning:

Este es el script para uno de los botones, en el otro botón tengo asignado el mismo, pero esta vez he separado los contadores, ahora hay "contadorI", "contadorD", "contadorfallos" y "puntajetotal"

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;
public class BTI : MonoBehaviour
{
int contadorI;
public Text puntuacionI;
 
private bool isColl = false;
private Collider2D collider;
 
public void destroyWithButton(){
if(isColl){
  Destroy(collider.gameObject);
contadorI = contadorI +1;
puntuacionI.text = ": " + contadorI;
Debug.Log ("bien");
}
}
 
void OnTriggerEnter2D(Collider2D col){
  if(col.gameObject.tag == "izquierdo"){
  collider = col;
  isColl = true;
}
}
 
void OnTriggerExit2D(Collider2D col)
{
if(col.gameObject.tag == "izquierdo"){
isColl = false;
}
  
}}

Este es el de mi colisionador de fallos. 

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;
public class Colisionador : MonoBehaviour
{
int contadorfallos;
public Text puntuacionfallos;
 
public void OnTriggerEnter2D(Collider2D trigger){
GameObject target = trigger.gameObject;
Destroy( target );
contadorfallos = contadorfallos +1;
puntuacionfallos.text = ": " + contadorfallos;
}
public void Awake()
{
contadorfallos = 0;
puntuacionfallos.text = ": " + contadorfallos;
}
}
Edited by Argantonio
error en un nombre

Share this post


Link to post
Share on other sites

Solucionado. Al final conseguí que funcionara de esta manera. Gracias por vuestra ayuda.

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;
using System;

public class PuntosTotales : MonoBehaviour
{
 public int contador;
    public Text Total;
    public Text AciertosD;
    public Text AciertosI;
    public Text Fallos;

void Update () {

contador = Convert.ToInt32 (AciertosD.text) + Convert.ToInt32 (AciertosI.text) - Convert.ToInt32 (Fallos.text);
Total.text = contador.ToString ();
}}

 

Edited by Argantonio

Share this post


Link to post
Share on other sites
Sign in to follow this  

UnitySpain © Todos los derechos reservados 2020
×
×
  • Create New...