Итак, я делаю 2D платформер на Unity Editor. Однако я застрял, когда дело касается набора очков в игре. Существует объект монеты / ресурса, и всякий раз, когда игрок прикасается к нему, мой текст пользовательского интерфейса должен измениться, однако это не так. Вот соответствующие части сценария:
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;
public class Player : MonoBehaviour {
public Text CountText;
private int count;
#Some irrelevant code...
void Start ()
{
myrigidbody = GetComponent<Rigidbody2D> ();
count = 0;
SetCountText();
}
#Some irrelevant code...
# Death or Win
void OnTriggerEnter2D (Collider2D col)
{
if(col.tag == "Saw")
{
Lose ();
}
if(col.tag == "Death")
{
Lose ();
}
if(col.tag == "Portal")
{
Finish ();
}
}
# Resource Gathering
void onTriggerEnter2D(Collider2D col)
{
if(col.tag == "isgem")
{
count = count + 1;
SetCountText();
col.gameObject.SetActive(false);
}
}
void SetCountText()
{
CountText.text = "Count: " + count.ToString();
}
}
Скажите, хотите ли вы весь сценарий. Спасибо!