Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

Problema para adicionar pontos.

Quando eu vou fazer o script de adicionar os pontos, ele não consegue adicionar valor a variavel de pontos no script no objeto que guarda essa variavel.

Script do Obj que é coletavel e que da pontos.

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

public class ColetScript : MonoBehaviour
{
    [SerializeField]
    private GameObject _Coletavel;
    [SerializeField]
    private QuantColetav QuantColetav;

    public bool _InterageOn;

    private void Update()
    {
        if (_InterageOn == true)
        {
            QuantColetav.AddColetavQuant();
            GameObject.Destroy(_Coletavel);
        }
    }

    private void OnTriggerEnter2D(Collider2D collision)
    {
        _InterageOn = true;
    }

    private void OnTriggerExit2D(Collider2D collision)
    {
        _InterageOn = false;
    }
}

Script do Obj que guarda o valor da variavel e mostra na tela.

using System;
using System.Collections;
using System.Collections.Generic;
using System.Diagnostics;
using TMPro;
using UnityEngine;
public class QuantColetav : MonoBehaviour
{
    private int QuantidadeColetada = 0;
    [SerializeField]
    private TextMeshProUGUI QuantColetavText;

    public void AddColetavQuant()
    {
        QuantidadeColetada++;
        QuantColetavText.text = Convert.ToString(QuantidadeColetada);
    }
}
1 resposta
solução!

Eu já consegui resolver esse problema, eu utilizei um UnityEvent para poder chamar o comando do outro objeto quando o _InterageOn = true.

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software