public void Initialize() { var doors = _context.GetTriggers <DoorTeleporterBehaviour>(TriggerObjectType.Door); foreach (var trigger in doors) { trigger.OnTriggerEnterHandler += OnTriggerEnterHandler; trigger.OnTriggerExitHandler += OnTriggerExitHandler; } }
public void Initialize() { var doors = _context.GetTriggers(InteractableObjectType.Door); foreach (var trigger in doors) { var doorTeleporterBehaviour = trigger as DoorTeleporterBehaviour; doorTeleporterBehaviour.OnFilterHandler += OnFilterHandler; doorTeleporterBehaviour.OnTriggerEnterHandler += OnTriggerEnterHandler; doorTeleporterBehaviour.OnTriggerExitHandler += OnTriggerExitHandler; } }
public void Initialize() { var hidingPlaces = _context.GetTriggers(InteractableObjectType.HidingPlace); foreach (var trigger in hidingPlaces) { var doorTeleporterBehaviour = trigger as HidingPlaceBehaviour; doorTeleporterBehaviour.OnFilterHandler += OnFilterHandler; doorTeleporterBehaviour.OnTriggerEnterHandler += OnTriggerEnterHandler; doorTeleporterBehaviour.OnTriggerExitHandler += OnTriggerExitHandler; } }
public void Initialize() { var items = _context.GetTriggers(InteractableObjectType.Item); foreach (var trigger in items) { var itemBehaviour = trigger as ItemBehaviour; itemBehaviour.OnFilterHandler += OnFilterHandler; itemBehaviour.OnTriggerEnterHandler += OnTriggerEnterHandler; itemBehaviour.OnTriggerExitHandler += OnTriggerExitHandler; } }
public void Initialize() { var items = _context.GetTriggers(InteractableObjectType.Item).ToList(); items.AddRange(_context.GetTriggers(InteractableObjectType.Trap)); foreach (var trigger in items) { var itemBehaviour = trigger as InteractableObjectBehavior; itemBehaviour.OnFilterHandler += OnFilterHandler; itemBehaviour.OnTriggerEnterHandler += OnTriggerEnterHandler; itemBehaviour.OnTriggerExitHandler += OnTriggerExitHandler; } }
private T GetInteractableObject <T>(InteractableObjectType type) where T : class { var interactableObjects = _context.GetTriggers(type); T behaviour = default; foreach (var trigger in interactableObjects) { if (trigger.IsInteractable) { behaviour = trigger as T; } } return(behaviour); }
private T GetInteractableObject <T>(InteractableObjectType type) where T : class { var interactableObjects = _context.GetTriggers(type); T behaviour = default; foreach (var trigger in interactableObjects) { if (trigger.IsInteractable) { CustomDebug.Log(trigger.Description); } } return(behaviour); }