static void Main(string[] args)
        {
            DeathStar ds = new DeathStar(4, 3);

            ds.FireLaser();
            Console.ReadLine();
        }
Exemple #2
0
 private void decideNextMovementType()
 {
     if (m_MovementState == MovementState.MovingHorizontal)
     {
         SetMovementState(MovementState.MovingHorizontal);
     }
     else if (m_MovementState == MovementState.MovingBounceBackFromZap)
     {
         SetSpeedMultiplier(1.0f, true);
         SetMovementState(MovementState.MovingHorizontal);
     }
     else if (m_MovementState == MovementState.MovingVertical)
     {
         ZapGrid currZapGrid = GameMaster.Instance.m_ZapManager.GetZapGrid();
         if (m_CurrRow == currZapGrid.GetNumRows())
         {
             MoveToWarpZone();
             return;
         }
         SetMovementState(MovementState.MovingHorizontal);
     }
     else if (m_MovementState == MovementState.MovingToWarpZone)
     {
         m_TargetPosition = this.transform.position;
         m_StartPosition  = this.transform.position;
         shouldRotateInTowardTargetPosition = false;
         if (!m_PlayerDecorations.GetWarpZonePS().isPlaying)
         {
             m_PlayerDecorations.ShowWarpZonePS();
         }
         GameMaster.Instance.m_UIManager.m_ShopCanvas.m_WarpStorePanel.Show();
     }
     else if (m_MovementState == MovementState.MovingToZapGrid)
     {
         SetMovementState(MovementState.MovingHorizontal);
         DeathStar deathStar = GameMaster.Instance.m_DeathStar;
         if (deathStar)
         {
             deathStar.ResetPosition();
             deathStar.SetIsMoving(true);
         }
     }
     else if (m_MovementState == MovementState.MovingRocketJump)
     {
         GameMaster.Instance.m_PlayerStats.SetInvicible(false);
         SetMovementState(MovementState.MovingHorizontal);
         m_CanMove = true;
         if (m_PlayerDecorations != null)
         {
             m_PlayerDecorations.DeactivateLockdown();
             m_PlayerDecorations.DeactivateAtmosphereFire();
         }
     }
 }
Exemple #3
0
    void Start()
    {
        m_StatsManager = GameMaster.Instance.m_StatsManager;
        if (m_StatsManager == null)
        {
            Debug.LogError("Cant find stats manager in ZapMoney");
        }

        m_DeathStar = GameMaster.Instance.m_DeathStar;
        if (m_DeathStar == null)
        {
            Debug.LogError("Cant find death star in ZapMoney");
        }
    }
Exemple #4
0
        private void lerpToTarget()
        {
            // make sure target and start position are set before lerping
            if (m_TargetPosition == null || m_StartPosition == null)
            {
                return;
            }

            float startToFinishDistance = (m_TargetPosition - m_StartPosition).magnitude;

            if (m_MovementState == MovementState.MovingHorizontal || m_MovementState == MovementState.MovingVertical ||
                m_MovementState == MovementState.MovingRocketJump || m_MovementState == MovementState.MovingBounceBackFromZap)
            {
                // Lerp normal
                m_LerpAmount           += Time.deltaTime * m_SpeedMultiplier * m_CurrHorizontalSpeed;
                m_LerpPercentage        = m_LerpAmount / startToFinishDistance;
                this.transform.position = Vector3.Lerp(m_StartPosition, m_TargetPosition, m_LerpPercentage);
            }
            else if (m_MovementState == MovementState.MovingToWarpZone)
            {
                m_LerpAmount           += Time.deltaTime * m_SpeedMultiplier * m_ToWarpZoneSpeed;
                m_LerpPercentage        = m_LerpAmount / startToFinishDistance;
                this.transform.position = Vector3.Lerp(m_StartPosition, m_TargetPosition, m_LerpPercentage);
                // Lerp size of player to original size
                m_PlayerScaler.LerpToOriginalScale(m_LerpPercentage);
            }
            else if (m_MovementState == MovementState.MovingToZapGrid)
            {
                DeathStar deathStar = GameMaster.Instance.m_DeathStar;
                if (deathStar)
                {
                    deathStar.SetIsMoving(false);
                }
                shouldRotateInTowardTargetPosition = true;
                m_LerpAmount           += Time.deltaTime * m_SpeedMultiplier * m_CurrVerticalSpeed;
                m_LerpPercentage        = m_LerpAmount / startToFinishDistance;
                this.transform.position = Vector3.Lerp(m_StartPosition, m_TargetPosition, m_LerpPercentage);
                // Scale player to match zap grid size.
                m_PlayerScaler.LerpToZapScale(m_LerpPercentage);
            }

            // check to see if we reached target
            if (m_LerpPercentage >= 1.0f)
            {
                m_PlayerScaler.ResetPlayerScaler();
                decideNextMovementType();
                //SetSpeedMultiplier(1.0f, true);
                m_LerpAmount = 0.0f;
                fillMovementData();

                // If we get to the end of the grid then go to warp zone

                /*if (m_CurrZap != null)
                 * {
                 *  if (m_CurrZap.GetComponent<EndZap>())
                 *  {
                 *      MoveToWarpZone();
                 *  }
                 * }*/
            }
        }