/// <summary> /// Toggles collision and movement logic for pits /// </summary> public void ToggleInteractivity(bool toggle) { //toggle movement PlayerMovement m = GetComponent <PlayerMovement>(); if (toggle) { m.SetMove(); } else { m.DisableMove(); } //toggle all triggers/hitboxes in system, toggle weapons off but never on foreach (BoxCollider2D col in GetComponentsInChildren <BoxCollider2D>()) { if (!col.gameObject.CompareTag("Weapons") || !toggle) { col.enabled = toggle; } } GetComponent <BoxCollider2D>().enabled = toggle; //toggle velocity if (!toggle) { rb.constraints = RigidbodyConstraints2D.FreezeAll; } else { rb.constraints = RigidbodyConstraints2D.FreezeRotation; } Slasher sl = GetComponent <Slasher>(); if (sl.isSwinging) { sl.EndSlash(); } }