void OnTriggerStay(Collider coll) { EnviroGear gear = coll.GetComponent<EnviroGear>(); if (gear!=null && gear.isMovable && !isActive && Vector3.Distance(transform.position, gear.transform.position)<minDistanceToTrigger) { gear.isMovable = false; gear.Start(); this.gear = gear; startPos = gear.transform.position; isActive = true; } }
void OnTriggerExit(Collider coll) { // find a gear, return if null EnviroGear gear = coll.gameObject.GetComponent <EnviroGear>(); if (gear == null) { return; } // remove gear in neighbors if it's in the neighbors neighbors.Remove(gear); }
void OnTriggerEnter(Collider coll) { // find a gear, return if null EnviroGear gear = coll.gameObject.GetComponent <EnviroGear>(); if (gear == null) { return; } // add gear to neighbors if it isn't already a neighbor if (!gear.neighbors.Contains(this) && !neighbors.Contains(gear)) { neighbors.Add(gear); } }