Скрипт генерации карты и зоны тригера
Закончен скрипт генерации карты по готовым префабам, закончен скрипт тригерной зоны
This commit is contained in:
@ -0,0 +1,41 @@
|
||||
using UnityEngine;
|
||||
using UnityEngine.Events;
|
||||
|
||||
/// <summary>
|
||||
/// Обрабатывает триггерную зону тайла и вызывает эвент
|
||||
/// </summary>
|
||||
public class TriggerZoneScript : MonoBehaviour
|
||||
{
|
||||
/// <summary>
|
||||
/// Эвент, который собирает подписи, необходимо присвоить ему новый UnityEvent
|
||||
/// </summary>
|
||||
public UnityEvent TriggerZoneEvent = new UnityEvent();
|
||||
|
||||
/// <summary>
|
||||
/// флаг реакции тригера
|
||||
/// </summary>
|
||||
[SerializeField]
|
||||
private bool _wasTrigged = false;
|
||||
|
||||
/// <summary>
|
||||
/// Реакция тригерной зоны на вхождение игрока
|
||||
/// </summary>
|
||||
/// <param name="other">объект тригера</param>
|
||||
private void OnTriggerEnter(Collider other)
|
||||
{
|
||||
// если тег игрока и первая реакция
|
||||
if (other.gameObject.CompareTag("Player") && !_wasTrigged)
|
||||
{
|
||||
|
||||
// Debug.Log("Was trigged");
|
||||
|
||||
// изменение, что тригер сработал
|
||||
_wasTrigged = !_wasTrigged;
|
||||
|
||||
// вызов всех подписей
|
||||
TriggerZoneEvent.Invoke();
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
Reference in New Issue
Block a user