Thanks for checking out my question. Basically I have a ship shop in which the player can pick different ships to play as. When they select a ship, it saves that ship using ints through playerprefs. But when I play the game after switching ships, it shoots out errors saying that the player script I want to activate is not set to an instance of an object. My code will be below, but what I did was set three ships to the gametag Player, and the others to Player2, because they have different player scripts. When ship 1 through 3 are selected, it says it cannot find playerController2, and vice versa for ships 4 through 6.
public void Play () {
spawner.SetActive (true);
GameObject.Find ("Points").GetComponent<scoreManager> ().enabled = true;
GameObject.Find ("Points").GetComponent<scorePoint> ().enabled = true;
GameObject.Find ("TapToPlay").SetActive (false);
GameObject.Find ("shipShop").SetActive (false);
if (shipShop.shipSelected == 1 || shipShop.shipSelected == 2 || shipShop.shipSelected == 3) {
GameObject.FindGameObjectWithTag ("Player").GetComponent<playerController> ().enabled = true;
} else {
return;
}
if (shipShop.shipSelected == 4 || shipShop.shipSelected == 5 || shipShop.shipSelected == 6) {
GameObject.FindGameObjectWithTag ("Player2").GetComponent<playerController2> ().enabled = true;
} else {
return;
}