private void OnTriggerStay(Collider c) { var item = c.GetComponent <GravityItem>(); if (item == null || ItemsInRange.Contains(item)) { return; } ItemsInRange.Add(item); ++item.ActiveFieldCount; item.CurrentGravitySource.Add(this); }
private void OnTriggerExit(Collider c) { var item = c.GetComponent <GravityItem>(); if (item == null || !ItemsInRange.Contains(item)) { return; } ItemsInRange.Remove(item); --item.ActiveFieldCount; if (item.CurrentGravitySource.Contains(this)) { item.CurrentDistance = Mathf.Infinity; item.CurrentGravitySource.Remove(this); } }