diff options
Diffstat (limited to 'Assets/Scripts/PlayerController.cs')
-rw-r--r-- | Assets/Scripts/PlayerController.cs | 40 |
1 files changed, 40 insertions, 0 deletions
diff --git a/Assets/Scripts/PlayerController.cs b/Assets/Scripts/PlayerController.cs new file mode 100644 index 0000000..2e3ec7b --- /dev/null +++ b/Assets/Scripts/PlayerController.cs @@ -0,0 +1,40 @@ +using System; +using System.Collections; +using System.Collections.Generic; +using UnityEngine; + +public class PlayerController : MonoBehaviour +{ + [SerializeField] private List<Rigidbody2D> segments; + [SerializeField] private float sensitivity; + + private void Update() + { + if (Input.GetKey(KeyCode.D)) + { + segments[0].AddForceAtPosition(Vector2.right * sensitivity, (Vector2)segments[0].transform.position - Vector2.up * 0.5f); + } + else if (Input.GetKey(KeyCode.A)) + { + segments[0].AddForceAtPosition(Vector2.left * sensitivity, (Vector2)segments[0].transform.position - Vector2.up * 0.5f); + } + + if (Input.GetKey(KeyCode.L)) + { + segments[1].AddForceAtPosition(Vector2.right * sensitivity, (Vector2)segments[1].transform.position + Vector2.up * 0.5f); + } + else if (Input.GetKey(KeyCode.J)) + { + segments[1].AddForceAtPosition(Vector2.left * sensitivity, (Vector2)segments[1].transform.position + Vector2.up * 0.5f); + } + + if (Input.GetKey(KeyCode.RightArrow)) + { + segments[2].AddForceAtPosition(Vector2.right * sensitivity, (Vector2)segments[2].transform.position + Vector2.up * 0.5f); + } + else if (Input.GetKey(KeyCode.LeftArrow)) + { + segments[2].AddForceAtPosition(Vector2.left * sensitivity, (Vector2)segments[2].transform.position + Vector2.up * 0.5f); + } + } +} |