diff options
author | chai <215380520@qq.com> | 2024-05-20 22:36:58 +0800 |
---|---|---|
committer | chai <215380520@qq.com> | 2024-05-20 22:36:58 +0800 |
commit | a22c505984697881f5f911a165ee022087b69e09 (patch) | |
tree | d3c030aef1ae9b8a01c889dd2902bb1e3324e72b /Thronefall_v1.0/Rewired/Rewired.Demos/CustomControllersTiltDemo.cs | |
parent | 4a4cc82d069b26bc4d4532e73860f86b211ca239 (diff) |
Diffstat (limited to 'Thronefall_v1.0/Rewired/Rewired.Demos/CustomControllersTiltDemo.cs')
-rw-r--r-- | Thronefall_v1.0/Rewired/Rewired.Demos/CustomControllersTiltDemo.cs | 47 |
1 files changed, 47 insertions, 0 deletions
diff --git a/Thronefall_v1.0/Rewired/Rewired.Demos/CustomControllersTiltDemo.cs b/Thronefall_v1.0/Rewired/Rewired.Demos/CustomControllersTiltDemo.cs new file mode 100644 index 0000000..d24caf2 --- /dev/null +++ b/Thronefall_v1.0/Rewired/Rewired.Demos/CustomControllersTiltDemo.cs @@ -0,0 +1,47 @@ +using UnityEngine; + +namespace Rewired.Demos; + +[AddComponentMenu("")] +public class CustomControllersTiltDemo : MonoBehaviour +{ + public Transform target; + + public float speed = 10f; + + private CustomController controller; + + private Player player; + + private void Awake() + { + Screen.orientation = ScreenOrientation.LandscapeLeft; + player = ReInput.players.GetPlayer(0); + ReInput.InputSourceUpdateEvent += OnInputUpdate; + controller = (CustomController)player.controllers.GetControllerWithTag(ControllerType.Custom, "TiltController"); + } + + private void Update() + { + if (!(target == null)) + { + Vector3 zero = Vector3.zero; + zero.y = player.GetAxis("Tilt Vertical"); + zero.x = player.GetAxis("Tilt Horizontal"); + if (zero.sqrMagnitude > 1f) + { + zero.Normalize(); + } + zero *= Time.deltaTime; + target.Translate(zero * speed); + } + } + + private void OnInputUpdate() + { + Vector3 acceleration = Input.acceleration; + controller.SetAxisValue(0, acceleration.x); + controller.SetAxisValue(1, acceleration.y); + controller.SetAxisValue(2, acceleration.z); + } +} |