Александр С
Знаток
(368)
9 месяцев назад
Вам нужно написать скрипт для вашего объекта Player. Вот пример, как это можно сделать на C#:
using UnityEngine;
public class PlayerController : MonoBehaviour
{
private int currency = 0; // Переменная для хранения валюты
// Вызывается, когда объект входит в триггер
private void OnTriggerEnter(Collider other)
{
// Проверяем, является ли триггер Cash
if (other.CompareTag("Cash"))
{
currency += 50; // Добавляем 50 единиц валюты
Debug.Log("Получено 50 единиц валюты. Всего: " + currency);
}
// Проверяем, является ли триггер Shelvings
else if (other.CompareTag("Shelvings"))
{
currency -= 10; // Вычитаем 10 единиц валюты
Debug.Log("Потеряно 10 единиц валюты. Всего: " + currency);
}
}
}
Прежде всего, убедитесь, что ваш Player объект имеет Collider и Rigidbody, а у Collider'ов Cash и Shelvings стоит галочка "Is Trigger", чтобы они действовали как триггеры.
Этот скрипт реагирует на события входа объекта в триггер. Он проверяет тег триггера, с которым взаимодействует Player. Если тег соответствует "Cash", к валюте Player добавляется 50 единиц и выводится отладочное сообщение. Если тег соответствует "Shelvings", от валюты Player отнимается 10 единиц, также с выводом отладочного сообщения.
Дополнительно: У каждого коллайдера и триггера стоит одноимённый тег