Esempio n. 1
0
        public override void OnEnter()
        {
            //Steal variables again
            var goodState = new MineArmingWeak();

            if (string.IsNullOrEmpty(pathToChildToEnable))
            {
                pathToChildToEnable    = goodState.pathToChildToEnable;
                onEnterSfxPlaybackRate = goodState.onEnterSfxPlaybackRate;
                onEnterSfx             = goodState.onEnterSfx;
                triggerRadius          = goodState.triggerRadius;
                blastRadiusScale       = goodState.blastRadiusScale;
                forceScale             = goodState.forceScale;
                damageScale            = goodState.damageScale;
            }
            //No trigger radius at this stage
            triggerRadius = 0f;
            base.OnEnter();
        }
 private void On_ESMineArmingWeak(On.EntityStates.Engi.Mine.MineArmingWeak.orig_FixedUpdate orig, MineArmingWeak self)
 {
     if (self.outer.name != "FootMine(Clone)")
     {
         orig(self);
     }
     else if (NetworkServer.active && !self.projectileController.owner)
     {
         if (Detonate.explosionEffectPrefab)
         {
             EffectManager.SpawnEffect(Detonate.explosionEffectPrefab, new EffectData
             {
                 origin   = self.transform.position,
                 rotation = self.transform.rotation,
                 scale    = Detonate.blastRadius * 0.3f
             }, true);
         }
         EntityState.Destroy(self.gameObject);
     }
 }
Esempio n. 3
0
 private void On_ESMineArmingWeak(On.EntityStates.Engi.Mine.MineArmingWeak.orig_FixedUpdate orig, MineArmingWeak self)
 {
     if (self.outer.name != "InstantMine(Clone)")
     {
         orig(self);
     }
     else
     {
         self.outer.SetNextState(new MineArmingFull());
     }
 }