public void OnCantMove <T>(T component) where T : Component { if (Player.Instance.GetState() == Player.PlayerState.Ghosting && !component.transform.GetComponent <Statue>()) { return; } ReactiveEntity interactable = component.GetComponent <ReactiveEntity>(); if (interactable != null && GetComponent <Player>()) { // interact with interactable Debug.Log(transform.gameObject.name + " interacting with: " + interactable.transform.gameObject.name); interactable.Interact <ReactiveEntity>(GetComponent <Player>()); } }
public void OnCantMove <T>(T component) where T : Component { ReactiveEntity interactable = component.GetComponent <ReactiveEntity>(); if (interactable != null) { // interact with interactable Have to decide if npcs can interact with stuff //interactable.Interact<Player>(Player.Instance); //Debug.Log(transform.gameObject.name + " interacting with: " + interactable.transform.gameObject.name); if ((interactable.CompareTag("Player") || interactable.CompareTag("NPC")) && GetComponent <NPC>()) { // do stuff with enemy (if running into player, enemy is prolly trying to attack player so maybe do something like: Debug.Log(transform.gameObject.name + " interacting with: " + interactable.transform.gameObject.name); interactable.Interact(GetComponent <NPC>()); } } }