コード例 #1
0
    private void FixedUpdate()
    {
        _mode = GameLoopInstance.CurrentGameMode;
        _wait = GameLoopInstance.WaitForTimer;

        #region Joystick1
        if (_wait == false && _mode == GameType.GameMode.PVP && Controllerconfig.gamePadNum == 0)
        {
            _lookdirection = new Vector3(Input.GetAxis("LookHorizontal"), 0, Input.GetAxis("LookVertical"));

            if (_dashing)
            {
                DashProjection(Characterconfig.DashSpeed, _dashtime, _dashdirection);
            }
            if (_canmove)
            {
                Move(Characterconfig.Speed);
            }

            if (_lookdirection != new Vector3(0, 0, 0))
            {
                transform.rotation = Look(transform.rotation, _lookdirection, 15);
            }
            else
            {
                transform.rotation = Look(transform.rotation, _movedirection, 15);
            }

            #region Boundries
            if (transform.position.x > _movementboundries.x)
            {
                var XPos = _movementboundries.x - 1;
                transform.position = new Vector3(XPos, transform.position.y, transform.position.z);
            }
            else if (transform.position.x < -_movementboundries.x)
            {
                var XPos = -_movementboundries.x + 1;
                transform.position = new Vector3(XPos, transform.position.y, transform.position.z);
            }

            if (transform.position.y > _movementboundries.y)
            {
                var YPos = _movementboundries.y - 1;
                transform.position = new Vector3(transform.position.x, YPos, transform.position.z);
            }
            else if (transform.position.y < -_movementboundries.y)
            {
                var YPos = -_movementboundries.y + 1;
                transform.position = new Vector3(transform.position.x, YPos, transform.position.z);
            }

            if (transform.position.z > _movementboundries.z)
            {
                var ZPos = _movementboundries.z - 1;
                transform.position = new Vector3(transform.position.x, transform.position.y, ZPos);
            }
            else if (transform.position.z < -_movementboundries.z)
            {
                var ZPos = -_movementboundries.z + 1;
                transform.position = new Vector3(transform.position.x, transform.position.y, ZPos);
            }

            #endregion
        }
        #endregion

        #region Joystick2
        if (_wait == false && _mode == GameType.GameMode.PVP && Controllerconfig.gamePadNum == 1)
        {
            _lookdirection = new Vector3(Input.GetAxis("LookHorizontalB"), 0, Input.GetAxis("LookVerticalB"));
            if (_dashing)
            {
                DashProjection(Characterconfig.DashSpeed, _dashtime, _dashdirection);
            }
            if (_canmove)
            {
                Move(Characterconfig.Speed);
            }

            if (_lookdirection != new Vector3(0, 0, 0))
            {
                transform.rotation = Look(transform.rotation, _lookdirection, 15);
            }
            else
            {
                transform.rotation = Look(transform.rotation, _movedirection, 15);
            }

            #region Boundries
            if (transform.position.x > _movementboundries.x)
            {
                var XPos = _movementboundries.x - 1;
                transform.position = new Vector3(XPos, transform.position.y, transform.position.z);
            }
            else if (transform.position.x < -_movementboundries.x)
            {
                var XPos = -_movementboundries.x + 1;
                transform.position = new Vector3(XPos, transform.position.y, transform.position.z);
            }

            if (transform.position.y > _movementboundries.y)
            {
                var YPos = _movementboundries.y - 1;
                transform.position = new Vector3(transform.position.x, YPos, transform.position.z);
            }
            else if (transform.position.y < -_movementboundries.y)
            {
                var YPos = -_movementboundries.y + 1;
                transform.position = new Vector3(transform.position.x, YPos, transform.position.z);
            }

            if (transform.position.z > _movementboundries.z)
            {
                var ZPos = _movementboundries.z - 1;
                transform.position = new Vector3(transform.position.x, transform.position.y, ZPos);
            }
            else if (transform.position.z < -_movementboundries.z)
            {
                var ZPos = -_movementboundries.z + 1;
                transform.position = new Vector3(transform.position.x, transform.position.y, ZPos);
            }

            #endregion
        }
        #endregion
    }
コード例 #2
0
    // Update is called once per frame
    void Update()
    {
        _mode = GameLoopInstance.CurrentGameMode;
        _wait = GameLoopInstance.WaitForTimer;

        #region Joystick 1
        if (_wait == false && _mode == GameType.GameMode.PVP && Controllerconfig.gamePadNum == 0)
        {
            if (Input.GetAxis("LeftArm") >= 1 && Input.GetAxis("RightArm") <= 0)
            {
                _animator.SetFloat("AimHeldL", Input.GetAxis("LeftArm"));
                Characterbehaviourconfig.leftArm.Fire(transform, Characterbehaviourconfig.leftSpawn, Characterbehaviourconfig.leftdamager);
            }
            else
            {
                _animator.SetFloat("AimHeldL", Input.GetAxis("LeftArm"));
            }

            if (Input.GetAxis("RightArm") >= 1 && Input.GetAxis("LeftArm") <= 0)
            {
                _animator.SetFloat("AimHeldR", Input.GetAxis("RightArm"));
                Characterbehaviourconfig.rightArm.Fire(transform, Characterbehaviourconfig.rightSpawn, Characterbehaviourconfig.rightdamager);
            }
            else
            {
                _animator.SetFloat("AimHeldR", Input.GetAxis("RightArm"));
            }

            if (Input.GetButtonDown("Head"))
            {
                Debug.Log("Head Abillity not present!");
            }

            if (Input.GetButtonDown(DashButtonValue) && _dashing == false)   //  Dash Button
            {
                if (_charges >= 0)
                {
                    DashProjectionObjectA.transform.localPosition = new Vector3(0, 0, 0);
                    DashProjectionObjectB.transform.localPosition = new Vector3(0, 0, 0);
                    _dashing  = true;
                    _dashtime = _dashduration;
                    _canmove  = false;
                    _charges -= 1;
                    Debug.Log("Started Dash, -1 Dash Charge");
                }
                else
                {
                    Debug.Log("Not enough charges");
                }
            }
            DashRecharge(200, Characterconfig.DashCharges);
        }


        #endregion

        #region Joystick2
        if (_wait == false && _mode == GameType.GameMode.PVP && Controllerconfig.gamePadNum == 1)
        {
            if (Input.GetAxis("LeftArmB") >= 1 && Input.GetAxis("RightArmB") <= 0)
            {
                _animator.SetFloat("AimHeldL", Input.GetAxis("LeftArmB"));
                Characterbehaviourconfig.leftArm.Fire(transform, Characterbehaviourconfig.leftSpawn, Characterbehaviourconfig.leftdamager);
            }
            else
            {
                _animator.SetFloat("AimHeldL", Input.GetAxis("LeftArmB"));
            }

            if (Input.GetAxis("RightArmB") >= 1 && Input.GetAxis("LeftArmB") <= 0)
            {
                _animator.SetFloat("AimHeldR", Input.GetAxis("RightArmB"));
                Characterbehaviourconfig.rightArm.Fire(transform, Characterbehaviourconfig.rightSpawn, Characterbehaviourconfig.rightdamager);
            }
            else
            {
                _animator.SetFloat("AimHeldR", Input.GetAxis("RightArmB"));
            }

            if (Input.GetButtonDown("HeadB"))
            {
                Debug.Log("Head Abillity not present!");
            }

            if (Input.GetButtonDown(DashBButtonValue) && _dashing == false)   //  Dash Button
            {
                if (_charges >= 0)
                {
                    _dashing  = true;
                    _dashtime = _dashduration;
                    _canmove  = false;
                    _charges -= 1;
                    Debug.Log("Started Dash, -1 Dash Charge");
                }
                else
                {
                    Debug.Log("Not enough charges");
                }
            }
            DashRecharge(200, Characterconfig.DashCharges);
        }

        #endregion

        #region InputReliantAnimation
        if (_animator.GetFloat("AimHeldL") > 0)
        {
            _animator.SetBool("AimDoneL", true);
        }
        else if (_animator.GetFloat("AimHeldL") <= 0 &&
                 _animator.GetBool("AimReleaseL") == false &&
                 _animator.GetBool("AimDoneL") == true)
        {
            _animator.SetBool("AimDoneL", false);
            _animator.SetBool("AimReleaseL", true);
        }
        else if (_animator.GetFloat("AimHeldL") == 0 &&
                 _animator.GetBool("AimReleaseL") == true)
        {
            _animator.SetBool("AimReleaseL", false);
        }
        else
        {
            _animator.SetBool("AimDoneL", false);
            _animator.SetBool("AimReleaseL", false);
        }

        if (_animator.GetFloat("AimHeldR") > 0)
        {
            _animator.SetBool("AimDoneR", true);
        }
        else if (_animator.GetFloat("AimHeldR") == 0 &&
                 _animator.GetBool("AimReleaseR") == false &&
                 _animator.GetBool("AimDoneR") == true)
        {
            _animator.SetBool("AimDoneR", false);
            _animator.SetBool("AimReleaseR", true);
        }
        else if (_animator.GetFloat("AimHeldR") == 0 &&
                 _animator.GetBool("AimReleaseR") == true)
        {
            _animator.SetBool("AimReleaseR", false);
        }
        else
        {
            _animator.SetBool("AimDoneR", false);
            _animator.SetBool("AimReleaseR", false);
        }
        #endregion
    }