public void ToggleDoor(PlayerController character, PlayerInteractable i) { open = !open; animator.SetBool("Open", open); if (open) { OnOpen.Invoke(character, this); } else { OnClose.Invoke(character, this); } }
public void ToggleSitting(PlayerController character, PlayerInteractable i) { if (occupant == null) { // Player wants to sit. occupant = character; character.Sit(this); Debug.Log("OnSit"); OnSit.Invoke(character, this); } else if (occupant == character) { // Player wants to stand. occupant = null; character.Stand(); OnStand.Invoke(character, this); } else { // Seat occupied/do nothing. } }
private void Start() { interactable = gameObject.GetComponent <PlayerInteractable>(); interactable.OnInteract.AddListener(ToggleDoor); animator = gameObject.GetComponent <Animator>(); }
private void Start() { interactable = gameObject.GetComponent <PlayerInteractable>(); interactable.OnInteract.AddListener(ToggleSitting); }