Files
Manual-Intervention-Required/Assets/Character/Scripts/CharacterMovementCotroller.cs
zmoixdev adf2969156 car
2026-03-07 14:35:00 -07:00

44 lines
1.2 KiB
C#

using System;
using UnityEngine;
using UnityEngine.InputSystem;
public class CharacterMovementCotroller : MonoBehaviour
{
[SerializeField] float driveSpeed = 10f;
[SerializeField] float turnSpeed = 1000f;
// Start is called once before the first execution of Update after the MonoBehaviour is created
void Start()
{
}
// Update is called once per frame
void Update()
{
EvaluateMovementInput();
}
private Vector3 turnLeft = new Vector3(0, -1, 0);
private Vector3 turnRight = new Vector3(0, 1, 0);
void EvaluateMovementInput() {
Quaternion currentRotation = transform.rotation;
if (Keyboard.current.wKey.isPressed) {
Vector3 moveBy = transform.forward * driveSpeed * Time.deltaTime;
transform.position += moveBy;
}
if (Keyboard.current.sKey.isPressed) {
Vector3 moveBy = transform.forward * -1 * driveSpeed * Time.deltaTime;
transform.position += moveBy;
}
if (Keyboard.current.aKey.isPressed) {
transform.Rotate(turnLeft * Time.deltaTime * turnSpeed);
}
if (Keyboard.current.dKey.isPressed) {
transform.Rotate(turnRight * Time.deltaTime * turnSpeed);
}
}
}