One Action/Mission at a time

Hi there,
I have a currently working code with a timer that starts and finishes on trigger and on collision respectively. But I am having trouble coding up how to make sure the character has to finish one mission to move on to the next.how will I go about coding this. So basically finishing HasMission then only being able to activate HasMission1
many thanks in advance

if (Physics.Raycast (transform.position,dwn,hit, .5)) {
	var t:Timer;
	if(hit.collider.gameObject.tag=="HasMission"){
		Debug.Log("has mission");
		if(!showingMission){
			showingMission=true;
			t=GameObject.Find("Timer").GetComponent("Timer") as Timer;
			t.startTimer();
			
		}
	}else if(hit.collider.gameObject.tag=="EndMission"){
	
	}

					
}
if (Physics.Raycast (transform.position,dwn,hit, .5)) {
    if(hit.collider.gameObject.tag=="HasMission1"){
       Debug.Log("has mission");
       if(!showingMission2){
         showingMission2=true;
         t=GameObject.Find("Timer1").GetComponent("Timer") as Timer;
         t.startTimer();
 
       }
    }else if(hit.collider.gameObject.tag=="EndMission1"){
 
    }
 
 
}

I’m not completely sure what you are doing here, but I think you do something like this:

if (GameObject.FindObjectWithTag("EndMission") && Physics.Raycast (transform.position,dwn,hit, .5)) {

So the second Physics.Raycast would only be reached if showingMission was true (i.e. the first mission is started) and there is no game object with the “HasMission” tag.