Void Start Acting Like Void Update

Hello Answers,
I have been working a Ghost System and want to copy one list to another when the script starts,
Weirdly enough, the command I setup on void start seems to be running itself over and over again at the same time as the other script is changing values.

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

public class GhostPlayer : MonoBehaviour {

	public List<Vector2> playerMove;

	public Player player;

	void Start () { 
		playerMove = GameObject.FindGameObjectWithTag ("Player").GetComponent<Player> ().playerPos;
	}

	void Update () {
	
	}
}

Here is the code,
Really have no Idea what is going on…
Thanks in advance,
NightLucidity

You’re not copying the list. You are referencing the list. If Player changes the list, so will GhostPlayer also get those changes. If you want to make a copy of it, do it like this:

 void Start () { 
     var go = GameObject.FindGameObjectWithTag ("Player"); 
     var original = go.GetComponent<Player> ();

     // Create a new list with the contents of the other
     playerMove = new List<Vector2>(original.playerPos); 
 }