mirror of
https://github.com/Outer-Wilds-New-Horizons/new-horizons.git
synced 2025-12-11 20:15:44 +01:00
50 lines
1.6 KiB
C#
50 lines
1.6 KiB
C#
using NewHorizons.Handlers;
|
|
using UnityEngine;
|
|
|
|
namespace NewHorizons.Components.Volumes
|
|
{
|
|
public class InterferenceVolume : BaseVolume
|
|
{
|
|
public override void OnTriggerVolumeEntry(GameObject hitObj)
|
|
{
|
|
if (hitObj.CompareTag("PlayerDetector"))
|
|
{
|
|
OnPlayerEnter();
|
|
}
|
|
else if (hitObj.CompareTag("ProbeDetector"))
|
|
{
|
|
OnProbeEnter();
|
|
}
|
|
else if (hitObj.CompareTag("ShipDetector"))
|
|
{
|
|
OnShipEnter();
|
|
}
|
|
}
|
|
|
|
public override void OnTriggerVolumeExit(GameObject hitObj)
|
|
{
|
|
if (hitObj.CompareTag("PlayerDetector"))
|
|
{
|
|
OnPlayerExit();
|
|
}
|
|
else if (hitObj.CompareTag("ProbeDetector"))
|
|
{
|
|
OnProbeExit();
|
|
}
|
|
else if (hitObj.CompareTag("ShipDetector"))
|
|
{
|
|
OnShipExit();
|
|
}
|
|
}
|
|
|
|
public void OnPlayerEnter() => InterferenceHandler.OnPlayerEnterInterferenceVolume(this);
|
|
public void OnPlayerExit() => InterferenceHandler.OnPlayerExitInterferenceVolume(this);
|
|
|
|
public void OnProbeEnter() => InterferenceHandler.OnProbeEnterInterferenceVolume(this);
|
|
public void OnProbeExit() => InterferenceHandler.OnProbeExitInterferenceVolume(this);
|
|
|
|
public void OnShipEnter() => InterferenceHandler.OnShipEnterInterferenceVolume(this);
|
|
public void OnShipExit() => InterferenceHandler.OnShipExitInterferenceVolume(this);
|
|
}
|
|
}
|