Door Open With Object Pickup

hello I’m quite new so i apologize if i am asking a very easy or difficult question.
my overall goal is to have a door that wont open, when you hit “e” it says “door wont open”, then when i find a crowbar i hit “e” and then it disappears and then when i go back up to the door it will allow me to open it with the “e”.
my script for the door is:

// Smothly open a door
var smooth = 2.0;
var DoorOpenAngle = 90.0;
var DoorCloseAngle = 0.0;
var open : boolean;
var enter : boolean;

//Main function
function Update (){

if(open == true){
var target = Quaternion.Euler (0, DoorOpenAngle, 0);
// Dampen towards the target rotation
transform.localRotation = Quaternion.Slerp(transform.localRotation, target,
Time.deltaTime * smooth);
}

if(open == false){
var target1 = Quaternion.Euler (0, DoorCloseAngle, 0);
// Dampen towards the target rotation
transform.localRotation = Quaternion.Slerp(transform.localRotation, target1,
Time.deltaTime * smooth);
}

if(enter == true){
if(Input.GetKeyDown(“e”)){
open = !open;
}
}
}

//Activate the Main function when player is near the door
function OnTriggerEnter (other : Collider){

if (other.gameObject.tag == “Player”) {
(enter) = true;
}
}

//Deactivate the Main function when player is go away from door
function OnTriggerExit (other : Collider){

}
//@youtube.com/user/maksimum654321

First of all, I’m assuming that the code for rotating the door works as intended?
I modified your code quite a bit, here is the finished result:

// Smoothly open a door 
    var smooth = 2.0; 
    var DoorOpenAngle = 90.0; 
    var DoorCloseAngle = 0.0; 
    var inRange : boolean = null;
    var unlocked : boolean = false;
    var isOpen : boolean = false;
    var opening : boolean = false;
    
    var hasCrowBar : boolean = false; //Has to be changed from another script
    
    //Main function 
    function Update (){
    	if(opening){ 
    		var target = Quaternion.Euler (0, DoorOpenAngle, 0); 
    		// Dampen towards the target rotation 
    		transform.localRotation = Quaternion.Slerp(transform.localRotation, target, Time.deltaTime * smooth); 
    	}
    
    	if(!opening){ 
    		var target1 = Quaternion.Euler (0, DoorCloseAngle, 0); 
    		// Dampen towards the target rotation 
    		transform.localRotation = Quaternion.Slerp(transform.localRotation, target1, Time.deltaTime * smooth); 
    	}
    	if(!isOpen) {
    		if(inRange){ 
    			if(Input.GetKeyDown("e")){ 
    				if(unlocked) {
    					opening = !opening;
    				}
    				if(!unlocked) {
    					if(hasCrowBar) {
    						unlocked = true;
    						Debug.Log("You have unlocked the door!");
    					}
    					if(!hasCrowBar) {
    						Debug.Log("The door won't open, please find a crowbar");
    					}
    				} 
    			} 
    		}
     	}
    }
    
    //Activate the Main function when player is near the door 
    function OnTriggerEnter (other : Collider){
    	if (other.gameObject.tag == "Player") { 
    		inRange = true; 
    	} 
    }
    
    //Deactivate the Main function when player is go away from door 
    function OnTriggerExit (other : Collider){
    	if (other.gameObject.tag == "Player") { 
    		inRange = false; 
    	}
    }