// Token: 0x060030A4 RID: 12452 RVA: 0x000D18D2 File Offset: 0x000CFAD2
 public override void OnEnter()
 {
     base.OnEnter();
     if (NetworkServer.active)
     {
         this.targetFinder         = base.GetComponent <ProjectileSphereTargetFinder>();
         this.targetFinder.enabled = true;
     }
     base.PlayAnimation("Base", "Armed");
 }
        public override void OnEnter()
        {
            base.OnEnter();
            //Get target component
            projectileTargetComponent = base.GetComponent <ProjectileTargetComponent>();
            //Get target finder
            targetFinder = base.GetComponent <ProjectileSphereTargetFinder>();

            //Network check
            if (NetworkServer.active)
            {
                //Enable the target finder
                targetFinder.enabled = true;
                //Set the arming state to the last state
                armingStateMachine.SetNextState(new TeslaArmingWeakState());
            }
        }
 public override void OnEnter()
 {
     base.OnEnter();
     //Network check
     if (NetworkServer.active)
     {
         //Set the arming machine state
         armingStateMachine.SetNextState(new TeslaArmingUnarmedState());
         //Establish the targetfnider
         targetFinder = GetComponent <ProjectileSphereTargetFinder>();
         //It should exist, and if it does disable it cause we ain't searching yet
         if (targetFinder)
         {
             targetFinder.enabled = false;
         }
     }
 }
        // Token: 0x06002DA8 RID: 11688 RVA: 0x000C1E10 File Offset: 0x000C0010
        private void FireGauntlet()
        {
            if (hasFiredGauntlet)
            {
                return;
            }
            base.characterBody.AddSpreadBloom(EntityStates.Mage.Weapon.FireFireBolt.bloom);
            hasFiredGauntlet = true;
            Ray aimRay = base.GetAimRay();

            if (childLocator)
            {
                muzzleTransform = childLocator.FindChild(muzzleString);
            }

            if (base.isAuthority)
            {
                if (!projectilePrefab)
                {
                    projectilePrefab = Resources.Load <GameObject>("prefabs/projectiles/magefireboltbasic").InstantiateClone("magefireboltcopy");
                }

                if (!filter)
                {
                    filter = projectilePrefab.AddComponent <TeamFilter>();
                }

                if (!targeter)
                {
                    targeter = projectilePrefab.AddComponent <ProjectileTargetComponent>();
                }

                if (!targetfinder)
                {
                    targetfinder                      = projectilePrefab.AddComponent <ProjectileSphereTargetFinder>();
                    targetfinder.lookRange            = 12;
                    targetfinder.allowTargetLoss      = true;
                    targetfinder.onlySearchIfNoTarget = true;
                    targetfinder.testLoS              = true;
                    targetfinder.targetSearchInterval = 0.15f;
                }

                if (!steertoward)
                {
                    steertoward = projectilePrefab.AddComponent <ProjectileSteerTowardTarget>();
                    steertoward.rotationSpeed = 360f;
                }

                if (!projectile)
                {
                    projectile                   = projectilePrefab.AddComponent <ProjectileSimple>();
                    projectile.velocity          = 50f;
                    projectile.updateAfterFiring = true;
                }

                for (int i = 0; i < 2; i++)
                {
                    ProjectileManager.instance.FireProjectile(projectilePrefab, aimRay.origin, Util.QuaternionSafeLookRotation(aimRay.direction + (new Vector3(Random.Range(-36f, 36f), Random.Range(-36f, 36f), Random.Range(-36f, 36f)) / 360f)), base.gameObject, 1f * damageStat, 0f, base.characterBody.RollCrit());
                }
            }
        }
        // Token: 0x06002DA8 RID: 11688 RVA: 0x000C1E10 File Offset: 0x000C0010
        private void FireGauntlet()
        {
            if (hasFiredGauntlet)
            {
                return;
            }
            base.characterBody.AddSpreadBloom(EntityStates.Mage.Weapon.FireFireBolt.bloom);
            hasFiredGauntlet = true;
            Ray aimRay = base.GetAimRay();

            if (childLocator)
            {
                muzzleTransform = childLocator.FindChild(muzzleString);
            }

            if (NetworkServer.active)
            {
                if (!projectilePrefab)
                {
                    projectilePrefab = Resources.Load <GameObject>("prefabs/projectiles/magefireboltbasic").InstantiateClone("magefireboltcopy");
                }

                if (!filter)
                {
                    filter = projectilePrefab.AddComponent <TeamFilter>();
                }

                if (!targeter)
                {
                    targeter = projectilePrefab.AddComponent <ProjectileTargetComponent>();
                }



                if (!steertoward)
                {
                    steertoward = projectilePrefab.AddComponent <ProjectileSteerTowardTarget>();
                    steertoward.rotationSpeed = 360f;
                }

                if (!targetfinder)
                {
                    targetfinder                      = projectilePrefab.AddComponent <ProjectileSphereTargetFinder>();
                    targetfinder.lookRange            = 16;
                    targetfinder.allowTargetLoss      = false;
                    targetfinder.onlySearchIfNoTarget = true;
                    targetfinder.testLoS              = true;
                    targetfinder.targetSearchInterval = 0.15f;
                }

                if (!projectile)
                {
                    projectile                   = projectilePrefab.AddComponent <ProjectileSimple>();
                    projectile.velocity          = 50f;
                    projectile.updateAfterFiring = true;
                }

                BullseyeSearch bullseyeSearch = new BullseyeSearch();
                bullseyeSearch.searchOrigin      = aimRay.origin;
                bullseyeSearch.searchDirection   = aimRay.direction;
                bullseyeSearch.maxDistanceFilter = 100f;
                bullseyeSearch.maxAngleFilter    = 60f;
                bullseyeSearch.teamMaskFilter    = TeamMask.allButNeutral;
                bullseyeSearch.teamMaskFilter.RemoveTeam(base.teamComponent.teamIndex);
                bullseyeSearch.sortMode = BullseyeSearch.SortMode.Angle;
                bullseyeSearch.RefreshCandidates();
                List <HurtBox> list    = bullseyeSearch.GetResults().ToList <HurtBox>();
                HurtBox        hurtBox = (list.Count > 0) ? list[0] : null;
                if (hurtBox)
                {
                    targeter.target = hurtBox.transform;
                }
                for (int i = 0; i < 2; i++)
                {
                    Quaternion direction = Util.QuaternionSafeLookRotation(aimRay.direction + (new Vector3(Random.Range(-36f, 36f), Random.Range(-36f, 36f), Random.Range(-36f, 36f)) / 360f));

                    ProjectileManager.instance.FireProjectile(projectilePrefab, aimRay.origin, direction, base.gameObject, 0.8f * damageStat, 0f, base.characterBody.RollCrit(), DamageColorIndex.Default, hurtBox ? hurtBox.gameObject : null);
                }
            }
        }