// Token: 0x06002E63 RID: 11875 RVA: 0x000B1FA8 File Offset: 0x000B01A8 private bool BoundsWork(ref Bounds bounds, ref global::ExplosionHelper.Work w) { w.boundsSquareDistance = bounds.SqrDistance(this.point); if (w.boundsSquareDistance > this.blastRadius * this.blastRadius) { return(false); } if (w.boundsSquareDistance <= 1E-05f) { w.boundsSquareDistance = 0f; } w.center = bounds.center; w.rayDir.x = w.center.x - this.point.x; w.rayDir.y = w.center.y - this.point.y; w.rayDir.z = w.center.z - this.point.z; w.squareDistanceToCenter = w.rayDir.x * w.rayDir.x + w.rayDir.y * w.rayDir.y + w.rayDir.z * w.rayDir.z; if (w.squareDistanceToCenter > this.blastRadius * this.blastRadius) { return(false); } if (w.squareDistanceToCenter <= 9.99999944E-11f) { w.distanceToCenter = (w.squareDistanceToCenter = 0f); w.rayDistance = (w.squareRayDistance = 0f); w.rayTest = false; w.boundsExtent = bounds.size; w.boundsExtent.x = w.boundsExtent.x * 0.5f; w.boundsExtent.y = w.boundsExtent.y * 0.5f; w.boundsExtent.z = w.boundsExtent.z * 0.5f; w.boundsExtentSquareMagnitude = w.boundsExtent.x * w.boundsExtent.x + w.boundsExtent.y * w.boundsExtent.y + w.boundsExtent.z * w.boundsExtent.z; return(true); } w.distanceToCenter = Mathf.Sqrt(w.squareDistanceToCenter); w.boundsExtent = bounds.size; w.boundsExtent.x = w.boundsExtent.x * 0.5f; w.boundsExtent.y = w.boundsExtent.y * 0.5f; w.boundsExtent.z = w.boundsExtent.z * 0.5f; w.boundsExtentSquareMagnitude = w.boundsExtent.x * w.boundsExtent.x + w.boundsExtent.y * w.boundsExtent.y + w.boundsExtent.z * w.boundsExtent.z; w.squareRayDistance = w.boundsSquareDistance + w.boundsExtentSquareMagnitude; if (w.squareRayDistance > w.squareDistanceToCenter) { w.squareRayDistance = w.squareDistanceToCenter; w.rayDistance = w.distanceToCenter; } else { if (w.squareRayDistance <= 9.99999944E-11f) { w.rayDistance = (w.squareRayDistance = 0f); w.rayTest = false; return(true); } w.rayDistance = Mathf.Sqrt(w.squareRayDistance); } w.rayTest = true; return(true); }
// Token: 0x06002E5F RID: 11871 RVA: 0x000B1E84 File Offset: 0x000B0084 public bool Equals(ref global::ExplosionHelper.Work w) { return(this.squareDistanceToCenter == w.squareDistanceToCenter && this.boundsSquareDistance == w.boundsSquareDistance && this.boundsExtentSquareMagnitude == w.boundsExtentSquareMagnitude && this.distanceToCenter == w.distanceToCenter && ((!this.rayTest) ? (!w.rayTest) : (w.rayTest && this.squareRayDistance == w.squareRayDistance && this.rayDistance == w.rayDistance && this.rayDir == w.rayDir)) && this.center == w.center && this.boundsExtent == w.boundsExtent); }