Collider Confusion

I have a script that allows an item score to increase when passing through each of the three main colliders. like so

public int items = 0;  

  void OnTriggerEnter(Collider Enter) {   

     if (Enter.CompareTag ("Item1")) {
	items += 1;	
     }
		
     if (Enter.CompareTag ("Item2")) {
	items += 1;	
     }
		
     if (Enter.CompareTag ("Item3")) {
	items += 1;	
     }
}

And what I am trying to do is to create a system out of it. You cannot get Item2 and Item3 without Item1 first. And Item3 without both Item1 + Item2. Going crazy on figuring out the most efficient way. Any Help would be great.

public int items = 0;

private bool haveItem1 = false; 
private bool haveItem2 = false;

void OnTriggerEnter(Collider Enter) 
{

	 if (Enter.CompareTag ("Item1"))
	{
		items += 1;
		haveItem1 = true;
	}
	
	else if (Enter.CompareTag ("Item2") && haveItem1) 
	{
		items += 1;    
		haveItem2 = true;
	}
	
	else if (Enter.CompareTag ("Item3") && haveItem1 && haveItem2) 
	{
		items += 1;    
	}
}