Why does it say I need a semicolon

When I save my code on the unity console it says that I need a semicolon does anyone know where I should put it?
using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class movement : MonoBehaviour
{
// Start is called before the first frame update
void Start()
{

  if(Input.GetKey(KeyCode.RightArrow))
    {
    Vector3 move = new Vector3();

    move = transform.position;

    move.x += Time.deltaTime * 5;

    transform.position = move;

    }

    if(Input.GetKey(KeyCode.LeftArrow))
    {
    Vector3 move = new Vector3();

    move = transform.position;

    move.x -= Time.deltaTime * 5;

    transform.position = move;

    }

if(Input.GetKeyDown(KeyCode.UpArrow))
{
Vector3 move = new Vector3();

    move = transform.position;

    move.y time.deltaTime += 3;

    transform.position = move;
    }

    if(Input.GetKeyDown(KeyCode.DownArrow))
    { 
    Vector3 move = new Vector3();

    move = transform.position;

    move.y time.deltaTime -= 3;

    transform.position = move;
    }
 
 if (Input.GetKey(KeyCode.RightArrow))
 {
    if ( Input.GetKey(KeyCode.LeftShift))
 {
            Vector3 move = new Vector3();

    move = transform.position;

    move.x += Time.deltaTime * 10;

    transform.position = move;
 }
 }

 if (Input.GetKey(KeyCode.LeftArrow))
 {
    if ( Input.GetKey(KeyCode.LeftShift))
 {
            Vector3 move = new Vector3();

    move = transform.position;

    move.x -= Time.deltaTime * 10;

    transform.position = move;
 }
 }

 if (Input.GetKey(KeyCode.UpArrow))
 {
    if ( Input.GetKey(KeyCode.LeftShift))
 {
            Vector3 move = new Vector3();

    move = transform.position;

    move.y += Time.deltaTime * 10;

    transform.position = move;
 }
 }

 if (Input.GetKey(KeyCode.UpArrow))
 {
    if ( Input.GetKey(KeyCode.LeftShift))
 {
            Vector3 move = new Vector3();

    move = transform.position;

    move.y -= Time.deltaTime * 10;

    transform.position = move;
 }
 }

      if (Input.GetKey(KeyCode.RightArrow))
 {
    if ( Input.GetKeyDown(KeyCode.Space))
 {
            Vector3 move = new Vector3();

    move = transform.position;

    move.x time.deltaTime += 3;

    transform.position = move;
 }
 }

         if (Input.GetKey(KeyCode.LeftArrow))
 {
    if ( Input.GetKeyDown(KeyCode.Space))
 {
            Vector3 move = new Vector3();

    move = transform.position;

    move.x time.deltaTime -= 3;

    transform.position = move;
 }
 }

         if (Input.GetKey(KeyCode.UpArrow))
 {
    if ( Input.GetKeyDown(KeyCode.Space))
 {
            Vector3 move = new Vector3();

    move = transform.position;

    move.x time.deltaTime -= 3;

    transform.position = move;
 }
 }

          if (Input.GetKey(KeyCode.DownArrow))
 {
    if ( Input.GetKeyDown(KeyCode.Space))
 {
            Vector3 move = new Vector3();

    move = transform.position;

    move.y time.deltaTime -= 3;

    transform.position = move;
 }
 }   }

// Update is called once per frame
void Update()
{

}

}
`

I don’t see where you need a semicolon but the error message should tell you the line number. However, you do have several problems of the same type. Wherever you have a statement like this: move.y time.deltaTime += 3;, there is a syntax error. You need to visit each of those and fix them. It\s not clear what you’re trying to do. The class Time should be have a capital letter and Time.deltaTime is a tiny amount compared to 3 so do have a think about what you are trying to do in terms of your logic.

Oh boy… First up: as already pointed out: the error tells you where the issue is (mostly at least approximatly) → always add this information as it makes our lives way easier.

Apart from that: there are multiple lines like this: (taken from line

  move.x time.deltaTime += 3;

where some things are missing. I guess this is what you want to have:

   move.x = time.deltaTime * 3;

Even with that out of the way: Your code is executed in Start. You want to move all this to Update instead.

But most importantly learn abour D.R.Y. Code. Meaning: Don’t Repeat Yourself.

You repeat this here like 10 times in your code:

 Vector3 move = new Vector3();
 move = transform.position;
 move.x -= Time.deltaTime * 5;
 transform.position = move;

If you add a function like this:

public void movePosition(float deltax, float deltay)
{
    Vector3 move = transform.position;
    move.x -= deltax;
    move.y -= deltay;
    transform.position = move;
}

Where you call it like this:

 if(Input.GetKey(KeyCode.RightArrow))
 {
      movePosition(Time.deltaTime * 5, 0f);
 }

You can shorten your code by around 90% by adding calls to that function and at the same time make it:

  • more readable
  • more maintainable (change one line to change a lot of behaviour)
  • shorter
  • easier to debug
  • less prone to copy paste bugs like the one we have in your current code.