Пример #1
0
    // Update is called once per frame
    void Update()
    {
        if (isActive)
        {
            #region HP
            if (Input.GetKeyDown(KeyCode.DownArrow)) // lose HP
            {
                if (iHP != 0)
                {
                    iHP--;
                }
            }
            else if (Input.GetKeyDown(KeyCode.UpArrow)) // gain HP
            {
                if (iHP != 15)
                {
                    iHP++;
                }
            }
            #endregion

            #region Ammo
            else if (Input.GetKeyDown(KeyCode.Mouse0)) // fire
            {
                if (iAmmo > 0)
                {
                    Debug.Log("pew pew");
                    iAmmo--;
                }
            }
            else if (Input.GetKeyDown(KeyCode.R)) // reload
            {
                if (iMags > 0 && iAmmo < 30)
                {
                    iAmmo = iMagCap;
                    iMags--;
                }
            }
            #endregion

            #region Enemy
            toEnemy3  = Enemy.transform.position - transform.position;
            radAngle  = Mathf.Acos(Vector3.Dot(transform.forward, toEnemy3) / (transform.forward.magnitude * toEnemy3.magnitude));
            crossyboi = Vector3.Cross(transform.forward, toEnemy3); // enemy to right is +ve

            e_Dirs wat = doTheBigAngleCheck(radAngle);
            if (wat != currentDir)
            {
                currentDir = wat;
            }
            #endregion
        }
    }
Пример #2
0
    IEnumerator waitDirectionChange(e_Dirs pointy)
    {
        yield return(new WaitUntil(() => pointy != currentDir));

        DirChange();
    }