Пример #1
0
    // Update is called once per frame
    void LateUpdate()
    {
        if (playerState.IsShooting())
        {
            timeSinceLastShot = 0f;
        }
        else
        {
            timeSinceLastShot += Time.deltaTime;
        }
        if (playerState.IsStanding()) //Standing Form
        {
            morphed = false;
            if (playerJump.IsGrounded()) //On Ground
            {
                shotInAir = false;
                spinMove  = false;
                running   = playerState.IsRunning();
                if (playerDirection.IsHoldingUp()) //Is holding up key
                {
                    playerState.SetLookingUp(true);
                }
                else //isnt holding up key
                {
                    playerState.SetLookingUp(false);
                }
            }
            else //In Air
            {
                running = false;
                if (playerState.IsShooting()) //is shooting
                {
                    shotInAir = true;
                }
                if (shotInAir)
                {
                    if (playerDirection.IsHoldingUp()) //is holding up key
                    {
                        playerState.SetLookingUp(true);
                        if (playerState.IsMissleOn())
                        {
                            spriteRenderer.sprite = missleJumpShootUp;
                        }
                        else
                        {
                            spriteRenderer.sprite = jumpShootUp;
                        }
                    }
                    else //isnt holding up key
                    {
                        playerState.SetLookingUp(false);

                        if (playerState.IsMissleOn())
                        {
                            spriteRenderer.sprite = missleJumpShootRight;
                        }
                        else
                        {
                            spriteRenderer.sprite = jumpShootRight;
                        }
                    }
                    spinMove = false;
                }
                else if (playerJump.IsStillJumped()) //jumped from stationary
                {
                    if (playerState.IsMissleOn())
                    {
                        spriteRenderer.sprite = missleStillJumpRight;
                    }
                    else
                    {
                        spriteRenderer.sprite = stillJumpRight;
                    }

                    spinMove = false;
                }
                else if (playerJump.IsMoveJumped()) //is beyblade
                {
                    spinMove = true;
                }
            }
        }
        else //morph ball
        {
            morphed = true;
        }
    }