How do you add a time delay to this script ?

I am trying to move a end game trigger column to the left after a certain amount of time. How would I go about adding a time delay so that it can be spawned after 10 seconds.

This is my code.

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class move: MonoBehaviour {

public float speed;

// Use this for initialization
void Start() { 

// Update is called once per frame
void Update() { 
 transform.position += Vector3.left * speed * Time.deltaTimes ;   


a few ways to do this…
make another function… say DoMove()
then instead of calling it directly, call it using Invoke(functionName, delay);
e.g. Invoke(“DoMove”, delay);

or use a CoRoutine…
a co routine executes a bit at a time, so you can add delays into the function.

Make another script containing the following code:

public move moveScript

void Start()

IEnumerator WaitForMove()
    yield return new WaitForSeconds(10f);
    moveScript.enabled = true;

Disable your ‘move’ script in the inspector by hitting small box next to the script’s name and voilà, it works just perfect.