adrian
0
Q:

unity making object move forward without input

 using UnityEngine; using System.Collections.Generic;  public class BoatControl : MonoBehaviour {      [Header("Values")]     public Rigidbody boat;     public KeyCode forwardMove;     public KeyCode backwardMove;     public KeyCode turnLeft;     public KeyCode turnRight;     public float boatSpeed;     public float boatTurnSpeed;     public float dampSpeed;     public float dampTurning;      [Header("Debug")]     public float forwardVel;     public float turnVel;      void Update() {         MoveShip ();         TurnShip ();     }      void FixedUpdate() {         boat.transform.position += transform.forward * (forwardVel * Time.deltaTime);         boat.transform.Rotate (new Vector3 (0, turnVel, 0), Space.Self);     }      void MoveShip() {         if (Input.GetKey (forwardMove)) {             forwardVel = Mathf.Lerp (forwardVel, boatSpeed, (dampSpeed * Time.deltaTime));         } else if (Input.GetKey (backwardMove)) {             forwardVel = Mathf.Lerp (forwardVel, -boatSpeed, (dampSpeed * Time.deltaTime));         } else {             forwardVel = Mathf.Lerp (forwardVel, 0, (5 * Time.deltaTime));         }     }      void TurnShip() {         if (Input.GetKey (turnLeft)) {             turnVel = Mathf.Lerp (turnVel, -boatTurnSpeed, (dampSpeed * Time.deltaTime));         } else if (Input.GetKey (turnRight)) {             turnVel = Mathf.Lerp (turnVel, boatTurnSpeed, (dampSpeed * Time.deltaTime));         } else {             turnVel = Mathf.Lerp (turnVel, 0, (5 * Time.deltaTime));         }     } }
0

New to Communities?

Join the community