コード例 #1
0
 private void ForceStop()
 {
     if (TargetAnimator)
     {
         TargetAnimator.renderer.enabled = false;
     }
     if (HitEffectAnimator)
     {
         HitEffectAnimator.renderer.enabled = false;
     }
     if (sprite)
     {
         sprite.renderer.enabled = false;
     }
     if (ShadowAnimator)
     {
         ShadowAnimator.renderer.enabled = false;
     }
     specRigidbody.enabled = false;
     if (m_bulletSource)
     {
         m_bulletSource.ForceStop();
     }
     SetState(ExpandHammerState.Gone);
 }
コード例 #2
0
 private void EndState(DashState state)
 {
     if (state == DashState.Dash)
     {
         if (!string.IsNullOrEmpty(dashAnim))
         {
             m_aiAnimator.EndAnimationIf(dashAnim);
         }
         if (bulletScript != null && !bulletScript.IsNull && m_shouldFire)
         {
             Fire();
         }
         if (doDodgeDustUp)
         {
             m_aiActor.DoDustUps = m_cachedDoDustups;
         }
         if (hideShadow && m_shadowSprite)
         {
             m_shadowSprite.renderer.enabled = true;
         }
         if (hideGun && m_aiShooter)
         {
             m_aiShooter.ToggleGunAndHandRenderers(true, "ExpandDashBehavior");
         }
         if (hideGun && gunHands != null && gunHands.Count > 0)
         {
             foreach (GunHandController gunHand in gunHands)
             {
                 if (gunHand.Gun)
                 {
                     gunHand.Gun.sprite.renderer.enabled = true;
                 }
                 if (gunHand.handObject)
                 {
                     gunHand.handObject.sprite.renderer.enabled = true;
                 }
             }
         }
         if (toggleTrailRenderer && m_trailRenderer)
         {
             m_trailRenderer.enabled = false;
         }
         if (enableShadowTrail)
         {
             m_shadowTrail.spawnShadows = false;
         }
         if (postDashSpeed <= 0f)
         {
             m_aiActor.BehaviorVelocity = Vector2.zero;
         }
         if (m_bulletSource != null)
         {
             m_bulletSource.ForceStop();
         }
     }
 }
コード例 #3
0
        private void EndState(FireState state)
        {
            switch (state)
            {
            case FireState.Charging:
                m_aiActor.BehaviorVelocity           = Vector2.zero;
                m_aiActor.CollisionKnockbackStrength = m_cachedKnockback;
                m_aiActor.CollisionDamage            = m_cachedDamage;
                m_aiActor.CollisionVFX         = m_cachedVfx;
                m_aiActor.NonActorCollisionVFX = m_cachedNonActorWallVfx;
                if (m_trailVfx)
                {
                    ParticleKiller component = m_trailVfx.GetComponent <ParticleKiller>();
                    if (component)
                    {
                        component.StopEmitting();
                    }
                    else
                    {
                        SpawnManager.Despawn(m_trailVfx);
                    }
                    m_trailVfx = null;
                }
                m_aiActor.DoDustUps      = m_cachedDoDustUps;
                m_aiActor.DustUpInterval = m_cachedDustUpInterval;
                m_aiActor.PathableTiles  = m_cachedPathableTiles;
                if (switchCollidersOnCharge)
                {
                    m_enemyCollider.CollisionLayer = CollisionLayer.EnemyCollider;
                    m_enemyHitbox.Enabled          = true;
                    m_projectileCollider.Enabled   = false;
                }
                if (m_bulletSource != null)
                {
                    m_bulletSource.ForceStop();
                }
                m_aiAnimator.EndAnimationIf(chargeAnim);
                break;

            default:
                return;
            }
        }