void OnTriggerEnter(Collider other) { bool isAlive = GetComponent <LifeBar>().GetIsAlive(); if (!isAlive && battery) { wearing = false; battery.GetComponent <Collider>().enabled = true; battery = null; } // Collect battery if (other.gameObject.CompareTag("Battery") && !wearing && isAlive) { battery = other.gameObject; animator.SetTrigger("catching"); audioController.audioTake.Play(); wearing = true; // TODO remove and start wearing at animation catch event battery.GetComponent <Collider>().enabled = false; } // Put battery in chamber if (other.gameObject.CompareTag("Chamber") && wearing && isAlive) { animator.SetTrigger("catching"); audioController.audioWin.Play(); wearing = false; battery.GetComponent <Collider>().enabled = false; battery.transform.position = other.transform.position + Vector3.up; battery = null; batterySpawner.StartRespawn(); points += gi.scoreParCapture; if (points >= gi.scoreLimit) { GameObject.FindGameObjectWithTag("WinCanvas").GetComponent <ActivateWin>().WinScreen(GetComponent <PlayerManager>().playerId); } } }