how can i reset variables when the scene reset (not when i re spawn ) 2 D game

hello i’m making a 2 D game and i add life system
and its like this
every time i get my life < 0 i change scene to GAME OVER and when i return back to the level (still in game mode) i see that my life number change to 0 instead of 3 and when i die once scene changed and life number are -1 and like this
can you tell me a code to reset my life number not when i’m re spawn but when i load the scene

#pragma strict
private var isRestarting = false;
function OnTriggerEnter2D (info : Collider2D) 
{
if(info.tag == "Player")
   {
     if(isRestarting == false)
     {
      Restart();
     }
   }
}
function Restart () {
isRestarting = true;
GetComponent.<AudioSource>().Play();
counters.deathes += 1;
counters.lifes -= 1;
yield WaitForSeconds (GetComponent.<AudioSource>().clip.length);
Application.LoadLevel(Application.loadedLevelName);  
lifes.LIVES -= 1;
  if(counters.lifes <= 0)
   {
     Application.LoadLevel("Gameover");
   }
    if(loadedLevelName == level)
   {
   lifes.LIVES = 3;
   }
}

i have fixed it
i went to my counters script (this where i keep all my counters) and add this function update line
static var time : float =0;
var offsetY : float = 2;
var sizeX : float = 50;
var sizeY : float = 40;

function Start () {
	currentScore = 0;
}


function Update()
{
if(lifes <0)
  {
  lifes =2;
  }
}


function OnGUI () {
	GUI.Box (new Rect (Screen.width/2-sizeX/2, offsetY, sizeX, sizeY), "Score: " + currentScore);
	GUI.Box (new Rect (Screen.width-sizeX, offsetY, sizeX, sizeY), "Deaths: " + deathes);
	GUI.Box (new Rect (Screen.width/24-sizeX/24, offsetY, sizeX, sizeY), "Time:" + time);
	GUI.Box (new Rect (Screen.width/2-sizeX/2, 25, sizeX, sizeY), "LIFES:" + lifes);
}