// When this game object intersects a collider with 'is trigger' checked, // store a reference to that collider in a variable named 'other'.. void OnTriggerEnter(Collider other) { // ..and if the game object we intersect has the tag 'Pick Up' assigned to it.. if (other.gameObject.CompareTag("Pick Up") && PickUpHandler.IsAvailablePickUp(other.gameObject, allegiance)) { GameResources.AddResource(1, allegiance); PickUpHandler.CarryPickUp(other.gameObject, this.gameObject, allegiance); PickUpHandler.DeliverPickUp(other.gameObject, allegiance); Destroy(other.gameObject); } }
//Collision effects void OnTriggerEnter(Collider other) { if (other.gameObject.CompareTag("Pick Up") && !atCapacity && (other.gameObject.Equals(aimTarget) || PickUpHandler.IsAvailablePickUp(other.gameObject, allegiance))) { if (!other.gameObject.Equals(aimTarget)) { PickUpHandler.UntargetPickUp(aimTarget, allegiance); } PickUpCargo(other); } else if (other.gameObject.Equals(HomeZone) && atCapacity) { DeliverCargo(); } //TODO: stolen pickups push notifications from PickUpHandler /* * if (other.gameObject.CompareTag("Pick Up") && !atCapacity) * { * if (!other.gameObject.Equals(aimTarget)) * { * if (gameScope.IsAvailablePickUp(other.transform)) * { * gameScope.RemoveFromAvailPickUps(other.transform); * gameScope.AddToAvailPickUps(aimTarget); * } * else * { * //gameScope.AddToStolenPickUps(other.transform); * gameScope.AddToAvailPickUps(aimTarget); * //Something * } * * } * PickUpCargo(other); * } * else if (other.gameObject.CompareTag(COLLECTION_ZONE) && atCapacity) * { * DeliverCargo(); * } */ }