Small solo projects and things I try on my own

Prototypes

Small solo projects and things I try on my own

#C##UE_BP#Solo
Table of Contents
public class PlayerMovement : MonoBehaviour
{
    [Header("Movement values")]
    [SerializeField][Range(500f, 5500f)]
    float _thrustForce;
    [SerializeField][Range(50f, 250f)]
    float _pitchForce;
    [SerializeField][Range(25f, 125f)]
    float _rollForce;
    Rigidbody _rigidBody;

    float _thrustAmount;
    float _pitchAmount, _rollAmount;


    private void Awake()
    {
        _rigidBody = GetComponent<Rigidbody>();
    }
    private void Update()
    {
        _thrustForce =  Mathf.Clamp(_thrustForce, 500f, 5500f);
        _rollForce =    Mathf.Clamp(_rollForce, 25f, 125f);
        _pitchForce =   Mathf.Clamp(_pitchForce, 50f, 250f);

        _pitchAmount += Input.GetKeyDown(KeyCode.W) ? 1 :
                           Input.GetKeyUp(KeyCode.W) ? -1 : 0;
        _pitchAmount += Input.GetKeyDown(KeyCode.S) ? -1 :
                           Input.GetKeyUp(KeyCode.S) ? 1 : 0;

        _rollAmount += Input.GetKeyDown(KeyCode.A) ? 1 :
                           Input.GetKeyUp(KeyCode.A) ? -1 : 0;
        _rollAmount += Input.GetKeyDown(KeyCode.D) ? -1 :
                           Input.GetKeyUp(KeyCode.D) ? 1 : 0;


        //scroll for speed controls
        float scrollInput = Input.GetAxis("Mouse ScrollWheel");
        if (scrollInput > 0)
        {
            _thrustForce += 200;
            _rollForce += 4;
            _pitchForce += 8;
        }
        else if (scrollInput < 0)
        {            
            _thrustForce += -200;
            _rollForce += -4;
            _pitchForce += -8;
        }

    }
    private void FixedUpdate()
    {
        //You're a SpaceShip, you will ALWAYS be moving forward ! ! !
        _rigidBody.AddForce(transform.forward * (_thrustForce * Time.fixedDeltaTime));

        if (!Mathf.Approximately(0f, _pitchAmount)) 
        {
            _rigidBody.AddTorque(transform.right * (_pitchForce * _pitchAmount * Time.fixedDeltaTime));
        }
        if (!Mathf.Approximately(0f, _rollAmount)) 
        {
            _rigidBody.AddTorque(transform.forward * (_rollForce * _rollAmount* Time.fixedDeltaTime));
        }
       
        
        
            
    }
}```