Can Someone Tell Me What Is Wrong With This Script?

I am trying to create a skyrim styled door script for our upcoming game, and I really need help with this script.

It is my first time using DontDestroyOnLoad and I am a 3D artist and modeller by trade, so excuse me if my scripting is complete c***.

Here is the code:

#pragma strict

var PlayerCharacter : Transform;
private var drawGUI = false;
var NewScene : String = "";

function Update ()
{
if (drawGUI == true && Input.GetKeyDown(KeyCode.F))
{
     LoadNewScene();
}
}

function OnTriggerEnter (theCollider : Collider)
{
    if (theCollider.tag == "Player")
    {
        drawGUI = true;
    }
}

function LoadNewScene ()
{
    DontDestroyOnLoad(PlayerCharacter);
    Application.LoadLevel(NewScene);
}

How is it behaving other than how you would expect?

I’m guessing that you’re saying the player character is NOT kept when the new scene loads?

If that’s the case, try calling:

DontDestroyOnLoad(PlayerCharacter.gameObject);

instead.

Maybe it tags only the transform to keep, and when you dont tag the gameObject to keep, it destroys the transform anyway.

Sorry, no the problem is the GUI does not appear (and I do have a GUI layer on the cam) and I am still not sure how to set the player to an objects transform that I would place where I needed it.
I have moved this thread to here to see if it is easier for people to see: