Script error 'Transform'

I have a problem with my script, keep getting a error that says

MissingReferenceException: The object of type 'Transform' has been destroyed but you are still trying to access it.
Your script should either check if it is null or you should not destroy the object.
UnityEngine.Transform.get_position () (at C:/BuildAgent/work/842f9557127e852/Runtime/ExportGenerated/Editor/UnityEngineTransform.cs:19)
GameControl.PlatformMaintenaince () (at Assets/Game 2 - Jump game/Scripts/GameControl.cs:77)
GameControl.Update () (at Assets/Game 2 - Jump game/Scripts/GameControl.cs:43)

My script

using UnityEngine;

using System.Collections;



public enum GameState { playing, gameover };



public class GameControl : MonoBehaviour {



    public Transform platformPrefab;

    public static GameState gameState;



    private Transform playerTrans;

    private float platformsSpawnedUpTo = 0.0f;

    private ArrayList platforms;

    private float nextPlatformCheck = 0.0f;



    

	void Awake () {

        playerTrans = GameObject.FindGameObjectWithTag("Player").transform;

        platforms = new ArrayList();



        SpawnPlatforms(25.0f);

        StartGame();

	}



    void StartGame()

    {

        Time.timeScale = 1.0f;

        gameState = GameState.playing;

    }



    void GameOver()

    {

        Time.timeScale = 0.0f; //Pause the game

        gameState = GameState.gameover;

        GameGUI.SP.CheckHighscore();

    }



	void Update () {

        //Do we need to spawn new platforms yet? (we do this every X meters we climb)

        float playerHeight = playerTrans.position.y;

        if (playerHeight > nextPlatformCheck)

        {

            PlatformMaintenaince(); //Spawn new platforms

        }



        //Update camera position if the player has climbed and if the player is too low: Set gameover.

        float currentCameraHeight = transform.position.y;

        float newHeight = Mathf.Lerp(currentCameraHeight, playerHeight, Time.deltaTime * 10);

        if (playerTrans.position.y > currentCameraHeight)

        {

            transform.position = new Vector3(transform.position.x, newHeight, transform.position.z);

        }else{

            //Player is lower..maybe below the cameras view?

            if (playerHeight < (currentCameraHeight - 10))

            {

                GameOver();

            }

        }



        //Have we reached a new score yet?

        if (playerHeight > GameGUI.score)

        {

            GameGUI.score = (int)playerHeight;

        }

	}







    void PlatformMaintenaince()

    {

        nextPlatformCheck = playerTrans.position.y + 10;



        //Delete all platforms below us (save performance)

        for(int i = platforms.Count-1;i>=0;i--)

        {

            Transform plat = (Transform)platforms[i];

            if (plat.position.y < (transform.position.y - 10))

            {

                Destroy(plat.gameObject);

                platforms.RemoveAt(i);

            }            

        }



        //Spawn new platforms, 25 units in advance

        SpawnPlatforms(nextPlatformCheck + 25);

    }





    void SpawnPlatforms(float upTo)

    {

        float spawnHeight = platformsSpawnedUpTo;

        while (spawnHeight <= upTo)

        {

            float x = Random.Range(-10.0f, 10.0f);

            Vector3 pos = new Vector3(x, spawnHeight, 12.0f);



            Transform plat = (Transform)Instantiate(platformPrefab, pos, Quaternion.identity);

            platforms.Add(plat);



            spawnHeight += Random.Range(5f, 2.5f);

        }

        platformsSpawnedUpTo = upTo;

    }



}

Second script

function OnTriggerEnter(other : Collider){ 

     

     if (other.gameObject.tag == "Finish")

     {

       Destroy(other.gameObject);

          rigidbody.velocity = new Vector3(0, 0, 0);

        rigidbody.AddForce(new Vector3(0, 700, 0), ForceMode.Force); 

     }

}

did u read the first line :
MissingReferenceException: The object of type ‘Transform’ has been destroyed but you are still trying to access it.

you are destroying the gameobject, then your are trying to access its transform component…

Yes wich part of the script destroys the object?

Possibly the player’s death which may not even come from this particular script. You should encase the code of the entire Update in an

if(playerTrans)

statement.

Im making a jump game, when i collide with a platform, it destroys.

Locate whatever object may get destroyed at any point during your game, and encase in an if(thisObject) statement all code accessing it. This should prevent any null/missing reference exceptions.