// Token: 0x060017D5 RID: 6101 RVA: 0x000674CC File Offset: 0x000656CC
        public bool Fire(List <HealthComponent> hitResults = null)
        {
            if (!this.hitBoxGroup)
            {
                return(false);
            }
            HitBox[] hitBoxes = this.hitBoxGroup.hitBoxes;
            for (int i = 0; i < hitBoxes.Length; i++)
            {
                Transform  transform = hitBoxes[i].transform;
                Vector3    position  = transform.position;
                Vector3    vector    = transform.lossyScale * 0.5f;
                Quaternion rotation  = transform.rotation;
                if (float.IsInfinity(vector.x) || float.IsInfinity(vector.y) || float.IsInfinity(vector.z))
                {
                    Chat.AddMessage("Aborting OverlapAttack.Fire: hitBoxHalfExtents are infinite.");
                }
                else if (float.IsNaN(vector.x) || float.IsNaN(vector.y) || float.IsNaN(vector.z))
                {
                    Chat.AddMessage("Aborting OverlapAttack.Fire: hitBoxHalfExtents are NaN.");
                }
                else if (float.IsInfinity(position.x) || float.IsInfinity(position.y) || float.IsInfinity(position.z))
                {
                    Chat.AddMessage("Aborting OverlapAttack.Fire: hitBoxCenter is infinite.");
                }
                else if (float.IsNaN(position.x) || float.IsNaN(position.y) || float.IsNaN(position.z))
                {
                    Chat.AddMessage("Aborting OverlapAttack.Fire: hitBoxCenter is NaN.");
                }
                else if (float.IsInfinity(rotation.x) || float.IsInfinity(rotation.y) || float.IsInfinity(rotation.z) || float.IsInfinity(rotation.w))
                {
                    Chat.AddMessage("Aborting OverlapAttack.Fire: hitBoxRotation is infinite.");
                }
                else if (float.IsNaN(rotation.x) || float.IsNaN(rotation.y) || float.IsNaN(rotation.z) || float.IsNaN(rotation.w))
                {
                    Chat.AddMessage("Aborting OverlapAttack.Fire: hitBoxRotation is NaN.");
                }
                else
                {
                    Collider[] array = Physics.OverlapBox(position, vector, rotation, LayerIndex.entityPrecise.mask);
                    int        num   = array.Length;
                    int        num2  = 0;
                    for (int j = 0; j < num; j++)
                    {
                        HurtBox component = array[j].GetComponent <HurtBox>();
                        if (component && this.HurtBoxPassesFilter(component))
                        {
                            Vector3 position2 = component.transform.position;
                            this.overlapList.Add(new OverlapAttack.OverlapInfo
                            {
                                hurtBox       = component,
                                hitPosition   = position2,
                                pushDirection = (position2 - position).normalized
                            });
                            this.ignoredHealthComponentList.Add(component.healthComponent);
                            if (hitResults != null)
                            {
                                hitResults.Add(component.healthComponent);
                            }
                            num2++;
                        }
                        if (num2 >= this.maximumOverlapTargets)
                        {
                            break;
                        }
                    }
                }
            }
            this.ProcessHits(this.overlapList);
            bool result = this.overlapList.Count > 0;

            this.overlapList.Clear();
            return(result);
        }
 private static void CCSteamLobbyCopyToClipboard(ConCommandArgs args)
 {
     ConCommandException.CheckSteamworks();
     GUIUtility.systemCopyBuffer = TextSerialization.ToStringInvariant(SteamworksLobbyManager.client.Lobby.CurrentLobby);
     Chat.AddMessage(Language.GetString("STEAM_COPY_LOBBY_TO_CLIPBOARD_MESSAGE"));
 }