// Token: 0x06000C79 RID: 3193 RVA: 0x00038388 File Offset: 0x00036588 private void ServerFixedUpdate() { this.timer -= Time.fixedDeltaTime; if (this.timer <= 0f) { float damageMultiplier = 1f + (float)(this.stack - 1) * 0.5f; this.timer = this.interval; Collider[] array = Physics.OverlapSphere(base.transform.position, this.radius, LayerIndex.entityPrecise.mask, QueryTriggerInteraction.Collide); GameObject[] array2 = new GameObject[array.Length]; int count = 0; for (int i = 0; i < array.Length; i++) { GameObject gameObject = Util.HurtBoxColliderToBody(array[i]).gameObject; if (gameObject && Array.IndexOf <GameObject>(array2, gameObject, 0, count) == -1) { DotController.InflictDot(gameObject, this.networkedBodyAttachment.attachedBodyObject, DotController.DotIndex.Helfire, this.dotDuration, damageMultiplier); array2[count++] = gameObject; } } } }
private void ServerFixedUpdate() { timer -= Time.fixedDeltaTime; if (!(timer <= 0f)) { return; } var damageMultiplier = 1f + (stack - 1) * 0.5f; timer = interval; var array = Physics.OverlapSphere(transform.position, radius, LayerIndex.entityPrecise.mask, QueryTriggerInteraction.Collide); var array2 = new GameObject[array.Length]; var count = 0; var teamIndex = networkedBodyAttachment.attachedBodyObject.GetComponent <TeamComponent>()?.teamIndex ?? TeamIndex.None; foreach (var collider in array) { var otherGameObject = GetGameObjectFromCollider(collider); if (!otherGameObject || Array.IndexOf(array2, otherGameObject, 0, count) != -1) { continue; } var otherTeamIndex = otherGameObject.GetComponent <TeamComponent>()?.teamIndex ?? TeamIndex.None; // Don't affect friendlies if (teamIndex == TeamIndex.Player && otherTeamIndex == TeamIndex.Player) { continue; } DotController.InflictDot(otherGameObject, networkedBodyAttachment.attachedBodyObject, DotController.DotIndex.Helfire, dotDuration, damageMultiplier); array2[count++] = otherGameObject; } }
// Token: 0x06001033 RID: 4147 RVA: 0x00051538 File Offset: 0x0004F738 private void FixedUpdate() { this.radius = this.baseRadius * (1f + (float)(this.stack - 1) * 0.5f); if (NetworkServer.active) { this.timer -= Time.fixedDeltaTime; if (this.timer <= 0f) { float damageMultiplier = 1f + (float)(this.stack - 1) * 0.5f; this.timer = this.interval; this.bullseyeSearch.searchOrigin = base.transform.position; this.bullseyeSearch.maxDistanceFilter = this.radius; this.bullseyeSearch.RefreshCandidates(); foreach (GameObject victimObject in (from hurtBox in this.bullseyeSearch.GetResults() where hurtBox.healthComponent select hurtBox.healthComponent.gameObject).Distinct <GameObject>()) { DotController.InflictDot(victimObject, this.networkedBodyAttachment.attachedBodyObject, DotController.DotIndex.Helfire, this.dotDuration, damageMultiplier); } } } }