space shooter tutorial issue "Ending the game" unity 2018.2 b

Hello I’m having a with the space shooter tutorial “ending the game” step. i had changed the original code a bit but that shouldn’t affect what i’m doing right now.

Error

NullReferenceException: Object reference not set to an instance of an object
DestroyByContact.OnTriggerEnter (UnityEngine.Collider other) (at
Assets/Scripts/Destroyer/DestroyByContact.cs:33)

Code of DesctoryByContace

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

public class DestroyByContact : MonoBehaviour {
	public GameObject explosion;
	public GameObject playerExplosion;
    public int scoreValue;
    private GameController gameController;

    void Start()
    {
        GameObject gameControllerObject = GameObject.FindWithTag("GameController");
        if (gameControllerObject != null)
        {
            gameController = gameControllerObject.GetComponent<GameController>();
        }
        if (gameController = null)
        {
            Debug.Log("Cannot find 'GameController' Script!");
        }
    }
    void OnTriggerEnter(Collider other){

		if (other.tag == "Boundary")
		{
			return;
		}
		Instantiate (explosion, transform.position, transform.rotation);
		if (other.tag == "Player")
		{
			Instantiate (playerExplosion, other.transform.position, other.transform.rotation);
            gameController.Gameover();
		}
        Scores.score += scoreValue;
		Destroy(other.gameObject);
		Destroy(gameObject);
	}

}

Code for GameController

using System.Collections;
using UnityEngine;
using UnityEngine.UI;
using UnityEngine.SceneManagement;

public class GameController : MonoBehaviour
{

    public GameObject hazards;
    public Vector3 spawnValues;
    public float hazardsCount;
    public float startWait;
    public float spawnWait;
    public float waveWait;

    public Text restartText;
    public Text gameverText;

    private bool restart;
    private bool gameover;

    void Awake()
    {
        restart = false;
        gameover = false;
        restartText.text = "";
        gameverText.text = "";
    }
    void Start()
    {
        
        StartCoroutine(SpawnWaves());

    }
    void Update()
    {
        if (restart)
        {
            if (Input.GetKeyDown(KeyCode.R))
            {
                SceneManager.LoadScene(SceneManager.GetActiveScene().buildIndex);
            }
        }
    }

    IEnumerator SpawnWaves()
    {

        while (true)
        {
            for (int i = 0; i < hazardsCount; i++)
            {
                yield return new WaitForSeconds(startWait);
                Vector3 spawnPosition = new Vector3(Random.Range(-spawnValues.x, spawnValues.x), spawnValues.y, spawnValues.z);
                Quaternion spawnRotation = Quaternion.identity;
                Instantiate(hazards, spawnPosition, spawnRotation);
                yield return new WaitForSeconds(spawnWait);
            }
            yield return new WaitForSeconds(waveWait);
            if (gameover)
            {
                restartText.text = "Press 'R' to restart game!";
                restart = true;
                break;
            }
        }
    }
    public void Gameover()
    {
        gameverText.text = "Game Over!";
        gameover = true;
    }

}

I don’t seem to be able to find the error … please help me out…,

Wooohhooo … i found my error… if any of you guys get stuck… you should look for really small mistakes in the code like the one i had

if (gameController = null)

in DestroyByContact Script i changed it to

if (gameController == null)

and it all went good… the code worked

i have solved space shooter “Ending the game” step issue that i encountered…