示例#1
0
    void Start()
    {
        Cursor.lockState = CursorLockMode.Locked;
        Cursor.visible   = false;
        armaFogo         = false;

        comboTempoAtual = comboTempoPadrao;
        comboEstado     = ComboPicareta.none;

        picaretaGO[0].SetActive(false);
        picaretaGO[1].SetActive(true);
        abaixado = false;
        AnimaBool("Abaixar", abaixado);
        selecionaArma = SelecionaArma.none;
    }
示例#2
0
    void Update()
    {
        if (Input.GetMouseButton(1))
        {
            if (!mirando)
            {
                animator.SetTrigger("AtivaMira");
            }
            mirando = true;
            animator.SetBool("Mirando", mirando);
        }
        else
        {
            mirando = false;
            animator.SetBool("Mirando", mirando);
        }
        if (picareta)
        {
            animator.SetLayerWeight(2, 1);
        }
        else
        {
            animator.SetLayerWeight(2, 0);
        }

        if (armaGatilho)
        {
            limite2 += Time.deltaTime * 2;
            limite2  = Mathf.Clamp(limite2, 0, 1);
            animator.SetLayerWeight(4, limite2);
        }
        else
        {
            limite2 -= Time.deltaTime * 2;
            limite2  = Mathf.Clamp(limite2, 0, 1);
            animator.SetLayerWeight(4, limite2);
        }



        if (controller.isGrounded)
        {
            tempoAr = 2;
            AnimaBool("NoChao", true);

            CalculoMovimentoAng();

            if (Input.GetKeyDown(KeyCode.Space))
            {
                moveDir.y = puloForca;
                AnimaBool("NoChao", false);
                noAr = true;
            }
            noAr = false;
        }
        else
        {
            tempoAr -= Time.deltaTime;
            if (tempoAr < 1.6f)
            {
                AnimaBool("NoChao", false);
                noAr = true;
            }
        }

        moveDir.y -= gravidade * Time.deltaTime;
        controller.Move(moveDir);

        if (Input.GetKeyDown(KeyCode.LeftControl))
        {
            DefineAnimacaoAbaixar();
        }

        //PICARETA

        if (Input.GetKeyDown(KeyCode.Z))
        {
            selecionaArma = SelecionaArma.picareta;
            picareta      = !picareta;
            animator.SetTrigger("ARMADO");
        }

        //RIFLE
        if (Input.GetKeyDown(KeyCode.X))
        {
            selecionaArma = SelecionaArma.rifle;
            rifleBool     = !rifleBool;
            animator.SetTrigger("ARMADO");
        }

        if (picareta)
        {
            if (Input.GetMouseButtonDown(0))
            {
                if (comboEstado == ComboPicareta.golpe2)
                {
                    return;
                }

                comboEstado++;
                ativaTempoReset = true;
                comboTempoAtual = comboTempoPadrao;

                if (comboEstado == ComboPicareta.golpe1)
                {
                    AnimaBool("GOLPE1", true);
                }

                if (comboEstado == ComboPicareta.golpe2)
                {
                    AnimaBool("GOLPE2", true);
                }
            }

            ResetCombo();

            if (moveX != 0 || moveZ != 0)
            {
                limite += Time.deltaTime * 5;
                limite  = Mathf.Clamp(limite, 0, 1);
                animator.SetLayerWeight(1, limite);
            }
            else if (moveX == 0 && moveZ == 0)
            {
                limite -= Time.deltaTime * 5;
                limite  = Mathf.Clamp(limite, 0, 1);
                animator.SetLayerWeight(1, limite);
            }
        }
        RotacaoParado();

        if ((moveX != 0 || moveZ != 0) && Slop())
        {
            controller.Move(Vector3.down * controller.height / 2 * slopForce * Time.deltaTime);
        }
    }