private void OnTriggerEnter2D(Collider2D other) // Ф-ция служащая для возможности прохождения в Collider. { Level_Arm level_ArmTemp = other.GetComponent <Level_Arm>(); //Проверяем является ли данный Collider Level_Arm если он не null, то идём в Update и можем вызвать ф-цию level_Arm.ActivateLeverArm(); if (other.CompareTag("Finish")) { Debug.Log("Worked"); _isFinish = true; } if (level_ArmTemp != null) { _isLevelArm = true; } }
private void OnTriggerExit2D(Collider2D other) { Level_Arm level_ArmTemp = other.GetComponent <Level_Arm>(); if (other.CompareTag("Finish") && _isFinish)//Если мы ушли от Collider с тэгом Finish. { Debug.Log("Not Worked"); _isFinish = false; } if (level_ArmTemp != null) { _isLevelArm = false; } }
void Start() { _rb = GetComponent <Rigidbody2D>(); _finish = GameObject.FindGameObjectWithTag("Finish").GetComponent <Finish>(); // Передаем в finish объект с тэгом Finish. _level_Arm = FindObjectOfType <Level_Arm>(); //Поиск объекта на сцене с типом Level_Arm. При этом поиск происходит по всей иерархии на сцене, а не по определённым объектам. }