Placing a pre existing script into a pause menu

EDIT: Sometimes it just pays to know your limits. I had hoped to use the following code via my main menu, but that’s not working out, so I’m hoping that someone might point me in the right direction for a much simpler question. The following js contains options to both save and load. Works great. Right now, I have it attached to my main camera. (Also had it attached directly to my player) Obviously, with it attached to the camera it is on the screen constantly, which I don’t necessarily want. Am thinking of either attaching it to a pause menu, such as the one found here, or making the gui included my pause menu, but don’t quite know how to do that. (strange, making a pause menu from scratch seems easy enough from the tutorial, but I don’t know enough yet to incorporate what I’ve already found into a menu. Any help, as always, is appreciated. God bless.

import System;
import System.Collections;
import System.Xml;
import System.Xml.Serialization;
import System.IO;
import System.Text;



class DemoData
{
    var x : float;
    var y : float;
    var z : float;
    var name : String;
    var experience : float;
}

class UserData
{
    
   public var _iUser : DemoData = new DemoData();
 
   function UserData() { }
}

//var target: Transform;

//var generalWidth = 50;
//var userHeight = 50;

//var playerHealth = 1000;
//var MaxPlayerHealth = 1000;
//var playerMana = 1000;
//var playerEnergy = 100;
//public var playerDamage = 10;


//var playerCurrency = 5000;

var playerPositionX = 0;
var playerPositionY = 0;
var playerPositionZ = 0;

//var damageNpc = 1;




//Variable For Experience *******************************************************
public static var curExperience = 1;
var ExpBarEmtey = 0;
var ExpBarCur : float;
var screenHeight : float;
static var ExpPart = 25; 
var curLevel = 1;
var LvMax = 0;

var Lv0 = 12;
var Lv1 = 18;
var Lv2 = 28;
var Lv3 = 42;
var Lv4 = 78;
var Lv5 = 156;
var Lv6 = 330;
var Lv7 = 800;
var Lv8 = 1760;
var Lv9 = 4110;
var Lv10 = 8670;

//EndofExpVariables *************************************************************

//Saving Variables **************************************************************
private var _Save : Rect;
private var _Load : Rect;

private var _SaveMSG : Rect;
private var _LoadMSG : Rect;

//var _ShouldSave : boolean;
//var _ShouldLoad : boolean;
//var _SwitchSave : boolean;
//var _SwitchLoad : boolean;
private var _FileLocation : String;
private var _FileName : String = "SaveData.xml";

//public GameObject player;
var player : GameObject;
var playerName : String = "Default";

var MyStyle : GUIStyle;

private var myData : UserData;
private var _data : String;

private var VPosition : Vector3;
//EndOfSaving Variables *********************************************************


function Awake () { 
      // GUI for the Save/Load
      _Save=new Rect(50,180,100,20);
      _Load=new Rect(50,210,100,20);
      _Name=new Rect(50,240,200,20);
      _SaveMSG=new Rect(50,120,200,40);
      _LoadMSG=new Rect(50,140,200,40);
      _NameMSG=new Rect(50,180,200,40);
       
      // XML Save/Load path
      _FileLocation=Application.dataPath;
      
          
      // Creating something to store information into.
     myData=new UserData();
    }

function OnGUI ()
{

//	playerName = GUI.TextArea (Rect(generalWidth,userHeight,100,25),playerName);
	
	//Health ********************************************************************
//	GUI.Box (Rect (50,75,150,25), "Health:" + playerHealth);
	//EndOfHealth ***************************************************************
	
	//Mana **********************************************************************
//	GUI.Box (Rect (50,100,150,25), "Mana:" + playerMana);
	//EndOfMana *****************************************************************
	
	//Energy ********************************************************************
//	GUI.Box (Rect (50,125,150,25), "Energy:" + playerEnergy);
	//EndOfEnergy ***************************************************************
	
	//Currency ******************************************************************
//	GUI.Box (Rect (50,150,150,25), "Gold:" + playerCurrency);
	//EndOfCurrency *************************************************************
	
	//Experience ****************************************************************
	GUI.Box (Rect (10,10,60,20),"Level:" + curLevel);
	//EndOfExperience ***********************************************************
	

    //LoadingPlayers ************************************************************      
    if (GUI.Button(_Load,"Load")) {
      
      GUI.Label(_LoadMSG,"Loading from: "+_FileLocation);
      // Load our UserData into myData
      LoadXML();
      if(_data.ToString() != "")
      {
         myData = DeserializeObject(_data);
         VPosition=new Vector3(myData._iUser.x,myData._iUser.y,myData._iUser.z);             
         player.transform.position=VPosition;
         curExperience = myData._iUser.experience;
         Debug.Log("Load Successful");
      }
   		 
   }
   //EndOfLoadingPlayers *******************************************************
   
   //SavingPlayers *************************************************************
   if (GUI.Button(_Save,"Save")) {
            
      GUI.Label(_SaveMSG,"Saving to: "+_FileLocation);
      //Debug.Log("SaveLoadXML: sanity check:"+ player.transform.position.x);
      
      myData._iUser.x = player.transform.position.x;
      myData._iUser.y = player.transform.position.y;
      myData._iUser.z = player.transform.position.z;
      myData._iUser.name = playerName;
      myData._iUser.experience = curExperience;   
        
      // Time to creat our XML!
      _data = SerializeObject(myData);
      // This is the final resulting XML from the serialization process
      CreateXML();
      Debug.Log(_data);
   }
   //EndOfSavingPlayers *********************************************************
}

function Update ()
{
//	if(playerHealth <= 0) {
//    	print(playerName + " has died...");
//   	die();
//	}
//	if(playerHealth > MaxPlayerHealth)
//	{
//	  playerHealth = MaxPlayerHealth;
//	}
	// Here is the level decider. If the current exp is higher then the number there then you +1 level.
	switch(curLevel){
		case 0:
    if(curExperience <= Lv0){
         curLevel += 0;
         }
		case 1:
        if(curExperience >= Lv1){
        curLevel += 1;
        LvMax = Lv1;
         }
       break;
    	case 2:
       if(curExperience >= Lv2){
         curLevel += 1;
         LvMax = Lv2;

         }
       break;
       case 3:
       if(curExperience >= Lv3){
         curLevel += 1;
                 LvMax = Lv3;

         }    
      break;
       case 4:
        if(curExperience >= Lv4){
         curLevel += 1;
                          LvMax = Lv4;

         }
      break;
       case 5:
       if(curExperience >= Lv5){
         curLevel += 1;
                          LvMax = Lv5;

         }
       break;
       case 6:
       if(curExperience >= Lv6){
         curLevel += 1;
                          LvMax = Lv6;

         }
       break;
       case 7:
        if(curExperience >= Lv7){
        curLevel += 1;
                         LvMax = Lv7;

         }
       break;
       case 8:
        if(curExperience >= Lv8){
         curLevel += 1;
                          LvMax = Lv8;

        }
      break;
       case 9:
        if(curExperience >= Lv9){
         curLevel += 1;
                          LvMax = Lv9;

         }
       break;
       case 10:
        if(curExperience >= Lv10){
         curLevel += 1;
                          LvMax = Lv10;

         }
       break;
	}
	
}




//function die()
//{
//	player.transform.position = Vector3(5,0,5); // A vector 3 teleport
//	playerHealth = 1000;
//	playerMana = 1000;		// Reseting the vitals or else it will loop the death(HP = 0)
//	playerEnergy = 100;
//}

//function OnCollisionEnter( collision : Collision ) {
	
//   if(target == null && GameObject.FindGameObjectsWithTag("Enemy")){
//	target = GameObject.FindWithTag("Enemy").transform;
        
//}
//}

//function OnTriggerEnter()
//{
// 	if(target.gameObject.tag == "Enemy")
// 	{
// 		collider.isTrigger = true;
// 		playerHealth -= damageNpc; // Comment this out if you dont wanna take damage.
// 		curExperience += 5; //Exp per interaction with the enemy.
 		
// 	}
//}

//XML Code *****************************************************************

function UTF8ByteArrayToString(characters : byte[] )
{     
   var encoding : UTF8Encoding  = new UTF8Encoding();
   var constructedString : String  = encoding.GetString(characters);
   return (constructedString);
}


function StringToUTF8ByteArray(pXmlString : String)
{
   var encoding : UTF8Encoding  = new UTF8Encoding();
   var byteArray : byte[]  = encoding.GetBytes(pXmlString);
   return byteArray;
}
   

function SerializeObject(pObject : Object)
{
   var XmlizedString : String  = null;
   var memoryStream : MemoryStream  = new MemoryStream();
   var xs : XmlSerializer = new XmlSerializer(typeof(UserData));
   var xmlTextWriter : XmlTextWriter  = new XmlTextWriter(memoryStream, Encoding.UTF8);
   xs.Serialize(xmlTextWriter, pObject);
   memoryStream = xmlTextWriter.BaseStream; // (MemoryStream)
   XmlizedString = UTF8ByteArrayToString(memoryStream.ToArray());
   return XmlizedString;
}


function DeserializeObject(pXmlizedString : String)   
{
   var xs : XmlSerializer  = new XmlSerializer(typeof(UserData));
   var memoryStream : MemoryStream  = new MemoryStream(StringToUTF8ByteArray(pXmlizedString));
   var xmlTextWriter : XmlTextWriter  = new XmlTextWriter(memoryStream, Encoding.UTF8);
   return xs.Deserialize(memoryStream);
}


function CreateXML()
{
   var writer : StreamWriter;

   var t : FileInfo = new FileInfo(_FileLocation+"/"+ _FileName);
   if(!t.Exists)
   {
      writer = t.CreateText();
   }
   else
   {
      t.Delete();
      writer = t.CreateText();
   }
   writer.Write(_data);
   writer.Close();
   Debug.Log("File written");
}
   
function LoadXML()
{
   //StreamReader r = File.OpenText(_FileLocation+"\\"+ _FileName);
   var r : StreamReader = File.OpenText(_FileLocation+"/"+ _FileName);
   var _info : String = r.ReadToEnd();
   r.Close();
   _data=_info;
   Debug.Log("File Read");
}

//EndOfXML Code **************************************************************

Ok, while not how I envisioned it at first I did solve this, thank God =)

Essentially what I did was just create a second camera with a new layer, “Pause.” I then attached a camera switch script and the above listed code onto this camera. Next step should be to throw a pause menu script onto the new camera so that the player doesn’t get killed by any roaming enemies.