Exemple #1
0
    private void FixedUpdate()
    {
        if (livesLeft < 1)
        {
            Destroy(this);
        }

        if (!isLocalPlayer)
        {
            return;
        }

        if (lifesLeft <= 0)
        {
            return;
        }

        float moveAxis       = Input.GetAxis(MoveInputAxis);
        float turnAxis       = Input.GetAxis(TurnInputAxis);
        bool  shiftKey       = Input.GetKey(KeyCode.LeftShift);
        bool  getMouseButton = Input.GetMouseButtonDown(0);
        float mouseLefRight  = horizontalSpeed * Input.GetAxis("Mouse X");
        float mouseUpDown    = horizontalSpeed * Input.GetAxis("Mouse Y");

        if (getMouseButton && ammoInJacket > 0)
        {
            print(("hako kurwa player???"));
            nextTimeToFire = Time.time + 1f / gun.fireRate;
            anim.SetTrigger("weaponFire");
            Shoot();
        }

        if (getMouseButton == false)
        {
            anim.SetBool("weaponFire", false);
        }


        // heal
        if (Input.GetKeyDown(KeyCode.H) &&
            healthPoints < 100 &&
            amountOfApteczkaInt > 0)
        {
            amountOfApteczkaInt--;
            int healing     = (int)(0.3 * 100);
            int acctualHeal = Random.Range(20, healing);
            healthPoints += acctualHeal;

            if (healthPoints > 100)
            {
                healthPoints = 100;
            }

            textHealthUI.text           = healthPoints.ToString();
            fillageOfHpImage.fillAmount = healthPoints / 100;
        }


        // RELOAD
        if (Input.GetKeyDown(KeyCode.R) && ammoInJacket < jacketCapacity)
        {
            ///////
            int actualAmmo = ammoInJacket;
            int ammoNedded = jacketCapacity - actualAmmo;

            if (ammoNedded > 0 && totalAmmo >= ammoNedded)
            {
                ammoInJacket += ammoNedded;
                totalAmmo    -= ammoNedded;
                gun.reload();

                acctualWeaponJacketAmmoText.text = ammoInJacket.ToString();
                acctualWeaponTotalAmmoText.text  = totalAmmo.ToString();
                anim.SetTrigger("reload");
            }
        }

        //left diagonal m1t1
        if (moveAxis > 0 && turnAxis > 0)
        {
            moveSpeed   = 0.9f;
            leftOrRight = 1.1f;
        }

        //left m0t1
        else if (moveAxis == 0 && turnAxis > 0)
        {
            moveSpeed   = 1.1f;
            leftOrRight = 1.1f;
        }

        //right diagonal m1t-1
        else if (moveAxis > 0 && turnAxis < 0)
        {
            moveSpeed   = 0.9f;
            leftOrRight = -1.1f;
        }

        //right m0t-1
        else if (moveAxis == 0 && turnAxis < 0)
        {
            moveSpeed   = 1.1f;
            leftOrRight = -1.1f;
        }

        //run sprint forwart

        else if (moveAxis > 0 && turnAxis == 0)
        {
            moveSpeed   = 1.1f;
            leftOrRight = 0f;

            if (shiftKey)
            {
                moveSpeed = 2.5f;
            }

            if (inWater)
            {
                moveSpeed = 0.5f;
            }
        }

        //run back
        else if (moveAxis < 0 && turnAxis == 0)
        {
            moveSpeed   = -1.1f;
            leftOrRight = 0f;
        }

        //stand still
        else
        {
            leftOrRight = 0f;
            moveSpeed   = 0f;
        }
        ////////////////////////

        ///APPLY
        if (moveAxis < 0)
        {
            turnAxis *= -1;
        }

        ApplyInput(moveAxis, turnAxis);
        aimScript.SetRotation(mouseUpDown);
        anim.SetFloat("AimAngle", aimScript.GetAngle());
        anim.SetFloat("moveSpeed", moveSpeed);
        anim.SetFloat("leftOrRight", leftOrRight);

        transform.Rotate(0, mouseLefRight, 0);

        StepSound();

        RenderHUD();
    }
Exemple #2
0
    private void FixedUpdate()
    {
        gun       = weaponHolder.selectedGun;
        sceneName = SceneManager.GetActiveScene().name;

        if (sceneName.Equals("Cave"))
        {
            anim.SetBool("weaponOut", false);
            weapon_out = false;
        }

        if (!isDead)
        {
            if (healthPoints <= 0 && isDead == false)
            {
                death();
            }

            // ws
            float moveAxis = Input.GetAxis(MoveInputAxis);
            //ad
            float turnAxis = Input.GetAxis(TurnInputAxis);
            //shift
            bool shiftKey = Input.GetKey(KeyCode.LeftShift);
            // bool spaceBar = Input.GetKeyDown(KeyCode.Space);
            bool mouseClick           = Input.GetMouseButton(0);
            bool mouseClickDragWeapon = Input.GetMouseButtonUp(0);

            //mouse
            float mouseLefRight = horizontalSpeed * Input.GetAxis("Mouse X");
            float mouseUpDown   = horizontalSpeed * Input.GetAxis("Mouse Y");


            if (mouseClickDragWeapon && gun.ammoInJacket == 0)
            {
                gun.fireEmptyJacketSound();
            }
            // $$$$$$$$$$$$$$$$$$$$$$$$$$ fire
            if (mouseClick && gun.ammoInJacket > 0 && weapon_out == true && !sceneName.Equals("Cave") &&
                Time.time >= nextTimeToFire)
            {
                gun.ammoInJacket -= 1;
                gun.spawnBullet();
                nextTimeToFire = Time.time + 1f / gun.fireRate;
                anim.SetTrigger("weaponFire");
            }

            // if (Input.GetKey(KeyCode.LeftAlt))
            // {
            //     PlayerControllerTransform.healthPoints -= 10;
            // }

            // if (mouseClick == false)
            //     anim.SetBool("weaponFire", false);

            // $$$$$$$$$$$$$$$$$$$$$$$$$$ weapon out

            if (mouseClickDragWeapon && weapon_out == false && !sceneName.Equals("Cave"))
            {
                anim.SetBool("weaponOut", true);
                anim.SetTrigger("weaponAction");
                gun.getGun();
                weapon_out = true;
            }


            // HIDE WEAPON
            if (Input.GetKeyDown(KeyCode.LeftControl) && weapon_out)
            {
                anim.SetBool("weaponOut", false);
                weapon_out = false;
                gun.getGun();
            }

            // RELOAD
            if (Input.GetKeyDown(KeyCode.R) && gun.ammoInJacket < gun.jacketCapacity)
            {
                ///////
                int actualAmmo = gun.ammoInJacket;
                int ammoNedded = gun.jacketCapacity - actualAmmo;

                if (ammoNedded > 0 && gun.totalAmmo >= ammoNedded)
                {
                    gun.ammoInJacket += ammoNedded;
                    gun.totalAmmo    -= ammoNedded;
                    gun.reload();

                    acctualWeaponJacketAmmoText.text = gun.ammoInJacket.ToString();
                    acctualWeaponTotalAmmoText.text  = gun.totalAmmo.ToString();
                    anim.SetTrigger("reload");
                }
            }


            // HEAL
            if (Input.GetKeyDown(KeyCode.H) &&
                healthPoints < 100 &&
                amountOfApteczkaInt > 0)
            {
                amountOfApteczkaInt--;
                int healing     = (int)(0.3 * 100);
                int acctualHeal = Random.Range(20, healing);
                healthPoints += acctualHeal;
                if (healthPoints > 100)
                {
                    healthPoints = 100;
                }
                textHealthUI.text           = healthPoints.ToString();
                fillageOfHpImage.fillAmount = healthPoints / 100;
            }

            //left diagonal m1t1
            if (moveAxis > 0 && turnAxis > 0)
            {
                moveSpeed   = 0.9f;
                leftOrRight = 1.1f;
            }

            //left m0t1
            else if (moveAxis == 0 && turnAxis > 0)
            {
                moveSpeed   = 1.1f;
                leftOrRight = 1.1f;
            }

            //right diagonal m1t-1
            else if (moveAxis > 0 && turnAxis < 0)
            {
                moveSpeed   = 0.9f;
                leftOrRight = -1.1f;
            }

            //right m0t-1
            else if (moveAxis == 0 && turnAxis < 0)
            {
                moveSpeed   = 1.1f;
                leftOrRight = -1.1f;
            }

            //run sprint forwart

            else if (moveAxis > 0 && turnAxis == 0)
            {
                moveSpeed   = 1.1f;
                leftOrRight = 0f;

                if (shiftKey)
                {
                    moveSpeed = 2.5f;
                }

                if (inWater)
                {
                    moveSpeed = 0.5f;
                }
            }

            //run back
            else if (moveAxis < 0 && turnAxis == 0)
            {
                moveSpeed   = -1.1f;
                leftOrRight = 0f;
            }

            //stand still
            else
            {
                leftOrRight = 0f;
                moveSpeed   = 0f;
            }
            ////////////////////////

            ///APPLY
            if (moveAxis < 0)
            {
                turnAxis *= -1;
            }

            ApplyInput(moveAxis, turnAxis);
            aimScript.SetRotation(mouseUpDown);
            anim.SetFloat("AimAngle", aimScript.GetAngle());

            anim.SetFloat("moveSpeed", moveSpeed);
            anim.SetFloat("leftOrRight", leftOrRight);

            transform.Rotate(0, mouseLefRight, 0);
        }
        else
        {
            if (sceneName.Equals("Cave"))
            {
                respawn();
            }
        }


        if (PlayerControllerTransform.killedOpponents == 3 && !areOppKilled)
        {
            areOppKilled = true;
            SceneManager.LoadScene("Cave");
        }

        StepSound();


        RenderHUD();
    }