void OnTriggerEnter(Collider other) { if ((other.gameObject.layer == LayerMask.NameToLayer("CharacterBody") || other.gameObject.layer == LayerMask.NameToLayer("Character")) && m_Passes >= m_PassesRequired) { if ((m_RequiresKey || !m_Played) && !Root.Instance.m_Character.m_HasKey) { m_HintScript.ShowHint(); m_Played = true; } if (Root.Instance.m_Character.m_HasKey && m_Switch != null) { m_Switch.Unlock(); m_Switch.HitSwitch(); } if (m_ToActivate != null) { m_ToActivate.SetActive(true); } m_Passes++; } }
public void WeaponCollide(Collider other) { if (m_NextState == this) { if (other.gameObject.layer == LayerMask.NameToLayer("Switch") || other.gameObject.layer == LayerMask.NameToLayer("Terrain")) { SwitchScript s = other.GetComponentInParent <SwitchScript>(); if (s != null) { s.HitSwitch(); } else { s = other.transform.parent.GetComponentInParent <SwitchScript>(); if (s != null) { s.HitSwitch(); } } } } }