forked from cgvr/DeltaVR
npc characters have separate trigger enter and exit areas
This commit is contained in:
@@ -121,27 +121,19 @@ public abstract class NPCController : MonoBehaviour
|
||||
currentVoicelineEvent.release();
|
||||
}
|
||||
|
||||
|
||||
private void OnTriggerEnter(Collider other)
|
||||
{
|
||||
if (other.gameObject.tag == "Player Head")
|
||||
{
|
||||
playerTransform = other.transform;
|
||||
OnPlayerApproach();
|
||||
}
|
||||
public void PlayerApproach(Transform player) {
|
||||
playerTransform = player;
|
||||
OnPlayerApproach();
|
||||
}
|
||||
|
||||
protected virtual void OnPlayerApproach() {}
|
||||
|
||||
private void OnTriggerExit(Collider other)
|
||||
public void PlayerLeave()
|
||||
{
|
||||
if (other.gameObject.tag == "Player Head")
|
||||
{
|
||||
playerTransform = null;
|
||||
OnPlayerLeave();
|
||||
}
|
||||
playerTransform = null;
|
||||
OnPlayerLeave();
|
||||
}
|
||||
|
||||
protected virtual void OnPlayerApproach() { }
|
||||
|
||||
protected virtual void OnPlayerLeave() {}
|
||||
|
||||
public void SpeakVoiceLine(int voiceLineId, GameObject emitter = null, float radioAmount = 0f)
|
||||
|
||||
@@ -0,0 +1,38 @@
|
||||
using System.Collections;
|
||||
using System.Collections.Generic;
|
||||
using UnityEngine;
|
||||
|
||||
public class NPCTriggerArea : MonoBehaviour
|
||||
{
|
||||
public NPCController npcController;
|
||||
public bool isEnter;
|
||||
|
||||
// Start is called before the first frame update
|
||||
void Start()
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
// Update is called once per frame
|
||||
void Update()
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
private void OnTriggerEnter(Collider other)
|
||||
{
|
||||
if (isEnter && other.gameObject.tag == "Player Head")
|
||||
{
|
||||
|
||||
npcController.PlayerApproach(other.transform);
|
||||
}
|
||||
}
|
||||
|
||||
private void OnTriggerExit(Collider other)
|
||||
{
|
||||
if (!isEnter && other.gameObject.tag == "Player Head")
|
||||
{
|
||||
npcController.PlayerLeave();
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,11 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 7e0b023cc6a72a94d98cc0b4de447614
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
Reference in New Issue
Block a user